1 / 3
文档名称:

用matlab优化工具包解非线性规划.doc

格式:doc   大小:25KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

用matlab优化工具包解非线性规划.doc

上传人:精品小课件 2021/1/5 文件大小:25 KB

下载得到文件列表

用matlab优化工具包解非线性规划.doc

相关文档

文档介绍

文档介绍:用MATLAB优化工具包解非线性规划
用MATLAB优化工具包求解非线性规划时必须先化为如下形式:
         (NLP)
求解程序名为fmincon,其最简单的调用格式为:
x = fmincon('fun',x0,A1,b1) (用于不含有等式约束和上下解约束的问题)其最复杂的调用格式为:
[x,fval,exitflag,output,lambda,grad,hessian] =
fmincon('fun',x0,A1,b1,A2,b2,v1,v2,'nlcon',options,P1,P2, ...)
程序fmincon输出变量
其中输出变量的含义为:
1) x : 最优解
2) fval : 最优解处的函数值
3) exitflag : 程序结束时的状态指示:
>0:收敛
 0:函数调用次数或迭代次数达到最大值(该值在options中指定)
<0:不收敛
4) Output: 包含以下数据的一个结构变量
funcCount        函数调用次数
iterations       实际迭代次数
cgiterations     实际PCG迭代次数(大规模计算用)
algorithm        实际使用的算法
stepsize         最后迭代步长(中等规模计算用)
firstorderopt    一阶最优条件满足的情况(目标函数梯度的范数)
5) lambda: 包含以下数据(LAGRANGE乘子)的一个结构变量,总维数等于约束条件的个数,其非零分量对应于起作用的约束条件:
ineqlin   不等式约束的LAGRANGE乘子
eqlin     等式约束的LAGRANGE乘子
upper     上界约束的LAGRANGE乘子
lower     下界约束的LAGRANGE乘子
6) grad: 目标函数梯度
7) hessian: 目标函数的hessian矩阵
程序fmincon输入参数
其中输入变量的含义为:
x0为初始解(缺省时程序自动取x0=0)
A1,b1,A2,b2,v1,v2:含义见模型(NLP)
,当GradObj='on'时必须给出其梯度,当Hessian='on'时还必须给出其Jacobi矩阵,一般形式为
function [f,g,H] = fun(x)
f = ... % objective function value
if nargout > 1
g = ... % gradient of the function
if nargout > 2
H = ... % Hessian of the function
end
,GradConstr='on'时还给出梯度,一般形式为
function [c1,c2,GC1,GC2] = nlcon(x)
c1 = ... % nonlinear inequalities at x
c2 = ... % nonlinear equalities at x
if nargout > 2