Luận văn này nghiên cứu đề xuất thuật toán giải cho bài toán vận tải có vận chuyển ngược, dựa trên cơ sở trả lời một số câu hỏi như: nhữngtính chất nào đúng cho bài toán vận tải thông th
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC
Trang 2Mục lục
1.1 Phát biểu bài toán 7
1.2 Sự tồn tại nghiệm 8
1.3 Phương án cực biên 8
1.4 Bài toán đối ngẫu 9
2 Bài toán vận tải với biến không âm 13 2.1 Bài toán vận tải và tính chất 13
2.2 Tìm phương án cực biên ban đầu 18
2.3 Tiêu chuẩn tối ưu 21
2.4 Thuật toán thế vị 26
2.5 Ví dụ minh họa 28
3 Bài toán vận tải có vận chuyển ngược 32 3.1 Vận chuyển ngược có lợi ích gì? 32
3.2 Mô hình bài toán vận tải có vận chuyển ngược 33
3.3 Điều kiện tối ưu 36
3.4 Thuật toán giải bài toán (P) 38
3.5 Ví dụ minh họa 40
Trang 3Lời cảm ơn
Luận văn này được hoàn thành tại Trường Đại học Khoa học, Đạihọc Thái Nguyên dưới sự hướng dẫn của GS.TS Trần Vũ Thiệu Tác giảxin bày tỏ lòng kính trọng và biết ơn sâu sắc tới thầy về sự tận tình hướngdẫn trong suốt thời gian tác giả làm luận văn
Trong quá trình học tập và làm luận văn, thông qua các bài giảng
và xêmina, tác giả thường xuyên nhận được sự quan tâm giúp đỡ và đónggóp những ý kiến quý báu của các GS,TS trong Viện Toán học đã khôngquản ngại đường sá xa xôi lên Thái Nguyên giảng dạy cho chúng em Tácgiả cũng xin gửi tới TS Nguyễn Thị Thu Thủy và các thầy các cô trongtrường Đại học Khoa học - Đại học Thái Nguyên Từ đáy lòng mình, tácgiả xin bày tỏ lòng biết ơn sâu sắc đến các thầy các cô
Tác giả xin bày tỏ lòng biết ơn tới các thầy, các cô, Ban giám hiệunhà trường, Ban chấp hành Đoàn, các đồng nghiệp cùng công tác trong cơquan đã luôn tạo điều kiện thuận lợi nhất giúp đỡ tác giả trong thời gianhọc tập và làm luận văn cao học
Xin chân thành cảm ơn anh chị em học viên cao học Toán K4A vàbạn bè đồng nghiệp gần xa đã trao đổi, động viên và khích lệ tác giả trongquá trình học tập, nghiên cứu và làm luận văn
Luận văn sẽ không hoàn thành được nếu không có sự thông cảm,giúp đỡ của những người thân trong gia đình tác giả Đây là món quà tinhthần, tác giả xin kính tặng gia đình thân yêu của mình với tấm lòng biết
ơn chân thành và sâu sắc
Trang 4Lời nói đầu
Bài toán vận tải (Transportation problem) của qui hoạch tuyến tính
đã khá quen thuộc trong toán học ứng dụng Trong bài toán vận tải dạngbảng chỉ cho phép vận chuyển hàng từ các trạm phát tới các trạm thu,không vận chuyển theo chiều ngược lại (từ các trạm thu tới các trạm phát).Lời giải thu được đôi khi không cho chi phí vận chuyển nhỏ nhất Đó là
vì lời giải này chỉ đúng khi đã xác định được chi phí nhỏ nhất cần để vậnchuyển một đơn vị hàng từ mỗi trạm phát tới mỗi trạm thu Muốn vậy,cần giải các bài toán phụ trợ: tìm đường đi ngắn nhất giữa mỗi cặp trạmthu - phát
Có thể mở rộng bài toán vận tải bằng cách cho phép vận chuyển hàngtheo cả chiều ngược lại từ các trạm thu tới các trạm phát Từ đó dẫn đến
mô hình bài toán vận tải có vận chuyển ngược (Transportation problemwith reshipments) Mô hình mới chỉ khác cũ ở chỗ: các biến biểu thị lượnghàng vận chuyển bây giờ có thể lấy giá trị âm và trong hàm mục tiêu sửdụng dấu giá trị tuyệt đối Trong nhiều trường hợp, vận chuyển ngược cóthể làm giảm chi phí vận chuyển
Luận văn này nghiên cứu đề xuất thuật toán giải cho bài toán vận tải
có vận chuyển ngược, dựa trên cơ sở trả lời một số câu hỏi như: nhữngtính chất nào đúng cho bài toán vận tải thông thường vẫn còn đúng chobài toán vận tải có vận chuyển ngược, tiêu chuẩn tối ưu bây giờ thay đổinhư thế nào và có thể mở rộng thuật toán thế vị cho bài toán mới đượckhông
Nội dung luận văn được chia thành ba chương
Trang 5Chương 1 với tiêu đề "Bài toán qui hoạch tuyến tính dạng chính tắc"nhắc lại những kiến thức cơ bản về bài toán qui hoạch tuyến tính chínhtắc: điều kiện tồn tại nghiệm của bài toán, tính chất của phương án cựcbiên, bài toán đối ngẫu và các quan hệ đối ngẫu trong qui hoạch tuyếntính Do bài toán vận tải cũng có dạng một bài toán qui hoạch tuyến tínhchính tắc nên có thể áp dụng các kiến thức này cho bài toán vận tải.
Chương 2 với tiêu đề "Bài toán vận tải với biến không âm" trình bàynội dung và các tính chất cơ bản của bài toán vận tải với các biến lấygiá trị không âm Tiếp đó, luận văn trình bày cơ sở lý luận và nội dungthuật toán thế vị (một biến thể của thuật toán đơn hình) giải hiệu quảbài toán vận tải Để áp dụng thuật toán, đòi hỏi biết một phương án cựcbiên ban đầu của bài toán Vì thế cách tìm phương án cực biên ban đầu(theo min cước hoặc phương pháp góc Tây - Bắc) cũng được nêu đầy đủ.Cuối chương xây dựng ví dụ số để minh họa cho thuật toán giải
Các kiến thức về bài toán vận tải nói chung và thuật toán thế vị nóiriêng sẽ cần đến ở chương sau, khi xét bài toán vận tải có vận chuyểnngược
Chương 3 với tiêu đề "Bài toán vận tải có vận chuyển ngược" đề cậptới một mở rộng bài toán vận tải với biến không âm, cho phép vận chuyểnhàng theo cả chiều ngược lại từ trạm thu tới trạm phát Mô hình bài toánvận tải có vận chuyển ngược có dạng một bài toán qui hoạch lồi ràng buộctuyến tính với các biến lấy giá trị tùy ý (dương, âm hay bằng 0) và tronghàm mục tiêu sử dụng dấu giá trị tuyệt đối Dựa vào cấu trúc đặc biệt của
mô hình, chương này nêu cách đưa bài toán vận tải có vận chuyển ngược
về một bài toán qui hoạch tuyến tính chính tắc với cấu trúc gần giống nhưbài toán vận tải thông thường Từ đó nêu ra điều kiện tối ưu và đề xuấtthuật toán thế vị mở rộng giải bài toán Cuối chương xây dựng ví dụ sốminh họa cho thuật toán giải
Nội dung của chương này được hình thành dựa trên ý tướng nêu ra ởtài liệu [5] và đã được tác giả luận văn trình bày chi tiết trong bài báo
Trang 6đăng ở Tạp chí Khoa học và Công nghệ của Đại học Thấi Nguyên, Tập
Tác giả
Trịnh Thị Thanh Hảo
Trang 71.1 Phát biểu bài toán
Điểm thỏa mãn mọi ràng buộc gọi là một điểm chấp nhận được, haymột phương án Tập hợp tất cả các phương án, ký hiệu là D, gọi là miền
Trang 8ràng buộc hay miền chấp nhận được Một phương án đạt cực tiểu của hàmmục tiêu gọi là một phương án tối ưu hay một lời giải của bài toán đã cho.
Ví dụ 1.1 f = x2 → min , với điều kiện x1x2 ≥ 1, x1 ≥ 0
Miền chấp nhận được D = x ∈ R2 : x1x2 ≥ 1, x1 ≥ 0 là một tập lồikhác rỗng và hàm mục tiêu bị chặn dưới trong miền này: x2 ≥ 0 với mọi
x = (x1, x2) ∈ D Điểm (1/ε, ε) ∈ D với mọi ε > 0, nhưng không có
(x1, 0) ∈ D.Vì thế cận dưới của x2 không đạt tại bất cứ điểm nào thuộc D.Cũng có thể lấy ví dụ với hàm mục tiêu phi tuyến và miền ràng buộc
là một tập lồi đa diện cho thấy định lý trên không đúng
Ví dụ 1.2 Cho hàm f (x) = 1+x1 2, x ∈ R
Ta thấy f (x) ≥ 0, ∀x ∈ R và inf
x∈Rf (x) = 0 Hàm này không đạt cựctiểu trên R
1.3 Phương án cực biên
phương án cực biên, nghĩa là x không thể biểu diễn được dưới dạng một
tổ hợp lồi của bất cứ hai phương án bất kỳ nào khác của D Nói một cáchkhác, hễ x = λx1 + (1 − λ)x2 với 0 < λ < 1 và x1, x2 ∈ D thì phải có
x0 = x1 = x2
Trang 9Định lý sau nêu một tính chất đặc trưng của phương án cực biên củabài toán qui hoạch tuyến tính chính tắc.
Định lý 1.2 Để một phương án x0 = x01, x02, , x0n của bài toán quihoạch dạng chính tắc là phương án cực biên, thì cần và đủ là các véctơ cột
Aj của ma trận A ứng với các thành phần x0j > 0 là độc lập tuyến tính
Hệ quả 1.1 Số phương án cực biên của bài toán qui hoạch tuyến tínhdạng chính tắc là hữu hạn
Hệ quả 1.2 Số thành phần dương trong mỗi phương án cực biên của bàitoán qui hoạch tuyến tính dạng chính tắc tối đa bằng m (m là số hàng của
ma trận A)
Người ta phân ra hai loại phương án cực biên: nếu phương án cực biên
có số thành phần dương đúng bằng m, nó được gọi là phương án cực biênkhông suy biến Trái lại, nó gọi là phương án cực biên suy biến
Định lý 1.3 Nếu bài toán qui hoạch tuyến tính dạng chính tắc có ít nhấtmột phương án thì nó cũng có phương án cực biên (miền ràng buộc D cóđỉnh)
Định lý 1.4 Nếu bài toán qui hoạch tuyến tính dạng chính tắc có phương
án tối ưu thì cũng có phương án cực biên tối ưu
1.4 Bài toán đối ngẫu
Đối ngẫu là một phương pháp mà ứng với mỗi bài toán qui hoạch tuyếntính đã cho (gọi là bài toán gốc), ta có thể thiết lập một bài toán qui hoạchtuyến tính khác (gọi là bài toán đối ngẫu) sao cho từ lời giải của bài toánnày ta sẽ thu được thông tin về lời giải của bài toán kia
Vì thế, đôi khi để có được những hiểu biết cần thiết về một bài toánthì việc nghiên cứu bài toán đối ngẫu của nó lại tỏ ra thuận tiện hơn Hơnnữa, khi phân tích đồng thời cả hai bài toán gốc và đối ngẫu ta có thể rút
ra kết luận sâu sắc cả về mặt toán học lẫn về ý nghĩa thực tiễn
Ta định nghĩa đối ngẫu của bài toán qui hoạch tuyến tính chính tắc,
ký hiệu bài toán (P):
f (x) = c1x1 + c2x2 + + cnxn → min,
Trang 11Định lý 1.6 (Đối ngẫu mạnh) Nếu một qui hoạch có phương án tối ưuthì qui hoạch đối ngẫu của nó cũng có phương án tối ưu và giá trị tối ưucủa chúng là bằng nhau.
Định lý 1.7 (Định lý yếu về độ lệch bù) Một cặp phương án x, y của haiqui hoạch đối ngẫu (P) và (Q) là những phương án tối ưu khi và chỉ khichúng nghiệm đúng các hệ thức:
aijxj − bi là độ lệch (mức chênh lệch giữa vế trái và vế phải)
ở ràng buộc i trong bài toán gốc (P ), yi là biến đối ngẫu tương ứng vớiràng buộc này Tương tự, cj −
độ lệch ở ràng buộc này và biến đối ngẫu (hay biến gốc) tương ứng vớiràng buộc đó phải bằng không Nói cách khác, nếu một ràng buộc có độlệch dương thì biến (gốc hay đối ngẫu) tương ứng với ràng buộc đó phảibằng không; ngược lại, nếu một biến gốc hay đối ngẫu có giá trị dương thìphương án của bài toán đối ngẫu phải thỏa mãn ràng buộc tương ứng vớidấu "=" (thỏa mãn như một đẳng thức) Như vậy, hệ thức (1.1) có nghĩalà
Trang 12Các đẳng thức (1.1), (1.2) không loại trừ khả năng là với một i nào đó
Định lý 1.8 (Định lý mạnh về độ lệch bù) Nếu cặp bài toán đối ngẫu (P)
và (Q) có phương án thì tồn tại một cặp phương án tối ưu x∗, y∗ nghiệmđúng
y∗ + (Ax∗ − b) > 0 và x∗ + (c − ATy∗) > 0
Tóm lại, chương này đã điểm lại những tính chất cơ bản của bài toán quihoạch tuyến tính chính tắc, nêu điều kiện để bài toán có lời giải (phương
án tối ưu) và điều kiện để một phương án của bài toán là phương án tối
ưu Bài toán vận tải xét ở các chương sau là một bài toán qui hoạch tuyếntính chính tắc và vì thế các kiến thức nêu ở chương này sẽ được áp dụngcho bài toán vận tải nói riêng
Trang 13Chương 2
Bài toán vận tải với biến không âm
Chương này đề cập tới bài toán vận tải dạng bảng, nó có dạng bàitoán qui hoạch tuyến tính chính tắc Do bài toán vận tải có cấu trúc đặcbiệt nên nó có các tính chất riêng Có thể khai thác các tính chất đó đểxây dựng thuật toán giải hiệu quả
Chương gồm 5 mục Trong mục 2.1, chúng tôi giới thiệu về bài toánvận tải và tính chất Mục 2.2, trình bày cách tìm phương án cực biên banđầu Mục 2.3, nêu tiêu chuẩn tối ưu và mục 2.4, giới thiệu thuật toán thế
vị Trong mục 2.5, chúng tôi đưa ra ví dụ số để minh họa
Các khái niệm và kết quả trình bày trong chương này được tham khảo
từ các tài liệu [1], [2] và [4]
2.1 Bài toán vận tải và tính chất
Giả sử có mkho hàng A1, , Am (điểm phát) cùng chứa một loại hàng.Cần vận chuyển số hàng trên đến n cửa hàng B1, , Bn (điểm thu) Cướcphí vận chuyển một đơn vị hàng từ điểm phát Ai đến điểm thu Bj là Cij.Vấn đề đặt ra là cần xác định nên vận chuyển từ mỗi điểm phát tới mỗiđiểm thu bao nhiêu đơn vị hàng sao cho thỏa mãn nhu cầu của mọi điểmthu và tổng chi phí vận chuyển toàn bộ số hàng là nhỏ nhất?
Mô hình bài toán vận tải có dạng:
cijxij → min (cực tiểu tổng chi phí vận chuyển), (2.1)
với điều kiện
Trang 14xij = bj, j = 1, 2, , n (mọi điểm thu nhận đủ hàng), (2.3)
xij ≥ 0, i = 1, , m; j = 1, , n (lượng hàng vận chuyển không âm)
(2.4)
Ở đây, m là số kho chứa hàng (điểm phát)
n là số nơi tiêu thụ hàng (điểm thu)
ai là lượng hàng có (cung) ở điểm phát thứ i (i = 1, 2, , m)
bj là lượng hàng cần (cầu) ở điểm thu thứ j (j = 1, 2, , n)
cij là chi phí vận chuyển một đơn vị hàng từ điểm phát i đến điểm thu j
xij biểu thị lượng hàng vận chuyển cần tìm từ điểm phát i tới điểm thu j
Điều kiện cần và đủ để bài toán (2.1) - (2.4) giải được là phải có điềukiện cân bằng thu phát, nghĩa là tổng cung bằng tổng cầu:
a1 + a2 + + am = b1 + b2 + + bn (2.5)Bài toán vận tải (2.1) - (2.4) là một dạng đặc biệt của bài toán quihoạch tuyến tính Để thấy rõ điều này ta sắp xếp các biến theo thứ tự
x11, , x1n, x21, , x2n, , xm1, , xmn Và viết lại hệ ràng buộc (2.2) - (2.3)dưới dạng hệ m + n phương trình của m x n biến số xij như sau:
Ký hiệu A là ma trận hệ số của hệ phương trình trên (m + n hàng và
m × n cột),
x = (x11, , x1n, x21, , x2n, , xm1, , xmn)T- véctơ cộtm×nthành phần,
Trang 15Véctơ x thỏa mãn (2.2) - (2.4) gọi là một phương án của bài toán vậntải Một phương án đạt cực tiểu của (2.1) gọi là một phương án tối ưu haylời giải của bài toán Phương án x là phương án cực biên khi và chỉ khicác véctơ cột Aij của ma trận Aứng với các véctơ xij > 0 là độc lập tuyếntính (xem Định lý 1.2) Sau đây ta sẽ giả thiết có điều kiện cân bằng thuphát (2.5).
Do bài toán vận tải có m + n ràng buộc chính, nên ta nghĩ rằng mỗiphương án cực biên cũng có m + n thành phần dương, nhưng thực tế chỉ
có nhiều nhất m + n − 1 thành phần dương, vì trong số các ràng buộcchính của bài toán có một ràng buộc là thừa (có thể bỏ đi mà không làmảnh hưởng tới lời giải của bài toán) Một phương án cực biên của bài toángọi là không suy biến nếu số phần tử của tập hợp G = {(i, j) : xij > 0}
bằng m + n − 1, gọi là suy biến nếu |G| < m + n − 1
Với điều kiện (2.5) bài toán vận tải (2.1) - (2.4) có các tính chất sau:
1 Bài toán luôn có phương án và tập hợp các phương án của bài toán
Trang 16Có thể dùng các phương pháp của qui hoạch tuyến tính để giải bài toánvận tải Tuy nhiên do bài toán này có dạng đặc biệt nên người ta đã đề ranhiều thuật toán giải hiệu quả Trong số đó có thuật toán thế vị mà ta sẽ
đề cập tới ở trong muc 2.4 dưới đây
Ta ghi lại dữ liệu của bài toán dưới dạng một bảng chữ nhật, gọi làbảng vận tải Bảng bao gồm: m hàng (i = 1, 2, , m) và n cột (j = 1, 2, , n) Chỗ giao nhau ở hàng i, cột j kí hiệu là ô (i, j) Mỗi hàng tương ứngvới một trạm phát, mỗi cột tương ứng với một trạm thu Số ghi ở đầu mỗihàng là lượng cung, số ghi ở đầu mỗi cột là lượng cầu Chi phí vận chuyển
cij ghi ở góc trên bên trái của ô (i, j), lượng hàng vận chuyển xij sẽ ghi ởgóc dưới bên phải của ô Ô (i, j) biểu thị tuyến đường vận chuyển từ trạmphát i đến trạm thu j (Đặt cij = ∞ nếu không thể vận chuyển hàng từ iđến j)
Trang 17hàng hay cùng một cột và số ô trên mỗi dây chuyền có thể là chẵn hoặc
lẻ Một chu trình bao giờ cũng gồm một số chẵn các ô
Ví dụ 2.1 Dãy ô đánh dấu "•" trong Hình 2.2 a) và b) lập thành cácdây chuyền, còn các ô với dấu • trong hình 2.2 c) - e) lập thành các chutrình
Hình 2.2: Dây chuyền: a) - b) Chu trình: c) - e)
Cho G là một tập hợp ô bất kỳ trong bảng vận tải Một ô thuộc G gọi
là ô treo nếu nó là ô duy nhất của G trên hàng hay trên cột của ô đó Vớitập hợp ô cho ở trong Hình 2.2 a) thì ô (1, 1) và ô (4, 3) là các ô treo Nếuloại khỏi G ô treo (1, 1) thì ô (1, 2) sẽ trở thành ô treo của tập hợp ô cònlại
Ta có mối liên hệ quan trọng sau đây
Định lý 2.1 Hệ véctơ Aij của bài toán vận tải là độc lập tuyến tính khi
và chỉ khi các ô tương ứng với các véctơ này không tạo thành chu trình
Hệ quả 2.1 Véctơ x là một phương án cực biên của bài toán khi và chỉkhi tập hợp các ô (i, j) mà xij > 0 không lập thành chu trình
Định lý 2.2 Giả sử T là một tập hợp gồm m + n − 1 ô của bảng vận tải,không tạo thành chu trình Khi đó, mỗi ô (r, s) /∈ T sẽ tạo với các ô thuộc
T một chu trình duy nhất
Chu trình nói tới trong định lý trên có thể tìm bằng cách loại dần các
ô treo của tập hợp ô G = T ∪ {(r, s)} Ví dụ, tập hợp ô T cho ở Hình 2.2b) gồm m + n − 1 = 7 ô không tạo thành chu trình Bổ sung vào ô T ô(4, 2) ∈ T/ (ô đánh dấu ∆) ta được G = T ∪ {(4, 2)} Khi đó, bằng cáchloại khỏi G ô treo (3, 3) (ô duy nhất của G trên cột 3), ta nhận được chutrình (gồm 6 ô):
ε = {(4, 2) , (4, 1) , (2, 1) , (2, 4) , (1, 4) , (1, 2)}
Trang 182.2 Tìm phương án cực biên ban đầu
Để giải bài toán vận tải (2.1) - (2.4) với điều kiện (2.5) theo phươngpháp thế vị, trước hết ta cần biết một phương án cực biên không suy biếncủa bài toán Có nhiều cách để tìm một phương án như thế Sau đây làhai phương pháp thông dụng và có hiệu quả nhất
a) Phương pháp min cước
Trong bảng vận tải, ta chọn ô (p, q) sao cho: cpq = min {cij : ∀(i, j)}.Nếu cực tiểu đạt tại nhiều ô thì ta chọn một ô bất kỳ trong số các ô đó.Sau đó phân phối hàng nhiều nhất có thể theo tuyến p → q nghĩa là đặt:
xpq = min{ap, bq}
Trừ lượng hàng vừa phát vào khả năng phát, thu của hàng pvà cộtq Tiếp
đó, ta xóa hàng p nếu điểm phát p đã phát hết hàng, hoặc cột q nếu điểmthu q đã nhận đủ hàng Khi cả hàng và cột đều hết và đủ hàng thì chỉ xóahàng hoặc cột, không xóa đồng thời cả hai Trong bảng còn lại, ta lại tìm
ô có cước phí nhỏ nhất và phân phối tối đa lượng hàng còn lại vào ô này(lượng này có thể bằng 0) Phương án x thu được có đúng m + n − 1 ô
đã phân hàng, nó là một phương án cực biên vì các ô đã chọn không tạothành chu trình
Ví dụ 2.2 Cần vận chuyển xi măng từ3kho K1, K2, K3 tới4 công trườngxây dựng T1, T2, T3, T4 Cho biết lượng xi măng có ở mỗi kho, lượng ximăng cần ở mỗi công trường và giá cước vận chuyển (ngàn đồng) một tấn
xi măng từ mỗi kho tới mỗi công trường như sau:
Hình 2.3: Lượng xi măng cần vận chuyển
Tìm một phương án cực biên của bài toán vận tải trên
Trang 19Giải Cước phí nhỏ nhất trong bảng là15đạt tại hai ô (2, 1) và (2, 4) Tachọn ô thứ nhất và phân vào ô này lượng hàngx21 = min{200, 130} = 130.
Cột 1 đã nhận đủ hàng nên bị loại (không phân hàng vào đây nữa) Hàng
2 chỉ còn lại lượng phát a,2 = 200 − 130 = 70
Trong bảng còn lại (ba cột cuối), ta chọn ô (2, 4) có cước phí nhỏ nhất(bằng 15) và phân vào ô này lượng hàng x24 = min{70, 140} = 70 Lúcnày hàng 2 đã phát hết hàng nên bị loại Cột 4 chỉ còn thiếu lượng hàng
x34 = 180 − 110 = 140 − 70 = 70 Đến đây mọi hàng (cột) đã phát hết(nhận đủ) hàng, ta đặt xij = 0 đối với mọi ô (i, j) còn lại
Kết quả nhận được phương án cực biên cho ở bảng 2.4 Giá trị hàm mụctiêu tương ứng bằng 12950 Sau này ta sẽ thấy giá trị cực tiểufmin = 12140
Hình 2.4: Phương án cực biên xây dựng theo phương pháp min cước.
b) Phương pháp góc tây bắc
Phương pháp này đơn giản và tiện dùng để lập trình trên máy tính.Trước hết, ta lập bảng vận tải T với các số liệu ai, bj, cij, i = 1, 2, , m,
Trang 20j = 1, 2, , n Bắt đầu từ ô ở vị trí góc tây bắc của bảng T (ô (1, 1)),
ta điền lượng hàng x11 lớn nhất có thể vào đó, tức là cho chuyển mộtlượng hàng lớn nhất có thể từ điểm phát 1 đến điểm thu 1 Dễ thấy:
x11 = min(a1, b1)
Một trong hai khả năng sau có thể xảy ra:
• Nếu x11 = a1 < b1 (Điểm phát 1 hết hàng, điểm thu 1 còn cần
b1− a1 đơn vị hàng) Xóa hàng thứ nhất của bảng T ta thu được bảng T,
gồm (m − 1) hàng và n cột với lượng phát, thu tương ứng:
a,i = ai, i = 2, 3, , m, b,1 = b1 − x11 = b1 − a1, b,j = bj, j = 2, 3, , n;
• Nếu x11 = b1 ≤ a1 (Điểm phát 1 còn a1 − b1 đơn vị hàng, điểmthu 1 đã thỏa mãn nhu cầu) Xóa cột thứ nhất của bảng T ta thu đươcbảng T, gồm m hàng và n − 1 cột với lượng phát, thu tương ứng:
a,1 = a1 − x11 = a1 − b1; a,i = ai, i = 2, 3, , m, b,j = bj, j = 2, 3, , n
Đối với bảng T,, ta lại thực hiện thủ tục chuyển hàng như đã áp dụngvới bảng T: Bắt đầu từ ô ở góc tây bắc của bảng T,, xác định lượng vậnchuyển lớn nhất có thể (lượng hàng này có thể bằng 0) từ điểm phát đếnđiểm thu tương ứng, tức điền lượng hàng vận chuyển lớn nhất có thể vào
ô này Cứ tiếp tục đến khi loại hết được tất cả các hàng và các cột củabảng vận tải Những ô (i, j) không được phân bố hàng có xij = 0
Nhận xét 2.1 Theo phương pháp góc tây bắc, sau mỗi lần phân phốihàng ta xóa đi được một hàng (hoặc một cột) Do đó, đúng sau m + n − 1
lần phân phối thủ tục trên phải kết thúc (do lần cuối ta xóa được cả hànglẫn cột) và phương án xây dựng theo phương pháp góc tây bắc sẽ không quá
(m + n − 1) thành phần dương
Mệnh đề 2.1 Phương án tìm được theo phương pháp góc tây bắc hoặcphương pháp min cước là phương án cực biên của bài toán vận tải
Chứng minh Ta sẽ chứng minh mệnh đề này bằng qui nạp theok = m + n
(tổng số hàng và số cột của bảng vận tải) Hiển nhiên là mệnh đề đúngnếu m = n = 1, tức đúng với k = m + n = 2
Trang 21Giả sử mệnh đề đúng với bảng vận tải có tổng số hàng và số cột là
k = m + n − 1 Kí hiệu là G là tập hợp các ô chọn của bảng T, Theo giảthiết qui nạp, G ∪ {i1, j1} không chứa chu trình vì {i1, j1} là ô duy nhấttrong tập hợp các ô đang xét ở bảng T nằm trong hàng i1 Do đó, phương
án được xác định theo một trong hai phương pháp này là phương án cựcbiên
2.3 Tiêu chuẩn tối ưu
Xét bài toán vận tải (2.1) với các điều kiện (2.2), (2.3), (2.4) Bài toánđối ngẫu của bài toán vận tải (2.1) − (2.4) là:
Cho phương án x0 Kí hiệu G(x0) =(i, j) ∈ T | x0ij > 0 Sau đây
là điều kiện cần và đủ để phương án x0 = (x0ij) là phương án tối ưu.Định lý 2.3 Phương án x0 = (x0ij) của bài toán vận tải (2.1) − (2.4)
là phương án tối ưu khi và chỉ khi tồn tại các số ui, i = 1, , m và vj,
j = 1, , n thỏa mãn:
ui+ vj ≤ cij, ∀(i, j) ∈ T (2.9)
ui + vj = cij, ∀(i, j) ∈ G(x0) (2.10)
Trang 22Chứng minh (⇒) Giả sử phương án x0 = (x0ij) là phương án tối ưu củabài toán vận tải Theo định lý đối ngẫu mạnh (xem Định lý 1.6), bài toánđối ngẫu (2.8) có phương án tối ưu y0 = (u1, , um, v1, , vn)T Do y0 làphương án chấp nhận được của bài toán đối ngẫu nên nó thỏa mãn mọiràng buộc của bài toán, tức ui + vj ≤ cij, i = 1, , m, j = 1, , n Và đâychính là điều kiện (2.9) Hơn nữa, vì chính x0 là phương án tối ưu của bàitoán gốc (2.1) và y0 là phương án tối ưu của bài toán đối ngẫu (2.8) nêntheo định lí về độ lệch bù (xem Định lý 1.7) ta có:
c − ATy0, x0 = 0
suy ra nếu x0ij > 0 thì ui+ vj = cij hay điều kiện (2.10) được thỏa mãn
(⇐) Cho phương án x0 = (x0ij) Giả sử tồn tại các số ui, i = 1, , m và
vj, j = 1, , n thỏa mãn (2.9) và(2.10) Ta phải chứng minhx0 là phương
Trang 23Vậy x0 là phương án tối ưu của bài toán vận tải đang xét.
Chú ý 2.1 Giả sử x0 là phương án cực biên không suy biến Ta có cácvéctơ Aij| (i, j) ∈ G x0 độc lập tuyến tính và
G x0 = m + n − 1
Do đó hệ (2.10)
ui + vj = cij, ∀(i, j) ∈ G(x0)
có m + n − 1 phương trình độc lập tuyến tính và m + n biến ui, i = 1, ,m
và vj, j = 1, ,n Do đó để giải hệ này, ta có thể cho một biến nào đó lấygiá trị tùy ý (thông thường cho u1 = 0) và các biến còn lại được xác địnhduy nhất bằng phương pháp thế
Như vậy, mỗi phương án cực biên không suy biến x0 = (x0ij) tương ứngvới một bộ số ui, i = 1, 2, , m và vj, j = 1, 2, , n (sai khác một hàngsố) thỏa mãn (2.10) Ta gọi các số ui, vj này là các thế vị Các đại lượng
∆ij := ui+ vj − cij được gọi là các ước lượng Khi đó, điều kiện (2.9) đượcviết lại thành ∆ij ≤ 0 với mọi (i, j) ∈ T
Định lý sau đây và nội dung chứng minh của nó cho ta dấu hiệu nhậnbiết phương án cực biên không suy biến x0 chưa phải là tối ưu và từ đóchuyển sang một phương án cực biên x1 mà tại đó giá trị hàm mục tiêunhỏ hơn tại x0
Định lý 2.4 Giả sử x0 là phương án cực biên không suy biến của bài toánvận tải và ui, vj, i = 1, 2, , m, j = 1, 2, , n là bộ các thế vị tươngứng với nó Nếu
∃ (r, s) /∈ G(x0) sao cho ∆rs > 0 (2.12)thì x0 không phải là phương án tối ưu và từ x0 ta chuyển đến được mộtphương án cực biên x1 tốt hơn x0, tức
f (x1) < f (x0)
Chứng minh Giả sử có điều kiện (2.12) Ta sẽ chứng minh rằng, từ x0 cóthể chuyển sang được phương án cực biên x1 với f (x1) < f (x0)
Do x0 là phương án cực biên không suy biến nên G(x0) = m + n − 1
vàG(x0) không chứa chu trình Theo Định lý 2.2 tập G(x0) ∪ {(r, s)} chứamột chu trình K duy nhất đi qua (r, s) Đánh dấu các ô trong K bởi các
... tối ưu từ đ? ?chuyển sang phương án cực biên x1 mà giá trị hàm mục tiêunhỏ x0Định lý 2.4 Giả sử x0 phương án cực biên khơng suy biến tốnvận tải ui,... tối ưu từ x0 ta chuyển đến mộtphương án cực biên x1 tốt x0, tức
f (x1) < f (x0)
Chứng minh Giả sử có điều kiện (2.12) Ta chứng... (x0)
Chứng minh Giả sử có điều kiện (2.12) Ta chứng minh rằng, từ x0 cóthể chuyển sang phương án cực biên x1 với f (x1) < f (x0)
Do