org.optaplanner.examples.cheaptime.benchmark.cheapTimeBenchmarkConfig.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of optaplanner-examples Show documentation
Show all versions of optaplanner-examples Show documentation
OptaPlanner solves planning problems.
This lightweight, embeddable planning engine implements powerful and scalable algorithms
to optimize business resource scheduling and planning.
This module contains the examples which demonstrate how to use it in a normal Java application.
<?xml version="1.0" encoding="UTF-8"?> <plannerBenchmark> <benchmarkDirectory>local/data/cheaptime</benchmarkDirectory> <parallelBenchmarkCount>AUTO</parallelBenchmarkCount> <warmUpSecondsSpentLimit>30</warmUpSecondsSpentLimit> <inheritedSolverBenchmark> <problemBenchmarks> <solutionFileIOClass>org.optaplanner.examples.cheaptime.persistence.CheapTimeSolutionFileIO</solutionFileIOClass> <inputSolutionFile>data/cheaptime/import/instance00</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance01</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance02</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance03</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance04</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance05</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance06</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance07</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance08</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance09</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance10</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance11</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance12</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance13</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance14</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance15</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance16</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance17</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance18</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance19</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance20</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance21</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance22</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance23</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance24</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance25</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance26</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance27</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance28</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance29</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance30</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance31</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance32</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance33</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance34</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance35</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance36</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance37</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance38</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance39</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance40</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance41</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance42</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance43</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance44</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance45</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance46</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance47</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance48</inputSolutionFile> <inputSolutionFile>data/cheaptime/import/instance49</inputSolutionFile> <problemStatisticType>BEST_SCORE</problemStatisticType> <!--<problemStatisticType>STEP_SCORE</problemStatisticType>--> <!--<problemStatisticType>CALCULATE_COUNT_PER_SECOND</problemStatisticType>--> <!--<problemStatisticType>BEST_SOLUTION_MUTATION</problemStatisticType>--> <!--<problemStatisticType>MOVE_COUNT_PER_STEP</problemStatisticType>--> <!--<problemStatisticType>MEMORY_USE</problemStatisticType>--> <!--<singleStatisticType>CONSTRAINT_MATCH_TOTAL_BEST_SCORE</singleStatisticType>--> <!--<singleStatisticType>CONSTRAINT_MATCH_TOTAL_STEP_SCORE</singleStatisticType>--> <!--<singleStatisticType>PICKED_MOVE_TYPE_BEST_SCORE_DIFF</singleStatisticType>--> <!--<singleStatisticType>PICKED_MOVE_TYPE_STEP_SCORE_DIFF</singleStatisticType>--> <writeOutputSolutionEnabled>true</writeOutputSolutionEnabled> </problemBenchmarks> <solver> <!--<environmentMode>FULL_ASSERT</environmentMode>--> <solutionClass>org.optaplanner.examples.cheaptime.domain.CheapTimeSolution</solutionClass> <entityClass>org.optaplanner.examples.cheaptime.domain.TaskAssignment</entityClass> <scoreDirectorFactory> <scoreDefinitionType>HARD_MEDIUM_SOFT_LONG</scoreDefinitionType> <incrementalScoreCalculatorClass>org.optaplanner.examples.cheaptime.solver.score.CheapTimeIncrementalScoreCalculator</incrementalScoreCalculatorClass> <initializingScoreTrend>ONLY_DOWN</initializingScoreTrend> <!--<assertionScoreDirectorFactory>--> <!--<easyScoreCalculatorClass>org.optaplanner.examples.cheaptime.solver.score.CheapTimeEasyScoreCalculator</easyScoreCalculatorClass>--> <!--</assertionScoreDirectorFactory>--> </scoreDirectorFactory> <termination> <minutesSpentLimit>5</minutesSpentLimit> </termination> </solver> </inheritedSolverBenchmark> <solverBenchmark> <name>FFFD - LA 400-1</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType> <forager> <pickEarlyType>FIRST_FEASIBLE_SCORE_OR_NON_DETERIORATING_HARD</pickEarlyType> </forager> </constructionHeuristic> <localSearch> <unionMoveSelector> <changeMoveSelector> <valueSelector> <variableName>startPeriod</variableName> </valueSelector> </changeMoveSelector> <changeMoveSelector> <valueSelector> <variableName>machine</variableName> </valueSelector> </changeMoveSelector> <swapMoveSelector/> </unionMoveSelector> <acceptor> <lateAcceptanceSize>400</lateAcceptanceSize> </acceptor> <forager> <acceptedCountLimit>1</acceptedCountLimit> </forager> </localSearch> </solver> </solverBenchmark> <solverBenchmark> <name>FFFD - TS 7-2000 SO</name> <solver> <constructionHeuristic> <constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType> <forager> <pickEarlyType>FIRST_FEASIBLE_SCORE_OR_NON_DETERIORATING_HARD</pickEarlyType> </forager> </constructionHeuristic> <localSearch> <unionMoveSelector> <changeMoveSelector> <valueSelector> <variableName>startPeriod</variableName> </valueSelector> </changeMoveSelector> <changeMoveSelector> <valueSelector> <variableName>machine</variableName> </valueSelector> </changeMoveSelector> <swapMoveSelector/> </unionMoveSelector> <acceptor> <entityTabuSize>7</entityTabuSize> </acceptor> <forager> <acceptedCountLimit>2000</acceptedCountLimit> <finalistPodiumType>STRATEGIC_OSCILLATION</finalistPodiumType> </forager> </localSearch> </solver> </solverBenchmark> </plannerBenchmark>