我想调查投资额外的生产设施是否有利可图,因此我必须考虑到我的目标函数的资本化。
因此我想知道是否有可能,例如,如果y [t] = 1,那么y [g] = 1 对于g!= t,g> t和其中g,t是时间间隔集T的子集。
我的第一个想法是:
subject to Constraint1:
y[t] = y[t-1] for all t in T
但是肯定会使y的解决方案成为y [0]中的起始值,这是我显然不想要的。
澄清。假设y [t]是一个二进制变量,如果投资是在时间t进行的,则其值为1,否则为0.
希望任何人都能对此有所了解!
此致
答案 0 :(得分:1)
约束y[t] = 1, then y[g] = 1 for g != t, g > t
可以在AMPL中表示为:
s.t. c{t in T: t != t0}: y[t + 1] >= y[t];
其中t0
是集T
的第一个元素。请注意使用>=
代替=
。如果某些y[t]
的{{1}}为1,则会将t
的所有后续值y
驱动为t
。