Matlab优化分析和总结.docxVIP

  • 2
  • 0
  • 约4.81千字
  • 约 6页
  • 2023-05-12 发布于上海
  • 举报
第七讲 Matlab 优化(求极值) 理论介绍:算法介绍、软件求解. 一.线性规划问题 线性规划问题是在一组线性约束条件的限制下,求一线性目标函数最大或最小值的问题,Matlab 中规定线性规划的标准形式为 min cT x x ? Ax ? b ?s.t.? Aeq ? x ? beq ? ?? lb ? x ? ub ? 其中 c 和 x 为 n 维列向量,A、Aeq 为适当维数的矩阵,b、beq 为适当维数的列向量。注意:线性规划问题化为 Matlab 规定中的标准形式。 求解线性规划问题的 Matlab 函数形式为 linprog(c,A,b),它返回向量 x 的值, 它的具体调用形式为: [x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,x0,OPTIONS) 这里 fval 返回目标函数的值,LB、UB 分别是变量 x 的下界和上界,x0 是 x 的初始值,OPTIONS 是控制参数。例 1 求解线性规划问题 max z ? 2x 1 3x 2 5x 3 ? x ? x ? x ? 7 ?2 1 2 3 ? x ? 5x ? x ? 10 s.t.? 1 2 3 ?x ? 3x ? x ? 1 2 3 ? 12 ?? x , x , x ? 0 1 2 3 程序:c=[2;3;5]; A=[-2,5,-1;1,3,1];b=[-10;12]; Aeq=[1,1,1];beq=[7]; LB=[0;0;0];(zeros(3,1)) [x,fval]=linprog(c,A,b,Aeq,beq,LB,[]) 练习与思考:求解线性规划问题 min z ? 2x 1 3x +x 2 3 ?x ? 4x ? 2x ? 8 ?s.t.? ? ?? ? 1 2 3 3x +2 x ? 6 1 2 x , x , x ? 0 1 2 3 注意: 若没有不等式: AX ? b 存在,则令 A=[ ],b=[ ]. 若没有等式约束, 则令 Aeq=[ ], beq=[ ]. 可以转化为线性规划的问题 规划问题min| x |+|x 1 2 |+ +|x n |s.t.Ax ? b, 其中 x=[x 1 x ]T , A,b 为相应维数的矩 n 阵和向量。注意到对任意的 x 存在u ,v 0 满足 x =u -v ,|x |=u +v ,事实上只要取 i i i i i i i i i x +|x | |x |-x 就可以满足上面的条件。 u = i i 2 i ,v i = i i 2 这样,记u=[u 1  u ]T ,v=[v n 1 v ]T , 从而可以把问题变成 n min ?n (u +v ) i i i =1 ?s.t. ? A(u-v) ? b ? ? u,v ? 0 例 2 求解规划问题min{max| ? |} ,其中? =x -y . x y i i i i i i 对于这个问题,如果取 x 0 = lim|? y i |,这样,上面的问题就变换成 i min x 0 s.t.x -y 1 1 ? x , ,x -y ? x 0 n n 0 这是我们通常的线性规划问题。练习与思考:规划问题 min z ? |x | ? 2|x |+3|x |+4|x | 1 ? ? x -x 2 3 4 -x +x =0 s.t.? 1 2 3 4 ? x -x +x -3x =1 ? 1 ?x -x 2 -2x 3 4 +3x =- 1 二.非线性一元函数的最小值 ? 1 2 3 4 2 对于求一元函数的最小值问题, Matlab 提供了一个命令函数 fminbnd, fminbnd 函数的调用格式为:X=fminbnd(fun,x1,x2)和[X,fval]=fminbnd(fun,x1,x2) 其中 fun 为目标函数,x1,x2 为变量的边界约束,即 x ?[x , x 1 2 ] ,X 为返回 的满足 fun 取得最小值的x 的值,fval 为目标函数值。 x3 ? x2 ?1 例3 计算函数 f (x) ? 程序: clear ex ? e? x 的最小值和f(x)取最小值时x 的值,x ?[?5,5]. fun=(x^3+x^2-1)/(exp(x)+exp(-x)); ezplot(fun,[-5,5]) [X,fval]=fminbnd(fun,-5,5) 练习与思考:如何求一元函数的最大值三.无约束非线性多元变量函数的优化 对于无约束非线性多元变量函数的优化问题,主要采用命令函数 fminsearch 和 fminunc,其中 fminsearch 比较适合处理低阶多间断点的

文档评论(0)

1亿VIP精品文档

相关文档