欢迎来到天天文库
浏览记录
ID:58150359
大小:334.00 KB
页数:12页
时间:2020-04-11
《优化设计上机指导书2012.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《优化设计及有限元分析》上机指导书v2011上机指导书适用专业:机械工程课程代码:编写单位:机械工程学院编写人:杨昌明审核人:审批人:-11-《优化设计及有限元分析》上机指导书v2011目录实验一(实验代码1)……………………………………………………………………1实验二(实验代码2)……………………………………………………………………9注释………………………………………………………………………………………14主要参考文献…………………………………………………………………………………15-11-《优化设计及有限元分析》上机指导书v2011MATLABOptimizationT
2、oolbox应用基础专题Ⅰ单变量函数最小值问题(一维问题)一、上机目的:1、掌握一维搜索方法的基本概念、算法等知识点;2、熟悉Matlab软件环境及有关语句和函数的使用方法。二、原理和方法:函数fminbnd是用来寻找单变量函数在固定区间内的最小值点及最小值。MATLAB各工具箱的每个函数,包括优化工具箱函数,都有多种不同的调用格式。其调用格式可使用在线帮助系统查询。函数fminbnd最常用的调用格式为:[x,fval]=fminbnd(fun,x1,x2)%返回函数fun在区间x13、式字符串。三、上机内容与步骤:1、熟悉MATLAB软件环境,了解用户界面、掌握帮助系统使用等(重点)。2、如求解函数f(x)=sin(x)在区间[0,2p]内的最小值及最小值点,使用如下命令即可:>>[x,fval]=fminbnd(@sin,0,2*pi)%符号“@”表明目标函数为MATLAB自定义的正弦函数sin.m。x=4.7124%最小值点赋值给x。fval=-1.0000%最小值赋值给fval。3、如果目标函数并不是MATLAB自定义的函数,需要首先定义一个函数M文件,以该文件的名称来代替上述命令行中的“sin”部分。如希望求出在[0,1]内的最小值及最小值点,首4、先编写目标函数的M文件opt1.m,如下:functionf=myfun(x)%编写函数M文件时,上句代码中的“myfun”并不一定与文件名相同。f=(x^3+cos(x)+x*log(x))/exp(x)然后调用fminbnd函数,在命令窗口中输入:>>[x,fval]=fminbnd(@opt1,0,1)x=0.5223fval=0.3974%注意此处使用“opt1”而不是“myfun”。4、如果目标函数的表达式较为简单,也可以使用表达式的字符串而不必编写目标函数。如上例也可以使用[x,fval]=fminbnd('(x^3+cos(x)+x*log(x))/exp(x5、)',0,1)实现。注:在MATLAB软件中,function为关键字,%为注释符号,>>为命令窗口中的提示符。-11-《优化设计及有限元分析》上机指导书v2011专题Ⅱ线性方程组的应用一、上机目的:1、了解线性规划问题及可行解、最优解的概念;2、掌握Matlab软件关于求解线性规划的语句和方法。二、原理和方法:在工程实践中,很多重要的实际问题都是线性的(至少能够用线性函数很好的近似表示),所以我们一般把这些问题化为线性的目标函数和约束条件进行分析,通常将目标函数和约束都是线性表达式的规划问题称为线性规划。其一般形式是:矩阵形式表示为:线性规划的可行解是满足约束条件的解;线6、性规划的最优解是使目标函数达到最优的可行解。一般求解线性规划的常用方法是单纯形法和改进的单纯形法,这类方法的基本思路是先求得一个可行解,检验是否为最优解;若不是,可用迭代的方法找到另一个更优的可行解,经过有限次迭代后,可以找到可行解中的最优解或者判定无最优解。三、上机内容与步骤:在Matlab优化工具箱中,linprog函数是使用单纯形法求解下述线性规划问题的函数。命令格式为:其中:A为不等式约束条件矩阵,b,c分别为目标函数的系数向量和不等式-11-《优化设计及有限元分析》上机指导书v2011约束条件中最右边的数值向量;也可设置解向量的上界vlb和下界vub,即解向量必须7、满足vlb<=x<=vub;还可预先设置初始解向量x0。如没有不等式约束,而只有等式约束条件时,A=[],b=[];aeq与beq分别为等式约束矩阵;输出的结果:x表示最优解向量;fval表示最优值。某一线性规划问题,如下:考虑到linprog函数只解决形式如下的线性规划。所以先要将线性规划变换为如下形式:建立M文件如下(如以文件名optest保存):c=[-3;1;1];A=[1-21;4-1-2];b=[11;-3];aeq=[20-1];beq=-1;vlb=[0;0;0];[x,fval]=linprog(
3、式字符串。三、上机内容与步骤:1、熟悉MATLAB软件环境,了解用户界面、掌握帮助系统使用等(重点)。2、如求解函数f(x)=sin(x)在区间[0,2p]内的最小值及最小值点,使用如下命令即可:>>[x,fval]=fminbnd(@sin,0,2*pi)%符号“@”表明目标函数为MATLAB自定义的正弦函数sin.m。x=4.7124%最小值点赋值给x。fval=-1.0000%最小值赋值给fval。3、如果目标函数并不是MATLAB自定义的函数,需要首先定义一个函数M文件,以该文件的名称来代替上述命令行中的“sin”部分。如希望求出在[0,1]内的最小值及最小值点,首
4、先编写目标函数的M文件opt1.m,如下:functionf=myfun(x)%编写函数M文件时,上句代码中的“myfun”并不一定与文件名相同。f=(x^3+cos(x)+x*log(x))/exp(x)然后调用fminbnd函数,在命令窗口中输入:>>[x,fval]=fminbnd(@opt1,0,1)x=0.5223fval=0.3974%注意此处使用“opt1”而不是“myfun”。4、如果目标函数的表达式较为简单,也可以使用表达式的字符串而不必编写目标函数。如上例也可以使用[x,fval]=fminbnd('(x^3+cos(x)+x*log(x))/exp(x
5、)',0,1)实现。注:在MATLAB软件中,function为关键字,%为注释符号,>>为命令窗口中的提示符。-11-《优化设计及有限元分析》上机指导书v2011专题Ⅱ线性方程组的应用一、上机目的:1、了解线性规划问题及可行解、最优解的概念;2、掌握Matlab软件关于求解线性规划的语句和方法。二、原理和方法:在工程实践中,很多重要的实际问题都是线性的(至少能够用线性函数很好的近似表示),所以我们一般把这些问题化为线性的目标函数和约束条件进行分析,通常将目标函数和约束都是线性表达式的规划问题称为线性规划。其一般形式是:矩阵形式表示为:线性规划的可行解是满足约束条件的解;线
6、性规划的最优解是使目标函数达到最优的可行解。一般求解线性规划的常用方法是单纯形法和改进的单纯形法,这类方法的基本思路是先求得一个可行解,检验是否为最优解;若不是,可用迭代的方法找到另一个更优的可行解,经过有限次迭代后,可以找到可行解中的最优解或者判定无最优解。三、上机内容与步骤:在Matlab优化工具箱中,linprog函数是使用单纯形法求解下述线性规划问题的函数。命令格式为:其中:A为不等式约束条件矩阵,b,c分别为目标函数的系数向量和不等式-11-《优化设计及有限元分析》上机指导书v2011约束条件中最右边的数值向量;也可设置解向量的上界vlb和下界vub,即解向量必须
7、满足vlb<=x<=vub;还可预先设置初始解向量x0。如没有不等式约束,而只有等式约束条件时,A=[],b=[];aeq与beq分别为等式约束矩阵;输出的结果:x表示最优解向量;fval表示最优值。某一线性规划问题,如下:考虑到linprog函数只解决形式如下的线性规划。所以先要将线性规划变换为如下形式:建立M文件如下(如以文件名optest保存):c=[-3;1;1];A=[1-21;4-1-2];b=[11;-3];aeq=[20-1];beq=-1;vlb=[0;0;0];[x,fval]=linprog(
此文档下载收益归作者所有