PuLP条件总和

时间:2019-12-18 13:58:01

标签: python-3.x pulp

我尝试在PuLP(目标的一部分)中建立以下数学陈述:

Purchase Cost

了解常见表示法

pulp.lpSum(p.loc[t][tau]*d[t+tau]*q[t][tau] for t in T for tau in F)

我不确定如何包含tau小于或等于T - tau的条件。我以前曾与XPRESS合作,在那我可以做类似的事情

forall(t in T, tau in F | tau<=T-t)

现在我的问题是,使用PuLP是否也可行?

谢谢。

1 个答案:

答案 0 :(得分:3)

这与纸浆并不是真的相关,而是完全由python的list comprehensions驱动。

代替

pulp.lpSum(p.loc[t][tau]*d[t+tau]*q[t][tau] for t in T for tau in F)

只需使用

nT = len(T)
pulp.lpSum(p.loc[t][tau]*d[t+tau]*q[t][tau] for t in T for tau in F if tau <= nT-t)