6.5. 配置自定义属性
在 OptaPlanner 项目中,您可以添加自定义属性来解析实例化类和明确提到自定义属性的文档。
先决条件
- 您有一个临时解决方案。
流程
添加自定义属性。
例如,如果您的
EasyScoreCalculator具有缓存的重度计算,并且您希望在一个基准中增加缓存大小,请添加myCacheSize属性:<scoreDirectorFactory> <easyScoreCalculatorClass>...MyEasyScoreCalculator</easyScoreCalculatorClass> <easyScoreCalculatorCustomProperties> <property name="myCacheSize" value="1000"/><!-- Override value --> </easyScoreCalculatorCustomProperties> </scoreDirectorFactory>为每个自定义属性添加公共集,该属性在构建
Solver时调用。public class MyEasyScoreCalculator extends EasyScoreCalculator<MySolution, SimpleScore> { private int myCacheSize = 500; // Default value @SuppressWarnings("unused") public void setMyCacheSize(int myCacheSize) { this.myCacheSize = myCacheSize; } ... }大多数值类型都被支持,包括
布尔值、Inint、双、MutitDecimal、string和enums。