首页 理论教育 如何处理约束非线性规划问题

如何处理约束非线性规划问题

时间:2023-06-26 理论教育 版权反馈
【摘要】:求解约束非线性规划问题的MATLAB函数是fmincon,它要求目标函数、约束函数和函数梯度都是连续的,而且该函数是根据给出的初始值来进行梯度步长收敛的,一般只能搜索到局部最优解。约束非线性规划问题的数学模型表示为函数fmincon的调用格式是:其中,输出参数有:● xopt是返回目标函数的最优解。

如何处理约束非线性规划问题

求解约束非线性规划问题的MATLAB函数是fmincon,它要求目标函数、约束函数和函数梯度都是连续的,而且该函数是根据给出的初始值来进行梯度步长收敛的,一般只能搜索到局部最优解。约束非线性规划问题的数学模型表示为

978-7-111-48334-2-Part01-379.jpg

函数fmincon的调用格式是:

978-7-111-48334-2-Part01-380.jpg

其中,输出参数有:

● xopt是返回目标函数的最优解。

● fopt是返回目标函数在最优解x点的函数值。

● exitflag是返回算法的终止标志。

● output是返回优化算法的信息的一个数据结构

● hessian是返回目标函数在最优解x点的Hessian矩阵值。

输入参数有:

● fun是调用目标函数的函数文件名。

x0是初始点。

● 线性不等式约束条件的系数矩阵A和常数向量b

● 线性等式约束条件的系数矩阵Aeq和常数向量beq

● 设计变量X下界向量Lb和上界向量Ub

● ‘Nlc’是定义非线性约束条件的函数名。(www.xing528.com)

● options是设置优化选项参数,见表8-1。

● P1、P2等是传递给fun的附加参数。

参数AbAeqbeqLbUb,options如果没有定义,可用空矩阵符号“[]”代替。

例8-11 求解约束非线性规划问题

978-7-111-48334-2-Part01-381.jpg

在该约束非线性规划问题的数学模型中,g1X)≤0和g2X)≤0是非线性不等式约束,g3X)≤0是线性不等式约束,g4X)≤0、g5X)≤0、g6X)≤0和g7X)≤0是设计变量的边界条件

978-7-111-48334-2-Part01-382.jpg

978-7-111-48334-2-Part01-383.jpg

说明:在优化函数fmincon的输入参数“options”命令中各个选项的意义是:

largescaleoff表示关闭了大规模方式。

display用来控制计算过程的显示。

iter表示显示优化过程的每次计算结果(off不显示所有输出,final仅输出最后结果)。

M文件运行结果:

978-7-111-48334-2-Part01-384.jpg

978-7-111-48334-2-Part01-385.jpg

说明:M文件运行的输出信息表明,使用拟牛顿线搜索算法,经过8次迭代,得到目标函数的极小点978-7-111-48334-2-Part01-386.jpg和最优函数值978-7-111-48334-2-Part01-387.jpg由于978-7-111-48334-2-Part01-388.jpg10-1978-7-111-48334-2-Part01-389.jpg非常接近零,可见约束最优解X*位于两个非线性不等式约束的交集上。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