optaplannerhill-climbingtabu-search

Hill Climbing and Tabu Search in OptaPlanner


I'm using OptaPlanner to solve some plannig problems. I read the documentation and I'm not quite sure how does exactly Hill Climbing and Tabu Search algorithms work. What I'm unsure of is:


Solution

  • For Hill Climbing, see HillClimbingAcceptor#isAccepted(...). It accepts any move that has a score that is better or equal to the lastest step score. And looking at the default forager config for hill climing (in LocalSearchPhaseConfig, which says foragerConfig.setAcceptedCountLimit(1);), as soon as 1 move is accepted, it is the winning move.

    For Tabu Search, it will select moves that have a worse score, if:

    PS: Hill Climbing sucks. There's never a good reason to not use Late Acceptance or Tabu Search instead.

    PPS: Use the Benchmarker, do let HC, LA, TS, ... fight against each other. It will give you a lot of insight.