org.drools.planner.examples.travelingtournament.solver.smart.smartTravelingTournamentSolverConfig.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="UTF-8"?> <solver> <!--<environmentMode>DEBUG</environmentMode>--> <solutionClass>org.drools.planner.examples.travelingtournament.domain.TravelingTournament</solutionClass> <planningEntityClass>org.drools.planner.examples.travelingtournament.domain.Match</planningEntityClass> <scoreDirectorFactory> <scoreDefinitionType>HARD_AND_SOFT</scoreDefinitionType> <scoreDrl>/org/drools/planner/examples/travelingtournament/solver/smart/smartTravelingTournamentScoreRules.drl</scoreDrl> </scoreDirectorFactory> <termination> <scoreAttained>0hard/0soft</scoreAttained> </termination> <localSearch> <unionMoveSelector> <moveListFactory> <cacheType>PHASE</cacheType> <selectionOrder>SHUFFLED</selectionOrder> <moveListFactoryClass>org.drools.planner.examples.travelingtournament.solver.smart.move.factory.MatchSwapMoveFactory</moveListFactoryClass> </moveListFactory> <moveListFactory> <cacheType>STEP</cacheType> <selectionOrder>SHUFFLED</selectionOrder> <moveListFactoryClass>org.drools.planner.examples.travelingtournament.solver.smart.move.factory.SmartTravelingTournamentMoveFactory</moveListFactoryClass> </moveListFactory> </unionMoveSelector> <acceptor> <solutionTabuSize>1500</solutionTabuSize> <moveTabuSize>7</moveTabuSize> </acceptor> <forager> <deciderScoreComparatorFactory> <deciderScoreComparatorFactoryType>SHIFTING_HARD_PENALTY</deciderScoreComparatorFactoryType> <hardScoreActivationThreshold>0</hardScoreActivationThreshold> <successiveNoHardChangeMinimum>2</successiveNoHardChangeMinimum> <successiveNoHardChangeMaximum>20</successiveNoHardChangeMaximum> <successiveNoHardChangeRepetitionMultiplicand>20.0</successiveNoHardChangeRepetitionMultiplicand> <hardWeightSurvivalRatio>0.5</hardWeightSurvivalRatio> <startingHardWeight>1000</startingHardWeight> </deciderScoreComparatorFactory> <!-- Real world problems require to use of <minimalAcceptedSelection> --> </forager> </localSearch> </solver>