Bài giảng Tối ưu hóa nâng cao - Chương 3: Bài toán tối ưu không ràng buộc cung cấp cho người học các kiến thức: Bài toán tối ưu không ràng buộc, điều kiện cực tiểu địa phương, cực tiểu của hàm lồi, tổng quan về thuật toán,... Mời các bạn cùng tham khảo.
Trang 1Bài toán tối ưu không ràng buộc
Hoàng Nam Dũng
Khoa Toán - Cơ - Tin học, Đại học Khoa học Tự nhiên, Đại học Quốc gia Hà Nội
Trang 2Bài toán tối ưu không ràng buộc (unconstrained)
min
x f (x )với f : Rn→ R là một hàm trơn (smooth)
Trang 3Bài toán tối ưu không ràng buộc (unconstrained)
min
x f (x )với f : Rn→ R là một hàm trơn (smooth)
Trang 4Bài toán tối ưu không ràng buộc (unconstrained)
min
x f (x )với f : Rn→ R là một hàm trơn (smooth)
Trang 5Bài toán tối ưu không ràng buộc (unconstrained)
min
x f (x )với f : Rn→ R là một hàm trơn (smooth)
Trang 6Ví dụ
Hàm số dưới đây có nhiều cực tiểu địa phương và khó để tìm cựctiểu toàn cục
Trang 7Điều kiện cực tiểu địa phương
Định lý (Khai triển Taylor)
Cho f : Rn→ R khả vi liên tục và p ∈ Rn Ta có
f (x + p) = f (x ) + ∇f (x + tp)Tp,với t ∈ (0, 1) nào đó
Nếu f khả vi liên tục hai lần thì
f (x + p) = f (x ) + ∇f (x )Tp + 1
2p
T∇2f (x + tp)p,với t ∈ (0, 1) nào đó
3
Trang 8Điều kiện cực tiểu địa phương
Định lý (Khai triển Taylor)
Cho f : Rn→ R khả vi liên tục và p ∈ Rn Ta có
f (x + p) = f (x ) + ∇f (x + tp)Tp,với t ∈ (0, 1) nào đó Nếu f khả vi liên tục hai lần thì
f (x + p) = f (x ) + ∇f (x )Tp + 1
2p
T∇2f (x + tp)p,với t ∈ (0, 1) nào đó
Trang 9Điều kiện cực tiểu địa phương
4
Trang 10Điều kiện cực tiểu địa phương
Trang 11Điều kiện cực tiểu địa phương
4
Trang 12Điều kiện cực tiểu địa phương
Trang 13Điều kiện cực tiểu địa phương
Trang 14Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửa
xác định dương (positive semidefinite)
Trang 15Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửa
xác định dương (positive semidefinite)
5
Trang 16Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửa
xác định dương (positive semidefinite)
Chứng minh
Từ định lý trước ta có ∇f (x∗) = 0 Giả sử ∇2f (x∗) không phải
nửa xác định dương, tức là tồn tại p sao cho pT∇2f (x∗)p < 0
Trang 17Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửa
xác định dương (positive semidefinite)
Chứng minh
Từ định lý trước ta có ∇f (x∗) = 0 Giả sử ∇2f (x∗) không phải
nửa xác định dương, tức là tồn tại p sao cho pT∇2f (x∗)p < 0.Vì
∇2f liên tục quanh x∗ nên tồn tại T > 0 sao cho
5
Trang 18Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửa
xác định dương (positive semidefinite)
Chứng minh
Từ định lý trước ta có ∇f (x∗) = 0 Giả sử ∇2f (x∗) không phải
nửa xác định dương, tức là tồn tại p sao cho pT∇2f (x∗)p < 0.Vì
∇2f liên tục quanh x∗ nên tồn tại T > 0 sao cho
Trang 19Điều kiện cực tiểu địa phương
Định lý (Điều kiện cần bậc hai)
Nếu x∗ là một cực tiểu địa phương và ∇2f tồn tại và liên tục
trong một lân cận mở của x∗ thì ∇f (x∗) = 0 và ∇2f (x∗) là nửaxác định dương (positive semidefinite)
Chứng minh
Từ định lý trước ta có ∇f (x∗) = 0 Giả sử ∇2f (x∗) không phải
nửa xác định dương, tức là tồn tại p sao cho pT∇2f (x∗)p < 0.Vì
∇2f liên tục quanh x∗ nên tồn tại T > 0 sao cho
Trang 20Điều kiện cực tiểu địa phương
Điều kiện cần bậc 2 không phải là điều kiện đủ
Ví dụ với f (x ) = x3 thì f0(0) = 0 và f00(0) = 0, tức là x = 0 thỏamãn điều kiện cần bậc 2, tuy nhiên nó không phải là một điểm cựctiểu địa phương của x3
Trang 21Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi xthuộc hình cầu B := {y ∈ Rn| ky − x∗k ≤ r }
Với p ∈ Rn thỏa mãn p 6= 0 và kpk < r , ta có x∗+ tp ∈ B với mọi
Trang 22Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi x
Trang 23Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi x
Trang 24Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi x
Trang 25Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi x
Trang 26Điều kiện cực tiểu địa phương
Định lý (Điều kiện đủ bậc hai)
Nếu ∇2f tồn tại và liên tục trong một lân cận mở của x∗,
∇f (x∗) = 0 và ∇2f (x∗) là xác định dương (positive definite) thì
x∗ là một cực tiểu địa phương ngặt
Chứng minh
Vì ma trận Hessian ∇2f liên tục và xác định dương tại x∗ nên ta
có thể chọn r > 0 sao cho ∇2f (x ) cũng xác định dương với mọi xthuộc hình cầu B := {y ∈ Rn| ky − x∗k ≤ r }
Với p ∈ Rn thỏa mãn p 6= 0 và kpk < r , ta có x∗+ tp ∈ B với mọi
t ∈ (0, 1).Do đó
pT∇2f (x∗+ tp)p > 0, ∀t ∈ (0, 1)
Theo định lý Taylor tồn tại t ∈ (0, 1) sao cho
1
Trang 27Lưu ý
Điều kiện đủ bậc 2 không phải là điều kiện cần cho cực tiểu địa
phương ngặt
Hàm f (x ) = x4 có cực tiểu ngặt tại x = 0 tuy nhiên đạo hàm bậc
2 của nó bằng 0, tức là không xác định dương
8
Trang 28Lưu ý
Điều kiện đủ bậc 2 không phải là điều kiện cần cho cực tiểu địa
phương ngặt
Hàm f (x ) = x4 có cực tiểu ngặt tại x = 0 tuy nhiên đạo hàm bậc
2 của nó bằng 0, tức là không xác định dương
Trang 29Cực tiểu của hàm lồi
Chứng minh
Xem định lý 2.5 sách của Nocedal
Câu hỏi: Với cực đại thì kết quả tương tự thế nào?
9
Trang 30Cực tiểu của hàm lồi
Định nghĩa
Cho một hàm f khả vi Một điểm x thỏa mãn ∇f (x ) = 0 gọi là
một điểm dừng
Định lý
Nếu f lồi thì mọi điểm cực tiểu địa phương của f cũng là cực tiểu
toàn cục Ngoài ra nếu f khả vi thì mỗi điểm dừng là một cực tiểu
toàn cục
Chứng minh
Xem định lý 2.5 sách của Nocedal
Câu hỏi: Với cực đại thì kết quả tương tự thế nào?
Trang 31Cực tiểu của hàm lồi
Chứng minh
Xem định lý 2.5 sách của Nocedal
Câu hỏi: Với cực đại thì kết quả tương tự thế nào?
9
Trang 32Tổng quan về thuật toán
I Các thuật toán đều đòi hỏi được cung cấp một điểm xuất
phát x0
I Từ đó thuật toán tạo ra chuỗi x1, x2,
I Thuật toán sẽ dừng lại nếu không có sự cải thiện hay có vẻnghiệm đã xấp xỉ đủ tốt
I Có 2 chiến thuật cơ bản để tính điểm tiếp theo xk+1 từ điểmhiện tại xk, đó là line search và trust region
Trang 33Tổng quan về thuật toán
I Các thuật toán đều đòi hỏi được cung cấp một điểm xuất
phát x0
I Từ đó thuật toán tạo ra chuỗi x1, x2,
I Thuật toán sẽ dừng lại nếu không có sự cải thiện hay có vẻnghiệm đã xấp xỉ đủ tốt
I Có 2 chiến thuật cơ bản để tính điểm tiếp theo xk+1 từ điểmhiện tại xk, đó là line search và trust region
10
Trang 34Tổng quan về thuật toán
I Các thuật toán đều đòi hỏi được cung cấp một điểm xuất
phát x0
I Từ đó thuật toán tạo ra chuỗi x1, x2,
I Thuật toán sẽ dừng lại nếu không có sự cải thiện hay có vẻ
nghiệm đã xấp xỉ đủ tốt
I Có 2 chiến thuật cơ bản để tính điểm tiếp theo xk+1 từ điểmhiện tại xk, đó là line search và trust region
Trang 35Tổng quan về thuật toán
I Các thuật toán đều đòi hỏi được cung cấp một điểm xuất
phát x0
I Từ đó thuật toán tạo ra chuỗi x1, x2,
I Thuật toán sẽ dừng lại nếu không có sự cải thiện hay có vẻnghiệm đã xấp xỉ đủ tốt
I Có 2 chiến thuật cơ bản để tính điểm tiếp theo xk+1 từ điểmhiện tại xk, đó là line search và trust region
10
Trang 36Line search strategy
Ở bước k thuật toán chọn một hướng pk và tìm kiếm theo hướng
đó từ giá trị hiện tại xk để tìm được điểm tiếp theo với hàm mục
Trang 37Line search strategy
Ở bước k thuật toán chọn một hướng pk và tìm kiếm theo hướng
đó từ giá trị hiện tại xk để tìm được điểm tiếp theo với hàm mục
11
Trang 38Line search strategy
Ở bước k thuật toán chọn một hướng pk và tìm kiếm theo hướng
đó từ giá trị hiện tại xk để tìm được điểm tiếp theo với hàm mụctiêu thấp hơn
Để tìm khoảng cách đi theo hướng này ta có thể giải bài toán tối
ưu 1 chiều
min
α≥0f (xk+ αpk)
Thực tế ta sẽ không giải chính xác vì nó tốn kém và không cần
thiết Thay vào đó ta chỉ giải xấp xỉ (tương đối lỏng) qua một sốbước lặp
Trang 39Trust region strategy
Ở bước k ta xây dựng một hàm xấp xỉ mk của f Hàm này xấp xỉ
f tốt quanh xk và có thể tệ khi ở xa
Do đó ta chỉ tìm cực tiểu của
mk trong miền quanh xk qua việc xét bài toán
min
p mk(xk+ p), sao cho xk + p thuộc trust region
Nếu điểm được tạo ra không có giá trị hàm mục tiêu giảm đủnhiều thì ta kết luận rằng trust region quá lớn và phải thu hẹp lại
và giải lại bài toán tối ưu trên
Thông thường trust region là một hình cầu định nghĩa bởikpk2 ≤ ∆ với ∆ > 0 được gọi là bán kính trust region
mk thường được chọn là hàm bậc 2
mk(xk + p) = f (xk) + pT∇f (xk) +1
2p
TBkpvới ma trận Bk là ma trận Hessian ∇2f (xk) hay xấp xỉ của nó
12
Trang 40Trust region strategy
Ở bước k ta xây dựng một hàm xấp xỉ mk của f Hàm này xấp xỉ
f tốt quanh xk và có thể tệ khi ở xa Do đó ta chỉ tìm cực tiểu của
mk trong miền quanh xk qua việc xét bài toán
min
p mk(xk + p), sao cho xk + p thuộc trust region
Nếu điểm được tạo ra không có giá trị hàm mục tiêu giảm đủnhiều thì ta kết luận rằng trust region quá lớn và phải thu hẹp lại
và giải lại bài toán tối ưu trên
Thông thường trust region là một hình cầu định nghĩa bởikpk2 ≤ ∆ với ∆ > 0 được gọi là bán kính trust region
mk thường được chọn là hàm bậc 2
mk(xk + p) = f (xk) + pT∇f (xk) +1
2p
TBkpvới ma trận Bk là ma trận Hessian ∇2f (xk) hay xấp xỉ của nó
Trang 41Trust region strategy
Ở bước k ta xây dựng một hàm xấp xỉ mk của f Hàm này xấp xỉ
f tốt quanh xk và có thể tệ khi ở xa Do đó ta chỉ tìm cực tiểu của
mk trong miền quanh xk qua việc xét bài toán
min
p mk(xk + p), sao cho xk + p thuộc trust region
Nếu điểm được tạo ra không có giá trị hàm mục tiêu giảm đủ
nhiều thì ta kết luận rằng trust region quá lớn và phải thu hẹp lại
và giải lại bài toán tối ưu trên
Thông thường trust region là một hình cầu định nghĩa bởikpk2 ≤ ∆ với ∆ > 0 được gọi là bán kính trust region
mk thường được chọn là hàm bậc 2
mk(xk + p) = f (xk) + pT∇f (xk) +1
2p
TBkpvới ma trận Bk là ma trận Hessian ∇2f (xk) hay xấp xỉ của nó
12
Trang 42Trust region strategy
Ở bước k ta xây dựng một hàm xấp xỉ mk của f Hàm này xấp xỉ
f tốt quanh xk và có thể tệ khi ở xa Do đó ta chỉ tìm cực tiểu của
mk trong miền quanh xk qua việc xét bài toán
min
p mk(xk + p), sao cho xk + p thuộc trust region
Nếu điểm được tạo ra không có giá trị hàm mục tiêu giảm đủ
nhiều thì ta kết luận rằng trust region quá lớn và phải thu hẹp lại
và giải lại bài toán tối ưu trên
Thông thường trust region là một hình cầu định nghĩa bởi
kpk2 ≤ ∆ với ∆ > 0 được gọi là bán kính trust region
mk thường được chọn là hàm bậc 2
mk(xk + p) = f (xk) + pT∇f (xk) +1
2p
TBkpvới ma trận Bk là ma trận Hessian ∇2f (xk) hay xấp xỉ của nó
Trang 43Trust region strategy
Ở bước k ta xây dựng một hàm xấp xỉ mk của f Hàm này xấp xỉ
f tốt quanh xk và có thể tệ khi ở xa Do đó ta chỉ tìm cực tiểu của
mk trong miền quanh xk qua việc xét bài toán
min
p mk(xk + p), sao cho xk + p thuộc trust region
Nếu điểm được tạo ra không có giá trị hàm mục tiêu giảm đủ
nhiều thì ta kết luận rằng trust region quá lớn và phải thu hẹp lại
và giải lại bài toán tối ưu trên
Thông thường trust region là một hình cầu định nghĩa bởi
kpk2 ≤ ∆ với ∆ > 0 được gọi là bán kính trust region
mk thường được chọn là hàm bậc 2
mk(xk + p) = f (xk) + pT∇f (xk) +1
2p
TBkpvới ma trận Bk là ma trận Hessian ∇2f (xk) hay xấp xỉ của nó 12
Trang 44Line search vs trust region
Về mặt nào đó có thể coi phương pháp line search và trust region
khách nhau về thứ tự chọn hướng và khoảng cách
Line search chọn hướng trước rồi theo hướng đó chọn khoảng cách.Trust region cố định khoảng cách tối đa trước rồi chọn hướng tốtnhất theo ràng buộc đó
Trang 45Line search vs trust region
Về mặt nào đó có thể coi phương pháp line search và trust region
khách nhau về thứ tự chọn hướng và khoảng cách
Line search chọn hướng trước rồi theo hướng đó chọn khoảng cách
Trust region cố định khoảng cách tối đa trước rồi chọn hướng tốtnhất theo ràng buộc đó
13
Trang 46Line search vs trust region
Về mặt nào đó có thể coi phương pháp line search và trust regionkhách nhau về thứ tự chọn hướng và khoảng cách
Line search chọn hướng trước rồi theo hướng đó chọn khoảng cách.Trust region cố định khoảng cách tối đa trước rồi chọn hướng tốtnhất theo ràng buộc đó
Trang 47Tài liệu tham khảo
Chương 2, J Nocedal and S Wright, Numerical Optimization,
Springer
Chi tiết về Line search: Chương 3, J Nocedal and S Wright,
Numerical Optimization, Springer
Chi tiết về Trust region: Chương 4, J Nocedal and S Wright,
Numerical Optimization, Springer
14