Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
635,66 KB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC Nguyễn Quốc Khánh NGHỊCH LÝ “ TĂNG KHỐI LƯỢNG ĐỂ GIẢM CHI PHÍ” TRONG BÀI TỐN VẬN TẢI LUẬN VĂN THẠC SĨ TOÁN HỌC Thái Nguyên – 2013 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC Nguyễn Quốc Khánh NGHỊCH LÝ “ TĂNG KHỐI LƯỢNG ĐỂ GIẢM CHI PHÍ” TRONG BÀI TOÁN VẬN TẢI Chuyên ngành: TOÁN ỨNG DỤNG Mã số: 60.16.01.12 LUẬN VĂN THẠC SĨ TOÁN HỌC Người hướng dẫn khoa học: GS-TS Trần Vũ Thiệu Thái Nguyên - 2013 LỜI NĨI ĐẦU Bài tốn vận tải qui hoạch tuyến tính có nhiều ứng dụng thực tiễn Trong tốn có tồn nghịch lý "Tăng khối lượng hàng vận chuyển để giảm chi phí vận chuyển", gọi tắt ngịch lý "Tăng để giảm", nghĩa tăng lượng cung trạm phát thêm lượng hàng > đồng thới tăng lượng cầu trạm thu thêm lượng hàng chi phí vận chuyển tổng cộng lại giảm so với chi phí vận chuyển lúc trước tăng Cần tìm hiểu lý xảy giải thích mặt lý thuyết có nghịch lý Mục tíêu luận văn tìm hiểu tăng lượng hàng vận chuyển lại giảm chi phí vận chuyển tốn vận tải Tìm điều kiện để nghịch lý "tăng để giảm" xảy điều kiện đảm bảo nghịch lý xảy Luận văn gồm lời nói đầu, ba chương, kết luận danh mục tài liệu tham khảo Chương BÀI TOÁN QUI HOẠCH THAM SỐ Chương nhắc lại số kết toán qui hoạch tuyến tính tốn vận tải phụ thuộc tham số vế phải ràng buộc Nêu tính chất hàm giá trị tối ưu tốn có vế phải phụ thuộc tuyến tính vào tham số nêu ví dụ tốn vận tải với lượng cung cầu phụ thuộc tham số 1.1 BÀI TOÁN QUI HOẠCH TUYẾN TÍNH THAM SƠ Bài tốn qui hoạch tuyến tính với vế phải ràng buộc phụ thuộc tham số có dạng: n (Q(t)) z(t) = c jx j → min, (1.1) j 1 n a ijx j j 1 = bi + tdi, i = 1, 2, , m, x1 ≥ 0, x2 ≥ 0, , xn ≥ 0, (1.2) (1.3) aij, cj, bi, di hệ số cho trước t tham số z(t) xác định theo (1.1) gọi hàm mục tiêu, đẳng thức (1.2) gọi ràng buộc tốn Giả thiêt tmin ≤ t ≤ tmax với tmin, tmax hai số thực cho trước (có thể tmin = - ∞, tmax = + ∞) Đặt A ma trận hệ số aij (i = 1, , m, j = 1, , n), x = (x1, x2, , xn)T véctơ cột biến; c = (c1, c2, , cn)T, b = (b1, , bm)T d = (d1, , dm)T Bài toán qui hoạch tham số Q(t) viết gọn lại sau: {cTx : Ax = b + t.d, x ≥ 0} (1.4) Với t cố định, véctơ x(t) thỏa mãn ràng buộc (1.2) - (1.3) gọi phương án toán Q(t) Phương án đạt giá trị nhỏ hàm mục tiêu (1.1), gọi phương án tối ưu hay lời giải toán Tập phương án Q(t) gọi tập ràng buộc hay miền chấp nhận ký hiệu D(t) Ta giả thiêt D(tmin) ≠ ∅ Phương án Q(t) mà đồng thời đỉnh D(t) gọi phương án cực biên Một sở phương án cực biên tối ưu Q(t) ứng với giá trị t cho trước gọi sở tối ưu Tập hợp tất giá trị t cho sở cho tối ưu gọi khoảng tối ưu sở Theo lý thuyết qui hoạch tuyến tính tham số, giá trị tối ưu z*(t) hàm lồi, tuyến tính khúc theo t tồn số hữu hạn giá trị - ∞ = t- p < < t- < ≤ t1 < < tq < tq+1 = + ∞ cho z*(t) tuyến tính t ∈ [tk, tk+1] (- p ≤ k ≤ q) Đồng thời, với k ∈ {- p, q} tồn sở Bk sở tối ưu toán Q(t) với t ∈ [tk, tk+1] Ví dụ 1.1 Giải qui hoạch tuyến tính với vế phải phụ thuộc tham số t ≥ 2x1 + 3x2 + 9x3 → min, x1 + 3x3 - x4 = + 2t, x2 + 2x3 - x5 = - t, x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0, x5 ≥ Dùng qui hoạch tham số giải toán ta nhận kết sau: Tham số t Phương án tối ưu Giá trị tối ưu z(t) ≤ t ≤ 9/7 (0 937 t 332 t 0) 18 - t 9/7 ≤ t ≤ ( 92 t 52 t 0) (27 + 5t)/2 5≤t (3 + 2t 0 - + t) + 4t 1.2 BÀI TỐN VẬN TẢI THAM SƠ Bài tốn vận tải phụ thuộc tham số có dạng: m n V(t) f(t) = cijx ij → min, i 1 j 1 (1.6) n x ij = + t a i , i = 1, , m, (1.7) j 1 m x ij = bj + t bj , j = 1, ,n, (1.8) xij ≥ 0, với i = 1, , m, j = 1, , n, (1.9) i 1 cij ≥ 0; > 0, a i > 0, bj > 0, bj > số thỏa mãn điều kiện: m n i 1 j 1 a i = b j m a i = i 1 n bj (1.10) j 1 Bài toán V(t) với điều kiện (1.10) toán vận tải cân thu phát với vế phải ràng buộc phụ thuộc tham số, gọi tắt toán vận tải tham số Tham số t vế phải ràng buộc biến thiên đoạn [tmin, tmax], tmin, tmax hai số thực cho trước với ≤ tmin ≤ tmax Ta đưa vào ký hiệu: A = (aij)(m + n)×(m.n) - ma trận hệ số biến vế trái ràng buộc (1.7) - (1.8) d = (a1, , am, b1, , bn)T - véctơ vế phải ràng buộc (độc lập với tham số t) d' = ( a 1 , , a m , b1 , , bn )T - véctơ vế phải ràng buộc (hệ số tham số t) c = (c11, c12, , c1n, c21, c22, , c2n, , cm1, cm2, , cmn)T - véctơ hệ số mục tiêu x = (x11, x12, , x1n, x21, x22, , x2n, , xm1, xm2, , xmn)T - véctơ biến cần tìm Khi đó, tốn V(t) trở thành qui hoạch tuyến tính tham số (xem (1.4)): {cTx : Ax = d + td', x ≥ 0} Theo lý thuyết qui hoạch tuyến tính tham số, giá trị tối ưu f(t) toán V(t) hàm lồi, tuyến tính khúc theo t tồn số hữu hạn giá trị tham số t = t0 ≤ t1 < < tq < tq+1 = + ∞ cho f(t) tuyến tính t ∈ [tk, tk+1] (0 ≤ k ≤ q) Đồng thời, với k ∈ {0, q} tồn tập ô Gk sở tối ưu toán V(t) với t ∈ [tk, tk+1] Thuật toán giải V(t) dựa phương pháp vị quen thuộc toán vận tải dạng bảng Cụ thể sau Bước (Khởi sự) Xuất phát từ giá trị tham số t0 = tmin Do có điều kiện (1.10) nên Q(t0) có phương án cực biên tối ưu Chẳng hạn, x0 = ( x11 , 12 , , x 0mn )T, tương ứng với tập ô chọn G0 = {(i, j) : x ij0 biến sở} Giả sử x0 không suy biến, nghĩa G0 gồm (m + n - 1) G0 khơng chứa chu trình Bước (Tìm khoảng tham số tối ưu G0) Với lượng cung trạm phát + t0 a i lượng cầu trạm thu bj + t0 bj , áp dụng qui tắc tam giác vào tập ô chọn G0, ta nhận giá trị biến sở xij hàm tuyến tính t0 (các biến phi sở x ij0 = ∀(i, j) ∉ G0) x ij0 = pij + t0qij ≥ với i, j (pij = qij = ∀(i, j) ∉ G0) Do x ij0 ≥ (với i, j) nên hệ bất đẳng thức tuyến tính (phụ thuộc tham số t) xij (t) = pij + tqij = x ij0 + (t - t0)qij ≥ (1.11) tương thích (có nghiệm t = t0) Nếu qij ≥ x(t) = (x11(t), x12(t), , xmn(t))T phương án tối ưu Q(t) với tham số t ≥ t0 Nếu trái lại, (có qij < 0) x(t) phương án tối ưu với tham số t thỏa mãn t0 ≤ t ≤ t1 Tìm t1 theo công thức t1 - t0 = q ij x ij0 q ij Rõ ràng phương án (1.11) tối ưu với t thuộc khoảng t0 ≤ t ≤ t1 Giả sử t1 ≠ + ∞ Khi tăng t (t ≥ t1) véctơ x(t) với thành phần pij + tqij thỏa mãn điều kiện tối ưu, nghĩa ước lượng ij ≤ Song véctơ khơng cịn phương án tốn xét, tăng t tới giá trị đó, thành phần xij (t) = pij + t.qij trở thành âm Nếu xrs thành phần bị đổi dấu (từ dương sang âm) t1 = - prs/qrs = x ij0 + (t - t0)qij qrs < Biến xrs bị loại khỏi sở cũ Để tìm biến đưa vào sở ta cần thực số thao tác phụ sau: a) Với (i, j) ∉ G0, xác định hệ số ij theo qui tắc: lập chu trình C tạo nên ô (i, j) với ô thuộc G0 (chẳng hạn cách loại dần ô treo hàng cột) Lần lượt phân ô thuộc C thành ô lẻ C1 ô chẵn C2 với qui ước (i, j) ∈ C1 Đặt ij = (r, s) ∉ C, ij = - (r, s) ∈ C1 ij = (r, s) ∈ C2 (ij hệ số khai triển véctơ điều kiện Aij theo véctơ sở Aij với (i, j) ∈ G0) b) Tìm biến đưa vào sở theo qui tắc: pq = {- ij : (i, j) ∉ G0, ij = - 1} Làm ta nhận phương án tối ưu toán Q(t1) Bước Lặp lại Bước với t1 thay cho t0 1.3 VÍ DỤ MINH HỌA Ví dụ 1.2 Xét tốn vận tải V(t) với lượng cung cầu phụ thuộc tham số t ≥ Dữ liệu toán cho bảng sau b 40 75 90 125 ui a 30 0 b' a' 15 18 17 100 u1 x11 x12 x13 x14 10 13 12 110 30 u2 x21 x22 x23 x24 14 16 10 120 u3 x31 x32 x33 x34 vj v1 v2 v3 v4 f= Bảng 1.2 Dữ liệu toán vận tải tham số Dùng qui hoạch tham số giải toán vận tải trên, ta nhận kết sau: b 40 30 75 90 125 a 0 b' a' 4• 15 • 18 17 100 40 + 30t 60 - 30t 10 • 13 • 12 • 110 30 15 + 30t 90 14 16 10 • 120 120 vj 15 18 17 ui -5 -7 f = 3640 - 30t Bảng 1.3 Cơ sở tối ưu với ≤ t ≤ b a a' 100 110 30 120 vj 40 30 b' 4• 75 90 15 18 10 • 13 • 125 17 100 12 • 75 90 -55+30t 2• 14 16 10 • -60+30t -30t 10 13 12 Bảng 1.4 Cơ sở tối ưu với ≤ t ≤ ui 0 -2 f = 3340 + 120t b a a' 40 30 b' 75 4• 100 110 30 120 15 90 18 125 17 100 vj 5• 10 • 13 • 12 • -180+30t 75 90 125 2• 14 16 10 120 12 11 ui -2 f = 3160 + 150t Bảng 1.5 Cơ sở tối ưu với ≤ t < + ∞ Tham số t 0≤t≤2 2≤t≤6 ≤ t < +∞ Phương án tối ưu xem Bảng 1.3 xem Bảng 1.4 xem Bảng 1.5 Giá trị tối ưu f(t) 3640 - 30.t 3340 + 120.t 3160 + 150.t Dáng điệu hàm giá trị tối ưu f(t) vẽ Hình 1.2 f(t) 466 f(0) = 3640, f(2) = 3580, f(6) = 4060, f(10) = 4660 436 406 364 358 10 t Hình 1.2 Hàm giá trị tối ưu f(t) lồi, tuyến tính khúc, t ≥ Chương BÀI TỐN VẬN TẢI TUYẾN TÍNH Chương đề cập tới toán vận tải tuyến tính Phần đầu chương trình bày nội dung tính chất tốn vận tải Tiếp đó, đề cập tới phương pháp tìm phương án cực biên ban đầu tốn Sau đó, trình bày sở lý luận nội dung thuật toán vị giải tốn vận tải Cuối chương, nêu ví dụ minh hoạ cho thuật toán vị 2.1 NỘI DUNG BÀI TỐN VÀ TÍNH CHẤT Giả sử cần vận chuyển loại hàng từ m điểm cung cấp (gọi trạm phát), ký hiệu i = 1, , m, đến n điểm tiêu thụ (gọi trạm thu), ky hiệu j = 1, , n Cho biết khả cung cấp hàng trạm phát i > (gọi lượng phát), nhu cầu tiêu thụ hàng trạm thu j bj > (gọi lượng thu) chi phí vận chuyển đơn vị hàng từ trạm phát i tới trạm thu j cij ≥ Hãy xác định biến xij ≥ (i = 1, , m; j = 1, , n), biểu thị lượng hàng cần vận chuyển từ trạm phát i tới trạm thu j cho trạm thu nhận đủ hàng tổng chi phí vận chuyển nhỏ nhất? Mơ hình tốn học tốn vận tải sau m n (P) f(x) = cijx ij (cực tiểu tổng chi phí vận chuyển) (2.1) i 1 j1 n x j1 ij = ai, ∀i = 1, ,m (trạm phát i giao hết hàng) (2.2) ij = bj, ∀j = 1, ,n (trạm thu j nhận đủ hàng) (2.3) m x i 1 xij ≥ 0, ∀i = 1, 2, , m; j =1, 2, , n (2.4) Điều kiện cần đủ để toán (2.1) - (2.4) giải ta phải có điều kiện cân thu phát hay điều kiện cân cung cầu, nghĩa tổng cung tổng cầu: a1 + a2 + + am = b1 + b2 + + bn (2.5) Ký hiệu Aij véctơ hệ số biến xij (2.2) - (2.3) Véctơ có hai thành phần +1 hàng thứ i hàng thứ m + j, thành phần khác Véctơ x thỏa mãn (2.2) - (2.4) gọi phương án toán vận tải Một phương án đạt cực tiểu (2.1) gọi phương án tối ưu hay lời giải Phương án x phương án cực biên tập véctơ cột Aij ma trận A ứng với xij > độc lập tuyến tính hay tương đương, tập ô (i, j) với xij > khơng chứa chu trình Bổ đề 2.1 Hạng hệ ràng buộc (2.2) - (2.3) m + n - Hơn nữa, ràng buộc tổ hợp tuyến tính m + n - ràng buộc cịn lại, ràng buộc xem thừa loại bỏ cần Mỗi phương án cực biên toán vận tải có vừa (m + n - 1) biến sở Tập hợp véctơ hệ số Aij biến sở xij gọi sở toán Một phương án cực biên x = {xij}m×n gọi khơng suy biến số phần tử tập hợp G = {(i, j) : xij > 0} m + n - gọi suy biến |G| < m + n - Định nghĩa 2.1 Một ma trận vuông gọi ma trận tam giác có hai tính chất sau: a) ma trận chứa hàng có phần tử khác 0; b) Nếu hàng chứa phần tử khác cột bị xóa ma trận nhận có tính chất Ta định nghĩa ma trận vng ma trận tam giác hốn vị hàng cột để ma trận tam giác ma trận tam giác Sau định lý toán vận tải dạng bảng (xem [5], tr 211) Định lý 2.1 Mọi sở toán vận tải ma trận tam giác Định lý 2.2 Mọi biến sở có giá trị nguyên bj số nguyên Định lý 2.3 Nếu cước phí vận chuyển cij nguyên cho nhân tử (ui vj) giá trị nguyên tùy ý nhân tử đơn hình ui vj nguyên 2.2 PHƯƠNG ÁN CỰC BIÊN BAN ĐẦU Cách đơn giản để xây dựng phương án cực biên ban đầu cho toán vận tải (dạng bảng) áp dụng qui tắc (hay thuật toán) tam giác sau Qui tắc tam giác (Triangularity Rule) Chọn tuỳ ý biến xpq làm ứng viên cho biến sở Gán cho xpq giá trị lớn có thể, miễn khơng vi phạm ràng buộc lượng cung trạm phát p (hàng p) lượng cầu trạm thu q (cột q), tức phân vào ô (p, q) lượng hàng xpq = {ap, bq} Cước phí nhỏ bảng 15, đạt hai ô (3.2) (3.3) Ta chọn ô thứ phân vào ô lượng hàng x32 = {200, 130} = 130 Cột nhận đủ hàng nên bị loại (không phân hàng vào nữa) Hàng cịn lại lượng phát a 3 = 200 - 130 = 70 Trong bảng thu hẹp (không kể cột 2), ta chọn (3.3) có cước phí nhỏ (bằng 15) phân vào ô lượng hàng x33 = {70, 140} = 70 Lúc hàng phát hết hàng nên bị loại Cột thiếu lượng hàng b3 = 140 - 70 = 70 Trong bảng lại (trừ cột hàng 3), ta chọn (1.4) có cước phí nhỏ (bằng 18) phân vào ô lượng hàng x14 = {170, 160} = 160 Cột nhận đủ hàng nên bị loại Hàng lại lượng phát a 1 = 170 - 160 = 10 Tiếp đó, ta phân vào ô (1.1) lượng hàng x11 = {10, 120} = 10 Đến hàng hết hàng, có hàng cịn hàng Cuối cùng, ta phân vào hai cịn lại bảng lượng hàng x21 = 120 - 10 = 110 x23 = 180 - 110 = 140 - 70 = 70 Lúc hàng (cột) phát hết (nhận đủ) hàng, ta đặt xij = cho ô (i, j) lại Kết ta nhận phương án cực biên ghi Bảng 2.2: Ơ có phân phối hàng (ơ chọn) đánh dấu "•" với số lượng in đậm (góc dươi bên phải) Giá trị hàm mục tiêu tương ứng 12.950 Trong mục sau ta thấy giá trị cực tiểu fmin = 12.140 Ví dụ 2.2 Tìm phương án cực biên toán vận tải cho Bảng 2.2 theo qui tắc góc tây bắc Bảng 2.3 Phương án cực biên ban đầu (Ví dụ 2.2) Thu b1 = 120 b2 = 130 b3 = 140 Phát 22 • 20 • 25 a1 = 170 120 50 40 45 • 35 • a2 = 180 80 100 30 15 15 • a3 = 200 40 b4 = 160 18 30 25 • 160 Theo phương pháp ta chọn nằm góc tây bắc để phân phối trước Trong ví dụ này, thứ tự ô chọn sau: (1 1), (1 2), (2 2), (2 3) (3 3) (3 4) Kết ta nhận phương án cực biên ghi Bảng 2.3 Giá trị hàm mục tiêu tương ứng 15.340 (> 12950) Qui tắc thường cho phương án cực biên có giá trị hàm 10 mục tiêu cao so với qui tắc cước phí cịn lại nhỏ Tuy nhiên qui tắc lại tiện dùng để lập trình máy tính 2.3 TIÊU CHUẨN TỐI ƯU Cho phương án cực biên không suy biến x0 = { x ij0 }m×n Ký hiệu tập chọn tương ứng với x0 G(x0) = {(i, j) : x ij0 > 0} Tính số ui (i = 1, 2, , m), gọi vị hàng vj (j = 1, 2, , n), gọi vị cột, thỏa mãn: ui + vj = cij với (i, j) ∈ G(x0) Các vị hàng cột xác định sai khác hàng số khác số nguyên cij nguyên (Định lý 2.3) Do sở toán vận tải ma trận tam giác (Định lý 2.1) nên vị ui vj tính theo qui tắc đơn giản sau: a) Đầu tiên đặt u1 = 0; b) Khi có ui, (i, j) ∈ G(x0) cột j chưa vị đặt vj = cij - ui; c) Khi cõ vj, (i, j) ∈ G(x0) hàng i chưa vị đặt ui = cij - vj; d) Lặp lại thao tác b) c) hàng cột vị Định lý sau nêu điều kiện cần đủ để x0 phương án tối ưu Định lý 2.5 ([3], tr 147) Phương án x0 = { x ij0 } toán vận tải (2.1) - (2.4) tối ưu tìm số ui (i = 1, , m) vj (j = 1, , n) thỏa mãn: ui + vj ≤ cij ∀i = 1, , m, j = 1, , n, (2.7) ui + vj = cij ∀(i, j) ∈ G(x0) (2.8) Như phương án cực biên không suy biến x0 tương ứng với số ui, i = 1, , m vj, j = 1, , n (sai khác hàng số khác 0) thỏa mãn (2.7) - (2.8) Số ij = (ui + vj) - cij gọi ước lượng biến xij Định lý 2.5 cho thấy phương án x0 tối ưu ij ≤ Nếu ij > với i, j phương án x0 chưa tối ưu ta co thể tìm phương án cực biên khác tốt nhờ định lý sau Định lý 2.6 ([3], tr 149) Giả sử x0 phương án cực biên không suy biến toán vận tải ui, vj vị tương ứng với x0 Nếu tồn ô (r, s) cho rs = ur + vs - crs > x0 khơng phải phương án tối ưu ta xây dựng phương án cực biên x1 tốt x0, theo nghĩa f(x1) < f(x0) 11 2.4 THUẬT TOÁN THẾ VỊ Bước (Khởi tạo) Áp dụng qui tắc tam giác (hoặc biến thể nó) tìm phương án cực biên khơng suy biến x0 = { x ij0 } Tập ô chọn tương ứng với x0 G(x0) = {(i, j) : x ij0 > 0} gồm (m + n - 1) phần tử khơng chứa chu trình Bước Theo qui tắc nêu, tính vị ui (i = 1, , m) vj (j = 1, , n) tương ứng với x0 thỏa mãn hệ phương trình ui + vj = cij, với (i, j) ∈ G(x0) Bước Tính ước lượng ij = ui + vj - cij với (i, j) ∉ G(x0) Ta ln có ij = ui + vj - cij = với (i, j) ∈ G(x0) Bước (Kiểm tra điều kiện tối ưu) Nếu ij ≤ với i, j dừng thuật tốn Theo Định lý 2.5, x0 phương án tối ưu Nếu trái lại, chuyển sang Bước Bước (Điều chỉnh phương án) Gồm thao tác: a) Xác định ô điều chỉnh (r, s) với rs = max {ij : (i, j) ∉ G(x0)} Nếu có nhiều đạt max ưu tiên chọn ô hàng nhỏ cột nhỏ b) Tìm chu trình C tập ô G(x0) ∪ {(r, s)} c) Lần lượt chia ô thuộc C thành ô chẵn C1 ô lẻ C2 với (r, s) ∈ C1 d) Xây dựng phương án x1 = { x 1ij } với x ij0 h neu (i, j) C1 , x 1ij = x ij0 h neu (i, j) C , x neu (i, j) C ij h = { x ij0 : (i, j) ∈ C2} = x 0pq Nếu có nhiều (i, j) ∈ C2 với x ij0 = h ta chọn ngẫu nhiên biến xpq số dể loại khỏi sở Ta có G(x1) = (G(x0) \ (p, q)) ∪ (r, s) G(x1) không chứa chu trình, tức x1 phương án cực biên Bước Đặt x0 ← x1 G(x0) ← G(x1) Quay lại Bước Nếu phương án cực biên tốn vận tải khơng suy biến sau số hữu hạn bước lặp thuật toán vị dừng cho ta phương án cực biên tối ưu (lời giải) tốn 12 2.5 VÍ DỤ MINH HỌA Ví dụ 2.3 Dùng thuật tốn vị giải toán vận tải với m = trạm phát, n = trạm thu Véctơ cung a = (170 180 200), véctơ cầu b = (120 130 140 160) Ma trận cước phí phương án cực biên ban đầu cho Bảng 2.2 (xem Ví dụ 2.1) Giải Ví dụ thỏa mãn điều kiện cân cung cầu (2.5) Phương án x0 có tập chọn G(x0) = {(1, 1), (1, 4), (2, 1), (2, 3), (3, 2), (3, 3)}, gồm m + n - = khơng chứa chu trình giá trị hàm mục tiêu f(x0) = 12950 Vòng lặp Bước Các vị tương ứng với x0: u0 = (0 18 - 2), v0 = (22 17 17 18) Bước Các số ij = ui + vj - cij ghi ma trận 0 đây: 3 8 10 0 = 10 0 Bước Phương án x0 (ghi Bảng 2.2) chưa tối ưu cịn 24 = > Bước a) 24 = max {ij > : (i, j) ∉ G(x0)} = Ô điều chỉnh (r, s) = (2, 4) b) Chu trình điều chỉnh gồm ơ: C = {(2, 4), (1, 4), (1, 1), (2, 1)} c) Các ô lẻ C1 = {(2, 4), (1, 1) } Các ô chẵn C2 = {(1, 4), (2, 1)} d) Lượng h = { x14 = 160, x 021 = 110} = x 021 = 110 Ô loại (p, q) = (2, 1) e) Phương án cực biên 50 120 70 110 x1 = 130 70 G(x1) = {(1, 1), (1, 4), (2, 3), (2, 4), (3, 2), (3, 3)} f(x1) = 12290 < f(x0) = 12950 Áp dụng thuật toán vị, sau vòng lặp ta nhận phương án tối ưu 120 50 20 160 x2 = 80 120 với chi phí nhỏ fmin = f(x2) = 12140 13 Chương BÀI TOÁN TĂNG LƯỢNG HÀNG ĐỂ GIẢM CHI PHÍ Chương trình bày nội dung nghịch lý "tăng lượng hàng vận chuyển để giảm chi phí vận chuyển", gọi tắt nghịch lý "tăng để giảm" nêu ví dụ xảy nghịch lý tốn cụ thể Tiếp đó, nêu điều kiện cần điều kiện đủ để có nghịch lý "tăng để giảm" giải thích nghịch lý theo lý thuyết qui hoạch tham số Cuối chương xét nghịch lý "tăng để giảm" toán qui hoạch tuyến tính dạng tắc 3.1 NỘI DUNG NGHỊCH LÝ "TĂNG ĐỂ GIẢM" Trong toán vận tải qui hoạch tuyến tính có tồn nghịch lý "tăng khối lượng hàng vận chuyển để giảm chi phí vận chuyển", gọi tắt ngịch lý "tăng để giảm" (the more-for-less paradox) Có thể hiểu nghịch lý sau: tăng lượng cung số trạm phát thêm lượng tổng cộng T > 0, đồng thới tăng lượng cầu số trạm thu thêm lượng tổng cộng T chi phí vận chuyển tổng cộng lại giảm so với chi phí vận chuyển lúc trước tăng lượng hàng vận chuyển Chính xác hơn, mơ tả nghịch lý dựa mơ hình tốn vận tải Xét toán vận tải cân thu phát: Tìm ma trận x = {xij}m×n cho m n (Pa,b) fa,b(x) = cijx ij min, i 1 j1 n x j1 ij = ai, ∀i = 1, ,m, ij = bj, ∀j = 1, ,n, m x i 1 xij ≥ 0, ∀i = 1, 2, , m; j =1, 2, , n, > ∀i, bj > ∀j, cij ≥ ∀i, j a1 + a2 + + am = b1 + b2 + + bn Giả sử x* = ( x ij )m×n phương án tối ưu toán (Pa,b) với f* = fa,b(x*) Khi tăng lượng cung thành a i = + i tăng lượng cầu bj thành bj = bj + j, i ≥ ∀i, j ≥ ∀j T = 1 + 2 + + m = 1 + 2 + + n > 0, ta nhận toán vận tải với tổng lượng hàng vận chuyển nhiều trước Giả sử x = ( x ij )m×n phương án tối ưu tốn (Pa',b') với f = fa',b'( x ) 14 Nếu có f < f*, nghĩa vận chuyển hàng nhiều mà chi phí vận chuyển lại nhỏ hơn, ta nói xảy nghịch lý "tăng để giảm" toán vận tải (Pa,b) Trường hợp riêng tăng lượng cung trạm phát k từ ak thành a k = ak + , đồng thời tăng lượng cầu trạm thu ℓ từ b thành b = b + với > xảy nghịch lý "tăng để giảm", nghĩa chi phí vận chuyển sau thấp trước Trong trường hợp ta nói cặp phát - thu (k, ℓ) cặp nghịch lý 3.2 VÍ DỤ XẢY RA NGHỊCH LÝ Trong mục ta mô tả nghịch lý "tăng để giảm" qua việc xét ví dụ đơn giản tốn vận tải có cặp nghịch lý Ví dụ 3.1 Từ toán vận tải cho, ta xây dựng tốn vận tải kích thước ma trận cước phí cho tổng lượng hàng vận chuyển từ trạm phát tới trạm thu tăng lên, tổng chi phí vận chuyển lại giảm đi, tức xảy nghịch lý "tăng để giảm" tốn ban đầu Bảng 3.1 Ví dụ nghịch lý "tăng để giảm" Thu Phát a1 = 100 a2 = 135 a3 = 95 vj b1 = 40 b2 = 75 b3 = 90 b4 = 125 4• 15 • 40 17 13 • 12 • 15 60 10 • 18 14 90 30 10 • 16 95 15 18 ui 17 -5 -7 fmin = 3690 Bài toán vận tải ban đầu với liệu ghi Bảng 3.1: số trạm phát m = 3, số trạm thu n = 4, véctơ cung a = (100 135 95), véctơ cầu b = (40 75 90 125) với tổng lượng hàng vận chuyển từ trạm phát tới trạm thu 100 + 135 + 95 = 40 + 75 + 90 + 125 = 330 Cước phí cij ghi góc bên trái Phương án tối ưu x0 tốn ma trận 40 60 0 x0 = 15 90 30 0 95 ghi Bảng 3.1 Ơ có chuyển hàng (ơ chọn) đánh dấu " •" Các vị tương 15 ứng u0 = (0 - - 7) v0 = (4 15 18 17) Giá trị hàm mục tiêu fmin = f(x0) = 3690 Nếu tăng lượng cung trạm phát từ a3 = 95 lên thành a 3 = a3 + = 95 + 30 = 125 tăng lượng cầu tram thu từ b1 = 40 lên thành b1 = b1 + = 40 + 30 = 70 ( = 30), ta nhận toán vận tải với liệu ghi Bảng 3.2 Bảng 3.2 Bài toán điều chỉnh Thu Phát a1 = 100 a2 = 135 a3 = 125 vj b1 = 70 b2 = 75 b3 = 90 b4 = 125 4• 15 • 70 17 13 • 12 45 -5 90 16 • 14 10 • 30 10 • 18 15 18 ui 125 12 -2 fmin = 3600 Phương án tối ưu x1 toán ma trận 70 30 x = 45 90 0 125 ghi Bảng 3.2 Ơ có chuyển hàng (ơ chọn) đánh dấu "•" Các vị tương ứng u1 = (0 - - 2) v1 = (4 15 18 12) Giá trị hàm mục tiêu nhỏ fmin = f(x1) = 3600 < f(x0) = 3690, giảm so với trước tăng lượng hàng vận chuyển Như ô (3 1) "ô nghịch lý" với = 30 toán Bảng 3.1 cải tiến thành tốn Bảng 3.2 có hiệu qủa kinh tế (tổng chi phí vận chuyển nhỏ hơn) 3.3 ĐIỀU KIỆN TỒN TẠI NGHỊCH LÝ Định lý sau nêu điều kiện đủ để từ toán vận tải cho xây dựng tốn vận tải mới, vận chuyển nhiều hàng tốn chi phí Định lý 3.1 Giả sử tốn vận tải cho có phương án cực biên tối ưu khơng suy biến x* = ( x ij )m×n với tập ô chọn G(x*) = {(i, j) : x ij > 0} Giả sử vị tương ứng với G(x*) u i (i = 1, , m) v j (j = 1, , n) Nếu có u k + v < với (k, ) ∉ G(x*) xây dựng toán vận tải cách tăng ak thành a k = ak + , tăng b thành b = b + , với > cho tốn có phương án tối ưu x' với tổng chi phí vận chuyển nhỏ trước, tức f(x') < f(x*) 16 Nhận xét 3.1 Giả thiết không suy biến (đảm bảo cho xác định theo (3.1) số dương) giảm nhẹ thành giả thiêt { x ij : (i, j) ∈ C1 \ (k, )} > (3.2) Định lý sau nêu dấu hiệu cho biết tốn khơng xảy nghịch lý "tăng để giảm" Định lý 3.2 Giả sử toán vận tải cân thu phát (Pa,b) có phương án cực biên tối ưu x* = { x ij }m×n với tập chọn tối ưu G(x*) Giả sử u i (i = 1, , m) v j (j = 1, , n) vi tương ứng với G(x*) Nếu u i + v j ≥ với (i, j) ∉ G(x*) từ (Pa,b) khơng thể xây dựng toán vận tải khác cách tăng lượng cung ui, lượng cầu bj thêm lượng > để cho tốn có phương án tối ưu với tổng chi phí vận chuyển nhỏ Từ Định lý 3.2 trực tiếp suy hệ qủa sau điều kiện cần để tồn nghịch lý "tăng để giảm" toán vận tải Hệ 3.1 Muốn cho từ toán vận tải cho xây dựng tốn cho vận chuyển nhiều hàng lại tốn chi phí điều kiện cần tồn tập ô chọn tối ưu toán vị tương ứng thỏa mãn ui + vj < với ô (i, j) khơng thuộc tập chọn tối ưu Xét lại Ví dụ 3.1 ta thấy tốn vận tải Bảng 3.1 có phương án cực biên tối ưu không suy biến x0 với tập ô chọn G(x0) = {(1, 1), (1, 2), (2, 2), (2, 3), (2, 4), (3,4)} vị tương ứng u0 = (0 - - 7), v0 = (4 15 18 17) Bài tốn có (k, ) = (3, 1) với u 30 + v10 = - + = - < Chu trình tạo nên ô (k, ) = (3, 1) với ô thuộc G(x0) gồm ô: C = {(3, 1), (1, 1), (1, 2), (2, 2), (2, 4), 3, 4)} Tập ô lẻ C1 = {(3, 1), (1, 2), (2, 4)} tập ô chẵn C2 = {(1, 1), (2, 2), (3, 4)} Theo cơng thức (3.1) = { x12 = 60, x 024 = 30} = 30 > Vì theo Định lý 3.1, từ tốn Bảng 3.1 xây dựng toán Bảng 3.2 với phương án tối ưu x1 có f(x1) = 3600 < f(x0) = 3690 Tiếp theo, tốn vận tải Bảng 3.2 có phương án cực biên tối ưu x1 với tập ô chọn G(x1) = {(1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3,4)} vị tương ứng u1 = (0 - - 2), v1 = (4 15 18 12) Bài tốn có (k, ) = (2, 1) với u 12 + v11 = - + = - < 17 Chu trình tạo nên (k, ) = (2, 1) với ô thuộc G(x1) gồm ô: C = {(2, 1), (1, 1), (1, 2), (2, 2)} Tập ô lẻ C1 = {(2, 1), (1, 2)} tập ô chẵn C2 = {(1, 1), (2, 2)} Theo cơng thức (3.1) = { x112 = 30} = 30 > Vì theo Định lý 3.1, từ toán Bảng 3.2 xây dựng tốn Bảng 3.3 với phương án tối ưu x2 có f(x2) = 3570 < f(x1) = 3600 Cuối cùng, toán vận tải Bảng 3.3 có phương án cực biên tối ưu x2 với tập ô chọn G(x2) = {(1, 1), (1, 2), (2, 2), (2, 3), (3, 3), (3,4)} vị tương ứng u2 = (0 - - 2), v2 = (4 15 18 12) Bài tốn có (k, ) = (2, 1) với u 22 + v12 = - + = - < 0, theo công thức (3.1) = { x112 = 0} = nên vận dụng Định lý 3.1 Tuy nhiên phương án tối ưu x2 suy biến nên x2 có tập chọn khác G'(x2) = {(1, 1), (2, 2), (2, 3), (2, 4), (3, 1), (3,4)} vị tương ứng u2 = (0 - 2), v2 = (4 10 13 12) (xem Bảng 3.4) Với vị ta có ui + vj > với (i, j) ∉ G'(x2) Vì thế, theo Định lý 3.2, từ tốn vận tải Bảng 3.4 (cũng toán Bảng 3.3) khơng thể xây dựng tốn mới, có phương án tối ưu với tổng chi phí vận chuyển nhỏ Bảng 3.4 Tập ô chọn vị tương ứng khác Thu b1 = 100 b2 = 75 Phát 4• 15 a1 = 100 100 10 • a2 = 165 75 2• 14 a3 = 125 vj b3 = 90 b4 = 125 18 17 13 • 12 • 90 10 • 16 125 10 13 18 ui 12 -2 fmin = 3570 3.4 GIẢI THÍCH NGHỊCH LÝ THEO QUI HOẠCH THAM SỐ Như thấy Ví dụ 3.1, toán vận tải cho Bảng 3.1 biến đổi thành toán Bang 3.2 (tăng lượng cung a3 lượng cầu b1 thêm = 30 đơn vị hàng), vận chuyển nhiều hàng tốn chi phí vận chuyển (từ 3690 giảm 3600) Để giải thích giảm ta xét tốn vận tải tham số: Tìm cực tiểu hàm chi phí vận chuyển (tuyến tính) f(x) = 4x11 + 15x12 + 18x13 + 17x14 + 5x21 + 10x22 + 13x23 + 12x24 + 2x31 + 14x32 + 16x33 + 10x34 với điều kiện (phụ thuộc tham số t ≥ 0): x11 + x12 + x13 + x14 = 100, (trạm phát giao hết hàng) x21 + x22 + x23 + x24 = 135, (trạm phát giao hết hàng) x31 + x32 + x33 + x34 = 95 + 30t, (trạm phát giao hết hàng) x11 + x21 + x31 = 40 + 30t, (trạm thu nhận đủ hàng) x12 + x22 + x32 = 75, (trạm thu nhận đủ hàng) x13 + x23 + x33 = 90, (trạm thu nhận đủ hàng) x14 + x24 + x34 = 125, (trạm thu nhận đủ hàng) xij ≥ với i = 1, 2, j = 1,2, 3, (mọi biến khơng âm) Dữ liệu tốn vận tải tham số ghi Bảng 3.5 Bảng 3.5 Dữ liệu toán vận tải tham số b a a' b' 100 135 95 30 vj 40 30 x11 x21 x31 v1 75 90 125 0 15 18 17 x12 x13 x14 10 13 12 x22 x23 x24 14 16 10 x32 x33 x34 v2 v3 v4 ui u1 u2 u3 f= Dùng qui hoạch tham số giải toán vận tải trên, ta nhận kết sau: 19 Bảng 3.6 Cơ sở tối ưu với ≤ t ≤ b 40 30 75 90 125 a a' b' 0 4• 15 • 18 17 100 40 + 30t 60 - 30t 10 • 13 • 12 • 135 15 + 30t 90 30 - 30t 14 16 10 • 95 30 95 + 30t vj 15 18 17 ui -5 -7 f = 3690 - 90t Bảng 3.7 Cơ sở tối ưu với ≤ t ≤ b 40 30 75 a a' b' 4• 15 • 100 40 + 30t 60 - 30t 10 • 135 15 + 30t 14 95 30 vj 90 125 17 18 13 • 12 120-30t 16 • 10 • -30+30t 125 15 18 12 ui -5 -2 f = 3540 + 60t Bảng 3.7 Cơ sở tối ưu với ≤ t < + ∞ b a a' 40 30 b' 100 135 95 30 vj Tham số t 0≤t≤1 1≤t≤2 2≤t