【发布时间】:2020-08-20 20:32:19
【问题描述】:
我正在尝试解决混合整数非线性规划 (MINLP) 问题。我知道 CPLEX 可以解决混合整数二次规划 (MIQP) 问题,其中目标函数包含二次公式(最多两个决策变量的乘积)。
但是,我的 MINLP 的目标函数是三个以上整数决策变量的乘积,并且所有约束都是线性的。我想知道CPLEX能解决这种MINLP问题吗?
谢谢。
【问题讨论】:
我正在尝试解决混合整数非线性规划 (MINLP) 问题。我知道 CPLEX 可以解决混合整数二次规划 (MIQP) 问题,其中目标函数包含二次公式(最多两个决策变量的乘积)。
但是,我的 MINLP 的目标函数是三个以上整数决策变量的乘积,并且所有约束都是线性的。我想知道CPLEX能解决这种MINLP问题吗?
谢谢。
【问题讨论】:
使用 CPLEX 或 docplex 无法解决此类问题。如果您想将这些工具用于您的模型,那么您唯一的选择就是重新制定您的目标函数。例如,您可以考虑将目标公式化为分段线性函数。
有时可以对多个变量的乘积进行线性化。例如,当且仅当所有变量均为 1 时,三个二进制变量的乘积为 1。这可以通过引入一个表示乘积的新变量和强制变量为 1(如果所有二进制变量为 1 和 0)的约束来表示否则。在其他情况下也可以做类似的事情。
【讨论】: