如何解决mathprog中的域外错误



H=1..24;s.t.ElectBattery{h in h}:ES[h]-ES[h-1]-P2S[h]*Efi['ESt']+PGEN['ESt',h]==0;

错误:ES[0]超出域

单向:

  1. 确保ES[h]是在0..24上定义的(而不是1..24(
  2. 通过添加约束ES[0]=10(例如(将ES[0]固定为已知值

如果您想要稳态解决方案,请使用:

  1. ES[0] = ES[24]

除此之外,您还可以使用if-then-else构造,如:

ES[h] - (if h=1 then ES[24] else ES[h-1]) - ..

相关内容

  • 没有找到相关文章

最新更新