文档介绍:二、黄金分割法( 法):是一种常用的消去法与对分法、 i 法比较,具有计算次数少,过程简单的特点。 1、原理: Lx L-x ?,x xLL x????满足 0L Lx x 22???解得,01 2?????即有 618 .0 618034 .02 51???????处。的为黄金分割点,位于 618 .0L ,L 618 .0Lx 1????的对称点。为 1 12x,L 382 .0L)1(LLxLx????????? L??x 1x 22、取点法则: ?L??x 1x 2a 0?? b 0?L)ab(aLx: 0001???????取点)ab(bxLx 00012??????①f(x 2)≤f(x 1),取[a 1=a 0,b 1=x 1] x ’1=x 2x ’2=b 1-?(b 1-a 1) ?? a 1b 1x ’1?x ’2?②f(x 2)> f(x 1),取[a 1=x 2,b 1=b 0] x ’1=a 1+?(b 1-a 1)x ’2=x 1 ?? a 1b 1x ’1?x ’2?计算 n个点后,总缩短率为 E n=? n-1<?,可得试点数 n。 3、计算步骤:求函数 f(x) 的极值点第一步:取初始区间[a 0,b 0] ??x 1x 2a 0?? b 0)ab(ax: 0001????取点)ab(bx 0002????)x(f)x(f 21和计算⑴若求 f(x) 的极小值点,则①f(x 2)≤f(x 1),取[a 1=a 0,b 1=x 1] x ’1=x 2x ’2=b 1-?(b 1-a 1) ② f(x 2)> f(x 1),取[a 1=x 2,b 1=b 0] x ’1=a 1+?(b 1-a 1)x ’2=x 1 ?? a 1b 1x ’1?x ’2??? a 1b 1x ’1?x ’2?⑵若求 f(x) 的极大值点,则①f(x 2)≥f(x 1),取[a 1=a 0,b 1=x 1] x ’1=x 2x ’2=b 1-?(b 1-a 1) ② f(x 2)< f(x 1),取[a 1=x 2,b 1=b 0] x ’1=a 1+?(b 1-a 1)x ’2=x 1 第二步:求区间的缩短率????|ab ab| 00 kk若. 则停止,得近似极值点否则,继续缩短区间, 止。直至满足给定的精度为例求解 f(x)=-18x 2+72x+28 的极大值点,?≤ ,起始搜索区间为[0,3] 解: ①用间接法:令 f ’(x)=-36x+72=0 ,得驻点 x=2 又因为 f ’’(x)=-36 <0,故x=2 为f(x) 的极大值点, f max=100 ②用直接法中的黄金分割法:令? n-1=?,得 n=1+(lg ?)/(lg ?)≈ 约6步即可,计算结果见下表: < f (x 2 k) △ f (x 1 k) x 2 k=b k-?·p k 82 f(b k) x 1 k=a k+?·p k1 p k / p 0 3 b k328 00 p k=b k - a k f(a k)a kkf(x) x o3 x 1x 2 100 f,2x * max *??? > 1 < 2 < 3 > 5 2、算法步骤: 设S=f(X)=f(x 1,x 2),极值点存在的区间为 x 1 *?[a 1,b 1],x 2 *?[a 2,b 2] 第一步:从 X (0)=(x 1 (0),x 2 (0)) T出发①先固定 x 1=x 1 (0): 求以 x 2为单变量的目标函数的极值点, 得X (1)=(x 1 (0),x 2 (1)) T,S (1)=f(X (1)) ②再固定 x 2=x 2 (1): 求以 x 1为单变量的目标函数的极值点, 得X (2)