All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.drools.planner.examples.nurserostering.solver.nurseRosteringSolverConfig.xml Maven / Gradle / Ivy

Go to download

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.

There is a newer version: 6.0.0.Alpha9
Show newest version
<?xml version="1.0" encoding="UTF-8"?>
<solver>
  <!--<environmentMode>DEBUG</environmentMode>-->
  <solutionClass>org.drools.planner.examples.nurserostering.domain.NurseRoster</solutionClass>
  <planningEntityClass>org.drools.planner.examples.nurserostering.domain.ShiftAssignment</planningEntityClass>

  <scoreDirectorFactory>
    <scoreDefinitionType>HARD_AND_SOFT</scoreDefinitionType>
    <scoreDrl>/org/drools/planner/examples/nurserostering/solver/nurseRosteringScoreRules.drl</scoreDrl>
  </scoreDirectorFactory>

  <termination>
    <!--
      Official benchmark maximumSecondsSpend allowed on:
      - ge0ffrey's main pc: sprint 11, medium 700, long 42000
    -->
    <maximumSecondsSpend>700</maximumSecondsSpend>
    <!--<scoreAttained>-0hard/-999999soft</scoreAttained>-->
  </termination>
  <constructionHeuristic>
    <constructionHeuristicType>BEST_FIT</constructionHeuristicType>
  </constructionHeuristic>
  <localSearch>
    <unionMoveSelector>
      <moveListFactory>
        <cacheType>PHASE</cacheType>
        <moveListFactoryClass>org.drools.planner.examples.nurserostering.solver.move.factory.EmployeeChangeMoveFactory</moveListFactoryClass>
      </moveListFactory>
      <moveListFactory>
        <cacheType>PHASE</cacheType>
        <moveListFactoryClass>org.drools.planner.examples.nurserostering.solver.move.factory.ShiftAssignmentSwapMoveFactory</moveListFactoryClass>
      </moveListFactory>
      <moveListFactory>
        <cacheType>STEP</cacheType>
        <moveListFactoryClass>org.drools.planner.examples.nurserostering.solver.move.factory.ShiftAssignmentPillarPartSwapMoveFactory</moveListFactoryClass>
      </moveListFactory>
      <!--<moveListFactory>-->
        <!--<cacheType>STEP</cacheType>-->
        <!--<moveListFactoryClass>org.drools.planner.examples.nurserostering.solver.move.factory.ShiftAssignmentSequenceSwitchLength2MoveFactory</moveListFactoryClass>-->
      <!--</moveListFactory>-->
      <!--<moveListFactory>-->
        <!--<cacheType>STEP</cacheType>-->
        <!--<moveListFactoryClass>org.drools.planner.examples.nurserostering.solver.move.factory.ShiftAssignmentSequenceSwitchLength3MoveFactory</moveListFactoryClass>-->
      <!--</moveListFactory>-->
    </unionMoveSelector>
    <acceptor>
      <solutionTabuSize>1000</solutionTabuSize>
      <planningEntityTabuSize>7</planningEntityTabuSize>
    </acceptor>
    <forager>
      <minimalAcceptedSelection>800</minimalAcceptedSelection>
    </forager>
  </localSearch>
</solver>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy