![Matlab在水资源优化与水库调度中的应用](https://wfqqreader-1252317822.image.myqcloud.com/cover/610/38401610/b_38401610.jpg)
第1章 分解筛选法求解线性规划的概念和方法及多重解求解
1.1 分解筛选法思路、要点及示例
1.1.1 分解筛选法及有关概念
线性规划法经过多年的发展完善,已趋成熟,其中单纯形法最为著名,但是单纯形法属于指数型算法,因此求解效率不高,并存在着死循环等问题,分解筛选法应运而生。分解筛选法可把一个n维的LP问题分解成n个一维的子LP问题,由此筛选出通过最优解角点的有效约束,并把它看作等价于一个等式约束,利用这一思路和特性,可大大简化整个求解步骤,解决了单纯形法存在的一些问题,有更好的应用前景。
1.1.2 解题步骤
在解题时,使用分解筛选法的思路为:①若线性规划问题非空且有界,则其最优解必在其约束凸集的边界或某一角点上;②最优解所在之角点或相切之边界,其对应的起控制作用的诸约束条件此时必然恰好满足,从而具有等式约束的特性,可用这样的等式通过消元法使问题连续降维;③当多次降维把一个n维的LP问题分解为n个一维子问题时,就可以使用约束超平面在各子问题坐标轴上的截点的概念,来求得这些子问题各自的独立“最优解”,称初优解Z初i,然后选出此n个初优解中最大者(对求最大问题而言)Z初max。可以证明,此最大初优解所对应的子问题和约束方程,就指出了系统最优角点所通过的那些约束之一。一旦找出了这种约束就可如②中所述使问题连续降维;可将步骤重复进行,直至问题降为一维方停止降维,或筛选完了全部m个约束后,即可通过回代求得最后解答。
为了便于说明和具体理解上述思路和步骤,借助算例来阐述,以加深理解。设有一个三维线性规划问题如下例。
例1-1
求:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0002.jpg?sign=1739202014-byjzuhkHY7dCOlfw0Z57pnmOwfyJRBAK-0-4978984751ea59c75d222af68d444ef7)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0003.jpg?sign=1739202014-Og6ve89HVGHvwGmyWXkojao1HV0FYgUL-0-2f2984a370b9b65b3a489fe88fdce468)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0004.jpg?sign=1739202014-cKeufMttXV2lQN2cySR3Y5qXF64xrnCI-0-c4d5b8dcfed04aaf85358784ef260fd1)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0005.jpg?sign=1739202014-vodjj1WxK0uFUCxppJCyHZg4vPFtqlWw-0-fb8163b895656a7759898a94f101ec06)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0006.jpg?sign=1739202014-MNU9G14Sxp85rfJA2605ycoNqVEah80y-0-84337b65ea49092196c383b93b10b5aa)
对于此题应先进行一维分解,把此三维问题分解为x1、x2、x3三个一维子问题,并求各子问题之初优解Z初i。为方便和明晰解题思路,解题步骤可以通过列表进行,如表1-1所示。在表1-1含ci的行中,1、2、3为各目标函数式变量的系数,如式(1-1)所列。
表1-1 分解筛选截点IT与Z初计算值
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0007.jpg?sign=1739202014-PGrpUrDusnj6F7po7oVFJ4Vs9ytJ5MFa-0-ff176e66dcf3fc82ad8074b10a6a1bc9)
注:∗表示xi列中的最小值,∗∗表示Z初i行中的最大值。
对于每一个子问题,例如对x1子问题,先分别求约束方程(即约束平面)[式(1-2)、式(1-3)、式(1-4)]在x1轴上的截点,此截点是令式(1-2)~式(1-4)中除x1以外的变量均为零时得出的,其表达式为:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0012_0008.jpg?sign=1739202014-5haWZrsKfSjIkqcM5Im6XEnWiAuA0yZO-0-1cf4f08ec80ed9f3f96dc6b3191400e2)
式中,ITji为第j约束线在第i个变量轴(即xi轴)上的截点值;aji为约束条件式的系数;bj为各约束式右端的常数项;j、i为约束条件和变量的序号。
然后,选xi列诸小于或等于截点值ITji中的最小者(表1-1中数值带∗者),对x1轴而言就是6和其对应的约束式(1-3)。再将此最小截点值6乘以目标函数的对应系数c1得第一子LP问题的初优解Z初1,即Z初1=c1ITjimin。一般有:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0009.jpg?sign=1739202014-yQyoUWaCIpFD9cCpRmL6pKsBFW9ZJMCG-0-816909c70325db83f4f206c79b189088)
由于Z初3=18为表1-1中最大的Z初i,相应的变量为x3,式(1-4)为约束条件,由此可知,全系统的最优解必通过此约束平面式(1-4)。下一步是将式(1-4)看作等式,进而解出x3:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0010.jpg?sign=1739202014-oXTM8bOTY7ZqPBwlHDWzpEzLCH6bYn4q-0-c604d9fb678eb3576ecc6fd4346602e5)
然后将式(1-8)代入目标函数式和其他约束方程,这样就得到一个降维后的新LP模型:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0011.jpg?sign=1739202014-qn3Ceo648r68ldAQAKoRnCpxN8v81ZjY-0-97b8f31b5730557a6cd5e92865a7a9f0)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0012.jpg?sign=1739202014-XI0H6MvpdDMEXVrAowFlDcB5hNh2Njqx-0-5c64dfff185650c9df8e8ad45cdaa636)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0013.jpg?sign=1739202014-ECJCSqoFT2Qq6SARYLMboB612jotMOod-0-76ddf2b568f3ca866417b2342bc08356)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0014.jpg?sign=1739202014-WKzwiPRPb9ElOw5ic1ghQbmWLj3dWSxL-0-efe3bbb10e1f7cdece467fe81c3c94da)
该模型与前一个一样,它可再次做一维分解筛选。不过对于目前这一类型,由于为负,且属于退化Ⅰ的情况,故解是简单的,即有
=0,从而又有:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0013_0017.jpg?sign=1739202014-nZFbWXqfvcfqVX768ZyTi5x6fQMwVNY7-0-9fc4c76f22040d4d652f52640e656001)
把它们回代至式(1-8)中,得,而最优解为:
(x1,x2,x3)∗=(2,0,6),Z∗=20
解毕。
分解筛选法解题流程图如下:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0014_0019.jpg?sign=1739202014-7Vaidn6ggEh6QS3SElbDmEWvXl1X3v8F-0-350390904194f43e7b807fa3309b76bc)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0014_0020.jpg?sign=1739202014-MYmyoJDRENlunUSXyOrDAwryA1DgTI0C-0-0c41f935d9746cd4dff89fce2c7fe9c5)
若计算时Z初max同时出现在两个以上的列中,则把不同行的相应约束方程都可看成是等式约束,进而可以联解消元。这样,明显可使计算效率提高,简化计算。
例1-2
求:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0021.jpg?sign=1739202014-cExw0v9XCWXd5vZItKn13W1XA5hcoBcz-0-8d79e3be31ec0fdc6fb01916bb9eaeb9)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0022.jpg?sign=1739202014-mMIGoxVZuYsJ53sAOjGRgXkI1VJBalfj-0-986e23d677703a4cfe0df5719e25993c)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0023.jpg?sign=1739202014-7YAzpiFus1P7FTFUju3ymK5iBMfVvVHV-0-943b7c843f25b37a7d1285780f634c87)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0024.jpg?sign=1739202014-j70OlbNGnISOXBq94GrtNM4Kn89s4kAq-0-6a126ffea0f10deb5208a66654426f12)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0025.jpg?sign=1739202014-DWABCIESxU5tMQuy8hiv976KXU8iGJMj-0-80c4df30d18e79e2951c0700e2d50dd7)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0026.jpg?sign=1739202014-s2fQNnQDC2EMZwszImqd1RkMOoDpnXZK-0-5fa62da1dd0720228a5fbf5c0e3ca3a2)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0027.jpg?sign=1739202014-N30imz4UJDMSuJFZ3GQIAWYWqQEMMQd8-0-49c101faa5421b1dfc474f7cc9c2b7d3)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0028.jpg?sign=1739202014-jONfYaR3sQhOh4R5c3VrKh0B3IYcTcMr-0-0a1d0a31bcb5e92b792f0a0a3d434480)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0015_0029.jpg?sign=1739202014-v7RZhx0Y2BY5QWDG16RtG2bV86lDGxLE-0-b830c156a02a1b7a830dccb85f0852ab)
在对上面所列九维LP问题进行分解之前,可简单判别出变量x9属于退化Ⅰ(即c9<0,Aj9≥0,j=1,…,9)。故有,并可先行从模型中剔除有x9的项。然后再次分解此八维LP模型,并一一列出所有一维子模型截点值的计算,如表1-2所示。
表1-2 分解筛选法——ITi及Z初i计算
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0016_0031.jpg?sign=1739202014-vMo0ggiktGldURpyu5QUQWLagNFSR3ca-0-270acce959158e4f9c6d83a6c1b3953c)
注:右上角有√为该列的最小截点值。
在计算截点值时,凡是约束式中系数为负的部分,不需要计算,因其已不在第一象限,系数为零者,只需要取每列中的最小截值点,故也不必列出。
在表1-2中,Z初max为+0,它同时出现在x2、x3、x5、x6四个子问题中。由此可知,全系统的最优解通过四个相应的约束式[式(1-15)、式(1-16)、式(1-17)、式(1-18)]。把上述四个方程式作为等式联立,通过解出上述的四个变量,可得出下列结果:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0016_0032.jpg?sign=1739202014-AZMf5wFhSuZd4qfmjBSHBkVYv8AyeICi-0-63d752aba48a379526e087e28cd5f328)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0016_0033.jpg?sign=1739202014-yVtN9cnp5U8OiodJgqWeuPZ8P2TqxvVI-0-30b0fda8a2f50af2947645c44b956a35)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0016_0034.jpg?sign=1739202014-IpCaDEoSxwMCmx60YeBLYEiXCe2hN6sz-0-d8cf6ae2a6d8f4e8e7ad4e3c96d426be)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0016_0035.jpg?sign=1739202014-qr0407vCTKoyyix4YNxgAcrI0QjZ9kdo-0-e891aa966aee571d266a9897f891b171)
把式[1-23(a)]、式[1-23(b)]、式[1-23(c)]、式[1-23(d)]代入目标函数式(1-14)、式(1-19)和式(1-21)。由于式[1-23(a)]、式[1-23(b)]、式[1-23(c)]、式[1-23(d)]都只是单变量之间的比例关系,可使式(1-22)必然满足,不需要再次代入引进有关于xi≥0的新约束。于是可得降维后的新LP模型:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0036.jpg?sign=1739202014-U2057BMl5hm55b8DGgPdfLFq9Vhbbh47-0-6096497262667823eb120b3e43467e3d)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0037.jpg?sign=1739202014-L1OwsX7foV3LyYzB1McV0OPSkpKw129V-0-0c82589c8cbdf12545582140a94cd4d1)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0038.jpg?sign=1739202014-AeNCSL6Sk5sysGwgxFj0TUCYFWUlVXCT-0-1df91659251b313cb7858d4712ccfc3a)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0039.jpg?sign=1739202014-YNbm7OiZ2MVvPjnuin1RKAPGaO4Q2J3v-0-ed51bac096a983d174397d9d74eb373b)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0040.jpg?sign=1739202014-JdifKhJ9nJFivMZfb2tuOuKXcqlp6duR-0-75c2f7ec4d9bab2f1aca1da3f2c25ef9)
在上述式中变量x4属于退化Ⅰ条件,故,并可将其在LP模型中剔除。对于新的LP,再次做一维分解筛选表(见表1-3)。
表1-3 一维分解筛选表
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0042.jpg?sign=1739202014-4v9jChtqucMxEslt2VSUPMEdwz38fYVD-0-b22d3abd9eb76955afffbb1f1a1d1116)
注:右上角有√者为该列的最小截点值。
通过表1-3可得Z初max=500相应的变量为x1,约束式为式(1-19),于是可由式(1-19)解出x1:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0043.jpg?sign=1739202014-krJXbhEu1VJAyWsHFC0RNktPBC0vLpE2-0-5dc2ae532bab086dc62e7d34962a0b3b)
再把式(1-19)′代入式(1-14)′、式(1-20)′、式(1-21)′,可得第二次降维后的新LP模型:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0044.jpg?sign=1739202014-IWIRdNagngS3LWmbVtTy9EKmMLdHWT9R-0-dbe67b94960a7d8a4375988e3a738783)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0045.jpg?sign=1739202014-8QjiOCJPcRBT5TH0ygBGEavt4UFoI3Vs-0-9bd0d3f3270509dc42ec379e03aa6674)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0046.jpg?sign=1739202014-zlPIs6urilpoPZ6WHVQlfO28LEe9qcjV-0-a0efc607a0170dd5adaee07f68898a90)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0017_0047.jpg?sign=1739202014-LMbBNEvpfClgekQboiSdWnejKWEmFofL-0-05f916ecb595109a4e064fed4cf70a2d)
在上面的新LP模型中,x7符合退化Ⅰ的情况,可知以及x8≤50,在目标式中已无任何未解变量,再将
的值回代到式(1-19)以及式[1-23(a)]、式[1-23(b)]、式[1-23(c)]、式[1-23(d)]和式(1-14)″,可得:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0018_0050.jpg?sign=1739202014-kDH6TTbm9NtP8IgWZVApV5TBpeIiX66Z-0-917c7a468d4694abd8e663fa2eb3f29b)
至此解毕。
分解筛选法解题流程图如下:
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0018_0051.jpg?sign=1739202014-YYUrQXu2qb5XU07oNnIfdoUr49p9ftcL-0-48e034ef1d435603faab30151ded3179)
![](https://epubservercos.yuewen.com/300876/20215408808190006/epubprivate/OEBPS/Images/9787513663991_0019_0052.jpg?sign=1739202014-ojBKnQWK1w3Z2tBixXJt5g1hUvEPJ25e-0-5b3651126c498dbdc18b6918d97ca7cb)