《单纯形法PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《单纯形法PPT讲稿.ppt(72页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单纯形法1第1页,共72页,编辑于2022年,星期五一、基础定理一、基础定理定理定理1 若线性规划问题存在最优解,则问题的可行域是凸集。若线性规划问题存在最优解,则问题的可行域是凸集。定理定理2 线性规划问题的基本可行解对应线性规划问题可行域线性规划问题的基本可行解对应线性规划问题可行域(凸集)的顶点。(凸集)的顶点。定理定理3 若线性规划问题最优解存在,则最优解一定在可行域顶若线性规划问题最优解存在,则最优解一定在可行域顶点处取得。点处取得。由此可看出,最优解要在基本可行解(可行域顶点)中找。由此可看出,最优解要在基本可行解(可行域顶点)中找。2第2页,共72页,编辑于2022年,星期五v
2、若若LP问题有最优解的话,定在可行域的问题有最优解的话,定在可行域的某顶点处达到,又,一个顶点对应一个基本某顶点处达到,又,一个顶点对应一个基本可行解,一个自然的想法是:找出所有的基可行解,一个自然的想法是:找出所有的基本可行解。本可行解。v因基本可行解的个数有限,通过因基本可行解的个数有限,通过“枚举法枚举法”,从理论上讲总能找出所有的基本可行解。,从理论上讲总能找出所有的基本可行解。而事实上随着而事实上随着m,n的增大,解的个数迅速增的增大,解的个数迅速增大,致使此路行不通。大,致使此路行不通。3第3页,共72页,编辑于2022年,星期五v换一种思路:若从某一基本可行解(今后称换一种思路:
3、若从某一基本可行解(今后称之为初始基本可行解)出发,每次总是寻找之为初始基本可行解)出发,每次总是寻找比上一个更比上一个更“好好”的基本可行解,逐步改善,的基本可行解,逐步改善,直至最优。这需要解决以下三个问题:直至最优。这需要解决以下三个问题:v1.如何找到一个初始的基本可行解。如何找到一个初始的基本可行解。v2.如何判别当前的基本可行解是否已达到了如何判别当前的基本可行解是否已达到了最优解。最优解。v3.若当前解不是最优解,如何去寻找一个改若当前解不是最优解,如何去寻找一个改善了的基本可行解。善了的基本可行解。4第4页,共72页,编辑于2022年,星期五定义:如何从一个可行基找另一个可行基
4、?称定义:如何从一个可行基找另一个可行基?称基变换基变换。定义:两个基本可行解称为相邻的,如果它们之间仅变换定义:两个基本可行解称为相邻的,如果它们之间仅变换一个基变量。对应的基称为一个基变量。对应的基称为相邻可行基相邻可行基。例例 LP问题问题二、思路解析二、思路解析5第5页,共72页,编辑于2022年,星期五当前可行基当前可行基 所对应的基本可行解所对应的基本可行解显然不是最优。显然不是最优。因为从经济意义上讲,因为从经济意义上讲,意味着该厂不安排生产,因此没有利润。意味着该厂不安排生产,因此没有利润。相应地,将相应地,将 代入目标函数代入目标函数得得从数学角度看,若让非基变量从数学角度看
5、,若让非基变量 取值从零取值从零增加,增加,(对应可行域的对应可行域的 )6第6页,共72页,编辑于2022年,星期五相应的目标函数值相应的目标函数值Z也将随之减少。因此有可能找到一个也将随之减少。因此有可能找到一个新的基本可行解,使其目标函数值有所改善。即进行基变新的基本可行解,使其目标函数值有所改善。即进行基变换,换一个与它相邻的基。再注意到换,换一个与它相邻的基。再注意到 前的系数前的系数2比比 前的系数前的系数1小,即小,即 每增加一个单位对每增加一个单位对Z的贡献比的贡献比 大。大。故应让故应让 从非基变量转为基变量,称为从非基变量转为基变量,称为进基进基。又因为。又因为基基变量只能
6、有三个,因此必须从原有的基变量变量只能有三个,因此必须从原有的基变量中选一个离开基转为非基变量,称为中选一个离开基转为非基变量,称为出基出基。谁出基?。谁出基?7第7页,共72页,编辑于2022年,星期五又因为又因为 仍留作非基变量,故仍仍留作非基变量,故仍有有(2)式变为)式变为再让再让 从零增加,能取得的最大值为从零增加,能取得的最大值为此时,此时,已经从已经从24降到了降到了0,达到了非基的取值,变,达到了非基的取值,变成非基变量。从而得到新的可行基成非基变量。从而得到新的可行基 。由此得到一个新的基本可行解:由此得到一个新的基本可行解:8第8页,共72页,编辑于2022年,星期五目标函
7、数值:目标函数值:从目标函数值明显看出,从目标函数值明显看出,比比 明显地得到了改善。明显地得到了改善。此基本可行解对应可行域的此基本可行解对应可行域的将(将(2)式)式(2)可行基可行基留在左边,非基变量留在左边,非基变量移到右边移到右边9第9页,共72页,编辑于2022年,星期五(3)用代入法得:用代入法得:(4)10第10页,共72页,编辑于2022年,星期五代入目标函数得:代入目标函数得:这一过程用增广矩阵的行初等变换表示为:这一过程用增广矩阵的行初等变换表示为:1/6(-1)(2)按最小非负比值规则:按最小非负比值规则:主元素主元素11第11页,共72页,编辑于2022年,星期五目标
8、函数系数行目标函数系数行按最小非负比值规则:按最小非负比值规则:12第12页,共72页,编辑于2022年,星期五3/2(-5)(-1/3)(1/3)13第13页,共72页,编辑于2022年,星期五所对应的所对应的 LP问题问题14第14页,共72页,编辑于2022年,星期五可行基可行基令非基变量令非基变量 为为0,得到,得到最优解最优解最优值:最优值:15第15页,共72页,编辑于2022年,星期五总结:总结:在迭代过程中要保持常数列向量非负,这能保证基在迭代过程中要保持常数列向量非负,这能保证基可行解的非负性。最小比值能做到这一点。可行解的非负性。最小比值能做到这一点。主元素不能为主元素不能
9、为0 0。因为行的初等变换不能把。因为行的初等变换不能把0 0变成变成1 1。主元素不能为负数。因为用行的初等变换把负数变成主元素不能为负数。因为用行的初等变换把负数变成1 1会会把常数列中对应的常数变成负数。把常数列中对应的常数变成负数。此基本可行解对应可行域的此基本可行解对应可行域的其结果与图解法一致。其结果与图解法一致。16第16页,共72页,编辑于2022年,星期五例例2 解解LP问题:问题:对单纯形矩阵作初等行变换,有:对单纯形矩阵作初等行变换,有:按最小非负比值原则:按最小非负比值原则:确定主元素。确定主元素。(-1)(1)1、无穷多个解、无穷多个解三、其他解的情况三、其他解的情况
10、17第17页,共72页,编辑于2022年,星期五至此,检验行已没有负数,至此,检验行已没有负数,当前解即为最优解。当前解即为最优解。此时对应的此时对应的LP问题为:问题为:018第18页,共72页,编辑于2022年,星期五此时对应的此时对应的LP问题为:问题为:019第19页,共72页,编辑于2022年,星期五此时对应的此时对应的LP问题为:问题为:0120第20页,共72页,编辑于2022年,星期五当当时,不管时,不管 取何值,均有目标函数取何值,均有目标函数取得最大值取得最大值1。此时约束方程为:。此时约束方程为:其中其中 为基变量。为基变量。用非基变量表示出基变量:用非基变量表示出基变量
11、:其中,其中,为自由变量。设为为自由变量。设为 有有:其中其中c是满足非负性的任意常数。是满足非负性的任意常数。21第21页,共72页,编辑于2022年,星期五再由再由的非负性,知:的非负性,知:解出解出(其中(其中 )最优解为:最优解为:最优值为:最优值为:22第22页,共72页,编辑于2022年,星期五2、无最优解的两种情况:、无最优解的两种情况:无界解无界解例例3 解解LP问题:问题:解:解:对单纯形矩阵作初等行变换,有:对单纯形矩阵作初等行变换,有:23第23页,共72页,编辑于2022年,星期五1/2(2)注意到注意到6所在的列无正元所在的列无正元素,将基变量素,将基变量 及目及目标
12、函数用非基变量标函数用非基变量 表表示为示为24第24页,共72页,编辑于2022年,星期五从目标函数看,若令非基变量从目标函数看,若令非基变量无限增大,无限增大,Z也无限也无限性,即该性,即该LP问题所追求的目标函数是无界的,即无最小问题所追求的目标函数是无界的,即无最小值,于是该值,于是该LP问题无最优解。问题无最优解。减小,且没有影响减小,且没有影响 的非的非负负25第25页,共72页,编辑于2022年,星期五 无可行解无可行解例例4 4 求解求解LPLP问题问题解:可行域为空集,无可行解。解:可行域为空集,无可行解。26第26页,共72页,编辑于2022年,星期五下面先把此下面先把此L
13、P问题化为标准型,然后用单纯形法求解。问题化为标准型,然后用单纯形法求解。对单纯形矩阵作初等行变换,有:对单纯形矩阵作初等行变换,有:27第27页,共72页,编辑于2022年,星期五1/2从最后一个矩阵可看出,此从最后一个矩阵可看出,此LP问题无可行基,当然就无问题无可行基,当然就无可行解。可行解。(-1)(-1)(1)28第28页,共72页,编辑于2022年,星期五LP当前解已是最优的四大特征:当前解已是最优的四大特征:存在一组存在一组(初始初始)可行基(其系数矩阵为单位阵)。可行基(其系数矩阵为单位阵)。检验行的基变量系数检验行的基变量系数=0。检验行的非基变量系数检验行的非基变量系数 0
14、。全部全部0唯一解。唯一解。存在存在=0无穷多个解。无穷多个解。常数列向量常数列向量0。下面的问题是:所给下面的问题是:所给LPLP的标准型中约束矩阵中没有现成的的标准型中约束矩阵中没有现成的可行基怎么办?可行基怎么办?29第29页,共72页,编辑于2022年,星期五人工变量法(也称大人工变量法(也称大M M法)法)针对标准形约束条件的系数矩阵中不含单位矩阵的处理方针对标准形约束条件的系数矩阵中不含单位矩阵的处理方法。法。例例6 6 用单纯形法求解用单纯形法求解LPLP问题问题 单纯形的进一步讨论单纯形的进一步讨论30第30页,共72页,编辑于2022年,星期五解:先将其化为标准形式解:先将其
15、化为标准形式再强行加上再强行加上人工变量人工变量,使其出现单位矩阵:,使其出现单位矩阵:31第31页,共72页,编辑于2022年,星期五但这样处理后:但这样处理后:不易接受。因为不易接受。因为 是强行引进,称为是强行引进,称为 人工变量人工变量。它们与。它们与 不一样。不一样。称为松弛变称为松弛变量和剩量和剩余变量,是为了将不等式改写为等式而引进的,而改写前后余变量,是为了将不等式改写为等式而引进的,而改写前后两个约束是等价的。两个约束是等价的。人工变量的引入一般来说是前后不等人工变量的引入一般来说是前后不等价的。只有当最优解中,人工变量都取值零时(此时人工价的。只有当最优解中,人工变量都取值
16、零时(此时人工变量实质上就不存在了)才可认为它们是等价的。变量实质上就不存在了)才可认为它们是等价的。处理办法:把人工变量从基变量中赶出来使其变为非基变处理办法:把人工变量从基变量中赶出来使其变为非基变量。为此,发明者建议把目标函数作如下处理:量。为此,发明者建议把目标函数作如下处理:32第32页,共72页,编辑于2022年,星期五其中其中M为任意大的实数,为任意大的实数,“M”称为称为“罚因子罚因子”。用意:只要人。用意:只要人工变量取值大于零,目标函数就不可能实现最优。工变量取值大于零,目标函数就不可能实现最优。对此单纯形矩阵作初等行变换,有:对此单纯形矩阵作初等行变换,有:33第33页,
17、共72页,编辑于2022年,星期五MM(-1)(-3)(4M)1/634第34页,共72页,编辑于2022年,星期五3/2(-1/3)(3)35第35页,共72页,编辑于2022年,星期五至此,检验行已没有负数,当前解即为最优解。至此,检验行已没有负数,当前解即为最优解。最优值为最优值为:去掉人工变量去掉人工变量 ,即得原,即得原LP问题的最优解:问题的最优解:36第36页,共72页,编辑于2022年,星期五 最优解判别定理:所有检验数最优解判别定理:所有检验数0 0;人工变量为;人工变量为0 0 无穷多最优解判别定理:所有检验数无穷多最优解判别定理:所有检验数 0 0;人工变量为;人工变量为
18、0 0;存在某个非;存在某个非基变量的检验数为基变量的检验数为0 0 无可行解判别:无可行解判别:所有检验数所有检验数 0 0;人工变量;人工变量0 0(4)(4)无界解判别定理:有一个非基变量的检验数无界解判别定理:有一个非基变量的检验数0,0,但该数对应但该数对应的列中没有正元素;人工变量为的列中没有正元素;人工变量为0 0解的判别定理:解的判别定理:37第37页,共72页,编辑于2022年,星期五单纯形法步骤单纯形法步骤v一、构造初始可行基一、构造初始可行基v1、引入附加变量,化为标准型、引入附加变量,化为标准型v2、必要时引入人工变量、必要时引入人工变量v3、目标函数中,附加变量系数为
19、、目标函数中,附加变量系数为0,人工变量则为,人工变量则为Mv二、求基本可行解二、求基本可行解v1、用非基变量表示基变量和目标函数式、用非基变量表示基变量和目标函数式v2、求出一个基本可行解及相应、求出一个基本可行解及相应Z值值v三、最优性检验三、最优性检验v依据依据:检验数及判别定理检验数及判别定理v四、基变换四、基变换v1、换入基的确定:检验数负值中最小的、换入基的确定:检验数负值中最小的v2、换出基的确定:最小非负比值规则、换出基的确定:最小非负比值规则v返回步骤二返回步骤二38第38页,共72页,编辑于2022年,星期五2.2 单纯形法的表格形式单纯形法的表格形式书例书例2.1 P18
20、39第39页,共72页,编辑于2022年,星期五v作业vP79 1.3(2),1.7(1)40第40页,共72页,编辑于2022年,星期五大大M法目标是尽快把人工变量从基变量中全部法目标是尽快把人工变量从基变量中全部“赶赶”出去(如果能全出去(如果能全部部“赶赶”出去的话)。所用方法除了大出去的话)。所用方法除了大M法外,还有下面的两阶段法。法外,还有下面的两阶段法。两阶段法两阶段法用大用大M法处理人工变量时,若用计算机处理,必须对法处理人工变量时,若用计算机处理,必须对M给出给出一个较大的具体数据,并视具体情况对一个较大的具体数据,并视具体情况对M值作适当的调整。值作适当的调整。为了克服这一
21、麻烦,下面的两阶段法将问题拆成两个为了克服这一麻烦,下面的两阶段法将问题拆成两个LP问问题分两个阶段来计算:题分两个阶段来计算:2.3 大大M法和两阶段法法和两阶段法41第41页,共72页,编辑于2022年,星期五v两阶段法的第一阶段求解一个目标中只包含人工变量两阶段法的第一阶段求解一个目标中只包含人工变量的的LP问题,即令目标函数中其它变量的系数取零,人工问题,即令目标函数中其它变量的系数取零,人工变量的系数取某个正的常数(一般取变量的系数取某个正的常数(一般取1),在保持原问),在保持原问题约束不变的情况下求这个目标函数极小化的解。题约束不变的情况下求这个目标函数极小化的解。v显然在第一阶
22、段中,当人工变量取值为显然在第一阶段中,当人工变量取值为0时,目标函时,目标函数值也为数值也为0。这时候的最优解就是原问题的一个基可。这时候的最优解就是原问题的一个基可行解。如果第一阶段求解结果最优解的目标函数值不行解。如果第一阶段求解结果最优解的目标函数值不为为0,也即最优解的基变量中含有非零的人工变量,表,也即最优解的基变量中含有非零的人工变量,表明原明原LP问题无可行解。问题无可行解。42第42页,共72页,编辑于2022年,星期五v第二阶段:求解原线性规划问题的最优解。第二阶段:求解原线性规划问题的最优解。v以第一阶段的最终单纯形表为基础,去掉人以第一阶段的最终单纯形表为基础,去掉人工
23、变量,目标函数换为原问题的目标函数,工变量,目标函数换为原问题的目标函数,得到第二阶段的初始表,继续迭代求解。得到第二阶段的初始表,继续迭代求解。43第43页,共72页,编辑于2022年,星期五 若求得的单纯形矩阵中,所有人工变量都处在非基变量若求得的单纯形矩阵中,所有人工变量都处在非基变量的位置。即的位置。即 及及 。则从第。则从第1 1阶阶段去掉人工变量后,即为原问题的初始单纯形矩阵。并进入第段去掉人工变量后,即为原问题的初始单纯形矩阵。并进入第2 2阶阶段。段。第一阶段求解第一个线性规划:第一阶段求解第一个线性规划:44第44页,共72页,编辑于2022年,星期五 若第一阶段所求得的单纯
24、形中仍含有(解)非零的人工若第一阶段所求得的单纯形中仍含有(解)非零的人工变量,则说明原问题无可行解。不再进入第变量,则说明原问题无可行解。不再进入第2 2阶段。阶段。因此两阶段法的第因此两阶段法的第1阶段求解有两个目的:一为判断原问题阶段求解有两个目的:一为判断原问题有无可行解。二,若有,则得原问题的一个初始可行基,再有无可行解。二,若有,则得原问题的一个初始可行基,再对原问题进行第对原问题进行第2阶段的计算。阶段的计算。45第45页,共72页,编辑于2022年,星期五对单纯形矩阵作初等行变换,有:对单纯形矩阵作初等行变换,有:例:例:第第1阶段:阶段:46第46页,共72页,编辑于2022
25、年,星期五(-1)(-1)47第47页,共72页,编辑于2022年,星期五(-3)(4)1/6(-1)48第48页,共72页,编辑于2022年,星期五(-3)(6)2转入第2阶段:3-1(-3)49第49页,共72页,编辑于2022年,星期五3/2(-1/3)(3)50第50页,共72页,编辑于2022年,星期五书例:表格形式书例:表格形式大大M法法:P25 表表2.2.1 两阶段法两阶段法:P27 表表2.3.1;2.3.251第51页,共72页,编辑于2022年,星期五v作业vP80 1.8(1)52第52页,共72页,编辑于2022年,星期五2.4 退化问题退化问题v退化问题:按最小比值
26、退化问题:按最小比值来确定换出基变量时,有时出来确定换出基变量时,有时出现两个以上相同的最小比值,从而使下一个表的基可现两个以上相同的最小比值,从而使下一个表的基可行解中出现一个或多个基变量等于零的退化解。行解中出现一个或多个基变量等于零的退化解。v循环问题:退化解出现的原因是模型中存在多余的约束,使循环问题:退化解出现的原因是模型中存在多余的约束,使多个基可行解对应同一个顶点。当存在退化解时,就有可能多个基可行解对应同一个顶点。当存在退化解时,就有可能出现迭代计算的循环。即从一个可行基经有限次迭代后又回出现迭代计算的循环。即从一个可行基经有限次迭代后又回到原来的可行基。尽管可能性及其微小(直
27、到目前为止,还到原来的可行基。尽管可能性及其微小(直到目前为止,还没有见到一个实际应用问题产生循环的例子),但在理论上没有见到一个实际应用问题产生循环的例子),但在理论上讲是存在的。讲是存在的。53第53页,共72页,编辑于2022年,星期五vE.Beale曾给出一个循环的例子曾给出一个循环的例子v这个例子用单纯形法经过这个例子用单纯形法经过6次迭代后,又回到次迭代后,又回到了初始状态,得不到最优解。有兴趣的同学了初始状态,得不到最优解。有兴趣的同学可自行用单纯形法验证本题产生的循环现象。可自行用单纯形法验证本题产生的循环现象。而实际上本题有最优解。而实际上本题有最优解。v解决方法:摄动法;勃
28、兰特法。解决方法:摄动法;勃兰特法。54第54页,共72页,编辑于2022年,星期五2.5 改进单纯形法改进单纯形法v单纯形法计算的特点是每迭代一次,就要把整个单纯形表重单纯形法计算的特点是每迭代一次,就要把整个单纯形表重新计算一遍。从计算机的角度来讲,单纯形法并不是一种经新计算一遍。从计算机的角度来讲,单纯形法并不是一种经济高效的方法。首先是要占用大量的存贮空间,其次,由于济高效的方法。首先是要占用大量的存贮空间,其次,由于每次计算都利用上一次的单纯形表,当计算次数较多时,容每次计算都利用上一次的单纯形表,当计算次数较多时,容易造成误差的积累,直接影响计算精度和收敛速度。易造成误差的积累,直
29、接影响计算精度和收敛速度。v改进单纯形法的基本计算步骤和单纯形法基本相同,但改进单纯形法的基本计算步骤和单纯形法基本相同,但在上述两方面有所改进。在上述两方面有所改进。55第55页,共72页,编辑于2022年,星期五v在单纯形法的迭代过程中,我们实际需要的在单纯形法的迭代过程中,我们实际需要的只有以下各项:只有以下各项:v1、检验数、检验数 ,以判断是否最优或确定以判断是否最优或确定换入基变量。换入基变量。v2、换入变量所在列的各元素、换入变量所在列的各元素 和基变量的值和基变量的值 ,根据,根据 决定换出基变量。决定换出基变量。56第56页,共72页,编辑于2022年,星期五 Min z =
30、CX s.t.AX=b X 0单纯形法的矩阵形式单纯形法的矩阵形式57第57页,共72页,编辑于2022年,星期五58第58页,共72页,编辑于2022年,星期五59第59页,共72页,编辑于2022年,星期五v在单纯形法的矩阵形式中我们可以发现,单纯形表中的其它数字可利用在单纯形法的矩阵形式中我们可以发现,单纯形表中的其它数字可利用 和原始系数进行运算直接得到:和原始系数进行运算直接得到:v这就是改进单纯形法的出发点。这就是改进单纯形法的出发点。v令向量令向量Y表示表示 ,即,即 称其为称其为单纯形乘子单纯形乘子。60第60页,共72页,编辑于2022年,星期五求解步骤求解步骤v1、第、第0
31、次迭代:初始可行基次迭代:初始可行基 检验数检验数 如不是最优解,确定换入基,换出基。如不是最优解,确定换入基,换出基。2、计算、计算 :三种方法:三种方法 3、计算第、计算第i1次迭代的常数列和检验数次迭代的常数列和检验数 4、最优性检验:如最优,结束。否则下一步。、最优性检验:如最优,结束。否则下一步。5、计算第、计算第i1次迭代中的换入列次迭代中的换入列 6、确定第、确定第i1次迭代中换出基的下标,返回步次迭代中换出基的下标,返回步2。初等变换法初等变换法取主变换取主变换逆的乘积形式逆的乘积形式61第61页,共72页,编辑于2022年,星期五逆的乘积形式逆的乘积形式v 的计算方法的计算方
32、法v已知:已知:;第;第i次迭代中的换入列;主元素。次迭代中的换入列;主元素。v公式推导可得:公式推导可得:62第62页,共72页,编辑于2022年,星期五例:例:63第63页,共72页,编辑于2022年,星期五第第0次迭代:次迭代:换入换入p3,换出换出p4。基变量为基变量为x3,x564第64页,共72页,编辑于2022年,星期五第第1次迭代:次迭代:换入换入p3,换出换出p4。计算计算B1-1基变量为基变量为x3,x565第65页,共72页,编辑于2022年,星期五第第1次迭代:次迭代:计算当前解和检验数计算当前解和检验数换入换入p3,换出换出p4。基变量为基变量为x3,x566第66页
33、,共72页,编辑于2022年,星期五第第1次迭代:次迭代:换入换入p2,换出换出p5,换基换基换入换入p3,换出换出p4。基变量为基变量为x3,x5基变量为基变量为x3,x267第67页,共72页,编辑于2022年,星期五第第2次迭代:次迭代:换入换入p2,换出换出p5。计算计算B2-1基变量为基变量为x3,x268第68页,共72页,编辑于2022年,星期五第第2次迭代:次迭代:计算当前解和检验数计算当前解和检验数换入换入p2,换出换出p5。基变量为基变量为x3,x269第69页,共72页,编辑于2022年,星期五v作业v复习例题 P81 1.1170第70页,共72页,编辑于2022年,星期五(1)(2)71第71页,共72页,编辑于2022年,星期五72第72页,共72页,编辑于2022年,星期五