Ngoài việc giải quyết vấn đề vận chuyển hàng hóa, bài toán có thể áp dụng trong các tình huống khác như truyền tải thông tin, phân phối nguồn lực lao động,.... 148 3.1 Bài toán uận tải
Trang 1Chương 3
ỨNG DỤNG BÀI TOÁN QUY
Dựa trên kết quả nghiên cứu lý thuyết tối ưu tuyến tính, phương pháp đơn hình và đơn hình đối ngẫu có thể ứng dụng rất nhiều trong thực tế cuộc sống Trong chương này, chúng ta sẽ nghiên cứu một số bài
toán kinh điển mà đến nay vẫn được ứng dụng rộng rãi
3.1 Bài toán vận tải
Ở chương 2, phần 2.1.3, ta đã biết rằng bài toán vận tải là một mô
hình tối ưu tuyến tính, bởi vậy có thể dùng phương pháp đơn hình để giải
nó Ngoài việc giải quyết vấn đề vận chuyển hàng hóa, bài toán có thể
áp dụng trong các tình huống khác như truyền tải thông tin, phân phối
nguồn lực lao động, Có thể nói bài toán vận tải là một dạng QHTT
đặc biệt có nhiều ứng dụng trong thực tế nhất
3.1.1 Khái niệm và tính chất của bài toán vận tải
Bài toán uận tdi: Tim x = (z¡;) để
fla) = » » Cj#j —> mắn (3.1)
i=1 j=l
Trang 2với các điều kiện:
nụ = 8, t= 1 im (3.2)
ty 20, = |, mg j = l¡Đ (3.4) trong đó,
e c,; > 0 la chi phí vận chuyển một đơn vị hàng hóa từ điểm phát
¡) Việc vận chuyển hàng hóa từ điểm phát đến điểm thu không qua
điểm trung gian và không được kết hợp vận chuyển
ii) Mô hình vận tải luôn thỏa mãn điều kiện cân bang thu phat, tic
là, lượng hàng phát đi đúng bằng lượng hàng cần ở các điểm
thu:
3 a = > b; (3.5)
Chú ý 3.1 Trong trường hợp bài toán chưa cân bằng thu phát thì ta làm như sau:
Trang 3144 3.1 Bài toán Uuận tải
Bài toán van tdi cé tinh chất sau day:
Dinh ly 3.1 (Sự tồn tại phương án tối uu) Bai toán uận tải thỏa mãn điều kiện cân bằng thu phát luôn có phương án tối tru
Như vậy bài toán luôn có phương ấn
Hơn nữa, từ (3.2), (3.3), do a¿, b; hữu hạn và không âm nên 0 < z;; < mãn{a;, b;}, do đó miền ràng buộc (tập các phương án) bị chặn
Vậy bài toán vận tải luôn có phương án tối ưu O
Dinh ly 3.2 Ma tran A = (a;;) cé hang bing m+n-—1
CHỨNG MINH Hệ điều kiện (3.2), (3.3) được viết tường minh như
sau:
Trang 4Ma trận A = (Aj;) = (aij) c6 cap (m+n) x (m.n), trong đó cột A¡; (ứng với biến z¡;) chỉ có hai số 1 ở hang thứ ¡ và hàng thứ zn + 7, cồn lại
lập tuyến tinh Vay hang(A) = m+n-—1 O
Ta có hệ quả quan trọng sau:
Hệ quả 3.1 Mỗi phương ún cục biên bài toán uận tải có không quá m+n—1 toa độ đương
Ta giả sử bài toán vận tải không suy biến, tức là mọi phương án cực biên có đủ m + m= — 1 tọa độ dương
Để thuận lợi trong thực hành, ta biểu diễn bài toán dưới dạng bảng,
goi lA bang phân phối uận tải (hay bảng van tdi), xem bang 3.1
Ô giao ở hang i và cột 7, kí hiệu là ô (2, 7), biểu thị tuyến đường
vận chuyển từ điểm phát P; đến điểm thu 7; Mỗi hàng tương ứng với
một điểm phát, mỗi cột tương ứng với một điểm thu Các a¿ là lượng
cung ở điểm phát thứ ¿, ¿ = 1, ,rm; các b; là lượng cầu ở điểm thu thứ
j, 7 = 1, ,n Luong hang van chuyển #;; ghi ở góc trên bên trái của ô
(7, 7), còn cước phí vận chuyển œ¿; ghi ở góc dưới bên phải của ô (, ) Quy ước: é¡ = co nếu không thể vận chuyển hàng từ P; đến 7
Trang 5
Bảng 3.1: Bảng phân phối vận tải
Đối với bảng vận tải, ta có sự tương ứng 1 - 1: ứng với mỗi ô (¿, 7) là
một œ¿;, một z;; Mỗi phương án z = (+¿;) của bài toán tương ứng một
Ngược lại, các phương án suạ biến nếu số ô chon nhé honm+n-—1,
túc là |G[ < mm + — 1
b) Một tap hợp các ô chọn trong đó 2 ô liên tiếp luôn nằm trên cùng một hàng hoặc một cột 0à không có 3 ô liên tiếp nằm trên cùng một hàng
ha một cột, được got la mét day chuyeén
Ki hiéu mét day chuyén T:
(21,51), (41,52), (ta, 52), (ta, 93), +5 (dssIs)> (4s) Js41) (3.6)
hodc
(ii, 71), (2,71), (2a, 72), (63,73), - (6s, 7s)› (2+1, 2a) (3.7)
Trang 6Một dâu chuyền T` gọi là khép kín nếu j;¡\ = js hoặc i¿‡\ = 12 Khi
đó T' được go? là một chu trình
Nếu có thể chọn ra một tập con thực sự của một tập hợp K các ô chọn để lập thành một chu trành thà ta nói lÍ có chúa chu trình Hơn
mữa, nếu K lập thành chu trình, thà ta nói tập K có chúa chu trành con
Ví dụ 3.1 Hình a), b) là dây chuyền, các hình e), d), e) là chu trình
a) b) 6) 4) e)
Hình 3.1: Minh họa dây chuyền và chu trình bài toán vận tai
Nhận xét 3.1 Từ định nghĩa ta thấy tại mỗi hàng hoặc mỗi cột mà
chu trình đi qua chỉ có hai ô Do đó số ô của một chu trình luôn là một
số chin không nhỏ hơn 4
Định lý 3.3 Hệ 0ectơ {Aj} của bài toán uận tải là độc lập tuyến tính
khi va chi khi céc 6 tuong ứng uói các 0ectd nàu không tạo thành chu trình
Hé qua 3.2 Vecto x la một phương an cực biên của bài toán khả uà chỉ
khả tập hợp Œ các ô chọn tương ứng không lập thành chu trình
Định lý 3.4 Cho phương án cực biên + với tập Œ gồm m + n — ]
ô chọn không lập thành chu trình Kh¿ú đó, uới mỗi ô (p, q) ¢ G, tap hop G' = GU {(p, q)} chita mét chu trờnh T` duy nhất Dồng thời nếu (r, s) €7 thiG” =G' \ {(r, s)} gồm đứng m.+ n — 1 ô không tạo thành
chu trinh
Chu trình 7' nói trong định lí 3.4 có thể tìm bằng cách chọn ra tap con các 6 chon của tập hợp G’ Chang hạn, hình 3.1, b) gồm mm + = — 1 = 7
Trang 7148 3.1 Bài toán uận tải
Phương pháp cước phí nhỏ nhât
Trong bảng phân phối vận tải 3.1 chỉ điền cước phí œ¿; ta gọi là bảng
cước phí, ta tìm các ô chọn của phương án cực biên ban đầu như sau:
Bước 1 Chọn ô (ø, g) sao cho c„¿ = mớn{«; : V(¿,7)} Nếu cực tiểu đạt tại nhiều ô thì ta chọn một 6 bat ki trong số các ô đó Sau
đó phân phối một lượng hàng lớn nhất có thể từ P; dén 7;, tức là
x ‘pq Min{ ap, bạ}
e Nếu Z„„ = Gy thi dat bà = bạ — Tpạ
⁄ _ ` 4e Po _
e Nêu ø„„ = b„ thì dat a, = ay — Lyq
Ghi aj, bf, tudng ting vao canh 6 ap, bg, chting sé dudc st dung thay cho a„, b„ trong việc phân phối hàng ở những lần sau đó
Bước 2 Xóa các ô trên hàng, cột đã hết khả năng phân phối Tiếp tục
trổ lại bước 1, với những ô chưa bị "xóa"
Bằng cách thực hiện các bước như trên cho tới lúc "xóa!" hết các
ô Sau một số hữu hạn lần thực hiện việc "chọn" và "xóa" ta được
một phương án cực biên #° = (#¡7)„xø-
Ví dụ 3.2 Tìm phương án cực biên của bài toán vận tải cho bởi bảng 3.2
dưới đây
Giải: Trong bảng 3.2, ta thấy cước phí nhổ nhất e3 = ca = 1
Chon 6 (1, 3), phân phối lugng hang 213 = min{ay, b3} = b3 = 55, dat
Trang 8Bảng 3.2: Bảng cước phí vận tải 1
Tiếp tục xét ô (chưa bị xóa) có cước phí nhỏ nhất trong bang, ta
chọn œ¿ = 1 Phân phối lượng hàng Z4; = mmzn{ax, bạ} = bạ = 40, đặt
al, = a4 — 42 = 20 (ghi ở bên cạnh ô øx) Xóa các 6 không còn khả năng
phân phối ở cột 2 (các ô bị tô màu cột 2)
Trong các ö có cước phí nhỏ nhất của bảng còn lại, chọn ô (2, 4)
có Cog = 2 Phan phối lugng hang 24 = min{ay, b4} = ag = 45, đặt
Trang 9150 3.1 Bài tốn uận tải
bụ = bạ — 324 —= 15 (ghi ở trên 6 bạ) Xĩa các 6ư khơng cịn khả năng phan
phối ở hàng 2 (các 6 bị tơ mầu hàng 2)
Trong các ơ chưa bị xĩa cịn lại, chọn 6 (3, 5) cĩ c35 = 2 Phan phối
luong hang 135 = min{a3, bs} = 35, các ơ cịn lại ở hàng 3 và cột 5 đã
hết khả năng phân phối nên bị xĩa Tiếp tục chon 6 (1, 4) cĩ ey4 = 4 Phan phéi lugng hang 214 = min{a}, Ù¿} = 15, xĩa các 6 cịn lại ở hàng
1 và cột 4 Bảng cịn lại duy nhất ơ (4, 1) chưa bị xĩa, ta phân phối lượng hang x4, = a, = b; = 20
Kết quả được các ơ chọn của phương án cực biên ban đầu như trong
Chọn hàng hay cột cĩ chênh lệch lớn nhất Nếu cĩ nhiều hàng (hay nhiều cột) như thế thì chọn một hàng (một cột) tùy ý trong số đĩ Phân phối lượng hàng lớn nhất cĩ thể vào ơ cĩ cước phí nhỏ nhất trên hàng (cột) đã chọn Giả sử ơ được chọn là (p, g), khi đĩ #„„ = min{à, Ùạ}
Bước 2 "Xĩa" các ơ trên hàng p, hoặc/và cột g đã hết khả năng phân
phối Tiếp tục trổ lại bước 1, với những ơ chưa bị "xĩa"
Bằng cách thực hiện các bước như trên cho tới lúc "xĩa!" hết các
ơ, cịn lại các ư chọn là cơ sở của phương án cực biên ban đầu.
Trang 10Ví dụ 3.3 Tìm phương án cực biên ban đầu của bài toán vận tải ở ví
dụ 3.2
Giải Bằng phương pháp Vogel, ta tìm được phương án cực biên ban
đầu như bảng 3.4
Bảng 3.4: Tìm phương án cực biên ban đầu của bài toán vận tải bằng
phương phap Vogel
Trang 11
152 3.1 Bài toán uận, tải
thì điểm phát thứ ¡ phát hết hàng, đồng thời điểm thu thứ 7 nhận đủ
hàng Và như thế 6 bước 2 ta cần xóa đồng thời các ô trên cả hang i
và cột 7
Để tránh phương án suy biến, ta cần xử lí như sau: thay vì chọn 6
có cước phí nhỏ nhất trong bảng (hoặc trong hàng/cột có chênh lệch
cước phí lớn nhất), ta chọn ô có cước phí nhỏ thứ nhì để phân phối
lượng hàng lớn nhất có thể, nếu vẫn xảy ra hiện tượng trên, ta chọn 6
có cước phí nhỏ thứ ba Diều này đảm bảo rằng: mỗi lần xóa các ô
không còn khả năng phân phối, ta chỉ xóa được các Ô trên một hàng
hoặc trên một cột
Sau khi đã tìm được phương án cực biên ban đầu, ta cần tìm phương
án tối ưu của bài toán Để làm được điều đó, ta cần sử dụng phương
pháp đặc thù sau đây
3.1.3 Phương pháp thế vị giải bài toán vận tải
Cơ sở lý luận của phương pháp
Cho bài toán vận tải (3.1), (3.2), (3.3), (3.4), ta có bài toán đối ngẫu
trong đó 1; là biến đối ngẫu ở hàng ¿, o; là biến đối ngẫu ở hàng j + m
Ta cũng gọi 1¿, ø; tương ứng là các ¿hế vi cha diém phat i, diem thu j
Kí hiệu
Aj; = Uj + Uj — Cig (3.10) gọi là các ước lượng ứng với cơ sở của phương án dang xết
Định lý 3.5 (Dấu hiệu tối ưu) Nếu tại phương ứn cục biến z tồn tại
các số tị, v; sao cho A;; =0 tai 6d chon va Aj; < 0 vdi mor (i, 7), thix
là phương án tối tưu
Trang 12CHUNG MINH Theo định lí độ lệch bù yếu (chương 2), ta có phương
án ø tôi ưu khi và chỉ khi tồn tại y = (ui, vj), i = 1,m, 7 = 1,n thỏa
mãn
tị +} 0 Š cự, - VỆ,3)
uz + VU; = đ¿j, VỚI (, 7) có #¿j > 0 (3.11)
Diều đó có nghĩa là z tối ưu khi và chỉ khi A¿; < 0, với mọi (¿, 7) và
Dinh lý 3.6 Nếu tại phương án cục biên +°, tồn tại A„y > 0 thà xây dựng được phương án cực biên mdi x} tét hon 7°
CHỨNG MINH Giả sử Œ là tập hợp mm + — 1 ô chọn của 2° R6 rang (r, k) # G Theo định lí 3.4 thì
Gt =GU {Ứ, k)}
có một chu trình 7' duy nhất Ta đánh số thứ tự các ô trên 7' kể từ ô
(r, k) là số 1, khi đó 7' gồm các ô mang số thứ tự lẻ, kí hiệu là 7” và các
Chú ý 3.3 a) Việc chứng minh các định lí 3.5 và 3.6 có thể suy ra trực
tiếp từ định lí 2.10 và 2.14 (chương 2) nếu ta chú ý tới đặc điểm đã
Trang 13154 3.1 Bài toán Uận tải
nêu của bài toán vận tải Vì lẽ đó, có thể coi phương pháp thế vị là trường hợp đặc biệt của phương pháp đơn hình
Dé tìm các thế vị wu, 0; trong định lí 3.5, ta cần giải hệ phương trình
Aj =0 © uị + 0j = cụ, với (,7) € G
Hé nay c6 m+n ấn và m + — 1 phương trình độc lập nên hệ có vô
số nghiệm phụ thuộc tham số Ta chỉ cần một nghiệm riêng của hệ
Đơn giản nhất là cho một ấn bằng 0 (thường chọn ẩn tham gia nhiều trong các phương trình của hệ) Từ đó suy ra cdc an con lai
e) Trong trường hợp ở định lí 3.6,
chọn
Nc = max Ags
Aiz>0
khi đó đưa ô (r, &) vao lam 6 chon
Thuật toán thê vị
Trang 14Tìm các thé vi uj, v; sao cho A;; = 0 tai (2,7) 6 chon
Tính các ude lugng Aj; = u; + vj — cj; tai (7,7) 6 loai
Buéc 2 Kiểm tra moi Aj; < 0 không?
Nếu có lKết luận: z° tối ưu
-+- Nếu không Chuyển sang bước 3
Buée 3 Chon A,, = max A;;, dua 6 (7, k) vao tap 6 chon
4>
Lập chu trình 7, xác định 7", 7”
Bước 4 Tìm z;„ = ( lận %;;, đưa (p, g) ra khỏi tập ô chọn
17)€T”
Buóc ð Xây dựng +! theo công thức biến đổi (3.13), tức là:
Giữ nguyên các 6 không thuộc chu trình 7'
Thêm vào ô lẻ (trên 7”), đồng thời bớt đi ở ô chan (trén T”) một lượng bằng #„„
Bước 6 Gần z° := z!, quay lại bước 1
Ví dụ 3.4 Giải bài toán vận tải ở ví dụ 3.2 bằng phương pháp thế vị
thite: u; = dự — tu¿ Và tu — Cig — Uj
Ta dude: v3 = C13 — Uy = 1; vs = Ci5 — Uy = 9, suy ra
Ug = C35 — Us = —7; U4 = Cay — V5 = —Ả
Suy ra
VU, = C13 — U3 = 10; vo = Cyn — U4 = 9;
U4 = C44 — U4 = 8; Uy = Co4 — U4 = —6
Tính các ước lượng A;;, điền vào góc trên bên phải của mỗi ô của
bảng Quy ước: các A¿; < 0 ta chỉ điền dấu âm (—) vào ô tương ứng Các 6 chọn là cơ sở của phương án cực biên không nhất thiết phải điền ước lượng (vì nó luôn bằng 0)
Trang 15156 3.1 Bài toán uận tải
Kiểm tra dấu hiệu tối ưu:
Từ bảng 3.6, ta thấy có A+¡, A4 dương nên phương án cực biên đang
xét chưa tối ưu
Tìm phương án tối ưu:
Do Ay, = maz{Ay,, Ay} = 5 nên ô (1, 1) được đưa vào tập 6 chọn
Ta có chu trình
Trang 16T = {(1,1), (1,5), (3,5), (3, 1)}-
Chu trình 7 gồm các ô lẻ là 7” = {(1,1), (3,5)}, va các 6 chan 1a
T" = {(1,5), (3, 1}
Do min{215, 231} = 215 = 15, loai 6 (1, 5) ra khdi tap ô chọn cơ sở
Bảng 3.7: Phương án tối ưu của bài toán van tai 1
Phương án mới có tập 6 chon nhu bang 3.7 Việc tìm các thế vị, tính
các ước lượng cho thấy phương án mới đã tối ưu (A;; < 0, V(i,7)) Vay bài toán có phương án tối ưu là
Ví dụ 3.5 Giải bài toán vận tải không cân bằng thu phát sau (bảng 3.8)
Giải Do tổng phát nhỏ hơn tổng thu nên ta thêm vào một điểm phát giả với lượng phát aạ = 2 và cước phí œ; = 0, 7 = 1, 2, 3 Khi đó với
phương án cực biên ban đầu tìm được, ta có thể kiểm tra điều kiện tối
ưu của nó (bảng 3.9)
Trang 17158 3.1 Bai todn van tai
ý là các ô ở hàng phát giả không thể tham gia vào việc chọn ô bổ sung
(để phân phối lượng hàng lớn nhất có thể), nhưng có thể tham gia vào
tập 6 chọn cơ sở của phương án cực biên ban đầu Ỏ bảng 3.9, ta thấy
Ai; <0, V(i,j) nén phương án là tối ưu Để ý là z;¿ = 2 > 0 cho thấy
chỉ có điểm thu thứ 2 thu không đủ Với phương án tối ưu tìm được,
0 8 12
4 =
15 15 07
ta có cước phí nhỏ nhất là finin = 139
Trang 183.1.4 Một số bài toán ứng dụng của bài toán vận tải
Bài toán phân phối nguồn lực lao động
Bài toán phân phối là bài toán quy hoạch tuyến tính có hệ ràng buộc
giống như hệ ràng buộc của bài toán vận tải nhưng với yêu cầu làm cực
đại hàm mục tiêu Mô hình toán học: Tìm z = (z;;) để
thứ 7 được phân bổ vào hạng mục thứ j
e z„; là lượng nguồn lực thứ i cần phân bổ vào hạng mục thứ j
Việc giải bài toán phân phối là tìm phương án phân bổ nguồn lực tối
ưu để hàm lợi nhuận đạt giá trị lớn nhất
Trang 19160 3.1 bài toán uận tải
Phương pháp giải
Dể tìm phương án tối ưu cho bài toán phân phối, ta có thể áp dụng
phương pháp thế vị như giải bài toán vận tải Tuy nhiên cần điều chỉnh
cho phù hợp như sau:
Buéc 1 Kiem tra diéu kién cin bằng nguồn lực
Bước 9 Tìm phương án cực biên ban đầu:
Trên bảng năng suất, chọn ô có năng suất cao nhất và phân
bổ lượng nguồn lực lớn nhất có thể được Sau đó xóa bổ các
ô không còn khả năng phân bổ trên dòng hoặc cột chứa ô đó
Lặp lại việc "chọn" và "xóa" sau một số hữu hạn lần để được phương án cực biên ban đầu Đối với phương pháp chọn Vogel cũng điều chỉnh tương tự
Bước 3 liễm tra tiêu chuẩn tối ưu: Tìm hệ thống thé vi u;, v;, tinh cdc
ước lượng A¿; giống như bài toán mịn
+ Néu Aj; > 0, Vi = 1,m, } = 1,m= thì phương án đang xét là toi uu Két ludn va tinh Idi nhuan 16n nhat
+ Nếu tồn tại A¿; < 0 thì phương án đang xét chưa tối ưu
Chuyển sang bước 4
Bước 4 Diều chỉnh phương án cũ để được phương án mới tối ưu hơn:
Giả sử ô (r, k) có Az = mn{A¿; < 0} Khi đó,
+ Ô Ứ, k) được bổ sung vào tap 6 chọn cơ sổ và lập thành chu
trình 7' Gọi 7" là tập các ô lẻ, 7” là tập các ô chấn của chu trình
+ ÔÚ, q) có #„„ = ere {z„ > 0} bị loại ra khỏi cơ sở i,j )€T”
Quay lại bước 3
Sau một số hữu hạn lần lặp lại các bước, ta tìm được phương án tối
> ue Z
ưu của bài toán
Ví dụ 3.6 Một xưởng sẩn xuất có 50 công nhân chia thành 3 nhóm
NI, N2, N3 để cung cấp lao động lam 4 cong viée J, IJ, III, IV Nang suất làm việc (tính bằng tiền hoặc sản phẩm) của mỗi nhóm được phan
Trang 20bổ vào các công việc (coi năng suất của mỗi người trong một nhóm là như nhau) được cho trong bảng 3.10
Bảng 3.10: Thông tin năng suất lao động theo vị trí công việc
Công việc | I |HI |HI |IV
Ta thay c¡a = cai = 5 là hai năng suất lớn nhất trong bang, chon 6
(1, 5) và phân bổ lượng công nhân z¡¿ = 8 Xóa các ô còn lại trên cột
3 Lặp lại việc chọn và xóa, cuối cùng ta được phương án cực biên như bang 3.11
Bang 3.11: Tìm và điều chỉnh phương ấn cực biên ban đầu của bài toán phân phối lao động
Trang 21
162 3.1 Bài toán uận tải
Trong bảng 3.11, tính các thế vị và các ước lượng ứng với phương
ấn cực biên ban đầu Với quy ước: nếu A¿; > 0 thì điền dấu + ở
góc trên bên phải của ô, các ô chọn ta không điền ước lượng Do chi c6 Ag, = —1 < 0, nên ta bổ sung ô chọn (2, 1), thiết lập chu
trình 7 = {(2, 1), (2, 4), (3, 4), (3, 1)} bao gồm tập ô lễ của chu trình T’ = {(2,1), (3,4)} và tập ô chẵn của chu trình 7” = {(2,4), (3,1)} Do
2a = mởn{2x, #34} = 6, nên ô (2, 4) bị loại ra khỏi tập 6 chon Dén
đây ta đã thiết lập được phương án mới bằng việc điều chỉnh phương án
Đối với phương án mới, tiếp tục kiểm tra dấu hiệu tối ưu Tìm các
thé vị, tính ước lượng tại mỗi ô của bảng 3.12 ta được: A;; > 0, W, 7
Phương án đã tối ưu
Vậy phương án phân công lao động tối ư u là
0 0 8 7 z= |6 12 0 0,
4 0 0 1ä
khi đó tổng năng suất cực đại là ƒ„„„ = 192
Trang 22Bài toán ô cầm
Trong thực tế ta thường gặp tình huống điểm thu (hạng mục) thứ j không thể nhận hàng (nguồn lực) của điểm phát (nhóm nguồn lực) thứ
¿, khi đó ô (2,7) được gọi là ô cấm Bài toán vận tải hay bài toán phân
phối có thêm yêu cầu trên được gọi là bà¿ oán ô cắm Muốn tìm phương
án tối ưu của bài toán vận tải có ô cấm (i, 7), ta coi cước phí vận chuyển
ở ô cấm là vô cùng lớn Khi đó trong phương án vận chuyển tối ưu sẽ không có hàng từ điểm phát 7; đến điểm thu 7; Trên bang vận tải, quy
ước cudc phi ¢;; = M > 0 đủ lớn Còn đối với bài toán phân phối có 6 cấm (2,7) thì quy ước năng suất œ;; = —M, với Ä⁄ là số dương đủ lớn
Ví dụ 3.7 Giải bài toán vận tải ở ví dụ 3.5, biết rằng điểm thu 7; phải nhận đủ hàng
Giải Diễm phát thứ 2 phải thu đủ hàng tức là trong phương án tối
ưu của bài toán phải có #1s + a¿ = 25 Nói cách khác, điểm phát gid P;
không thể phân phối tai 6 (3,2), và caạ = Ä > 0, lớn tùy ý Trong khi
tổng phát nhỏ hơn tổng thu nên có thể coi các điểm phát phải phát hết hàng, vì vậy một trong hai điểm thu thứ nhất và thứ 3 không thu đủ Lượng hàng "ghi nợ" này sẽ được phân phối vào ô (3, 1) hoặc ô (3, 3) khi
bài toán đạt phương án phân phối tối ưu
Bang 3.13: Phương án cực biên của bài toán vận tải có ô cấm
Từ phương án cực biên đã có được ở bảng 3.9, kiểm tra điều kiện tối
ưu của phương án đó với điều kiện ô cấm (3,2) (bảng 3.13)
Trang 23164 3.1 Bài toán uận tải
Tìm hệ thống thế vị: cho ạ = Ö, suy ra 0s = Cịa — tị = 5, v3 = C13 — Uy = 2 Te dé ug = Coq — vg = —1, ug = G32 — 0y = M — 5 và V1 = Co, — Ug = 2
Tinh các ước lượng của phương án cực biên đang xót, ta thấy phương
án chưa tối ưu, vì bảng có Az¡ = Aas = M—3 >0 Bổ sung ô (3, 1) vào
tap 6 chon để lập chu trình 7' = {(3,1), (3,2), (2,2), (2,1)} (bảng 3.13)
Từ đó ta lập phương án mới như ở bằng 3.14
Bảng 3.14: Phương án tối ưu của bài toán vận tải có ô cấm
Với phương án mới được điều chỉnh, kiểm tra thấy rằng mọi ước lượng
đều không âm Vậy ta có phương án tối ưu (bảng 3.14):
Trang 24với các điều kiện:
kiện biến bị chặn trên Ta gọi đ;; là kha nang thong qua, biéu thi lượng
hàng tối đa có thể chuyển từ điểm phát thứ ¡ đến điểm thu thứ 7
Bài toán hạn chế khả năng thông qua là một dạng đặc biệt của bài toán QIHTT và có câu trúc tương tự bài toán vận tải, nên có thể điều
Nếu không phân phối hết hàng, ta lập điểm phát giả a„¡¡, điểm
thu giả bp41, với Om41 = bn41 = 3 là lượng hàng thừa chưa được
phân phối Các ô cấm được coi có cước phí ă > 0 lớn tùy ý,
có khả năng thông qua vô hạn Ô (m + 1,ø -+- 1) eó cước phí Cm 1,a+ì = 0 Lúc này, các ô được phân phối lượng hàng z¿¡:
- Nếu 0 < 24; < dj; thi (i,7) goi 1A 6 loai 1 (6 chon)
- Néu 2;; = 0 (khéng ghi vao 6) thi (i, 7) goi là 6 loai 2
- Nếu 2;; = d;; thi (4,7) goi 1a 6 loai 3
Tim hé thống thé vi Với chú ý rằng: nếu số ô loại 1 nhỏ hơn
n + mz„— 1 thì ta chọn thêm một số ô loại 2 hoặc loại 3 sao cho
tập 6 chọn được bổ sung không chứa chu trình
Kiểm tra tiêu chuẩn tối ưu: Tính các Ag = tg Ftp Gy Néu Ai; < 0 vdi moi 6 loai 1, loai 2 va A;; > 0 vdi moi 6 loại 3 thi
phương án đang xét tối ưu Ngược lại, chuyển sang bước 4 Xôụ dựng phương án mới: Ô (r, k) được bỗ sung vào tập 6 chon
để phân phối lượng z„„¿ lớn nhất có thể là: ô loại 2 có ước lượng
dương lớn nhất hoặc ô loại 3 có ước lượng âm nhỏ nhất Tiếp
Trang 25166 3.1 Bai todn van tai
gq = min{z;; : (i,j) 1&6 mang dau 4m (—)}
go = min{d;; — xj; : (i,j) 1A 6 mang dau duong (+)} Nếu bài toán có 2m4inyi = $ thi ta bỏ hàng điểm phát giả, cột
điểm thu giả
Nếu bài toán có phương án tối ưu với lượng hàng #„11„¡1i < # thì bài toán gốc không có phương án tối ưu
Ví dụ 3.8 Cho bài toán vận tải với khả năng phân phối hàng bị han chế (giá trị để trong ngoặc) được cho trong bảng 3.15 Xác định phương
án tối ưu để ham chi phi dat giá trị nhỏ nhất
Bảng 3.15: Bảng cước phí bài toán vận tải hạn chế khả năng phân phối
Trang 26Bảng 3.16: Phương án cực biên ban đầu của bài toán vận tải hạn chế
khả năng phân phối
M M M 0
(1, 2) để tập ô cơ sở đủ + — 1 = 7 6 chọn và tập ô chọn này không chứa chu trình
Tìm hệ thống thế vị và tính các ước lượng (bang 3.17):
Bảng 3.17: Điều chỉnh phương án cực biên của bài toán hạn chế khả năng
phân phối vận tải
Trang 27
168 3.1 Bài toán uận tải
Uy = C21 — Vy = 3, Us = €39 — Vo = 1, U4 = Caz — U3 = M—6,% = C34 — UZ = M — I1
Tính các ước lượng, ta thấy ô (4, 4) là ô loại 2 có ước lượng dương lớn nhất, do đó phương án chưa tối ưu Dồng thời bổ sung ô (4, 4) vào
tập 6 chon cũ để xây dựng phương ấn mới
Tai bang 3.17, lap chu trình
T = {(4,4), (3,4), (3,2), (1,2), (1,3), (4,3)}, trong đó
T’ = {(4,4), (3,2), (1,3)}, 7” = {(3,4), (1,2), (4,3)}
Vi 6 bổ sung (4, 4) 18 6 loai 2, mang d&u (+) nén điều chỉnh tăng Xác định lượng điều chỉnh q = min{zxj; : (4,7) € T”} = 5 Cac 6 thuộc 7T” điều chinh gidm lugng q, các ô thuộc 7” điều chỉnh tăng lượng g (vẫn
đảm bảo khả năng thông qua tại các ô tương ứng), các ô còn lại giữ
Do #44 = 5 nén ta xóa hang 4 và cột 4 Tính lại hệ thống thế vị đối
với phương án mới ở bảng 3.18, kiểm tra các ước lượng ta thấy A;; < 0 với mọi Ô loại 1, loại 2, A¿; > 0 với mọi ô loại 3 Vậy phương án mới đã
tối ưu, tổng chi phí vận chuyển đạt cực tiểu bằng 300
Trang 283.2 Bài toán sản xuất đồng bộ
3.2.1 Một số khái niệm
Giả sử có ra máy khác nhau Ä⁄;, Mạ, , Á⁄„ tham gia sẵn xuất n chỉ
tiết khác nhau Œ), ;, ,C„„ Các bộ chỉ tiết sẽ lắp ráp thành các sản phẩm hoàn chỉnh Năng suất máy thứ ¿ (số chi tiết/1 đơn vị thời gian) sản xuất chi tiết thứ 7 là œ¿; Giả thiết rằng:
- Mỗi loại máy chỉ có 1 chiếc;
- Mỗi sản phẩm cần 1 chi tiết mỗi loại, tức là mỗi bộ ø chỉ tiết khác
nhau nêu trên sẽ tạo thành 1 sản phẩm Như vậy số sản phẩm tạo ra,
trong 1 đơn vị thời gian bằng số chỉ tiết Œ; nào đó được sẵn xuất ra ít nhất trong số ø loại chi tiết được sản xuất trong cùng một đơn vị thời
gian đó
Hãy bố trí thời gian sử dụng các máy sản xuất sao cho số sản phẩm
đủ bộ (đồng bộ) sẩn xuất được là nhiều nhất
Bây giờ ta xây dựng mô hình toán học của bài toán sản xuất đồng
Gọi z¡¿; là số phần thời gian (trong một đơn vị thời gian) mà máy thứ
i san xuất chỉ tiết thứ 7, khi đó ta có:
TL
z¡„; > 0 và 3) ¿;¡ <S 1, Vi = 1,2, ,m, j = 1,2, ,m
j=l
Số chỉ tiết 7 sản xuất được bởi máy ¿ là œ#¿;, V2 = 1,m, do đó tổng
số chi tiết j sản xuất được bởi tất cả các máy là:
Trang 29170 3.2 Bài toán sẳn xuất đồng bộ
Tìm Z và ma trận X = (Z¡7)mxø dé
fiZ,X)=2= min{Ồ ` CigLig} 4 Max (3.19)
= với các điều kiện:
(3.22) được gọi là phương án của bài toán sản xuất đồng bộ
Phương án mà tại đó hàm mục tiêu đạt cực đại đại gọi là phương ấn
tối ưu của bài toán
Với bất kì ma trận X = (Z¡)„x„ thỏa mãn các ràng buộc (3.20), (3.22) cũng cho tương ứng một họ phương án với Z xác định như sau:
0<#Z< mịn {Z;},
trong đó phương 4n X ma Z = mịn {Z;} = min { > Ci5Xiz } 1 tot nhat
Ta coi ma trận X = (Z;;)„x„ thỏa mãn các ràng buộc (3.20), (3.22)
là một phương án của bài toán sản xuất đồng bộ với Z được hiểu là
2 = tâm {Z;}
Để thuận tiện cho việc xây dựng phương pháp giải bài toán san xuất
đồng bộ, ta đặt giả thiết c„ > 0, với mọi ¡, 7, nghĩa là mỗi chỉ tiết 7 phải được sản xuất bởi ít nhất là một máy và mỗi máy ¿ phải sản xuất được
ít nhất một loại chi tiết
Trong trường hợp tổng quát:
Trang 30e Nếu máy loại ¿ có ¿¿ chiếc tham gia vào quá trình sản xuất thì ta coi chỉ có một chiếc máy loại này, với năng suất được quy ước:
= lu Vj = I,n
/
ij
e Nếu có k; đơn vị chỉ tiết 7 cấu thành nên mỗi sản phẩm đồng bộ
thì ta coi như chi tiết 7 chỉ có một đơn vị, với năng suất được quy
Do đó, về lý thuyết ta chỉ cần nghiên cứu phương pháp giải bài toán sản xuất đồng bộ như đã nêu ở trên là đủ
Bài toán (3.19), (3.20), (3.21), (3.22) được viết dưới dạng tường minh như sau:
Bai toán đối ngẫu của bai todn san xuất đồng bộ:
Tim céc s6 u = (wu) viv = (v;), 4 =1,m, j =1,n de
Trang 31172 3.2 Bai ton san xuât đồng bộ
3.2.2 Tính chất của bài toán sản xuất đồng bộ
Định lý 3.7 Đài toán sản xuất đồng bộ luôn có phương án tối uu
Trang 32bị chặn trên bởi Ở trên tập phương án, nên bài toán có phương án tối
Giả sử ai #0, ta có thể giả sử œ¡ = 1 (vì nếu không, ta chỉ việc chia,
cả hai vế của đẳng thttc trén cho a, # 0) Từ thành phần thứ nhất của đẳng thức trên ta có 1 — Am41C11 = ÔÚ, suy ra œ„¡¡ > 0, tương tự ta có
Định lý 3.10 Nếu hệ thống số {(u¿, 0j) : ¿ = 1,m, j = 1,n} là phương
án của bài toán đối ngẫu thà u¿ > 0, ¡¿ = 1,1m
CHÚNG MINH Từ điều kiện đối ngẫu (3.25), (3.26) suy ra tồn tại v; > 0, két hợp với điều kiện (3.24) và cj > 0, W¿ = 1,7m, j = 1,7, ta
Trang 33174 3.2 Bài toán sẳn xuất đồng bộ
Nhận xét 3.2 Nếu X* = (: E5) xn và {(u*, 0°): ¿= 1,mn, j = 1,m} là
phương ấn tối ưu của bài toán gốc và bài toán đối ngẫu thì
ee =lmva À3) 0 =
j=1 j=l
Theo định lí 3.8, định lí 3.10 và định lí độ lệch bù yếu, ta có thể chứng minh nhận xét này
án tối ưu của bài toán gốc phải thỏa mãn zj, = 0, Vi = 1,m, do đó
chi tiết 7o không có, bức là Z = 0, mâu thuẫn với định lý 3.§ Vậy
Hệ quả 3.3 Nếu X* = (BE din va {(u*, v*): i=1,m,7 =1,n} la ij
phương đn tối ưu của bài toán gốc uà bài toán đối ngẫu thà
Có nghĩa là, nếu +* là phương án tdi uu thi sd céc chi tiét sdn xuất
ra phải bằng nhau: Z\ = 2a = = Zp
Định lý 3.12 Nếu hệ thống số {(u¡, 9¿) : ¿ = 1,m, j = 1,n} là phương
án cực biên của bài toán đối ngẫu th Š ` 0; = 1
a)
CHUNG MINH Gia sit {(uj, vj) : 4 = l,m, j = 1,n} 1& phương án
cực biên của bài toán đối ngẫu mà không thỏa mãn )> v; = 1 Khi dé
3
nó phải thỏa mãn chat m+n rang buộc độc lập tuyến tính dạng:
t¿ — C¿7Ù7 — 0, với Vi € tị, Vj = Ji, va UK = 0, với Vk = Jo
trong đó ïị, J¡, J; là tập chỉ số nào đó thỏa mãn
C {1,2, ,m}; Ji, Jo C {1,2, ,m„} và J\ U J¿ = Ø
Hệ trên có duy nhất một nghiệm tầm thường:
u¿ = 0, Vị € 3 vj = 0, VI € AN Jo.
Trang 34Điều này mâu thuẫn với định lý (3.10) nói rằng 1u; > 0, Vi = I,m
j=l
Chú ý 3.4 Dịnh lí 3.12 vẫn đúng trong trường hợp tồn tại ¢;; = 0, chỉ
cần:
max{ cis } >0, V7 = 1,n và max{ ci; } > 0, Vi = 1,m
Nhận xét 3.3 Giả sử (u¿, 0;) là phương án tùy ý của bài toán đối ngẫu r A = 1, ta sẽ trực tiếp suy ra phương án (ut, 0;) thỏa mãn
» œ; = 1 nhờ phép biến đổi tỉ lệ sau:
tức là phương án {(¿, ø;)} tốt hơn phương án cũ Tuy nhiên, ta sẽ coi
hai phương án này là tương đương nhau theo nghĩa từ phương án này
trực tiếp suy ra được phương án kia nhờ một phép biến đổi tỷ lệ, vì vậy
ta cố coi chúng như chỉ là một phương án
Tổng quát hơn, các phương án {(¿, vj): 2 = 1,7n, j = 1,n} chỉ khác
nhau một thừa số nhân thì được coi như là một phương án
Từ định lý 3.11 và định lý 3.12, để tìm phương án tối ưu của bài
toán đối ngẫu ta chi can tim nó trong số các phương án của bài toán đối ngẫu làm thỏa mãn chặt m -E ø — I ràng buộc độc lập tuyến tính dạng
dạ — đu = 0 (mỗi dòng và mỗi cột đều phải có ít nhất một ô (2,7) mà
th; — C;7Uj7 = 0)
Dinh ly 3.13 Tập hợp ?n + n — Ì ô ứng uới rn + n — Ì phương trình
Trang 35176 3.2 Bài toán sản xuất đồng bộ
Mỗi phương án cực biên suy rộng của bài toán đối ngẫu được gọi là
hệ thống nhân tử của bài toán sản xuất đồng bộ, các số „¿ được gọi là
nhân tử của dòng ¿, các số 0; được gọi là nhân tử của cột 7
3.2.3 Phuong pháp nhân tử giải bài toán sản xuất đồng bộ
Tìm phương án cực biên suy rộng ban đầu
Trên bảng năng suất, tìm ö có năng suất lớn nhất Giả sử 6 đó là ô
(r,k), ta cho nhân tử cột k là ø¿ = 1, nhân tử của các dòng và các cột khác được tính theo các bước sau:
Bước 1 Nếu cột k đã có nhân tử, dò theo cột ấy, tìm ö có năng suất cao
nhất trên những dòng chưa có nhân tử, giả sử là ô (p, k), viết
nhân tử cho dòng p theo công thức:
Up = mma#z{e„;9;, với mọi cột j đã có nhân tử} (3.27)
Ô tương ứng với tích lớn nhất này được lấy làm ô chọn
Bước 2 Nếu dồng p đã có nhân tứ, đò theo dòng ấy, tìm ô có năng suất
cao nhất trên những cột chưa có nhân tử, giả sử là ô (p, g), viết
nhân tử cho cột g theo công thức:
Trang 36Ấp dụng nguyên tắc trên sau một số hữu hạn bước lặp ta tìm được
hệ thống mm -L „ SỐ ¿, 0, ¿ = 1,7m, j = 1,7m và ?m +?» — 1 6 chọn (vì mỗi
ô chọn ứng với mệt nhãn tứ, riêng Ô (z, k) ứng với hai nhân tử ø; = 1
và, u„ —= c„„) Các 6 chọn này đảm bảo không tạo thành chu trình Trong
bảng ta đánh dấu các ö chọn bằng dấu "*"!,
Chú ý rằng, nếu cực đại (3.27) hoặc cực tiểu (3.28) đạt tại nhiều ô
thì có thể lấy tùy ý một trong các 6 đó làm ô chọn
Dinh ly 3.14 Hé thing m+n 86 (uj, vj): i = 1,1m, j = 1,n tầm được theo phương pháp trên là một phương án cực biên của bài toán đối ngẫu
CHỨNG MINH Từ các bước xác định 1, 0; ta có
tu — €0; > Ö, uị > Ö, 0j >0, ¿ = 1,1m, 7 = 1,n,
con tai cac 6 chon thi u; — jv; = 0
Ngoai ra cting theo phudng phap trén, cac 6 chon không tạo thành chu trình Ta cũng có số 6 chọn bao giờ cũng là ?m » — 1 Do đó hệ
théng m+n sd {(uj, vj): ¡ = 1,1m, j = 1,m} thỏa mãn e n— 1 phương trình độc lập tuyến tính, vì vậy hệ thống số tìm được theo phương pháp
trên lập thành một phương án cực biên của bài toán đối ngẫu L] ]l«í hiệu tập các ô chọn là G, khi đó
Trang 37
178 3.2 Bài toán sản xuất đồng bộ
Giải Quan sat bang trên, ô (3, 1) có năng suất cao nhất với cai = 4ð,
cho nhân tử cột 0¡ = 1
Trên cột 1, ô (3, 1) có năng suất cao nhất trên các dòng chưa có nhân
tử nên uạ = 45.1 = 45, đạt tại ô (3,1) nên lay 6 (3,1) làm ô chọn như
nhân tử nên vp = Tg = 3, đạt tại ô (3, 2) nên lay 6 (3, 2) lam 6 chon
Trên cột 2, ô (1,2) có năng suất cao nhất trên các dòng chưa có nhân
tử nên uy = maz {18.1; 40.3} = 120, dat tai 6 (1, 2) nên lấy ô (1, 2) làm
Trên cdt 3, 6 (2, 3) 14 6 duy nhat ứng với dòng chưa có nhân tử nên
ug = maz {31.1, 16.3, 22.5} = 110, dat tai 6 (2, 3) nén lay 6 (2, 3) lam
6 chon
Nhu vay ta d& xAc dinh duoc hé théng nhan ttt (uj, v;), cting 1a phương án cực biên suy rộng của bài toán đối ngẫu với bài toán đã cho
Xây dựng hệ thông ước lượng và tiêu chuẩn tôi ưu
Ta tính z¿; và Z nhờ phương án cực biên (u;,9;) của bài toán đối
Trang 38ngẫu theo các phương trình sau:
Khi có Z ta tính tiếp z;; theo các phương trình (3.32), (3.33), (3.34)
m
Néu 2;; > 0, V(i,7) thi hé théng nhân tử tương ứng là phương án tối
ưu của bài toán đối ngẫu, do đó ma trận X = (z;;) là phương án tối ưu của bài toán sản xuất đồng bộ đã cho
Nếu tồn tại ö chọn (2, 7°) mà z;s; < 0 thì hệ thống nhân tử tương
ứng chưa phải là phương án tối ưu của bài toán đối ngẫu Trong trường hợp này ma trận X = (z;;) được gọi là giả phương án của bài toán sản
xuất đồng bộ, các #¿;, ¿ = l,?m, j = 1,1% được gọi là hệ thống ước lượng
của phương án cực biên của bài toán đối ngẫu
Điều chỉnh phương án
Giả sử trong giả phương án X = (z) tồn tại 6 chọn (2°,7°) mà
%;s;j < 0, khi đó ta xây dựng phương án mới tốt hơn bằng cách điều chỉnh phương ấn cực biên suy rộng (u¿, 0;) ứng với z¿
Trang 39180 3.2 Bai toán sản xuất đồng bộ
Nguyên tắc điều chỉnh: nhần tử nào bị điều chỉnh thì được nhân với
A, nhân tử nào không bị điều chỉnh thì giữ nguyên À gọi là bệ số điều
chỉnh Hàng (cột) có nhân tử bị điều chỉnh gọi là hừng (cột) điều chẳnh
và đánh dấu "+-" vào hàng (cột) đó Hàng (cột) nào không điều chỉnh
Theo nguyên tắc điều chỉnh, nếu ô (¿, 7) có
® u¿ = uị và 0; = v; thi điều kiện (*) được thỏa mãn;
® u¿ = Àu; và 0; = Àu; thì điều kiện (*) thỏa mãn với mọi À > 0;
e ¿ — Àu¿ và 0; = 0¿ thì (*) được thỏa mãn khi và chỉ khi À > 1
tt;
eu, = uj va v; = Av; thi (*) dude thỏa mãn khi À <
Ci D7
Ta thuc hién diéu chinh nhu sau:
Bước 1 Tìm ô đưa ra (¿°, 72) mà #;s;ø < 0 Hàng 2° bị điều chỉnh Đánh
dấu " " cho hàng ?° và đánh dấu "—"' cho cột 7°
Bước 2 Trên hàng ¿ có dấu " !", ta đánh dấu " ! cho các cột có 6 chon
nằm trên hàng này và chưa được đánh dấu
Buóc 3 Trên cột 7 có đánh dấu " "_, ta đánh dấu " " cho hàng nào có
ô chọn nằm trên cột này và chưa được đánh dấu
Tiếp tục lặp lại bước 2 và bước 3 cho đến khi không đánh được thêm dấu !"-" nào nữa Các hàng và cột chưa có dấu sẽ được đánh toàn dấu "—"', Các hàng và cột có dấu "-L" là các hàng và cột điều chỉnh Gọi K là tập các ö có hàng không điều chỉnh (u¿ = u;) và cột điều chỉnh (0; = Àwj)
Trang 40Thuật toán nhân tử giải bài toán sản xuất đồng bộ
Buóc 1 Xây dựng phương án cực biên suy rộng ban đầu của bài toán
đối ngẫu là œÌ = (u;, 9;) với tập ô chọn G
Buéc 2 Kiém tra tiêu chuẩn tối ưu
Từ phương án cực biên suy rộng ! = (u;,0;) ta thực hiện các thao tác sau:
+ Nếu tồn tại z„; < 0 thì chuyển sang bước 3
Bước 3 Diều chỉnh chỉnh phương án cực biên suy rộng (uj, 0;) (giả