Программа составления расписания в консоли на C++
Пункт 1. Нужно применить три вида генетического алгоритма:
1) классический ГА
2) Genitor
3) островной
Пункт 2. Консольное приложение, где присутствует выбор: вид алгоритма( монжо 1(генитор),2(классический) и 3(островной)-пронумеровать каждый вид), процент мутации и данные для задачи. Нужно вывести таблицу с расписанием(в отельном окне, типа приложения, но без функционала), максимально упрощенную, но чтобы можно было посмотреть такое расписание. Таблица разбита на дни и на уроки, как в школе. В ячейках прописан класс, аудитория, учитель и предмет
Пункт 3.Добавить секундомер, который выводит время работы программы. Он требуется для статистики, Т.е. какой из видов генетического алгоритма работает быстрее.
Пункт 4. Данные программа должна считывать с текстового файла.
Пункт 5. В файле хранятся данные о учебном заведении(сколько классов, сколько аудиторий, сколько учителей, а так же их ФИО и какой предмет преподают, количество часов работы учителей.
-Количество популяций можно ставить любое число
-Мутации от 0% до 100%
-количество уроков максимум 6 в день, в неделю максимум 36 ( урок 1 час).
-количество классов и какие классы подписываем 1А, 1Б, 1В. У всех классов есть все дисциплины минимум один урок в неделю. Основные уроки они точно есть и будут (математика, русский, литература, история, химия и физика) минимум 3 раза в неделю
-количество дисциплин от 6 до 16
-число преподавателей равно числу дисциплин(один препод на одну дисциплину)
-так же сами задаем рабочее время учителя не более 36 часов в неделю
Необходимо вывести в консоль таблицу с полученным расписанием, с возможностью перемещаться по нему (ввод класса или учителя в консоли).
Вспомогательные ресурсы:
https://github.com/olmallet81/GALGO-2.0 все что нужно для генетического алгоритма, готовые шаблоны