Java OptaPlanner处理计算要求以确定布尔返回值的最佳实践
以云计算为例。如果问题集只是稍微改变了一下,那么它会改变整个方程,如下所示: 假设其中一个需求(比如内存需求)必须返回一个布尔值true或false,如果进程内存需求是否适合云计算机的库存内存分配 但为了做到这一点,它首先必须执行一些java计算,以得出确定结果,比如以某种方式检查数组中的值 对于(a)处理布尔返回值(适合与否)和(b)处理执行一些java计算以确定布尔返回值的要求,OptaPlanner的最佳实践是什么 我可以说得更具体一些,但在被要求之前,我不会弄脏水…这是有效的:Java OptaPlanner处理计算要求以确定布尔返回值的最佳实践,java,drools,optaplanner,kie,Java,Drools,Optaplanner,Kie,以云计算为例。如果问题集只是稍微改变了一下,那么它会改变整个方程,如下所示: 假设其中一个需求(比如内存需求)必须返回一个布尔值true或false,如果进程内存需求是否适合云计算机的库存内存分配 但为了做到这一点,它首先必须执行一些java计算,以得出确定结果,比如以某种方式检查数组中的值 对于(a)处理布尔返回值(适合与否)和(b)处理执行一些java计算以确定布尔返回值的要求,OptaPlanner的最佳实践是什么 我可以说得更具体一些,但在被要求之前,我不会弄脏水…这是有效的: @Pla
@PlanningEntity class MyEntity {
private MyValue var;
@PlanningEntity
public MyValue getVar() {...}
// Smart getters
public boolean isVarCool {
return var != null && var.isCool();
}
public boolean isVarCoolAndalive {
return var != null && var.isCool() && var.isAlive();
}
public int getVarWeight {
return var == null ? 0 : var.getAge() * this.getSomethingElse();
}
}
然后在约束中使用它:
rule x when MyEntity(varCool = false) then ... end
rule y when MyEntity(varWeight > 10) then ... end