八、混合整数线性规划问题

1、混合整数线性规划问题

\qquad 混合整数线性规划问题的一般表示形式如下所示:假设现有 n n n个变量, m m m个约束,令最大化(或者最小化) c 1 x 1 + c 2 x 2 + . . . + c n x n c_1x_1+c_2x_2+...+c_nx_n c1x1+c2x2+...+cnxn为目标函数,约束条件如下所示:
a 11 x 1 + . . . + a 1 n x n ≤ b 1 . . . a m 1 x 1 + . . . + a m n x n ≤ b m x i ≥ 0 , 1 ≤ i ≤ n x i 为整数 , i ∈ S a_{11}x_1+...+a_{1n}x_n\leq b_1 \\ ...\\ a_{m1}x_1+...+a_{mn}x_n\leq b_m\\ x_i \geq 0, 1\leq i \leq n \\ x_i 为整数, i \in S a11x1+...+a1nxnb1...am1x1+...+amnxnbmxi0,1inxi为整数,iS
\qquad 混合整数线性规划问题和线性规划问题形式大致相同,但引入了一个新的集合 S S S,规定集合 S S S中的变量 x i x_i xi的取值必须为整数。
\qquad 求解一个0-1整数上的线性方程也是NP-完全的,如子集和问题:

  • 给定一个整数集合 S = { s 1 , s 2 , . . . , s n } S=\{s_1,s_2,...,s_n\} S={s1,s2,...,sn}和一个整数 s 0 s_0 s0
  • 是否存在一个子集,其中的元素之和为 s 0 s_0 s0
    \qquad 子集和问题的混合整数线性规划模型如下所示:
    s 1 x 1 + . . . + s n x n = s 0 , 0 = ≤ x i ≤ 1 , 1 ≤ i ≤ n s_1x_1+...+s_nx_n=s_0, 0=\leq x_i \leq 1, 1 \leq i \leq n s1x1+...+snxn=s0,0=≤xi1,1in
    \qquad 子集和问题是NP完全的,所以一般的混合整数规划模型肯定是NP完全的。
    \qquad 混合整数规划问题有以下重要的性质:
  • 对于一个混合整数规划问题,所有可行的点对于线性松弛问题都是可行的
  • 所以松弛问题的整数最优解是混合整数线性规划问题的最优解

2、分枝定界算法

\qquad 求解混合整数线性规划的思路(分枝定界法 branch and bound) 如下所示:

  • 不断用单纯型算法来求解改进后的松弛问题
  • 通过增加约束来进行分枝求解
  • 直到整数最优解出现在新的改进之后的松弛问题的一个顶点
    \qquad 分枝定界法的算法流程如下所示:
    在这里插入图片描述
    \qquad 在分枝树中出现以下三种情况下无需继续向下分枝:
    \qquad ① 分枝结点不可行
    \qquad ② 分枝结点最优解是整数解
    \qquad ③ 分枝结点求解得到的松弛解比当期最优解更差

2.1、分枝策略

\qquad 强分枝策略
\qquad 对于每一个取值为分数的变量 x x x,均计算其 P b e l o w P_{below} Pbelow P a b o v e P_{above} Pabove 的最优目标值,选择对目标函数提升最多的一个变量优先进行分枝
\qquad 伪费用分枝(pseudo-cost)策略
\qquad 估算每一个变量的分枝获益(潜在可能的目标值提升)
\qquad 选择估计值中最好的一个进行优先分枝

THE END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dragon Fly

多谢老板赏钱[抱拳抱拳抱拳]

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值