org.drools.planner.examples.examination.solver.examinationSolverConfig.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of drools-planner-examples Show documentation
Show all versions of drools-planner-examples Show documentation
Drools Planner optimizes automated planning by combining metaheuristic search algorithms with rule
engine powered score calculation. This is the drools-planner-examples module which contains examples on how to use
Drools Planner.
<?xml version="1.0" encoding="UTF-8"?> <solver> <!--<environmentMode>DEBUG</environmentMode>--> <solutionClass>org.drools.planner.examples.examination.domain.Examination</solutionClass> <planningEntityClass>org.drools.planner.examples.examination.domain.Exam</planningEntityClass> <scoreDrl>/org/drools/planner/examples/examination/solver/examinationScoreRules.drl</scoreDrl> <scoreDefinition> <scoreDefinitionType>HARD_AND_SOFT</scoreDefinitionType> </scoreDefinition> <termination> <!-- Official benchmark maximumSecondsSpend allowed on: - ge0ffrey's main pc: 429 - ge0ffrey's old pc: 1152 --> <maximumSecondsSpend>429</maximumSecondsSpend> <!--<scoreAttained>-0hard/-999999soft</scoreAttained>--> </termination> <customSolverPhase> <customSolverPhaseCommandClass>org.drools.planner.examples.examination.solver.solution.initializer.ExaminationStartingSolutionInitializer</customSolverPhaseCommandClass> </customSolverPhase> <localSearch> <!--<deciderScoreComparatorFactory>--> <!--<deciderScoreComparatorFactoryType>SHIFTING_HARD_PENALTY</deciderScoreComparatorFactoryType>--> <!--<hardScoreActivationThreshold>0</hardScoreActivationThreshold>--> <!--<successiveNoHardChangeMinimum>2</successiveNoHardChangeMinimum>--> <!--<successiveNoHardChangeMaximum>20</successiveNoHardChangeMaximum>--> <!--<successiveNoHardChangeRepetitionMultiplicand>20.0</successiveNoHardChangeRepetitionMultiplicand>--> <!--<hardWeightSurvivalRatio>0.2</hardWeightSurvivalRatio>--> <!--<startingHardWeight>1000</startingHardWeight>--> <!--</deciderScoreComparatorFactory>--> <selector> <!--<selector>--> <!--<topSize>10</topSize>--> <!--</selector>--> <!--<selector class="org.drools.planner.examples.examination.solver.selector.AllMovesOfOneExamSelectorConfig"/>--> <selector> <moveFactoryClass>org.drools.planner.examples.examination.solver.move.factory.PeriodChangeMoveFactory</moveFactoryClass> </selector> <selector> <moveFactoryClass>org.drools.planner.examples.examination.solver.move.factory.RoomChangeMoveFactory</moveFactoryClass> </selector> <selector> <moveFactoryClass>org.drools.planner.examples.examination.solver.move.factory.ExamSwitchMoveFactory</moveFactoryClass> </selector> </selector> <acceptor> <completeSolutionTabuSize>1000</completeSolutionTabuSize> <completePropertyTabuSize>10</completePropertyTabuSize> </acceptor> <forager> <pickEarlyType>NEVER</pickEarlyType> <minimalAcceptedSelection>1400</minimalAcceptedSelection><!-- TODO tweak me --> </forager> <!--<selector>--> <!--<moveFactoryClass>org.drools.planner.examples.examination.solver.move.factory.PeriodChangeExaminationMoveFactory</moveFactoryClass>--> <!--<shuffleMovesEveryStep>true</shuffleMovesEveryStep>--> <!--</selector>--> <!--<acceptor>--> <!--<acceptorType>SIMULATED_ANNEALING</acceptorType>--> <!--</acceptor>--> <!--<forager>--> <!--<minimalAcceptedSelection>4</minimalAcceptedSelection>--> <!--</forager>--> </localSearch> </solver>