Lời mở đầuQui hoạch phân tuyến tính LFP là bài toán tìm cực tiểu hay cực đại của mộthàm phân thức afin tỉ số hai hàm tuyến tính afin với các ràng buộc đẳng thứchay bất đẳng thức tuyến tí
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC
THÁI NGUYÊN - 2016
Trang 2ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KHOA HỌC
Trang 3Mục lục
1.1 Bài toán qui hoạch phân tuyến tính 4
1.2 Tính chất nghiệm của bài toán 8
1.3 Minh họa hình học 9
1.3.1 Nghiệm tối ưu duy nhất 10
1.3.2 Nhiều nghiệm tối ưu 11
1.3.3 Nghiệm tối ưu hữu hạn và vô cực 12
1.3.4 Nghiệm tối ưu tiệm cận 13
1.3.5 Bài toán vô nghiệm 13
1.4 Biến đổi về bài toán tuyến tính tương đương 14
2 Qui hoạch phân tuyến tính với hệ số khoảng ở hàm mục tiêu 18 2.1 Nội dung bài toán 18
2.2 Thuật toán đưa về qui hoạch tuyến tính 21
2.3 Thuật toán dùng phép tính khoảng 25
2.3.1 Phép tính khoảng 25
2.3.2 Qui hoạch phân tuyến tính khoảng 28
2.4 Ví dụ minh họa 31
Trang 4Tài liệu tham khảo 39
Trang 5Danh mục các hình vẽ
Hình 1.1 Phân bổ công suất phát sóng tối ưu
Hình 1.2 Năm tập mức trong R2 vớiγ1 > 0 >γ2>γ3>γ4.Hình 1.3 Nghiệm tối ưu duy nhất đạt tại x∗
Hình 1.4 Nhiều nghiệm tối ưu: xopt ∈ [x∗, x∗∗]
Hình 1.5 Nghiệm tối ưu hữu hạn và vô cực
Hình 1.6 Nghiệm tối ưu tiệm cận ( f∗hữu hạn, không đạt được)Hình 1.7 Bài toán vô nghiệm ( f (x) ց −∞)
Hình 1.8 Tập ràng buộc của bài toán ở Ví dụ 1.1
Hình 2.1 Tập ràng buộc X của bài toán ở Ví dụ 2.1
Hình 2.2 Tập ràng buộc X của bài toán ở Ví dụ 2.2
Hình 2.3 Tập ràng buộc X của bài toán ở Ví dụ 2.4
Trang 6Lời mở đầu
Qui hoạch phân tuyến tính (LFP) là bài toán tìm cực tiểu (hay cực đại) của mộthàm phân thức afin (tỉ số hai hàm tuyến tính afin) với các ràng buộc đẳng thứchay bất đẳng thức tuyến tính
Qui hoạch phân tuyến tính là một trường hợp riêng của qui hoạch phân thứcphi tuyến, thường dùng để mô hình hóa các bài toán thực tế với một hay nhiềumục tiêu (chẳng hạn lợi nhuận / chi phí, sản phẩm / số lao động, ) và được ứngdụng rộng rãi trong nhiều ngành khác nhau của kỹ thuật, kinh tế, tài chính, Một trong những bài toán qui hoạch phân thức tuyến tính đang được nhiềungười quan tâm nghiên cứu là bài toán phân thức tuyến tính với hệ số khoảng ởhàm mục tiêu (không cố định như trước) Bài toán này có dạng:
f(x) = p(x)
q(x) =
[a1, b1] x1+ + [an, bn] xn+ [a0, b0][c1, d1] x1+ + [cn, dn] xn+ [c0, d0] → minvới điều kiện Ax < b, x ≥ 0, (A ∈ Rm×n, b ∈ Rm)
Mô hình bài toán này linh hoạt và dễ áp dụng hơn Có một số tài liệu mới([4], [5] và [6] năm 2012, 2013) đề cập tới các phương pháp giải bài toán này.Đáng chú ý là hai phương pháp nêu ở [4] và [6]
Vì thế chúng tôi chọn đề tài luận văn:
"Thuật toán giải bài toán phân thức tuyến tính với hệ số khoảng ở hàm mục tiêu"
nhằm mục đích tìm hiểu và trình bày các ý tưởng, phương pháp và thuật toángiải mô hình bài toán nêu trong hai tài liệu tham khảo gần đây [4, 6] Cả haiphương pháp tuy khác nhau, nhưng đều mở rộng và phát triển thuật toán giảiqui hoạch phân tuyến tính đã có Vì thế trước hết cần tìm hiểu qua về bài toán
Trang 7qui hoạch phân tuyến tính và một số tính chất nghiệm tối ưu của bài toán phântuyến tính Sau đó sẽ tìm hiểu và trình bày từng cách tiếp cận riêng ở [4] và [6].
Về đại thể phương pháp [4] nêu cách đưa bài toán ban đầu về một qui hoạchtuyến tính, phương pháp [6] dựa trên phép tính khoảng tìm cách đưa bài toánđược xét về bài toán với hàm mục tiêu khoảng Đây là đề tài mới về qui hoạchphân tuyến tính, đang được nhiều người quan tâm tìm hiểu, nghiên cứu
Luận văn được viết dựa chủ yếu trên các tài liệu tham khảo [1] - [6]
Kết quả cần đạt được: hiểu và trình bày về bài toán qui hoạch phân tuyếntính, tính chất nghiệm tối ưu của bài toán, mô hình bài toán qui hoạch phântuyến tính với hệ số khoảng ở hàm mục tiêu và một số thuật toán xử lý mô hình.Đóng góp chính của luận văn là tổng hợp và giới thiệu có chọn lọc hai thuậttoán giải bài toán qui hoạch phân tuyến tính với hệ số khoảng ở hàm mục tiêu.Luận văn được viết trong hai chương
Chương 1 "Kiến thức chuẩn bị" đề cập tới bài toán tối ưu với hàm mục
tiêu phân tuyến tính và với các ràng buộc tuyến tính Nêu một số ví dụ thực tế
có mô hình toán học là qui hoạch phân tuyến tính (bài toán sản xuất) và quihoạch phân tuyến tính suy rộng (bài toán tăng trưởng kinh tế Von Neumann vàbài toán phân bổ tối ưu công suất phát sóng) Tiếp đó nêu các tính chất nghiệmcủa bài toán thông qua các minh họa hình học nghiệm tối ưu của bài toán quihoạch phân tuyến tính Cuối chương trình bày phép biến đối Charnes - Cooperđưa bài toán qui hoạch phân tuyến tính về bài toán qui hoạch tuyến tính tươngđương, mà không cần giả thiết tập ràng buộc của bài toán phân tuyến tính bịchặn
Chương 2"Qui hoạch phân tuyến tính với hệ số khoảng ở hàm mục tiêu"
giới thiệu cách tiếp cận đưa ra trong [4, 6] tìm nghiệm tối ưu cho bài toán quihoạch phân tuyến tính với các hệ số mục tiêu thay đổi trong một khoảng Thuậttoán giải [4] dùng phép biến đổi Charnes - Cooper và thuật toán giải [6] dựatrên phép tính khoảng Cuối chương nêu một số ví dụ minh hoạ cho các thuậttoán giải đã trình bày
Nhân dịp này, tác giả xin bày tỏ lòng biết ơn sâu sắc tới thầy hướng dẫnGS.TS Trần Vũ Thiệu đã tận tình giúp đỡ trong suốt quá trình làm luận văn
Trang 8Tác giả cũng xin chân thành cảm ơn các GS, PGS, TS của Khoa Toán-Tin,Trường Đại học Khoa học Thái Nguyên và của Viện Toán học, Viện Công nghệthông tin thuộc Viện Hàn lâm Khoa học và Công nghệ Việt Nam đã giảng dạy
và tạo mọi điều kiện thuận lợi trong quá trình tác giả học tập và nghiên cứu
Thái Nguyên, tháng 5 năm 2016
Học viên
Nguyễn Thu Hằng
Trang 9Chương 1
Một số kiến thức chuẩn bị
Chương này đề cập tới bài toán tối ưu với hàm mục tiêu phân tuyến tính (tỉ sốcủa hai hàm tuyến tính afin) và với các ràng buộc tuyến tính Các bài toán như
thế gọi là qui hoạch phân tuyến tính Phần đầu trình bày nội dung và ý nghĩa
bài toán, tiếp đó nêu tính chất và minh họa hình học nghiệm tối ưu của bài toán.Cuối chương giới thiệu cách đưa bài toán về qui hoạch tuyến tính tương đương.Nội dung của chương được tham khảo từ các tài liệu [1], [2] và [3]
1.1 Bài toán qui hoạch phân tuyến tính
Một cách tổng quát có thể phát biểu bài toán như sau Cho tập lồi C ⊆ Rn vàcác hàm f ,g,hi :Rn → R(i = 1, , m) Xét bài toán tối ưu với hàm mục tiêuphân thức (tỉ số của hai hàm số), ký hiệu bài toán (FP):
x∈X
f(x)g(x),
trong đó X = x ∈ C : hi(x) ≤ 0, i = 1, , m Ta phân biệt các loại bài toán sau:
• Khi f , g và hi là các hàm afin thì (FP) gọi là bài toán qui hoạch phân tuyến tính(Linear Fractional Program)
• Khi f và g là các hàm toàn phương và hi là các hàm afin thì (FP) gọi là bài
toán qui hoạch phân thức toàn phương (Quadratic Fractional Program).
Trang 10• Khi f ≥ 0 là hàm lồi, g > 0 là hàm lõm và hi là các hàm lồi thì (FP) gọi
là bài toán qui hoạch phân thức lồi (Convex Fractional Program)
Trong bài toán (FP) chỉ xét một hàm phân thức Tuy nhiên, trong nhiều ứngdụng ta còn có thể xét nhiều hàm phân thức Chẳng hạn,
• Qui hoạch phân thức suy rộng (Generalized Fractional Program):
• Qui hoạch tổng các hàm phân thức (Sum-of-ratios Program):
λ∗= min
x∈X
k
∑i=1
nfi(x)
gi(x)
o(gi > 0 ∀i)
• Qui hoạch phân thức đa mục tiêu (Multi-Objective Fractional Program):
Luận văn này chủ yếu tập trung xét bài toán qui hoạch phân tuyến tính:
(LFP) min f(x) = p(x)
q(x) =
pTx+α
qTx+β : Ax≤ b, x ≥ 0, (1.1)trong đó p, q ∈ Rn,α,β ∈ R, A ∈ Rm×n, b ∈ Rm Ký hiệu
X = {x ∈ Rn: Ax≤ 0, x ≥ 0}
Tương tự, có thể xét bài toán tìm cực đại: max{ f (x) : x ∈ X}
Khi cần ta có thể dùng qui ước a/0 = +∞ nếu a > 0 và a/0 = −∞ nếu a ≤ 0.Qui hoạch tuyến tính là một trường hợp riêng của qui hoạch phân tuyến tínhkhi q = 0 vàβ = 1 Trong [2] phân tích một số trường hợp riêng khác cho phépđưa bài toán qui hoạch phân tuyến tính về bài toán tuyến tính thích hợp
Trang 11• Để tiện giải thích ý nghĩa thực tiễn của mô hình qui hoạch phân tuyến tính
và qui hoạch phân tuyến tính suy rộng ta xét bài toán tìm cực đại
a) Bài toán sản xuất Giả sử một xí nghiệp có thể dùng m loại vật tư hiện có
để sản xuất ra n loại sản phẩm Gọi bilà lượng vật tư i (i = 1, ,m) mà xínghiệp có và ai j là định mức tiêu hao vật tư i để sản xuất một đơn vị sảnphẩm j ( j = 1, ,n) Mỗi đơn vị sản phẩm j sản xuất ra sẽ cho lợi nhuận
là pj và tốn chi phí sản xuất là qj,α là lợi nhuận cố định thu được và β làchi phí cố định cần bỏ ra (α, β không phụ thuộc số lượng sản phẩm sảnxuất) Hỏi với số vật tư đã có xí nghiệp nên sản xuất bao nhiêu đơn vị sảnphẩm mỗi loại sao cho hiệu quả sản xuất của xí nghiệp (đo bằng tỉ số giữatổng lợi nhuận thu được trên tổng chi phi sản xuất) là lớn nhất? Bài toánnày dẫn đến mô hình qui hoạch phân tuyến tính
b) Bài toán tăng trưởng kinh tế Von Neumann Xét mô hình tăng trưởng
kinh tế đơn giản với n ngành, sản xuất và tiêu dùng m loại hàng Ký hiệu:
• xi(t) là cường độ hoạt động của ngành i ở năm t (biến cần tìm);
• a x(t) là lượng hàng i tiêu dùng ở năm t cho mọi ngành;
• b x(t) là lượng hàng i do mọi ngành sản xuất ra ở năm t
Tốc độ tăng trưởng của ngành i đo bằng tỉ số xi(t)/xi(t − 1), i = 1, , n
Tỉ số thấp nhất được dùng làm thước đo tốc độ tăng trưởng năm t của nềnkinh tế Bài toán đặt ra là các ngành hoạt động sao cho cả nền kinh tế đạttốc độ tăng trưởng lớn nhất? Bài toán này dẫn đến mô hình qui hoạch phântuyến tính suy rộng:
max{ f (x) = min
1≤i≤n
xi(t)
t− 1 : ˜Ax(t) ≤ Bx(t − 1), x(t) ≥ 1},trong đó x(t) = (x1(t), , xn(t))T
c) Phân bổ tối ưu công suất phát sóng.
Trang 12• ai jk là lợi thế về đường đi từ trạm phát k tới máy thu (i, j).
• ni j là mức độ ồn nội tại (tạp âm) của máy thu (i, j)
• các biến số: công suất phát sóng pk, k = 1, ,m
Ở máy thu (i, j) có các thông số:
• cường độ tín hiệu thu: si j = ai jipi
• cường độ nhiễu và ồn: fi j = ∑k6=iai jkpk+ ni j
• tỉ số cường độ tín hiệu thu trên cường độ nhiễu và ồn: si j/ fi j
Các trạm phát k 6= i gây nhiễu đối với các máy thu (i, j) Cần xác định cáccông suất phát sóng pi (i = 1, , m) sao cho làm cực đại tỉ số si j/ fi j nhỏnhất đối với mọi máy thu (i, j)? Mô hình toán học cho bài toán này nhưsau
Trang 131.2 Tính chất nghiệm của bài toán
Bây giờ ta trở lại xét bài toán qui hoạch phân tuyến tính (1.1) Để bài toán cónghĩa ta giả thiết mẫu số q(x) ≡ qTx+ b 6= 0 ∀x ∈ X = {x : Ax ≤ b, x ≤ 0}.Nếu q(x) có dấu khác nhau trên X, tức là có x1, x2∈ X sao cho qTx1+β > 0
và qTx2+β < 0 thì do q(x) liên tục nên tồn tại x ∈ x1, x2
, tức x ∈ X, saocho q(x) = 0, trái với giả thiết Vì thế, không mất tổng quát, ta có thể giả thiếtq(x) > 0 với mọi x ∈ X (Nếu có q(x) < 0 thì nhân cả tử số p(x) và mẫu số q(x)của hàm mục tiêu f (x) với (−1), ta sẽ có q(x) > 0) Hơn nữa, ta giả thiết m ≤ n
mà đồng thời là đỉnh của tập ràng buộc X gọi là một phương án cực biên hay nghiệm cơ sở (basic feasible solution) Phương án đạt giá trị nhỏ nhất của hàm
mục tiêu f (x) gọi là một phương án tối ưu hay nghiệm tối ưu (optimal solution).
Ta nói bài toán (1.1) là bất khả thi hay không chấp nhận được (infeasible) nếu tập X = ∅, bài toán gọi là giải được (solvable) nếu tập X 6= ∅ và hàm f (x)
có cận dưới (đối với bài toán min) hữu hạn trên X Nếu hàm mục tiêu f (x)
không bị chặn dưới trên X thì bài toán được gọi là không bị chặn (unbounded):
inf
x∈X f(x) = −∞
Ta biết rằng hàm phân tuyến tính f (x) = p(x)/q(x) có tính chất đáng chú ý
là f (x) đơn điệu trên mỗi đoạn thẳng nằm trong tập {x : q(x) > 0}, do đó cựctiểu (hay cực đại) của f (x) trên mỗi đoạn thẳng sẽ đạt tại một đầu mút của đoạnthẳng đó Từ đó, nếu hàm f (x) có cực tiểu (hay cực đại) trên một tập lồi đa diện
có đỉnh thì cực tiểu (hay cực đại) đó sẽ đạt được tại một đỉnh của tập đa diện đó.Với bài toán qui hoạch phân tuyến tính, có thể xảy ra các trường hợp sau:
Trang 14a Tập ràng buộc X = ∅ (bài toán bất khả thi).
b Nghiệm tối ưu duy nhất (đạt tại một đỉnh của X)
c Vô số nghiệm tối ưu hữu hạn (đạt tại một diện bị chặn của X)
d Có nghiệm tối ưu hữu hạn và vô cực (đạt tại một diện vô hạn của X)
e Nghiệm tối ưu tiệm cận ( f∗= infx∈X f(x) > −∞ và ∄x∗∈ X : f (x∗) = f∗)
f Không có nghiệm tối ưu (infx∈X f(x) = −∞ - bài toán không bị chặn)
Để tiện cho việc giải thích các nghiệm tối ưu của bài toán, ta thêm biến mới
γ ∈ R và viết lại (LFP) dưới dạng tương đương sau (các biếnγ ∈ R, x ∈ Rn):
min{γ : pTx+β ≤γ(qTx+β), Ax ≤ b, x ≥ 0}
Trong bài toán này, hàm mục tiêu là tuyến tính, nhưng các ràng buộc khôngcòn là tuyến tính nữa Tuy nhiên, dạng bài toán này tiện cho việc minh họa.Các tập mức của hàm mục tiêu của bài toán (LFP) có dạng:
Cγ = {x ∈ Rn: qTx+β > 0, (pTx+α)/(qTx+β) =γ}
= {x ∈ Rn:(p −γq)Tx= (γβ−α)}, mứcγ ∈ R
Trong R2, mỗi tập mức Cγ là một đường thẳng đi qua giao điểm F của haiđường thẳng p(x) = 0 và q(x) = 0 (⇒ p(x) −γq(x) = 0, tức là x ∈ Cγ, ∀γ ∈ R)
Trang 15Bài toán qui hoạch phân tuyến tính với X 6= ∅ có thể có các tình huống sau.
1.3.1 Nghiệm tối ưu duy nhất
Nghiệm tối ưu duy nhất, đạt tại đỉnh x∗∈ X (Hình 1.3 a) và b))
Trang 16X F
1.3.2 Nhiều nghiệm tối ưu
Vô số nghiệm tối ưu hữu hạn (đạt được trên một diện bị chặn của X)
Trang 171.3.3 Nghiệm tối ưu hữu hạn và vô cực
Nếu tập ràng buộc X không bị chặn và một cạnh vô hạn của X nằm trên đườngmức mục tiêu (Hình 1.5) thì bài toán có vô số nghiệm tối ưu, một trong số đó
là đỉnh x∗ và các nghiệm tối ưu khác là các điểm còn lại trên cạnh vô hạn đi từ
x∗ Điều đáng chú ý ở đây là trong các nghiệm tối ưu khác x∗, có một nghiệm
ở vô cực Vì thế, trong trường hợp này ta nói bài toán có "nghiệm tối ưu hỗnhợp" (mixed solutions): nghiệm tối ưu hữu hạn và nghiệm tối ưu vô cực Trongtrường hợp này các nghiệm tối ưu đạt được tại một diện vô hạn của X
Trang 181.3.4 Nghiệm tối ưu tiệm cận
Trường hợp này xảy ra khi f∗= infx∈X f(x) > −∞ và ∄x∗∈ X : f (x∗) = f∗
1.3.5 Bài toán vô nghiệm
Xảy ra khi f∗= infx∈X f(x) = −∞ (hàm mục tiêu không bị chặn dưới)
Trang 191.4 Biến đổi về bài toán tuyến tính tương đương
• Xét bài toán qui hoạch phân tuyến tính (LFP):
Định lý 1.1 Với các ký hiệu trên, ta có các kết luận sau đây:
a) Nếu (y0,t0) là nghiệm chấp nhận được của (LP) và t0 > 0 thì x0 = y0/t0
là nghiệm chấp nhận được của (LFP) và
Trang 20a) Nếu (y∗,t∗) là nghiệm tối ưu của (LP) và t∗ > 0 thì x∗= y∗/t∗ là nghiệm tối ưu của (LFP).
b) Giả sử (LFP) chấp nhận được Khi đó, (LP) không bị chặn dưới khi và chỉ khi (LFP) không bị chặn dưới.
Định lý 1.3 Giả sử (LFP) có nghiệm chấp nhận được Khi đó, (LP) có nghiệm
tối ưu và mọi nghiệm tối ưu đều có t = 0 thì giá trị mục tiêu của (LFP) có cận dưới đúng hữu hạn, nhưng cận dưới đó không đạt tới được Đó là trường hợp (LFP) có nghiệm tối ưu tiệm cận.
Trong trường hợp này, có thể tạo ra các nghiệmε - tối ưu với bất kỳ ε > 0,nghĩa là trong X tồn tại một cạnh vô hạn mà dọc theo cạnh đó giá trị mục tiêucủa (LFP) tiến dần về cận dưới đúng nói trên
Định lý 1.4 Nếu X 6= ∅ và qTx+β = 0 với mọi x ∈ X thì (LP) không có nghiệm chấp nhận được (bài toán (LP) là bất khả thi).
Các định lý trên cũng áp dụng được vào cặp ràng buộc {x : Ax = b,x ≥ 0}
và {(y,t) : Ay − bt = 0,y ≥ 0,t ≥ 0}
• Dựa vào phép biến đổi Charnes - Cooper, ta có thể giải bài toán qui hoạchphân tuyến tính (LFP) bằng cách lập và giải bài toán qui hoạch tuyến tính (LP)tương ứng Kết quả giải (LP) cho ra một trong các khả năng sau:
a) (LP) bất khả thi ⇒ X = ∅ hoặc (LFP) không xác định (Định lý 1.1 và1.4)
b) (LP) có nghiệm tối ưu (y∗,t∗) với t∗> 0 ⇒ (LFP) có nghiệm tối ưu x∗=
Trang 21-Ví dụ 1.1 Giải qui hoạch phân tuyến tính
f(x) = p(x)
q(x) =
x1+ 4x2− 5
x1− x2+ 5 → minvới các điều kiện
−6y0+ y1+ 4y2→ min,
với các điều kiện
− 4y0− y1+ y2≤ 0,
− 2y0− 3y1+ y2≤ 0,3y0+ y1− 4y2≤ 0,2y0− y1− y2≤ 0,5y0+ y1− y2= 1,
y0≥ 0, y1≥ 0, y2≥ 0
Có thể kiểm tra lại rằng y0 = 0, 2; y1= 0, 2; y2= 0, 2 là nghiệm tối ưu củabài toán qui hoạch tuyến tính trên Do đó nghiệm tối ưu của bài toán qui hoạchphân tuyến tính cần giải là x1= y1/y0 = 1, x2= y2/y0 = 1 và giá trị nhỏ nhấtcủa hàm mục tiêu là fmin = −0, 2 (xem Hình 1.1)
Trang 22(0, 0)
(0, 2) (1, 1)
Hình 1.8 Tập ràng buộc của bài toán ở Ví dụ 1.1
Nhận xét 1.1 Phép biến đổi Charnes - Cooper tuy đưa được bài toán (LFP) về
bài toán (LP), nhưng nó có thể làm mất đi cấu trúc ban đầu của bài toán cần
giải (cấu trúc vận tải chẳng hạn), vì thế nó ít được dùng trong thực tiễn
Kết luận chương này đã đề cập tới bài toán qui hoạch phân tuyến tính và các
loại nghiệm tối ưu của bài toán (hữu hạn, vô cực, tiệm cận) Cuối chương trình
bày phép biến đổi Charnes-Cooper và thuật toán giải bài toán qui hoạch phân
tuyến tính dựa trên phép biến đổi này, mà không cần giả thiết tập ràng buộc của
bài toán bị chặn