整数规划算法最小化或最大化受等式、不等式和整数约束的函数。整数约束限制优化问题中的部分或所有变量仅采用整数值。这使得涉及离散数量(如股票份额)或是或否决策的问题的精确建模成为可能。当只有部分变量存在整数约束时,该问题称为混合整数规划(MIP)。整数规划问题的例子包括投资组合优化在能源生产中的金融,最佳调度(单位承诺),设计优化在工程和调度和运输和供应链应用中的调度和路由。
整数编程是查找要最小化函数的向量\(X \)的数学问题:
\ [\ min_x f(x)\]
受限制:
\[\begin{eqnarray}g(x)\leq 0&\quad&\text{(不等式约束)}\\h(x)=0&\quad&\text{(等式约束)}\\x\u i\in\mathbb{Z}&\quad&\text{(整数约束)}\end{eqnarray}]
这是最常见的整数编程形式,称为混合整数非线性程序(MINLP)。
只有线性目标和约束可以配制许多问题。在这种情况下,整数程序称为混合整数线性程序(MILP),并编写为:
\ [\ min_ {x} \ left \ {f ^ {\ mathsf {t}} x \ rick \} \]
受限制:
\ [\ begin {eqnarray} ax \ leq b&\ quad&\ text {(不等式约束)} \\ a_ {eq} x = b_ {eq}&\ quad&\ text {(平等约束)} \\ lb\ LEQ X \ LEQ UB&quad&\ text {(绑定约束)} \\ x_i \ in \ mathbb {z}&\ quad&\ text {(整数约束)} \ neg {eqnarray} \]