Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
196,58 KB
Nội dung
Chương QUY HOẠCH TUYẾN TÍNH Lê Phương Bộ mơn Tốn kinh tế Đại học Ngân hàng TP Hồ Chí Minh Homepage: http://docgate.com/phuongle Lập mơ hình tốn qui hoạch tuyến tính Khái niệm tốn qui hoạch tuyến tính Các bước lập mơ hình tốn Thuật tốn đơn hình Biến đổi tốn dạng chuẩn Dạng tổng qt Dạng tắc Dạng chuẩn Thuật tốn đơn hình Thuật tốn đơn hình mở rộng Bài toán đối ngẫu Xây dựng toán đối ngẫu Mối quan hệ hai toán đối ngẫu Cặp ràng buộc đối ngẫu Tìm tập phương án tối ưu Chứng minh phương án phương án tối ưu Bài tốn vận tải Định nghĩa Tính chất Thuật toán vị Nội dung Khái niệm toán QHTT Ví dụ Tại sân bay X có nhu cầu vận chuyển 2000 khách 220 hàng hoá đến sân bay Y Thời điểm có ba loại máy bay sử dụng với khả vận chuyển chi phí (triệu đồng) sau: Loại máy bay Chi phí A B C 140 200 300 Khả vận chuyển Hành khách Hàng hóa 150 người 18 180 người 16 320 người 25 Có thể sử dụng chiếc Xác định phương án sử dụng máy bay để vận chuyển hết số hàng khách nêu với chi phí thấp Khái niệm toán QHTT Khái niệm Bài tốn quy hoạch tuyến tính tốn tối ưu có điều kiện ràng buộc phát biểu dạng tổng quát sau: Tìm vector x = (x1 , x2 , , xn ) cho f (x) = c1 x1 + c2 x2 + · · · + cn xn → (max) a11 x1 + a12 x2 + · · · + a1n xn [≤, ≥, =] b1 a x + a x + · · · + a x [≤, ≥, =] b2 21 22 2n n ··· am1 x1 + am2 x2 + · · · + amn xn [≤, ≥, =] bm xj ≤ 0, xj ≥ 0, xj tùy ý • aij , bi cj số cho trước • xj biến số (i = 1, m, j = 1, n) Khái niệm tốn QHTT Ví dụ f (x) = x1 − 2x2 + 3x3 → 2x − x2 + x3 =4 3x1 − x2 + x3 ≤ −2 x1 + x2 + 2x3 = −5 x1 ≥ 0, x2 ≤ Ví dụ f (x) = 2x1 − x3 + x4 → max ≥ 14 2x1 − x2 + x3 + x4 x1 + 2x2 − x3 ≤ −7 3x1 + x2 + 2x3 − x4 ≤ xj ≥ 0, xj ∈ N, j = 1, Các bước lập mơ hình toán QHTT Xác định biến cần thiết xj (j = 1, n) để • Xây dựng hàm mục tiêu f (x) = c1 x1 + c2 x2 + · · · + cn xn → (max) • Thiết lập ràng buộc biến a11 x1 + a12 x2 + · · · + a1n xn [≤, ≥, =] b1 a x + a x + · · · + a x [≤, ≥, =] b2 21 22 2n n · · · am1 x1 + am2 x2 + · · · + amn xn [≤, ≥, =] bm • Xác định ràng buộc dấu biến xj ≤ 0, xj ≥ 0, xj tùy ý Hệ ràng buộc ràng buộc dấu gọi chung hệ ràng buộc Các bước lập mơ hình tốn QHTT Khi lập mơ hình tốn qui hoạch tuyến tính cần ý • Để xác định biến dễ dàng hơn, ta thường xác định hàm mục tiêu tốn trước • Thơng thường biến gọi biến đơn giản tốn • Nhiều tốn địi hỏi biến số tự nhiên • Các sai lầm hay gặp phải gọi biến Việc gọi biến lập hàm mục tiêu mà không lập ràng buộc Gọi biến sau xác định giá trị biến Các bước lập mơ hình tốn QHTT Ví dụ (Bài toán vận tải) Cần vận chuyển gạo từ kho A1, A2 với khối lượng 100 150 đến đại lí gạo B1, B2, B3 có nhu cầu 70, 100 80 Hãy lập mơ hình để tổng chi phí vận chuyển nhỏ nhất, biết chi phí vận chuyển gạo từ kho đến đại lí cho bảng sau PP PP Đến B1 B2 B3 PP Từ PP A1 10 A2 Các bước lập mơ hình tốn QHTT Giải: Gọi x1 x2 x3 x4 x5 x6 khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B1 khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B2 khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B3 khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B1 khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B2 khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B3 Hàm mục tiêu hàm tổng chi phí vận chuyển: f (x) = 10x1 + 7x2 + 3x3 + 5x4 + 9x5 + 6x6 → Các ràng buộc chính: Tổng cung kho A1: x1 + x2 + x3 = 100 Tổng cung kho A2: x4 + x5 + x6 = 150 Tổng cầu đại lí B1: x1 + x4 = 70 Tổng cầu đại lí B2: x2 + x5 = 100 Tổng cầu đại lí B3: x3 + x6 = 80 Các ràng buộc dấu: xj ≥ 0, j = 1, Các bước lập mơ hình tốn QHTT Vậy mơ hình tốn là: f (x) = 10x1 + 7x2 + 3x3 + 5x4 + 9x5 + 6x6 → x1 + x2 + x3 = 100 x4 + x5 + x6 = 150 x1 + x4 = 70 x2 + x5 = 100 x + x = 80 xj ≥ 0, j = 1, Định nghĩa Điều kiện tốn: Hàng trạm phát Ai chở đến trạm thu Bj Điều kiện cân thu phát: n m bj = i=1 j=1 Yêu cầu lập kế hoạch vận tải cho trạm phát phải phát hết hàng, trạm thu phải thu đủ hàng tổng chi phí vận tải thấp Định nghĩa Mơ hình tốn m n f (X ) = i=1 j=1 n j=1 m i=1 cij xij → xij = , i = 1, m xij = bj , j = 1, n xij ≥ 0, i = 1, m, j = 1, n Một phương án toán vận tải ma trận X = (xij ) thỏa tất điều kiện ràng buộc Một phương án tối ưu toán vận tải phương án làm tổng chi phí f (X ) đạt cực tiểu Định nghĩa Một số khái niệm Xét toán vận tải cổ điển cho dạng bảng • Ơ (i, j): nằm dịng i cột j • Dây chuyền: dãy liên tiếp (khơng lặp lại) cho số dịng (cột) đứng trước giống số dịng (tương ứng, cột) ô đứng sau giống số xen kẽ • Vịng: dây chuyền khép kín • Ơ chọn: ứng với xij > • Ơ loại: khơng phải chọn • Phương án (PACB): phương án mà ô chọn khơng tạo thành vịng • PACB khơng suy biến: PACB có m + n − chọn • PACB suy biến: PACB có m + n + chọn Nhận xét: Số vịng ln số chẵn Tính chất Các tính chất toán vận tải Bài toán vận tải cân thu phát ln có PATƯ Trong PACB bất kì, số chọn khơng lớn m + n − Xét PACB không suy biến loại Tồn vịng tạo loại số chọn Thuật tốn vị Bài toán vận tải (VT): f (X ) = n m i=1 j=1 n j=1 m i=1 cij xij → g(u, v) = m i=1 xij = , i = 1, m xij = bj , j = 1, n xij ≥ 0, Bài toán đối ngẫu: ui + vj ≤ cij , i = 1, m, j = 1, n Tiêu chuẩn tối ưu Ma trận (xij ) PATƯ (VT) ui + vj ≤ cij ∀i = 1, m, j = 1, n xij ui + vj − cij = ui + n j=1 bj vj → max i = 1, m, j = 1, n Thuật toán vị Bước 1: Tìm PACB xuất phát Phân phối cho lượng hàng lớn theo phương pháp sau: • Phương pháp chi phí nhỏ (cmin ): Ưu tiên phân phối cho có chi phí nhỏ • Phương pháp Fogel: Ưu tiên phân phối cho có chi phí nhỏ nhất, nằm dịng/cột có sai lệch có chi phí tối thiểu lớn (Các ô phân phối ô chọn) Nếu số ô chọn đủ m + n − ô chuyển sang bước Nếu số chọn khơng đủ m + n − phải bổ sung thêm ô loại vào PACB cho ô “chọn mới” không tạo thành vòng với ô chọn nên lấy ô “chọn mới” có chi phí thấp Thuật tốn vị Bước 2: Tìm hệ thống vị (ui , vj ) Tìm vị ui , vj (i = 1, m, j = 1, n) thỏa mãn ui + vj = cij với ô chọn (i, j) Cho vị giá trị tùy ý (Để đơn giản, cho u1 = 0) Trên dịng i (cột j) vị, có chọn (i, j) nằm cột j (tương ứng, dòng i) chưa vị, ta tính vị cho cột j (tương ứng, dòng i) Bước 3: Kiểm tra tiêu chuẩn tối ưu Tính hệ số ước lượng ∆ij = ui + vj − cij cho ô loại Nếu ∆ij ≤ với (i, j) PACB PATƯ Thuật tốn kết thúc Nếu tồn ∆ij > chuyển sang bước Thuật toán vị Bước 4: Cải tiến phương án Giả sử (i0 , j0 ) ô vi phạm tiêu chuẩn tối ưu mà có ∆ij lớn Ơ (i0 , j0 ) chọn bảng Ta xác định vòng tạo (i0 , j0 ) với ô chọn đánh dấu +, − liên tiếp cho ô nằm vòng này, (i0 , j0 ) mang dấu + Lượng điều chỉnh: q = min{xij , với ô (i, j) mang dấu − } Lập PACB X ′ = (xij′ ) xác định sau: • Ơ (i, j) mang dấu +: xij′ = xij + q • Ơ (i, j) mang dấu −: xij′ = xij − q • Ơ (i, j) khơng mang dấu (khơng nằm vịng): xij′ = xij Quay lại bước Chú ý: Khi thuật tốn kết thúc, tồn loại (i0 , j0 ) mà ∆i0 j0 = ta tìm PATƯ khác cách chọn loại (i0 , j0 ) làm ô “chọn mới” Thuật tốn vị Ví dụ Giải tốn vận tải sau (Sử dụng phương pháp Fogel để tìm phương án cực biên ban đầu) PP PP Thu 40 75 60 70 Phát PPP P 45 82 73 74 79 90 80 75 81 79 110 80 77 77 82 Thuật tốn vị Giải Tìm phương án cực biên xuất phát phương pháp Fogel ❅ ❅ ❅ 45 90 110 v 40 82 80 80 77 75 ∆ = −5 ∆ = −3 (40) 73+ 75− 77 75 60 ∆=2 (75) ∆=1 74− 81 77+ 74 70 (45) ∆ = −7 (15) 79 79+ 82− 79 u ∆=0 (15) (55) 0 Ơ (1, 2) chọn Lượng điều chỉnh: 45 Ô (1, 3) ô loại ❅ ❅ ❅ 45 90 110 v 40 82 80 80 75 75 ∆ = −7 ∆ = −3 (40) 73 75− 77+ 73 60 (45) (30) ∆=1 74 81 77 72 70 ∆ = −2 ∆ = −7 (60) 79 79+ 82− 77 Ô (3, 2) ô chọn Lượng điều chỉnh: 10 Ô (3, 4) ô loại u ∆ = −2 (60) (10) Thuật toán vị ❅ ❅ ❅ 45 90 110 v 40 82 80 80 76 75 ∆ = −6 ∆ = −2 (40) 73 75 77 73 Vậy phương án tối ưu fmin = 18905 40 60 (45) (20) (10) 74 81 77 73 45 20 10 60 70 ∆ = −1 ∆ = −6 (60) 70 79 79 82 77 u ∆ = −2 (70) ∆ = −1 Thuật toán vị Ví dụ Giải tốn vận tải sau (dùng phương pháp cmin để tìm phương án cực biên ban đầu): PP PP Thu 22 35 25 41 Phát PPP P 30 23 27 16 18 40 12 17 20 51 53 22 28 12 32 Thuật toán vị Giải Tìm phương án cực biên xuất phát phương pháp cmin : PP PP Thu Phát PPP P 30 40 53 v 22 23 12− 22+ 22 35 −14 (22) 27 17+ 28− 28 25 −13 (18) (17) 16 20 12 12 41 −18 −19 (25) 18 51 32 32 Ơ (3, 1) chọn Lượng điều chỉnh: 17 Ơ (3, 2) loại u (30) −30 (11) -14 -11 Thuật toán vị PP PP Thu Phát PPP P 30 40 53 v 22 23 12 22 22 35 −15 (5) (17) Vậy phương án tối ưu fmin = 2221 17 27 17 28 27 25 −14 (35) −1 0 35 0 25 16 20 12 12 30 11 41 −18 −18 (25) 18 51 32 32 u (30) −29 (11) -14 -10 Bài tập Bài Giải toán vận tải sau (dùng phương pháp cmin để tìm phương án cực biên ban đầu): PP PP Thu 30 60 40 50 Phát PPP P 40 3 110 30 6 Bài Giải tốn vận tải sau tìm phương án tối ưu khác (nếu có): PP PP Thu 20 20 25 30 Phát PPP P 30 20 10 45 5 ... + x2 + 2x3 = 2. 3 /2 + + 2. 3 /2 = (chặt) ⇒ y3 ≥ x1 = 3 /2 > (lỏng) ⇒ 2y1 + y2 + 2y3 = 12 x2 = (chặt) ⇒ y1 + y2 + y3 ≥ x3 = 3 /2 > (lỏng) ⇒ 6y1 + 3y2 + 2y3 = 24 (1) (2) (3) (4) (5) (6) Giải hệ (2) ,... (3 /2, 0, 3 /2) PATƯ (P) Gọi y = (y1 , y2 , y3 ) PATƯ (D) Theo định lí độ lêch bù yếu ta có: 2x1 + x2 + 6x3 = 2. 3 /2 + + 6.3 /2 = 12 (chặt) ⇒ y1 ≥ x1 + x2 + 3x3 = 3 /2 + + 3.3 /2 = < (lỏng) ⇒ y2 = 2x1... ∆ 0 ∆ x1 2 −7 2M −1 −4 x2 ? ?2 M 5 /2 1 /2 −1 /2 x3 (2) −3 2M 0 x4 0 0 0 x5 0 0 0 0 x6 0 −1 −M 1 /2 −1 /2 −3 /2 λ x3 vào x7 − − − Do ∆j ≤ 0, ∀j = 1, nên phương án tối ưu toán (Q) x = (0, 0, 2, 4, 4,