Bài toán tối ưu trên tập Pareto

Một phần của tài liệu Một số thuật toán giải bài toán tối ưu trên tập pareto (Trang 25)

Bài toán tối ưu trên tập Pareto được phát biểu như sau

max{f(x) : x ∈ XE}, (P)

trong đó f là hàm giá trị thực, đóng vai trò như hàm mục tiêu, và XE

là tập nghiệm hữu hiệu của bài toán quy hoạch tuyến tính đa mục tiêu

(V P), đóng vai trò như tập ràng buộc.

Như đã biết, tập nghiệm hữu hiệu XE là liên thông nhưng nói chung, XE là một tập con không lồi của X và có cấu trúc rất phức tạp. Vì vậy, bài toán (P) là một bài toán quy hoạch không lồi, tức là một nghiệm địa phương bất kỳ của bài toán nhưng chưa chắc đã là nghiệm toàn cục. Ta gọi một điểm x0 ∈ XE là nghiệm tối ưu địa phương hay cực đại địa phương của bài toán (P) nếu tồn tại một ε lân cận B(x0, ε) của điểm

x0 ∈ XE sao cho

f(x0) ≥ f(x),∀x ∈ B(x0, ε)∩XE.

Điểm x0 ∈ XE là nghiệm tối ưu toàn cục hay nghiệm tối ưu của bài toán

(P) nếu f(x0) ≥f(x) với mọi x ∈ XE.

Bài toán (P) được Philip đề xuất lần đầu tiên vào năm 1972. Do nhu cầu ứng dụng, bài toán này đã thu hút sự quan tâm của nhiều tác giả. Nhiều thuật toán đã được đề xuất để giải bài toán này (xem [3], [6], [7], [10], [12], [13] và danh mục tài liệu tham khảo kèm theo). Sau đây là ví dụ thực tế có mô hình toán học là bài toán tối ưu trên tập Pareto.

Ví dụ 1.10 Một công ty gồm 10 nhà máy, sản xuất 4 loại sản phẩm

khác nhau. Gọi xj là số đơn vị sản phẩm loại j, j = 1,· · · ,4 mà công ty cần sản xuất. Véc tơ x = (x1, x2, x3, x4) được gọi là một phương án sản xuất. Ký hiệu X ⊂ R4 là tập tất cả các phương án sản xuất thỏa mãn điều kiện cho phép của công ty. Như thường lệ, X còn được gọi là tập chấp nhận được. Với mỗi phương án chấp nhận được x ∈ X, giả sử rằng hd, xi là lợi nhuận mà công ty thu được, hcj, xi là mức sử dụng lao động ở nhà máy j, j = 1,· · · ,10, trong đó d, c1,· · · , c10 ∈ R4. Mục đích của công ty là xác định được phương án sản xuất cho lợi nhuận lớn nhất trong khi vẫn duy trì được mức sử dụng lao động cao ở mỗi nhà máy. Khi đó, mô hình toán học của bài toán này như sau

max{hd, xi, x ∈ XE},

trong đó XE là tập nghiệm hữu hiệu của bài toán 10 mục tiêu

trong đó C là ma trận cấp (10×4) với các hàng c1,· · · , c10 và tập chấp nhận được X ⊂R4.

Ký hiệu Xex là tập tất cả các đỉnh của tập lồi đa diện X ⊂ Rn. Sau đây là tính chất nghiệm tối ưu của bài toán (P) trong trường hợp hàm mục tiêu f(x) là hàm lõm.

Định lý 1.4 Nếu f(x) là hàm lõm xác định trên Rn thì bài toán (P)

đạt nghiệm tối ưu tại ít nhất một đỉnh hữu hiệu x0 của bài toán (V P), tức x0 ∈ XE ∩Xex.

Chứng minh. Do tập chấp nhận được của bài toán (P) là tập nghiệm hữu hiệu XE của bài toán quy hoạch tuyến tính đa mục tiêu (V P), nên theo Định lý 1.3, tập nghiệm hữu hiệu XE của bài toán (V P) là liên thông đường gấp khúc và là hợp của một số hữu hạn các diện đóng của tập lồi đa diện ràng buộc X. Mặt khác, theo tính chất của hàm lõm, bài toán cực đại một hàm lõm trên một tập lồi đa diện sẽ đạt nghiệm tối ưu tại ít nhất một đỉnh của tập lồi đa diện chấp nhận được. Hơn nữa, mỗi đỉnh của một diện của tập lồi đa diện cũng là một đỉnh của tập lồi đa diện. Vậy bài toán (P) sẽ đạt nghiệm tối ưu tại ít nhất một đỉnh của

một diện nào đó thuộc XE.

Kết luận: Chương này đã giới thiệu các khái niệm và kết quả cơ bản liên quan đến bài toán quy hoạch tuyến tính đa mục tiêu (V P) và bài toán tối ưu trên tập Pareto (P). Chương 2 của luận văn này sẽ trình bày thuật toán của H. P. Benson và S. Sayin [6] để giải bài toán (P)

trong trường hợp f(x) là hàm tuyến tính. Thuật toán giải bài toán (P)

trong trường hợp hàm mục tiêu f(x) là hàm lõm do GS. Lê Dũng Mưu đề xuất [12] được giới thiệu ở Chương 3.

Chương 2

Bốn trường hợp đặc biệt của bài toán tối ưu trên tập Pareto

Xét bài toán tối ưu trên tập Pareto

max{f(x) : x ∈ XE}, (PT)

trong đó hàm mục tiêu f(x) =hd, xi, d ∈ Rn\ {0} và tập ràng buộc XE là tập nghiệm hữu hiệu của bài toán quy hoạch tuyến tính đa mục tiêu

Max Cx, x ∈ X, (V P)

trong đó C là ma trận mục tiêu cấp p× n, p ≥ 2 với p hàng là cj ∈ Rn, j = 1,· · · , p; X ⊂Rn là đa diện khác rỗng.

Theo Mệnh đề 1.4, XE là tập compact khác rỗng. Vậy bài toán (PT)

Mục đích của chương này là trình bày thuật toán do H. P. Benson và S. Sayin [6] đề xuất để giải bài toán tối ưu trên tập Pareto (PT) trong bốn trường hợp đặc biệt. Cụ thể:

• Trường hợp 1: Tập nghiệm hữu hiệu của bài toán quy hoạch tuyến tính đa mục tiêu (V P) bằng tập chấp nhận được của bài toán

(V P), tức là XE = X. Trong trường hợp này, bài toán (V P) được gọi là hữu hiệu hoàn toàn.

• Trường hợp 2: Hàm mục tiêu của bài toán (PT) có dạng f(x) = hd, xi, trong đó d = wTC = p X j=1 wjcj

và véc tơ w = (w1,· · · , wp) ∈ Rp và yI ∈ Y, với yI là nghiệm lý tưởng của bài toán

Max Ipy, y ∈ Y, (V P Y)

trong đó Ip là ma trận đơn vị cỡ p×p. (Khái niệm nghiệm lý tưởng yI của bài toán (V P Y) xem trang 33 của luận văn này.)

• Trường hợp 3: Bài toán quy hoạch tuyến tính đa mục tiêu (V P)

có p= 2, tức nó là bài toán quy hoạch tuyến tính hai mục tiêu, và f(x) = hd, xi,

trong đó d = wTC = w1c1 +w2c2, w1, w2 ∈ R.

• Trường hợp 4: Bài toán quy hoạch tuyến tính nới lỏng

có nghiệm tối ưu x∗ là một nghiệm hữu hiệu của bài toán quy hoạch tuyến tính đa mục tiêu (V P), tức là

x∗ ∈ Argmax(LPU B) và x∗ ∈ XE.

Cơ sở lý thuyết để giải bốn trường hợp đặc biệt này của bài toán (PT)

sẽ được trình bày ở Mục 2.1. Mục 2.2 dành để trình bày chi tiết thuật toán.

2.1 Cơ sở lý thuyết

Kết quả sau đây là một hệ quả trực tiếp của Định lý 1.4 và đóng vai trò quan trọng trong việc xây dựng các thuật toán giải bài toán (PT). Mệnh đề 2.1 Bài toán (PT) có nghiệm tối ưu đạt tại một đỉnh hữu hiệu của bài toán quy hoạch tuyến tính đa mục tiêu (V P).

Chứng minh. Do hàm tuyến tính là hàm lõm nên Mệnh đề này được suy

trực tiếp từ Định lý 1.4.

Ký hiệu

Y := {y ∈ Rp : y = Cx với x ∈ X},

và gọi Y là tập ảnh của X qua ánh xạ tuyến tính C.

Mệnh đề 2.2 [14] Cho X ⊂ Rn là đa diện compact khác rỗng và C là ma trận cỡ p× n với p ≥ 2. Khi đó, Y cũng là đa diện compact khác rỗng.

Bổ đề 2.1 Với mỗi y0 ∈ Yex, luôn tồn tại một x0 ∈ Xex thỏa mãn

Cx0 = y0.

Bổ đề 2.1 được chứng minh dựa vào định lý biểu diễn đa diện sau đây. Định lý 2.1 [14] Giả sử P ⊂ Rn là tập đa diện khác rỗng có tập đỉnh là {v1,· · · , vk}. Khi đó, mỗi x ∈ P được biểu diễn là tổ hợp lồi của tập đỉnh, tức là x = k X i=1 αivi, αi ≥ 0, i= 1,· · · , k, k X i=1 αi = 1.

Chứng minh Bổ đề 2.1 Giả sử ngược lại rằng, y0 ∈ Yex và Cx = y0 với một vài x ∈ X mà x /∈ Xex. Lấy x ∈ X thỏa mãn Cx= y0. Khi đó, theo giả thiết, x /∈ Xex. Do X là đa diện nên theo Định lý 2.1, tồn tại các đỉnh z1, z2,· · · , zq ∈ Xex sao cho x = q X i=1 αizi,

trong đó αi > 0, với mọi i = 1,· · · , q,Pq

i=1αi = 1 và q ≥ 2. Do Cx= y0 nên y0 = q X i=1 αiyi, αi > 0,∀i = 1,· · · , q, q X i=1 αi = 1, (2.1)

trong đó yi = Czi ∈ Y với i = 1,2,· · · , q. Theo giả thiết, ta có zi ∈ Xex với i = 1,2,· · · , q, nên Czi 6= y0. Vậy yi 6= y0, i = 1,2,· · · , q.

Đặt

Y \ {y0} = {y ∈ Y|y 6= y0}.

Vì y0 là một đỉnh của Y, nên Y \ {y0} là tập lồi. Với mỗi i = 1,2,· · · , q, ta có yi ∈ Y và yi 6= y0 nên yi ∈ Y \ {y0}. Do đó, tổ hợp lồi của các

điểm yi, với i = 1,2,· · · , q, phải nằm trong Y \ {y0}. Mặt khác, do Y là tập lồi và theo (2.1), ta có y0 ∈ Y \ {y0}. Điều mâu thuẫn này chứng tỏ giải thiết phản chứng là sai. Vậy với bất kỳ y0 ∈ Yex, luôn tồn tại một

x0 ∈ Xex thỏa mãn Cx0 = y0.

Nhận xét 2.1 Nếu x0 ∈ Xex thì chưa chắc y0 = Cx0 đã thuộc vào tập đỉnh Yex.

Ví dụ 2.1 Cho

X = {x ∈ R3|x1 − 1

3x2 +x3 ≥ 0;x1 + 2

3x2 −1 ≤ 0;xi ≥ 0, i= 1,2,3} là đa diện được mô tả ở Hình 2.1 và

C =   1 0 0 0 0 1  . Hình 2.1 Khi đó Xex = {x0, x1, x2, x3},

Hình 2.2

Y = {y ∈ R2|y1 ≤ 1;−y1 +y2 ≤0;yj ≥ 0, j = 1,2} (Hình 2.2), Yex = {y0, y1, y2}.

Ta dễ dàng thấy rằng x3 ∈ Xex nhưng y3 = Cx3 ∈/ Yex.

Để hỗ trợ cho việc phân tích bài toán (PT), ta xét bài toán quy hoạch tuyến tính đa mục tiêu sau

Max Ipy, y ∈ Y, (V P Y)

trong đó Ip là ma trận đơn vị cỡ p×p. Ký hiệu YE là tập nghiệm hữu hiệu của bài toán (V P Y).

