我尝试在PuLP(目标的一部分)中建立以下数学陈述:
了解常见表示法
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是否也可行?
谢谢。
答案 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)