0

我正在编写一个 OPL 模型,但不知道如何表达以下约束:

q_t-D_t_T*v_t <=0

to集合中D_t_T所有的总和在哪里。q_ttT

- 更新 -

是的,只有 q[t] 和 v[t] 是变量。如果我将范围定义t如下,该建议是否也有效:

//parameters
int T=...;                          
range Perioden=1..T;

然后我的约束看起来:

forall(t in Perioden)
  constraint1:
    q[t]- (sum(i in t..T) q[i])*v[t]<=0;

也许还有一个更基本的问题:如何在以下表达式中表达 [t-1]:

forall(t in Perioden)
  constraint2:
    y[t-1]+q[t]-y[t]==q[t];
4

1 回答 1

1

是的,只是q[t]v[t]是变量。如果我将 t 的范围定义如下,您的建议是否也有效:

//parameters
int T=...;                          
range Perioden=1..T;

然后我的约束看起来:

forall(t in Perioden)
  constraint1:
    q[t]- (sum(i in t..T) q[i])*v[t]<=0;

也许还有一个更基本的问题:如何在以下表达式中表达 [t-1]:

forall(t in Perioden)
  constraint2:
    y[t-1]+q[t]-y[t]==q[t];
于 2015-04-19T13:11:53.250 回答