Mối liên hệ giữa tập nghiệm hữu hiệu XE của bài toán (V P) và tập nghiệm hữu hiệu YE của bài toán (V P Y) được mô tả bởi Bổ đề 2.2. Bổ đề 2.2 i) Với mỗi y0 ∈ YE, nếu x0 ∈ X thỏa mãn Cx0 = y0 thì

x0 ∈ XE.

ii) Với mỗi x0 ∈ XE, nếu y0 = Cx0 thì y0 ∈ YE.

Một điểm yI = (y1I, y2I,· · · , yIp) ∈ Rp được gọi là nghiệm lý tưởng (ideal solution) của bài toán (V P Y) nếu với mỗi i = 1,2,· · · , p, ta có

yiI = max{yi, y ∈ Y}.

Nhận xét 2.2 Nghiệm lý tưởng yI của bài toán (V P Y) có thể không thuộc Y.

Ví dụ 2.2 Hình 2.3 minh họa nghiệm lý tưởng yI của bài toán (V P Y)

có thể thuộc Y hoặc không thuộc Y.

Hình 2.3

Mệnh đề 2.3 Cho yI là nghiệm lý tưởng của bài toán (V P Y). Khi đó, nếu yI ∈ Y thì YE = {yI}.

Định lý 2.2 Giả thiết rằng nghiệm lý tưởng yI của bài toán (V P Y)

nằm trong Y và d phụ thuộc tuyến tính vào các hàng của ma trận C. Khi đó, bất kỳ x0 ∈ X đều là nghiệm tối ưu của bài toán (P ).

Chứng minh. Do d phụ thuộc tuyến tính vào các hàng của ma trận C nên ta có thể chọn một véc tơ w ∈ Rp thỏa mãn

dT = wTC. (2.2)

Xét bài toán (P Y) được phát biểu như sau

max{hw, yi, y ∈ YE}. (P Y)

Theo Mệnh đề 2.1, bài toán (P Y) có một nghiệm tối ưu nằm trong Yex∩YE. Mặt khác, do yI ∈ Y nên theo Mệnh đề 2.3, suy ra YE = {yI}. Vậy yI ∈ Yex và yI là nghiệm tối ưu của bài toán (P Y).

Lấy tùy ýx0 ∈ XE và đặt y0 = Cx0. Khi đó, theo Bổ đề 2.2(ii.), y0 ∈ YE. Suy ra y0 = yI. Vậy Cx0 = yI. Từ (2.2), ta có

hd, x0i = wTCx0 = hw, yIi. (2.3)

Do hw, yIi là một hằng số, x0 ∈ XE lấy tùy ý và từ (2.3), ta có bất kỳ x0 ∈ XE đều là nghiệm tối ưu của bài toán (PT).

Nhận xét 2.3 Chú ý rằng, theo chứng minh của Định lý 2.2, điểm

x0 ∈ XE thỏa mãn Cx0 = yI. Vì vậy, với các giả thiết của Định lý 2.2, bất kỳ nghiệm tối ưux0 ∈ XE của bài toán(PT) đều thỏa mãnCx0 = yI. Nhận xét 2.4 Trong Định lý 2.2, giả thiết d phụ thuộc tuyến tính vào các hàng của ma trận C là không thể bỏ qua.

Ví dụ 2.3 Cho X = {x ∈ R3|0≤ xj ≤1, j = 1,2,3}, p= 2, C =   1 0 0 0 1 0  , d =      0 0 1      .

Khi đó,

Y = {(y1, y2) ∈ R2|0 ≤ yi ≤ 1, i = 1,2},

và (yI)T = (1,1) ∈ Y.

Hình 2.4

Để tìm được nghiệm tối ưu của bài toán(PT), trước tiên, ta cần xác định tập nghiệm hữu hiệu XE của bài toán quy hoạch tuyến tính đa mục tiêu

(V P).

Kiểm tra theo điều kiện nón pháp tuyến thấy rằng bài toán (V P) có hai đỉnh hữu hiệu x0 = (1, 1, 0) và x1 = (1, 1, 1). Tập nghiệm hữu hiệu của bài toán (V P) là cạnh [x0, x1], tức là

XE = {x ∈ R3|x1 = 1, x2 = 1, 0≤ x3 ≤ 1}. (Hình 2.4)

