文档介绍:非线性规划
实验目的
实验内容
2、掌握用数学软件求解优化问题。
1、直观了解非线性规划的基本内容。
1、非线性规划的基本理论。
4、实验作业。
2、用数学软件求解非线性规划。
3、钢管订购及运输优化模型
*非线性规划的基本解法
非线性规划的基本概念
非线性规划
返回
定义如果目标函数或约束条件中至少有一个是非线性函数时的最优化问题就叫做非线性规划问题.
非线性规划的基本概念
一般形式:
(1)
其中, 是定义在 En 上的实值函数,简记:
其它情况: 求目标函数的最大值或约束条件为小于等于零的情况,都可通过取其相反数化为上述一般形式.
计算机求解方法
1. ,定义目标函数F(X):
function f=fun(X);
f=F(X);
其中X为n维变元向量,G(X)与Ceq(X)均为非线性函数组成的向量,其它变量的含义与线性规划、,基本步骤分三步:
3. ,命令的基本格式如下:
(1) x=fmincon(‘fun’,X0,A,b)
(2) x=fmincon(‘fun’,X0,A,b,Aeq,beq)
(3) x=fmincon(‘fun’,X0,A,b, Aeq,beq,VLB,VUB)
(4) x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’)
(5)x=fmincon(‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’,options)
(6) [x,fval]= fmincon(...)
(7) [x,fval,exitflag]= fmincon(...)
(8)[x,fval,exitflag,output]= fmincon(...)
输出极值点
M文件
迭代的初值
参数说明
变量上下限
注意:
[1] fmincon函数提供了大型优化算法和中型优化算法。默认时,若在fun函数中提供了梯度(options参数的GradObj设置为’on’),并且只有上下界存在或只有等式约束,fmincon函数将选择大型算法。当既有等式约束又有梯度约束时,使用中型算法。
[2] fmincon函数的中型算法使用的是序列二次规划法。在每一步迭代中求解二次规划子问题,并用BFGS法更新拉格朗日Hessian矩阵。
[3] fmincon函数可能会给出局部最优解,这与初值X0的选取有关。
1、写成标准形式:
.
2x1+3x2 6
x1+4x2 5
x1,x2 0
例2
2、先建立M-文件 :
function f=fun3(x);
f=-x(1)-2*x(2)+(1/2)*x(1)^2+(1/2)*x(2)^2
MATLAB(youh2)
3、:
x0=[1;1];
A=[2 3 ;1 4]; b=[6;5];
Aeq=[];beq=[];
VLB=[0;0]; VUB=[];
[x,fval]=fmincon('fun3',x0,A,b,Aeq,beq,VLB,VUB)
4、运算结果为:
x =
fval = -