收藏 分享(赏)

MATLAB优化工具箱.ppt

上传人:HR专家 文档编号:8358606 上传时间:2019-06-22 格式:PPT 页数:73 大小:2.71MB
下载 相关 举报
MATLAB优化工具箱.ppt_第1页
第1页 / 共73页
MATLAB优化工具箱.ppt_第2页
第2页 / 共73页
MATLAB优化工具箱.ppt_第3页
第3页 / 共73页
MATLAB优化工具箱.ppt_第4页
第4页 / 共73页
MATLAB优化工具箱.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

1、MATLAB优化工具箱 Optimization Toolbox,1.1 背景,一、优化工具箱简介,优化理论是一门实践性很强的学科。它被广泛应用于生产管理、军事指挥和科学实验等各种领域,如工程设计中的最优设计,军事指挥中的最优火力配置问题等。优化理论和方法奠基于20世纪50年代。,MATLAB的优化工具箱提供了对各种优化问题的一个完整的解决方案。其内容涵盖线性规划,二次规划、非线性规划、最小二乘问题、非线性方程求解、多目标决策、最小最大问题、以及半无限问题等的优化问题。其简洁的函数表达、多种优化算法的任意选择、对算法参数的自由设置,可使用户方便灵活地使用优化函数。,二、常用的优化功能函数求解线

2、性规划问题的主要函数是linprog。 求解二次规划问题的主要函数是quadprog。 求解无约束非线性规划问题的主要函数是fminbnd、fminunc和fminsearch。 求解约束非线性规划问题的主要函数是fgoalattain和fminimax。,三、一般步骤,建立目标函数文件,针对具体工程问题建立优化设计的数学模型,不等式约束条件表示成g(X)0的形式,建立调用优化工具函数的命令文件,文件内容:必须的输入参数、描述目标函数表达式等 存储:以自定义的目标函数文件名存储在文件夹中,建立约束函数文件,文件内容:必须的输入参数、约束函数表达式等 存储:以自定义的约束函数文件名存储在文件夹中

3、,将优化设计的命令文件复制到MATLAB命令窗口中进行运算求解。,分析优化设计的数学模型,选择适用的优化工具函数 文件内容:初始点,设计变量的边界约束条件,运算结果输出等内容 存储:以自定义的命令文件名存储于文件夹中。,模型输入时需要注意问题:(1) 目标函数最小化;(2) 约束非正;(3) 避免使用全局变量。,主要函数,输入变量,输出变量,1.2 线性规划问题,一、线性规划数学模型,1.主要应用对象: (1)在有限的资源条件下完成最多的任务; (2)如何统筹任务以使用最少资源。 2.数学模型形式:min f TXs.t. AXb (线性不等式约束条件)AeqX=beq (线性等式约束条件)l

4、b X ub (边界约束条件),约束条件,决策变量,目标函数,非负数,线性,3.MATLAB中函数调用格式xopt, fopt=linprog( f, A, b, Aeq, beq, lb, ub, x0, options),最优解,最优值,目标函数各维变量系数向量,初始点,可选项,二、例题,生产规划问题:某厂利用a,b,c三种原料生产A,B,C三种产品,已知生产每种产品在消耗原料方面的各项指标和单位产品的利润,以及可利用的数量,试制定适当的生产规划使得该工厂的总利润最大。,x1,x2,x3,2x1,4x2,3x3,3x1,4x2,2x3,2x1,x1,x2,3x2,2x3,2x3,+,+,+

5、,+,+,+,+,+,3.确定约束条件:,X=x1,x2,x3T,4.编制线性规划计算的M文件 f= 2, 4, 3 A=3,4,2;2,1,2;1,3,2; b=600;400;800; Aeq=;beq=; lb=zeros(3,1); xopt,fopt=linprog(f,A,b,Aeq,beq,lb);,二、例题,解: 1.确定决策变量:,max2x1+4x2+3x3,3x1+4x2+2x3600,2x1+x2+2x3400,x1+3x2+2x3800,设生产A、B、C三种产品的数量分别是x1,x2,x3,决策变量:,根据三种单位产品的利润情况,按照实现总的利润最大化,建立关于决策变

