(2.11) Lấy (2.10) trừ (2.11) ta đƣợc
34
Doa diT 0 , i Wˆ, i j , ta nhân T
d vào hai vế của (2.12) đƣợc:
(2.13)
Ngoài ra d 0. Thật vậy, nếu d 0 thì (3) trở thành:
ˆ ˆ 0 , ˆ 0 .
ˆ , i i i j j j
a a
i W i j
Suy ra {ai,i Wˆ } là phụ thuộc tuyến tính, điều này mâu thuẫn với giả thiết.
Do đó từ (2.13) ta có ˆ T T 0
ja dj d G d vì d 0 và vì G là xác định dƣơng. Nhƣ vậy ˆj 0,a dTj 0 . Cuối cùng áp dụng lần lƣợt: định nghĩa của q, dùng công thức (2.11) và a diT 0 , i Wˆ , i j ta thu đƣợc : ˆ ˆ ˆ ˆ 0 ˆ T T T T i i j j q x d G x c d a d a d i W .
Nhƣ vậy nếu thì d là chấp nhận đƣợc của ( ) tại xˆ vì T 0 , ˆ
i
a d i I x .
Mệnh đề sau sẽ chứng minh thuật toán dừng sau một số hữu hạn bƣớc.
Mệnh đề 2.4. Giả sử tất cả các giả thiết ở mệnh đề 2.3 là thỏa mãn. Nếu mỗi khi
0
k
d suy ra 0
k thì thuật toán dừng sau một số hữu hạn các bƣớc lặp.
Chứng minh
Theo 3 bƣớc:
Bước 1. Nếu d k 0 thì Wk là không bao giờ đƣợc xét lại trong các bƣớc tiếp
theo. Thật vậy, do dk 0, k
35 (Qk) v . đ . k 1 m i n ( ) 2 , , T T T i i k q x x G x c x a x b i W và k 1 k x x .
Nếu với một vài giá trị của j Wk thì theo mệnh đề 1, hƣớng tiếp theo k 1
d
là hƣớng giảm tại k 1 k
x x . Do đó 1
0
k
d và theo giả thiết 1 0
k . Vì vậy 2 1 k k k q x q x q x . Do 2 , 2 l k
q x q x l k , tập làm việc Wk sẽ không bao giờ đƣợc xét trong các bƣớc tiếp theo.
Bước 2. Ta thấy dk 0 xuất hiện sau nhiều nhất là n bƣớc lặp.
Thật vậy, giả sử d k 0. Chú ý rằng Wk không đƣợc rút gọn khi dk 0.
Nếu k 1 thì k 1 k k
x x d và 1
0
k
d vì k 1
x là nghiệm của bài toán (Qk). Nếu k 1 thì một ràng buộc mới đƣợc bổ sung vào Wk . Vì vậy nếu k 1, k thì một ràng buộc mới đƣợc đƣa vàoWk tại mỗi bƣớc lặp. Thủ tục này đƣợc thực hiện nhiều nhất n lần vì trong trƣờng hợp này tập chấp nhận đƣợc là rút gọn tới d 0
(do giả thiết rằng các véc tơ ai,i Wk là độc lập tuyến tính). Do đó d 0 sẽ xuất hiện sau nhiều nhất n bƣớc lặp.
Bước 3. Kết luận.
Do tồn tại số hữu hạn các tập làm việc Wk khác nhau, số lớn nhất của các bƣớc lặp là “số của các tập làm việc nhân với n ”.
36
Chương 3. Phương pháp SQP giải bài toán quy hoạch phi tuyến
Chƣơng 3 trình bày các phƣơng pháp SQP là phƣơng pháp Newton- Lagrange và phƣơng pháp Wilson-Han-Powell cũng nhƣ tổng hợp các tính chất và kết quả hội tụ của các phƣơng pháp. Nội dung của luận văn sử dụng các phƣơng pháp đã trình bày trong Chƣơng 2 và các kiến thức cơ sở trong Chƣơng 1 và đƣợc tham khảo trong các tài liệu [1], [5] và [9].
3.1 Phương pháp Newton-Lagrange
Xét bài toán quy hoạch phi tuyến với ràng buộc đẳng thức:
(3.1)
với và là các hàm thuộc lớp . Đặt hàm Lagrange với . Ta biết rằng là điểm KKT của (3.1) khi và chỉ khi tồn tại thỏa mãn điều kiện:
(3.2)
Theo hệ (3.2), là điểm dừng của hàm Lagrange.
Với và , áp dụng phƣơng pháp Newton để giải hệ (3.2) ta nhận đƣợc hƣớng di chuyển thỏa mãn:
37
Ta định nghĩa hàm phạt:
(3.4) Nhƣ vậy sẽ thỏa mãn:
(3.5) trong đó là gradient của P theo .
Phƣơng pháp trình bày dƣới đây dựa vào phƣơng trình (3.3), đƣợc gọi là phƣơng pháp Newton-Lagrange.
Thuật toán 1 (Phương pháp Newton-Lagrange)
Bƣớc 1: Cho ,
Bƣớc 2: Tính :
Nếu thì dừng.
Nếu không, giải (3.3) ta tìm đƣợc . Đặt Bƣớc 3:
Nếu thì chuyển
sang bƣớc 4.
Trái lại, đặt quay lại bƣớc 3. Bƣớc 4:
Đặt và quay
38
Với thuật toán trên, ta có các kết quả hội tụ sau.
Định lý 3.1. Giả sử có các đạo hàm riêng liên tục đến cấp 2. Nếu ma
trận:
(3.6)
bị chặn đều thì bất kỳ điểm tụ của dãy đƣợc sinh ra từ thuật toán 1 đều
là nghiệm của phƣơng trình .
Chứng minh
Ta chứng minh bằng phản chứng, giả sử là điểm tụ của và thỏa mãn >0.
Do là điểm tụ của nên tồn tại tập con có vô hạn phần tử và thỏa mãn :
.
Mặt khác từ điều kiện ở bƣớc 3 của thuật toán trên chúng ta thấy :
.
Cả hai điều trên dẫn tới .
Vì vậy chúng ta có (3.7)
thỏa mãn với mọi đủ lớn thuộc , Cho là nghiệm của
39 Do dẫn đến , khi đó = Từ tính bị chặn của (1.6) và từ dẫn đến ( .
Nhƣ vậy khi đủ lớn thuộc chúng ta có
không đúng với (3.7) bởi vì . Định lý đƣợc chứng minh
Định lý 3.2. Giả sử rằng có các đạo hàm riêng liên tục cấp 2. Nếu
ma trận (3.6) bị chặn đều, thì bất kì điểm tụ của dãy đƣợc sinh bởi thuật toán 1 đều là điểm KKT của bài toán (3.1).
Chứng minh
Giả sử định lý không đúng, khi đó do tính đơn điệu của .
Giới hạn này và điều kiện ở bƣớc thứ 3 của thuật toán dẫn đến
40
Suy ra
. (3.8)
Bởi vì
nên tồn tại hằng số dƣơng thỏa mãn:
(3.9) Cho là điểm tụ bất kì của . Ta định nghĩa tập với bất kỳ hằng số dƣơng cho trƣớc. Từ (3.9) ta thấy tồn tại hằng số thỏa mãn
với mọi
Từ (3.8) tồn tại số thỏa mãn
Bởi vì là điểm tụ của nên tồn tại thỏa mãn:
Từ các bất đẳng thức trên và chúng ta có
Vì vậy từ trên suy ra
Kết hợp với định lý trƣớc không tồn tại điểm tụ nào của điều đó chỉ ra rằng
41
Từ 2 phƣơng trình (3.9) và (3.10), ta có
.
Với đủ lớn, điều này mâu thuẫn với (3.10). Định lý đƣợc chứng minh.
Định lý 3.3. Giả sử dãy đƣợc sinh ra từ Thuật toán 1 hội tụ tới , nếu
có các đạo hàm riêng liên tục đến cấp 3 tại lân cận của , có hạng bằng số cột, và điều kiện đủ bậc 2 đƣợc thỏa mãn tại , thì , và:
(3.11)
Chứng minh
Bởi vì thuật toán 1 là phƣơng pháp Newton-Lagrange với hàm phạt (3.4)-(3.5) và vì điều kiện đủ bậc hai đƣợc thỏa mãn dẫn đến ma trận
là không suy biến.
Suy ra với mọi đủ lớn.
Từ điều này và do hàm và có đạo hàm riêng liên tục đến cấp ba, ta suy ra bƣớc thức 3 của Thuật toán 1 đúng với Nhƣ vậy ta có công thức (3.11).
42
Bổ đề 3.1. Từ định lý 3.3, ta có
,
với . (3.12)
Chứng minh
Từ chứng minh của định lý 3.3 chúng ta thấy rằng với mọi đủ lớn từ đó ta có
=
=
=
Từ trên và từ điều kiện ma trận không chính quy dẫn đến bổ đề đƣợc chứng minh. Nhƣ vậy ta đã trình bày về Thuật toán Newton- Lagrange là thuật toán cơ bản cho phép phát triển các thuật toán SQP khác. Ngƣời ta nhận thấy rằng nhìn chung phƣơng pháp SQP là một phƣơng pháp tốt để giải các bài toán tối ƣu phi tuyến có số chiều nhỏ hoặc trung bình.
43
(3.13)
. (3.14)
Dạng ma trận của hệ là:
(3.15)
với nghiệm là và . Khi đó, đƣợc cho bởi: . Dễ thấy, (3.15) là điều kiện KKT của bài toán con :
(3.16)
ở đây và .
Như vậy, phương pháp Lagrange-Newton có thể được xem như một phương pháp giải một dãy các bài toán con (3.16).
3.2 Phương pháp Wilson-Han-Powell
Chúng ta xét bài toán con (3.16) trong dạng tổng quát (cả ràng buộc đẳng thức và ràng buộc bất đẳng thức) :
(3.17)
trong đó và ,
44
Hessian của hàm Lagrange. Gọi là một nghiệm của (3.17). Véctơ là hƣớng tìm kiếm trực tiếp trong bƣớc lặp thứ k của phƣơng pháp Wilson-Han-Powell. Đặt
là nhân tử Lagrange của bài toán (3.17), ta có:
(3.18)
Ngƣời ta có thể chứng minh rằng là hƣớng giảm của nhiều hàm phạt. Ví dụ, với hàm phạt theo chuẩn 1 , chúng ta có kết quả sau.
Bổ đề 3.2. Gọi là một điểm KKT của (3.17) và là nhân tử Lagrange tƣơng
ứng. Hàm phạt
, (3.19)
với và
Khi đó ta có
. (3.20)
Nếu và thì là hƣớng giảm của hàm phạt (3.19) tại .
Thuật toán sau đây đƣợc đƣa ra bởi Han:
Thuật toán 2 (Wilson-Han-Powell)
Bƣớc 1: Cho
45
Nếu thì dừng thuật toán; Nghiệm tối ƣu là .
Nếu không, tìm thỏa mãn:
(3.21) Bƣớc 3: và tính giá trị Bƣớc 4: Tính Đặt . Cập nhật ma trận từ : với . , chuyển sang bƣớc 2.
Trong (3.21), hàm phạt là hàm phạt chính xác theo chuẩn 1 , là dãy các số không âm thỏa mãn:
Kết quả hội tụ tổng quát của thuật toán cho sau đây.
Định lý 3.4. Giả sử có các đạo hàm riêng liên tục và là
hằng số sao cho:
46
nếu thì với bất kỳ điểm tụ của dãy đƣợc sinh ra từ thuật toán 2 là một điểm KKT của bài toán (3.17).
Chứng minh
Giả sử định lý không đúng, nghĩa là tồn tại một dãy con của hội tụ tới mà không phải một điểm KKT. Do đó, có tồn tại một tập con vô hạn phần tử để:
. Không mất tính tổng quát, ta có thể đặt: Nếu , từ quan hệ có
Điều này không đúng với giả thiết là điểm không là điểm KKT. Do đó ta có thể giả sử rằng:
trong đó là một hằng số. Quan hệ trên suy ra:
(3.22) xảy ra với mọi . Từ (3.22) và giả thiết các hàm là liên tục, thì tồn tại một hằng số dƣơng sao cho
47
xảy ra với mọi . Do đó,
. Ta có thể suy ra bất đẳng thức
Bởi vì , ta có
(3.24)
Từ bất đẳng thức ở trên và , ta thấy rằng có thể chỉ có hữu hạn số phần tử, mâu thuẫn với giả thiết là có vô hạn phần tử. Do đó, định lý đã cho là đúng.
Bây giờ chúng ta thảo luận cách cập nhật là ma trận đƣợc sinh ra từ công thức quasi-Newton. Từ phân tích trong phần 3.1, chúng ta mong muốn là một xấp xỉ của ma trận Hessian của hàm Lagrange.
Để đơn giản, ta xét trƣờng hợp bài toán tối ƣu không có ràng buộc, chúng ta có thể áp dụng kỹ thuật quasi-Newton chuẩn:
Thêm vào đó
48
sẽ luôn luôn đúng với bài toán tối ƣu không ràng buộc. Do đó, chúng ta không thể áp dụng trực tiếp cập nhật theo BFGS. Powell đề nghị thay thế bởi
(3.25)
Với (3.26)
Véc tơ đã định nghĩa ở trên thỏa mãn .
Ý tƣởng chọn theo tổ hợp lồi của và là bởi vì cũng có thể coi nhƣ là xấp xỉ của vì (giả sử rằng là ma trận xác định dƣơng):
Biểu diễn hình học của công thức Powell nhƣ sau. Chuẩn hóa hình chiếu của trên hƣớng . Các công thức (3.25) và (3.26) trong thực tế chọn từ đoạn
thẳng nằm giữa và , đó là đoạn gần và hình chiếu của nó tới tối thiểu là 0.2.
S
1
0.2
49
Đã tính đƣợc véc tơ , bây giờ chúng ta có thể ứng dụng công thức BFGS để cập nhật :
50
3.4 Hiệu ứng Maratos
Với bài toán tối ƣu không có ràng buộc, nếu là một điểm dừng thỏa mãn điều kiện đủ bậc hai, tức là ma trận xác định dƣơng, thì với , và nếu
là một bƣớc di chuyển hội tụ siêu tuyến tính thì
với lớn.
Do đó, với các bài toán tối ƣu không có ràng buộc thì các bƣớc hội tụ siêu tuyến tính là chấp nhận đƣợc, nhƣng điều này chƣa chắc đã đúng với bài toán tối ƣu có ràng buộc. Hiện tƣợng này đƣợc gọi là hiệu ứng Maratos.
Ví dụ: Xét bài toán tối ƣu có ràng buộc đẳng thức sau:
v.đ.k .
Dễ thấy là nghiệm tối ƣu của bài toán và là điểm KKT của bài toán. Thật vậy, sẽ thỏa mãn điều kiện đủ bậc hai. Xét một lân cận của có dạng: là một tham số nhỏ.
Đặt thì bài toán con Wilson-Han-Powell (3.17) là:
Dễ dàng tìm đƣợc nghiệm của bài toán trên là .
Do đó, chúng ta có:
51
vì
chúng ta có:
và .
Ví dụ này cho thấy, mặc dù là bƣớc hội tụ siêu tuyến tính ( phải gần hơn nhƣng điểm lại tồi hơn đối với giá trị hàm và sự vi phạm ràng buộc. Hiệu ứng Maratos chỉ ra rằng với nhiều hàm phạt, một bƣớc hội tụ siêu tuyến tính có thể không đƣợc chấp nhận và điều này làm cho thuật toán hội tụ chậm hơn.
Có 3 phƣơng pháp để điều chỉnh hiệu ứng Maratos, đó là kỹ thuật watchdog, bƣớc hiệu chỉnh bậc 2 và hàm phạt chính xác trơn. Chúng ta chỉ xét bước hiệu chỉnh bậc 2 trong tài liệu này.
52
3.5 Bước hiệu chỉnh bậc 2
Để cải thiện hiệu ứng Maratos, ngƣời ta giải thêm một bài toán con nhƣ sau.
Một bƣớc hiệu chỉnh bậc 2 là một vector thỏa mãn:
và
(3.27)
với mọi k đủ lớn.
Gọi là nghiệm của bài toán (3.17).
Định nghĩa là nghiệm của bài toán toàn phƣơng:
(3.28)
Để đơn giản hóa, giả sử tất cả các ràng buộc là ràng buộc đẳng thức. Giả sử điều kiện đủ bậc hai thỏa mãn tại và . Theo điều kiện KKT ,
sao cho:
và (3.29)
Từ hệ trên ta suy ra (3.30)
53
Chúng ta đƣa ra các giả thiết sau đây:
Giả thiết 3.3
1.
2. có hạng bằng số cột.
3. Tồn tại các số dƣơng sao cho xảy
ra với mọi d thỏa mãn .
Từ giả thiết trên, ta có thể chứng minh các bổ đề sau.
Bổ đề 3.3. Với điều kiện của giả thiết 1 , xảy
ra với đủ lớn.
Sử dụng (3.29) và (3.30) chúng ta có
Từ hệ phƣơng trình trên và từ bồ để 3.3, chúng ta có thể chứng minh đƣợc bổ đề sau:
Bổ đề 3.4. Với điều kiện của giả thiết 1 ,
đủ lớn.
Từ hai bổ đề trên, chúng ta có thể chứng minh các bƣớc đã định nghĩa trong (3.28) thực sự là một bƣớc hiệu chỉnh bậc hai.
Chúng ta chứng minh bƣớc hiệu chỉnh bậc hai sẽ làm cho bƣớc là chấp nhận đƣợc. Đầu tiên, sử dụng (3.29) ta thấy rằng:
54 Định nghĩa véc tơ (3.31) Ta có
Hơn nữa, véc tơ định nghĩa ở trên cho phép từ (3.31) có
. (3.32)
Nếu chúng ta giả thiết, không chỉ xảy ra (3.32) :
mà còn xảy ra
55
(3.33)
xảy ra với và . Từ định nghĩa của , ta có thể chứng minh rằng: (3.34) Từ (3.33) và (3.34) ta có Từ bất đẳng thức trên ta thấy rằng Và . (3.35)
Nếu điều kiện đủ bậc 2 đƣợc thỏa mãn, tồn tại một hằng số dƣơng sao cho: (3.36)
Từ (3.35) và (3.36), suy ra
(3.37)
Hơn nữa từ (3.35) và (3.36) chúng ta có thể chứng minh rằng:
56
Suy ra là một bƣớc hội tụ siêu tuyến tính và chấp nhận đƣợc. Do đó, với việc giải thêm bài toán (3.27) chúng ta sẽ có một bƣớc hội tụ siêu tuyến tính, và phƣơng pháp Wilson-Han-Power sẽ tìm đƣợc một hƣớng chấp nhận đƣợc, là điều kiện để tìm ra nghiệm tối ƣu.
57
Chương 4. Kết quả số
4.1 Công cụ sử dụng
Trong khuôn khổ của luận văn này, ta sử dụng phần mềm Matlab 7.5 để lập trình và tiến hành khảo sát một vài bài toán tối ƣu phi tuyến dựa vào phƣơng pháp SQP.
Một số hàm đƣợc sử dụng ở đây (source code) là:
. Hàm nullspace() dùng để giải bài toán quy hoạch dạng toàn phƣơng với ràng buộc dạng đẳng thức dùng phƣơng pháp Không gian hạt nhân (mục 2.1 phần 2)
58
. Hàm activeset() dùng để giải bài toán quy hoạch toàn phƣơng với điều kiện bất đẳng thức dùng phƣơng pháp Tập hoạt động (mục 2.2 phần 2)
. Hàm sqp() là chƣơng trình chính cho kết quả của phƣơng pháp SQP. Kết hợp phƣơng pháp Lagrange-Newton và phƣơng pháp Wilson-Han-Powell, chúng ta đƣa ra thuật toán SQP (để đơn giản, ta giả sử bài toán chỉ có ràng buộc bất đẳng thức) :
59
Thuật toán SQP: