Matlab最优化计算方法ppt课件.pptx
《Matlab最优化计算方法ppt课件.pptx》由会员分享,可在线阅读,更多相关《Matlab最优化计算方法ppt课件.pptx(138页珍藏版)》请在三一办公上搜索。
1、线性规划,最优化方法专题,无约束规划,非线性规划,课程目的,课程内容,2、掌握用数学软件包求解线性规划问题。,1、了解线性规划的基本内容。,3、实验作业。,2、用数学软件包求解线性规划问题。,1、两个引例。,问题一 :任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低?,两个引例,解 设在甲车床上加工工件1、2、3的数量分别为x1、x2、x3,在乙车床上加工工
2、件1、2、3的数量分别为x4、x5、x6。可建立以下线性规划模型:,解答,问题二: 某厂生产甲、乙两种产品,已知制成一吨产品甲需用资源A 3吨资源B 4m3;制成一吨产品乙需用资源A 2吨,资源B 6m3,资源C 7个单位。若一吨产品甲和乙的经济价值分别为7万元和5万元,三种资源的限制量分别为90吨、200m3和210个单位。试应生产这两种产品各多少吨才能使创造的总经济价值最高?,解:这是个最优化问题,其目标为经济价值最高,约束条件为三种资源的数量有限,决策为生产甲、乙产品的数量。令生产产品甲的数量为x1,生产产品乙的数量为x2。由题意可以建立如下的线性规划模型。,故目标函数为:,约束条件为:
3、,问题2线性规划模型:,解答,返 回,设置决策变量,它们体现解决问题的方案。,小结1:建模的基本步骤,确定目标函数,它是决策变量的函数。,确定决策变量的取值范围,给出优化方向。,确定约束条件,它们是含有决策变量的不等式或等式。,小结2:数学模型的共同结构,1. 存在一组决策变量,称为决策变量,对它们可有非负要求; 2. 存在一个以决策变量为自变量的目标函数,且它为线性函数; 3. 存在一组约束条件,且每个条件都是由决策变量构成的线性不等式或等式;,4. 结构要求出这样的变量组,或者说决策向量X,在满足约束条件和非负约束的同时,使相应的目标函数值达到最大或者最小。简言之,在一定条件下使目标函数优
4、化。,具有上述结构的数学模型为线性规划模型,线性规划数学模型三要素: 决策变量、目标函数、约束条件,例, 通过图解法求下列线性规划问题的最优解。,max z=x1+3x2s.t. x1+ x26-x1+2x28x1 0, x20,可行域,目标函数等值线,最优解,6,4,-8,6,0,x1,x2,例 通过图解法求下列线性规划问题的最优解。,-x1+2x2=2,x1-x2=2 x1+x2=4,0 1 2 3 4 x1,x2,G4321,F,E,H,A,B,C,D,I,多重最优解,例 通过图解法求下列线性规划问题的最优解。,x1+2x2=4,x1+2x2=6,0 1 2 3 4 x1,x1=3,X2
5、321,-x1+2x2=0,无界解,例 通过图解法求下列线性规划问题的最优解。,0 1 2 3 4 x1,x1=3,X2321,-x1+2x2=0,无界解,例 通过图解法求下列线性规划问题的最优。,x1+x2=1,0 1 2 3 4 x1,X2321,-x1+2x2=4,无可行解,例 通过图解法求下列线性规划问题的最优。,总结:线性规划问题解的状况,唯一最优解,无穷多最优解,无界解,无可行解,我们通常把无界解或无可行解统称为无最优解,c1 x1 0 c2 x2 0Ct= . 0= cn xn 0 并且 r(A)=mn.,线性规划标准型的矩阵形式:Max Z = CX s.t. AX=b X ,
6、b 0,a11 a12 . a1n b1 A= a21 a22 . a2n b = b2 am1 am2 . amn bm,X=,关于标准型解的若干基本概念,假若标准型有 n 个变量, m 个约束行且m=n“基”的概念在标准型中,系数矩阵有 n 列,即 A = ( P1, P2 , , Pn )A中线性独立的 m 列,构成该标准型的一个基,即基矩阵 B = ( P1 , P2 , , Pm), | B | 0 P1 , P2 , , Pm 称为基向量与基向量对应的变量称为基变量,记为 XB = ( x1 , x2 , , xm )T,其余的变量称非基变量,记为 XN = ( xm+1 , xm
7、+2 , , xn ) T , 故有 X = (XB ,XN )T,基解、基可行解,线性规划的基矩阵、基变量、非基变量,=,目标函数,约束条件,行列式0基矩阵,右边常数,例:,X1,x2,x3为基变量,x4为非基变量,可行解满足约束条件和非负条件的解 X 称为可行解.,基解(基本解)令非基变量 XN = 0,求得基变量 XB的值称为基本解 即 XB = B1 b AX=b 令A=(B,N), X=(XB ,XN) T BXB + NXN=b 令 XN = 0 得 XB = B1b 因此基解为X=( B1 b ,0)T,基本可行解符合非负性要求的基解,称为基本可行解,否则为基本非可行解基本可行解
8、的非零分量个数 m 时(基本可行解中存在取零值的基变量),称为退化基本可行解,例:写出下列线性规划问题的基解,并判断是否为基可行解。,基变量x1、x2、x3,非基变量x4、x5、x6,基解为(x1,x2,x3,x4,x5,x6)=(5,3,1,0,0,0),是基础可行解,表示可行域的一个顶点。目标函数值为:z=20,基变量x1、x2、x5,非基变量x3、x4、x6,但不是基可行解,不是一个顶点。,基解为(x1,x2,x3,x4,x5,x6)=(6,3,0,0,-3,0),基变量x1、x2、x6,非基变量x3、x4、x5,基础解为(x1,x2,x3,x4,x5,x6)=(3,4,0,0,0,4)
9、是基础可行解,表示可行域的一个顶点。目标函数值为:z=18,基变量x2、x3、x4,非基变量x1、x5、x6,基础解为(x1,x2,x3,x4,x5,x6)=(0,21/2,27/2,-30,0,0)是基础解,但不是可行解。,约束方程的解空间,基解,可行解,非可行解,基可行解,退化解,1.3.2 线性规划标准型问题解的关系,1、线性规划的标准型有特点( )。 A、右端项非零; B、目标求最大; C、有等式或不等式约束; D、变量均非负。,2 下面命题不正确的是( )。 A、线性规划的最优解是基本可行解; B、基本可行解一定是基本解; C、线性规划一定有可行解; D、线性规划的最优值至多有一个。
10、,3 若某线性规划问题中,变量个数为n,基变量个数为m(m n),则该问题基本可行解的最大数目为( ) ,4 若线性规划问题的最优解同时在可行域的两个顶点上达到,则最优解有( ) 无穷多个 过这两点的整条直线 不可能发生 两个,5当线性规划问题的可行集非空时一定()A 包含原点X=(0,0,0) B 有界C 无界 D 是凸集,2.1 单纯形算法 基本思想:从可行域的一个基本可行解(顶点)出发,判别它是否已是最优解,如果不是,寻找下一个基本可行解,并使目标函数得到改进,如此迭代下去,直到找到最优解或判定问题无界为止。,2.1 单纯形思想举例,max Z=1500 x1+2500 x2 s.t.
11、3x1+2x2 65 2x1+ x2 40 3x2 75 x1,x2 0,化成标准形:max Z=1500 x1+2500 x2 s.t. 3x1+2x2 +x3 =65 2x1+ x2 + x4 =40 3x2 + x5 = 75 x1,x2 0,2 1 0 0 1 0 1 00 3 0 0 1,A=,(P1,P2,P3,P4 ,P5 ),例,P3,P4, P5线性无关,x3, x4 , x5是基变量,x1, x2是非基变量。,1 0 0 0 1 0 0 0 1,B=,(P3,P4 ,P5 ),用非基变量表示的方程: Z= 1500 x1 +2500 x2 x3 = 65 - 3x1 - 2
12、x2 x4 = 40 - 2x1 - x2 (I) x5 = 75 - 3x2 令非基变量 ( x1 , x2)t=(0,0) t 得初始基可行解: x(1)=(0,0,65,40,75) t Z=0 经济含义:不生产产品甲和乙,利润为零。,(x3,x4 ,x5 ),分析: Z= 1500 x1 +2500 x2分别增加单位产品甲、乙,目标函数分别增加1500、2500,即利润分别增加1500元、2500元。,同时由目标函数可以看出增加单位产品乙(x2)比甲( x1 )对目标函数的贡献大(最大检验数原则),把非基变量x2换成基变量,称x2为进基变量。同时为保证基变量的个数必须确定一个出基变量。
13、(在选择出基变量时,只考虑aij是正的方程)(最小比值原则),用非基变量表示的方程: x3 = 65 - 2x2 0 x4 = 40 - x2 0 (II) x2 min x5 = 75 - 3x2 0当x2 25时, x5 0,即x5由原来的基变量变为现在的非基变量。,65/2, 40/1 75/3,确定了进基变量x2 ,出基变量x5 以后,用非基变量表示基变量得到新的方程组: Z= 62500+1500 x1-(2500/3)x5 x3 = 15 - 3x1 + (2/3)x5 x4 = 15 - 2x1 +(1/3)x5 (II) x2 = 25 -(-1/3)x5 令新的非基变量( x
14、1,x5 )=(0,0)t得到新的基本可行解:x(2)=(0,25,15,15, 0) t Z=62500经济含义:生产乙产品25个,获得利润62500元。,这个方案比前方案好,但是否是最优?,分析:Z= 62500+1500 x1-(2500/3)x5非基变量x1系数仍为正数,确定x1为进基变量。在保证所有的变量非负的情况下,确定x3为出基变量。得到新的基本可行解: x(3)=(5,25,0,5, 0) t Z= 70000-500 x3-500 x5由Z的表达式可以看出,该解已是最优解。经济含义:生产甲产品生产5个乙产品25个,获得利润70000元。,c1 x1 0 c2 x2 0Ct=
15、. 0= cn xn 0 并且 r(A)=mn.,2.2 单纯形法的基本原理Max Z = CX s.t. AX=b X 0,a11 a12 . a1n b1 A= a21 a22 . a2n b = b2 am1 am2 . amn bm,X=,max z = C XAX = bX 0,max z = CB,CNs.t. B , N = bXB, XN 0,检验数与最优检验:目标函数中 xN 的系为 ,由于 xN = 0,它对目标函数值没有直接影响,但却影响目标值的潜在变化。检验向量为:检验分量为: j 被称为检验数 根据检验数取值情况可做如下讨论:,单纯形方法计算步骤,第一步:转换线性规划
16、问题为标准型,构造初始单纯形表第二步:根据换入规则决定进基变量,第三步:根据换出规则决定出基变量,第四步:构造新的单纯形表第五步:返回第二步,例:用单纯形法求解线性规划问题,x6离基,,x2进基,,写出单纯形表,1,1/2,1/2,1,1/2,18,x2,4,0,1/2,1/2,0,-1/2,7,0,1,-3,-2,-2,72,x5离基,,x1进基,,25/1=2536/2=18,7/(1/2)=1418/(1/2)=36,1,1,2,-1,14,x1,3,0,-1/2,-1,0,11,0,-4,-2,-1,86,得到最优解,最优解为: X=(14,11,0,0,0,0)T, max z=86
17、,1.线性规划的标准形式:,用单纯法求解时,常将标准形式化为:,2. 线性规划的基本算法单纯形法,线性规划的基本算法单纯形法,引入松弛变量x3, x4, x5, 将不等式化为等式, 即单纯形标准形:,用MATLAB优化工具箱解线性规划,命令:x=linprog(c,A,b),2、模型:min z=cX,命令:x=linprog(c,A,b,Aeq,beq),注意:若没有不等式: 存在,则令A= ,b= .,命令:1 x=linprog(c,A,b,Aeq,beq, VLB,VUB) 2 x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0),注意:1 若没有等式约束: ,
18、则令Aeq= , beq= . 2其中X0表示初始点,4、命令:x,fval=linprog()返回最优解及处的目标函数值fval.,解 编写M文件如下:c=-0.4 -0.28 -0.32 -0.72 -0.64 -0.6; A=0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08; b=850;700;100;900; Aeq=; beq=; vlb=0;0;0;0;0;0; vub=;x,fval=linprog(c,A,b,Aeq,beq,vlb,vub),解: 编写M文件
19、如下: c=-7 -5; A=3 2; 4 6; 0 7; b=90;200;210; Aeq=; beq=; vlb=0,0; vub=inf,inf; x,fval=linprog(c,A,b,Aeq,beq,vlb,vub),问题2解答,例3 问题一的解答任务分配问题:某车间有甲、乙两台机床,可用于加工三种工件。假定这两台车床的可用台时数分别为800和900,三种工件的数量分别为400、600和500,且已知用三种不同车床加工单位数量不同工件所需的台时数和加工费用如下表。问怎样分配车床的加工任务,才能既满足加工工件的要求,又使加工费用最低?,解 设在甲车床上加工工件1、2、3的数量分别为
20、x1、x2、x3,在乙车床上加工工件1、2、3的数量分别为x4、x5、x6。可建立以下线性规划模型:,例3 问题一的解答,问题,编写M文件如下:f = 13 9 10 11 12 8;A = 0.4 1.1 1 0 0 0 0 0 0 0.5 1.2 1.3;b = 800; 900;Aeq=1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1;beq=400 600 500;vlb = zeros(6,1);vub=;x,fval = linprog(f,A,b,Aeq,beq,vlb,vub),结果:x = 0.0000 600.0000 0.0000 400.0000
21、0.0000 500.0000fval =1.3800e+004 即在甲机床上加工600个工件2,在乙机床上加工400个工件1、500个工件3,可在满足条件的情况下使总加工费最小为13800。,结果为:x = 14.0000 24.0000fval = -218.0000,注:有些实际问题可能会有一个约束条件:决策变量只能取整数,如x1、x2取整数。这类问题实际上是整数线性规划问题。如果把它当成一个线性规划来解,求得其最优解刚好是整数时,故它就是该整数规划的最优解。若用线性规划解法求得的最优解不是整数,将其取整后不一定是相应整数规划的最优解,这样的整数规划应用专门的方法求解(如割平面法、分支定
22、界法)。,实验作业,某厂生产甲乙两种口味的饮料,每百箱甲饮料需用原料6千克,工人10名,可获利10万元;每百箱乙饮料需用原料5千克,工人20名,可获利9万元.今工厂共有原料60千克,工人150名,又由于其他条件所限甲饮料产量不超过8百箱.问如何安排生产计划,即两种饮料各生产多少使获利最大.进一步讨论: 1)若投资0.8万元可增加原料1千克,问应否作这项投资. 2)若每百箱甲饮料获利可增加1万元,问应否改变生产计划.,返 回,无约束非线性最优化,课程目的,课程内容,2、掌握用数学软件包求解无约束最优化问题。,1、了解无约束非线性最优化基本算法。,1、无约束非线性优化基本思想及基本算法。,4、实验
23、作业。,3、用MATLAB求解无约束非线性优化问题。,2、MATLAB优化工具箱简介,无约束非线性最优化问题,求解无约束非线性最优化问题的的基本思想,*无约束非线性最优化问题的基本算法,返回,标准形式:,求解无约束非线性最优化问题的基本思想,求解的基本思想 ( 以二元函数为例 ),5,3,1,连续可微,多局部极小,唯一极小(全局极小),搜索过程,最优点 (1 1)初始点 (-1 1),-1,1,4.00,-0.79,0.58,3.39,-0.53,0.23,2.60,-0.18,0.00,1.50,0.09,-0.03,0.98,0.37,0.11,0.47,0.59,0.33,0.20,0.
24、80,0.63,0.05,0.95,0.90,0.003,0.99,0.99,1E-4,0.999,0.998,1E-5,0.9997,0.9998,1E-8,返回,无约束优化问题,最优解类型,全局最优解(Global optimum),局部最优解(Local optimum),现有基于导数的求解方法通常只能得到局部最优解。,无约束优化问题,最优化条件(Optimality Condition),必要条件(Necessary condition),充分条件( Sufficient condition),无约束优化问题,步骤1: 寻找稳定点(Stationary points ):,步骤2: 检
25、查稳定点是否满足充分条件:,基本思路,基本流程,Example 1,Yanni Yang,2013 -2014 Spring Semester,Slide 7,基本思路,稳定点满足以下条件:,求解得到两个稳定点:,Hessian矩阵:,Yanni Yang,2013 -2014 Spring Semester,Slide 8,Example 2,基本思路,Yanni Yang,2013 -2014 Spring Semester,Slide 11,凸规划,无论初值取值,最优解唯一:,这样的函数被称为凸函数,求解凸函数最优解问题被称为凸规划,Yanni Yang,2013 -2014 Sprin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 优化 计算方法 ppt 课件
链接地址:https://www.31ppt.com/p-2002419.html