План курса — различия между версиями
Proshev (обсуждение | вклад) |
|||
Строка 1: | Строка 1: | ||
+ | {| class="wikitable" align="center" style="color: red; background-color: black; font-size: 56px; width: 800px;" | ||
+ | |+ | ||
+ | |-align="center" | ||
+ | |'''НЕТ ВОЙНЕ''' | ||
+ | |-style="font-size: 16px;" | ||
+ | | | ||
+ | 24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян. | ||
+ | |||
+ | Будучи гражданами Российской Федерации, мы против своей воли оказались ответственными за нарушение международного права, военное вторжение и массовую гибель людей. Чудовищность совершенного преступления не оставляет возможности промолчать или ограничиться пассивным несогласием. | ||
+ | |||
+ | Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей. | ||
+ | |||
+ | Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить. | ||
+ | |||
+ | ''Антивоенный комитет России'' | ||
+ | |-style="font-size: 16px;" | ||
+ | |Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению. | ||
+ | |-style="font-size: 16px;" | ||
+ | |[https://meduza.io/ meduza.io], [https://www.youtube.com/c/popularpolitics/videos Популярная политика], [https://novayagazeta.ru/ Новая газета], [https://zona.media/ zona.media], [https://www.youtube.com/c/MackNack/videos Майкл Наки]. | ||
+ | |} | ||
+ | |||
Цель: набрать хотя бы 60 баллов на зачет или на тройку. При этом надо обязательно решить одну простую и одну сложную задачу. Таблица с текущими баллами [https://docs.google.com/spreadsheet/ccc?key=0Arjd0Cmpqn-AdG04aldwZk1kUUM1NFVvNzJ3Nk1zUVE тут]. | Цель: набрать хотя бы 60 баллов на зачет или на тройку. При этом надо обязательно решить одну простую и одну сложную задачу. Таблица с текущими баллами [https://docs.google.com/spreadsheet/ccc?key=0Arjd0Cmpqn-AdG04aldwZk1kUUM1NFVvNzJ3Nk1zUVE тут]. | ||
Строка 29: | Строка 50: | ||
<tex> B = M \cdot C_{delay} + \frac{M}{2} \cdot C_{performance} + \frac{M}{4} \cdot C_{quality} </tex>, где | <tex> B = M \cdot C_{delay} + \frac{M}{2} \cdot C_{performance} + \frac{M}{4} \cdot C_{quality} </tex>, где | ||
− | <tex> M </tex> | + | <tex> M </tex> — заявленный в таблице балл за задачу, |
<tex> C_{delay} </tex> — коэффициент за опоздание в сдаче задачи (от 1 до 0.5), | <tex> C_{delay} </tex> — коэффициент за опоздание в сдаче задачи (от 1 до 0.5), | ||
− | <tex> C_{performance} </tex> | + | <tex> C_{performance} </tex> — коэффициент за производительность (от 0 до 1), |
<tex> C_{quality} </tex> — коэффициент за качество кода (от 0 до 1). | <tex> C_{quality} </tex> — коэффициент за качество кода (от 0 до 1). | ||
Строка 46: | Строка 67: | ||
<tex> T </tex> — текущий номер дня, | <tex> T </tex> — текущий номер дня, | ||
− | <tex> T_{deadline} </tex> | + | <tex> T_{deadline} </tex> — день дедлайна. |
Проще говоря, если вы сдаете задачу до дедлайна, вы получаете за нее полный балл. После дедлайна баллы за задачу убывают линейно в течение месяца до <tex> \frac{M}{2} </tex>. Дальше убывание баллов прекращается. | Проще говоря, если вы сдаете задачу до дедлайна, вы получаете за нее полный балл. После дедлайна баллы за задачу убывают линейно в течение месяца до <tex> \frac{M}{2} </tex>. Дальше убывание баллов прекращается. | ||
Строка 54: | Строка 75: | ||
<tex> t </tex> — время работы вашей программмы, | <tex> t </tex> — время работы вашей программмы, | ||
− | <tex> t_{min} </tex> | + | <tex> t_{min} </tex> — минимальная производительность. |
Таким образом, с минимальной производительностью коэффициент будет равен нулю, если вы решили в два раза быстрее, он равен 0.5, если в 10 раз — то почти 1. | Таким образом, с минимальной производительностью коэффициент будет равен нулю, если вы решили в два раза быстрее, он равен 0.5, если в 10 раз — то почти 1. | ||
− | Коэффициент <tex> C_{quality} </tex> | + | Коэффициент <tex> C_{quality} </tex> — выставляется непосредственно проверяющим качество кода. |
* Офомление условия в tex — 3 балла. | * Офомление условия в tex — 3 балла. | ||
** Тикеты на условия и чекеры — [https://bitbucket.org/assaron/evaluator-tasks/issues тут]. | ** Тикеты на условия и чекеры — [https://bitbucket.org/assaron/evaluator-tasks/issues тут]. | ||
Строка 84: | Строка 105: | ||
** Поддержка в рабочем состоянии. | ** Поддержка в рабочем состоянии. | ||
** Баллы получит лучший вьюер, возможно, остальные тоже получат в зависимости от их качества. | ** Баллы получит лучший вьюер, возможно, остальные тоже получат в зависимости от их качества. | ||
− | * Разобраться с CORE/Leda — в случае успеха — 100 баллов, в случае фейла | + | * Разобраться с CORE/Leda — в случае успеха — 100 баллов, в случае фейла — 15. |
** Продемонстрировать что с помощью этих библиотек можно реализовать точные предикаты, принимающие на вход данные, полученные разными путями. | ** Продемонстрировать что с помощью этих библиотек можно реализовать точные предикаты, принимающие на вход данные, полученные разными путями. | ||
* Кодогенератор для предикатов — 100 баллов. | * Кодогенератор для предикатов — 100 баллов. |
Версия 09:06, 1 сентября 2022
НЕТ ВОЙНЕ |
24 февраля 2022 года российское руководство во главе с Владимиром Путиным развязало агрессивную войну против Украины. В глазах всего мира это военное преступление совершено от лица всей страны, всех россиян. Будучи гражданами Российской Федерации, мы против своей воли оказались ответственными за нарушение международного права, военное вторжение и массовую гибель людей. Чудовищность совершенного преступления не оставляет возможности промолчать или ограничиться пассивным несогласием. Мы убеждены в абсолютной ценности человеческой жизни, в незыблемости прав и свобод личности. Режим Путина — угроза этим ценностям. Наша задача — обьединить все силы для сопротивления ей. Эту войну начали не россияне, а обезумевший диктатор. И наш гражданский долг — сделать всё, чтобы её остановить. Антивоенный комитет России |
Распространяйте правду о текущих событиях, оберегайте от пропаганды своих друзей и близких. Изменение общественного восприятия войны - ключ к её завершению. |
meduza.io, Популярная политика, Новая газета, zona.media, Майкл Наки. |
Цель: набрать хотя бы 60 баллов на зачет или на тройку. При этом надо обязательно решить одну простую и одну сложную задачу. Таблица с текущими баллами тут.
Как можно набрать баллы:
Содержание
Конспекты
- Кураторство — 30 баллов.
- Кураторы конспектов — Андрей Комаров, Артем Васильев и Андрей Шулаев.
- Конспект — 25 баллов.
- Конспекты и их распределение.
- Нужно выбрать алгоритм, который был или не был рассказан и согласовать.
Презентации
- Кураторство — 30 баллов.
- Кураторы презентаций — Вика Волочай и Андрей Рыбак.
- От кураторов нужен простой пример в beamer, от которого можно было бы отталкиваться.
- Кураторы должны следить, чтобы все презентации были оформлены в едином стиле и без ошибок.
- Презентация — 25 баллов.
- Презентация должна представлять из себя не полную копию конспекта, а удобное сопровождение лекции, содержащее какие-то основные формулировки, примеры, хорошие, информативные картинки, и тому подобное.
- Презентация должна быть сделана в beamer и, для удобства, лежать в каком-нибудь хостинге репозиториев (github/bitbucket и т.п.)
Задачи
- Список задач.
- Задачи делятся на простые (от 10 до 17 баллов включительно), сложные (от 18 до 29 баллов включительно) и прочие. Задачи, которые стоят 30 и больше — необязательны, но также пойдут в счет сложных в случае решения. За решенную в срок задачу ставится соответствующий балл, после дедлайна баллы начинают убывать.
- После того, как вы выбрали задачи, которые хотите решать, надо отметиться в форме. Одну задачу одновременно может взять не более 6 человек. Одновременно можно взять одну простую и одну сложную задачу.
- Задача должна быть решена лучше опеределенной минимальной производительности (будет выбрана позже).
- После того, как задача сдана, можно запросить code review и также получить за него дополнительные баллы.
- Можно использовать библиотеки GMP и boost::interval.
Формула для расчета баллов за сданную задачу:
, где
— заявленный в таблице балл за задачу,
— коэффициент за опоздание в сдаче задачи (от 1 до 0.5),
— коэффициент за производительность (от 0 до 1),
— коэффициент за качество кода (от 0 до 1).
, где
— текущий номер дня,
— день дедлайна.
Проще говоря, если вы сдаете задачу до дедлайна, вы получаете за нее полный балл. После дедлайна баллы за задачу убывают линейно в течение месяца до
. Дальше убывание баллов прекращается., где
— время работы вашей программмы,
— минимальная производительность.
Таким образом, с минимальной производительностью коэффициент будет равен нулю, если вы решили в два раза быстрее, он равен 0.5, если в 10 раз — то почти 1.
Коэффициент
— выставляется непосредственно проверяющим качество кода.- Офомление условия в tex — 3 балла.
- Тикеты на условия и чекеры — тут.
- За условия и соответсвие их чекерам отвечает Андрей Козлов.
- Задача должна быть оформлена в виде скомпилированного в TeX файла с условием, описанием формата входных и выходных данных.
- За чекер к задаче — число баллов, указанное в таблице
- Чекер может работать неоптимально, но должен быть абсолютно корректным.
- Можно пользоваться любыми внешними библиотеками (например, CGAL).
- Также автор чекера генерирует некоторый набор тестов (хотя бы рандомных).
Экзамен
- За экзамен можно получить до 20 баллов.
- Экзамен будет состоять из теоретической части и реализации задач вычислительной геометрии.
Прочее
- Написание tutorial'а — 25 баллов. В tutorial должно быть освещено:
- Как собирать проект.
- Показать сложности в реализации задач.
- Пример задачи с решением, в которой все тонкости и сложные случаи рассматриваются со ссылкой на конспект.
- Viewer для отладки алгоритмов вычгеома + документация и простой пример — 100 баллов. Требования:
- Viewer должен быть написан на Qt + OpenGL.
- Ошибки ловятся с помощью boost/exception, в примерах должен быть продемонстрирован этот способ отладки.
- Документация и простые примеры работы с ним.
- Реализовать тривиальный набор примитивов (точки, вектора, отрезки, полигоны и т.д.)
- Поддержка в рабочем состоянии.
- Баллы получит лучший вьюер, возможно, остальные тоже получат в зависимости от их качества.
- Разобраться с CORE/Leda — в случае успеха — 100 баллов, в случае фейла — 15.
- Продемонстрировать что с помощью этих библиотек можно реализовать точные предикаты, принимающие на вход данные, полученные разными путями.
- Кодогенератор для предикатов — 100 баллов.
- Помощь Алексею Сергушичеву с тестирующей системой — он оценивает сам.