是否可以使用pyomo建模最小-最大问题

时间:2019-06-02 16:35:09

标签: python pyomo

有可能在pyomo中提出以下形式的最小-最大-优化问题:

min(max(g_m(x)) s.t. L

其中g_m是非线性函数(实际上是另一个模型的约束),而L是一组线性约束?

如何为模型的目标函数创建表达式?

问题在于,在约束对象列表上使用max()只会返回在给定点具有最大值的约束。

1 个答案:

答案 0 :(得分:0)

我认为是的,但是除非您找到重新构造模型的聪明方法,否则它可能不是很有效。

您可以解决max(g_m(x))的所有可能性,然后选择目标函数值最低的解决方案。

我担心max运算不是您可以添加到最小化模型中的东西,因为它不是数学运算,而是求解器运算。此操作处于问题级别。请记住,在求解模型时,Pyomo仅需要一个sense优化(最小或最大)作为参数,因此使其无法理解最小-最大意义。即使这样做,它又如何知道最大化或最小化什么呢?这就是为什么我建议您将问题分成两部分,除非您着手解决它。