1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Giải toán Tối ưu phi tuyến Part 2

168 112 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 168
Dung lượng 6,62 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

G iả sử ta có điểm x k thuộc lân cận của X*, khi đó để giảm hàm m ục tiêu ta sẽ dịch chuyển từ x k theo hướng d k tạo với véctơ gradient V fxk một góc tù, tức là xác định V iệc lựa chọn

Trang 1

Chương 7 PHƯƠNG PHÁP GRADIENT

7.1ẵ PHƯƠNG PHÁP HƯỚNG D ố c NHÂT

7.1.1ệ Nội d u n g p h ư ư n g p h á p

Xét bài toán tối ưu không ràng buộc

min ( f ( x ) : X £ K"|.

Ta sẽ xây dựng một dãy điểm x°, X1, X2, sao cho f(xk+l) <

f(x k) với m ọi k = 0, 1 , 2 , , dãy (x k Ị hội tụ tới X* khi k -> 00 và Vf(x*) = 0 G iả sử ta có điểm x k thuộc lân cận của X*, khi đó để giảm hàm m ục tiêu ta sẽ dịch chuyển từ x k theo hướng d k tạo với véctơ gradient V f(xk) một góc tù, tức là xác định

V iệc lựa chọn hướng dịch chuyển d k và độ dài bước a k khác

nhau sẽ cho ta các phương pháp gradient khác nhau N ếu chọn d k —

- V f(xk) với m ọi k thì phương pháp gradient như th ế gọi là phương

Trang 2

pháp luỉớng dốc nhất (Steepest Descent M ethod) Đây là một

phương pháp thông dụng để tìm cực tiểu, nó rất đơn giản và có thể

áp dụng cho nhiều lớp hàm rất rộng Phương pháp này xây dựng dãy lặp:

xk+' = xk - otkV f(xk), ctk > 0, k = 0, 1 , (7.1)

Ì3 T h u ậ t to á n xác đ ịn h a k tại mỗi bước lặp {Qui tắc Armijo):

1) Chọn giá trị a tùy ý (như nhau với mọi bước lặp, chẩng hạn

a = 1) và x á c địn h đ iểm X = x k - ccV f(xk).

2) Tính f(x) = f[xk - a V f(x k)]

3) Kiểm tra bất đảng thức:

f(x) - f(xk) < e a <V f(xk), d k> = - eallV f(xk)ll2 (7.2)

với 0 < £ < 1 là một hằng số được chọn tùy ý, như nhau với mọi k = 0,1,

4) Nếu (7.2) thỏa mãn thì a là giá trị cần tìm: a k = a Nếu (7.2) không thỏa mãn thì ta giảm a (bằng cách nhân a với một số Ấ 6 (0, 1), chẳng hạn Ằ = Vì) cho đến khi bất đẳng thức (7.2) được thỏa mãn.

7.1.2 S ự hội tụ c ủ a phư ơ ng p h á p g r a d ie n t

T a n ó i d ãy ( x k) h ội tụ tới đ iể m X* v ớ i t ô Ệ c đ ộ l i ộ i t ụ t u y ế n lí n h

hay tốc độ hội tụ cấp số nhân (công bội q) nếu bắt đầu từ một chi số

k nào đó ta có bất đảng thức

llxk+l - x * ll < q llxk - x * ll, 0 < q < 1.

Cơ sở của việc lựa chọn a như trên và sự hội tụ của phương pháp gradient cho trong định lý sau

Đ ịnh lý 7.1ẻ Giả sử hàm f(x) bị chặn dưới, gradient Vf(x) thỏa

mãn điều kiện L ipschitz:

IIVf(x) - Vf(y)ll < Lllx - yll, Vx, y e l ”

và a k được chọn theo thuật toán nêu trên Khi đó, với bát kỳ’ điềm ban

đầu x°, quá trình lặp (7.1) có tính chất: IIVf(xk)ll -> 0 khi k -► X.

Trang 3

C h ứ n g m in h Theo định lý giá trị trung bình:

f(x ) - f(x k) = < V f( x k ), x - x k>,trong đó x k = xk + 0(x - xk) với 0 e [0, 1], Do X - xk = - a V f(x k) nên ta có

tức là với bất kỳ k thì f(xk+l) - f(xk) < 0 (với điểu kiện V f(xk) * 0)

Vì hàm f(x) bị chạn dưới, nên bất đẳng thức nhận được cho thấy

f(xk+l) - f(xk) —» 0 khi k -» co (7.4)

Từ (7.3) suy ra:

Chú ý là thuật toán chọn a k đảm bảo cho với bất kỳ k sẽ có

ock > ã > 0, trong đó ã có thể chọn là hằng sô' tùy ý không vượt quá (1 - £)/ L (vì bất đảng thức (7.2) hay (7.3) được thỏa mãn với

a = (1 - e)/L) Từ (7.4), (7.5) và chú ý này suy ra IIVf(xk)ll -» 0 khi

Trang 4

thiết nhất định về độ trơn và tính lồi của hàm cần tìm cực tiểu, la có thế đánh giá được tốc độ hội tụ cùa phương pháp gradient.

Đ ịnh lý 7.2 Giá sử f(x) là hàm lồi hai làn khá vi liên tục và ma

m llyll2 < < v 2f(x)y, y> < M llyll2, M > m > 0 (7.6)

với m ọi X, y 6 K n, CÒI 1 d ã y 1 x k I dược x â y dựng th eo phương pháp

(7.1 ), trong dó a k được chọn tlieo tliuật toán d ã m ó tà Khi dó với

b ấ t kỳ điểm ban (láu Xo, ta s ẽ có x k —> X*, f ( x k) —> f( x * ) , trong dó

Đồng tliời, ta có các đánh giá sau về tấc dộ liội tụ cùa tliuật toán:

Trang 5

Sử dụng bất đẳng thức trái của (7.8) và ước lượng (7.7) ta có

Trang 6

vì th ế trong điểu kiện (7.2) nên đật e = —.

Đ ánh giá (7.11) cùng với v ế trái cùa (7.8) cho phép khảng định

sự hội tụ và đánh giá tốc độ hội tụ của dãy I xk I tới điểm cực tiểu

llxk - x * l l < í — ì " [ f ( x k) - f ( x * ) ] l/2

V m )

< 2 [f(x " ) -f ( x * )] lữ q k/2< C q k

Đ ịnh lý được chứng m inh đầy đù

Q ua chứng m inh trên ta thấy rằng để thu được đánh giá (7.11)

ta đã sứ dụng các điều kiện (7.2) (7.9) T a kết luận rằng lớp hàm có đánh giá (7.11) thực sự rộng hơn nhiều so với lớp hàm thòa mân điều kiện (7.6) vì đánh giá (7.11) đúng với mọi hàm thỏa mãn điều

kiện cùa Định lv 7.1 và điều kiện:

IIVf(x)ll: > ỗ[f(x) - f(x*)] ỗ > 0

Thuật toán xác định a theo (7.2) thường được gọi là thuật toán

quay lui (backtracking) Sau đây sẽ nêu m ột số cách xác định a

khác m à vẫn bảo đảm sự hội tụ cùa phương pháp gradient

Trang 7

7.1.3 C á c d ạ n g k h á c củ a phư ơng p h á p g ra d ie n t

• P h ư ơ n g p h á p g ra d ie n t với đ ộ dài bước cỏ đ ịn h

Nếu hằng số L (trong Định lý 7.1) và M (trong Định lý 7.2) biết trước thì trong phương pháp (7.1) có thể chọn cố định trước

a k = ã , trong đó

0 < ã < — hoặc 0 < ã < —

Khi đó, các định lý hội tụ 7.1 và 7.2 vẫn đúng

• Phương pháp gradient với cực tiều hàm theo hướng dịch chuyển

Độ dài bước a k ở mỗi bước lặp được chọn từ điều kiện

f[xk - a kV f(xk)] = min I f[xk - ctVf(xk)] : a > 0 ).

Cách xác định a như trên được gọi là phiíơiiỊi pliáp tìm clúiih

xác theo lia (Exact Line Search) Khi đó các định lý hội tụ 7.1 và

7.2 vẫn đúng Ngoài ra, ta còn nhận được đánh giá chính xác hơn về

Cho F(x) là một ma trận đối xứng thỏa mãn điều kiện:

pllyll2 < <F(x)y, y> < TỊllyll2 (p > 0), Vx y e K" (7.12)

Nếu chọn d = - F (x).V f(x) và nếu Vf(x) * 0 thì

<V f(x), d> = - <V f(x), F(x).V f(x)> < - pllVf(x)ll2 < 0,nghĩa là d = - F (x).V f(x) là hướng giảm của f(x) N hư vậy, để tìm

ực tiếu của f(x) ta có thê dùng phép lặp:

XUI = xk - a kF k.Vf(x), a k > 0, k = 0 1,

rong đó {Fk) là dãy ma trận bát kỳ thỏa mãn (7.12)

Trang 8

Đế thống nhất ký hiệu, đôi khi ta dùng phép lặp

xk+' = xk - c x kF k 1.Vf(xk) , a k > 0 , k = 0, 1 , (7.13)trong đó F ¡“1 là ma trận nghịch đảo cùa Fk Có thế chứng minh được rằng nếu F k thỏa mãn (7.12) thì F [ ' sẽ thỏa mãn:

mIllyll2 < < F [ ‘ y, y> < M|llyll: với m, = p /iỷ và M | = 1/p

<V f(xk), d k> = - <V f(xk) F [ ' Vf(xk)> < - m|IIVf(xk)ll: < 0.Các dãy {F ị“1 Ị khác nhau sẽ tương ứng với các phương pháp lặp khác nhau Đ ồng thời, cúc định lý hội tụ 7.1 và 7.2 đúng cho phép lặp (7.1) vẫn còn đúng cho phép lặp (7.13), với cùng những điều kiện đối với hàm cần tìm cực tiếu và cùng cách thức chọn độ dài bước a k Tuy nhiên, trong trường hợp này ta không thê có đánh giá tốt hơn về giá trị q

Hình 7.1 Phương pháp hướng dốc nhất

Trang 9

• Fk = v 2f(xk) + yln nếu v 2f(xk) không xác định dương và n

không quá lớn, trong đó Y = max {0, 1 - Ằmin (giá trị riêng nhỏ nhất)

Bước lặp 1 Ta có V f(x ') = (- 12; - 12)T Chọn hướng giảm

nhanh nhất d' = (1; 1)T, tỉ lệ với -Vf(x') Xét điểm X = (X|, X2)T trên

tia X1 + Id' (t > 0):

X| = 0 + l x t = t v à x 2 = 0 + l x t = t.

Thay vào hàm m ục tiêu cần tìm cực tiểu ta được:

<p(0 = f(x' + td 1 ) = (t - 6)2 + 2(t - 3)2 = 3t2 - 24t + 54.Tim cực tiểu cp(t) nhờ cho đạo hàm <p’(t) = 6t - 24 = 0, ta được

t, = 4.

Điếm lặp mới X2 = x' + t|d ' = (0; 0)T + 4 x ( l; 1)T = (4: 4)T với f(x2) = 6 < f(x ') = 54

Trang 10

Bước lặp 2 Ta có V f(x2) = (- 4; 4)T Hướng giảm nhanh nhất

d2 = (1; - 1)T (tỉ lệ với - V f(x 2)) X ét các điếm X = (X|, X2)T irên tia

Bước lậ p 3 Ta có V f(x3) = (- 4/3; - 4 /3 )T Hướng giảm nhanh

nhất là d1 = (1; 1 )T (ti lệ với - V f(x 3)) X ét các điểm X = (x h X2)T trên tia X3 + td1 (t > 0):

X, = 5 2 / 9 + t v à x 2 = 2 8 / 9 - 1.

T hế vào hùm mục tiêu ta được:

<l>(t) = f(x4 + td4) = (52/9 + t - 6 )2 + 2(28/9 - 1 - 3):

= (t - Ĩ /9 Ý + 2( 1/9 - 1)2 = 3t2 - (8/9)1 + 2/27.

Trang 11

Cho đạo hàm (p’(t) = 6t - 8/9 = 0, ta được t4 = 4/27.

Đ iểm lặp mới X5 = X4 + t4d4 = (52/9; 2 8 /9 )T + ( 4 /2 7 )x (l; - 1)T =

(160/27; 80/27)t , f(x5) = 2/243

Bước lặ p 5 Ta có Vf(x5) = (- 4/27; - 4/27)T Hướng giảm

nhanh nhất d5 = (1; 1)T (tỉ lệ với - V f(x 5)) X ét các điểm X = (Xị, X2)T trên tia X5 + td5 (t > 0):

Từ bảng trên có thể thấy rằng xk - » X* = (6; 3)T, f(xk) 0 và

V f(xk) -> 0 khi k -> + co.

Trang 12

Ta biết rằng nếu X* là điểm cực tiểu tự do của hàm f(x) thì

V f(x*) = 0 Do đó, nếu điểm x" ở gần X* t h ì trong lân cận x° có thể xấp xỉ f(x) bởi hàm bậc hai:

<p(x) = f(x") + < V f(x ° ), X - x °> + >/2 < v 2f(x ° )(x - x"), X - x">, trong đó v 2f(x°) là m a trận H essian (m a trận các đạo hàm riêng cấp

hai) của hàm f(x) tính tại điểm x°

Cực tiểu của f(x) trong lân cận điểm x(> có thể xấp xi bời cực

t i ể u của cp(x) Nếu cực tiểu cùa cp(x) đạt tại điểm xm thì

Vọ (xm) EE Vf(x") + v 2f(x°)(xm - x") = 0.

Từ đó nếu v 2f(x") có nghịch đảo thì

Trang 13

x m = x ° - [ V 2f(x 0) r ' - V f ( x n).

N hư vậy, nếu hàm f(x) hai lần khả vi liên tục và [V2f(xk)]~' tồn

tại với m ỗi x k thì đ ể tìm X* ta có thể dùng công thức lặp:

• Phuơng pháp Newton thuần túy (P u re N ew ton M ethod)Chọn điểm x° tùy ý Tính dãy điểm (x k) theo công thức (7.14) Quá trình lặp sẽ dừng khi V f(xk+I) * 0

N hư vậy hướng tìm trong phương pháp Newton không phải là véctơ - V f(xk) như trong các phương pháp gradient thông thường

mà là hướng - [V2f(xk)] '.V f(x k), gọi là hướng N ew ton, trong đó đã

dùng đến các đạo hàm riêng cấp hai của hàm f(x)

Phương pháp này có một số tính chất đáng chú ý sau:

ìs Nếu f là hàm toàn phương thì phương pháp Newton sẽ cho điểm cực tiểu chỉ sau một bước lăp Thật vậy, giả sử f(x) = a + <b,

x> + 'Á <Cx, x>, trong đó c là ma trận đối xứng nửa xác định

dương, b e K" và a € K Khi đó, V f(x ) = Cx + b (Vx) và v 2f(x) = c Điểm cực tiểu của f(x) là nghiệm của phương trình Vf(x) = Cx + b = 0

Từ đó X* = - c ' b Bày giờ xuất phát từ điểm bất kỳ xcl và áp dụng phép lặp (7.14) ta có

x' = x" - C ' ( C x (l + b) = - c ~ 'b = X*.

íằ CÓ thể chứng m inh được rằng nếu f hai lần khả vi liên tục,

v 2f liê n tục L ip s ch itz tron g lân cận đ iể m cự c tiểu đ ịa ph ư ơng X* củ a

f, v 2f(x*) xác định dương và nếu xuất phát từ điểm x°đủ gần X*, thì

dãy |x kỊ xây dựng theo phương pháp N ew ton thuần túy sẽ hội tụ tới

X* với tốc độ hội tụ bậc hai. Cụ thể ta có:

ll.\k+l- x * l l < — llxk - x * l l 2,

m

Trang 14

trong đó L là hằng số Lipschitz và m là giá trị riêng nhỏ nhất của

V f(x*)

N ói chung, nếu f không phải là hàm toàn phương thì dãy điểm {xkỊ xây dựng theo (7.14) có thể phân kỳ hoặc hội tụ đến điểm yên ngựa hay điểm cực tiểu địa phương

• P hư ơ ng p h á p N ew ton suy rộ n g

Có thể cải tiến phép lặp (7.14) nhờ sử dụng công thức lặp:

xk+l = xk - a k[V2f(xk)]"'.V f(x k), (7.15)trong đó độ dài bước a k được xác định nhờ các phương pháp tìm kiếm m ột chiều theo hướng d k = - [V2f(xk)]” ‘.V f(xk)

Q uá trình lặp theo công thức (7.15) thuờng được gọi là phương

pliáp N ew ton với bước điều chình hay phươiìg ph á p New ton suy

rộng Khi sử dụng phương pháp này tốc độ hội tụ của x k —> X* và

f(xk) -> f(x*) sẽ nhanh hơn so với khi dùng phương pháp gradient Khi a k = 1 (với m ọi k) thì ta có phương pháp N ew ton thuẩn túy như

đã xét ờ trên

Sau đây sẽ trình bày hai dạng phương pháp Newton SUV rộng,

khác nhau ờ cách chọn độ dài bước a :

Cách thứ nhất, gọi là phương pháp quay lui, bao gồm các bước sau:

1 Đ ặt a =1, tính điểm X = xk + a d k

2 Tính giá trị hàm f(x) = f(xk + a d k)

3 Kiểm tra bất đẳng thức

f(x) - f(xk) < s a < V f (x k) d k>, 0 < e < Vỉ (7.16)

4 Nếu (7.16) được thòa m ãn thì ctk =1 là giá trị cán tìm Trái

lại, giảm a (bằng cách nhân a với số X < 1) cho tới khi bất đẳng

thức (7.16) được thỏa mãn

Cách này giống cách chọn a theo (7.2) trong phương pháp gradient

Trang 15

Cách thứ hai, gọi là phương pháp dò tìm chính xác, theo hướng:

d k = - [ V 2f ( x k) ] - ' V f ( x k),

nghĩa là tìm a k sao cho

f(x k - a k[ V 2f(x k) r ' V f ( x k)) =

= m in (f(x k - a [ V 2f(xk) r 'V f ( x k) ) : a > 0 | (7.17)7.2.2 S ự hội tụ c ủ a ph ư ơ n g p h á p N ew ton suy rộ n g

Theo công thức (7.15) phương pháp N ewton chỉ áp dụng được

để tìm cực tiểu của hàm số với ma trận đạo hàm cấp hai của nó có nghịch đảo và m a trận [V2f(x)]_l phải bị chặn

Các hàm lồi m ạnh, hai lần khả vi liên tục sẽ có các tính chất này Vì thế, trong mục này ta luôn giả thiết rằng hàm f(x) thỏa mãn

các điều kiện sau với m ọi X, y e R":

m.llyll2 < < v 2f(x)y, y> < M.llyll2, m > 0 (7.18)

N hớ rằng các hàm như th ế luôn có điểm cực tiểu duy nhất, ký

hiệu X*.

Đ ịnh lý 7.3 N ếu hàm f(x) thỏa mãn điều kiện (7.18) và a k

dược chọn theo điều kiện (7.16) thì với bất kỳ điểm ban đầu Xo, dãy

|x k) sin h 'ra theo (7 1 5 ) s ẽ hội tụ tới điểm cực tiểu X* theo tốc độ

hội tụ trên tuyến tín h :

Bây giờ ta chứng m inh tính đúng đắn của đánh giá (7.19)

M uốn thế, trước hết chú ý rằng do d k = - [V2f ( \ k)]_1V f(xk) hay Vf(xk) = - v 2f(xk)dk nên

Trang 16

< V f ( x k), dk> = - < v 2f( x k)dk, dk> < - mlldkll2 (7.20)

Do < V f(xk), dk> < 0 và <V f(xk), dk> -> 0 nên từ (7.20) suy ra

lldkll - » 0 khi k -> + 00 Bây g iờ la sẽ chỉ ra rằng từ một bưốe lặp

nào đó trờ đi trong công thức lặp (7.15) ta luôn có a k = 1 Thật vậy,

sử dụng công thức Taylor và (7.20) ta thu được

< x k+l - X*, xk+1 - x * > = < x k - X* - [V2f(x k)]“ 'V f(x k) x ktl - x*>.

Bằng cách sử dụng công thức Lagrange cho các toán từ Vf(x) ta có

<[V2f(xk) ] 'lVf(xk), xk+1 - x*> = < [ V V ) r '.[ V f ( x k) - Vf(x*)] xk+1 - x*>

= <[V : f(xk) ]- 'V 2f( x k ).(xk - X*), xk+l - x*>

Trang 17

Bây giờ giả sử ngoài điều kiện (7.18), ma trận v 2f(x) còn thỏa mãn thêm điều kiện Lipschitz:

IIv2f(x) - v 2f(y)ll < L.llx - yll, Vx, y e 0Tử (7.22) Với trường hợp này, trong hệ thức (7.21) ta có

Đ ịn h lý 7.4 N ếu lĩàm f(x) thỏa mãn các điều kiện (7.18), (7.22) và a k được chọn theo điều kiện (7.16) th ì với bất kỳ điểm ban

đầu Xo, d ã y | x k) sinh ra theo (7 1 5 ) s ẽ hội tụ tới nghiệm X* với tốc

độ liội tụ bậc hai, tức là có đánh giá (7.23).

Trang 18

• Nếu chọn độ dài bước nhờ phương pháp tìm chính xác theo tia, tức là theo (7.17), thì sự hội tụ của dãy {xk} được suy ra từ sụ hội tụ của phương pháp gradient Trong trường hợp này, cũng như trước đây, tốc độ hội tụ là trên tuyến tính nếu f(x) thỏa mãn điều kiện (7.18) và là bậc hai nếu có thêm điều kiện (7.22).

7.2.3 C ải biên p hư ơ ng p h á p N ew ton suy rộ n g

• Xét thuật toán xây dựng dãy điểm xấp xỉ x k theo công thức: xk+1 = xk - a k[V2f(x°)]_l.V f(xk) với a k > 0, k = 0, 1 , ( 7 2 4 )Trong phương pháp này d k = - [V2f(x°)] '.V f(x k), nghĩa là để làm hướng giảm ờ mỗi bước ta sử dụng cùng một ma trận [V2f(x°)]_l Công thức lặp (7.24) là m ột trường hợp riêng của phép lặp (7.13) với F^' = [V2f ( x ° X f B ở i vậy có thể khẳng định rằng dãy

(7 2 4 ) với bất kỳ điểm ban đầu x° nào, sẽ hội tụ tới nghiệm cực tiểu

theo tốc độ hội tụ cấp số nhân nếu chọn độ dài bước theo điều kiện (7.16) hoặc (7.17) Tuy nhiên, tỉ số q (tốc độ hội tụ) sẽ phụ thuộc vào điểm xấp xỉ ban đẩu x°: q càng nhỏ khi x" càng gần điểm cực

sử dụng cùng một m a trận [V2f ( x ° ) ] '\ T huật toán này cũng có thể xem như một dạng của phương pháp gradient thực hiện theo công

Trang 19

thức lặp (7.13), do đó sự hội tụ của nó với các cách chọn độ dài bước khác nhau được suy ra từ sự hội tụ của các phương pháp gradient tương ứng.

Người ta chứng minh được rằng với các giả thiết tương tự như trong Định lý 7.4 thì dãy (x n' | xây dựng theo công thức lặp (7.25) hội

tụ tới nghiệm cực tiểu vói tốc độ bậc t + 1 Cụ thể, ta có đánh giá:

Phương ph á p tựa N ew ton (Quasi-N ew ton M ethod) sử dụng

hiệu các gradient để xấp xỉ [V2f(xk)]_l Theo phương pháp này quá trình lặp có dạng:

x k+l = xk - ẦkH kV f (x k), trong đó H k là xấp xỉ của [V 2f(x k) r ' và ta nhận được phương pháp

với số bước lặp nhiều hơn, nhưng mỗi bước lặp ít phức tạp hơn và tốc độ hội tụ cũng chậm hơn: nói chung không còn là bậc hai nữa Một phương pháp tiêu biểu thuộc loại này và bảo đảm được tốc độ

hội tụ trên tuyến tính là pliươiìg pliáp m etric biến thiên do Davidon

- Fletcher - Powell để xuất năm 1963

7.3.2 P h ư ư n g p h á p D avidon - F le tc h e r - Powell

Phương pháp này sử dụng phép lặp (7.15), nhưng ở m ỗi bước

ma trận nghịch đảo [ V 2f(x k) r ' được thay bằng m a trận đối xứng xác định dương H k H k+| tính truy hồi theo H k, V f(xk), V f(xk+I) Khi

Trang 20

f(x) là hàm lồi toàn phương thì ở bước lạp n + 1 m a trận H nt| sẽ Irờ thành ma trận H essian nghịch đảo.

Hinh 7.3 Sơ dố khôi phương pháp Davidon - Fletcher - Powell

Xuất phát từ điểm X1 được chọn tùy ý, ma trận ban đẩu Hị là

ma trận đơn vị In hoặc có thể là ma trận đối xứng xác định dương bất kỳ Đặt k = 1 Thủ tục lặp gồm các bước sau đây (đê cho gọn, la viết gk thay cho V f(xk)):

1 ơ bước k = 1 2 ta có xk và m a trận đối xứng xác định dương H k

2 Để làm hướng tìm ta chọn d k = - H kg k

3 Tim À.k đạt cực tiểu của hàm <p(X) = f(xk + x.dk), X > 0.

Trang 21

4 Đặt vk = A.kd k = - A.kHkg k và x k+l = xk + vk (vk = xk+1 - xk).Chú ý là từ điều kiện A* đạt cực tiểu của cp(X) ờ Bước 3 ta suy raVcp(A.k) = < V f(xk+l), d k> = 0 hay < gk+1, vk> = <gk+1, d k> = 0 (7.26)

8 Thay k bằng k + 1- và quay lại Bước 2

Khi f(x) = <c, x> + Vi <x, G x> với G là m a trận đối xứng xác

định dương v à c E R", thủ tục lặp nêu trên có các tính chất sau.

Đ ịnh lý 7.5 Giả s ử X không pliái là điểm cực tiểu của f Khi đó: a) H k xá c định theo (7.28) là đối xứììg và x á c dịnlì dương với

m ọ i k.

b) < g \ d'> = 0, 1 < i < k - 1 (gk vuông góc với d j, Vi < k) Hku' = HkGv‘ = v\ 1 < i < k - 1 (V là véctơ riêng của HkG, Vi < k).

Lt L = LLt G iả sử z e R" là m ột véctơ tùy ý Đặt y = Lz, w = Luk Khi đó, theo (7.28) ta có:

Trang 23

Bây giờ ta chứng minh các kết luận b) theo qui nạp.

• G iả thiết gk 1 d' với mọi i < k Ta chứng m inh gk+l 1 d', nghĩa là

<gk+l, d ‘> = 0 với mọi i < k + 1 (7.31)Với i = k : < gk+l, d k> = 0 theo (7.26)

Với i < k : < gk+l, d'> = < gk + XkG d \ d'>

= < g \ d'> + x.k< dk, Gd'> = 0 (theo (7.29) và giả thiết qui nạp)

• G iả thiết Hku' = v' với mọi i < k Ta chứng minh

Hk+1u' = v' với mọi i < k + 1 (7.32)Với i = k : H k+|Uk = vk theo (7.30)

„ „I „ ì vk(vk)Tui (Hkuk)(Hkuk)TuiVới i < k : H k+|U = Hku + ’ k - k k -•

< u , V > < u , H ku •>

Ta thấy

< v \ u‘> = <A-kd \ À,Gd'> (do / = A.kdk và u' = >.,Gd' theo (7.29))

= X.kXj < dk, G d'> = 0 (theo giả thiết qui nạp)

và <H ku \ u‘> = < u \ H ku' > = < G v \ v‘>

(do uk = G v \ H ku' = v' với m ọi i < k)

= XkXị < G dk, d'> = x , l , < d \ Gd'> = 0 (theo giả thiết qui nạp)

Vì thế, H k+|U' = H ku' + 0 - 0 = V1 (Vi < k)

• G iả thiết < d k, G d‘> = 0, với mọi i < k T a chứng m inh

<dk+l, Gd'> = 0, Vi < k + 1 (7.33)Thật vậy, với i = 1 , , k ta có:

<dk+\ Gd'> = - <H k+1gk+l, vỉ/Kì> (do dk+' = - Hk+|gk+l và (7.29))

= - < g k+l, H k+|U'Ai> = - < g k+1, v‘A ,> (do (7.32))

= - < g k+l, d ’> = 0 (do gk+l 1 d' theo (7.31))

Trang 24

Hệ thức (7.33) cho thấy các véctơ d 1, , d n độc lập tuyến tính,

vì chúng là các hướng liên hợp đối với m a trận G Do đó v ' v"cũng độc lập tuyến tính Hơn nữa, từ (7.29), (7.32) suy ra H ^iG v1 =

V* (i = 1 , n) D o V1, , v" lập nên một cơ sở của R" nên HW|Gv = V

vối mọi V e RL" Vì th ế phải có Hn+1G = In (m a trận đơn vị cấp n)

Từ đó H nt| = G ’ 1

Từ (7.31) suy ra ràng véctơ g n+l vuông góc với n véctơ độc lập tuyến tính d 1, d 2, , dn Vì th ế g n+l vuông góc với mọi d 6 R", nghĩa là g n+l = 0 hay V f(xn+I) = 0 Vậy cực tiểu của hàm toàn phương f(x) tìm được sau n bước lặp

Định lý được chứng minh đầy đủ

V í dụ 7.2 Dùng phương pháp D avidon - Fletcher - Powell tìm

cực tiểu tự do của hàm toàn phương (lồ i bậc hai) f(X| Xi) = (x, - 6)2

Trang 27

giảm nhanh nhất (hay hướng dốc nhất) giá trị của hàm Vì thế, từ

điểm x k ta có thể tìm cực tiểu dọc theo hướng đối gradient - V f (x k)

Trang 28

(gradient) của hàm đó Để ý là tại một điểm bất kỳ, hướng véctơ gradient luôn vuông góc với m ặt mức của hàm tại điểm đó.

Phương pháp tìm cực tiểu của hàm theo công thức (7.34)

thường được gọi là plìương pliáp gradient hay phương pháp hướng

dốc nhất Thủ tục lặp (7.34) sẽ dừng khi IIVf(xk)ll hoặc llxk+l - xkll

đủ nhỏ

Tuy nhiên đối với hàm toàn phương (lồi bậc hai), việc tìm cực

tiểu sẽ được tiến hành theo các liướng liên hợp và quá trình lặp sẽ

kết thúc sau không quá n lần thay đổi hướng tìm Vì thế, trước hết

ta nhắc lại định nghĩa hướng liên hợp, các tính chất cơ bản của chúng và sau dó giải thích lợi ích của việc sử dụng các hướng liên hợp này

Xét hàm toàn phương

f(x) = a + <b, x> + ‘/2 <x, Gx>,trong đó G là m ột m a trận nxn đối xứng xác định dương, b e Kn và

a e IR cho trước Rõ ràng, hàm f đạt cực tiểu tại điểm X* xác định

T ín h c h ấ t 7.1ế N ếu p 1, p2, , pk là các liướng Hên hợp (trong

K n) đôi với ma trận G tlù các v é c tơ đ ó là dộc lập tuyến tính.

C h ứ n g m in h Xét đảng thức véctơ

« i p 1 + a 2p 2 + + a kp k = 0 với CC|, , a k là những số thực tùy ý Khi đó, với bất kỳ i (1 < i < k)

ta có:

Trang 29

< £ ( X jp j , Gp'> = X a j <Pi’ G Pj> = °-

Do p 1, , pk liên hợp đối với G nên <1^, Gp'> = o, i * j Từ

đẳng thức trên suy ra a¡<p', Gp'> = 0 Do p' * 0 và G xác định

dương nên <p', G p'> > 0, từ đó 0C| = 0 Vì i tùy ý nên điều này chứng

tỏ các véctơ p 1, p2, , pk là độc lập tuyến tính □

T ín h ch ấ t 7 2 Cho n véctơ độc lập tuyến tính V1, V2, , v" Ta

có thể xây dựng các hướng liên hợp theo lược đồ G ram -Schm idth như sau:

từ điều kiện liên hợp (7.36))

T ín h c h ấ t 7.3 G iả sử x ' là m ột điểm tùy ý và p 1, p2, , p" là n hướng liên hợp đối với G Ký hiệu X* là diểm cực tiếu của hàm f(x)

đã cho Theo tính chất 7.1, các véctơ p‘ (i = 1, , n) lập nên m ột cơ

sờ của R n, vì thế

X * - X 1 = X a ¡p ' ' ( 7 3 7 )

i=i

N hờ dùng hệ thức (7.35) và (7.36) ta thấy a k (k = 1, , n) có biểu diễn:

a k = < p \ G(x* - x ')> / < p \ Gpk> = - < p \ Vf(x')>/ <pk, G p S (7.38)

Hệ quả trực tiếp của tính chất này là xuất phát từ x ' và dùng thủ tục lặp

Trang 30

xk+l = xk + a kpk k = 1 ,2 n (7.39)vói các a k xác định theo (7.38) ta sẽ đạt tới X* sau không quá n bước.

'Thật vậy, theo (7.37) - (7.39) ta có xn+l = X 1 + ^ ( X j p 1 = X*.

G iả sử q < n là chì số lớn nhất thỏa mãn a h , a q -*■ 0 Khi đó theo

(7 3 9 ) ta c ó x n+l = = x4+l Từ x n+l = X* suy ra x 4+l = X* nghĩa là

quá trình lặp dừng sau q < n bước

Sau đây sẽ trình bày phương pháp lặp hiệu quả đê tìm cực tiểu

tự do của hàm lồi bậc hai: phương pháp gradient liên hợp Fletcher - Reeves Phương pháp này cho điểm cực tiểu cùa hàm sau không quá n lần đổi hướng tìm

7.4.2 P hư ư ng p h á p F letc h er - R eeves

Giả sử ta dùng phương pháp lặp để tìm cực tiểu cùa hàm f Xuắt

phát từ một điểm bất kỳ X1 e K" và một hướng ban đầu d 1 € I ’ tùy ý

Đặt k = 1

Ở bước lặp k (k = 1, 2, ) ta xuất phát từ điểm x \ giả sử xktl

là điểm cực tiểu của f theo hướng d \ nghĩa là

trong đó Àk > 0 thỏa mãn điều kiện cần củ a cực tiểu (đạo hàm cùa

cp(Ã) = f(x k + Àdk) triệt tiêu tại / = Àk):

nghĩa là tại điểm xk+l hướng gk+l = Vf(xk+I) vuông góc với hướng dk:

ni=l

Trang 31

Á p dụng nhiều lần phép lặp (7.40), sau n bước ta được

N hư vậy, nếu tiến hành tìm theo các hướng liên hợp thì cực tiểu

của hàm toàn phương n biến sẽ nhận được sau không quá n bước Phương pháp F letcher - Reeves cho m ột cách xây dựng cụ thể các hướng liên hợp N hớ ràng ta dùng ký hiệu g(x) = Vf(x) = Gx + b và

gk = g (xk), V k = 1 ,2 ,

H ướng tìm đầu tiên là hướng dốc nhất tại x £: d 1 = — g 1 Hướng tìm tiếp theo d 2, liên hợp với hướng d 1, được tìm bằng cách đặt

d 2 = - g 2 + a , d ‘, trong đ ó a , được xác định từ điều kiện liên hợp:

Trang 32

<d2, G d '> = < - g2 + c tịd 1, G d '> = 0.

Theo công thức lặp (7.40) vói k = 1 ta có d 1 = (x2 - x'y Xị Từ đó

(7.44)

Với hàm toàn phương f(x) ta có g' = G x' + b và g 2 = Gx: + b

Từ đó g 2 - g ' = G (x2 - X1) Hơn nữa, theo (7.41): < g2, d '> = -<g2,

Đ ịn h lý 7 ế6 N ếu m ọi g' * 0 thì các hướng d 1, d 2, , dn xày

C h ứ n g m in h T a đã thấy < d2, G d '> = 0 G iả sử < d \ Gd‘> = 0 với m ọi i < k Bằng qui nạp ta sẽ chứng m inh < dk+l, G d‘> = 0 với mọi i < k ( d \ d2, , dk+l liên hợp đối với G)

• Trước hết ta chứng minh gk+l trực giao với các véctơ d 1, d2, , dk.Thật vậy, theo công thức lặp (7.40) ta có

Trang 33

• Tiếp đó ta sẽ chứng minh gk+l trực giao với các véctơ g 1, g2, , gk Thật vậy, theo (7.45) dJ = - gJ + aj_|dj' ‘ nên (7.47) có dạng:

<gk+l, dJ> = <gk+1, - g* + cxj.id-’"1 > = - < g k+l, gJ> + (Xj-I<gk+I, dj l> = 0.

Từ đó suy ra < g k+1, g-1 > = 0 vì theo (7.47) thì <gk+1, dJ'' > = 0 Như vậy

<gk+l, gJ> = 0 với mọi j = 1, 2 , , k (7.48)

• Cuối cùng ta chứng minh rằng dk+l xác định theo hệ thức(7.45), (7.46) liên hợp với các véctơ d 1, d 2, , dk đối với m a trận G.Thật vậy, với j = ỉ , 2, Ễ.ẳ , k - 1 từ tính liên hợp của các véctơ d' (1 < i < k) theo giả thiết qui nạp, ta có

< dk+1, G dJ > = - < gk+l, GdJ > + a k< dk, GdJ > = - < gk+1, GdJ >

T heo hệ thức lặp (7.40), dJ = (xJ+l - x ó / Ằj và từ (7.48) suy ra

Trang 34

Như vậy, <dk+l, GdJ > = 0 với mọi j = 1, 2, k - 1 Để hoàn thành chứng minh ta cần chỉ rõ <dk+1, G dk > = 0 T heo (7.46) và để

ý là G dk = G (xk+I - xk)A k = (gk+l - gk)A k,

Trang 35

Vì theo (7.47), (7.48) thì mọi số hạng khác ở vế phải bằng 0

Từ đó

<dk+l, G dk> = 0

do a k được xác định theo (7.46)

Đ ịnh lý đã được chứng m inh đầy đủ

Như vậy, các hướng tìm Iheo phương pháp Fletcher - Reeves là các hướng liên hợp và điểm cực tiểu cửa hàm bậc hai f(x) được tìm sau không quá n bước

Ví d ụ 7.4 D ùng phương pháp gradient liên hợp tìm cực tiểu của hàm:

Đ iểm lặp mới X2 = x ' + t|d ' = (0; 0)T + 4 x ( l; 1)T = (4; 4)T với

f( x 2) = 6 < f( x ‘ ) = 54

Trang 36

X| = 4 + 2t và x2 = 4 - 1.

T hế vào hàm m ục tiêu ta nhận được:

cp(t) = f(x2 + td2) = (4 + 2t - 6)2 + 2(4 - 1 - 3)2

= (2t - 2)2 + 2( 1 - 1)2 = 6t2 - 1 2t + 6

Cho đạo hàm cp’(t) = 12t - 12 = 0, ta được t2 = l ề

Đ iểm lặp mới X3 = X2 + t2d2 = (4; 4)T + (2; - 1)T = (6; 3)T, fix 3) = 0.

Bước lặp 3 Ta có V f(x3) = (0; 0)T D ừng thuật toán: X* = X3 = (6; 3)t là nghiệm cực tiểu toàn cục của f(x) (do f là hàm lồi)

Q uá trình giải V í dụ 7.4 được m inh họa ỏ H ình 7.5

V í d ụ 7 Ỗ5 Tìm cực tiểu tự do của hàm lồi bậc hai ba biến:

f(x „ x 2, X,) = 3(X| - l)2 + 2 (x2 - 2 Ÿ + ( x , - 3 )2.

T a nhận thấy g(x) — V f(x) = ( 6 \, - 6, 4 x 2 - 8, 2 x 3 - 6)T Ta chọn điểm xấp xỉ ban đầu x ' = (9, - 7, 1 1)T

Các bước lặp của phương pháp gradient liên hợp được tóm lắt như sau (N hớ rằng, gk = V f(xk), d ‘ = - g 1, d k+1 = - gk+1 + a kdk, xk+l =

Trang 37

xk + Ầkd k với a k = < gk+l, g k+l> / <gk, g k> và x k đạt cực tiểu của

Bước lặp 4 x4= (1, 2, 3)t ; g 4 = 0: Dừng tính toán

Vậy cực tiểu là X* = (1, 2, 3)T với fmin = 0 Số bước lặp đã thực hiện là 3

Hình 7.5 Ví dụ 7.4 (phương pháp gradient liên hợp)

ìa Sau đây là m ột số công thức đáng chú ý khác để tính ß k:

Trang 38

Phương pháp Fletcher-R eeves còn có thể áp dụng để tìm cực tiểu tự do của m ột hàm khả vi liên tục bất kỳ (không nhất thiết là hàm toàn phương) Cụ thể:

• Phưưng pháp Fletcher-Reeves cho hàm f € c ' (f khả vi liên tục):

1 X uất phát từ điểm bất kỳ x' e R n

2 Đặt d' = - V f(x‘) Đặt chỉ số bước lặp k = 1

3 Tim xk+1 đạt cực tiểu của f dọc theo tia x k + X d \ Ằ> 0.

4 Đặt dk+1 = - V f(x k+1) + a d k với a = IIVf(xk+l)ll2/ IIVf(xk)ll2.

5 Nếu k không là bội của n thì đặt k <- k + 1 và ư ờ lại Bước 3.

Trang 39

6 N ếu k là bội của n thì kiểm tra điều kiện dừng: IIVf(xk)ll hay llxk - x k' 1II đủ nhỏ Nếu điều kiện dừng được thỏa m ãn thì ngừng tính toán và x k là nghiệm cực tiểu cần tìm Nếu điều kiện dừng chưa thỏa mãn thì đặt x ' = xn+l và quay lại thực hiện Bước 2 (của vòng lặp tiếp theo).

Thuật toán này cho phép tìm cực tiểu của hàm toàn phương (lồi bậc hai) sau vòng lặp đầu tiên gồm n bước lặp

Có thê’ chứng m inh kết quả hội tụ sau:

Đ ịnh lý 7.7 G iả s ử liàm f kliả vi liên tục và tập {x : f(x) < f(x1 )} là com pac G iả s ử dãy ( x k Ị được xây dựng theo phương p háp

gradient liên hợp (Fletcher-R eeves) Khi dó

a) f(xk) > f(xk+1) nếu V f(xk) * 0 hoặc

b) V f(xk) = 0 với k nào đó lioặc

c) l i m i t e IIVf(xk)ll = 0 và m ọi điểm tụ X của dãy )x k} tlìỏa mãn V f( X ) = 0 N ếu X là ngliiệm duy nliất của phương trình V f(x)

= 0 trên tập {x : f(x) < f(x ')} thì X là điểm cực tiểu của liàm f.

Khoảng những năm 70 của th ế kỷ XX, các phương pháp gradient được nghiên cứu rất mạnh và đã thu được những Ihành tựu đáng kể N hiều công trình nghiên cứu đã được công bố, trong chương này mới chi nêu một số phương pháp tiêu biểu trong rất nhiều các phương pháp thời đó

■& Tóm lại, chương này đã trình bày một số phương pháp chính tìm cực tiểu không ràng buộc cứa hàm n biến Các phương pháp này đòi hỏi sử dụng tới các đạo hàm riêng bậc nhất hoặc bậc hai của hàm Đ áng chú ý là các phương pháp gradient (đại diện là phương pháp hướng dốc nhất), gradient liên hợp (tiêu biểu là phương pháp Fletcher-R eeves), phương pháp Newton (thuần túy, suy rộng) và phương pháp tựa N ew ton, trong số dó có phương pháp Davidon- Fletcher-Pow ell Mỗi phương pháp đểu có nêu rõ điều kiện hội tụ

và tốc đ ộ hội tụ

Trang 40

3 Dùng phương pháp gradient liên hợp tìm cực tiểu của các hàm

số sau:

a) f(X |, x 2) = 2 x Ị - 2 x ,x2 + \ \ + 2 x , - 2 x2 (điểm ban đầu X1 =

(1,5; 1,5)t )

b) f(X|, x 2) = !4 (x / - 4 x , x 2 + X jH d iem ban đầu X1 = (0,5; 0,5)T).

4 Dùng phương pháp Fletcher-R eeves tìm cực tiểu cùa hàm Rosenbrock:

Nếu hệ có nghiệm thì giá trị cực tiểu của f(x) bằng 0 Còn nếu

hệ vô nghiệm thì có thể lây điểm cực tiểu tìm được cùa f(x)

Ngày đăng: 10/06/2018, 22:54

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] L. A kulitch (19 8 6 ), Q ui lioạcli toán học: V í dụ và b à i tậ p , N xb C ao đ ẳ n g , M á t-x c ơ -v a (tiến g N g a ) Sách, tạp chí
Tiêu đề: Q ui lioạcli toán học: V í dụ và b à i tậ p
[2] B. M . A le k c e e v , E. M . G a le e v và V . M . T ik h o m ir o v (1 9 8 4 ), Tuyển tậ p c á c b à i lập vê tố i ưu h ó a, N xb Khoa học, M át-xcơ- va (tiến g N g a ) Sách, tạp chí
Tiêu đề: Tuyển tậ p c á c b à i lập vê tố i ưu h ó a
[3] D. p. Bertsekas (1 9 9 9 ), N on lin ear P rogram m in g, 2 nd edition, A th en a S c ie n tific , B elm o n t, M a ssa c h u se tts Sách, tạp chí
Tiêu đề: N on lin ear P rogram m in g
[4] B. D. Bunday (1 9 8 4 ), Basic O ptim isation M e th o d s, Edward A rn old Sách, tạp chí
Tiêu đề: Basic O ptim isation M e th o d s
[5] R. F letch er (1 9 8 7 ), P r a c t i c a l M e t h o d s o f O p t i m i z a t i o n , 2 nd edition, John W iley &amp; Sons Sách, tạp chí
Tiêu đề: P r a c t i c a l M e t h o d s o f O p t i m i z a t i o n
[6] V . G . K arm an ov ( 1 9 7 5 ) , Q u i h o ạ c h t o á n h ọ c , N x b K h oa h ọ c, M á t-x c ơ -v a (tiến g N g a ) Sách, tạp chí
Tiêu đề: Q u i h o ạ c h t o á n h ọ c
[9] D in h T h e L u c ( 1 9 8 9 ) , I n t r o d u c t i o n t o N o n l i n e a r O p t i m i z a t i o n , D ep artm en t o f M a th e m a tics o f C IE A -IP N , M e x ic o Sách, tạp chí
Tiêu đề: I n t r o d u c t i o n t o N o n l i n e a r O p t i m i z a t i o n
[11] J. N oced al and s. J. W right (1999), N u m erica l O p tim iza tio n , Springer Sách, tạp chí
Tiêu đề: N u m erica l O p tim iza tio n
Tác giả: J. N oced al and s. J. W right
Năm: 1999
[12] P. Pedregal (2 0 0 4 ), Introduction to O p tim iza tio n . Springer Sách, tạp chí
Tiêu đề: Introduction to O p tim iza tio n
[13] J. J. Strodiot (2 0 0 2 ), N u m erica l M eth o d s ill O p tim ization , Namur - Belgium Sách, tạp chí
Tiêu đề: N u m erica l M eth o d s ill O p tim ization
[15] Trần VQ Thiệu (2 0 0 4 ), G iá o trìnli tố i ưu tuyến lính, N xb Đại học Q uốc gia Hà N ội Sách, tạp chí
Tiêu đề: G iá o trìnli tố i ưu tuyến lính

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm