Không gian tự học dành cho sinh viên UET

Chào mừng đến với UETệ

Tìm bài giảng theo học phần, hiểu lại những kiến thức nền và ôn tập theo nhịp học của bạn.

Bài giảng
Đọc Notes, ôn nhanh với Slides và luyện tập qua các bài có lời giải.
Wiki kiến thức
Tra cứu thuật ngữ và bổ sung kiến thức nền ngay khi cần.
Góc học tập
Ôn bằng flashcard, lưu ghi chú và hẹn giờ tập trung.

Bạn có thể xem lại phần giới thiệu ở cuối trang.

Buy me a coffee

Website hoàn toàn miễn phí. Nếu thấy hữu ích, bạn có thể tặng tôi một cốc cà phê theo thông tin dưới đây nhé!

Mã QR chuyển khoản Momo
Ngân hàng
Momo
Tên người nhận
MOMO - TKTH DO MINH TRI
Số tài khoản
01MMTTT0060405229
Skip to content

Hàm tựa lồi và phương pháp chia đôi

Chủ đề 3 / 19
  1. 1. Bài toán tương đương và các phép biến đổi cơ bản
  2. 2. Khử ràng buộc đẳng thức và tối ưu theo từng nhóm biến
  3. 3. Hàm tựa lồi và phương pháp chia đôi
  4. 4. Quy hoạch tuyến tính: Các dạng viết và hình học của nghiệm
  5. 5. Những bài toán trở thành LP
  6. 6. Quy hoạch phân tuyến tính
  7. 7. Quy hoạch toàn phương và QCQP
  8. 8. Quy hoạch nón bậc hai và LP bền vững
  9. 9. Quy hoạch hình học
  10. 10. Bài toán dạng nón và quy hoạch nửa xác định
  11. 11. Phần bù Schur và các bài toán về trị riêng
  12. 12. Tối ưu vector, điểm Pareto và đường đánh đổi
  13. 13. Khớp hàm, làm mượt spline và nội suy lồi
  14. 14. Ước lượng phi tham số và thiết kế bộ phát hiện
  15. 15. Cận xác suất Chebyshev, Chernoff và tối ưu hóa ma trận
  16. 16. Quy hoạch mặt bằng và phân bổ không gian tối ưu
  17. 17. Thiết kế thí nghiệm tối ưu và Ma trận thông tin Fisher
  18. 18. Ellipsoid thể tích cực trị và Các điểm tâm hình học
  19. 19. Bài toán định vị, đặt vị trí và tối ưu hóa mạng lưới

Rất nhiều đại lượng ta muốn tối ưu là một tỉ số: Chi phí trên mỗi đơn vị sản phẩm, lợi nhuận trên vốn bỏ ra, khoảng cách tới nơi cần phục vụ so với khoảng cách tới nguồn gây nhiễu. Tỉ số hiếm khi là . Thế nhưng ở nhiều tỉ số, tập các phương án đạt một mức cho trước, chẳng hạn mọi vị trí có tỉ số khoảng cách không quá 0.3, lại là một . Những hàm có tính chất này được gọi là hàm tựa lồi.

Bài giảng này tập trung giải quyết hai câu hỏi nền tảng: Hàm tựa lồi giữ lại được những đặc tính nào của và mất đi những gì? Và nếu chỉ biết mọi tập mức dưới đều lồi, ta có thể tìm nghiệm tối ưu một cách tin cậy và chính xác hay không? Câu trả lời là hoàn toàn có thể, bằng một thuật toán rất trực quan: Thay vì cực tiểu trực tiếp, ta kiểm tra liên tục câu hỏi "có phương án nào đạt mức t không?" và thu hẹp dần khoảng chứa nghiệm bằng phương pháp chia đôi (bisection method).

1. Định nghĩa và ví dụ ​

Một hàm f:Rn→R là tựa lồi nếu miền xác định và mọi tập mức dưới

Sα={x∈domf:f(x)≤α},α∈R,

đều là . Hàm f là tựa lõm nếu −f tựa lồi, tức mọi tập mức trên {x:f(x)≥α} đều lồi, và tựa tuyến tính nếu vừa tựa lồi vừa tựa lõm. Mọi đều tựa lồi, vì tập mức dưới của hàm lồi luôn lồi, nhưng điều ngược lại sai.

