Существует ли алгоритм, который создает университетского расписания в течение целого семестра?

Я должен реализовать алгоритм, который генерирует расписание для университета. Я искал и нашел много алгоритмов. Но вот проблема. Мне нужен алгоритм, который генерирует расписание в течение целого семестра, не на еженедельной основе. Это должно также рассмотреть предопределенный порядок частей курса, например, упражнение 1 должно быть после лекции 2 и перед лекцией 3. У Вас есть какие-либо предложения?

Спасибо.

ОБНОВЛЕНИЕ:
У меня есть следующие трудные ограничения:
H1: Только одна часть курса присвоена каждой комнате в любое время слот.
H2: комната может разместить всех студентов посещения и удовлетворяет все функции, требуемые событием.
H3: Никакой студент не посещает режим, чем один курс одновременно (по крайней мере, обязательные курсы)
H-4: Никакой учитель не преподает больше чем одну часть курса одновременно.

Мягкие ограничения:
S1: часть курса не должна быть выделена временному интервалу, неудобному для лектора.
S2: должно быть минимальное количество разрывов между классами учителя.
S3: должно быть минимальное количество разрывов между классами для студента.
S4: Классы должны удовлетворить предпочтения лектора - дни и временные интервалы.
S5: части Курса, как должны планировать, предопределят порядок.

Пример:
Курс "Программная архитектура"

Week No   Course    Room    Course Part   Day       Time
--------+---------+-------+--------------+----------+-----
Week 1:   SA        435     Lecture 1     Wednesday  8.15-11
Week 2:   SA        435     Lecture 2     Wednesday  8.15-11
Week 3:   SA        47      Lab 1         Monday     13-15
Week 3:   SA        436     Lecture 3     Wednesday  11-14
Week 4:   SA        243     Exercise 1    Monday     13-15
Week 5:   SA        436     Lecture 4     Wednesday  8.15-11
6
задан Thea 20 June 2010 в 15:31
поделиться

2 ответа

Вы можете изучить интервальное планирование . Похоже, вам понадобится модифицированная версия, которая добавила бы некоторые ограничения, например, где разрешено размещать упражнения. Жадные алгоритмы обычно довольно легко модифицировать, и существует целая куча уже модифицированных версий базового алгоритма IS.

1
ответ дан 18 December 2019 в 04:47
поделиться

IIRC такая проблема не решается полностью алгоритмом.

-1
ответ дан 18 December 2019 в 04:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: