1 / 5
文档名称:

求解非线性规划.doc

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

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

分享

预览

求解非线性规划.doc

上传人:phl806 2017/9/4 文件大小:202 KB

下载得到文件列表

求解非线性规划.doc

文档介绍

文档介绍:非线性规划的实例与定义
如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。一般说来,解非线性规划要比解线性规划问题困难得多。而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围。
线性规划与非线性规划的区别
如果线性规划的最优解存在,其最优解只能在其可行域的边界上达到(特别是可行域的顶点上达到);而非线性规划的最优解(如果最优解存在)则可能在其可行域的任意一点达到。
非线性规划的Matlab解法
Matlab中非线性规划的数学模型写成以下形式

,
其中是标量函数,是相应维数的矩阵和向量,是非线性向量函数。
Matlab中的命令是
X=FMINCON(FUN,X0,A,B,Aeq,Beq,LB,UB,NONLCON,OPTIONS)
它的返回值是向量,其中FUN是用M文件定义的函数;X0是的初始值;A,B,Aeq,Beq定义了线性约束,如果没有等式约束,则A=[],B=[],Aeq=[],Beq=[];LB和UB是变量的下界和上界,如果上界和下界没有约束,则LB=[],UB=[],如果无下界,则LB=-inf,如果无上界,则UB=inf;NONLCON是用M文件定义的非线性向量函数;OPTIONS定义了优化参数,可以使用Matlab缺省的参数设置。
例2 求下列非线性规划问题
(i)
function f=fun1(x);
f=x(1)^2+x(2)^2+8;

function [g,h]=fun2(x);
g=-x(1)^2+x(2);
h=-x(1)-x(2)^2+2; %等式约束
(ii)在Matlab的命令窗口依次输入
options=optimset;
[x,y]=fmincon('fun1',rand(2,1),[],[],[],[],zeros(2,1),[], ...
'fun2', options)
就可以求得当时,最小值。
求解非线性规划的基本迭代格式
记(NP)的可行域为。
若,并且
则称是(NP)的整体最优解,是(NP)的整体最优值。如果有
则称是(NP)的严格整体最优解,是(NP)的严格整体最优值。
若,并且存在的邻域,使
,
则称是(NP)的局部最优解,是(NP)的局部最优值。如果有
则称是(NP)的严格局部最优解,是(NP)的严格局部最优值。
由于线性规划的目标函数为线性函数,可行域为凸集,因而求出的最优解就是整个可行域上的全局最优解。非线性规划却不然,有时求出的某个解虽是一部分可行域上的极值点,但并不一定是整个可行域上的全局最优解。
对于非线性规划模型(NP),可以采用迭代方法求它的最优解。迭代方法的基本思想是:从一个选定的初始点出发,按照某一特定的迭代规则产生一个点列,使得当是有穷点列时,其最后一个点是(NP)的最优解;当是无穷点列时,它有极限点,并且其极限点是(NP)的最优解。
设是某迭代方法的第轮迭代点,是第轮迭代点,记
(1)
这里,显然是由点与点确定的方向。式(1)就是求解非线性规划模型(NP)的基本迭代格式。
通常,我们把基本迭代格式(1)中的称为