Trên trục số, tập mức dưới lồi nghĩa là một khoảng, nên hàm tựa lồi liên tục trên R là hàm đơn đỉnh theo nghĩa rộng: Hoặc không tăng, hoặc không giảm, hoặc không tăng cho tới một điểm rồi không giảm sau điểm đó. Một vài ví dụ cho thấy họ hàm này rộng đến mức nào:

  • log⁡x trên (0,∞) là hàm lõm, nhưng tựa tuyến tính, vì mọi tập mức đều là khoảng.
  • Phần nguyên trên ⌈x⌉ không liên tục, nhưng tựa tuyến tính vì đơn điệu.
  • x3 trên R đơn điệu nên tựa tuyến tính, dù không lồi cũng không lõm.
  • Hàm phân tuyến tính aTx+bcTx+d trên miền cTx+d>0 tựa tuyến tính. Tập mức dưới mức α gồm các điểm thỏa đồng thời cTx+d>0 và aTx+b≤α(cTx+d), tức giao của một nửa không gian mở và một nửa không gian đóng.
  • Tích x1x2 trên R+2 không lồi cũng không lõm, nhưng tựa lõm, vì tập {x⪰0:x1x2≥α} với α>0 là vùng nằm trên một nhánh hyperbol, một .
  • Tỉ số khoảng cách ∥x−a∥2/∥x−b∥2 tựa lồi trên nửa không gian gồm các điểm gần a hơn b. Mục 3 sẽ cho thấy tập mức dưới của nó là những hình cầu.

Tính tựa lồi có một dạng bất đẳng thức Jensen tương ứng: Hàm f tựa lồi khi và chỉ khi miền xác định của nó là và

f(θx+(1−θ)y)≤max{f(x),f(y)},0≤θ≤1.

Giá trị trên một đoạn thẳng không vượt quá giá trị lớn hơn ở hai đầu mút. So với , vế phải là giá trị lớn nhất chứ không phải trung bình có trọng số, nên điều kiện yếu hơn hẳn.

2. Những điều không còn đúng ​

Ba tính chất quen thuộc của mất đi khi chuyển sang hàm tựa lồi, và cả ba đều quan trọng khi thiết kế thuật toán.

Đạo hàm bằng 0 không còn đủ. Hàm x3 tựa lồi và có f′(0)=0, nhưng x=0 chẳng phải cực tiểu, vì hàm giảm mãi về −∞ khi x giảm. Với khả vi, gradient bằng 0 là đủ để kết luận tối ưu. Với hàm tựa lồi thì không.

Cực tiểu cục bộ có thể không toàn cục. Một hàm tựa lồi có thể có một đoạn nằm ngang trên phần đang giảm của nó. Mọi điểm bên trong đoạn ấy là cực tiểu cục bộ, vì hàm không đổi quanh đó, nhưng hàm còn giảm tiếp ở phía sau. Chủ đề cực tiểu cục bộ và toàn cục của Lecture 01 đã đưa ra một ví dụ như thế. Định lý "cục bộ là toàn cục" là đặc quyền của bài toán lồi.

Tổng không còn giữ tính chất. Hàm x3 và hàm −3x đều đơn điệu, nên đều tựa lồi, nhưng tổng x3−3x có một cực đại cục bộ tại x=−1 và một cực tiểu cục bộ tại x=1. Tập mức dưới mức 0 của nó là (−∞,−3]∪[0,3], hai khoảng rời nhau, nên tổng không tựa lồi. Điều này có hệ quả thực tế: Cộng một số hạng điều chuẩn lồi vào một hàm mục tiêu tựa lồi có thể làm mất tính tựa lồi.

Một số phép toán vẫn giữ được tính tựa lồi. Giá trị lớn nhất có trọng số không âm của các hàm tựa lồi là tựa lồi, vì tập mức dưới của nó là giao các tập mức dưới. Hợp h∘g tựa lồi khi g tựa lồi và h không giảm. Hợp với một ánh xạ affine hay phân tuyến tính cũng giữ tính tựa lồi.

3. Biểu diễn tập mức bằng một họ hàm lồi ​

