Thuật toán đơn hình cải biên và ứng dụng giải qui hoạch tuyến tính với ràng buộc suy rộng

28 21 0
Thuật toán đơn hình cải biên và ứng dụng giải qui hoạch tuyến tính với ràng buộc suy rộng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC TRẦN QUANG VUI THUẬT TỐN ĐƠN HÌNH CẢI BIÊN VÀ ỨNG DỤNG GIẢI QUI HOẠCH TUYẾN TÍNH VỚI RÀNG BUỘC SUY RỘNG Chun ngành: Tốn ứng dụng Mã số: 60.46.01.12 TĨM TẮT LUẬN VĂN THẠC SĨ TOÁN HỌC Thái Nguyên -12/2015 Cơng trình hồn thành Trường Đại học Khoa học - Đại học Thái Nguyên Người hướng dẫn khoa học: GS.TS Trần Vũ Thiệu Phản biện 1: TS Nguyễn Thị Thu Thủy Phản biện 2: PGS.TS Hà Tiến Ngoạn Luận văn bảo vệ trước Hội đồng chấm luận văn họp Trường Đại học Khoa học - Đại học Thái Nguyên vào hồi 11 ngày 26 tháng 12 năm 2015 Có thể tìm hiểu luận văn Trung tâm học liệu Đại học Thái Nguyên Thư viện Trường Đại học Khoa học Cơng trình hoàn thành Trường Đại học Khoa học - Đại học Thái Nguyên Người hướng dẫn khoa học: GS.TS Trần Vũ Thiệu Phản biện 1: TS Nguyễn Thị Thu Thủy Phản biện 2: PGS.TS Hà Tiến Ngoạn Luận văn bảo vệ trước Hội đồng chấm luận văn họp Trường Đại học Khoa học - Đại học Thái Nguyên vào hồi 11 30 ngày 26 tháng 12 năm 2015 Có thể tìm hiểu luận văn Trung tâm học liệu Đại học Thái Nguyên Thư viện Trường Đại học Khoa học MỞ ĐẦU Qui hoạch tuyến tính tốn tối ưu ứng dụng rộng rãi lý thuyết thực tiễn Phương pháp đơn hình Dantzig (1947) hiệu để giải lớp tốn Có nhiều biến thể khác cho dạng tốn hay tình cụ thể có nhiều thuật tốn có hiệu cao: đơn hình gốc, đơn hình cải biên, đơn hình đối ngẫu, đơn hình gốc - đối ngẫu, Luận văn đề cập tới thuật tốn đơn hình cải biên, biến thể quan trọng phương pháp đơn hình Dantzig Thuật tốn đặc biệt hữu ích cho tốn có số biến vượt trội so với số ràng buộc có ma trận ràng buộc thưa (tỉ lệ phần tử lớn ) - chẳng hạn ma trận toán vận tải ứng dụng để giải toán qui hoạch tuyến tính với ràng buộc suy rộng, vectơ hệ số biến tốn không cố định trước mà chọn tùy ý từ tập lồi đa diện cho trước Sau học chuyên đề giải tích lồi, tối ưu hóa kiến thức có liên quan, với mong muốn tìm hiểu sâu kiến thức học, tơi chọn đề tài luận văn: "Thuật tốn đơn hình cải biên ứng dụng giải qui hoạch tuyến tính với ràng buộc suy rộng" Mục đích đề tài tìm hiểu nội dung thuật tốn đơn hình đơn hình cải biên giải qui hoạch tuyến tính trình bày cách áp dụng thuật tốn đơn hình cải biên, kết hợp với kỹ thuật sinh cột nguyên lý phân rã, vào giải toán qui hoạch tuyến tính với ràng buộc suy rộng Nội dung luận văn gồm ba chương Thái Nguyên, ngày 21 tháng 11 năm 2015 Trần Quang Vui Học viên Cao học Lớp 7Y Khóa 01/2014-01/2016 Chun ngành Tốn ứng dụng Trường Đại học Khoa học - Đại học Thái Nguyên Email: tranvuilh@gmail.com Chương KIẾN THỨC VỀ QUI HOẠCH TUYẾN TÍNH Chương trình bày số kiến thức sở tập lồi, tập lồi đa diện, toán qui hoạch tuyến tính tắc, tốn đối ngẫu phương pháp đơn hình giải 1.1 TẬP LỒI VÀ TẬP LỒI ĐA DIỆN Định nghĩa 1.1 Tập C ⊆ R gọi tập lồi λa + (1 − λ)b ∈ C, ∀a, b ∈ C, ∀λ ∈ [0, 1], tức C chứa toàn đoạn thẳng nối hai điểm thuộc • Ta để ý tới tập lồi đặc biệt sau đây: a) Tập afin tập chứa trọn đường thẳng qua hai điểm thuộc b) Siêu phẳng tập có dạng H = {x ∈ Rn : aT x = α}, a ∈ Rn , a = α ∈ R c) Các nửa không gian đóng H + = {x ∈ Rn : aT x α}, H − = {x ∈ Rn : aT x α} d) Các nửa không gian mở K + = {x ∈ Rn : aT x > α}, K − = {x ∈ Rn : aT x < α} e) Hình cầu đóng B(a, r) = {x ∈ Rn : x − a 0) r}(a ∈ Rn , r > • Từ định nghĩa tập lồi trực tiếp suy số tính chất đơn giản sau đây: a) Giao họ tập lồi tập lồi C, D lồi ⇒ C lồi D b) Nếu C, D ⊂ Rn C ± D = {x ± y =: x ∈ C, y ∈ D} tập lồi c) Nếu C ⊂ Rm D ⊂ Rn tích C × D = {(x, y) : x ∈ C, y ∈ D} tập lồi Rm+n (Có thể mở rộng cho nhiều tập lồi) Định nghĩa 1.2 Cho E tập hợp Rn a) Giao tất tập afin chứa E gọi bao afin E, kí hiệu aff E Đó tập afin nhỏ chứa E b) Giao tất tập lồi chứa E gọi bao lồi E, kí hiệu conv E Đó tập lồi nhỏ chứa E Định nghĩa 1.3 a) Thứ nguyên (hay số chiều) tập afin M, kí hiệu dim M, thứ nguyên (số chiều) khơng gian song song với b) Thứ nguyên (hay số chiều) tập lồi C, kí hiệu dim C, thứ nguyên (số chiều) bao afin aff C Định nghĩa 1.4 Tập lồi K ⊆ Rn gọi nón lồi có thêm điều kiện λx ∈ K, ∀x ∈ K, ∀λ > Định nghĩa 1.5 a) Điểm x ∈ Rn có dạng x = λ1 a1 + λ2 a2 + + λk ak với ∈ Rn , λi 0, λ1 + λ2 + + λk = gọi tổ hợp lồi a1 , a2 , , ak b) Điểm x ∈ Rn có dạng x = λ1 a1 + λ2 a2 + + λk ak với ∈ Rn , λ1 + λ2 + + λk = gọi tổ hợp afin a1 , a2 , , ak c) Điểm x ∈ Rn có dạng x = λ1 a1 + λ2 a2 + + λk ak với ∈ Rn , λi gọi tổ hợp tuyến tính khơng âm hay tổ hợp nón a1 , a2 , , ak Định nghĩa 1.6 Một tập lồi mà giao số hữu hạn nửa khơng gian đóng gọi tập lồi đa diện Nói cách khác, tập nghiệm hệ hữu hạn bất phương trình tuyến tính: ai1 x1 + ai2 x2 + + ain xn nghĩa tập x nghiệm Ax (b1 , , bm )T bi , i = 1, 2, , m, b với A = (aij ) ∈ Rm×n , b = Ví dụ 1.1 a) Tập lồi đa diện vẽ Hình (1.1) giao nửa khơng gian đóng: x1 0, x2 0, x3 0, x1 2, x2 2, x1 + x3 Tập khơng bị chặn có thứ nguyên (số chiều 3): dimD1 = b) Đa diện lồi D2 vẽ Hình 1.2 tập nghiệm hệ phương trình bất phương trình tuyến tính:  x1 + x2 + x3 = x1 + x2 0, x2 + x3 0, x1 + x3 0, Tập bị chặn có thứ nguyên (số chiều) 2: dim D2 = 2.(D2 tam giác với đỉnh (6, 2, 2), (2, 6, 2), (2, 2, 6) nằm mặt phẳng x1 + x2 + x3 = 1) Định nghĩa 1.7 Điểm x0 ∈ D gọi đỉnh D x1 , x2 ∈ D, x1 = x0 x2 = x0 λ ∈ (0, 1) cho x0 = λx1 + (1 − λ)x2 , nói cách khác: x0 điểm nằm đoạn thẳng nối hai điểm thuộc D • Trong Hình 1.1, O, A, B, C, D đỉnh tập lồi đa diện D1 Trong Hình 1.2, ba đỉnh tam giác (tơ gạch chéo) đỉnh tập lồi đa diện D2 Để hiểu rõ tập lồi đa diện không bị chặn ta cần khái niệm sau: Định nghĩa 1.8 Vectơ d ∈ Rn , d = gọi hướng lùi xa D ∃x0 ∈ Dsao cho {x0 + λd : λ 0} ⊆ D Tập hợp hướng lùi xa D cộng với gốc O tạo thành nón lồi đóng, gọi nón lùi xa D, kí hiệu rec D Định nghĩa 1.9 Hướng lùi xa d D gọi hướng cực biên không tồn hai hướng lùi xa khác d1 , d2 cho d = λ1 d1 +λ2 d2 , λ1 , λ2 > Có thể chứng minh tập lồi đa diện D không bị chặn recD = {0}, nghĩa D có hướng lùi xa Ta có định lý biểu diễn sau đây, thường hay dùng chứng minh: Định lí 1.1 Mỗi điểm tập lồi đa diện D = {x ∈ Rn : Ax = b, x 0} biểu diễn dạng tổ hợp lồi tập hữu hạn đỉnh D cộng với tổ hợp tuyến tính khơng âm tập hữu hạn phương cực biên D Trong toán quy hoạch tuyến tính, ta gặp tập lồi đa diện có dạng: D = {x ∈ Rn : Ax = b, x 0}, A ∈ Rm×n , b ∈ Rm (1.1) tức D tập nghiệm không âm hệ phương trình tuyến tính Giả thiết m n (nếu m > n, tập D rỗng) rank A = m Ở dạng này, tập D không chứa đường thẳng (do x 0) nên D có đỉnh Kí hiệu Aj (j = 1, , n) vectơ cột thứ j ma trận A Theo lý thuyết qui hoạch tuyến tính, vectơ x ¯ ∈ D đỉnh D hệ vectơ {Aj : x¯j > 0} độc lập tuyến tính Do Aj ∈ Rm nên từ tính chất suy số thành phần dương đỉnh D xác định (1.1) không vượt m Một ứng dụng cụ thể kết tìm đỉnh tập lồi đa diện D xác định theo (1.1) số biến n không lớn Sau ví dụ: Ví dụ 1.2 Tìm đỉnh không suy biến tập lồi đa diện cho hệ: 3x1 − 2x2 + 3x3 = −x1 + 2x2 − x3 = xj 0, j = 1, 2, Ví dụ có m = phương trình n = biến Một đỉnh có nhiều m = thành phần dương, tức có n - m = thành phần Vì thế, cho x1 , x2 , x3 0, ta được: • Với x1 = 0, hệ phương trình cho ta x2 = 92 , x3 = • Với x2 = 0, hệ phương trình vơ nghiệm (x1 + x3 = −4, x1 0!) 0, x3 • Với x3 = 0, hệ phương trình cho ta x2 = 29 , x1 = Như ta nhận hai nghiệm hệ: (0, 29 , 5) (5, 92 , 0) Kiểm tra trực tiếp cho thấy hệ hai vectơ A2 = (−2, 2)T , A3 = (3, −1)T A1 = (3, −1)T , A2 = (−2, 2)T độc lập tuyến tính, nên hai nghiệm đỉnh không suy biến tập lồi đa diện cho (số thành phần dương m = 2) 1.2 BÀI TỐN QUI HOẠCH TUYẾN TÍNH CHÍNH TẮC Qui hoạch tuyến tính tốn tìm cực tiểu (hay cực đại) hàm tuyến tính với ràng buộc tuyến tính Khi đề cập tới phương pháp giải, người ta thường xét tốn qui hoạch tuyến tính dạng tắc sau:  n f (x) = j=1 cj xj → n (1.2) a x = bi , i = 1, 2, , m  j=1 ij j xj 0, j = 1, 2, , n aij , bi , cj số cho trước Trong toán (1.2), f(x) gọi hàm mục tiêu, phương trình ai1 x1 + ai2 x2 + + ain xn = bi , (i = 1, 2, , m) gọi ràng buộc đẳng thức, bất đẳng thức xj gọi ràng buộc dấu (hay ràng buộc không âm) Điểm (hay vectơ) x ∈ Rn thỏa mãn ràng buộc, gọi điểm chấp nhận được, hay phương án toán Tập hợp tất phương án toán gọi tập ràng buộc hay miền chấp nhận toán kí hiệu D, tức đặt: D = {x ∈ Rn : Ax = b, x 0} Như nhắc lại Mục 1.2, D tập lồi đa diện có đỉnh (nếu tập D = ∅) Phương án đạt giá trị nhỏ hàm mục tiêu, hay gọi phương án tối ưu hay lời giải toán Một phương án mà đồng thời đỉnh D gọi phương án cực biên tốn Kí hiệu A = (aij ) ∈ Rm×n , b = (b1 , , bm )T , c = (c1 , , cn )T x = (x1 , , xn )T Khi tốn (1.2) viết gọn lại thành: min{f (x) = cT x : Ax = b, x 0} Định lý sau nêu điều kiện cần đủ để qui hoạch tuyến tính có lời giải: Định lí 1.2 Nếu qui hoạch tuyến tính có phương án hàm mục tiêu bị chặn miền chấp nhận (đối với tốn min) tốn chắn có phương án tối ưu (lời giải) Định lý sau nêu lên tính chất đặc trưng phương án cực biên (đỉnh) tốn qui hoạch tuyến tính tắc: Định lí 1.3 Để phương án x0 = (x01 , x02 , , x0n ) toán qui hoạch tuyến tính tắc phương án cực biên điều kiện cần đủ vectơ cột Aj ma trận A tương ứng với thành phần x0j > độc lập tuyến tính Định lí 1.4 Nếu tốn qui hoạch tuyến tính tắc có phương án tối ưu có phương án cực biên tối ưu (có đỉnh tối ưu) 1.3 BÀI TOÁN ĐỐI NGẪU Ta định nghĩa đối ngẫu tốn qui hoạch tuyến tính tắc, kí hiệu toán (P): f (x) = c1 x1 + c2 x2 + + cn xn → ai1 x1 + ai2 x2 + + ain xn = bi , i = 1, 2, , m xj 0, j = 1, 2, , n toán ký hiệu (Q): g(y) = b1 y1 + b2 y2 + + bm ym → max a1j y1 + a2j y2 + + amj ym cj , j = 1, 2, , n 11 Chương PHƯƠNG PHÁP ĐƠN HÌNH CẢI BIÊN Chương trình bày phương pháp đơn hình cải biên giải qui hoạch tuyến tính tắc: ý nghĩa cải biên, cách tính truy hồi ma trận nghịch đảo, sơ đồ tính tốn ví dụ số minh họa thuật tốn 2.1 Ý NGHĨA CỦA SỰ CẢI BIÊN Xét toán qui hoạch tuyến tính dạng tắc: min{f (x) = cT x : Ax = b, x 0} (2.1) Giả sử ta có phương án cực biên x với sở J = {i1 , i2 , , im }, (Ai1 , Ai2 , , Aim ) vectơ sở xi1 , xi2 , , xim biến sở) Đặt: B = (Ai1 , Ai2 , , Aim ) - ma trận sở (m hàng, m cột) Zk = (z1k , z2k , , zmk )T - vectơ cột hệ số khai triển Ak theo sở B cB = (ci1 , ci2 , , cim )T - vectơ hàng gồm hệ số mục tiêu biến sở xB = (xi1 , xi2 , , xim )T - vectơ cột ghi giá trị biến sở Theo phương pháp đơn hình ta có cơng thức tính sau: xB = B −1 b, f (x) = (cB )T B −1 b, Zk = B −1 Ak , k = 1, 2, , n ∆k = cB Zk − ck , gọi ước lượng biến xk , k = 1, 2, , n (2.2) 12 Phương pháp đơn hình giải qui hoạch tuyến tính (2.1) cần tính tốn ma trận cỡ m × n Phương pháp đơn hình cải biên sử dụng cơng thức (2.2) nên vịng lặp cần lưu giữ biến đổi ma trận sở nghịch đảo B −1 cỡ m × m, không cần lưu giữ biến đổi ma trân điều kiện ban đầu (cỡ m × n lớn nhiều), nhờ tiết kiệm nhớ thời gian tính tốn giải tốn Phương pháp đơn hình cải biên đặc biệt thích hợp có hiệu tốn thực tế có kích thước lớn, có số ràng buộc m nhỏ nhiều so với số biến n toán A ma trận thưa (tỉ lệ phần tử khác A nhỏ, khoảng từ 5% đến 10%) 2.2 CƠNG THỨC TRUY HỒI TÍNH MA TRẬN NGHỊCH ĐẢO B −1 Khi đưa vectơ phi sở As sở B loại khỏi B vectơ Air với zrs = 0, ta nhận sở mới: B = (Ai1 , , Air −1 , As , Air +1 , , Aim ), nghĩa B’ khác B vectơ As thay cho Air (ở vị trí thứ r sở) Kí hiệu: Q = B −1 = (qik )m×n , Q = (B )−1 = (qik )m×n Khi cơng thức liên hệ phần tử qik qik sau: qik = )zis , i = r qik − ( qzrk rs qrk zrs , i = r i, k = 1, , m (2.3) hay dạng ma trận ta có (B )−1 = Ur B −1 , đó:     0   Ur =   0    − z1,s rs z − r−1,s zrs z zrs zr+1,s − zrs − z m,s zrs     0   0  0    (2.4) 13 ma trận sơ cấp, nghĩa khác ma trận đơn vị cột (cột thứ r) 2.3 THUẬT TOÁN ĐƠN HÌNH CẢI BIÊN Dantzig Orchard - Hays (1954) đề thuật tốn đơn hình cải biên để giảm bớt khối lượng tính tốn thơng tin lưu trữ bước lặp đơn hình Xét tốn qui hoạch tuyến tính tắc dạng (2.1) Q trình giải tốn đơn hình cải biên sử dụng hai bảng: Bảng 2.1 Bảng 2.2 Trong Bảng 2.1, m+1 dòng đầu lưu giữ hệ số aij , bi , cij toán cần giải (2.1) Từ dòng m+2 trở ghi ước lượng ∆k biến xk vịng lặp tính theo cơng thức (2.2) Dòng b A1 As An Dòng b1 a11 a1s a1n Dòng m bm am1 ams amn Dòng m+1 c c1 cs cn Dòng m+2 ∆1 ∆1 ∆s ∆n Dòng m+3 ∆2 ∆1 ∆s ∆n Bảng 2.1: Bảng 2.2 gọi bảng đơn hình cải biên Cột ghi tên biến sở Cột cB ghi hệ số mục tiêu biến sở Trong cột thứ ba (Phương án): m phần tử đầu giá trị biến sở, phần tử cuối giá trị hàm mục tiêu tương ứng Ma trận sở nghịch đảo B −1 ghi m cột Cột Zs (cột quay): m phần tử đầu ghi hệ số khai triển vectơ đưa vào sở As theo vectơ sở, phần tử cuối ghi ước lượng ∆s Dịng phía ma 14 trận nghịch đảo ghi phương án toán đối ngẫu, tính theo cơng thức: (qm+1,1 , qm+1,2 , , qm+1,m ) = cB B −1 (2.5) Biến cB Phương sở án Ma trận B −1 Zs xi1 ci q10 q11 q1m z1s xir cir qr0 qr1 qrm zrs xim cim qm0 qm1 qmm zms qm+1,0 qm+1,1 qm+1,m θ ∆s Bảng 2.2: Bảng đơn hình cải biên Thuật tốn đơn hình cải biên gồm bước sau: Bước (Xây dựng bảng đơn hình ban đầu) Giả sử lúc đầu có phương án cực biên x với sở J Đặt B = {Aj : j ∈ / J} Tính ma trận nghịch đảo ghi vào Bảng 2.2 Tính m phần tử đầu cột Phương án theo (2.2) tính qm+1,0 = (cB )T B −1 b Các phần tử qm+1,k (k = 1, , m) tích vectơ cB với vectơ cột thứ k B −1 theo công thức (2.5) Bước (Kiểm tra tối ưu tìm cột quay) Tính ước lượng biến xk theo công thức (2.2): ∆k tích dịng m+1 Bảng 2.2 với cột Ak Bảng 2.1, trừ ck Nếu ∆k 0∀k = 1, , n phương án cực biên có tối ưu Trái lại, ta xác định vectơ As đưa vào sở theo công thức (hoặc chọn ngẫu nhiên có nhiều số đạt max): ∆s = max{∆k : ∆k > 0, k ∈ / J} Bước 2: (Kiểm tra tốn khơng có lời giải hữu hạn tìm dịng quay) Trước hết tính cột quay (cột Zs Bảng 2.2) theo công thức Zs = B −1 As , tức 15 nhân dòng ma trận nghịch đảo B −1 với cột As Bảng 2.1 ta phần tử cột quay Zs Bảng 2.2 Phần tử cuối cột ∆s (đã tính trên) Nếu zis 0∀i = 1, , m hàm mục tiêu tốn (2.1) khơng bị chặn dưới: dừng tính tốn Trái lại, xác định vectơ loại khỏi sở theo công thức: θ0 = qr0 zrs = min{ zqi0 : zis > 0} is Cột θ Bảng 2.2 dùng để ghi tỉ số zqi0 zis > is Bước 3:(Biến đổi bảng đơn hình cải biên) Biến sở dòng r xir bị loại khỏi sở, thay vào biến xs Trong cột cB thay hệ số mục tiêu dòng r cir cs Biến đổi ma trận (qik )(m+1)×(m+1) (i = 1, 2, , m + 1; k = 0, 1, , m) theo công thức tương tự (2.3) với cột quay Zs , dòng quay r phần từ quay zrs > Cụ thể: a) Chia phần tử dòng r cho zrs Dịng nhận gọi dịng b) Lấy dịng khác trừ tích dịng với phần tử dịng cột quay, tức trừ (dịng chính) ×zis Quay trở lại thực Bước 2.4 VÍ DỤ MINH HỌA Ví dụ 2.1 Giải tốn sau theo thuật tốn đơn hình cải biên:  f (x) = 26x1 + 35x2 + 34x3 + 37x4 + 25x5 + 31x6 → 28x1 + 34x2 + 28x3 + 30x4 + 30x5 + 34x6 = 32 x + x + x + x + x + x = x1 0, x2 0, x3 0, x4 0, x5 0, x6 Số liệu ban đầu toán ước lượng ∆k vòng lặp ghi Bảng 2.3: Các bước giải toán nêu ba bảng đơn hình cải biên Bảng 2.4, Bảng 2.5 Bảng 2.6: Bảng 2.4: Cơ sở ban đầu gồm hai vectơ A1 A2 với: 17 34 ⇒ B −1 = − B = (A1 , A2 ) = 28 1 − 14 Phương án cực biên ban đầu biến đối ngẫu tương ứng là: 16 b A1 A2 32 28 34 1 c 26 35 ∆1 ∆2 ∆3 -1 -4 0 -4 A3 28 34 A4 30 37 A5 A6 30 34 1 25 31 -8 -8 -14 -12 -12 -12 0 4 Bảng 2.3: Biến sở Cơ Phương án x1 26 x2 35 B −1 − 16 3 θ 3 17 − 14 32 Z5 1,5 -16 Bảng 2.4: x1 = − x2 17 − 14 × 32 = (y1 , y2 ) = (26, 35) 3 với f1 = − 16 17 − 14 3 × 26 + × 35 = 32 = ( 32 , −16) Tính ước lượng ∆1 = AT y − c = (0 −8 − 4) Đưa vectơ A5 vào sở Loại vectơ A1 khỏi sở Bảng 2.4 biến đổi theo Bước thuật toán nêu trên, với phần tử quay z15 = 32 (số in đậm) Kết ta nhận Bảng 2.5 Tính ước lượng ∆2 = AT y−c = (−1 −14 −12 4) Đưa vectơ A6 vào sở Loại vectơ A2 khỏi sở Biến đổi Bảng 2.5 ta thu Bảng 2.6 Tính ước lượng ∆3 = AT y−c = (−4 −4 −12 −12 0) 17 Biến sở Cơ Phương án x5 25 x2 35 2 B −1 − 14 17 − 15 30 2,5 Z6 θ − 1 -50 Bảng 2.5: Biến sở Cơ Phương án x5 25 x6 31 B −1 2 − 14 28 1, 17 15 − − − 20 Bảng 2.6: Mọi biến có ước lượng nhỏ hay nên dừng tính tốn: Phương án tối ưu tốn x∗ = (0 0 0, 0, 5)T giá trị tối ưu hàm mục tiêu fmin = f (x∗ ) = 28 Ví dụ 2.2 Giải tốn sau phương pháp đơn hình cải biên:  f = 2x + x2 + x3 + x4 → max  4x1 + x12 + 2x + x4 = 2x1 + x2 + 2x3 − x4 =  2x1 − x2 + 2x3 + x4 = x1 0, x2 0, x3 0, x4 Ta chuyển sang tốn tìm -f, thêm vào ba biến giả x5 , x6 , x7 xét toán (M) với M=10: Áp dụng thuật toán, ta lời giải tối ưu x∗ = (0; 3; 2; 1) với giá trị tối ưu hàm mục tiêu fmax = 18 Chương QUI HOẠCH TUYẾN TÍNH VỚI RÀNG BUỘC SUY RỘNG Chương đề cập tới toán qui hoạch tuyến tính với ràng buộc suy rộng, chứng minh tương đương với tốn qui hoạch tuyến tính trình bày thuật toán giải toán dựa áp dụng phương pháp đơn hình cải biên kĩ thuật sinh cột theo nguyên lý phân rã qui hoạch tuyến tính Cuối chương nêu ví dụ minh họa số cụ thể 3.1 NỘI DUNG BÀI TOÁN Qui hoạch tuyến tính với ràng buộc suy rộng tốn có dạng: n (P ) f (x) = cT x = cj xj → j=1 với điều kiện: n Aj x j = b j=1 Aj ∈ Dj , j = 1, 2, , n xj 0, j = 1, 2, , n 19 x ∈ Rn , b ∈ Rm , c ∈ Rn , Dj (j = 1, , n) tập lồi đa diện cho trước Rm , Aj ∈ Rm vectơ chọn điểm tùy ý Dj Bài toán nêu [4] theo [5, tr.267], Philip Wolfe nghiên cứu Tên gọi toán xuất phát từ nhận xét toán (P) trở thành toán qui hoạch tuyến tính thơng thường A1 , , An vectơ hằng, nghĩa tập Dj gồm phần tử Còn Aj vectơ biến cần xác định, hàm ràng buộc tốn hàm song tuyến tính (P) toán tối ưu phi tuyến với ràng buộc tồn phương khơng lồi (xem [6]) Tuy nhiên, giống toán qui hoạch tuyến tính qui hoạch tuyến tính với ràng buộc suy rộng gợi ý tưởng xây dựng thuật toán hiệu giải (P) Thuật toán ban đầu Wolfe đề xuất (xem [5]) thuật toán tương tự nêu [6] xem mở rộng trực tiếp phương pháp đơn hình Dantzig (xem [1], [3]) 3.2 BÀI TỐN QUI HOẠCH TUYẾN TÍNH TƯƠNG ĐƯƠNG Giả sử Dj tập lồi đa diện bị chặn có nj đỉnh Kí hiệu Akj (k = 1, , nj ) đỉnh Dj , (j = 1, , n) Theo định lý biểu diễn tập lồi đa diện, x ∈ Dj viết dạng: nj nj λk Akj với x= λk = 1, λk k=1 0(k = 1, , nj ) k=1 Định lý sau nêu tốn qui hoạch tuyến tính (theo biến yjk ) tương đương với toán (P): Định lí 3.1 Bài tốn (P) tương đương với qui hoạch tuyến tính sau, kí hiệu (LP): nj n g(y) = cj yjk ) → ( j=1 k=1 với điều kiện: nj n ( j=1 k=1 Akj yjk ) = b 20 yjk 0, k = 1, , nj ; j = 1, , n Akj ∈ Rm (k = 1, , nj ) đỉnh Dj (j=1, , n) 3.3 THUẬT TỐN GIẢI 3.3.1 Mơ tả thuật toán Ta giải (P) cách giải toán (LP) tương đương Bài toán gồm nhiều biến (n1 + + nn biến.) Hơn nữa, cột hệ số Akj = (ak1j , ak2j , , akmj )T (các đỉnh Dj ) không cho dạng tường minh Để khắc phục khó khăn này, ta vận dụng phương pháp đơn hình cải biên, kết hợp với kỹ thuật sinh cột nguyên lý phân rã qui hoạch tuyến tính Khơng giảm tổng quát, ta xem b Cụ thể, để giải (LP) theo phương pháp đơn hình cải biên, bước lặp ta cần biết m vectơ điều kiện (độc lập tuyến tính) tạo nên sở tốn Cách tìm sở ban đầu nói sau Cịn việc kiểm tra sở có tối ưu chưa việc chọn vectơ đưa vào sở (khi chưa đạt tối ưu) tiến hành nhờ giải n tốn tuyến tính phụ n tập Dj Vòng lặp k= 1, 2, gồm bước sau: Bước Giả sử sở Bk gồm m vectơ độc lập tuyến tính, lấy từ tập đỉnh tất đa diện lồi Dj với j Kí hiệu [Bk ]−1 ma trận nghịch đảo Bk (Bk [Bk ]−1 xem biết) Theo thuật tốn đơn hình, giá trị biến sở yB = [Bk ]−1 b (mọi biến phi sở nhận giá trị 0) Giá trị hàm mục tiêu tương ứng g(y) = [cB ]T xB , cB vectơ gồm hệ số mục tiêu biến sở tốn cần giải Bước Tính π = (π1 , , πm ) theo công thức π = (cB )T (Bk )−1 Bước Với j=1, , n, giải tốn tuyến tính phụ (biến Aj ): (LPj ) θj = max{π T Aj − cj : Aj ∈ Dj } (Nếu toán phụ thứ j khơng chấp nhận được, tức Dj = ∅, từ sau ta khơng cần giải tốn phụ thứ j nữa) Xét hai khả năng: a) Nếu θj 0∀j = 1, , n với đỉnh Akj (k = 1, , nj ) Dj ta có: ∆kj ≡ π T Akj − cj θj 0∀k = 1, , nj ; j = 1, , n Chứng tỏ Bk sở tối ưu y = (yB , 0) nghiệm tối ưu (LP) b) Trái lại (có θj > 0), sở Bk chưa tối ưu Đặt θs = max{θj : θj > 0} 21 đưa vào sở Bk vectơ Aks , k ns , đỉnh Ds thỏa mãn θs = π T Aks − cs Vectơ loại khỏi sở Bk xác định theo thủ tục đơn hình Kết nhận sở Bk+1 với [Bk+1 ]−1 tính theo thuật tốn đơn hình cải biên Tăng k thành k+1 thực tiếp vòng lặp k 3.3.2 Xây dựng nghiệm sở ban đầu Để xây dựng nghiệm sở ban đầu cho thuật toán, ta dùng phương pháp pha: thêm vào (LP) biến giả tạo (z1 , z2 , , zm ) xét toán mở rộng: (z) = z1 + z2 + + zm → với điều kiện: nj n ( Akj yjk ) + Im z = b j=1 k=1 yjk 0, k = 1, , nj ; j = 1, , n z = (z1 , z2 , , zm )T Akj ∈ Rm (k = 1, , nj ) đỉnh Dj (j = 1, , n), Im ma trận đơn vị Áp dụng thuật toán nêu giải toán với sở ban đầu B1 = Im (do [B1 ]−1 = Im ) biến sở z1 , z2 , , zm (zi = bi với i theo giả thiết) Giả sử z ∗ nghiệm tối ưu thu Nếu (z ∗ ) > kết luận tốn (LP), tốn (P) khơng có nghiệm chấp nhận dừng trình giải Trái lại ( (z ∗ ) = 0), loại khỏi sở tối ưu (nếu cần) biến zj , ta nhận sở ban đầu cho toán (LP) 3.4 VÍ DỤ MINH HỌA Giải tốn (P) với liệu sau đây: số ràng buộc m = 2, số biến n = 3, vectơ hệ số mục tiêu c = (1, 2, −1)T tập lồi đa diện bị chặn D1 hình chữ nhật có n1 = đỉnh A11 , A21 , A31 , A41 ; D2 tam giác có n2 = đỉnh A12 , A22 , A32 ; D3 gồm n3 = đỉnh A13 với: 22 −2 1 −1 A11 = −2 −1 , A1 = , A1 = , A1 = −1 , A2 = −1 , A2 = −2 , A32 = , A3 = , b = Dữ liệu tốn (P) viết Bảng 3.1: Dịng ghi biến x1 , x2 , x3 ; dòng thứ hai ghi hệ số biến hàm mục tiêu c = (c1 , c2 , c3 ); hai dòng ghi hệ số vectơ biến A1 , A2 , A3 Dòng cuối ghi tên tập lồi đa diện D1 , D2 , D3 (các biến xj 0, aij tùy ý) Cột tận bên phải ghi hệ số vế phải b Tương tự, liệu toán (LP) tương đương ghi Bảng 3.2 (yjk 0) x1 x2 x3 -1 = f (min) a11 a12 a13 =3; a21 a22 a23 =5 D1 D2 D3 Bảng 3.1: Dữ liệu tốn qui hoạch tuyến tính với ràng buộc suy rộng (P) y11 y12 y13 y14 1 1 -2 -2 1 -1 2 -1 y21 y22 y23 2 -1 -1 -2 y31 -1 = g(min) =3, =5 Bảng 3.2: Dữ liệu toán (LP) tương đương Thêm biến giả tạo z1 0, z2 xét toán mở rộng (Pha I) cho Bảng 3.3 Áp dụng phương pháp đơn hình cải biên, ta giải toán sau (các cột hệ số tương ứng với biến yjk (k = 1, , nj ; j = 1, 2, 3) xem chưa biết, tính cần) Vịng lặp Bước Cơ sở ban đầu B1 gồm hai vectơ đơn vị e1 = (1, 0)T , e2 = (0, 1)T 23 y11 y12 y13 y14 0 0 -2 -2 1 -1 2 -1 y21 y22 y23 0 -1 -1 -2 y31 z1 z2 1 0 = (min) =3, =5 Bảng 3.3: Dữ liệu toán mở rộng: Pha I −1 với: B1 = (e1 , e2 ) = 1 ⇒ [B1 ] = Từ đó, giá trị biến sở ban đầu z1 , z2 xác định theo công thức 3 zB = [B1 ]−1 b: zz12 = 1 = với = Bước Tính nhân tử đơn hình theo cơng thức π = (cB )T [B1 ]−1 : π = (π1 , π2 ) = (1, 1) 0 = (1, 1) (tức π = 1, π = 1) Bước Với j = 1, 2, lập giải tốn tuyến tính phụ: (LPj ) θj = max{π T Aj − cj = a1j + a2j : Aj = (a1j , a2j )T ∈ Dj } cách tính so sánh giá trị hàm mục tiêu a1j + a2j đỉnh Dj (j = 1, 2, 3), ta được: Với j = : θ1 = đạt đỉnh A31 = (1, 2)T Với j = : θ2 = đạt đỉnh A32 = (2, 1)T Với j = : θ3 = đạt đỉnh A13 = (1, 3)T Từ θs = max{θ1 , θ2 , θ3 } = max{3, 3, 4} = θ3 = > Vì sở B1 chưa tối ưu, ta chuyển sang vòng lặp Thực tiếp vòng lặp 2, 3, (chi tiết nêu luận văn), ta nhận nghiệm tối ưu toán (P) x∗ = (1, 0, 2)T vectơ cột hệ số tương ứng là: A∗1 = A41 = −1 2 A∗2 = A12 = −1 −1 (A2 = −2 A2 = ) A∗3 = A13 = với giá trị tối ưu fmin = −1 24 KẾT LUẬN Luận văn đề cập tới thuật tốn đơn hình cải biên giải qui hoạch tuyến tính áp dụng thuật tốn đơn hình cải biên, kết hợp với kỹ thuật sinh cột nguyên lý phân rã, vào giải tốn qui hoạch tuyến tính với ràng buộc suy rộng Luận văn trình bày nội dung sau: • Kiến thức sở tập lồi, tập lồi đa diện, toán qui hoạch tuyến tính tắc, tốn đối ngẫu nó, định lý đối ngẫu phương pháp đơn hình gốc giải qui hoạch tuyến tính tắc • Phương pháp đơn hình cải biên giải qui hoạch tuyến tính tắc: ý nghĩa cải biên, cách tính truy hồi ma trận nghịch đảo, thuật tốn đơn hình cải biên ví dụ số minh họa thuật tốn • Áp dụng phương pháp đơn hình cải biên vào giải tốn qui hoạch tuyến tính với ràng buộc suy rộng Cơ sở lý thuyết phương pháp giải, bước thực thuật tốn ví dụ số minh họa thuật toán giải Luận văn đề cập tới phương pháp đơn hình thuật tốn đơn hình cải biên, chủ đề lý thuyết qui hoạch tuyến tính Hy vọng tương lai, tác giả luận văn có dịp tìm hiểu thêm phương pháp thuật toán khác qui hoạch tuyến tính ứng dụng chúng 25 Tài liệu tham khảo [1] Nguyễn Thị Bạch Kim (2014), Giáo trình phương pháp tối ưu: Lý thuyết thuật toán NXB Bách Khoa Hà Nội [2] Trần Vũ Thiệu (2013), "Bài toán qui hoạch tuyến tính với ràng buộc suy rộng" Kỷ yếu cơng trình khoa học, Trường Đại học Thăng Long, Hà Nội, 85-91 [3] Bazara M S., et al (2006), Nonlinear Programming: Theory and Algorithms 3rd Edition A John Willey Sons, Inc., Publication [4] Dantzig G B (1963), Linear Programming and Extensions Princeton University Press, Princeton, New Jersey [5] Dantzig G B and Thapa M N (2003), Linear Programming: Theory and Extensions Springer [6] Tụy H (1998), Convex Analysis and Global Optimization Springer ... tốn đơn hình đơn hình cải biên giải qui hoạch tuyến tính trình bày cách áp dụng thuật tốn đơn hình cải biên, kết hợp với kỹ thuật sinh cột nguyên lý phân rã, vào giải toán qui hoạch tuyến tính với. .. tốn đơn hình cải biên giải qui hoạch tuyến tính áp dụng thuật tốn đơn hình cải biên, kết hợp với kỹ thuật sinh cột nguyên lý phân rã, vào giải tốn qui hoạch tuyến tính với ràng buộc suy rộng Luận... hàm ràng buộc toán hàm song tuyến tính (P) tốn tối ưu phi tuyến với ràng buộc tồn phương khơng lồi (xem [6]) Tuy nhiên, giống toán qui hoạch tuyến tính qui hoạch tuyến tính với ràng buộc suy rộng

Ngày đăng: 26/03/2021, 08:13

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan