Chương 6
Một số Bài toán đặc biệt
có liên quan đến
Quy Hoạch Tuyến Tính
2
C6. Một số Bài toán đặc biệt
có liên quan đến QHTT
1. Bài toán vận tải
(Transportation Problem)
2. Bài toán phân công
(Assignment Problem)
3. Bài toán dòng chảy tối đa
(Maximum Flow Problem)
4. Bài toán đường đi ngắn nhất
(Shortest Path Problem)
3
1. Bài toán vận tải
(Transportation Problem)
1.1. Thiết lập Bài toán vận tải (Transportation Problem)
Các điểm nguồn (Sources) (i) và Khả năng cung cấp của từng điểm nguồn (Supply) (s
i
).
Các điểm đích (Destinations) (j) và Nhu cầu của từng điểm đích (Demand) (d
j
).
Chi phí vận chuyển cho 1 đơn vị hàng hóa từ Điểm nguồn đến Điểm đích (c
ij
).
Ký hiệu:
•
m: Tổng số Điểm nguồn.
•
n: Tổng số Điểm đích.
•
s
i
: Khả năng cung cấp của Điểm nguồn i (i = 1, 2, …, m).
•
d
j
: Nhu cầu của Điểm đích j (j = 1, 2, …, n).
•
x
ij
: Lượng hàng chuyên chở từ Điểm nguồn i (i = 1, 2, …, m) đến Điểm đích j (j = 1,
2, …, n).
•
c
ij
: Chi phí vận chuyển một đơn vị hàng hóa từ Điểm nguồn i (i = 1, 2, …, m) đến
Điểm đích j (j = 1, 2, …, n).
4
1. Bài toán vận tải (tt1)
1
2
i
m n
j
2
1
s
1
s
2
s
i
s
m
d
1
d
2
d
n
(c
mn
, x
mn
)
(c
11
, x
11
)
Điểm nguồn
Điểm đích
(c
ij
, x
ij
)
d
j
5
1. Bài toán vận tải (tt2)
Dạng QHTT của Bài toán vận tải
∑∑
= =
=
m
1i
n
1j
ijij
xc Min Z
ji,0x
n1,2, ,jdx
m1,2, ,isx:Rb
ij
m
1i
jij
n
1j
iij
∀≥
=≥
=≤
∑
∑
=
=
∑ ∑
= =
≥
m
1i
n
1j
ji
ds
Điều kiện:
6
1. Bài toán vận tải (tt3)
Dạng cân bằng (Balanced Model) của Bài toán vận tải
∑∑
= =
=
m
1i
n
1j
ijij
xc Min Z
ji,0x
n1,2, ,jdx
m1,2, ,isx:Rb
ij
m
1i
jij
n
1j
iij
∀≥
==
==
∑
∑
=
=
∑ ∑
= =
=
m
1i
n
1j
ji
ds
Điều kiện:
7
1. Bài toán vận tải (tt4)
VD 1:
Một doanh nghiệp nhỏ có 3 kho chứa hàng (10 loại hàng) trung chuyển với
khả năng cung cấp hàng ngày là 120, 140 và 100 sản phẩm. Giả sử hàng
ngày phải được vận chuyển đến 4 điểm bán lẻ với nhu cầu là 100, 60, 80,
120 sản phẩm. Bài toán đặt ra là xác định PA vận chuyển để tốn ít chi phí
nhất nếu chi phí vận chuyển 1 đơn vị hàng hóa giữa các kho trung chuyển
và điểm bán lẻ được cho trong bảng sau:
Kho
Điểm bán lẻ
1 2 3 4
1 5 7 9 6
2 6 7 10 5
3 7 6 8 1
8
1. Bài toán vận tải (tt5)
Bài toán QHTT được thiết lập:
Min 5x
11
+ 7x
12
+ 9x
13
+ 6x
14
+ 6x
21
+ 7x
22
+ 10x
23
+ 5x
24
+
7x
31
+ 6x
32
+ 8x
33
+ x
34
Rb: x
11
+ x
12
+ x
13
+ x
14
= 120
x
21
+ x
22
+ x
23
+ x
24
= 140
x
31
+ x
32
+ x
33
+ x
34
= 100
x
11
+ x
21
+ x
31
= 100
x
12
+ x
22
+ x
32
= 60
x
13
+ x
23
+ x
33
= 80
x
14
+ x
24
+ x
34
= 120
x
ij
≥ 0 i = 1, 2, 3; j = 1, 2, 3, 4
Lưu ý: Trong các ràng buộc trên, có một ràng buộc thừa có thể được loại bỏ.
9
1. Bài toán vận tải (tt6)
Chuyển BTVT Dạng không cân bằng về Dạng cân bằng
1. Nếu
•
Tạo 1 điểm đích giả (Dummy Demand Node) với Nhu cầu bằng
•
Gán chi phí vận chuyển đơn vị từ mọi điểm nguồn đến điểm đích giả bằng
0. Tức là c
i, n+1
= 0; i = 1, 2, …, m.
2. Nếu
•
Tạo 1 điểm nguồn giả (Dummy Supply Node) với Khả năng cung cấp bằng
•
Gán chi phí vận chuyển đơn vị từ điểm nguồn giả đến mọi điểm đích bằng
0. Tức là c
m+1, j
= 0; j = 1, 2, …, n.
∑ ∑
= =
>
m
1i
n
1j
ji
ds
∑ ∑
= =
<
m
1i
n
1j
ji
ds
∑ ∑
= =
+
−=
m
1i
n
1j
ji1n
dsd
∑ ∑
= =
+
−=
n
1j
m
1i
ij1m
sds
∀
∀
10
1. Bài toán vận tải (tt7)
Dạng bảng của Bài toán vận tải (Transportation Tableau)
1. Thiết lập 1 ma trận, với các hàng -> các Điểm nguồn,
các cột -> các Điểm đích.
2. Lập 1 cột sau cùng của bảng -> Khả năng cung cấp của
từng Điểm nguồn và 1 hàng sau cùng -> Nhu cầu của
từng Điểm đích.
3. Giá trị của các ô -> Lượng hàng vận chuyển giữa Điểm
nguồn và Điểm đích tương ứng.
4. Góc trên của từng ô -> Chi phí vận chuyển đơn vị giữa
Điểm nguồn và Điểm đích tương ứng.
11
1. Bài toán vận tải (tt8)
VD: Xét VD 1, nghiệm ban đầu của VD 1 xác định theo pp góc Tây Bắc
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1
x
11
x
12
x
13
x
14
120
2
x
21
x
22
x
23
x
24
140
3
x
31
x
32
x
33
x
34
100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
Lượng hàng vận chuyểnChi phí vận chuyển
12
1. Bài toán vận tải (tt9)
1.2. Tìm lời giải ban đầu cho Bài toán vận tải
B1. Tìm lời giải ban đầu và kiểm tra xem nó tối ưu chưa. Nếu chưa,
chuyển sang B2.
B2. Cải thiện nghiệm ban đầu cho đến khi đạt được điều kiện tối ưu.
Cũng như BT QHTT, việc tìm ra 1 nghiệm khả dĩ ban đầu cho BTVT
là rất quan trọng. Để tìm lời giải ban đầu cho BTVT ở dạng bảng,
một số pp đã được đề nghị.
PP góc Tây Bắc (The Northwest Corner Method)
PP chi phí bé nhất (The Minimal Cost Method)
PP xấp xỉ Vogel (The Vogel’s Approximation Method – VAM)
13
1. Bài toán vận tải (tt10)
1.2.1. Phương pháp góc Tây Bắc (The Northwest Corner Method)
Khởi đầu từ ô nằm ở góc Tây Bắc của bảng (ô trên cùng bên phải) và
hàng đầu tiên:
1. Cung cấp tối đa từ khả năng của 1 điểm nguồn cho các điểm đích
theo thứ tự ưu tiên của các điểm đích từ trái qua phải cho đến khi
điểm nguồn đó đã hết khả năng trước khi chuyển sang 1 hàng mới
(tức là 1 điểm nguồn mới sẽ được xem xét).
2. Đáp ứng tối đa nhu cầu của 1 điểm đích từ các điểm nguồn theo thứ
tự ưu tiên của các điểm nguồn từ trên xuống dưới cho đến khi nhu
cầu của điểm đích đang xét đã được thỏa mãn trước khi chuyển
sang 1 cột mới (tức là 1 điểm đích mới sẽ được xem xét).
14
1. Bài toán vận tải (tt11)
VD: Xét VD 1, nghiệm ban đầu của VD 1 xác định theo pp góc Tây Bắc
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 100 20 120
2 40 80 20 140
3 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
C
Tây Bắc
= 100*5 + 20*7 + 40*7 + 80*10 + 20*5 + 100*1 = 1.920
15
1. Bài toán vận tải (tt12)
1.2.2. Phương pháp chi phí bé nhất (The Minimal Cost Method)
Nguyên nhân chủ yếu là do pp góc Tây Bắc không hề lưu ý đến Chi phí
vận chuyển giữa các điểm nguồn và các điểm đích (c
ij
).
Để khắc phục nhược điểm trên, pp chi phí thấp nhất đã được đề nghị.
•
Ô ứng với chi phí vận chuyển đơn vị nhỏ nhất trong bảng vận tải sẽ
được ưu tiên đáp ứng tối đa (đáp ứng toàn bộ nhu cầu nếu khả năng
cung cấp là đủ hoặc cung cấp toàn bộ khả năng nếu nhu cầu là lớn
hơn).
•
Loại bỏ Điểm nguồn đã hết khả năng hoặc Điểm đích đã được cung
cấp đủ cùng các ô liên quan và xác định lại ô có chi phí nhỏ nhất.
•
Thực hiện lặp lại 2 bước nêu trên cho đến khi toàn bộ nhu cầu đã
được thỏa mãn (toàn bộ khả năng cung cấp đã sử dụng hết).
16
1. Bài toán vận tải (tt13)
VD: Xét VD 1, nghiệm ban đầu của VD 1 xác định theo pp chi phí nhỏ nhất
3601208060100Tổng cầu
1001003
1402060602
120201001
4321
Tổng cung
Điểm bán lẻ
Kho
5
6
7 6
7
7 9
10
8 1
5
6
C
Chi phí bé nhất
= 100*5 + 20*9 + 60*7 + 60*10 + 20*5 + 100*1 = 1.900
17
1. Bài toán vận tải (tt14)
Trước tiên ô (3,4) được xét do là ô có chi phí thấp nhất: giá trị vận chuyển
được gán trong ô này bằng với khả năng cung cấp tối đa của kho 3. Sau khi
gán giá trị cho ô (3,4), kho 3 hết khả năng cung cấp và do vậy các ô (3,1),
(3,2) và (3,3) sẽ không được xem xét tiếp.
Ô có chi phí nhỏ nhất kế tiếp được xét là các ô (1,1) và (2,4): giá trị vận
chuyển tối đa gán được cho các ô này là 100 và 20. Sau khi gán, điểm bán
lẻ 1 và 4 đã được cấp đủ nhu cầu và do vậy các ô (2,1) và (1,4) sẽ bị loại bỏ
trong bước xem xét tiếp theo.
Trong các ô còn lại: (1,2), (1,3), (2,2), (2,3); hai ô (1,2) và (2,2) có cùng chi
phí vận chuyển đơn vị nhỏ nhất là 7. Tuy nhiên, lượng vận chuyển tối đa có
thể gán được cho ô (1,2) chỉ là 20, trong khi lượng vận chuyển tối đa có thể
gán được cho ô (2,2) là 60. Vì vậy, ô (2,2) được chọn để gán giá trị trong
bước này. Sau khi gán, điểm bán lẻ 2 đã được cấp đủ nhu cầu và do vậy ô
(1,2) bị loại bỏ.
Trong hai ô còn lại là (1,3) và (2,3), các giá trị của lượng hàng vận chuyển
duy nhất có thể gán được phải là 20 và 60 theo thứ tự đó.
18
1. Bài toán vận tải (tt15)
Nếu so sánh chi phí của nghiệm ban đầu trong 2 pp: pp
góc Tây Bắc và pp chi phí nhỏ nhất, thì pp chi phí nhỏ
nhất cho nghiệm ban đầu tốt hơn:
•
C
Tây Bắc
= 100*5 + 20*7 + 40*7 + 80*10 + 20*5 +
100*1 = 1.920
•
C
Chi phí bé nhất
= 100*5 + 20*9 + 60*7 + 60*10 + 20*5 +
100*1 = 1.900
19
1. Bài toán vận tải (tt16)
1.2.3. Phương pháp xấp xỉ Vogel (The Vogel’s
Approximation Method – VAM)
PP xấp xỉ Vogel là pp xác định lời giải ban đầu tốt nhất
cho BTVT.
Trong nhiều TH, nghiệm ban đầu xác định từ pp này
cũng chính là nghiệm tối ưu.
20
1. Bài toán vận tải (tt17)
PP xấp xỉ Vogel
Việc thực hiện pp VAM tuân theo các bước:
1. Ứng với mỗi hàng và cột của bảng VT, xác định độ chênh lệch giữa 2 chi
phí vận chuyển nhỏ nhất. Các giá trị xác định được biểu diễn chênh lệch về
chi phí VT giữa con đường VT tốt nhất và con đường VT tốt thứ 2 trên từng
hàng/cột. Đây cũng chính là chi phí cơ hội do không chọn con đường tốt
nhất trên từng hàng/cột.
2. Xác định hàng hoặc cột ứng với chi phí cơ hội lớn nhất.
3. Phân bổ tối đa lượng hàng có thể vận chuyển được trong ô có chi phí vận
chuyển nhỏ nhất ứng với hàng/cột đã chọn trong B2.
4. Loại bỏ hàng đã dùng hết khả năng cung cấp hoặc cột đã được thỏa mãn
toàn bộ nhu cầu sau sự phân bổ trong B3. Đánh dấu X vào các ô trống của
hàng/cột bị loại bỏ.
5. Tính toán lại các chi phí cơ hội trong B1 ứng với bảng VT đã loại bỏ các
hàng/cột đề cập đến trong B4.
6. Quay lại B2 và thực hiện lặp lại các B2 – 5 cho đến khi nhận được 1 lời giải
ban đầu.
21
1. Bài toán vận tải (tt18)
PP xấp xỉ Vogel
VD 5: Xét VD 1, nghiệm ban đầu xác định theo pp xấp xỉ Vogel được
thực hiện theo trình tự sau:
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 120
2 140
3 X X X 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
1 1 1 4
1
1
5*
22
1. Bài toán vận tải (tt19)
PP xấp xỉ Vogel
VD 5: (tt1)
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 100 120
2 X 140
3 X X X 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
1* 0 1 1
1*
1
23
1. Bài toán vận tải (tt20)
PP xấp xỉ Vogel
VD 5: (tt2)
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 100 X 120
2 X 20 140
3 X X X 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
0 1 1
1
2*
24
1. Bài toán vận tải (tt21)
PP xấp xỉ Vogel
VD 5: (tt3)
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 100 X X 120
2 X 60 20 140
3 X X X 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
0 1
2
3*
25
1. Bài toán vận tải (tt22)
PP xấp xỉ Vogel
VD 5: (tt4)
Kho
Điểm bán lẻ
Tổng cung
1 2 3 4
1 100 X 20 X 120
2 X 60 60 20 140
3 X X X 100 100
Tổng cầu 100 60 80 120 360
5
6
7 6
7
7 9
10
8 1
5
6
#
#
#
Tổng chi phí VT ứng với lời giải ban đầu này là:
C
VAM
= 100*5 + 20*9 + 60*7 + 60*10 + 20*5 + 100*1 = 1.900