Để giải bài toán, ta cần mô tả tập mức dưới của f bằng những bất đẳng thức mà máy tính xử lý được. Ta tìm một họ ϕt, đánh chỉ số theo t∈R, sao cho

f(x)≤t⟺ϕt(x)≤0,

và với mỗi x, giá trị ϕt(x) không tăng theo t. Một họ như vậy luôn tồn tại về mặt lý thuyết, chẳng hạn hàm chỉ thị của tập mức dưới, nhưng ta cần một họ có công thức gọn.

Trường hợp quan trọng nhất là tỉ số của một và một hàm lõm. Giả sử p lồi, p(x)≥0, còn q lõm và q(x)>0 trên một . Khi đó f=p/q tựa lồi, và với t≥0,

p(x)q(x)≤t⟺p(x)−tq(x)≤0.

Hàm ϕt=p−tq lồi, vì p lồi và −tq lồi khi t≥0, và nó không tăng theo t vì q>0. Phép nhân chéo ở đây hợp lệ chính vì mẫu số dương.

Tỉ số khoảng cách cần một họ khác, vì ∥x−a∥−t∥x−b∥ là hiệu của hai và không lồi. Ta bình phương trước: Với 0<t<1,

∥x−a∥2∥x−b∥2≤t⟺ϕt(x)=∥x−a∥22−t2∥x−b∥22≤0.

Phép bình phương hợp lệ vì cả hai vế không âm. Hàm ϕt là hàm toàn phương với hệ số của ∥x∥2 bằng 1−t2>0, nên lồi, và nó không tăng theo t. Tập {ϕt≤0} là một hình tròn, giới hạn bởi một đường tròn Apollonius:

center: a−t2b1−t2,radius: t∥a−b∥21−t2.

Hàm tỉ số này thật sự không lồi. Đi dọc một tia xuất phát từ a, tỉ số tăng từ 0 và tiến dần tới 1 khi điểm đi ra xa, mà một bị chặn trên dọc một tia thì không thể tăng. Chẳng hạn với a=(0,0) và b=(4,0), ở độ cao x2=8 trên trục tung tỉ số là khoảng 0.894, ở độ cao 100 là khoảng 0.999, còn ở độ cao 54, trung điểm của hai vị trí ấy, tỉ số là khoảng 0.997, cao hơn trung bình 0.947 của hai đầu. Đồ thị vượt lên trên dây cung.

4. Phương pháp chia đôi ​

Gọi p⋆ là giá trị tối ưu của bài toán tựa lồi. Với một mức t, xét bài toán khả thi

find xsubject toϕt(x)≤0,x∈X.

Đây là một bài toán khả thi lồi. Nếu nó có nghiệm thì p⋆≤t, và nghiệm ấy là một phương án có giá trị không quá t. Nếu nó vô nghiệm thì mọi phương án đều có giá trị lớn hơn t, nên p⋆≥t. Mỗi câu hỏi "có hay không" vì thế cắt đôi phần trục số còn nghi ngờ, và thuật toán chia đôi (Bisection) khai thác triệt để tính chất này.

Thuật toán chia đôi. Cho l≤p⋆≤u và sai số ε>0. Lặp lại: Đặt t=(l+u)/2, giải bài toán khả thi tại mức t. Nếu khả thi, đặt u=t, nếu không, đặt l=t. Dừng khi u−l≤ε.

Khoảng [l,u] luôn chứa p⋆, và độ dài của nó giảm một nửa sau mỗi lần lặp. Sau k lần lặp, độ dài là 2−k(u−l), nên thuật toán dừng sau đúng ⌈log2⁡((u−l)/ε)⌉ lần.

Hãy áp dụng cho một ví dụ cụ thể: Cần đặt một bộ phát tín hiệu trong vùng X=[−1,1.5]×[1,3] sao cho nó gần người dùng ở a=(0,0) và xa nguồn nhiễu ở b=(4,0), theo nghĩa tỉ số ∥x−a∥/∥x−b∥ nhỏ nhất. Cả vùng X nằm trong nửa mặt phẳng x1≤2, nơi hàm tỉ số tựa lồi. Trên X tỉ số luôn nhỏ hơn 1, nên ta xuất phát từ [l,u]=[0,1]. Với ε=0.01, cần ⌈log2⁡100⌉=7 lần. Lần đầu thử t=0.5: Hình tròn khá lớn và chạm X, nên p⋆≤0.5. Lần hai thử t=0.25, vẫn chạm. Lần ba thử t=0.125, hình tròn quá nhỏ, nên p⋆≥0.125. Sau bảy lần, p⋆ bị kẹp trong [0.2344,0.2422].

