Как динамически выбирать, какие ограничения следует применять к задаче оптимизации на основе входных данных внешнего инт ⇐ JAVA
-
Anonymous
Как динамически выбирать, какие ограничения следует применять к задаче оптимизации на основе входных данных внешнего инт
Предположим, что у нас есть полнофункциональное приложение, в интерфейсе которого есть страница, на которой мы можем выбрать ограничения, которые следует применить к конкретной проблеме. Список этих ограничений будет отправлен на серверную часть, когда мы запустим Timefold Solver для решения конкретной проблемы.
Как я могу быть уверен, что Timefold Solver будет применять только те ограничения, которые я выбрал со стороны внешнего интерфейса? Как я могу изменить TimetableConstraintProvider (например) для достижения упомянутой функциональности.
>
публичный класс TimetableConstraintProvider реализует ConstraintProvider { @Override public Constraint[] defineConstraints(ConstraintFactory ограничениеFactory) { вернуть новое ограничение [] { // Жесткие ограничения комнатаКонфликт(constraintFactory), учительКонфликт (constraintFactory), студентGroupConflict (constraintFactory), // Мягкие ограничения учительКомнатаСтабильности (constraintFactory), TeacherTimeEfficiency (constraintFactory), StudentGroupSubjectVariety (constraintFactory) }; } //реализация ограничений } Я предполагаю, что во-первых, у нас должны быть конечные точки POST/GET для выбранных ограничений. После этого каковы дальнейшие действия? Любая помощь приветствуется. Спасибо!
Предположим, что у нас есть полнофункциональное приложение, в интерфейсе которого есть страница, на которой мы можем выбрать ограничения, которые следует применить к конкретной проблеме. Список этих ограничений будет отправлен на серверную часть, когда мы запустим Timefold Solver для решения конкретной проблемы.
Как я могу быть уверен, что Timefold Solver будет применять только те ограничения, которые я выбрал со стороны внешнего интерфейса? Как я могу изменить TimetableConstraintProvider (например) для достижения упомянутой функциональности.
>
публичный класс TimetableConstraintProvider реализует ConstraintProvider { @Override public Constraint[] defineConstraints(ConstraintFactory ограничениеFactory) { вернуть новое ограничение [] { // Жесткие ограничения комнатаКонфликт(constraintFactory), учительКонфликт (constraintFactory), студентGroupConflict (constraintFactory), // Мягкие ограничения учительКомнатаСтабильности (constraintFactory), TeacherTimeEfficiency (constraintFactory), StudentGroupSubjectVariety (constraintFactory) }; } //реализация ограничений } Я предполагаю, что во-первых, у нас должны быть конечные точки POST/GET для выбранных ограничений. После этого каковы дальнейшие действия? Любая помощь приветствуется. Спасибо!