2

我必须为某些双层问题建模。该方法是通过用它们的 KKT 条件替换它们或用它们的最优条件替换它们来删除第二级问题,例如强对偶性......我希望自动执行此操作,而无需自己计算这些条件并将它们硬编码回原始条件。我有两个主要问题希望得到您的帮助:

  1. 如何将某些约束的对偶添加到目标函数?
  2. 有什么方法可以让我做我想做的事,如果没有,我可以从哪里开始编写它们,以便最终获得原始模型并返回具有原始、对偶约束和强对偶或 KKT 条件的模型?我想获得约束并手动形成对偶问题可能是正确的方法。

我非常感谢您提供的任何帮助,无论是在 Julia 还是 Pyomo 中。

4

1 回答 1

1

对于 Pyomo,请参阅包pyomo.bilevel( link ) 和pyomo.mpec( link )。我通常更喜欢手动重新制定,这样我就知道发生了什么(并使用工具来确认我做得正确)。

于 2020-11-22T18:23:54.217 回答