第1讲线性规划及单纯形法课件_第1页
第1讲线性规划及单纯形法课件_第2页
第1讲线性规划及单纯形法课件_第3页
第1讲线性规划及单纯形法课件_第4页
第1讲线性规划及单纯形法课件_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1讲

线性规划及单纯形法

山东轻工业学院数理学院李彬

E-mail:ribbenlee@126.com

telephonenumber1第1讲线性规划及单纯形法

山东轻工业学院数理学院李运筹帷幄之中决胜千里之外线性规划LinearProgramming数学建模课件.2运筹帷幄之中决胜千里之§1线性规划问题及模型§2图解法§3单纯形方法§4线性规划应用举例分析.3§1线性规划问题及模型.3§1问题的提出例1.某工厂在计划期内要安排Ⅰ、Ⅱ两种产品的生产,已知生产单位产品所需的设备台时及A、B两种原材料的消耗、资源的限制,如下表:问题:工厂应分别生产多少单位Ⅰ、Ⅱ产品才能使工厂获利最多?线性规划模型:目标函数:Maxz=50x1+100x2约束条件:s.t.x1+x2≤3002x1+x2≤400x2≤250x1,x2≥0.4§1问题的提出例1.某工厂在计划期内要安排Ⅰ、Ⅱ两种产品线性规划的组成要素:目标函数MaxF或MinF约束条件s.t.(subjectto)满足于决策变量用符号来表示可控制的因素建模步骤1.理解要解决的问题,了解解题的目标和条件;2.定义决策变量(x1,x2,…,xn),每一组值表示一个方案;3.用决策变量的线性函数形式写出目标函数,确定最大化或最小化目标;4.用一组决策变量的等式或不等式表示解决问题过程中必须遵循的约束条件。.5线性规划的组成要素:.5一般形式目标函数约束条件.6一般形式目标函数约束条件.6可以看出,线性规划的标准形式有如下四个特点:

-目标最大化;-约束为等式;-决策变量均非负;-右端项非负。.7可以看出,线性规划的标准形式有如下四个特点:-目标最大化注释.8注释.8规范形式.9规范形式.9标准形式.10标准形式.10概念.11概念.11模型转换目标转换变量转换.12模型转换目标转换变量转换.12约束转换不等式变等式不等式变不等式等式变不等式.13约束转换不等式变等式等式变不等式.13不等式变等式松弛变量剩余变量.14不等式变等式松弛变量剩余变量.14不等式变不等式.15不等式变不等式.15

例1

把问题转化为标准形式.16例1把问题转化为标准形式.16对于只有两个决策变量的线性规划问题,可以在平面直角坐标系上作图表示线性规划问题的有关概念,并求解。下面通过例2详细讲解其方法。§2图解法例2.目标函数:Maxz=50x1+100x2约束条件:s.t.x1+x2≤300(A)2x1+x2≤400(B)x2≤250(C)x1≥0(D)x2≥0(E).17对于只有两个决策变量的线性规划问题,可以在平面直角坐标系上作(1)画出线性规划问题的可行域,如图所示。x1x2x2=0x1=0x2=250x1+x2=3002x1+x2=400图1.18(1)画出线性规划问题的可行域,如图所示。x1x2x2=0x(2)目标函数z=50x1+100x2,当z取某一固定值时得到一条直线,直线上的每一点都具有相同的目标函数值,称之为“等值线”。平行移动等值线,当移动到B点时,z在可行域内实现了最大化。得到最优解:x1=50,x2=250,最优目标值z=27500x1x2z=20000=50x1+100x2图2z=27500=50x1+100x2z=0=50x1+100x2z=10000=50x1+100x2CBADE.19(2)目标函数z=50x1+100x2,当z取某一固定值时得图解法步骤在平面上建立直角坐标系;图示约束条件;找出可行域;图示目标函数和寻找最优解。.20图解法步骤在平面上建立直角坐标系;.20例3某公司由于生产需要,共需要A,B两种原料至少350吨(A,B两种材料有一定替代性),其中A原料至少购进125吨。但由于A,B两种原料的规格不同,各自所需的加工时间也是不同的,加工每吨A原料需要2个小时,加工每吨B原料需要1小时,而公司总共有600个加工小时。又知道每吨A原料的价格为2万元,每吨B原料的价格为3万元,试问在满足生产需要的前提下,在公司加工能力的范围内,如何购买A,B两种原料,使得购进成本最低?.21例3某公司由于生产需要,共需要A,B两种原料至少3解:目标函数:Minf=2x1+3x2约束条件:s.t.x1+x2≥350x1≥

