Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,8 +181,12 @@
- Для выполнения экспериментов потребуется не только код, но окружение и некоторая его настройка. Соответственно, сдаваемое решение должно сопровождаться инструкциями по настройке окружения и воспроизведению экспериментов. В идеале, это всё должно содержаться в ноутбуке.
- Эксперименты должны быть воспроизводимыми (например, проверяющими).
- В ноутбуке выполняется вся настройка, пишется код для экспериментов, подготовки отчетов и графиков.
- Ноутбук является связанным текстом, описывающим цели эксперимента, методику их проведения, анализ результатов, ответы на поставленные вопросы.
- Ноутбук снабжается связанным текстом, описывающим цели эксперимента, методику их проведения, анализ результатов, ответы на поставленные вопросы.
- Ответы на вопросы должны быть обоснованы (экспериментами), наблюдаемое поведение проанализировано и обосновано.
- Результаты экспериментов представляются в виде презентации в отдельно оговоренный день. На рассказ 5 минут. На вопросы и ответы на них --- 3 минуты.
- Финальная за задачу оценка выставляется по результатам презентации и ответов на вопросы.
- Ровно одна попытка сделать презентацию.
- Качество презентации влияет на итоговую оценку. Рекомендуется, например, изучить разделы "Требования к презентации" и "7.3.4. Чеклист по презентации" из [этого документа](https://github.com/yurii-litvinov/courses/blob/master/additional/practices-guide/practices.pdf).

## Структура репозитория

Expand Down
36 changes: 22 additions & 14 deletions tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,9 +103,11 @@

## Задача 5. Экспериментальное исследование алгоритмов для регулярных запросов

Полный балл: 15
Полный балл: 25

Обратите внимание, что это максимальный балл. Реальная оценка может быть снижена, в том числе по результатам презентации.

Задача посвящена анализу производительности алгоритма решения задачи достижимости между всеми парами вершин и с заданным множеством стартовых вершин с регулярными ограничениями через.
Задача посвящена анализу производительности алгоритма решения задачи достижимости между всеми парами вершин и с заданным множеством стартовых вершин с регулярными ограничениями.

Исследуются следующие задачи достижимости, решаемые в предыдущих работах.
- Достижимость между всеми парами вершин.
Expand All @@ -117,7 +119,7 @@

Решение данной задачи оформляется как Python notebook. Для того, чтобы обеспечить возможность проверки, необходимо сделать notebook самодостаточным: в него должны быть включены все действия, необходимые для воспроизведения эксперимента. Также в notebook размещается отчет и анализ результатов ваших экспериментов в текстовом виде. Отчет сопровождается диаграммами, таблицами, картинками, если это необходимо для объяснения результатов.

Решением является не просто код, но отчёт об экспериментальном исследовании, который должен являться связанным текстом и содержать (как минимум) следующие разделы:
Решением является не просто код, но отчёт об экспериментальном исследовании, оформленный в виде презентации, который должен являться связанным рассказом и содержать (как минимум) следующие разделы:
- Постановка задачи
- Описание исследуемых решений
- Описание набора данных для экспериментов
Expand All @@ -129,7 +131,7 @@
- Результаты экспериментов
- Графики, таблицы
- Анализ результатов экспериментов
- Ответы на поставленные вопросы, аргументация ответов
- Ответы на поставленные вопросы, **аргументация ответов**. Обратите внимание, что "мне кажется", "я думаю" и прочие подобные формулировки аргументами не являются. Необходимы результаты замеров, профилирования, другие цифры.

При постановке экспериментов и базовом анализе результатов не лишним будет воспользоваться [советами отсюда](https://github.com/spbu-se/measurements/blob/main/measurements_cheat_sheet.pdf).
При написании отчёта можно попробовать вдохновиться рекомендациями [отсюда](https://github.com/spbu-se/matmex-diploma-template/blob/master/040_experiment.tex).
Expand All @@ -151,12 +153,14 @@
- В запросах должны использоваться все общепринятые конструкции регулярных выражений (замыкание, конкатенация, альтернатива). То есть хотя бы в одном запросе к каждому графу должна быть каждая из этих конструкций.
- [ ] Для генерации множеств стартовых вершин воспользоваться [этой функцией](https://formallanguageconstrainedpathquerying.github.io/CFPQ_Data/reference/graphs/generated/cfpq_data.graphs.utils.multiple_source_utils.html#cfpq_data.graphs.utils.multiple_source_utils.generate_multiple_source). Не забывайте, что от того, как именно устроено стартовое множество, сильно зависит время вычисления запроса.
- [ ] Сформулировать этапы эксперимента. Что нужно сделать, чтобы ответить на поставленные вопросы? Почему?
- [ ] Провести необходимые эксперименты, замеры
- [ ] Оформить результаты экспериментов
- [ ] Провести анализ результатов
- [ ] Ответить на поставленные вопросы
- [ ] Аргументировать ответы (пользуясь полученными результатами экспериментов)
- [ ] Не забыть опубликовать notebook в репозитории
- [ ] Провести необходимые эксперименты, замеры.
- [ ] Оформить результаты экспериментов.
- [ ] Провести анализ результатов.
- [ ] Ответить на поставленные вопросы.
- [ ] Аргументировать ответы (пользуясь полученными результатами экспериментов).
- [ ] Не забыть опубликовать notebook в репозитории.
- [ ] Не забыть подготовить презентацию и выступить с докладом. Проверьте требования из релевантных инструкций. Например, разделы "Требования к презентации" и "7.3.4. Чеклист по презентации" из [этого документа](https://github.com/yurii-litvinov/courses/blob/master/additional/practices-guide/practices.pdf). Обратите внимание, что в вашей презентации фокус на экспериментах.
- [ ] Не забыть выложить презентацию в репозиторий.

## Задача 6. Преобразование грамматики в ОНФХ, алгоритм Хеллингса

Expand Down Expand Up @@ -245,7 +249,9 @@

## Задача 10. Экспериментальное исследование алгоритмов решения задачи достижимости с КС ограничениями

Полный балл: 20
Полный балл: 30

Обратите внимание, что это максимальный балл. Реальная оценка может быть снижена, в том числе по результатам презентации.

Задача посвящена анализу производительности различных алгоритмов решения задачи достижимости между всеми парами вершин с контекстно-свободными ограничениями: алгоритма Хеллингса, матричного алгоритма, тензорного алгоритма, алгоритма на основе GLL. В ходе анализа необходимо ответить на следующие вопросы.
- Какой из трёх указанных алгоритмов обладает лучшей производительностью?
Expand All @@ -254,8 +260,8 @@

Решение данной задачи оформляется как Python notebook. Для того, чтобы обеспечить возможность проверки, необходимо сделать notebook самодостаточным: в него должны быть включены все действия, необходимые для воспроизведения эксперимента. Также в notebook размещается отчет и анализ результатов ваших экспериментов в текстовом виде. Отчет сопровождается диаграммами, таблицами, картинками, если это необходимо для объяснения результатов.

Решением является не просто код, но отчёт об экспериментальном исследовании, который должен являться связанным текстом и содержать (как минимум) следующие разделы:
- Постановка задачи
Решением является не просто код, но отчёт об экспериментальном исследовании, оформленный в виде презентации, который должен являться связанным рассказом и содержать (как минимум) следующие разделы:
- Постановка задачи (исследовательские вопросы)
- Описание исследуемых решений
- Описание набора данных для экспериментов
- Графы
Expand All @@ -266,7 +272,7 @@
- Результаты экспериментов
- Графики, таблицы
- Анализ результатов экспериментов
- Ответы на поставленные вопросы, аргументация ответов
- Ответы на поставленные вопросы, **аргументация, обоснование ответов**. Обратите внимание, что "мне кажется", "я думаю" и прочие подобные формулировки аргументами не являются. Необходимы результаты замеров, профилирования, другие цифры.

- [ ] Создать Python notebook, подключить необходимые зависимости.
- [ ] Подключить необходимые решения из предыдущих работ.
Expand All @@ -280,6 +286,8 @@
- [ ] Ответить на поставленные вопросы
- [ ] Аргументировать ответы (пользуясь полученными результатами экспериментов)
- [ ] Не забыть опубликовать notebook в репозитории
- [ ] Не забыть подготовить презентацию и выступить с докладом. Проверьте требования из релевантных инструкций. Например, разделы "Требования к презентации" и "7.3.4. Чеклист по презентации" из [этого документа](https://github.com/yurii-litvinov/courses/blob/master/additional/practices-guide/practices.pdf). Обратите внимание, что в вашей презентации фокус на экспериментах.
- [ ] Не забыть выложить презентацию в репозиторий.

## Задача 11. Язык запросов к графам

Expand Down
Loading