Matlab在最优化问题中的应用(doc28页).docxVIP

  • 10
  • 0
  • 约3.75万字
  • 约 84页
  • 2021-01-26 发布于天津
  • 举报
Mat I ab Mat I ab在最优化问题中的应用 Matlab在最优化问题中的应用 (doc 28 页) 优化理论是一门实践性很强的学科,广泛应 用于生产管理、军事指挥和科学试验等各种领 域,Matlab优化工具箱提供了对各种优化问题 的一个完整的解决方案。 在数学上,所谓优化问题,就是求解如下形 Min fun (x) Sub. to [C.E.] [B.C.] 其中fun (x)称为目标函数,“Sub. to”为 “subjects啲缩写,由其引导的部分称为约束 条件。[C.E.]表示 Condition Equations,即条件 方程,可为等式方程,也可为不等式方程。[B.C.] 表示Boundary Conditions,即边界条件,用来 约束自变量的求解域,以lbWxWub的形式给 出。当[C?E?]为空时,此优化问题称为自由优化 或无约束优化问题;当[C?E?]不空时,称为有约 束优化或强约束优化问题。 在优化问题中,根据变量、目标函数和约束 函数的不同,可以将问题大致分为: sub. To Ax = b xMO 其中C, b,0GRn, AGRmXn,均为数值矩阵, xGR% 若目标函数为:max C5x,则转换成:min —Cx。 标准形式的线性规划问题简称为LP (Linear Programming)问题。其它形式的线性规划问题 经过适当的变换均可以化为此种标准形。线性规 划问题虽然简单,但在工农业及其他生产部门中 应用十分广泛。 在Matlab中,线性规划问题由linprog函数 求解。 函数:I inprog %求解如下形式的线性 规划问题: niin fTx X such that A^xb Aeq ? x = beq lbxub 其中/ x, b, beq, lb, 讪为向量,A, Aeq为矩阵。 x = linprog(f,A9 x = linprog(f,A9b) x = lmprog(f9A,b,Aeq,beq) x = linprog(f,A,b,Aeq,beq,lb,ub) x = linprog(f,A,b,Aeq,beq,lb,ub,xO) linprog(f9A,b,Aeq,beqJb,ub,xO,options) [x^fval] = linprog(...) [x,fval,exitflag] = linprog(…) [x,fval?exitflag,output] = linprog(...) [x,fval,exitflag9outputjambda] = linprog(...) 说明= x = linprog(f,A,b)求解问题 约束条 件为 A*xv=b。 x = linprog(f,A,b,Aeq,beq)求解上面的问题, 但增加等式约束,即Aeq*x = beq。若没有不等 式存在,则令A=[]、b = []o x = linprog(f,A,b,Aeq,beq,lb,ub)定义设计 变量x的下界lb和上界ub,使得x始终在该范 围内。若没有等式约束,令Aeq = []. beq = []o =linprog(f, =linprog(f,A,b,Aeq,beq,lb,ub,xO)设: 值为xOo该选项只适用于中型问题,默认时大 型算法将忽略初值。 x = linprog(f,A,b,Aeq,beqJb,ub,xO,options) 用options指定的优化参数进行最小化。 [x^fval] = linprog(...)返回解x处的目标函 [x,fval,exitflag] = linprog(..)返回 exitflag 值,描述函数计算的退出条件。 [x,fval,exitflag,output] = linprog(...)返回包 含优化信息的输出变量output o [x,fval,exitflag,output Jambda] = linprog(...) 将解x处的Lagrange乘子返回到lambda参数 中。 0 Xj, 0x 0 Xj, 0x2, 0 x3 exitflag 参数 描述退出条件: ?0表示目标函数收敛于解x处; -0表示已经达到函数评价或迭代 表示目标函数不收敛。 表示目标函数不收敛。 output参数 该参数包含下列优化信息: 迭代次数;PCG迭代 迭代次数; PCG迭代 所釆用的算 output .cgiterations 次数(只适用于大型规划问题): output ?algorithm 法。 lambda参数 该参数是解x处的Lagrange乘子。它 有以下一些属性: ? lambda.lower—lambda 的下界; lambda.upper—lambda 的上界; lambda.ineqlin—lam

文档评论(0)

1亿VIP精品文档

相关文档