1252x1+x2≤

600x1,x2≥0采用图解法。如下图:得Q点坐标(250,100)为最优解。100200300400500600100200300400600500x1=125x1+x2=3502x1+3x2=8002x1+3x2=9002x1+x2=6002x1+3x2=1200x1x2Q.22解:目标函数:Minf=2x1+3x21重要结论:如果线性规划有最优解,则一定有一个可行域的顶点对应一个最优解;无穷多个最优解。若将例1中的目标函数变为maxz=50x1+50x2,则线段BC上的所有点都代表了最优解;无界解。即可行域的范围延伸到无穷远,目标函数值可以无穷大或无穷小。一般来说,这说明模型有错,忽略了一些必要的约束条件;无可行解。若在例1的数学模型中再增加一个约束条件4x1+3x2≥1200,则可行域为空域,不存在满足约束条件的解,当然也就不存在最优解了。.23重要结论:.23§3单纯形方法单纯形法的基本思路和原理单纯形法的表格形式求目标函数值最小的线性规划的问题的

单纯形表解法.24§3单纯形方法单纯形法的基本思路和原理.24可行域的几何结构基本假设凸集可行域的凸性.25可行域的几何结构基本假设.25基本假设.26基本假设.26凸集.27凸集.27问题.28问题.28线性规划问题解的特点若线性规划问题存在唯一的最优解,那么它必定在顶点上(基本可行解)。若线性规划问题存在多个最优解,那么必有几个相邻的顶点是最优解,其它最优解可以表示成这几个顶点的凸组合。若一个顶点的目标函数值比它的相邻定点的目标函数值要好的话,它就是最优解。.29线性规划问题解的特点若线性规划问题存在唯一的最优解,那么它必1单纯形法的基本思路和原理单纯形法的基本思路:从可行域中某一个顶点开始,判断此顶点是否是最优解,如不是,则再找另一个使得其目标函数值更优的顶点,称之为迭代,再判断此点是否是最优解。直到找到一个顶点为其最优解,就是使得其目标函数值最优的解,或者能判断出线性规划问题无最优解为止。例1在加上松弛变量之后我们可得到标准型如下:目标函数:max50x1+100x2

约束条件:x1+x2+s1=300,2x1+x2+s2=400,x2+s3=250.xj≥0(j=1,2),sj≥0(j=1,2,3).301单纯形法的基本思路和原理单纯形法的基本思路:从可它的系数矩阵,

其中pj为系数矩阵A第j列的向量。A的秩为3,A的秩m小于此方程组的变量的个数n,为了找到一个初始基本可行解,先介绍以下几个线性规划的基本概念。

基:已知A是约束条件的m×n系数矩阵,其秩为m。若B是A中m×m阶非奇异子矩阵(即可逆矩阵),则称B是线性规划问题中的一个基。基向量:基B中的一列即称为一个基向量。基B中共有m个基向量。非基向量:在A中除了基B之外的一列则称之为基B的非基向量。基变量:与基向量pi相应的变量xi叫基变量,基变量有m个。.31它的系数矩阵,.31非基变量:与非基向量pj相应的变量xj叫非基变量,非基变量有n-m个。由线性代数的知识知道,如果我们在约束方程组系数矩阵中找到一个基,令这个基的非基变量为零,再求解这个m元线性方程组就可得到唯一的解了,这个解我们称之为线性规划的基本解。在此例中我们不妨找到了

