Optaplanner 基准测试和微调
Optaplanner benchmarking and fine tuning
我目前正在调整和微调我的安装程序预订分配优化器,最近刚刚将我的库升级到 Optaplanner 6.2.0 Final。我正在使用基准程序来观察哪种优化策略(EntityTabu、SimulatedAnnealing、有或没有 TailChainSwapMove)我有几个问题:
1) 我在求解器上附加了一个 eventListener,用于显示评分方面的任何改进。我可以将 eventListener 附加到我的基准吗?
2) 对于 ChangeMove 和 SwapMove 选择器,我能否将 filterClass 与 entitySelector 结合使用,以便我可以利用 nearbyDistanceMeterClass?
<solverBenchmark>
<name>Entity tabu w tailChainSwapMove</name>
<solver>
<localSearch>
<unionMoveSelector>
<changeMoveSelector>
<filterClass>com.tmrnd.pejal.opta.solver.move.InstallerChangeMoveFilter</filterClass>
</changeMoveSelector>
<swapMoveSelector>
<filterClass>com.tmrnd.pejal.opta.solver.move.SamePttSwapMoveFilter</filterClass>
</swapMoveSelector>
<tailChainSwapMoveSelector>
<entitySelector id="entitySelector3"/>
<valueSelector>
<nearbySelection>
<originEntitySelector mimicSelectorRef="entitySelector3"/>
<nearbyDistanceMeterClass>com.tmrnd.pejal.opta.solver.move.BookingNearbyDistanceMeter</nearbyDistanceMeterClass>
<parabolicDistributionSizeMaximum>20</parabolicDistributionSizeMaximum>
</nearbySelection>
</valueSelector>
</tailChainSwapMoveSelector>
</unionMoveSelector>
<acceptor>
<entityTabuRatio>0.05</entityTabuRatio>
</acceptor>
<forager>
<acceptedCountLimit>1000</acceptedCountLimit>
</forager>
</localSearch>
</solver>
1) 您的意思是像基准测试程序支持的所有可选统计信息,例如 BEST_SCORE 统计信息(请参阅文档)等吗?所有这些统计数据都很好地显示在基准报告中。
2) 试一试。
我目前正在调整和微调我的安装程序预订分配优化器,最近刚刚将我的库升级到 Optaplanner 6.2.0 Final。我正在使用基准程序来观察哪种优化策略(EntityTabu、SimulatedAnnealing、有或没有 TailChainSwapMove)我有几个问题:
1) 我在求解器上附加了一个 eventListener,用于显示评分方面的任何改进。我可以将 eventListener 附加到我的基准吗?
2) 对于 ChangeMove 和 SwapMove 选择器,我能否将 filterClass 与 entitySelector 结合使用,以便我可以利用 nearbyDistanceMeterClass?
<solverBenchmark>
<name>Entity tabu w tailChainSwapMove</name>
<solver>
<localSearch>
<unionMoveSelector>
<changeMoveSelector>
<filterClass>com.tmrnd.pejal.opta.solver.move.InstallerChangeMoveFilter</filterClass>
</changeMoveSelector>
<swapMoveSelector>
<filterClass>com.tmrnd.pejal.opta.solver.move.SamePttSwapMoveFilter</filterClass>
</swapMoveSelector>
<tailChainSwapMoveSelector>
<entitySelector id="entitySelector3"/>
<valueSelector>
<nearbySelection>
<originEntitySelector mimicSelectorRef="entitySelector3"/>
<nearbyDistanceMeterClass>com.tmrnd.pejal.opta.solver.move.BookingNearbyDistanceMeter</nearbyDistanceMeterClass>
<parabolicDistributionSizeMaximum>20</parabolicDistributionSizeMaximum>
</nearbySelection>
</valueSelector>
</tailChainSwapMoveSelector>
</unionMoveSelector>
<acceptor>
<entityTabuRatio>0.05</entityTabuRatio>
</acceptor>
<forager>
<acceptedCountLimit>1000</acceptedCountLimit>
</forager>
</localSearch>
</solver>
1) 您的意思是像基准测试程序支持的所有可选统计信息,例如 BEST_SCORE 统计信息(请参阅文档)等吗?所有这些统计数据都很好地显示在基准报告中。
2) 试一试。