簡體   English   中英

OptaPlanner最佳實踐,用於處理確定布爾返回值的計算要求

[英]OptaPlanner Best Practices for handling a requirement for calculations to determine a boolean return value

考慮雲計算機示例。 如果問題集只是稍作改動,該怎么辦?它會像這樣改變整個方程:

假設其中一個要求(例如,內存要求)僅需返回布爾值true或false,則無論進程內存要求是否適合該雲計算機存儲的內存分配。

但是,為此,它首先必須執行一些Java計算以得出該確定結果,例如以某種方式檢查數組中的值。

(a)處理布爾返回值(是否合適)和(b)處理執行一些Java計算以確定布爾返回值的要求時,OptaPlanner最佳做法是什么?

我可以說得更具體些,但是直到需要時我才將水弄糊塗。

這是有效的:

@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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM