Matlab机械优化设计实例教程

上传人:一*** 文档编号:243145530 上传时间:2024-09-16 格式:PPT 页数:31 大小:129.50KB
返回 下载 相关 举报
Matlab机械优化设计实例教程_第1页
第1页 / 共31页
Matlab机械优化设计实例教程_第2页
第2页 / 共31页
Matlab机械优化设计实例教程_第3页
第3页 / 共31页
点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,浙师大工学院机械系,现代设计理论与方法,*,MATLAB,机械优化设计实例指导教程,浙师大工学院机械系,1,利用,Matlab,的优化工具箱,可以求解线性规划、非线性规划和多目标规划问题。具体而言,包括线性、非线性最小化,最大最小化,二次规划,半无限问题,线性、非线性方程(组)的求解,线性、非线性的最小二乘问题。另外,该工具箱还提供了线性、非线性最小化,方程求解,曲线拟合,二次规划等问题中大型课题的求解方法,为优化方法在工程中的实际应用提供了更方便快捷的途径。,概 述,浙师大工学院机械系,2,1.1,优化工具箱中的函数,优化工具箱中的函数包括下面几类:,最小化函数,函,数,描,述,fminbnd,有边界的标量非线性最小化,linprog,线性规划,fminsearch,fminunc,无约束非线性最小化,fminimax,最大最小化,fmincon,有约束的非线性最小化,quadprog,二次规划,fgoalattain,多目标达到问题,浙师大工学院机械系,3,1.2,有边界非线性最小化,函数, fminbnd,功能:找到固定区间内单变量函数的最小值。,格式, x = fminbnd(fun,x1,x2),x = fminbnd(fun,x1,x2,options),x,fval = fminbnd(,),x,fval,exitflag = fminbnd(,),x,fval,exitflag,output = fminbnd(,),应用背景,给定区间,x1x0,表示函数收敛于解,x,,,exitflag=0,表示超过函数估值或迭代的最大数字,,exitflag0,表示函数不收敛于解,x,;若,lambda=lower,表示下界,lb,,,lambda=upper,表示上界,ub,,,lambda=,ineqlin,表示不等式约束,,lambda=,eqlin,表示等式约束,,lambda,中的非,0,元素表示对应的约束是有效约束;,output=iterations,表示迭代次数,,output=algorithm,表示使用的运算规则,,output=,cgiterations,表示,PCG,迭代次数。,1.3,线性规划及其优化函数,浙师大工学院机械系,12,1.3,线性规划及其优化函数,应用举例,求使函数 取最小值的,x,值,,且满足约束条件:,浙师大工学院机械系,13,1.3,线性规划及其优化函数,代码,f = -5; -4; -6;,A = 1 -1 1;3 2 4;3 2 0;,b = 20; 42; 30;,lb = zeros(3,1);,x,fval = linprog(f,A,b,lb),结果,x =,0.0000,15.0000,3.0000,fval =,-78.0000,浙师大工学院机械系,14,应用实例, ,例三,生产决策问题,某厂生产甲乙两种产品,已知制成一吨产品甲需用资源,A 3,吨,资源,B 4m3,;制成一吨产品乙需用资源,A 2,吨,资源,B 6m3,,资源,C 7,个单位。若一吨产品甲和乙的经济价值分别为,7,万元和,5,万元,三种资源的限制量分别为,90,吨、,200m3,和,210,个单位,试决定应生产这两种产品各多少吨才能使创造的总经济价值最高?,令生产产品甲的数量为,x1,,生产产品乙的数量为,x2,。由题意可以建立下面的模型:,该模型中要求目标函数最大化,需要按照,Matlab,的要求进行转换,即目标函数为,首先输入下列系数:,f = -7;-5;,A = 3 2,4 6,0 7;,1.3,线性规划及其优化函数,浙师大工学院机械系,15,b = 90; 200; 210;,lb = zeros(2,1);,然后调用,linprog,函数:,x,fval,exitflag,output = linprog(f,A,b,lb),x =,14.0000,24.0000,fval =,-218.0000,exitflag =,1,output =,iterations: 5,cgiterations: 0,algorithm: lipsol,由上可知,生产甲种产品,14,吨、乙种产品,24,吨可使创建的总经济价值最高。最高经济价值为,218,万元。,exitflag=1,表示过程正常收敛于解,x,处。,1.3,线性规划及其优化函数,浙师大工学院机械系,16,例四,生产计划的最优化问题,某工厂生产,A,和,B,两种产品,它们需要经过三种设备的加工,其工时如表,9-16,所示。设备一、二和三每天可使用的时间分别不超过,12,、,10,和,8,小时。产品,A,和,B,的利润随市场的需求有所波动,如果预测未来某个时期内,A,和,B,的利润分别为,4,和,3,千元,/,吨,问在那个时期内,每天应安排产品,A,、,B,各多少吨,才能使工厂获利最大?,表,1,生产产品工时表,产 品,设备一,设备二,设备三,A,(小时,/,吨),3,3,4,B,(小时,/,吨),4,3,2,设备每天最多可工作时数(小时),12,10,8,设每天应安排生产产品,A,和,B,分别为,x1,吨和,x2,吨,由题意建立下面的数学模型:,首先转换目标函数为标准形式:,输入下列系数:,1.3,线性规划及其优化函数,浙师大工学院机械系,17,f = -4;-3;,A=3 4,3 3,4 2;,b=12;10;8;,lb = zeros(2,1);,然后调用,linprog,函数:,x,fval,exitflag,output,lambda = linprog(f,A,b,lb);,x =,0.8000,2.4000,fval =,-10.4000,所以,每天生产,A,产品,0.80,吨、,B,产品,2.40,吨可使工厂获得最大利润。,1.3,线性规划及其优化函数,浙师大工学院机械系,18,例五,工件加工任务分配问题,某车间有两台机床甲和乙,可用于加工三种工件。假定这两台机床的可用台时数分别为,700,和,800,,三种工件的数量分别为,300,、,500,和,400,,且已知用三种不同机床加工单位数量的不同工件所需的台时数和加工费用(如表,2,所示),问怎样分配机床的加工任务,才能既满足加工工件的要求,又使总加工费用最低?,表,2,机床加工情况表,机床类型,单位工作所需加工台时数,单位工件的加工费用,可用,台时数,工件,1,工件,2,工件,3,工件,1,工件,2,工件,3,甲,0.4,1.1,1.0,13,9,10,700,乙,0.5,1.2,1.3,11,12,8,800,设在甲机床上加工工件,1,、,2,和,3,的数量分别为,x1,、,x2,和,x3,,在乙机床上加工工件,1,、,2,和,3,的数量分别为,x4,、,x5,和,x6,。根据三种工种的数量限制,有,浙师大工学院机械系,19,x1+x4=300 (,对工件,1),x2+x5=500 (,对工件,2),x3+x6=400 (,对工件,3),再根据机床甲和乙的可用总台时限制,可以得到其它约束条件。以总加工费用最少为目标函数,组合约束条件,可以得到下面的数学模型:,首先输入下列系数:,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 = 700; 800;,Aeq,=1 0 0 1 0 0,0 1 0 0 1 0,0 0 1 0 0 1;,beq,=300 500 400;,lb = zeros(6,1);,浙师大工学院机械系,20,然后调用,linprog,函数:,x,fval,exitflag,output,lambda =,linprog(f,A,b,Aeq,beq,lb,);,x =,0.0000,500.0000,0.0000,300.0000,0.0000,400.0000,fval =,1.1000e+004,exitflag =,1,可见,在甲机床上加工,500,个工件,2,,在乙机床上加工,300,个工件,1,、加工,400,个工件,3,可在满足条件的情况下使总加工费最小。最小费用为,11000,元。收敛正常。,浙师大工学院机械系,21,例六,确定职工编制问题,某厂每日八小时的产量不低于,1800,件。为了进行质量控制,计划聘请两种不同水平的检验员。一级检验员的标准为:速度,25,件,/,小时,正确率,98%,,计时工资,4,元,/,小时;二级检验员的标准为:速度,15,件,/,小时,正确率,95%,,计时工资,3,元,/,小时。检验员每错检一次,工厂要损失,2,元。现有可供厂方聘请的检验员人数为一级,8,人和二级,10,人。为使总检验费用最省,该工厂应聘一级、二级检验员各多少名?,设需要一级和二级检验员的人数分别为,x1,名和,x2,名,由题意可以建立下面的模型:,利用,Matlab,进行求解之前需要将第三个约束条件进行转换,两边取负以后得到,首先输入下列系数:,f= 40;36;,A= 1 0,0 1,-5 -3;,b=8;10;-45;,lb = zeros(2,1);,浙师大工学院机械系,22,然后调用,linprog,函数:,x,fval,exitflag,output,lambda = linprog(f,A,b,lb);,x =,8.0000,1.6667,fval =,380.0000,exitflag =,1,可见,招聘一级检验员,8,名、二级检验员,2,名可使总检验费最省,约为,380.00,元。计算收敛。,浙师大工学院机械系,23,1.4,无约束非线性及其优化函数,函数,fminunc,格式,x = fminunc(fun,x0),x = fminunc(fun,x0,options),x,fval =,fminunc,(),x,fval,exitflag, =,fminunc,(),x,fval,exitflag,output, =,fminunc,(),x,fval,exitflag,output,grad, =,fminunc,(),x,fval,exitflag,output,grad,hessian, =,fminunc,(),浙师大工学院机械系,24,说明,fun,是目标函数,options,设置优化选项参数,fval,返回目标函数在最优解,x,点的函数值,exitflag,返回算法的终止标志,output,返回优化算法信息的一个数据结构,grad,返回目标函数在最优解,x,点的梯度,hessian,返回目标函数在最优解,x,点的,Hessian,矩阵值,1.4,无约束非线性及其优化函数,浙师大工学院机械系,25,应用举例,的最小值,代码,%,首先编写目标的,.m,文件,function f=,myfun(x,),f=3*x(1)2+2*x(1)*x(2)+x(2)2,%,然后调用函数,fminunc,%,起始点,x0=1,1;,x,fval=fminunc(myfun,x0),结果,x = 1.0e-008 *,-0.7512 0.2479,fval =,1.3818e-016,1.4,无约束非线性及其优化函数,浙师大工学院机械系,26,函数,fminsearch,格式, x = fminsearch(fun,x0),x = fminsearch(fun,x0,options),x,fval, =,fminsearch,(),x,fval,exitflag, =,fminsearch,(),x,fval,exitflag,output, =,fminsearch,(),1.4,无约束非线性及其优化函数,浙师大工学院机械系,27,说明,fun,是目标函数,options,设置优化选项参数,fval,返回目标函数在最优解,x,点的函数值,exitflag,返回算法的终止标志,output,返回优化算法信息的一个数据结构,1.4,无约束非线性及其优化函数,浙师大工学院机械系,28,1.4,无约束非线性及其优化函数,应用举例,求函数 取最小值时的值。,代码,%,首先编写,f(x),的,.m,文件,function f=,myfun(x,),f=sin(x)+3;,%,然后调用函数,fminsearch,x0=2 ; %,起始点,x,fval,=fminsearch(myfun,x0),结果, x = 4.7124,fval,= 2.0000,浙师大工学院机械系,29,局限性,:,1,目标函数必须是连续的。,fminunc,函数有时会给出局部最优解。,2,fminunc,函数只对实数进行优化,即,x,必须为实数,而且,f(x,),必须返回实数。当,x,为复数时,必须将它分解为实部和虚部。,1,应用,fminsearch,函数可能会得到局部最优解。,2,fminsearch,函数只对实数进行最小化,即,x,必须由实数组成,,f(x,),函数必须返回实数。如果,x,时复数,必须将它分为实数部和虚数部两部分。,注意:当函数的阶数大于,2,时,使用,fminunc,比,fminsearch,更有效,但当所选函数高度不连续时,使用,fminsearch,效果较好。,浙师大工学院机械系,30,本节结束,Thank You!,浙师大工学院机械系,31,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!