Giá trị đúng là p⋆=5−2≈0.2361, đạt tại x⋆=(2−5, 1)≈(−0.236, 1) trên cạnh dưới của X. Ở đúng mức này, hình tròn Apollonius có tâm (−0.236,0) và bán kính bằng 1, nên nó tiếp xúc với cạnh x2=1 tại đúng điểm x⋆.

Chia đôi khoảng chứa giá trị tối ưu

Cần đặt một bộ phát trong vùng tô tím X sao cho tỉ số giữa khoảng cách tới người dùng A và khoảng cách tới nguồn nhiễu B nhỏ nhất. Các điểm có tỉ số không quá t lấp đầy một hình tròn, và câu hỏi "hình tròn có chạm X không" là một bài toán khả thi lồi.

x₁ = 2ABt = 0.5000

vùng được phép Xphần của X có tỉ số ≤ thình tròn không chạm Xranh giới x₁ = 2

Khoảng hiện tại [l, u] = [0.0000, 1.0000], độ dài 1.0000, sau 0 lần kiểm tra.

Hình tròn ở mức t = 0.5000 có tâm (−1.333, 0) và bán kính 2.667.

Hình tròn chạm X: có vị trí khả thi với tỉ số không quá t, nên p* ≤ t.

Gợi ý thao tác
  1. Bấm kiểm tra từng lần. Mỗi lần, khoảng [l, u] mất một nửa. Hai lần đầu, t = 0.5 rồi t = 0.25, cho kết luận gì?
  2. Bật chế độ tự chọn t và kéo từ nhỏ đến lớn. Hình tròn lớn dần và dịch sang trái thế nào, và nó chạm X đầu tiên ở đâu?
  3. Ở mức vừa đủ để chạm, hình tròn tiếp xúc với cạnh dưới của X. Tâm và bán kính của nó khi đó là bao nhiêu?
  4. Kéo t gần 1. Vì sao hình tròn phình ra rất nhanh, và điều đó nói gì về hình dạng của hàm f ở xa A và B?

Điều đáng chú ý là thuật toán không bao giờ tính giá trị hay đạo hàm của f. Nó chỉ cần một công cụ trả lời được câu hỏi khả thi của một bài toán lồi, và công cụ ấy có sẵn cho mọi dạng bài toán lồi ở các chủ đề sau. Cái giá phải trả là ta giải nhiều bài toán thay vì một, nhưng số lần chỉ tăng theo logarit của độ chính xác: Muốn sai số 10−6 trên một khoảng dài 10 thì cũng chỉ cần 24 lần.

5. Điều kiện tối ưu bậc nhất cho bài toán tựa lồi ​

Với hàm mục tiêu tựa lồi khả vi trên lồi X, ta có điều kiện đủ sau: Nếu x∈X và

∇f0(x)T(y−x)>0∀y∈X∖{x},

thì x tối ưu. So với điều kiện tối ưu của bài toán lồi, có hai khác biệt. Điều kiện này chỉ đủ chứ không cần, và nó đòi hỏi bất đẳng thức chặt, nên gradient phải khác 0. Ví dụ x3 cho thấy vì sao: Tại x=0 gradient bằng 0, mọi bất đẳng thức không chặt đều thỏa, nhưng điểm ấy không tối ưu.

6. Những câu hỏi để đào sâu ​

Câu 1. Hàm card(x) đếm số thành phần khác 0 của x∈Rn. Nó có tựa lồi không? Điều này nói gì về bài toán chọn đặc trưng thưa trong học máy?

Xem lời giải thích

Không. Với n=2, tập mức dưới {x:card(x)≤1} là hợp của hai trục tọa độ. Hai điểm (1,0) và (0,1) thuộc tập, nhưng trung điểm (12,12) có hai thành phần khác 0, nên tập không lồi. Vì vậy ràng buộc "dùng nhiều nhất k đặc trưng" không đưa được về một bài toán tựa lồi, và bài toán chọn tập đặc trưng tốt nhất nói chung là bài toán tổ hợp khó. Đây là lý do người ta thay số đặc trưng bằng chuẩn ℓ1, một , như chủ đề tối ưu vector sẽ bàn. Một chi tiết thú vị là hàm card có tính chất tựa lõm trên R+n, nhưng điều này không hỗ trợ giải quyết bài toán cực tiểu.

Câu 2. Trong phương pháp chia đôi, nếu bộ giải bài toán khả thi đôi khi trả lời sai, chẳng hạn vì sai số số học khi hình tròn chỉ vừa chạm , thì điều gì xảy ra?

Xem lời giải thích

Một câu trả lời sai đẩy khoảng [l,u] sang nhầm nửa, và từ đó trở đi khoảng không còn chứa p⋆. Thuật toán không tự phát hiện được lỗi, vì nó không bao giờ quay lại kiểm tra các mức cũ. Có điều, những câu hỏi khó trả lời nhất là những câu có t rất gần p⋆, nên một lỗi như thế chỉ làm sai lệch ở mức cỡ sai số của bộ giải. Vì vậy nên dừng chia đôi khi ε còn lớn hơn sai số của bộ giải, và giữ lại tìm được ở lần "khả thi" gần nhất, vì điểm đó là bằng chứng chắc chắn rằng p⋆≤u.

Câu 3. Không phải tỉ số nào cũng chỉ dừng ở mức tựa lồi. Hãy chứng minh rằng chi phí trung bình f(x)=x12+2x22+1x1+x2 là một trên miền x1+x2>0.

Xem lời giải thích

Ta biểu diễn tử số thành bình phương chuẩn của một vector phụ thuộc affine vào x: Đặt x12+2x22+1=∥u∥22 với u=(x1, 2x2, 1). Mẫu số s=x1+x2 cũng affine. Hàm (u,s)↦∥u∥22/s trên s>0 là phép phối cảnh của ∥u∥22, nên lồi đồng thời theo (u,s). Hợp với một ánh xạ affine giữ tính lồi, nên f lồi. Một kiểm tra bằng số cũng xác nhận Hessian của f ở mọi điểm thử trên miền đó. Bài học là trước khi dùng công cụ cho hàm tựa lồi, hãy thử xem tỉ số có phải một hàm lồi trá hình không, vì bài toán lồi có nhiều công cụ hơn hẳn.

Câu 4. Hàm phân tuyến tính vừa tựa lồi vừa tựa lõm. Như vậy bài toán cực đại một hàm phân tuyến tính trên đa diện có dễ không?

Xem lời giải thích

Có. Cực đại f tương đương cực tiểu −f, và −f cũng là một hàm phân tuyến tính, nên cũng tựa lồi. Phương pháp chia đôi áp dụng được cho cả hai chiều. Chủ đề quy hoạch phân tuyến tính còn chỉ ra một cách tốt hơn: Một phép đổi biến đưa bài toán về đúng một LP, không cần chia đôi. Đây là điểm khác với thông thường, nơi cực đại một hàm lồi trên đa diện có thể rất khó.

Câu 5. Xét hàm mục tiêu phân tuyến tính f=p/q. Một hướng tiếp cận đề xuất cực tiểu hóa biểu thức p(x)−tq(x) với t cố định thay cho f. Đề xuất này chuẩn xác ở khía cạnh nào và còn thiếu sót ở điểm nào?

Xem lời giải thích

Đề xuất đúng ở chỗ: Với t=p⋆, giá trị nhỏ nhất của p−p⋆q trên bằng 0 và đạt đúng tại nghiệm của bài toán gốc, vì p(x)−p⋆q(x)≥0 trên miền với dấu bằng khi f(x)=p⋆. Chỗ thiếu là ta không biết trước p⋆. Với một t khác, cực tiểu của p−tq cho một điểm khác. Phương pháp chia đôi chính là một cách tìm t đúng. Cũng có những thuật toán hội tụ nhanh hơn, cập nhật t bằng giá trị f tại nghiệm vừa tìm được thay vì lấy trung điểm.

7. Bài tập tự luyện ​

Bài tập 1: Nhận diện hàm tựa lồi

