【摘要】:半无限有约束的多元函数最优解问题的标准形式为:其中,x,b,beq都是向量;A,Aeq是矩阵;C,Ceq,Ki是返回向量的函数。,wn通常是长度为2的向量。在MTALAB 5.x中,使用函数fseminf解决这类问题。
半无限有约束的多元函数最优解问题的标准形式为:
其中,x,b,beq都是向量;A,Aeq是矩阵;C(x),Ceq(x),Ki(x,wi)是返回向量的函数。f(x)为目标函数;f(x),C(x),Ceq(x)是非线性函数;Ki(x,wi)为半无限约束;w1,w2,…,wn通常是长度为2的向量。
在MTALAB 5.x中,使用函数fseminf解决这类问题。
函数fseminf格式:
参数说明:
x0为初始估计值;
fun为目标函数,其定义方式与前面的相同;
A,b由线性不等式约束A·x≤b确定,如果没有,则A=[ ],b=[ ];
Aeq,beq由线性等式约束Aeq·x=beq确定,如果没有,则Aeq=[ ],beq=[ ];
lb,ub由变量x的范围lb≤x≤ub确定;
options为优化参数;
ntheta为半无限约束的个数;
seminfcon用来确定非线性约束向量C和Ceq及无限约束的向量K1,K2,…,Kn,通过指定函数柄来使用,如:(www.daowen.com)
先建立非线性约束和半无限约束函数文件,并保存为myinfcon.m:
例5.18 求下面一维情形的最优化问题
解:将约束方程化为标准形式:
先建立非线性约束和半无限约束函数文件,并保存为mycon.m:
然后在MATLAB命令窗口或编辑器中建立m文件:
结果为:
例5.19 求下面二维情形的最优化问题。
初始点为x0=[0.25,0.25,0.25]。
解:先建立非线性和半无限约束函数文件,并保存为mycon.m:
然后在MATLAB命令窗口键入命令:
结果为:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
有关运筹学实验指导及MATLAB程序设计的文章