2016-05-14 3 views
0

Я пытаюсь решить эту проблему с помощью генетического алгоритма. Но не может найти способ вычисления значения пригодности. Я не пишу программу, а просто решу это на бумаге.
Проблема в том, что я не могу найти значение пригодности, которое обслуживает столкновения. например class1 и class2 не могут быть в тот же день.Малая таблица времени с использованием генетического алгоритма

Каждый профессор может преподавать только один класс за раз.

Дни
Понедельник
Среда
Пятница

Классы:
Класс 1 - Введение в программирование: встречается с 8: 00-9: 12 утра.
Класс 2 - Введение в искусственный интеллект: встречается с 8: 30-9: 30 утра
Класс 3 - Natural Language Processing: встречается с 9: 00-10: 12 утра
Class 4 - Computer Vision: встречается с 9:00 -10: 12 утра
Класс 5 - машинного обучения: встречается с 9: 30-10: 30am

профессора являются:
профессор а, который доступен, чтобы научить классов 3 и 4.
профессор B , который может преподавать классы 2, 3, 4 и 5.
Профессор C, который доступны для обучения Классы 1, 2, 3, 4, 5.

Любая помощь будет оценена по достоинству.

+0

Помогите нам: как выглядит ваша фитнес-функция сейчас? – Ray

ответ

0

В вашем сценарии функция пригодности должна указывать, сколько конфликтов создано решением, поэтому у вас есть что-то вроде отрицательных значений. Например. -100 при столкновении классов и -50 при столкновении с профессионалами. Тогда значение пригодности 0 будет решением, которое удовлетворяет всем необходимым ограничениям.

Тогда вы могли бы также добавить некоторую логику для решения задач с хорошей балансировкой рабочей нагрузки профессора. Простая идея заключалась бы в учете разницы между наименьшей и максимальной рабочей нагрузкой. Чем меньше разница, тем выше должно быть значение пригодности. Либо вы вычтите разницу снова, как и для ограничений, или инвертируете ее, например. 100/разн.

 Смежные вопросы

  • Нет связанных вопросов^_^