6、量的函数:,2.建立目标函数:,根据三种资料数量限制,建立三个线性不等式约束条件,5.M文件运行结果: Optimization terminated successfully. xopt =0.000066.6667166.6667 fopt=-766.6667,x1,x2,x30,xopt, fopt=linprog( f, A, b, Aeq, beq, lb, ub, x0, options),-,-,-,1.3 二次规划问题,1.研究意义: (1)最简单的非线性规划问题; (2)求解方法比较成熟。 2.数学模型形式:s.t. AXb (线性不等式约束条件)AeqX=beq (线性等式

7、约束条件)lb X ub (边界约束条件),一、二次规划问题数学模型,约束条件,决策变量,目标函数,二次函数,3.MATLAB中函数调用格式xopt, fopt=quadprog(H,C, A, b, Aeq, beq, lb, ub, x0, options),最优解,最优值,目标函数的海赛矩阵,初始点,可选项,目标函数的一次项系数向量,结果 xopt=2.571,1.143,0.000 fopt=-16.4898,二、例题,求解约束优化问题,s.t.,解:(1)将目标函数写成二次函数的形式,,其中:,xopt, fopt=quadprog( H, C, A, b, Aeq, beq, lb

8、, ub, x0, options),(2)编写求解二次规划的M文件: H=4,-2,0;-2,4,0;0,0,2; C=0,0,1; A=1,3,2; b=6;,Aeq=2,-1,1; beq=4; lb=zeros(3,1);,xopt,fopt=quadprog(H,C,A,b,Aeq,beq,lb),1.4 无约束非线性规划问题,无约束非线性规划问题的MATLAB函数有,fminbnd,要求目标函数为连续函数,只求解单变量问题,fminunc,可求解单变量和多变量问题,适用于简单优化问题,可求解复杂优化问题,fminsearch,1.使用格式:xopt,fopt=fminbnd(fun

9、,x1,x2,options),1.4.1函数fminbnd,设置优化选项参数,迭代搜索区间,目标函数,返回目标函数的最优值,返回目标函数的最优解,2.例题:求解一维无约束优化问题f(x)=(x3+cosx+xlogx/ex)在区间0,1中的极小值。 解:(1)编制求解优化问题的M文件。%求解一维优化问题fun=inline(x3+cos(x)+x*log(x)/exp(x),x);%目标函数x1=0;x2=1;%搜索区间xopt,fopt=fminbnd(fun,x1,x2)(2)编制一维函数图形的M文件。ezplot(fun,0,10)title(x3+cosx+xlogx)/ex)gri

10、d on,1.4.1函数fminbnd,运行结果: xopt =0.5223 fopt =0.3974,1.使用格式:xopt,fopt=fminsearch(fun,x0,options),1.4.2函数fminsearch,设置优化选项参数,初始点,目标函数,返回目标函数的最优值,返回目标函数的最优解,2.例题:求解二维无约束优化问题f(x)=(x14+3x12+x22-2x1-2x2-2x12x2 +6)的极小值。 解:(1)编制求解二维无约束优化问题的M文件。%求解二维优化问题fun=x(1)4+3*x(1)2+x(2)2-2*x(1)-2*x(2)-2*x(1)2*x(2)+6; x

11、0=0,0; %初始点xopt,fopt=fminsearch(fun,x0)(2)讨论。将目标函数写成函数文件的形式:%目标函数文件search.mfunction f=search(x)f=x(1)4+3*x(1)2+x(2)2-2*x(1)-2*x(2)-2*x(1)2*x(2)+6; 则命令文件变为:%命令文件名称为eg9_4.mx0=0,0; %初始点xopt,fopt=fminsearch(search,x0),1.4.2函数fminsearch,运行结果: xopt =1.0000 2.0000 fopt =4.0000,1.使用格式: x,fval,exitflag,outpu

12、t,grad,hessian=fminunc(fun,x0,options,P1,P2),1.4.3函数fminunc,设置优化选项参数,初始点,调用目标函数的函数文件名,目标函数在最优解的海色矩阵,返回目标函数在最优解的梯度,优化算法信息的一个数据结构,返回算法的终止标志,返回目标函数的最优值,返回目标函数的最优解,附加参数,管道截面积:,其中设计变量:,1.4.3函数fminunc,2.例题:已知梯形截面管道的参数是:底边长度c,高度h,面积A=64516mm2,斜边与底边夹角为。管道内液体的流速与管道截面的周长s的倒数成比例关系。试按照使液体流速最大确定该管道的参数。 解:(1)建立优化

13、设计数学模型管道截面周长,min,x1,x2,f(X),目标函数的文件(sc_wysyh.m): function f=sc_wysyh(x) %定义目标函数调用格式 a=64516;hd=pi/180; f=a/x(1)-x(1)/tan(x(2)*hd)+2*x(1)/sin(x(2)*hd); %定义目标函数,1.4.3函数fminunc,2.例题: 解:(1)建立优化设计数学模型(2)编写求解无约束非线性优化问题的M文件,x,fval,exitflag,output,grad,hessian=fminbnd(fun,x0,options,P1,P2),求最优化解时的命令程序: x0=2

14、5,45; %初始点 x,Fmin=fminunc(sc_wysyh,x0); %求优语句 fprintf(1,截面高度h x(1)=%3.4fmmn,x(1) fprintf(1,斜边夹角 x(2)=%3.4f度n,x(2) fprintf(1,截面周长s f=%3.4fmmn,Fmin),计算结果 截面高度h x(1)=192.9958mm 斜边夹角 x(2)=60.0005度 截面周长s f=668.5656mm,xx1=linspace(100,300,25); xx2=linspace(30,120,25); x1,x2=meshgrid(xx1,xx2); a=64516;hd=p

15、i/180; f=a./x1-x1./tan(x2*hd)+2*x1./sin(x2*hd); subplot(1,2,1); h=contour(x1,x2,f); clabel(h); axis(100,300,30,120) xlabel(高度 h/mm) ylabel(倾斜角theta/(。),1.4.3函数fminunc,2.例题: 解:(1)建立优化设计数学模型(2)编写求解无约束非线性优化问题的M文件(3)编写绘制一维函数图形的M文件,title(目标函数等值线) subplot(1,2,2); meshc(x1,x2,f); axis(100,300,30,120,600,12

16、00) title(目标函数网格曲面图),控制参数options,1,2,3,控制参数options,1,2,3,1.5 约束非线性规划问题,1. 数学模型形式:min f (X)s.t. AXb (线性不等式约束)AeqX=beq (线性等式约束)C(X)0 (非线性不等式约束条件)Ceq(X)=0(非线性等式约束)Lb X Ub (边界约束条件),约束条件,2.使用格式: x,fval,exitflag,output, grad,hessian=fmincon(fun,x0,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),设置优化选项参数,初始点,调用目标函数的函

17、数文件名,目标函数在最优解的海色矩阵,返回目标函数在最优解的梯度,优化算法信息的一个数据结构,返回算法的终止标志,返回目标函数的最优值,返回目标函数的最优解,附加参数,非线性约束条件的函数名,设计变量的下界和上界,线性等式约束的常数向量,线性等式约束的系数矩阵,线性不等式约束的常数向量,线性不等式约束的系数矩阵,无定义时以空矩阵 符号“ ”代替,控制参数options,控制参数options,例1-6,某二级斜齿圆柱齿轮减速器,高速级输入功率P1=6.2kW,转速n1=1450r/min;总传动比i=31.5,齿轮宽度系数a=0.4,齿轮材料和热处理:大齿轮45号钢正火187207HB,小齿轮

18、45号钢调质228255HB,工作寿命10年以上。要求按照总中心距a最小来确定齿轮传动方案。解:(1)建立优化设计的数学模型设计变量:将涉及总中心距a齿轮传动方案的6个独立参数作为设计变量X=mn1,mn2,z1,z3,i1,T=x1,x2,x3,x4,x5,x6T目标函数:减速器总中心距a最小为目标函数,二、例题,约束条件:含性能约束和边界约束,高速级齿轮接触强度条件,低速级齿轮接触强度条件,高速级大齿轮弯曲强度条件,低速级大齿轮弯曲强度条件,大齿轮与轴不干涉,低速级齿轮副模数的下限和上限,高速级小齿轮齿数的下限和上限,高速级小齿轮齿数的下限和上限,低速级小齿轮齿数的下限和上限,高速级传动比

19、的下限和上限,齿轮副螺旋角的下限和上限,性 能 约 束,边 界 约 束,二、例题,(2)编制优化设计的M文件,x,fval,exitflag,output, grad,hessian=fmincon(fun,x0,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),%两级斜齿轮减速器总中心距目标函数 function f=jsqyh_f(x); hd=pi/180; a1=x(1)*x(3)*(1+x(5); a2=x(2)*x(4)*(1+31.5/x(5); cb=2*cos(x(6)*hd); f=(a1+a2)/cb;,%两级斜齿轮减速器优化设计的非线性不等式约束

20、函数 functiong,ceq=jsqyh_g(x); hd=pi/180; g(1)=cos(x(6)*hd)3-3.079e-6*x(1)3*x(3)3*x(5); g(2)=x(5)2*cos(x(6)*hd)3-1.701e-4*x(2)3*x(4)3; g(3)=cos(x(6)*hd)2-9.939e-5*(1+x(5)*x(1)3*x(3)2; g(4)=x(5)2.*cos(x(6)*hd)2-1.076e-4*(31.5+x(5)*x(2)3*x(4)2; g(5)=x(5)*(2*(x(1)+50)*cos(x(6)*hd)+x(1)*x(2)*x(3)-x(2)*x(4

21、)*(31.5+x(5); ceq=;, ,文件名为: Jsqyh_g.m,文件名为: Jsqyh_f.m,二、例题,(2)编制优化设计的M文件,x,fval,exitflag,output, grad,hessian=fmincon(fun,x0,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),x0=2;4;18;20;6.4;10;%设计变量的初始值 lb=2;3.5;14;16;5.8;8;%设计变量的下限 ub=5;6;22;22;7;15;%设计变量的上限 x,fn=fmincon(jsqyh_f,x0,lb,ub,jsqyh_g); disp *两级斜齿轮

22、传动中心距优化设计最优解* fprintf(1, 高速级齿轮副模数 Mn1=%3.4fmmn,x(1) fprintf(1, 低速级齿轮副模数 Mn2=%3.4fmmn,x(2) fprintf(1, 高速级小齿轮齿数 z1=%3.4fmmn,x(3) fprintf(1, 低速级小齿轮齿数 z2=%3.4fmmn,x(4) fprintf(1, 高速级齿轮副传动比 i1=%3.4fmmn,x(5) fprintf(1, 齿轮副螺旋角 beta=%3.4fmmn,x(6) fprintf(1, 减速器总中心距 a12=%3.4fmmn,fn) g=jsqyh_g(x); disp =最优点的性

23、能约束函数值= fprintf(1, 高速级齿轮副接触疲劳强度约束函数值 g1=%3.4fmmn,g(1) fprintf(1, 低速级齿轮副接触疲劳强度约束函数值 g2=%3.4fmmn,g(2) fprintf(1, 高速级大齿轮齿根弯曲强度约束函数值 g3=%3.4fmmn,g(3) fprintf(1, 低速级大齿轮齿根弯曲强度约束函数值 g4=%3.4fmmn,g(4) fprintf(1, 大齿轮顶圆与轴不干涉几何约束函数值 g5=%3.4fmmn,g(5), , , , ,文件名为 eg9_6.m,二、例题,(3) M文件运行结果,*两级斜齿轮传动中心距优化设计最优解*高速级齿轮

24、副模数 Mn1=2.0461mm低速级齿轮副模数 Mn2=3.6059mm高速级小齿轮齿数 z1=18.5156mm低速级小齿轮齿数 z2=16.0000mm高速级齿轮副传动比 i1=5.8000mm齿轮副螺旋角 beta=8.0000减速器总中心距 a12=317.4186mm=最优点的性能约束函数值=高速级齿轮副接触疲劳强度约束函数值 g1=0.0000mm低速级齿轮副接触疲劳强度约束函数值 g2=0.0000mm高速级大齿轮齿根弯曲强度约束函数值 g3=-1.0042mm低速级大齿轮齿根弯曲强度约束函数值 g4=-15.1854mm大齿轮顶圆与轴不干涉几何约束函数值 g5=-761.80

25、43mm,2mm,4mm,19,16,5.8,8,338.292mm,340mm,9.838,(4) 优化结果处理,1.6 多目标优化问题,多目标优化问题的MATLAB函数有,fgoalattain,需确定各分目标的加权系数,需知各分目标的单个的最优值,目标函数的最大值逐次减小,fminimax,1.6.1 函数fgoalattain,min vs.t. fi(X)-wiv goali i=1,2,tAXb (线性不等式约束)AeqX=beq (线性等式约束)C(X)0 (非线性不等式约束条件)Ceq(X)=0 (非线性等式约束)Lb X Ub (边界约束条件),一、多目标优化问题数学模型,标

26、量变量,各分目标函数,分目标函数的权重,各分目标函数的目标值,二、优化函数使用格式 x,fval,exitflag,output, grad,hessian= fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),设置优化选项参数,各分目标权重,各分目标期望值,目标函数在最优解的海色矩阵,返回目标函数在最优解的梯度,优化算法信息的一个数据结构,返回算法的终止标志,返回目标函数的最优值,返回目标函数的最优解,附加参数,非线性约束条件的函数名,设计变量的下界和上界,线性等式约束的常数向量,线性等式约束的系数矩阵,线性不等式约束

27、的常数向量,线性不等式约束的系数矩阵,无定义时以空矩阵 符号“ ”代替,1.6.1 函数fgoalattain,初始点,目标函数文件名,三、例题,设计带式输送机传动装置上的普通V带传动。已知电机额定功率P=4kW,转速n1=1440r/min,传动比i=3,采用A型V带,每天工作不超过10小时。要求传动结构紧凑(带的根数尽量少,带轮直径和中心距尽量小)。解:(1)建立优化设计的数学模型设计变量:V带传动的独立设计变量是小带轮直径dd1和带的基准长度LdX=dd1,LdT=x1,x2T目标函数: 小带轮直径: 中心距: 带的根数:,1.6.1 函数fgoalattain,1.1,拟合直线,P0=

28、(0.02424dd1-1.112879)(kW),0.17kW,KL=0.20639Ld0.211806,拟合幂函数方程,拟合双曲线方程,minf1(X)=dd1=x1,约束条件:含性能约束和边界约束,小带轮直径=推荐的A型带轮最小直径,最大带速25m/s,小带轮包角120,带传动的中心距要求,小带轮基准直径的下限和上限,带基准长度的下限和上限,性 能 约 束,边 界 约 束,三、例题,1.6.1 函数fgoalattain,1.6.1 函数fgoalattain,三、例题,解:(1)建立优化设计的数学模型设计变量: X=dd1,LdT=x1,x2T目标函数: 小带轮直径: 中心距: 带的根

29、数:,minf1(X)=dd1=x1,80100mm,320400mm,14,按容限值确定权重,以使目标函数值在数量级上统一,约束条件: (2)确定分目标和它们的权重,(3)编制优化设计的M文件,x,fval,exitflag,output, grad,hessian= fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),%V带传动多目标优化设计的目标函数文件 function f=VDCD_3mb_MB(x) P=4;i=3;KA=1.1; %已知条件:功率,传动比,工况系数 f(1)=x(1); %f1-小带轮基准直

30、径:目标函数1 a1=x(2)/4-pi*x(1)*(i+1)/8; a2=x(1)2*(i-1)2/8; a=a1+sqrt(a12-a2); f(2)=a; %f2,中心距:目标函数2 P0=0.02424*x(1)-1.1128789; %单根带额定功率 DP0=0.17; %功率增量 alpha=180-180*x(1)*(i-1)/pi/a; %小带轮包角 Kalp=alpha/(0.549636*alpha+80.396114); %包角系数 KL=0.20639*x(2)0.211806; %长度系数 f(3)=KA*P/(P0+DP0)/Kalp/KL; %f3-V带根数:目标

31、函数3,1.6.1 函数fgoalattain,三、例题,(3)编制优化设计的M文件%V带传动多目标优化设计的约束函数文件functiong,ceq=VDCD_3mb_YS(x)i=3;n1=1440; %已知条件:传动比,转速g(1)=100-x(1); %小带轮直径=Ddming(2)=pi*x(1)*n1/6e4-25 %带速范围V=alpming(4)=0.7*x(1)*(i+1)-a; %中心距范围a=aminceq=;,1.6.1 函数fgoalattain,三、例题,x,fval,exitflag,output, grad,hessian= fgoalattain(fun,x0,

32、goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),(3)编制优化设计的M文件,%V带传动多目标优化设计的调用命令 P=4;i=3;n1=1440;KA=1.1; %已知条件:功率,传动比,转速,工况系数 x0=100;1250; %初始点(小带轮直径,V带基准长度) goal=75,280,2; %分目标 w=10(-2),40(-2),1.5(-2); %分目标加权系数 lb=80,630; %最小带轮直径和A型V带的基准长度 ub=100;4000; %最大带轮直径和A型V带基准长度 xopt,fopt=fgoalattain(VDCD_3mb_MB,

33、x0,goal,w,lb,ub,VDCD_3mb_YS),1.6.1 函数fgoalattain,三、例题,x,fval,exitflag,output, grad,hessian= fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2), , , , ,Optimization terminated successfully:Search direction less than 2*options. xopt =1.0e+003 *0.10001.2269fopt =100.0000 281.5296 3.5957,(4)

34、 M文件运算结果,1.6.1 函数fgoalattain,三、例题,(5) 优化结果处理,dd1,100mm,1227mm,Ld,小带轮基准直径,带传动中心距,带的根数,1250mm,圆整,4,圆整,%优化结果数据处理后部分参数计算 Dd1=100;Dd2=Dd1*i;z=4;Ld=1250; v=pi*Dd1*n1/6e4; a1=Ld/4-pi*Dd1*(i+1)/8; a2=Dd12*(i-1)2/8; a=a1+sqrt(a12-a2); alpha=180-180*Dd1*(i-1)/pi/a; disp disp *计算结果* fprintf(1, 小带轮基准直径 Dd1=%3.0

35、fmmn,Dd1); fprintf(1, 大带轮基准直径 Dd2=%3.0fmmn,Dd2); fprintf(1, V带基准长度 Ld=%3.0fmmn,Ld); fprintf(1, 传动中心距 a=%3.2fmmn,a); fprintf(1, 小带轮包角 alpha=%3.2f度n,alpha); fprintf(1, V带根数 z=%3.0fmmn,z);,(4) M文件运算结果,1.6.1 函数fgoalattain,三、例题,(5) 优化结果处理,*计算结果*小带轮基准直径 Dd1=100mm大带轮基准直径 Dd2=300mmV带基准长度 Ld=1250mm传动中心距 a=29

36、3.82mm小带轮包角 alpha=141.00度V带根数 z= 4mm,(4) M文件运算结果,1.6.1 函数fgoalattain,三、例题,(5) 优化结果处理,(6) 最终方案,1.6.2 函数fminimax,min max f1,f2,f3s.t. AXb (线性不等式约束)AeqX=beq (线性等式约束)C(X)0 (非线性不等式约束条件)Ceq(X)=0 (非线性等式约束)Lb X Ub (边界约束条件),一、多目标优化问题数学模型,各分目标函数,二、优化函数使用格式 x,fval,exitflag,output, grad,hessian= fminimax(fun,x0

37、, A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),设置优化选项参数,目标函数在最优解的海色矩阵,返回目标函数在最优解的梯度,优化算法信息的一个数据结构,返回算法的终止标志,返回目标函数的最优值,返回目标函数的最优解,附加参数,非线性约束条件的函数名,设计变量的下界和上界,线性等式约束的常数向量,线性等式约束的系数矩阵,线性不等式约束的常数向量,线性不等式约束的系数矩阵,无定义时以空矩阵 符号“ ”代替,1.6.2 函数fminimax,初始点,目标函数文件名,三、例题,已知直径为1单位长度的圆柱梁,要求将它制成矩形截面梁,满足重量最轻和强度最大的条件,试确定矩形截面

38、尺寸。解:(1)建立优化设计的数学模型设计变量:矩形截面的宽和高X=x1,x2T目标函数: 重量截面积: 弯曲强度 矩形截面矩量:,1.6.2 函数fminimax,minf1(X)=x1x2,r =1,x1,x2,约束条件:含性能约束和边界约束,变量x1的上下限,变量x2的上下限,等式约束,性 能 约 束,边 界 约 束,1.6.2 函数fminimax,三、例题,(2)编制优化设计的M文件,x,fval,exitflag,output, grad,hessian= fminimax(fun,x0, A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),%矩形截面梁两目标

39、优化设计的目标函数文件 function f=JXL_2mb_MB(x) f(1)=x(1)*x(2); %f1:梁的截面积 f(2)=-x(1)*x(2)2/6; %f2:梁的截面矩量,%矩形截面梁两目标优化设计的约束函数文件 function c,ceq=JXL_2mb_YS(x) ceq=x(1)2+x(2)2-1; %非线性等式约束 c=; %所有非线性不等式约束,%矩形截面梁两目标优化设计 x0=1;1; lb=0;0; ub=1;1; xopt,fopt=fminimax(JXL_2mb_MB,x0,lb,ub,JXL_2mb_YS),(3)运行结果,Optimization te

40、rminated successfully: xopt =0.70710.7071 fopt =0.5000 -0.0589, , , , ,控制参数options,1,2,控制参数options,1,2,# GUI优化工具,#.1 启动 命令行输入optimtool;Start-Toolboxes-Optimization-Optimization tool(optimtool)。 #.2 界面 图一:GUI优化工具的界面分为三块: 最左边是优化问题的描述及计算结果显示,中间为优化选项的设置,右边是帮助(可隐藏,右上角的)。,#.3 使用步骤 选择求解器solver和优化算法algorith

41、m; 选定目标函数(objective function); 设定目标函数的相关参数; 设置优化选项; 单击“start”按钮,运行求解; 查看求解器的状态和求解结果; 将目标函数、选项和结果导入导出。 具体的如图二所示:,图二:步骤示意图,#.4 应用实例,#.4.1 无约束优化(fminunc求解器) 求f(x)=x2+4*x-6极小值,初始点取x=0。 解:首先建立目标函数文件FunUnc.m文件: function y=FunUnc(x) y=x2+4*x-6; 然后启动优化工具(如图):,Algorithm有两个选择:Large scale和Medium scale,设置完参数点击s

42、tart即可得到如图中的结果。 #.4.2 无约束优化(fminsearch求解器) 求f(x)=|x2-3*x+2|的极小值,初始点取x=-7,比较fminunc和fminsearch的差别。 解:启动优化工具; 用fminunc时设置参数如图:,点击start得到结果。 用fminsearch时如下图:,用fminunc时结果是1.5,而用fminsearch时结果是2。计算原等式有极小值为2,由此有对于非光滑优化问题fminunc可能求不到正确的结果,而fminsearch却能很好地解决这类问题的求解。 #.4.3 约束优化(fmincon求解器) 可用算法有Trust region r

43、eflective(信赖域反射算法)、Active set(有效集算法)、Interior point(内点算法)。 求f(x)=-x1*x2*x3的极小值,约束条件是-x1-2*x2-2*x3=0且x1+2*x2+2*x3=72,初始点(10,10,10)。 解:首先建M文件,约定FunUnc(x)=-x(1)*x(2)*x(3): function y=FunUnc(x) y=-x(1)*x(2)*x(3); 启动优化工具,设置参数如图:,#.4.4 非线性最小二乘优化(lsqnonlin求解器)求minS=(x2+x-1)2+(2*x2-3)2 ,初始点为x=5 。解:启动优化工具,设置参数,点start得结果如下图所示;,#.4.5 线性规划(linprog求解器)略,f处输入函数多项式的系数。基本方法如前面几类。 #.4.6 智能优化算法(ga求解器)略,要输入变量的个数。基本方法如前面几类。,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报