最优化方法课程实验报告

  • 格式:doc
  • 大小:875.00 KB
  • 文档页数:27

下载文档原格式

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

项目一 一维搜索算法(一)

[实验目的]

编写加步探索法、对分法、Newton 法的程序。 [实验准备]

1.掌握一维收搜索中搜索区间的加步探索法的思想及迭代步骤; 2.掌握对分法的思想及迭代步骤;

3.掌握Newton 法的思想及迭代步骤。 [实验内容及步骤]

编程解决以下问题:

1.用加步探索法确定一维最优化问题

1

2)(min 30

+-=≥t t t t ϕ

的搜索区间,要求选取2,1,000===αh t .

加步探索法算法的计算步骤: (1)选取初始点

])

0[)(0[max 00t t t ,或,∈⊂∞+∈,计算

)(00t ϕϕ=.给出初始步长0

>h

加步系数1α>,令0=k 。

(2) 比较目标函数值.令k k k h t t +=+1,计算 )(11++=k k t ϕϕ,若k k ϕϕ<+1,转(3),否则转(4)。 (3) 加大探索步长.令

k k h h α=+1,同时,令,k t t =,1+=k k t t 1k k =+,转(2)。

(4) 反向探索.若0=k ,转换探索方向,令,k k h h -=1+=k t t ,转(2)。否则,停止迭代,令

11min{}max{}k k a t t b t t ++==,,,。

加步探索法算法的计算框图

程序清单

加步探索法算法程序见附录1

实验结果

运行结果为:

2.用对分法求解

)2()(min +=t t t ϕ,

已知初始单谷区间]5,3[],[-=b a ,要求按精度3.0=ε,001.0=ε分别计算.

对分法迭代的计算步骤:

(1)确定初始搜索区间],[b a ,要求'()0'()0a b ϕϕ<>,。

(2) 计算],[b a 的中点)(2

1

b a

c +=. (3) 若0)(<'c ϕ,则c a = ,转(4);若0)(='c ϕ,则c t =*

,转(5);若0)(>'c ϕ,则c b = ,转(4).

(4) 若ε<-||b a ,则)(2

1*

b a t +=,转(5);否则转(2).

(5) 打印*

t ,结束

对分法的计算框图

程序清单

对分法程序见附录2

实验结果

运行结果为:

3.用Newton 法求解

1

2)(min 3+-=t t t ϕ,

已知初始单谷区间]1,0[],[=b a ,要求精度01.0=ε.

Newton 法的计算步骤

(1) 确定初始搜索区间],[b a ,要求 '()0

'()0a b ϕϕ<>, (2) 选定0t

(3) 计算

000'()/"()

t t t t ϕϕ=- (4) 若 ε≥-||0t t ,则t t =0,转(3);否则转(5).

(5) 打印()t t ϕ, ,结束.

Newton 法的计算框图

程序清单

Newton 法程序见附录3

实验结果

运行结果为:

项目二 一维搜索算法(二)

[实验目的]

编写黄金分割法、抛物线插值法的程序。 [实验准备]

1.掌握黄金分割法的思想及迭代步骤; 2.掌握抛物线插值法的思想及迭代步骤。 [实验内容及步骤]

编程解决以下问题: 1.用黄金分割法求解

)2()(min +=t t t ϕ, 已知初始单谷区间]5,3[],[-=b a ,要求精度001.0=ε.

黄金分割法迭代步骤:

(1) 确定)(t ϕ的初始搜索区间][b a ,. (2) 计算)(382.02a b a t -+= (3) 计算)(618.01a b a t -+=

(4) 若ε<-||21t t ,则打印2

2

1*

t t t +=

,结束;否则转(5). (5) 判别是否满足21ϕϕ≤:若满足,则置12122ϕϕ===,,

t t t a 然后转(3);否则,置

)()(22221211t a b t t t t b ϕϕβαϕϕ=-+====,,,,

然后转(4). 黄金分割法的计算框图:

程序清单

黄金分割法程序见附录4

实验结果

运行结果为:

2.用抛物线插值法求解

3728)(min 23+--=x x x x f ,

已知初始单谷区间001.0]20[][==ε,,,

b a .

抛物线插值法的计算步骤:

(1) )()(0t t ϕϕ<,所以相对0t 来说t 是好点,故划掉区间],[20t t ,保留],[01t t 为新区间,

故置)()(0202t t t t ϕϕ==,,)()(00t t t t ϕϕ==,,1t 保持不变;

(2) )()(0t t ϕϕ>,所以相对t 来说0t 是好点,故划掉区间],[1t t ,保留],[2t t 为新区间,

故置)()(11t t t t ϕϕ==,

,0t 与2t 保持不变;

程序清单

抛物线插值法程序见附录5

实验结果

运行结果为:

项目三 常用无约束最优化方法(一)

[实验目的]

编写最速下降法、Newton 法(修正Newton 法)的程序。 [实验准备]

1.掌握最速下降法的思想及迭代步骤。 2.掌握Newton 法的思想及迭代步骤; 3.掌握修正Newton 法的思想及迭代步骤。 [实验内容及步骤]

编程解决以下问题: 1.用最速下降法求

22

120min ()25[22]0.01T f X x x X ε=+==,,,.

最速下降法计算步骤 (1)0,0)(,)

0(=>k X 令精度容许误差取初始点ε

(2))()()

(k k X f p -∇=计算

(3)0)()

(4,,?否则转取若是迭代终止检验k k X X p

=≤*ε

(4)))(()(min :)()()()

(0

一维搜索求最优步长k k k k k k p X f p X

f λλλλ+=+≥

)()()1(2,1:,转令令+=+=+k k p X X k k k k λ

最速下降法的计算框图

程序清单

最速下降法程序见附录6

实验结果

运行结果为: