线性规划模型的标准形式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三部分运筹学
第四章运筹学建模
4.1 运筹学概述
运筹学是用数学方法研究各种系统最优化问题的学科。
其研究方法是应用数学语言来描述实际系统,建立相应的数学模型,并对模型进行研究和分析,据此求得模型的最优解;其目的是制定合理运用人力、物力和财力的最优方案;为决策者提供科学决策的依据;其研究对象是各种社会系统,可以是对新的系统进行优化设计,也可以是研究已有系统的最佳运营问题。
因此,运筹学既是应用数学,也是管理科学,同时也是系统工程的基础之一。
运筹学一词最早出现于第二次世界大战期间,当时为了急待解决作战中所遇到的许多错综复杂的战略战术问题,英美一些具有不同学科和背景的科学家,组成了许多研究小组,专门从事军事行动的优化研究。
研究的典型课题有:高射炮阵地火力的最佳配置、护航舰队规模的大小以及开展反潜艇作战的侦察等方面。
由于受到战时压力的推动,加上不同学科互相渗透而产生的协同作用,在上述几个方面的研究都卓有成效,为第二次世界大战盟军的胜利起到积极作用,也为运筹学各个分支的进一步研究打下了基础。
战后,这些科学家们转向研究在民用部门应用类似方法的可能性。
因而,促进了在民用部门中应用运筹学有关方法的研究和实践。
1947年,美国数学家G.B.Dantzig提出了求解线性规划的有效方法——单纯形法。
50年代初,应用电子计算机求解线性规划问题获得了成功。
50年代末,工业先进国家的一些大型企业也陆续应用了运筹学的方法以解决企业在生产经营活动中所出现的许多问题,取得了良好效果。
60年代中期,一些银行、医院、图书馆等都已陆续认识到运筹学对帮助改进服务功能、提高服务效率所起的作用,由此带来了运筹学在服务性行业和公用事业中的广泛应用。
电子计算机技术的迅速发展,为广泛应用运筹学方法提供了有力工具,运筹学的应用又开创了新的局面。
当前,运筹学在经济管理、生产管理、工程建设、军事作战、科学试验以及社会系统等各个领域中都得到了极为广泛的应用。
一些发达国家的企业、政府、军事等部门都拥有相当规模的运筹学研究组织,专门从事运筹学的应用研究,并为上层决策部门提供科学决策所需的信息和依据。
随着运筹学技术的推广应用,各国都先后成立了运筹学研究的专业学术机构。
早在1948年,英国成立了运筹学俱乐部,并出版运筹学的专门学术刊物。
1957年,在英国牛津大学召开了第一届国际运筹学会议。
1959年,成立了国际运筹学联合会。
我国于1956年成立了第一个运筹学小组,1980年成立了全国运筹学会,这对促进我国运筹学的应用和发展起了积极作用,特别是著名数学家华罗庚教授早在50年代中期就在一些企业和事业单位积极推广和普及优选法、统筹法等运筹学方法,取得了显著成效。
今天,我国有关高等院校不仅设置了运筹学专业,而且在管理类、财经类等的有关专业普遍开设了运筹学的必修课程。
许多专业的硕土生,也设置了运筹学作为学位课程。
运筹学的实质在于模型的建立和使用。
应用运筹学处理问题时,首先要求从系统观点来分析问题,即不仅要求提出需要解决的问题和希望达到的目标,而且还要弄清问题所处的环境和约束条件,包括:时间、地点、资金、原材料、设备、人力、能源、动力、信息、技术等的环境和约束条件,以及要处理问题中的主要因素、各种环境和约束条件之间的逻辑关系。
运筹学是一门多分支的应用学科,随着新的系统问题的不断出现,运筹学的有关分支也在不断的发展,内容在不断充实和扩大。
其主要分支有:
近年来,有关运筹学的应用和理论研究都得到迅速发展。
在理论研究方面,涌现出许多新的模型方法和算法。
随着运筹学在各种专业学科中的广泛应用,结合专业特点,产生和发展了许多新的专业分支。
研究的内容有:“军事运筹学”、“运筹学在卫生医疗系统中的应用”、“运筹学在交通运输中的应用”、“运筹学在旅游观光事业中的应用”、“运筹学在体育运动中的应用”以及“能源运筹学模型”、“教育运筹学模型”、“刑事司法运筹学模型”等。
而且,运筹学与相关学科的交叉渗透还将进一步得到发展。
另一方面,随着运筹学应用逐渐向复杂的社会大系统渗透.运筹学的研究内容已出现了定量分析和定性分析相结合的发展趋势。
同时,运筹学的发展与计算机技术的发展密切相关。
计算机的飞速发展将深刻地影响着运筹学将来的发展。
随着计算机技术的提高,许多目前还不能求解的运筹学问题在将来会被解决。
运筹学的应用也会被推向越来越广的领域。
运筹学涉及到的理论和方法非常广泛,有些分支已发展完善为一门独立学科,限于篇幅,本书中只就线性规划、非线性规划的部分内容进行讨论,其他内容请读者参阅有关资料书籍。
4.2 线性规划模型的标准形
线性规划是求一个 函数()n x x x f ,,21(称为目标函数)在规定条件()A x x x n ∈ ,,21(称为约束条件)下的极大值或极小值问题。
4.2.1线性规划模型的可行解和最优解
定义5.1 设线性规划模型的一般式为:
n n x c x c x c Z +++= 2211max(min) (5.1)
约束条件(s.t.)()()()()⎪⎪⎪⎩
⎪
⎪⎪⎨⎧=≥≥=≤+++≥=≤+++≥=≤+++n j x b
x a x a x a b x a x a x a b x a x a x a j m
n mn m m n n n n ,2,1,0,,,221
12222212111212111 (5.2)
满足约束条件(5.2)的一组数()n x x x ,,21,称为该线性规划模型的可行解。
满足目标函数,即使得目标函数达到最大值或最小值的可行解,称为该线性规划模型的
最优解。
把最优解代入目标函数所得到的目标函数的最大值或最小值称为最优值。
定义5.2 某个线性规划模型的全体可行解组成的集合,称为该线性规划模型的可行解域。
4.2.2线性规划模型的标准型
为讨论方便,我们规定线性规划模型的标准型,而其它非标准型总可以通过一些方法化为标准型。
线性规划模型的标准型为:
目标函数n n x c x c x c Z +++= 2211max (5.3)
约束条件(s.t.)()⎪⎪⎪⎩
⎪
⎪⎪⎨⎧=≥=+++=+++=+++n j x b
x a x a x a b x a x a x a b x a x a x a j m
n mn m m n n n n ,2,1,0221
12222212111212111 (5.4)
注意,在线性规划模型的标准型中,约束条件是一组线性等式,也称为约束方程组,利用向
量或矩阵符号,线性规划模型的标准型还可以记为:
目标函数 CX Z =max
约束条件(s.t.)⎩⎨
⎧≥=0
X B
AX
其中()n c c c C ,,21=,⎪⎪
⎪⎪
⎪
⎭
⎫
⎝⎛=mn m m n n a a a a a a a a a A 2
1
22221
11211
, ⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=m b b b B 21,⎪⎪⎪⎪
⎪⎭
⎫ ⎝⎛=n x x x X 21,0≥X 是指X 的各分量0,,21≥n x x x 。
标准型具有以下特点: (1) 目标函数是求最大值;
(2) 约束条件为线性方程组;
(3) 未知变量n x x x ,,21都有非负限制。
线性规划模型的非标准型,可以通过以下三种方法化为标准型: (一) 目标函数是求最小值Z min
设n n x c x c x c Z +++= 2211min ,可设Z Z -=',则求最小值问题转化为求最大值问题,即将求Z min 转化为求Z 'max ,且n n x c x c x c Z ----=' 2211max 。
(二) 约束条件为不等式
如果约束条件为不等式,则可增加一个或减去一个非负变量,使约束条件变为等式,增加或减去的 这个非负变量称为松弛变量。
例如:
i n in i i b x a x a x a ≤+++ 2211
加一个非负变量1+n x ,使不等式变为等式:
i n n in i i b x x a x a x a =+++++12211
如果约束为:
i n in i i b x a x a x a ≥+++ 2211
则减去一个非负变量1+n x ,使不等式变为等式:
i n n in i i b x x a x a x a =-++++12211
(三) 模型中的某些变量没有非负限制
若某个变量j x 取值可正可负,这时可设两个非负变量j x '和j x '',令j j j x x x ''-'=,这样就可以满足标准型的要求。
4.3 线性规划模型的建立
模型是线性规划解决问题的工具,线性规划方法通过对实际问题进行分析,建立其相应的线性规划模型,然后进行求解和分析,为决策提供依据。
所建立的模型是否能够恰当的反映实际问题中的主要矛盾,直接影响到所求得的解是否有意义,从而影响着决策的质量。
因此,建模是应用线性规划方法的第一步,也是最为重要的一步。
建立线性规划模型有三个基本步骤:
第一步,找出问题中的所有相关的未知变量(决策变量),并用代数符号表示它们,根据变量的物理性质研究变量是否有非负性;
第二步,找出问题中的目标,写成变量的线性函数,作为线性规划模型的目标函数; 第三步,找出问题中所有的限制或约束,写成变量的线性方程或线性不等式,作为线性规划模型的约束条件。
4.3.1生产计划问题
生产计划问题是企业生产过程中时时遇到的问题,其最简单的一般形式可以描述如下: 用若干种原材料(设备)生产某几种产品,原材料(或设备)供应有一定的限制,要求制定一个产品生产计划,使其在给定资源限制条件下能得到最大收益。
[例题5.1] 根据以下现实情况建立线性规划模型
某厂计划内将安排生产I,II 两种产品,已知生产单位重量的产品所需的设备为A 及B 、
表5.1 生产设备和原料消耗表
生产单位重量的产品I 可获利2万,生产单位重量的产品II 可获利5万。
问:如何安排生产可使工厂获得的利润最多? 解:
模型建立:
第一步,确定决策变量:要求的未知变量是I,II 两种产品的产量,用1x ,2x 分别表示它们;
第二步,确定目标函数:本问题的目标是使工厂获得的利润1225Z x x =+最大; 第三步,确定约束条件:在这个问题中,约束条件是设备及材料的限制,
设备A :1228x x +≤ 材料A :1624x ≤ 材料B :2515x ≤
则这一问题的线性规划模型为:
12max 25Z x x =+
s.t. ⎪⎪⎩⎪⎪⎨⎧≥≤≤≤+0
,15524682212121x x x x x x
4.3.2合理下料问题
下料问题是加工业中常见的一种问题,其一般的提法是把一种尺寸规格已知的原料,切割成给定尺寸的几种零件毛坯,问题是在零件毛坯数量要求给定的条件下,如何割才能使废料最少?下料问题由所考虑的尺寸的维数可以分成三维(积材)下料,二维(面料)下料和一维(棒料)下料问题,其中最简单的是棒料下料问题,现举一例来讨论如何用线性规划方法解决
下料问题。
[例题5.2] 某厂生产过程中需要用长度分别为3.1米、2.5米和1.7米的同种棒料毛坯分别为200、100和300根,而现在只有一种长度为9米的原料,问应如何下料才能使废料最少?
解 解决下料问题的关键在于找出所有可能的下料方法(如果不能穷尽所有的方法,也应尽量多收集各种可能的下料方法),然后对这些方案进行最佳结合。
对给定的9米长的棒料进行分割,可以有9种切割方法,见表5.2所示。
表5.2 毛坯切割方案表
设用第i 种方法下料的总根数为i x ,则用掉的总根数为129x x x +++ 废料总长度为:
123567890.3 1.10.90.8 1.50.6 1.40.5x x x x x x x x +++++++
约束条件为所需的零件毛坯数量:
1234522200x x x x x ++++= 134678232100x x x x x x +++++= 24578923235300x x x x x x +++++=
由此可得该问题的线性规划模型如下:
12356789min 0.3 1.10.90.8 1.50.6 1.40.5Z x x x x x x x x =+++++++
12345
134678
2457891292220023210023235300,,,0
x x x x x x x x x x x x x x x x x x x x ++++=⎧⎪+++++=⎪⎨
+++++=⎪⎪≥⎩ 由于用掉的总料长度为200 3.1100 2.5300 1.71380⨯+⨯+⨯=,则有废料长度=9⨯用
料根数-1380。
4.3.3合理配料问题
这类问题的一般提法是:由多种原料制成含有M 种成份的产品,已知产品中所含各种成份的比例要求及各种原料的单价,并且知道各种原料所含成份的数量,问应如何配料,才能使产品的成本最低。
[例题5.3] 根据对77种食物所含的九种营养物:热量(糖与脂肪)、蛋白质、钙、铁、维生素A 、维生素BI 、维生素B2、草酸与维生素C 的成份及食物的市场价格调查,按照医生所提出的对每个人每天所需的营养要求,可得表
5.3
表5.3 食物营养成分表
问怎样采购食物才能在保证营养要求的前提下花费最省?这就是营养问题或饮食问题,配料问题就是由此而推广来的。
设每天购买甲,乙,丙,丁四种食物的数量分别为1234,,,x x x x ,即可列出如下的线性规划模型:
1234min 0.80.50.9 1.5Z x x x x =+++(总花费最省)
123412341241234100015001750325040000.60.270.680.31..17.57.53030,,,0
x x x x x x x x s t x x x x x x x +++≥⎧⎪+++≥⎪⎨++≥⎪⎪≥⎩
4.4 线性规划模型的图解法
图解法是求解两个变量线性规划问题的一种简单直观的方法。
两个变量线性规划模型的一般形式为:
2211max(min)x c x c Z += (5.5)
s.t. ()()⎪⎩
⎪
⎨⎧≥≥=≤+≥=≤+0,,,2122221211212111x x b x a x a b x a x a (5.6)
该线性规划模型的可行解域是所有满足约束条件的数组()21,x x 。
约束条件是一组线性等式或不等式。
在几何上,两个变量的线性等式是平面上的直线。
线性不等式()b x a x a ≥≤+2211是半平面。
可行解域就是由直线或半平面相交而成的平面区
域,而每个可行解即为该平面区域上的一个点。
[例题5.4] 求以下线性规划问题的最优解:
(1) 2134max x x Z +=
s.t. ⎪⎩⎪
⎨⎧≥≤+≤+0,51052
12121x x x x x x
(2) 2142min x x Z +=
s.t. ⎪⎪⎩⎪⎪⎨⎧≥≥+≥+≥+0
,1831214221212121x x x x x x x x
解:
(1)第一步,求可行解域:
可行解域是所有满足约束条件的数组()21,x x ,四个不等式是四个半平面,而可行解域就是这四个半平面的公共部分。
其形状为一个凸多边形区域,可行解()21,x x 是凸多边形内的一个点,如图5.1。
5
5
10
15
O C
A
B
可
行
解
域
x 2
x 1
图5.1 例题5.4(1)的可行解域
第二步,求最优解:
在几何上,目标函数2134x x Z +=代表平面上的一个平行直线族,族中一条直线对应一个Z 值。
凡落在同一条直线上的点()21,x x ,如果又落在可行解域上,那么这样的点就是具有相同的目标函数值的可行解,所以平行直线族中的每一条直线又称为等值线。
我们画出
几条等值线,使每条等值线都和可行解域(凸多边形)有焦点,并且使等值线所对应的Z 值递增。
图5.2 例题5.4(1)的最优解
由观察可知,等值线离原点越远,Z 值越大,而通过B 点的等值线就是使目标函数值达到最大的等值线,这条等值线和凸多边形只相交于B 点,因此B 点为最优解。
由
⎩⎨
⎧=+=+510521
21x x x x 解出B 点坐标为⎪⎭⎫ ⎝⎛415,45,则该问题的最优解就是⎪⎭⎫
⎝⎛415,45,最优值为465。
(2)线性规划的可行解域一般为凸多边形,而有时则是无界的凸多边形,如本题图5.3所示。
图5.3 例题5.4(2)的可行解域
若线性规划存在唯一最优解,则一定是可行解域的某个顶点。
若两个顶点都是最优解,则这两个顶点连线上的任一点都是最优解,若可行解区域无界,则可能不存在最优解。
4.5 线性规划模型的单纯形法
单纯形方法是1947年由G .B.Dantzig 提出的一种最有效的求解线性规划问题的方法。
4.5.1用换元迭代法解线性规划问题
[例题5.5] 求解线性规划模型
12max 25Z x x =+
s.t. 12121228624515,0
x x x x x x +≤⎧⎪≤⎪⎨≤⎪⎪≥⎩
解:对上述线性规划模型进行标准化,得:
12max 25Z x x =+
s.t. 123
14251234528624515,,,,0x x x x x x x x x x x x ++=⎧⎪+=⎪⎨+=⎪⎪≥⎩
约束方程的系数矩阵
()⎪⎪⎪
⎭
⎫
⎝⎛==100500100600121,,,,54321p p p p p A
3x ,4x ,5x 的系数构成的列向量为:
⎪⎪⎪⎭⎫ ⎝⎛=0013p ,⎪⎪⎪⎭⎫ ⎝⎛=0104p ,⎪⎪⎪⎭
⎫ ⎝⎛=1005p 可构成一组基,记做()⎪⎪⎪⎭⎫
⎝⎛==100010001,,543p p p B ,
B 对应的变量称为基变量。
由约束方程得:
⎪⎩⎪
⎨⎧-=-=--=25
1421351562428x
x x x x x x 代入目标函数12345max 25000Z x x x x x =++⋅+⋅+⋅,得
12max 25Z x x =+
若全部非基变量021==x x ,则得0min =Z ,而可行解为()
()00,0,8,24,15T
x
=,其
实际意义为:工厂没有安排两种产品的生产,资源没有被利用,也没获得利润。
由于非基变量1x ,2x 的系数都是正数,如果将非基变量换作基变量,即让1x 或2x 的取值上升,因为12,0x x ≥,所以如果不同时取0,肯定目标函数值上升,而不同时取为非基变量,即能不同时取为0,从经济意义上讲,若安排生产甲产品或乙产品,就可使企业的利润指标增加,所以只要目标函数的表达式中还有正系数的非基变量,就表示目标函数值还有增大的可能。
一般情况下,在换基时应选择正系数最大的那个非基变量(本例中的2x )为换入变量(或称进基变量),而从基变量3x ,4x ,5x 中换出一个能保证其余变量都非负,即345,,0x x x ≥的变量,即若选中5x ,即表明5x 在三个变量中随着2x 的减小是最先达到0的。
本例中,当10x =时,应当考虑由约束条件所得的条件
3245
2820
24
01550
x x x x x =-≥⎧⎪
=≥⎨⎪=-≥⎩ 中,可知当23x =时,50x =,而34,0x x >,所以用2x 去代替5x 。
其经济意义是:指出每生产一件产品II 时需消耗掉(2,0,5)的各种资源,并就资源
中的薄弱环节确定了生产产品II 的数量,即由资源C 确定了生产产品II 的数量是15/5=3。
为了求出3x ,4x ,2x 为基变量的一个可行解及进一步分析问题,将约束条件中的5x 用
2x 对换得到
3
124125
225
246135x x x x x x x ⎧
=--⎪⎪
=-⎨⎪⎪=-⎩
将其代入目标函数,得
15max 152Z x x =+-
令非基变量150x x ==,得max 15Z =,即得另一基的可行解
()()1
0,3,2,24,0T
x =
从上面的目标函数可以看出,非基变量1x 的系数为正,表明换基仍有增大目标函数值的可能,()
1x 不一定是最优解。
继续换基的过程,选择1x 为换入变量,从上面的约束条件中得出当50x =时,12x =可使30x =,即用3x 去代1x ,得
1
3243225225
2246251
35x x x x x x x x ⎧
=--⎪⎪
⎪⎛
⎫=---⎨ ⎪⎝⎭⎪
⎪=-⎪⎩
3553521max 152219255Z x x x x x ⎛
⎫=+-+-=-- ⎪⎝
⎭
令非基变量350x x ==,得max 19Z =,即得可行解为
()()2
2,3,0,12,0T
x =
此时目标函数为351
max 1925
Z x x =--,其中非基变量的系数均非正,变化后不可能再增大Z 的值,因此()
()22,3,0,12,0T
x
=就是最优解,max 19Z =。
其经济意义为生产I
产品2件,II 产品3件,可获最大利润19万元。
这种方法的过程的几何意义为:从凸多边形(或多面体)线性规划问题解的一个顶点(可行基)经换基迭代转变到另一顶点(可行基),最终达到最优顶点,这就是线性规划问题解的换元迭代法,它奠定了矩阵形式的单纯形方法的基础。
4.5.2单纯形方法的理论基础
设线性规划问题的矩阵形式为
max Z CX =
0AX b
X =⎧⎨≥⎩
其系数矩阵A 的秩为m ,设A 中任意一个m m ⨯非奇异子矩阵B 是此线性规划问题的一个基,N 是非基,则A=(B,N),写成向量形式得()12,,,m B p p p = ,()12,,,m m n N p p p ++= ,相应地把X 记做()121,,,,,,T
m m n X x x x x x += ,X 中基()12,,,m B p p p = 对应的变量为B X ,记()12,,,T
B m X x x x = ,非基变量()12,,,m m n N p p p ++= 对应的变量N X ,记
()12,,,T
N m m n X x x x ++= ,于是B N X X X ⎛⎫= ⎪⎝⎭
,因而约束条件AX b =可写成
(),B N X B N b X ⎛⎫= ⎪⎝⎭
即 B N BX NX b += 上式两边同时左乘1
B -,得
11B N X B NX B b --+=
因此
11B N X B b B NX --=-
上式就是用非基变量12,,m m n x x x ++ 表示基变量12,,m x x x 的形式,相应地,也把目标函数中的C 写成(),B N C C C =,其中()12,,,B m C c c c = ,()12,,,N m m n C c c c ++= ,于是目标函数max Z CX =可写成()max ,B B N N X Z C C X ⎛⎫
= ⎪⎝⎭
,略去符号max ,并将B X 代入上式,得
()11B N N N Z C B b B NX C X --=-+
11B B N N N C B b C B NX C X --=-+ (5.7)
()11B B N N C B b C B N C X --=--
当0N X =时,1B X B b -=,称为对应于基B 的基础解,此时1B Z C B b -=就是基B 的目标函数值。
如果1
0B b -≥,即0B X ≥,称1B X B b -=,0N X =为基础可行解,B 为可行基。
如果一个可行基B 进一步满足10B N C B N C --≥,则对一切可行解,有
1B Z CX C B b -=≤。
即表明,对应于基B 的基础可行解,能使目标函数达到最大值,即最
优解。
但又因
()()11,,B B B N C B A C C B B N C C ---=-
()()()111,,0,B B B N B N C B B C B N C C C B N C ---=-=-
所以,10B N C B N C --≥与1
0B C B A C --≥等价。
因而可得以下法则:
对于基B ,若1
0B b -≥,且1
0B C B A C --≥,则对应于基B 的基础解是最优解,又叫
基础最优解,B 为最优基。
由(5.7)式得:
()11B N N B Z C B N C X C B b --+-=,
即
()110,B B Z C B A C X C B b --+-=
又由AX b =得,11
B AX B b --=,把上面两式写成矩阵形式,得
⎪⎪⎭
⎫
⎝⎛=⎪⎪⎭⎫ ⎝⎛⎪⎪⎭⎫ ⎝⎛-----b B b B C X Z A B 0C A B C I 11B 11B 令
()00
0102
010
11121112021222211
1
2n n B B m m m mn b b b b b b b b C B b C B A C T B b b b b B b
B A b b b b ----⎛⎫
⎪
⎪⎛⎫
- ⎪== ⎪ ⎪
⎝⎭ ⎪ ⎪⎝⎭
称T(B)为对应于基B 的单纯形表,()01,2,j
b j n = 称为检验数。
定理5.1 (最优解的判定) 若T(B)中所有检验数()00
1,2,j b j n ≥= ,则11B N X B b B NX --=-是最优解。
定理5.2 (无最优解的判定)
若T(B)中有某一个检验数0,0m s b +<,且在该列中的(),01,2,,i m s b i m +≤= ,则线性规划问题无最优解。
4.5.3 换基迭代求最优解的过程
从一个可行基出发,经如下步骤,求得新基直到求出最优解或无解为止。
1. 算出T(B),确定T(B)中的轴心项
在所有00j b <的检验数中,选出最左边的一个设为0s b ,其对应的非基变量为s X ,向
量1
s s p B p -'=。
用s p '列中正的分量i s b 分别去除0i b ,取0min i i s b b ⎧⎫⎪⎪⎨⎬⎪⎪⎩⎭
(若同时有几个相同的最小者,则取其对应的基变量下标最小者),设为
0r r s
b b ,则r s b 称为轴心项,并将r s b 右上角加*号。
2. 在基B 中调入s p ,换出r p ,得到新基()1211,,,,,,,r s r m B p p p p p p -+'=
3. 对基B 的单纯形表T(B)进行适当的变换,使向量s p '变为单位向量(分量r s b 取1,其它分量取0),得新基B '的单纯形表()T B '。
为了使1rs b =,只需将原表数用r s b 去除第r
行各数,得新表第r 行各数,即rj rj
rs
b b b '= ()0j n ≤≤,为使新表中0is b =()0i r m ≤≠≤,
需将原表中第i 行减去第r 行相应数的
is
rs
b b 倍,得新表第i 行的数,即 is
ij
ij rj rs
b b b b b '=-⋅()0,0i j m j n ≤≠≤≤≤ 换基后,新基B '仍是一个可行基,且目标函数值增加。
如此循环,得最优解。
4.如果基B 对应的单纯形表T(B)中检验数有负数00s b <,且对应的列向量
1210s s s
s m s b b p B p b -⎛⎫
⎪ ⎪'==≤ ⎪ ⎪ ⎪⎝⎭
,那么,目标函数无上界,即无最优解。
4.5.4用单纯形法解线性规划问题
[例题5.6] 123max 2Z x x x =-+
123123123123360210..20,,0
x x x x x x s t x x x x x x ++≤⎧⎪-+≤⎪⎨+-≤⎪⎪≥⎩ 解:引进松弛变量,化为标准形:
123max 2Z x x x =-+
1234
12351236126360210..20,,,0x x x x x x x x s t x x x x x x x +++=⎧⎪-++=⎪⎨+-+=⎪⎪≥⎩
此时,p 变量126,,x x x 对应的列向量为
1311p ⎛⎫ ⎪= ⎪ ⎪⎝⎭,2111p ⎛⎫ ⎪=- ⎪ ⎪⎝⎭,3121p ⎛⎫ ⎪= ⎪ ⎪-⎝⎭,4100p ⎛⎫ ⎪= ⎪ ⎪⎝⎭,⎪⎪⎪⎭⎫ ⎝⎛=0105p ,6001p ⎛⎫ ⎪
= ⎪ ⎪
⎝⎭
显然,()14561,,11B p p p ⎛⎫
⎪
== ⎪ ⎪⎝⎭
是一可行基。
(1) 作对应于基1B 的单纯形表1
(2) 判别:
因为表中的检验数有负数,即012b =-,031b =-,基1B 不满足最优解条件,又01b ,
03b 对应的列向量中的分量有非负数,所以需换基迭代。
(3) 求轴心项
在两个非负检验数中,取最左边的012b =-,属1x 所在列,对应1x 的列向量为1
p ',1
311p ⎛⎫
⎪'= ⎪ ⎪⎝⎭
,1p '中有三个正分量113b =,121=b ,311b =,因为102030112131601020min ,,min ,,10311b b b b b b ⎛⎫⎛⎫
== ⎪ ⎪⎝⎭⎝⎭
,所以21b 为轴心项,在表1 中把1加上
“*”号,即1*。
(4)在基1B 中调入1p ,换出5p ,得新基⎪⎪⎪
⎭
⎫
⎝⎛==110010031),,(6142p p p B 。
(5)作对应于基2B 的单纯形表()2T B :
(i )在原表中用数1*去除第二行各数,得新表第二行各数;
(ii )原表中第零行各数减去第二行相应数
01
21
b b 倍,得新表第零行的数, 原表中第一行各数减去第二行相应数
11
21
b b 倍,得新表第一行的数, 原表中第零行各数减去第二行相应数
31
21
b b 倍,得新表第三行的数, 对新基2B 的单纯形表()2T B 的计算,只需用矩阵的初等变换将轴心项变为1,该列其余分量为零即可。
经过上述步骤的计算,可得对应于基()2416,,B p p p =的单纯形表2
由于表中的检验数仍有负数,应重复上述换基迭代过程,可得新基()3412,,B p p p =的单纯形表3
表中的检验数已没有负数,且所有()001,2,3i b i >=,最优解已求出:
12435615,5,10,0x x x x x x ======,123max 225Z x x x =-+=
[例题5.7] 12max 25Z x x =+
122121258..233,0
x x x s t x x x x -+≤⎧⎪≤⎪⎨-+≤⎪⎪≥⎩ 解:化为标准型:
12max 25Z x x =+ ⎪⎪⎩⎪⎪
⎨⎧=≥=++-=+=++-)5,,2,1(03328
5..52142
321 j x x x x x x x x x t s j
基为()345,,p p p ,()T B 如下表:
对应于基B 的基本可行解为()0,0,5,8,3T
x =,0Z =,但由于检验数0120b =-<,
0250b =-<,且()101,2,3i b i ≤=,据定理2知,此问题无最优解。
4.6 计算软件求解线性规划问题
4.6.1用LINDO 软件解线性规划
LINDO 是“Linear interactive and discrete optimizer ”的缩写,它是解决线性规划,整数规划等规划问题的有力工具,在大型计算机上,它可用于解决50000个约束条件,200000个变量的线性规划问题。
安装好LINDO 软件后,在桌面上双击LINDO 图标,得一个空白图框,然后在空白图框内输入求解问题,如
123max 2x x x -+
123123123123360210.20
000
x x x x x x s t
x x x x x x ++<=-+<=+-<=>=>=>=
在下拉菜单中点击命令solve 或直接用快捷组合键Ctrl+s ,即可得解。
4.6.2用MATLAB 优化工具箱解线性规划
MATLAB 是Matrix Laboratory (矩阵实验室)的缩写。
它早期是线性代数课的教学软件,后来逐步应用于实际工程问题的计算,目前已成为工程界和应用数学人员常用的数学软件之一。
MATLAB 是一种交互式的高级计算机软件,有如下特点:
(1) 它以矩阵运算为基本运算,用命令式语句运行,附有数值计算,最优化,信
号处理,系统识别,控制系统等几十个工具箱(Toolbox );
(2) MATLAB 使用十分方便,几乎是直接把算式键入计算机,立刻得出计算结果,
因此有“电子草稿纸”的美誉;
(3) 具有很强的图形表现能力。
Matlab 软件求解线性规划的命令如下:
(),,X LP c A b =
用于求解模型: min ..z cX
s t AX b
=≤
仍以上例为例,解法如下:
[]211c =-;
[311;112;111];A =--
[]60;10;20b =; (),,X LP c A b =
Z c X =*
结果:
x=
15.0000 5.0000 10.0000 Z=
25.0000。