0

The OptaPlanner user guide (http://docs.jboss.org/optaplanner/release/6.4.0.Final/optaplanner-docs/html_single/index.html#whichOptimizationAlgorithmsShouldIUse) mentions "combining multiple algorithms together".

How do you specifiy that in the configuration file? The XML does not allow more than one localSearchType element. I tried a run with

<acceptor>
  <entityTabuSize>7</entityTabuSize>
  <lateAcceptanceSize>200</lateAcceptanceSize>
  <simulatedAnnealingStartingTemperature>0hard/500soft</simulatedAnnealingStartingTemperature>
</acceptor>    

and it ran, but I'm not sure what algorithms were used.

Mitch
  • 989
  • 1
  • 9
  • 25

2 Answers2

1

You can combine LS's and also sequence them.

Combine:

<acceptor>
  <entityTabuSize>7</entityTabuSize>
  <lateAcceptanceSize>200</lateAcceptanceSize>
</acceptor>
// with acceptedCounLimit 1 => LA with a bit of tabu

Sequence

<localSearch>
  <termination>...</termination>
  <acceptor>
    <lateAcceptanceSize>200</lateAcceptanceSize>
  </acceptor>
  ...
</localSearch>
<localSearch>
  <acceptor>
    <entityTabuSize>7</entityTabuSize>
  </acceptor>
  ...
</localSearch>
// First LA, then TS
Geoffrey De Smet
  • 26,223
  • 11
  • 73
  • 120
  • The XML structure is confusing to me in this respect. Seems that you can specify localSearchType or acceptor, but not both. Does including an algorithm-specified parameter trigger that algorithm to be run? e.g. lateAcceptanceSize triggers Late Acceptance and entityTabuSize triggers Tabu? – Mitch Apr 25 '16 at 15:38
  • Yes. The type gives you a default param value for that type. – Geoffrey De Smet Apr 25 '16 at 17:11
0

Apparently, you can use a sequence of localSearch sections.

Mitch
  • 989
  • 1
  • 9
  • 25