matlab上机作业,matlab上机内容及作业.doc

41528d3028836879cd698677c3999917.gifmatlab上机内容及作业.doc

无约束优化求解函数FMINSEARCH和FMINUNC求解无约束非线性优化问题的函数有FMINSEARCH函数、FMINUNC函数。函数FMINSEARCH和FMINUNC功能相同,但FMINUNC函数可以得到目标函数在最优解处的梯度和HESSIAN矩阵值。无约束优化数学模型为MINFXX∈RN求解无约束非线性优化问题的步骤为第一步先编写目标函数的M文件;第二步再在命令窗口中调用相应的优化函数。1、FMINSEARCH函数调用格式为X,FVALFMINSEARCHMYFUN,X0输出参数的含义X返回最优解的设计变量的值;FVAL在最优设计变量值时,目标函数的最小值;EXITFLAG返回算法终止的标志,有以下几种情况,>0表示算法收敛于最优解处;=0表示算法已经达到迭代的最大次数;<0表示算法不收敛。OUTPUT返回优化算法信息的一个数据结构,有以下信息OUTPUTITERATION表示迭代次数OUTPUTALGORITHM表示所采用的算法OUTPUTFUNCCOUNT表示函数评价次数输入参数的含义MYFUN目标函数的M文件,在其前要加“”,或表示为 MYFUN ,MYFUN自己可以任意命名;X0在调用该优化函数时,需要先对设计变量赋一个初始值;2、FMINUNC函数的调用格式X,FVALFMINUNCMYFUN,X0GRAD返回目标函数在最优解处的梯度信息;HESSIAN返回目标函数在最优解处的HESSIAN矩阵信息。其余含义同上。3、实例已知某一优化问题的数学模型为MINFX3X122X1X2X22X∈RN用MATLAB程序编写的代码为第一步首先编写目标函数的M文件,并保存为EXAMPLEFSEARCHM文件(先单击FILE菜单,后点击NEW命令中的MFILE,即可打开M文件编辑窗口进行代码的编辑,在英文状态下输入程序代码),代码为FUNCTIONFEXAMPLEFSEARCH(X)F3X122X1X2X22第二步在COMMAND窗口中调用FMINSEARCH函数,代码为X011赋初值X,FVALFMINSEARCHEXAMPLEFSEARCH,X0回车即可调用FMINSEARCH函数,得到结果输出最优解结果为X10E0080791402260分别为X1和X2的最优点的值(近似为0)FVAL15722E016对应最优点的最优目标函数值(近似为0)4、作业已知几个优化问题的数学模型分别为(1)MINFX01935X1X22X3246X4X∈R4(2)MINFXX13COSX2LOGX3)/EX1X∈R3(3)MINFX2X134X1X2310X1X2X33X∈R3试用MATLAB编程分别求解上述优化问题的最优解。(分别把步骤、代码、结果写在另一张纸上,作为作业交)其中COSX2在MATLAB应写为COSX2;LOGX3应为LOGX3;EX1应为EXPX1。二、求解线性优化问题的函数LINPROG1、LINPROG函数要求数学模型的形式在MATLAB优化工具箱中,用于求解线性规划的函数有LINPROG,要求的线性规划的数学模型的一般形式为MINFXFTXX∈RNSTAX≤BAEQXBEQLB≤X≤UB上式中,F表示目标函数中变量的系数向量,为列向量;A表示所有线性不等式约束的系数矩阵;B为所有线性不等式约束的不等式右面常数向量,为列向量;AEQ表示所有线性等式约束的系数矩阵;BEQ为所有线性等式约束的等式右面常数向量,为列向量;LB和UB分别表示为变量的上下限,为列向量。2、LINPROG函数的调用格式调用格式如下X,FVALLINPROGF,A,B,AEQ,BEQ,LB,UB上式中,A、B、AEQ、BEQ、LB、UB、X0、OPTIONS均为可选项,如果数学模型中无该项参数,则用代替。例如如果某一数学模型中没有等式约束,即无AEQ和BEQ参数,则调用的格式为X,FVALLINPROGF,A,B,,,LB,UB用LINPROG函数求解线性规划问题时,直接在MATLAB软件的COMMAND窗口中调用,先将各个输入参数在COMMAND窗口中赋值后,即可调用LINPROG函数。3、实例求使目标函数FX-5X1-4X2-6X3取最小值时的X的值,且满足约束条件为X1-X2+X3≤203X1+2X2+4X3≤423X1+2X2≤30X1≥0,X2≥0,X3≥0直接在MATLAB的COMMAND窗口输入下列代码,即可求解,过程如下F-5-4-6A1,-1,13,2,43,2,0B204230LBZEROS3,1X,FVAL,EXITFLAG,OUTPUTLINPROGF,A,B,,,LB,,结果输出为X0000150003000FVAL-780004、作业用LINPROG函数求下列数学模型的最优解。MINFX-7X1-5X2ST3X1+X2≤904X1+6X2≤200X1≤20X2≤30X1≥0,X2≥0三、求解二次规划问题的函数QUADPROG1、QUADPROG函数要求数学模型的形式在MATLAB优化工具箱中,用于求解线性规划的函数有QUADPROG,要求的线性规划的数学模型的一般形式为MINFX1/2XTHXFTXX∈RNSTAX≤BAEQXBEQLB≤X≤UB上式中,H表示目标函数中变量的二次项的系数矩阵;其余参数同LINPROG函数中的含义。2、QUADPROG函数的调用格式调用格式如下X,FVALQUADPROGH,F,A,B,AEQ,BEQ,LB,UB上式中,A、B、AEQ、BEQ、LB、UB均为可选项,如果数学模型中无该项参数,则用代替。例如如果某一数学模型中没有等式约束,即无AEQ和BEQ参数,则调用的格式为X,FVALQUADPROGH,F,A,B,,,LB,UB用QUADPROG函数求解二次规划问题时,直接在MATLAB软件的COMMAND窗口中调用,先将各个输入参数在COMMAND窗口中赋值后,即可调用QUADPROG函数。3、实例求使目标函数FX1/2X12+X22-X1X2-2X1-6X2取最小值时的X的值,且满足约束条件为X1+X2≤2-X1+2X2≤22X1+X2≤3X1≥0,X2≥0首先把目标函数写成以下形式FX1/2XTHXFTX,其中FX1/2X12+X22-X1X2-2X1-6X21/2(X12-X1X2-X2X1+2X22)-2X1-6X22221,T上式中H,F6直接在MATLAB的COMMAND窗口输入下列代码,即可求解,过程如下H1,1;1,2;F-26A1,1,;-1,2;2,1B223LBZEROS2,1X,FVALQUADPROGH,F,A,B,,,LB结果输出略。4、作业用QUADPROG函数求下列数学模型的最优解。MINFXX12+X22-10X1-16X2+89STX1-X2+1≥0X1≥010-X1≥0X2-1≥010-X2≥0X2-X10四、MATLAB求解非线性优化问题的函数FMINCON1、FMINCON函数要求数学模型的形式在MATLAB优化工具箱中,用于求解非线性规划的函数有FMINCON,要求的非线性规划的数学模型的一般形式为MINFXX∈RNSTAX≤BAEQXBEQLB≤X≤UBCX≤0CE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值