为A的一个基,令这个基的

非基变量x1,s2为零。这时约束方程就变为基变量的约束方程:

.32非基变量:与非基向量pj相应的变量xj叫非基变量,非基变量有x2+s1=300,x2=400,x2+s3=250.求解得到此线性规划的一个基本解:x1=0,x2=400,s1=-100,s2=0,s3=-150由于在这个基本解中s1=-100,s3=-150,不满足该线性规划s1≥0,s3≥0的约束条件,显然不是此线性规划的可行解,一个基本解可以是可行解,也可以是非可行解,它们之间的主要区别在于其所有变量的解是否满足非负的条件。我们把满足非负条件的一个基本解叫做基本可行解,并把这样的基叫做可行基。.33x2+s1=300,.33一般来说判断一个基是否是可行基,只有在求出其基本解以后,当其基本解所有变量的解都是大于等于零,才能断定这个解是基本可行解,这个基是可行基。那么我们能否在求解之前,就找到一个可行基呢?也就是说我们找到的一个基能保证在求解之后得到的解一定是基本可行解呢?由于在线性规划的标准型中要求bj都大于等于零,如果我们能找到一个基是单位矩阵,或者说一个基是由单位矩阵的各列向量所组成(至于各列向量的前后顺序是无关紧要的事)例如,那么显然所求得的基本解一定是基本可行解,这个单位矩阵或由单位矩阵各列向量组成的基一定是可行基。实际上这个基本可行解中的各个变量或等于某个bj或等于零。

.34一般来说判断一个基是否是可行基,只有在求出其基本解以在本例题中我们就找到了一个基是单位矩阵。在第一次找可行基时,所找到的基或为单位矩阵或为由单位矩阵的各列向量所组成,称之为初始可行基,其相应的基本可行解叫初始基本可行解。如果找不到单位矩阵或由单位矩阵的各列向量组成的基作为初始可行基,我们将构造初始可行基,具体做法在以后详细讲述。.35在本例题中我们就找到了一个基是单位矩阵。.35基本可行解定义.36基本可行解定义.36.37.37二、最优性检验所谓最优性检验就是判断已求得的基本可行解是否是最优解。1.最优性检验的依据——检验数σj一般来说目标函数中既包括基变量,又包括非基变量。现在我们要求只用非基变量来表示目标函数,这只要在约束等式中通过移项等处理就可以用非基变量来表示基变量,然后用非基变量的表示式代替目标函数中基变量,这样目标函数中只含有非基变量了,或者说目标函数中基变量的系数都为零了。此时目标函数中所有变量的系数即为各变量的检验数,把变量xi的检验数记为σi。显然所有基变量的检验数必为零。在本例题中目标函数为50x1+100x2。由于初始可行解中x1,x2为非基变量,所以此目标函数已经用非基变量表示了,不需要再代换出基变量了。这样我们可知σ1=50,σ2=100,σ3=0,σ4=0,σ5=0。.38二、最优性检验.38设线性规划模型为.39设线性规划模型为.39令基为B,并作相应的矩阵分割,从约束条件得代入目标函数得典式.40令基为B,并作相应的矩阵分割,从约束条件得典式.40令则目标函数可写成所以可用判断是否最优解,它叫做检验数。.41令.41其中:.42.422.最优解判别定理

对于求最大目标函数的问题中,对于某个基本可行解,如果所有检验数≤0,则这个基本可行解是最优解。下面我们用通俗的说法来解释最优解判别定理。设用非基变量表示的目标函数为如下形式

