Я клонирую коммерческую систему управления студентами. Студенты используют внешний интерфейс для подачи заявок на лекции, сотрудники университета могут изменять события (время, помещение и т. Д.).
Ядром приложения будет алгоритм, который распределяет места среди студентов. Я уже спрашивал об этом здесь:
Как реализовать алгоритм распределения мест для лекций
Теперь я нашел класс для этого алгоритма здесь:
http://www.phpclasses.org/browse/file/10779.html
Я поместил «класс GA» в приложение / вендоров. Мне нужно написать «решение класса», которое представляет один объект (дочерний, а затем родительский для эволюционного процесса).
Мне также придется написать функции mutate (), crossover () и fitness (). пригодность рассчитывает оценку решения, основываясь на том, есть ли переподготовленные курсы и т.д .; crossover () - это безумная функция секса обезьяны, которая производит ребенка от двух родителей, а mutate () изменяет ребенка после кроссовера.
Теперь функция fitness () должна получить доступ к нескольким связанным моделям и их функциям find (). Он оценивает пригодность решения, проверяя, например, если есть перебронированные курсы или невыполненные пожелания, и штрафуется за это.
Где бы я поместил ga.php, solution.php и три функции? ga.php должен получить доступ к функциям, но функции должны получить доступ к моделям. Я также не хочу вызывать какие-либо App :: import () из функции fitness () - потому что при запуске алгоритма она вызывается много тысяч раз.
Надеюсь, кто-нибудь может мне помочь. Заранее спасибо =)