求解整数约束的优化问题

整数编程算法最小化或最大化的函数受到相等,不相等,和整数约束。整数约束限制部分或全部的优化问题的变量来只取整数值。这使得涉及离散量(如股股票),或者是或否的决策问题的精确建模。当存在于仅一些变量整数约束,这个问题被称为混合整数规划(MIP)。例如整数规划问题包括投资组合优化在金融学中,能源生产中的发电机组优化调度(机组承诺)优化设计在工程,调度和交通运输和供应链应用的路由。

整数规划是找到一个向量\(x\)使函数最小化的数学问题:

\ [\ min_x f (x) \]

受下列限制:

\ [\ {开始} eqnarray的G(X)\ 0当量&\四&\文本{(不等式约束)} \\ H(X)= 0&\四&\文本{(等式约束)} \\ X_I \在\ mathbb {Z}&\四&\文本{(整数约束)} \ {端eqnarray的} \]

这是整数规划的最一般形式,被称为混合整数非线性规划(MINLP)。

许多问题只能用线性目标和约束来表述。在这种情况下,该整数规划称为混合整数线性规划(MILP),其表达式为:

\ [\ min_ {x} \左\ {f ^ {\ mathsf {T}} x \ \} \]

受下列限制:

\[\begin{eqnarray}Ax \leq b & \四& \文本{(不等式约束)}\A_{eq}x = b_{eq} & \四& \文本{(等式约束)}\lb \leq x \leq ub & \四& \文本{(约束约束)}\ x_i \in \mathbb{Z} & \四& \文本{(整数约束)}\end{eqnarray}\]

整数规划算法可以在MATLAB等软件中实现®。通常求解MILPs需要使用多种技术的组合来缩小解空间,找到整数可行解决方案,并在解空间不包含更好整数可行解的丢弃的部分。金宝搏官方网站对于整数规划常用的技术包括:

  • 减少飞机:为减少搜索空间的问题添加额外的约束。
  • 启发式:搜索整数可行的解决方案。金宝搏官方网站
  • 分支界限法:系统地寻找最优解。该算法解决了线性规划整型变量可能值范围受限的松弛。

优化工具箱™中的MILP求解器实现了这些技术。

一些最小值可以通过将这些整数规划技术应用于非线性函数或通过线性化非线性函数并求解一系列最小值。当非线性函数只能在积分点处求值时,需要采用其他方法。在全局优化工具箱中实现了两种适用于这类整数程序的算法:

  • 遗传算法:模仿自然的选择过程中反复修改被限制为整数值个性化解决方案的一个群体。金宝搏官方网站
  • 代理优化:自动建立问题的代理模型,该模型可以轻松处理,然后通过将MILP技术适应到MINLP来解决。

有关整数编程的更多信息,请参见优化工具箱全局优化工具箱



用例


混合整数线性规划的例子



参见:优化工具箱,全局优化工具箱,线性规划,二次规划,非线性规划,遗传算法,投资管理,能源交易,规范的分析