2 Thuật toán giải bài toán quy hoạch lồi với ràng buộc tích
3.5 Minh họa cho Mệnh đề 3.2
Theo Mệnh đề 3.2, Bài toán P(S) có một nghiệm tối ưu nằm trên cạnh
[yL, yR] của đơn hình S. Cạnh này là tập nghiệm của hệ
hd, yi=α (a) y1 ≥ yL 1, y2 ≥yR 2. (b) (3.1.8) Từ (3.1.8(a)), ta có y2 = α d2 − dd1 2 y1.
Do đó, Bài toán P(S) có thể đưa về một bài toán cực đại hàm một biến trên
một khoảng đóng trong R max{θ(y1)|y`L 1 ≤y1 ≤y`R 1 }, (P1(S)) trong đó θ(y1) =ϕ y1, α d2 − dd1 2 y1 .
Ví dụ: Xét hàm ϕ(y) =y1y2. Khi đó θ(y1) = α d2 y1− d1 d`L 2 y21.
Đây là hàm đa thức bậc 2 nên dễ dàng tìm được cực đại trên đoạnyL
1, yR 1
bất kỳ.
Nhận xét 3.4. Theo lý luận trên, thay vì giải Bài toán (P(S)), ta giải bài toán cực đại hàm một biến (P(S1)). Nếu yopt1 là nghiệm tối ưu của Bài toán (P(S1))
thì yopt = (y1opt, y2opt) là nghiệm tối ưu của Bài toán (P(S)), trong đó
y2opt = α d2 − dd1
2
yopt1 .
3.2 Thuật toán giải Bài toán (OPG)
Thuật toán xấp xỉ ngoài kết hợp với kỹ thuật rẽ nhánh OAB (Outer Approxi-
mation with Branching technique ) giải bài toán(OPG) được mô tả chi tiết như
sau.
Thuật toán OAB
♦ Bước khởi tạo. Thực hiện các bước dưới đây:
– Xác định giá trị tối ưu αi của Bài toán (SPi) với i = 1,2.
– Giải Bài toán (P1) và Bài toán (P2) để xác định hai điểm hữu hiệu
đầu tiên yˆ1,yˆ2 ∈ GE và hai nghiệm hữu hiệu xˆ1,xˆ2 tương ứng với
ˆ
y1,yˆ2.
– If yˆ1 ≡yˆ2 Then STOP, yˆ1 là nghiệm tối ưu của Bài toán (OPG) và
ˆ
x1 là nghiệm tối ưu của Bài toán (PX).
Else α0 =ϕ(ˆy2) và ybest = ˆy2, xbest = ˆx2;
(α0 là cận dưới tốt nhất hiện tại, ybest là điểm chấp nhận được tốt nhất hiện tại, xbest là nghiệm hữu hiệu tương ứng với ybest)
– Đặt yL = ˆy1 và yR = ˆy2. Đặt S0,1 =S0, trong đó S0 là 2−đơn hình sinh ra bởi hai điểm yL và yR. Đặt T0 :={S0,1
} và U0 := S0,1;
– Tìm giá trị tối ưu β(S0) của Bài toán P(S0);
– Đặt k := 0; Chuyển sang Bước lặp k;
Bước lặp k,(k = 0,1,2, ...) Thực hiện các bước k1 đếnk3 như dưới đây
♦ Bước k1. (Chọn đơn hình và tính cận trên)
– Tìm Sk,η¯ ∈ Tk, trong đó S = Sk,η¯ là đơn hình sinh ra bởi hai điểm
yL và yR đã biết, thỏa mãn
β(Sk,η¯) := max{β(S0) | S0 ∈Tk
}.
– Đặt βk :=β(Sk,η¯) (cận trên tốt nhất hiện tại)
– If βk −αk ≤ ε Then STOP (ybest là nghiệm tối ưu ε−xấp xỉ của
Bài toán (OPG) và xbest là nghiệm xấp xỉ của Bài toán (PX)).
Else Đặt Sk = Sk,η¯ và chuyển sang Bước k2.
♦ Bước k2. (Tìm điểm chia và cập nhật cận dưới)
– Xác định gốc yO của đơn hình Sk bởi (3.1.3), trong đó yL và yR là
hai điểm sinh ra đơn hình Sk.
– Giải Bài toán (T(yO)) để tìm nghiệm tối ưu (λ∗, x∗)T.
– Đặt yωk = λ∗yO
∈GE (điểm chia đơn hình Sk) và x∗ là nghiệm hữu hiệu tương ứng với yωk.
– If ϕ(yωk) > αk Then
αk+1 = ϕ(yωk) (cận dưới tốt nhất hiện tại)
ybest =yωk (nghiệm chấp nhận được tốt nhất hiện tại)
xbest =x∗; (nghiệm hữu hiệu tương ứng với ybest)
Else Chuyển sang Bước k3.
♦ Bước k3. (Áp dụng lược đồ rẽ nhánh cho Sk với điểm chia yωk)
– Đặt Sk
1 là 2−đơn hình sinh ra bởi hai điểm yL và yR =yωk và Sk 2 là
2−đơn hình sinh ra bởi hai điểm yL =yωk và yR;
– Với mỗi i = 1,2, tìm giá trị tối ưu β(Sk
i) của Bài toán (P(Sk i));
– Đặt Tk+1 = Tk
\{Sk}∪{Sk 1, Sk
2};
– Đặt k := k+ 1 và Chuyển sang Bước lặp k.
Bổ đề sau đây có thể coi như một trường hợp đặc biệt của Bổ đề 4.2 trong [5].
Bổ đề 3.1. Giả sử thuật toán OAB lặp vô hạn và {Sk} là một dãy các 2−đơn hình sinh ra bởi thuật toán, trong đó với mỗi k lược đồ rẽ nhánh rút gọn được áp dụng cho Sk. Khi đó {Sk}có một dãy con {Skq} thỏa mãn
lim
q Skq = y∗ ∈GE.
Định lý 3.1. Thuật toán dừng sau hữu hạn bước và sinh ra nghiệm ε−xấp xỉ của Bài toán (OPG). Khi ε = 0, chuỗi {yωk} có một điểm tụ là nghiệm tối ưu toàn cục của Bài toán (OPG).
Chứng minh. Ký hiệu f∗ là giá trị tối ưu của Bài toán (OPG). Nếu thuật toán
không dừng thì nó sinh ra một dãy đơn hình vô hạn {Sk}, và {yoptk ∈ Sk} là
áp dụng cho Sk. Hơn nữa, theo Bổ đề 3.1, bằng cách lấy dãy con nếu cần, ta có thể giả thiết limkSk =y∗ ∈ GE. Từ đó suy ra yoptk
→ y∗. Vì dãy cận trên {βk} là đơn điệu và βk =β(Sk) =ϕ(yoptk) nên ta có
lim
k βk = lim
k ϕ(yoptk) =ϕ(y∗) ≥f∗.
Vì y∗ ∈ GE là nghiệm chấp nhận được của Bài toán (OPG) nên suy ra y∗là
nghiệm tối ưu toàn cục của Bài toán (OPG).
3.3 Ví dụ minh họa
Ví dụ 3.1. Xét Bài toán (PX) với
h(x) = (x1+x2−0.4)(x1+ 4x2+ 0.2),
và XE là tập nghiệm hữu hiệu của Bài toán (CM OP), trong đó
f1(x) =x1+x2, f2(x) =x1+ 4x2+ 1, g1(x) = (x1−1)2+ 4x2
2−0.2, g2(x) = 3x1−8x2−6.
Dễ thấy ϕ(y) = (y1−0.4)(y2−0.8). Bây giờ ta giải Bài toán (OPG) để tìm nghiệm ε−xấp xỉ với ε= 0.0001.
♦ Bước khởi tạo: Giải Bài toán (SP1) và (SP2) được giá trị tối ưu tương ứng là α1 = 0.500000, α2 = 1.000000.
Giải Bài toán (P1) và (P2) được các nghiệm tối ưu là (ˆx1,yˆ1) = (0.599782,−0.099782,0.500000,1.998910), (ˆx2,yˆ2) = (0.799562,0.199890,0.999452,1.000000), trong đó ˆ x1 = (0.599782,−0.099782),xˆ2 = (0.799562,0.199890),
là hai nghiệm hữu hiệu tương ứng với hai điểm ảnh hữu hiệu là
ˆ
y1 = (0.500000,1.998910),yˆ2 = (0.999452,1.000000).
Vì ϕ(ˆy1) = 0.119891 > ϕ(ˆy2) = 0.119890 nên chọn α0 =ϕ(ˆy2) = 0.119890
và ybest = ˆy2, xbest = ˆx2.
Đặt yL= ˆy1, yR= ˆy2 và S0,1 := S0, trong đóS0 sinh ra bởi yL và yR. Đặt
T0 := {S0,1} và U0 :=S0,1.
Giải Bài toán P(S0) được giá trị tối ưu β(S0) = 0.244618.
♦ Bước lặp k = 0.
– Bước 0.1. Vì T0 = {S0,1}, nên β0 := β(S0,1) = 0.244618. Vì β0 −
α0 = 0.124728> ε = 0.0001nên đặt S0 =S0,1 và Chuyển sang Bước 0.2.
– Bước 0.2.Từ (3.1.3), xác định điểmyO = (yL 1, yR
2) = (0.500000,1.000000). Giải Bài toán (T(yO)), ta tìm được nghiệm tối ưu
(λ∗, x∗) = (1.292892,0.575735,0.070711).
Vìϕ(yω0) = 0.121471> α0 = 0.119890 nên α1 = 0.121471 và ybest =
yω0 = (0.646446,1.292892), xbest =x∗ = (0.575735,0.070711).
– Bước 0.3.ĐặtS0
1 là2−đơn hình sinh ra bởi hai điểmyLvà yR =yω0, và S0
2 là 2−đơn hình sinh ra bởi các điểm yL =yω0 và yR.
Giải Bài toán P(S0
1) và P(S0
2) nhận được các giá trị tối ưu tương
ứng là β(S10) = 0.146536 và β(S20) = 0.146536. Đặt T1 ={S0 1, S0 2}={S1,1, S1,2}, trong đó S1,1 =S0 1 và S1,2 = S0 2. ♦ Bước lặp k = 1. – Bước 1.1. Vìβ(S1,1) = max{β(S0) | S0 ∈T1 }nên đặtβ1 =β(S1,1) = 0.146536, trong đó S1,1 sinh ra bởi hai điểm
yL= (0.500000,1.998910) và yR = (0.646446,1.292892). Vì β0 −α0 = 0.025065 > ε = 0.0001 nên đặt S1 = S1,1 và chuyển sang Bước 1.2. – Bước 1.2. Từ (3.1.3), xác định điểmyO = (yL 1, yR 2) = (0.500000,1.292892). Giải Bài toán (T(yO)), ta tìm được nghiệm tối ưu
(λ∗, x∗) = (1.145344,0.554299,0.018373).
Đặt yω0 =λ∗yO = (0.572672,1.480806).
Vìϕ(yω1) = 0.117556 < α1 = 0.121471 nên cận dưới không được cập nhật.
– Bước 1.3. ĐặtS1
1 là2−đơn hình sinh ra bởi hai điểm yLvà yR =yω1, và S1
2 là 2−đơn hình sinh ra bởi các điểm yL =yω1 và yR.
Giải Bài toán P(S1
1) và P(S1
ứng là β(S1 1) = 0.128172 và β(S1 2) = 0.123256. ĐặtT2 = T1\ {S1,1} ∪{S1 1, S1 2}= {S1,2, S1 1, S1 2}={S2,1, S2,2, S2,3}...
Sau 7 bước lặp, vì β7−α7 = 0.000089 < ε= 0.0001 nên thuật toán dừng với nghiệm tối ưuε−xấp xỉ của Bài toán(OPG)làybest = (0.646446,1.292892). Đồng thời ta có nghiệm tối ưu của bài toán(PX)tương ứng làxbest = (0.575735,0.070711)
và giá trị tối ưu là ϕ(ybest) = 0.1214710.
Ví dụ 3.2. Xét bài toán PX được cho dưới dạng sau
max ϕ(f(x)) = (f1(x)−β1)(f2(x)−β2)
v.đ.kx∈ XE,
với βi = min{fi(x) |x ∈X}, i = 1,2 và XE là tập nghiệm hữu hiệu của Bài toán (CM OP), trong đó fi(x) =αix+xTDix, i= 1,2, X = {x ∈Rn | −2 + n X j=1 xj j !2 ≤ 100, Ax≤ b, x ≥0}
và các tham số được xác định như sau
♦ α1, α2
∈Rn là các véctơ với các thành phần ngẫu nhiên thuộc đoạn [0,1].
♦ A = (aij) ∈ Rm×n là một ma trận ngẫu nhiên với các thành phần thuộc
đoạn [-1,1].
♦ b = (b1, b2, ..., bm)T là vectơ ngẫu nhiên thỏa mãn
bi =
n
X
j=1
với b0 là một số thực ngẫu nhiên trong đoạn [0,1].
♦ Di
∈ Rn×n là ma trận đường chéo với các phần tử trên đường chéo nhận
giá trị ngẫu nhiên trong đoạn [0,1].
Áp dụng thuật toán đã xây dựng cho lớp bài toán này với từng trường hợp
của n và m nhằm tìm nghiệm tối ưu ε− xấp xỉ với ε = 0.005 và Gap được xác
định là U BU B−LB với U B, LB lần lượt là cận trên và cận dưới, ta thu được bảng
sau n m ]Inter UB LB Gap 60 40 7 4.103116 4.096561 0.001598 70 50 8 1.865636 1.860822 0.002580 80 80 8 1.137924 1.136717 0.001061 100 60 8 5.153709 5.138920 0.002870 100 80 7 4.169557 4.166498 0.000731 120 120 5 15.94133 15.94088 0.000029 150 100 8 55.40159 55.29604 0.001905 150 120 6 7.587685 7.559456 0.003720
Từ bảng kết quả này ta thấy thuật toán thực hiện tốt, thậm chí trong trường hợp bài toán có kích thước lớn. Số bước tính toán khá nhỏ và thời gian chạy từng bước cũng tương đối nhỏ do trong mỗi bước chỉ phải giải một bài toán quy hoạch lồi với hàm mục tiêu tuyến tính và hai bài toán tìm cực đại của đa thức bậc 2. Hơn nữa, nghiệm đạt được cuối cùng là chấp nhận được với độ xấp xỉ nhỏ hơn ε= 0.005.
Kết luận: Chương 3 đã trình bày chi tiết cơ sở lý thuyết và thuật toán giải bài toán tối ưu một hàm đơn điệu tăng trên tập hữu hiệu của một quy hoạch lồi hai mục tiêu. Thuật toán này được chúng tôi xây dựng theo phương pháp xấp xỉ ngoài kết hợp với kỹ thuật rẽ nhánh tính cận. Ưu điểm của thuật toán này là
trong các bước của thuật toán, ta chỉ cần giải một quy hoạch lồi với hàm mục tiêu tuyến tính và hai bài toán tối ưu hàm một biến. Như vậy, so với các thuật toán khác đã được đề xuất, thuật toán này cho sự hội tụ nhanh hơn. Điều này được thể hiện qua cơ sở lý thuyết cũng như ví dụ chạy thực nghiệm.
Kết luận chung
Luận văn này nghiên cứu phương pháp xấp xỉ ngoài kết hợp với kỹ thuật rẽ nhánh giải hai bài toán tối ưu toàn cục được nhiều tác giả quan tâm và được ứng dụng để giải quyết nhiều bài toán nảy sinh trong thực tế: bài toán quy hoạch lồi với ràng buộc tích và bài toán tối ưu trên tập Pareto. Cụ thể, luận văn đã thực hiện:
i) Trình bày mô hình toán học của bài toán quy hoạch lồi với ràng buộc tích và bài toán tối ưu trên tập Pareto cùng các khái niệm và kết quả cơ bản liên quan đến hai bài toán này.
ii) Giới thiệu thuật toán do H.P. Benson đề xuất để giải bài toán quy hoạch lồi với ràng buộc tích (P).
iii) Đề xuất thuật toán mới để giải bài toán tối ưu trên tập Pareto (PX).
iv) Đưa ra các ví dụ và xây dựng chương trình tính toán để thử nghiệm các thuật toán.
Do những hạn chế về mặt thời gian và kinh nghiệm, luận văn này không tránh khỏi những sai sót. Tác giả rất mong nhận được sự đóng góp của thầy cô và các bạn đồng nghiệp để luận văn được hoàn thiện hơn.
Tài liệu tham khảo
Tài liệu tiếng Việt
1. Nguyễn Thị Bạch Kim (2008), Giáo trình Các Phương pháp Tối ưu: Lý
thuyết và Thuật toán, Nhà xuất bản Bách Khoa, Hà Nội.
2. Hoàng Tụy (2006), Lý thuyết tối ưu, Viện Toán học, Hà Nội.
Tài liệu tiếng Anh
3. An L.T.H., Tao P. D., Muu L. D. (1996), Numerical solution for optimiza-
tion over the efficient set by d.c. optimization algorithm, Oper. Res. Lett.,
19, pp. 117-128.
4. Bank B., Guddat J., Klatte D., Kummar B., Tammer K. (1982), Non-
linear Parametric Optimization, Akademie-Verlag, Berlin.
5. Benson H.P. (2010), Simplicial Branch-and-Reduce Algorithm for Convex
Programs with a Multiplicative Constraint, J. Optim. Theory Appl., 145,
pp. 213–233.
6. Benson H.P., Lee D. (1996), Outcome-based algorithm for optimizing over the efficient set of a bicriteria linear programming problem, J. Optim. Theory Appl., 88, pp. 77–105.
7. Horst R., Thoai N.V. (1999), Maximizing a concave function over the
efficient or Weakly-efficient set, Eur. J. Oper. Res., 117, pp. 239–252.
8. Horst R., Tuy H. (1996), Global Optimization: Deterministic Approach,
9. Horst R., Thoai N.V., Benson H.P. (1991), Concave minimization via con-
ical partitions and polyhedral outer approximation, Math. Program., 50,
pp. 259–274.
10. Kim N.T.B. (2000), An algorithm for optimizing over the efficient set,
Vietnam Journal of Mathematics, 28(4), pp. 329-340.
11. Kim N.T.B., Muu L.D. (2002), On the projection of the efficient set and
potential applications, Optimization, 51(2), pp. 401-421.
12. Kuno T., Yamamoto Y. (1998), A finite algorithm for globally optimizing
a class of rank-two reverse convex programs, J. Glob. Optim., 12, pp.
247–265.
13. Kuno T., Yajima Y., Yamamoto Y., Konno H. (1994), Convex programs with an additional constraint on the product of several convex functions,
Eur. J. Oper. Res., 77, pp. 314–324 .
14. Luc D.T. (1989), Introduction to Nonlinear Optimization, Cinvestar IPN,
Mexico, D.F.
15. Muu L.D. (2000), A convex-concave programming method for optimizing
over the effiient set, Acta Mathematica Vietnamica, 25, pp. 67-85.
16. Philip J. (1972), Algorithms for the vector maximization problem, Math.
Programming, 2, pp. 207–229.
17. Phu H. X. (2005), On Efficient Sets in R2, Vietnam Journal of Mathemat-
ics, 33(4), pp. 463-468.
18. Thoai N.V. (1993), Canonical d.c. programming techniques for solving a convex program with an additional constraint of multiplicative type,
19. Thoai N.V. (2000), Conical algorithm in global optimization for optimizing
over efficient sets, J. Glob. Optim., 18, pp. 321–336.
20. Thoai N.V. (2008), Decomposition branch and bound algorithm for opti-
mization problems over efficient set,J. Ind. Manag. Optim.4, pp. 647-660.
21. Thoai N.V. (2010), Reverse Convex Programming Approach in the Space
of Extreme Criteria for Optimization over Efficient Sets,J. Optim. Theory
and Appl., 147, pp. 263-277 .
22. Tuy H., Luc L.T. (2000), A New Approach to Optimization Under Mono-
tonic Constraint, J. Glob. Optim., 18, pp. 1-15.
23. Yamamoto Y.(2002), Optimization over the efficient set: overview, J. Glob.