Với mỗi hàm sau, hãy cho biết nó có tựa lồi trên miền đã cho không, và nếu có thì vì sao: (a) f(x)=x2+4x trên x>0. (b) f(x)=e−x2 trên R. (c) f(x)=−e−x2 trên R. (d) f(x1,x2)=max{x1/x2, x2/x1} trên R++2.

Lời giải

(a) Tựa lồi, vì là tỉ số của không âm x2+4 và hàm tuyến tính dương x. Thực ra hàm x+4/x còn lồi. (b) Không tựa lồi: Tập mức dưới mức 12 là hai nửa đường thẳng |x|≥log⁡2, không lồi. Hàm này tựa lõm, vì nó tăng rồi giảm. (c) Tựa lồi, vì nó giảm rồi tăng, dù không lồi khi |x| lớn. (d) Tựa lồi, vì là giá trị lớn nhất của hai hàm phân tuyến tính, mỗi hàm tựa lồi trên miền dương.

Bài tập 2: Chia đôi bằng tay

Dùng phương pháp chia đôi cho bài toán cực tiểu f(x)=x2+4x trên đoạn [3,5]. Viết bài toán khả thi tại mức t, chạy ba lần lặp từ [l,u]=[4,6], rồi so với nghiệm đúng.

Gợi ý

Với x>0, f(x)≤t tương đương x2−tx+4≤0. Tập nghiệm của bất phương trình bậc hai này là một đoạn, cần xem đoạn đó có chạm [3,5] không.

Lời giải

Bài toán khả thi tại mức t là tìm x∈[3,5] với x2−tx+4≤0. Khi t≥4, tập nghiệm là đoạn giữa hai nghiệm t±t2−162. Lần 1: t=5, đoạn là [1,4], chạm [3,5], nên u=5. Lần 2: t=4.5, đoạn là khoảng [1.219,3.281], vẫn chạm, nên u=4.5. Lần 3: t=4.25, đoạn là khoảng [1.407,2.843], không chạm [3,5], nên l=4.25. Sau ba lần, p⋆∈[4.25,4.5]. Hàm x+4/x tăng trên [3,5] vì x>2, nên nghiệm là x⋆=3 với p⋆=133≈4.333, đúng nằm trong khoảng tìm được.

Bài tập 3: Số lần lặp

Biết p⋆ nằm trong [0,10]. Cần bao nhiêu lần chia đôi để biết p⋆ với sai số không quá 10−6? Nếu mỗi bài toán khả thi mất 0.2 giây thì tổng thời gian là bao nhiêu?

Lời giải

Số lần là ⌈log2⁡(10/10−6)⌉=⌈log2⁡107⌉=24, vì 223 khoảng 8.4×106, nhỏ hơn 107, còn 224 khoảng 1.68×107, lớn hơn 107. Tổng thời gian khoảng 24×0.2=4.8 giây.

Tóm tắt ​

Hàm tựa lồi là hàm có mọi tập mức dưới lồi. Họ hàm này rộng hơn nhiều: Nó chứa logarit, các hàm đơn điệu, hàm phân tuyến tính, tỉ số của hàm lồi với hàm lõm và tỉ số khoảng cách. Đổi lại, ba tính chất quan trọng bị mất: Gradient bằng 0 không còn đủ, cực tiểu cục bộ có thể không toàn cục, và tổng của hai hàm tựa lồi có thể không tựa lồi.

Bài toán tựa lồi vẫn giải được một cách đáng tin cậy. Mô tả tập mức dưới bằng một họ ϕt, ta biến câu hỏi "p⋆≤t hay không" thành một bài toán khả thi lồi. Phương pháp chia đôi hỏi câu đó tại trung điểm của khoảng nghi ngờ, và sau ⌈log2⁡((u−l)/ε)⌉ lần thì xác định được p⋆ với sai số ε.

Tài liệu tham khảo ​

  • Stephen Boyd, Lieven Vandenberghe, Convex Optimization, Cambridge University Press.
Toàn bộ chủ đề của Lecture 02

IV. Quy hoạch hình học

  1. Quy hoạch hình học
Về trang chương: bản đồ, Slides và Kiến thức nền
Ảnh & sơ đồ
100%
Ảnh tài liệu được phóng to