由于所有的xj的取值范围为大于等于零,当所有的都小于等于零时,可知是一个小于等于零的数,要使z的值最大,显然只有为零。我们把这些xj取为非基变量(即令这些xj的值为零),所求得的基本可行解就使目标函数值最大为z0。**对于求目标函数最小值的情况,只需把≤0改为≥0.432.最优解判别定理.43三、基变换通过检验,我们知道这个初始基本可行解不是最优解。下面介绍如何进行基变换找到一个新的可行基,具体的做法是从可行基中换一个列向量,得到一个新的可行基,使得求解得到的新的基本可行解,其目标函数值更优。为了换基就要确定换入变量与换出变量。1.入基变量的确定从最优解判别定理知道,当某个σj>0时,非基变量xj变为基变量不取零值可以使目标函数值增大,故我们要选基检验数大于0的非基变量换到基变量中去(称之为入基变量)。若有两个以上的σj>0,则为了使目标函数增加得更大些,一般选其中的σj最大者的非基变量为入基变量,在本例题中σ2=100是检验数中最大的正数,故选x2为入基变量。.44三、基变换.442.出基变量的确定在确定了x2为入基变量之后,我们要在原来的3个基变量s1,s2,s3中确定一个出基变量,也就是确定哪一个基变量变成非基变量呢?

如果把s3作为出基变量,则新的基变量为x2,s1,s2,因为非基变量x1=s3=0,我们也可以从下式:x2+s1=300,x2+s2=400,x2=250,求出基本解:x1=0,x2=250,s1=50,s2=150,s3=0。因为此解满足非负条件,是基本可行解,故s3可以确定为出基变量。能否在求出基本解以前来确定出基变量呢?以下就来看在找出了初始基本可行解和确定了入基变量之后,怎么样的基变量可以确定为出基变量呢?或者说出基变量要具有什么条件呢?

.452.出基变量的确定.45我们把确定出基变量的方法概括如下:把已确定的入基变量在各约束方程中的右端向量正的系数除以其所在约束方程中的常数项的值,把其中最小比值所在的约束方程中的原基变量确定为出基变量。这样在下一步迭代的矩阵变换中可以确保新得到的bj值都大于等于零。在本例题中约束方程为

在第二步中已经知道x2为入基变量,我们把各约束方程中x2的为正的系数除对应的常量,得

.46我们把确定出基变量的方法概括如下:把已确定的入基变量其中的值最小,所以可以知道在原基变量中系数向量为

的基变量s3为出基变量,这样可知x2,s1,s2为基变量,x1,s3为非基变量。令非基变量为零,得x2+s1=300,x2+s2=400,x2=250.求解得到新的基本可行解x1=0,x2=250,s1=50,s2=150.这时目标函数值为50x1+100x2=50×0+100×250=25000。显然比初始基本可行解x1=0,x2=0,s1=300,s3=250时的目标函数值为0要好得多。下面我们再进行检验其最优性,如果不是最优解还要继续进行基变换,直至找到最优解,或者能够判断出线性规划无最优解为止。.47.47单纯形法的表格形式是把用单纯形法求出基本可行解、检验其最优性、迭代某步骤都用表格的方式来计算求出,其表格的形式有些像增广矩阵,而其计算的方法也大体上使用矩阵的行的初等变换。以下用单纯形表格来求解第二章的例1。max50x1+100x2+0·s1+0·s2+0·s3.x1+x2+s1=300,2x1+x2+s2=400,x2+s3=250,x1,x2,s1,s2,s3≥0.把上面的数据填入如下的单纯形表格:.48单纯形法的表格形式是把用单纯形法求按照线性规划模型在表中填入相对应的值,如上表所示;在上表中有一个m*m的单位矩阵,对应的基变量为s1,s2,s3;在zj行中填入第j列与cB列中对应的元素相乘相加所得的值,如z2=0*1+0*1+0*1=0,所在zi行中的第2位数填入0;在行中填入cj-zj所得的值,如;z表示把初始基本可行解代入目标函数求得的目标函数值,即b列*cB列;初始基本可行解为s1=300,s2=400,s3=250,x1=0,x2=0;由于250/1最小,因此确定s3为出基变量;由于,因此确定x2为入基变量。出基变量所在行,入基变量所在列的交汇处为主元,这里是a32=1,在表中画圈以示区别。迭代次数基变量cBx1x2s1s2s3b比值Bi/ai2501000000s1s2s3000111002101001001300400250300/1400/1250/150100000z=0.49迭代次数基变量cBx1x2以下进行第一次迭代,其变量为x2,s1,s2,通过矩阵行的初等变换,求出一个新的基本可行解,具体的做法用行的初等变换使得x2的系数向量p2变换成单位向量,由于主元在p2的第3分量上,所以这个单位向量是也就是主元素变成1。这样我们又得到的第1次迭代的单纯表如下所示。在上表中第3个基变量s1已被x2代替,故基变量列中的第3个基变量应变为x2。由于第0次迭代表中的主元a32已经为1,因此第3行不变。为了使第1行的a12为0,只需把第3行*(-1)加到第1行即可。同样可以求得第2行。求得第1次迭代的基本可行解为s1=50,s2=150,x2=250,x1=0,s3=0,z=25000.迭代次数基变量cBx1x2s1s2s3b比值bi/aij501000001s1s2x2001001010-12001-1010015015025050/1150/2—50000-10025000.50以下进行第一次迭代,其变量为x2,s1,s2,通过矩阵行的初从上表可以看出,第一次迭代的,因此不是最优解。设x1为入基变量,从此值可知b1/a11=50为最小正数,因此,s1为出基变量,a11为主元,继续迭代如下表所示。从上表中可知第二次迭代得到的基本可行解为x1=50,x2=250,s1=0,s2=50,s3=0,这时z=27500。由于检验数都<0,因此所求得的基本可行解为最优解,z=27500为最优目标函数值。实际上,我们可以连续地使用一个单纯形表,不必一次迭代重画一个表头。迭代次数基变量cBx1x2s1s2s3b比值bi/aij501000002x1s2x25001001010-100-211010015050250