Tuy nhiên, trong Ví dụ 2.3 này, nếu kết luận rằng x0 là nghiệm tối ưu của bài toán (P ) theo Định lý 2.2 thì sẽ là một kết luận sai, do d không

phụ thuộc tuyến tính vào các hàng của ma trận C. Nghiệm tối ưu duy nhất của bài toán (PT) là (x1)T = (1,1,1).

Dưới đây trình bày kết quả liên quan đến các điều kiện đặc biệt trong Trường hợp 3.

Định lý 2.3 Giả thiết rằng p = 2 và d phụ thuộc tuyến tính vào các hàng của ma trận C. Khi đó, tồn tại nghiệm tối ưu x∗ của bài toán (PT)

thuộc Xex và x∗ cũng là nghiệm tối ưu của ít nhất một trong các quy hoạch tuyến tính (LPU B), (LP1), (LP2), trong đó với mỗi i = 1,2, bài toán (LPi) được phát biểu như sau

max{hci, xi, x ∈ X}. (LPi)

Chứng minh. Lấy w ∈ R2 thỏa mãn dT = wTC. Do p = 2 nên Y ⊂ R2

cũng là đa diện khác rỗng. Do Y là compact và miền chấp nhận được của bài toán (P Y)

max{hw, yi, y ∈ YE}. (P Y)

là YE nên không mất tính tổng quát, ta có thể giả thiết Y được biểu diễn dưới dạng

Y = {y ∈ R2|M y ≤ u, y ≥ 0},

trong đó M là ma trận cỡ k×2 với k ≥ 1 và u ∈ Rk. Theo Mệnh đề 2.1, ta có thể lấy một nghiệm tối ưu y∗ của bài toán (P Y) nằm trong Yex. Để chứng minh định lý, trước tiên, ta chứng minh rằng y∗ là nghiệm tối ưu của ít nhất một trong ba bài toán sau

max{y1|y ∈ Y}, (L1) max{y2|y ∈ Y}, (L2)

max{hw, yi|y ∈ Y}. (L3)

Xét bốn trường hợp sau

• Trường hợp 1: y1∗ = y2∗ = 0. Do Y ⊆ {y ∈ R2|y ≥ 0} và y∗ ∈ YE nên Y = {0}. Vậy trong trường hợp này, y∗ là nghiệm cực đại của cả hai bài toán (L1) và (L2).

• Trường hợp 2: y1∗ > 0 và y2∗ = 0. Giả thiết rằng y ∈ Y. Ta có Y ⊆ {y ∈ R2|y ≥ 0} nên y2 ≥ y2∗ = 0. Mặt khác, y∗ ∈ YE, suy ra y1 ≤ y1∗. Vậy y∗ là nghiệm cực đại của bài toán (L1). (Hình 2.5 (a))

Hình 2.5

• Trường hợp 3: y1∗ = 0 và y2∗ > 0. Tương tự như Trường hợp 2, y∗ là nghiệm cực đại của bài toán (L2). (Hình 2.5 (b))

• Trường hợp 4: y1∗ > 0 và y2∗ > 0. Ký hiệu Ik là ma trận đơn vị cỡ

của Y nên ta có thể chọn một nghiệm chấp nhận được cơ sở từ hệ

M y1 +Iky2 = u,

y1, y2 ≥ 0,

thỏa mãn y1 = y∗. Sau một vài bước sắp xếp lại các cột, nghiệm chấp nhận được cơ sở được biểu diễn bởi bảng sau

yN yB

T = −D 0 g

A Ik b

trong đó yN ∈ R2 là véc tơ của các biến phi cơ sở, yB ∈ Rk là véc tơ của các biến cơ sở trong nghiệm chấp nhận được cơ sở, và

y∗ = g + DyN = g. Ký hiệu D1, D2 ∈ R2 là các cột của D. Khi

đó, hoặc là b > 0 (trường hợp không suy biến) hoặc là b ≥ 0 với bi = 0 với một vài i ∈ {1,2,· · · , k} (trường hợp suy biến).

◦ Trường hợp 4a. Trường hợp không suy biến. Giả sử y∗ không phải là nghiệm cực đại của bài toán (L1) hoặc (L2). Ta

Một phần của tài liệu Một số thuật toán giải bài toán tối ưu trên tập pareto (Trang 25)