org.drools.planner.examples.cloudbalancing.benchmark.cloudBalancingBenchmarkConfig.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"?> <plannerBenchmark> <benchmarkDirectory>local/data/cloudbalancing</benchmarkDirectory> <warmUpSecondsSpend>30</warmUpSecondsSpend> <inheritedSolverBenchmark> <problemBenchmarks> <xstreamAnnotatedClass>org.drools.planner.examples.cloudbalancing.domain.CloudBalance</xstreamAnnotatedClass> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0002comp-0006proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0003comp-0009proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0004comp-0012proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0100comp-0300proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0200comp-0600proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0400comp-1200proc.xml</inputSolutionFile> <inputSolutionFile>data/cloudbalancing/unsolved/cb-0800comp-2400proc.xml</inputSolutionFile> <problemStatisticType>BEST_SOLUTION_CHANGED</problemStatisticType> </problemBenchmarks> <solver> <solutionClass>org.drools.planner.examples.cloudbalancing.domain.CloudBalance</solutionClass> <planningEntityClass>org.drools.planner.examples.cloudbalancing.domain.CloudProcess</planningEntityClass> <scoreDirectorFactory> <scoreDefinitionType>HARD_AND_SOFT</scoreDefinitionType> <scoreDrl>/org/drools/planner/examples/cloudbalancing/solver/cloudBalancingScoreRules.drl</scoreDrl> </scoreDirectorFactory> <termination> <maximumMinutesSpend>5</maximumMinutesSpend> </termination> </solver> </inheritedSolverBenchmark> <!--<solverBenchmark>--> <!--<name>bruteForce</name>--> <!--<solver>--> <!--<bruteForce>--> <!--</bruteForce>--> <!--</solver>--> <!--</solverBenchmark>--> <solverBenchmark> <name>FIRST_FIT</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> </solver> </solverBenchmark> <solverBenchmark> <name>FIRST_FIT_DECREASING</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> </solver> </solverBenchmark> <solverBenchmark> <name>BEST_FIT</name> <solver> <constructionHeuristic> <constructionHeuristicType>BEST_FIT</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> </solver> </solverBenchmark> <solverBenchmark> <name>BEST_FIT_DECREASING</name> <solver> <constructionHeuristic> <constructionHeuristicType>BEST_FIT_DECREASING</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> </solver> </solverBenchmark> <solverBenchmark> <name>entityTabu7</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> <localSearch> <selector> <selector> <moveFactoryClass>org.drools.planner.examples.cloudbalancing.solver.move.factory.CloudComputerChangeMoveFactory</moveFactoryClass> </selector> <selector> <moveFactoryClass>org.drools.planner.examples.cloudbalancing.solver.move.factory.CloudProcessSwapMoveFactory</moveFactoryClass> </selector> </selector> <acceptor> <solutionTabuSize>1000</solutionTabuSize> <planningEntityTabuSize>7</planningEntityTabuSize> </acceptor> <forager> <minimalAcceptedSelection>1000</minimalAcceptedSelection> </forager> </localSearch> </solver> </solverBenchmark> <solverBenchmark> <name>simulatedAnnealing</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType> <constructionHeuristicPickEarlyType>FIRST_LAST_STEP_SCORE_EQUAL_OR_IMPROVING</constructionHeuristicPickEarlyType> </constructionHeuristic> <localSearch> <selector> <selector> <moveFactoryClass>org.drools.planner.examples.cloudbalancing.solver.move.factory.CloudComputerChangeMoveFactory</moveFactoryClass> </selector> <selector> <moveFactoryClass>org.drools.planner.examples.cloudbalancing.solver.move.factory.CloudProcessSwapMoveFactory</moveFactoryClass> </selector> </selector> <acceptor> <simulatedAnnealingStartingTemperature>0hard/400soft</simulatedAnnealingStartingTemperature> <planningEntityTabuSize>5</planningEntityTabuSize> </acceptor> <forager> <minimalAcceptedSelection>4</minimalAcceptedSelection> </forager> </localSearch> </solver> </solverBenchmark> </plannerBenchmark>