第4讲 无约束优化.ppt
文本预览下载声明
三、Newton法(设步长为1) 将f(xk+1)在xk点作泰勒展开至二阶项,用p替代pk 牛 顿 方 程 牛 顿 方 向 求p使f(xk+1)最小?右端对p梯度为0 下 降 方 向 特点 在最优解附近收敛较快; 需计算Hessian阵 当Hessian阵病态时,不利于牛顿方程的求解 当Hessian阵不正定时,pk 可能不是下降方向 基本迭代格式 目的 不计算Hessian阵,克服病态、不正定、计算复杂等缺陷,同时保持收敛较快的优点 四、拟牛顿法 牛 顿 方 向 按照 拟牛顿条件: Davidon-Fletcher-Powell(DFP)公式 Broyden-Fletcher-Goldfarb-Shanno(BFGS)公式 5.1 无约束优化的基本方法 在 中某一点,确定一个搜索方向 及沿该方向的搜索步长,得到使目标函数下降的新的点 基本思想 基本迭代格式 搜索步长 近似黄金分割(0.618)法、Fibonacci法、Newton法、 2次或3次插值法等 搜索方向 最速下降法(梯度法)、共轭梯度法、牛顿法、 拟牛顿法(DFP公式、BFGS公式) 5.2 用MATLAB优化工具箱解无约束优化问题 一、一元函数无约束优化问题 fminbnd x = fminbnd(fun,x1,x2) 输入项 fun ~ 由字符串定义的函数或M文件函数名 中间输入项缺省用[ ]占位 函数fminbnd的算法基于0.618法和二次插值法,它要求目标函数必须是连续函数,并可能只给出局部最优解。 [x,fval] = fminbnd(...) [x,fval,exitflag,output] = fminbnd(...) 输出项 x ~ 最优解;fval ~ 最优值; exitflag ~ 描述退出条件 0收敛, 0达到最大迭代次数, 0不收敛 output ~ 包含优化结果信息的输出结构 iterations 实际迭代次数 funcCount 实际函数调用次数 algorithm 实际采用的算法 例5-1 求f=2e-xsinx在[0,8]上的最小值与最大值 xmin = 3.9270 fmin = -0.0279 xmax = 0.7854 fmax = 0.6448 例5-2 对边长为3m的正方形铁板,在四个角剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大? 解:设剪去的正方形的边长为x,则水槽的容积为(3-2x)2x。建立无约束优化模型为: min y=- (3-2x)2x, x∈[0,1.5] fexm0502.m * * 第5章 无约束优化 目的 内容 2、掌握用MATLAB求解无约束优化问题 1、了解无约束优化基本算法 2、无约束优化的基本方法 3、用MATLAB求解无约束优化问题 1、实际问题中的无约束优化模型 优化问题的数学模型 可行解(只满足(2))与 最优解(满足(1),(2)) 无约束优化(只有(1))与 约束优化((1),(2)) 实际问题一般总有约束,何时可用无约束优化处理? 实例1 产销量的最佳安排 某厂生产甲、乙两个牌号的同一种产品,在产销平衡的情况下,如何确定各自产量使利润最大? 注:产销平衡指工厂的产量等于市场上的销量。 目标:利润 销量、(单件)价格 产量、(单件)成本 规律 1 甲价格p1随其销量x1增长而降低; 乙销量x2的增长使p1下降 假设1 价格与销量呈线性关系 乙的价格也有同样的规律 目 标 利润最大 成本随其产量增加而降低,且有一渐进值 假设 2 成本与产量呈负指数关系 规律 2 无约束(非线性)规划 x1, x2 ≥0 ? 0 y x 点2 x=629, y=375 309.00 (1.30) 864.3(2.0) 飞机 x=?,y=? 点1 x=764, y=1393 161.20 (0.80) 点3 x=1571, y=259 45.10 (0.60) 北 点4 x=155, y=987 飞机与监控台(图中坐标和测量距离的单位是“千米”) 实例2 飞机精确定位问题 2.0(km) d4=864.3(km) 987 155 点4 1.30(0.0227弧度) 309.00(5.39307弧度) 259 1571 点3 0.60(0.0105弧度) 45.10 (0.78714弧度) 375 629 点2 0.80(0.0140弧度) 161.20(2.81347弧度) 1393 746 点1 误差 原始观测角度 (或d4) yi xi 不考虑误差因素 超定方程组, 非线性最小二乘! 量纲不符! ? 考虑误差因素 Min x;
显示全部