最优化-刘志斌-课后习题3-5参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习题三

1、用0.618法求解问题

12)(min 30

+-=≥t t t t ϕ

的近似最优解,已知)(t ϕ的单谷区间为]3,0[,要求最后区间精度0.5ε=。 答:t=0.8115;最小值-0.0886.(调用golds.m 函数)(见例题讲解5) 2、求无约束非线性规划问题

min ),,(321x x x f =12

322

2124x x x x -++ 的最优解

解一:由极值存在的必要条件求出稳定点:

1122f x x ∂=-∂,228f x x ∂=∂,33

2f

x x ∂=∂,则由()0f x ∇=得11x =,20x =,30x = 再用充分条件进行检验:

22

12f x ∂=∂,2228f x ∂=∂,2232f x ∂=∂,2120f

x x ∂=∂∂,2130f x x ∂=∂∂,223

0f x x ∂=∂∂ 即2200080002f ⎛⎫

∇= ⎪ ⎪⎝⎭

为正定矩阵得极小点为T *(1,0,0)x =,最优值为-1。

解二:目标函数改写成

min ),,(321x x x f =222

12

3(1)41x x x -++- 易知最优解为(1,0,0),最优值为-1。

3、用最速下降法求解无约束非线性规划问题。

2

221212122)(m in x x x x x x X f +++-=

其中T x x X ),(21=,给定初始点T X )0,0(0=。

解一:目标函数()f x 的梯度112

122()()142()122()()f x x x x f x x x f x x ∂⎡⎤

⎢⎥∂++⎡⎤

⎢⎥∇==⎢⎥-++∂⎢⎥⎣⎦⎢⎥∂⎣⎦

(0)1()1f X ⎡⎤∇=⎢⎥-⎣⎦令搜索方向(1)(0)1()1d f X -⎡⎤

=-∇=⎢⎥⎣⎦再从(0)X 出发,沿(1)d 方向作一维寻

优,令步长变量为λ,最优步长为1λ,则有(0)(1)

0101X d λλλλ--⎡⎤⎡⎤⎡⎤+=+=⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦

故(0)(1)2221()()()2()2()2()f x f X d λλλλλλλλλϕλ=+=--+-+-+=-=

令'1()220ϕλλ=-=可得11λ= (1)(0)(1)1011011X X d λ--⎡⎤⎡⎤⎡⎤

=+=+=⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦ 求出(1)X 点之后,

与上类似地,进行第二次迭代:(1)1()1f X -⎡⎤∇=⎢⎥-⎣⎦ 令(2)(1)1()1d f X ⎡⎤

=-∇=⎢⎥⎣⎦

令步长变量为λ,最优步长为2λ,则有

(1)

(2)

111111X d

λλλλ--⎡⎤⎡⎤⎡⎤

+=+=⎢⎥⎢⎥⎢⎥+⎣⎦⎣⎦⎣⎦

(1)(2)2222()()(1)(1)2(1)2(1)(1)(1)521()

f x f X d λλλλλλλλλϕλ=+=--++-+-+++=--=令'

2

()1020ϕλλ=-=可得 215λ= (2)(1)(2)

2110.8111 1.25X X d λ--⎡⎤⎡⎤⎡⎤=+=+=⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦

(2)0.2()0.2f X ⎡⎤∇=⎢⎥-⎣⎦ 此时所达到的精度(2)

()0.2828f X ∇≈ 本题最优解11.5X *

-⎡⎤

=⎢⎥⎣⎦

,()1,25f X *=-

解二:利用matlab 程序求解

首先建立目标函数及其梯度函数的M 文件 function f=fun(x)

f=x(1)-x(2)+2*x(1)*x(1)+2*x(1)*x(2)+x(2)*x(2); function g=gfun(x)

g=[1+4*x(1)+2*x(2),-1+2*x(1) +2* x(2) ]; 调用grad.m 文件 x0=[0,0];

[x,val,k]=grad('fun','gfun',x0)

结果

x=[ -1.0000 ,1.5000] val= -1.2500 k=33

即迭代33次的到最优解x=[ -1.0000 ,1.5000];最优值val= -1.2500。

4、试用Newton 法求解第3题。 解一:计算目标函数的梯度和Hesse 阵

目标函数()f x 的梯度112

122()()142()122()()f x x x x f x x x f x x ∂⎡⎤

⎢⎥∂++⎡⎤

⎢⎥∇==⎢⎥-++∂⎢⎥⎣⎦⎢⎥∂⎣⎦

2

42()22f X G ⎡⎤∇==⎢⎥⎣⎦,其逆矩阵为1

0.50.50.5

1G --⎡⎤=⎢⎥-⎣⎦ [][][](1)(0)1(0)0.50.5()0,01,11,1.50.51T T T

X X G f X --⎡⎤=-∇=--=-⎢⎥-⎣⎦ 计算(1)()0f X ∇=。

本题最优解11.5X *-⎡⎤

=⎢⎥⎣⎦

,()1,25f X *=-

解二:除了第3题建立两个M 文件外,还需建立Hesse 矩阵的M 文件 利用matlab 程序求解

首先建立目标函数及其梯度函数的M 文件 function f=fun(x)

f=x(1)-x(2)+2*x(1)*x(1)+2*x(1)*x(2)+x(2)*x(2); function g=gfun(x)

g=[1+4*x(1)+2*x(2),-1+2*x(1) +2* x(2) ]; function h=hess(x) g=[4 2;2 2 ]; 调用newton.m 文件

相关文档
最新文档