MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)

本系列教程来源于出版书籍《基于MATLAB编程基础与典型应用书籍》,如涉及版权问题,请联系:156204968@qq.com。 出版社:人民邮电出版社, 页数:525。

本系列教程目前基于MATLABR2006a,可能对于更高级版本的功能和函数有差异,教程中如有问题,请联系:156204968@qq.com

11.2.5 “半无限”多元函数优化问题

“半无限”多元函数优化问题在Matlab优化工具箱中描述为以下的标准形式:

《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》
其中,《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》表示非线性不等式和等式约束;《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》表示线性不等式和等式约束。在Matlab优化工具箱中,使用fseminf函数求解“半无限”多元函数优化问题,其调用格式如下:

x = fseminf(fun,x0,ntheta,seminfcon) 
x = fseminf(fun,x0,ntheta,seminfcon,A,b) 
x = fseminf(fun,x0,ntheta,seminfcon,A,b,Aeq,beq) 
x = fseminf(fun,x0,ntheta,seminfcon,A,b,Aeq,beq,lb,ub) 
x = fseminf(fun,x0,ntheta,seminfcon,A,b,Aeq,beq,lb,ub,options) 
[x,fval] = fseminf(...) 
[x,fval,exitflag] = fseminf(...) 
[x,fval,exitflag,output] = fseminf(...) 
[x,fval,exitflag,output,lambda] = fseminf(...)

在fseminf函数调用中,ntheta为《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》约束条件的个数,seminfcon函数用来定义《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》和非线性约束条件,返回非线性不等式和等式约束,《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》的大小。fseminf函数退出标志exitflag取值及相应的含义描述如表11.9所示。在使用fseminf函数求解“半无限”多元函数优化问题中,需要定义目标函数fun,《MATLAB编程与应用系列-第11章 Matlab在工程优化中的应用(6)》和非线性约束函数seminfcon。
表11.9 fseminf函数exitflag标志及相应含义描述

exitflag标志含义描述
1目标函数收敛于最优解
4搜索方向幅值小于给定容差或者约束违背小于给定容差TolCon
5方向导数幅值小于给定容差或者约束违背小于给定容差TolCon
0迭代次数超过最大迭代次数MaxIter或者函数计算次数超过给定的MaxFunEvals
-1算法因为输出函数终止
-2无可行解

【例11.10】求解“半无限”多元约束优化问题

作者:德特数据
联系方式:156204968@qq.com

    原文作者:德特数据
    原文地址: https://www.jianshu.com/p/6292a9c855ea
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