簡體   English   中英

CPLEX CP 調度問題:區間變量中的浮點時間

[英]CPLEX CP Scheduling problems: Float Times in Interval Variables

我一直在使用 **docplex for Python ** 在調度領域使用 CPLEX ILOC CP Optimizer 進行實驗。 但是,就 CPLEX 文檔所述,區間變量必須由 integer 個值(開始、持續時間、結束)定義。

因此,我的問題是關於在 docplex 中為時間引入浮點值的可能性,因為在我的例子中,活動平均持續時間是由浮點數定義的。 據我所知,我還沒有找到任何關於如何解決它的資源。

提前致謝。

使用 CPOptimizer,您可以使用十進制決策變量作為解決方法。

from docplex.cp.model import CpoModel

mdl = CpoModel(name='buses')

#now suppose we can book a % of buses not only complete buses

scale=100
scalenbbus40 = mdl.integer_var(0,1000,name='scalenbBus40')
scalenbbus30 = mdl.integer_var(0,1000,name='scalenbBus30')

nbbus40= scalenbbus40 / scale
nbbus30= scalenbbus30 / scale

 

mdl.add(nbbus40*40 + nbbus30*30 >= 310)
mdl.minimize(nbbus40*500 + nbbus30*400)

msol=mdl.solve()

print(msol[scalenbbus40]/scale," buses 40 seats")
print(msol[scalenbbus30]/scale," buses 30 seats")

暫無
暫無

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

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