第四章整数规划与分配问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章 整数规划与分配问题
§4.1整数规划的特点及作用
用单纯形法求解线性规划的结果往往得到分数或小数解。但在很多实际问题中,全部或部分变量的取值必须是整数,如人或者机器设备不可分割。此外还有一些问题,如要不要在某地建设工厂,可选用一个逻辑变量x ,令1x =表示在该地建厂,0x =表示不在该地建厂,逻辑变量也只允许取整数值的一类变量。在一个整数规划中要求全部变量取整数值的,称纯整数线性规划或纯整数规划;只要求一部分变量取整数值的,称为混合整数(线性)规划;在纯整数规划问题中,若所有变量只允许取0,1两个值,则称其为0-1规划。
有人认为,对整数规划问题的求解可以先不考虑对变量的整数约束,作为一般线性规划问题来求解,当解为非整数时可用四舍五入或凑整数寻找最优解,其实这种方法是不可行的,原因有以下两点:
一、用凑整的方法计算量很大,而况还不一定能找到最优解。 如某线性规划问题的最优解为()()1
2 4.6 5.5x x =,用凑整数的方法时需比较与
12,x x 的上述数值最接近的四种组合:(4,5),(5,5),(4,6),(5,6)如果问题中有10个变量,就
要比较1021024=个整数解组合,而且最优解还不一定在这些组合中。
二、放松约束也无法求出其最优解
例
12
121212
max 322314
.0.5 4.5,0,z x x x x s t x x x x =++≤⎧⎪
+≤⎨⎪≥⎩整数
如果不考虑整数约束,称为上述线性规划问题的松弛问题,松弛问题的最优解为:
123.25, 2.5x x ==
取整以后123,2x x ==是可行解,但1212123,3;4,2;4,3x x x x x x ======都不是可行解,而123,2x x ==对应的目标函数值123213z x x =+=却不是最优解,然而最优解是
12124,1,max 3214x x z x x ===+=。
直接对松弛问题进行求解都无法求得整数规划问题的最优解,这就需要对整数线性规划问题有特殊的求解方法。
此外,整数线性规划问题的数学模型的研究有着重要的意义,很多管理问题无法归纳为线性规划问题的数学模型,但却可以设置逻辑变量建立起整数规划问题的数学模型。下面举例说明逻辑变量在解决问题中的重要作用。
1.m 个约束条件中只有k 个起作用 设m 个约束条件可以表示为
1
,(1,2,,)n
ij j
i j a x
b i m =≤=∑L
定义 1 1,2,,)0 i i y i m i ⎧==⎨⎩L 假设第个约束条件不起作用,(假设第个约束条件起作用
又M 为任意大的正数,则
11212
(1,2,,),,,01
n
ij j i i j m m a x b My i m y y y m k
y y y =⎧≤+=⎪⎪⎪
+++=-⎨⎪=⎪⎪⎩
∑L L L 或 因为若0i y =,则1n
ij j i j a x b =≤∑条件起作用
若1i y =,则1
n ij j i j a x b M =≤+∑,1
n
ij j i j a x b =≤∑条件不起作用
2.约束条件的右端项可能是r 个值12(,,,)r b b b L 中的某一个,即
121
n
ij j
r j a x
b b b =≤∑L 或或或
定义 1 0 i
i b y ⎧=⎨⎩假定约束条件右端项为否则
由此,上述约束条件可以表示成:
1122112121
,,,01
n
ij j r r j r r a x b y b y b y y y y y y y =⎧≤+++⎪⎪⎪
+++=⎨⎪⎪⎪=⎩∑L L L 或 3.两组条件中满足其中一组
若14x ≤,则21x ≥;否则(即14x >时),23x ≤
定义 1 1,2)0 i i y i i ⎧==⎨⎩第组条件不起作用
,(第组条件起作用
又M 为任意大的正数,则问题可表达为:
112
112
22121241431,0,1
x My x My
x My x My y y y y ≤+⎧⎪≥-⎪⎪>-⎪⎨
≤+⎪⎪+=⎪=⎪⎩ 4.用以表示含固定费用的函数
例如用j x 代表产品j 的生产数量,其生产费用函数通常可表示为:
(0)
()0 (0)j j j j j j j K c x x C x x +>⎧⎪=⎨=⎪⎩
式中j K 是同产量无关的生产准备费用。问题的目标是使所有产品的总生产费用为最小,即:
1min ()n
j j j z C x ==∑
令 1 0
0 0j j j x y x >⎧⎪=⎨=⎪⎩
,那么j j x My ≤
使问题化为:
1
min 0. (01)1,2,,)
n
j j j j
j j j j z c x K y x My s t M y j n ==+≤≤⎧⎪⎨==⎪⎩∑L 为充分大的正数)或
一般整数规划问题建模:
例1 某饭店24小时中需要服务员数量如下:如果每个服务员连续工作8小时,试问在2点、6点、10点、14点、18点、22点钟开始上班的服务员为多少时,一天所需服务员人数最少?