Matlab优化工具箱基本用法要点解析.docVIP

  • 9
  • 0
  • 约1.1万字
  • 约 16页
  • 2016-04-27 发布于湖北
  • 举报
Matlab 优化工具箱 类 型 模 型 基本函数名 一元函数极小 Min F(x)s.t.x1xx2 x=fminbnd(‘F’,x1,x2) 无约束极小 Min F(X) X=fminunc(‘F’,X0) X=fminsearch(‘F’,X0) 线性规划 Min s.t.AX=b X=linprog(c,A,b) 二次规划 Min xTHx+cTx s.t. Ax=b X=quadprog(H,c,A,b) 约束极小 (非线性规划) Min F(X) s.t. G(X)=0 X=fmincon(‘FG’,X0) 达到目标问题 Min r s.t. F(x)-wr=goal X=fgoalattain(‘F’,x,goal,w) 极小极大问题 Min max {Fi(x)} X {Fi(x)} s.t. G(x)=0 X=fminimax(‘FG’,x0) 变量 调用函数 描 述 f linprog,quadprog 线性规划的目标函数f*X 或二次规划的目标函数X’*H*X+f*X 中线性项的系数向量 fun fminbnd,fminsearch,fminunc, fmincon,lsqcurvefit,lsqnonlin, fgoalattain,fminimax 非线性优化的目标函数.fun必须为行命令对象或M文件、嵌入函数、或MEX文件的名称 H quadprog 二次规划的目标函数X’*H*X+f*X 中二次项的系数矩阵 A,b linprog,quadprog,fgoalattain, fmincon, fminimax A矩阵和b向量分别为线性不等式约束:中的系数矩阵和右端向量 Aeq,beq linprog,quadprog,fgoalattain, fmincon, fminimax Aeq矩阵和beq向量分别为线性等式约束: 中的系数矩阵和右端向量 vlb,vub linprog,quadprog,fgoalattain, fmincon,fminimax,lsqcurvefit, lsqnonlin X的下限和上限向量:vlb≤X≤vub X0 除fminbnd外所有优化函数 迭代初始点坐标 x1,x2 fminbnd 函数最小化的区间 options 所有优化函数 优化选项参数结构,定义用于优化函数的参数 x = bintprog(f, A, b, Aeq, Beq, x0, options) 0-1规划 用MATLAB优化工具箱解线性规划 命令:x=linprog(c,A,b) 2、模型: 命令:x=linprog(c,A,b,Aeq,beq) 注意:若没有不等式:存在,则令A=[ ],b=[ ]. 若没有等式约束, 则令Aeq=[ ], beq=[ ]. 3、模型: 命令:[1] x=linprog(c,A,b,Aeq,beq, VLB,VUB) [2] x=linprog(c,A,b,Aeq,beq, VLB,VUB, X0) 注意:[1] 若没有等式约束, 则令Aeq=[ ], beq=[ ]. [2]其中X0表示初始点 4、命令:[x,fval]=linprog(…) 返回最优解x及x处的目标函数值fval. 例1 max 解 编写M文件小xxgh1.m如下: c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6]; A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08]; b=[850;700;100;900]; Aeq=[]; beq=[]; vlb=[0;0;0;0;0;0]; vub=[]; [x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub) 例2 解: 编写M文件xxgh2.m如下: c=[6 3 4]; A=[0 1 0]; b=[50]; Aeq=[1 1 1]; beq=[120]; vlb=[30,0,20]; vub=[]; [x,fval]=linpro

文档评论(0)

1亿VIP精品文档

相关文档