00-500-5027500.51从上表可以看出,第一次迭代的算法步骤.52算法步骤.52单纯形表.53单纯形表.53特例.54特例.54.55.55.56.56.57.57思路总结:.58思路总结:.58例1模型与求解s.t.,数学模型.59例1模型与求解s.t.,数学模型.59标准化.60标准化.60单纯形表法求解430000001600250040025122.50100010001800500400043000.61单纯形表法求解43000016002210080004300第一次换基迭代4300000480050040000122.50100010-2-51400200160003000.62第一次换基迭代4300008000210-240016000第二次换基迭代43000034400200400001010100-0.80.402-212004002200000-1.22.63第二次换基迭代430000400001-0.82200220第三次换基迭代:最优解430000342006002000010100.51-0.5-0.4-0.40.4100260000-1-0.40.64第三次换基迭代:最优解430000200000.5-0.41例2.65例2.65.66.66.67.67.68.68.69.69.70.70灵敏度分析研究对象:.71灵敏度分析研究对象:.71改变价值向量改变右端向量改变矩阵增加新变量增加新的不等式约束增加新的等式约束.72.72概况信息的不确定性

信息的变化:

价值向量—市场变化

右端向量—资源变化系数矩阵—技术进步

认知的误差分析方法

静态分析-比较静态分析-动态分析.73概况信息的不确定性.73C的变化只影响检验数(对偶问题的解),不影响原问题的基本解;b的变化只影响原问题的基本解,不影响检验数(对偶问题的解);灵敏度分析时,要弄清楚:1)系数在什么范围内变化时,最优解(基)不变;2)若系数的变化使最优解发生变化,如何最简便地求得新最优解。系数变化对解的结果的影响.74C的变化只影响检验数(对偶问题的解),不影响原问题的基本解;计算软件LinGoMatlab.75计算软件.75人力资源分配问题某个中型百货商场对售货人员(周工资200元)的需求经统计如下表

为了保证销售人员充分休息,销售人员每周工作5天,休息2天。问应如何安排销售人员的工作时间,使得所配售货人员的总费用最小?星期一二三四五六七人数12151214161819.76人力资源分配问题某个中型百货商场对售货人员(周工资20模型假设每天工作8小时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论