ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TOÁN VẬN TẢI
CHƯƠNG 3
BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
Copyright 2001(Xem)
NỘI DUNG BÀI TOÁN VẬN TẢI
Giả sử cần vận chuyển một loại hàng hóa (xi
măng, sắt thép, ...) từ m điểm cung cấp (trạm
phát), ký hiệu là A1, A2, ..., Am đến n điểm tiêu
thụ (trạm thu), ký hiệu là B1, B2, ..., Bn, biết rằng
(1) Số lượng hàng có ở các trạm phát A1, A2, ...,
Am lần lượt là a1, a2,..., am
(2) Số lượng hàng cần ở các trạm thu B1, B2, ...,
Bn lần lượt là b1, b2,..., bn.
(3) Chi phí vận chuyển một đơn vò hàng hóa từ
trạm phát Ai đến trạm thu Bj là cij.
Hãy lập kế hoạch vận tải hàng hóa sao cho
tổng chi phí vận tải thấp nhất và thỏa mãn yêu
cầu thu – phát.
BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
1. BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
(Xem)
2. CÁC TÍNH CHẤT VÀ TIÊU CHUẨN TỐI ƯU CỦA
Ths.
n Công Trí
BÀI TOÁNguyễ
N VẬN TẢI
(Xem)
3. CÁC PHƯƠNG PHÁP TÌM PHƯƠNG ÁN CỰC
Copyright 2001
BIÊN ĐẦU TIÊN CỦA BÀI TOÁN VẬN TẢI
(Xem)
4. THUẬT GIẢI THẾ VỊ CHO BÀI TOÁN VẬN TẢI
(Xem)
5. CÁC DẠNG KHÁC CỦA BÀI TOÁN VẬN TẢI
(Xem)
Ths. Nguyễn Công Trí
6. BÀI TẬP
MÔ HÌNH BÀI TOÁN VẬN TẢI
Đặt xij là số lượng hàng cần vận chuyển từ trạm
phát Ai đến trạm thu Bj.
m
n
Ta có tổng chi phí vận tải: Z cij xij min
i 1 j 1
n
x
(1) Trạm phát, phát hết hàng:
ij
ai , i 1, m
j 1
m
(2) Trạm thu, thu đủ hàng:
x
ij
b j , j 1, n
i 1
(3) Yêu cầu trạm phát, trạm thu được thỏa
m
n
i 1
j 1
ai b j (đk cân bằng thu – phát).
Vậy, mô hình toán của bài toán vận tải (BTVT)
dạng tổng quát như sau:
Tìm {xij} sao cho:
m
n
Z cij xij min
i 1 j 1
n
x
ij
ai , i 1, m
j 1
m
x
ij
b j , j 1, n
i 1
m
n
xij 0; cij 0; ai 0; b j 0; ai b j
i 1
j 1
1
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
BÀI TOÁN VẬN TẢI DẠNG TỔNG QUÁT
BÀI TOÁN VẬN TẢI DƯỚI DẠNG BÀI TOÁN QHTT
khai triển BTVT và xếp hệ ràng buộc dưới dạng
hệ m + n phương trình của m n biến như sau
x11
x12
x1n
x 21
x22
x2 n
a1
a2
BTVT viết dưới dạng vectơ và ma trận như sau
z
CT X
AX
X 0
min
b
*
**
Ký hiệu Am+n,mn ma trận hệ số của hpt trên.
XT = (x11 x12 ...…x1n x21 x22 ... x2n ... xm1 xm2…... xmn) là
vectơ cột gồm mn thành phần; C = (c11 c12
...…c1n c21 c22 ... c2n… cm1 cm2 ...…cmn) là vectơ dòng
gồm mn thành phần; bT = (a1 a2 ...…am b1 b2 ...…bn)
là vectơ cột gồm m+ n thành phần.
Một vectơ X thỏa (*) và (**) gọi là phương án.
Một P.A đạt cực tiểu thì gọi là P.A.T.Ư của BTVT.
Một phương án X được gọi là P.A.C.B khi các
vectơ cột Aj của ma trận hệ số A ứng với các
thành phần xij > 0 là độc lập tuyến tính.
Một P.A.C.B của BTVT có nhiều nhất là m + n –
1 thành phần dương. Nếu một P.A.C.B của BTVT
có đúng m + n – 1 thành phần dương thì được
gọi là không suy biến. Ngược lại, được gọi là
phương án cực biên suy biến.
MÔ TẢ BÀI TOÁN DƯỚI DẠNG BẢNG VẬN TẢI
MÔ TẢ BÀI TOÁN DƯỚI DẠNG BẢNG VẬN TẢI
x m1
x m1
x 21
x11
x22
x12
xm 2
x mn
xm 2
x2 n
x1n
Trạm thu Bj B1
x mn
B2
b1
b2
bn
Bn
b2
am
b1
bn
Trạm phát Ai
A1
c11
a1
A2
x11
c21
a2
x21
Am
cm1
am
xm1
c2n
xm2
x2 n
cm 2
x1 n
x22
c1n
x12
c22
c12
cmn
xmn
(1) Ký hiệu (i, j) là ô trên dòng i và cột j.
(2) Chi phí vận chuyển cij được ghi ở góc trên
bên trái của ô (i, j), lượng hàng cần vận chuyển
xij được ghi ở góc dưới bên phải của ô (i, j) biểu
diễn tuyến đường vận chuyển từ trạm phát Ai
đến trạm thu Bj.
(3) Trong BẢNG VẬN TẢI, một ô được gọi là ô
treo nếu nó là ô duy nhất trên dòng hay trên cột.
(4) Những ô ứng với xij > 0 trong BẢNG VẬN TẢI
được gọi là ô chọn, những ô khác gọi là ô loại.
(5) Một dãy các ô chọn, trong đó 3 ô liên tiếp
không nằm trên cùng một dòng hay một cột thì
được gọi là một dây chuyền.
2
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
MÔ TẢ BÀI TOÁN DƯỚI DẠNG BẢNG VẬN TẢI
MÔ TẢ BÀI TOÁN DƯỚI DẠNG BẢNG VẬN TẢI
(6) Một dây chuyền khép kín được gọi là một
chu trình hay một vòng.
VÍ DỤ 3.1.
(7) Một ma trận (xij) là một P.A của BTVT nếu nó
thoả hệ ràng buộc. Một P.A (xij) làm cực tiểu
hàm mục tiêu thì (xij) là P.A.T.Ư. của bài toán.
(8) Một P.A của BTVT không tạo thành chu trình
(vòng) thì được gọi là Phương án cực biên.
(9) Một P.A.C.B của BTVT có đủ m+n-1 ô chọn thì
được gọi là P.A.C.B không suy biến, nếu có ít
hơn m+n-1 ô chọn được gọi là P.A.C.B suy biến.
CÁC TÍNH CHẤT CỦA BÀI TOÁN VẬN TẢI
TÍNH CHẤT 1: Bài toán vận tải luôn luôn có
phương án tối ưu.
TÍNH CHẤT 2: Với một phương án bất kỳ, số ô
chọn của phương án không vượt quá tổng số
trạm phát và trạm thu.
≤ m + n –1 (với là số ô chọn của P.A)
TÍNH CHẤT 3: Với một phương án có đủ m+n–1 ô
chọn thì với một ô loại bất kỳ được đưa vào
phương án sẽ tạo thành chu trình và chu trình
này là duy nhất.
TÍNH CHẤT 4: Nếu lượng cung ai và lượng cầu bj
là số nguyên thì bài toán có lời giải nguyên.
Hình 2.1.
Hình 2.2.
Hình 2.3.
Hình 2.4.
Hình 2.5.
Hình 2.1. các ô chọn, có dấu “”, tạo thành
dây chuyền, các ô (1,1) và (4,3) là các ô treo.
Hình 2.2. các ô chọn tạo thành dây chuyền,
các ô (4,1) và (3,3) là các ô treo.
Hình 2.3., Hình 2.4 và Hình 2.5. các ô chọn tạo
thành chu trình, không có ô treo.
TIÊU CHUẨN TỐI ƯU CỦA BÀI TOÁN VẬN TẢI
Xét bài toán vận tải sau
m
Viết lại bài toán
n
m
Z cij xij min
n
Z cij xij min
i 1 j 1
i 1 j 1
n
m
x
ij
x
ai , i 1, m
ij
j 1
b j , j 1, n
i 1
n
m
xij ai , i 1, m
xij b j , j 1, n
j 1
i 1
xij 0; cij 0; ai 0; b j 0; xij 0; cij 0; ai 0; b j 0;
m
n
m
n
ai b j
ai b j
i 1
i 1
j 1
j 1
3
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
TIÊU CHUẨN TỐI ƯU CỦA BÀI TOÁN VẬN TẢI
Bài toán đối ngẫu của BTVT
n
Trên bảng vận tải, chọn ô đầu tiên có cước phí
vận chuyển bé nhất và chọn xij như sau:
m
Tìm {ui,vj} sao cho: Z * b j v j aiui max
Với các cặp đối ngẫu:
j 1
i 1
xij 0 và vj – ui ≤ cij, i,j
Theo đònh lý độ lệch bù thì phương án {xij} của
BTVT có P.A.T.Ư là tồn tại hệ thống {ui, vj} sao cho:
Nếu xij > 0 thì vj – ui = cij,
Nếu vj – ui < cij thì xij = 0.
Vậy tiêu chuẩn tối ưu của BTVT: vj – ui cij, i,j
ui: được gọi là thế vò dòng.
PHƯƠNG PHÁP CHI PHÍ BÉ NHẤT
Ví dụ 3.2. Dùng phương pháp chi phí bé
nhất, tìm phương án cực biên của bài
toán vận tải có dạng bảng sau đây
30
40
25
35
45
7
10
3
4
2
5
7
14
13
11
16
10
P
42
13
8
28
5
1
45
16
5
60
6
3
Kiểm tra ai = bj = 175
a i : loại dòng i, bj b j ai
x ij min ai , b j b j : loại cột j, ai ai b j
a i b j : loại dòng i và cột j
Lặp lại quá trình trên cho ô tiếp theo cho đến
đến khi yêu cầu trạm phát và trạm thu được
thoả mãn.
Bảng thu được với các xij > 0 là phương án cực
biên của bài toán.
vj: được gọi là thế vò cột.
T
PHƯƠNG PHÁP CHI PHÍ BÉ NHẤT
PHƯƠNG PHÁP CHI PHÍ BÉ NHẤT
T
30
40
25
35
45
P
42
13
8
7
2
13
35
28
5
1
7
10
5
11
7
16
14
10
28
45
16
5
3
60
6
3
4
25
20
30
12
18
P.A.C.B trên không suy biến, với giá trò Z = 980.
4
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
PHƯƠNG PHÁP VOGELS
PHƯƠNG PHÁP VOGELS
Phương pháp Vogels (1958) cho P.A.C.B khá tốt
theo nghóa giá trò hàm mục tiêu của nó khá gần
với P.A.T.Ư. Phương pháp được mô tả như sau
(1) Trên bảng vận tải, tính hiệu số giữa chi phí bé
thứ hai với chi phí bé thứ nhất.
Ví dụ 3.3: Dùng phương pháp Vogels, tìm
phương án cực biên của bài toán vận tải
có dạng bảng sau
(2) Chọn số lớn nhất trong các hiệu trên và phân
phối tối đa cho ô có chi phí bé nhất một lượng
xij = min(ai, bj), sau đó tính lại hiệu số dòng (cột).
(3) Quá trình trên được lặp lại cho đến khi chỉ
còn lại một dòng hay một cột duy nhất.
(4) Bảng thu được với các {xij} là phương án cực
biên của bài toán.
PHƯƠNG PHÁP VOGELS
T
30
40
25
35
13
8
7
2
45
28
5
1
10
5 ,1,5 K
13
35
7
5
11
7
16
4K
28
45
16
5
3
25
12
60
6
3
30
1
7
K
4
2
3
K
1
4
K
2,11 K
8
14
3
K
10
30
40
25
35
45
42
13
8
7
28
5
1
10
45
16
5
3
60
6
3
4
Kiểm tra ai = bj = 175
2
5
7
14
13
11
16
10
HƯỚNG GIẢI BÀI TOÁN
P
42
T
P
1K
30
1 Z = 932
3
K
(1) Tìm P.A.C.B không suy biến đầu tiên bằng
phương pháp chi phí bé nhất hoặc Vogels.
(2) Dùng tiêu chuẩn tối ưu vi – uj ≤ cij, i,j để kiểm
tra P.A.C.B vừa tìm được.
(3) Nếu P.A.C.B thoả mãn tiêu chuẩn tối ưu thì
P.A.C.B đó là P.A.T.Ư.
(4) Nếu P.A.C.B vừa tìm chưa thoả mãn tiêu
chuẩn tối ưu thì tìm cách sửa đổi P.A.C.B cũ để
có P.A.C.B mới.
(5) trở về bước (2), sau một số bước lặp hữu hạn,
ta sẽ có P.A.T.Ư.
Phương pháp trên gọi là thuật toán thế vò
5
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
P BẢ
NG VẬ
N TẢ
SƠ LẬ
ĐỒ
THUẬ
T GIẢ
I ITHẾ VỊ
A BÀ
I TOÁNĐẦ
VẬ
N TẢ
XÁCỦ
C ĐỊNH
P.A.C.B
U TIÊ
N I
(phương pháp chi phí bé nhất hoặc Vogels)
Suy biến?
Có Thêm ô x =0
ij
không
Tính: Vj = Ui + Cij
Xác đònh P.A mới
Ui = Vj – Cij
x ij q dấu ( ).
xij x ij q dấu ().
x không dấu.
ij
ij 0?
Có
THUẬT TOÁN THẾ VỊ
Bước 1. Lập bảng vận tải
(1) Kiểm tra điều kiện cân bằng thu – phát.
(2) Xác đònh P.A.C.B (bằng phương pháp chi phí
bé nhất).
(3) Kiểm tra P.A.C.B có suy biến hay không
Bài toán có P.A.T.Ư
không
Kết thúc thuật giải
Chọn ô vào: Maxij
Xác đònh vòng điều chỉnh SỐ BƯỚC LẶP
và đánh dấu (+); dấu (–). LÀ HỮU HẠN
q = min{xij/ (i, j) dấu (–)}
THUẬT TOÁN THẾ VỊ
Chọn ui = 0 tại dòng bất kỳ.
(2) Đặt ij = vj – ui – cij
Nếu ij ≤ 0: ta có P.A.T.Ư.
Nếu ij > 0: chuyển sang [3]
Bước 3. Xác đònh vòng điều chỉnh
(1) Chọn ô vào: Maxij (ij > 0)
(2) Chọn ô ra
xác đònh vòng điều chỉnh
ô vào sẽ được đánh dấu (+). Xen kẻ dấu
(-) và dấu (+) trên vòng điều chỉnh.
lượng điều chỉnh q = min{xij/ (i,j) có dấu (-)}
Nếu P.A.C.B. suy biến: thêm vào ô (i,j) bất kỳ
với xij = 0, không tạo thành chu trình.
Nếu P.A.C.B không suy biến, chuyển sang [2]
Bước 2. Kiểm tra tính tối ưu của bài toán
(1) Tính vj = ui + cij
ui = vj – cij, trong đó ô (i,j) là ô chọn.
THUẬT TOÁN THẾ VỊ
Bước 4. Xác đònh P.A.C.B mới
x ij q dấu ( );
xij x ij q dấu ();
x không dấu.
ij
Quay về bước [2].
Sau một số bước lặp hữu hạn, bài toán có
phương án tối ưu.
6
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
THUẬT TOÁN THẾ VỊ
THUẬT TOÁN THẾ VỊ
CHÚ Ý.
Ví dụ 3.4. Giải bài toán vận tải
(1) Trong thuật giải bài toán vận tải, nếu Maxij
đạt tại nhiều ô, ta chọn một ô tùy ý trong số các
ô đó làm ô điều chỉnh.
T
45
55
30
70
50
40
10
7
11
13
6
7
7
6
10
10
thu phát
6
9
1
2
8
P
(2) Trong P.A.T.Ư tìm được Xopt, nếu có ij = 0, mà
(i,j) là ô loại thì đó là dấu hiệu bài toán có nhiều
P.A.T.Ư khác. Để tìm P.A.C.B.T.Ư khác, ta chọn ô
(i, j) đó làm ô điều chỉnh, rồi áp dụng thuật toán
thế vò để xác đònh P.A.C.B.T.Ư khác X/opt.
40
12
75
12
60
3
70
9
45
11
Kiểm tra điều kiện
(3) Tập phương án tối ưu là
ai = 40 + 75 + 60 + 70 + 45 = 290
X = {Xopt + (1 – )X/opt, 0, 1}
T
45
55
30
70
bj = 45 + 55 + 30 + 70 + 50 + 40 = 290
50
40
Bảng 1
P
40
75
60
70
45
q= 20
8
9
13
10
9
5
8
2
9
6
cân bằng
T
45
55
30
70
50
40
Bảng 2
P
12
8
9
12
-
10
13
10
11
25
3
7
5
13
6
+1
7
1
20
+
9
- 40
8
2
7
6
9
6
10
+ 25
10
8
-
3
2
+1 - 40 + +5
30
11
+2 0
9
50
+
9
6
+ 10
30
-
10
8
20
9
+1
7
8
40
-2
75
7
60
1
70
-1
45
q= 5
12
8
9
10
7
12
13
-
5+
3
10
11
13
5
6
+1
7
9
20
-
8
2
7
30
11
+1
1
40
+
0
9
70
+2
9
6
+ 30
- 10
9
6
10
6
2
-
20 + 20
10
8
8
3
4
7
2
1
-1
45
5
-7
3
7
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
T
45
55
30
70
50
40
Bảng 3
P
40
75
60
70
45
12
8
9
10
7
12
13
10
9
-1
35
11
5
3
•Do các ij 0 i,j nên P.A.T.Ư của bài toán là
6
5
13
9
7
1
-6
70
5
6
xopt
45
9
15
8
2
7
6
2
30
11
9
6
15
10
10
25
8
7
2
5
6
1
0
2
Ngoài ra, bài toán không có P.A.T.Ư khác vì
không có ij = 0, với (i, j) là ô loại
THUẬT TOÁN THẾ VỊ
T
76
62
88
45
40
79
P
79
102
70
60
10
13
12
12
19
11
17
18
15
8
10
18
6
7
5
10
7
4
3
9
102
70
Kiểm tra điều kiện cân bằng thu phát
ai = 79 + 102 + 70 + 60 = 311
bj = 76 + 62 + 88 + 45 + 40 = 311
76
62
88
45
40
Bảng 1
P
Ví dụ 3.5. Giải bài toán vận tải
T
0 5 0 0 35 0
0 5 0 70 0 0
45 0 0 0 0 15
0 0 30 0 15 25
0 45 0 0 0 0
Và Zmin = 1.875 đơn vò tiền tệ.
-2
45
4
THUẬT TOÁN THẾ VỊ
60
q=30
10
-
13
19
7
0
7
4
5
5
3
1
6
+
64
11
+
12
15
8
14 -
17
10
15
88
+
12
+
10
+2 - 30
18
10
9
18
12 -
16
40
-2
48
13
6
4
8
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
T
76
62
88
45
THUẬT GIẢI THẾ VỊ
40 Bảng 2
P
•Do các ij 0 i,j nên
79
102
70
60
10
19
15
6
34
13
0
4
5
8
44
17
7
xopt
58
10
5
18
42
10
18
3
3
30
12
P.A.T.Ư của bài toán vận tải
45
11
12
7
40
10
9
-2
13
6
Và Zmin = 2.806 đơn vò tiền tệ.
Bài toán không có P.A.T.Ư nào khác vì không
có ij = 0, với (i, j) là ô loại.
18
16
34 0 0 45 0
0 44 58 0 0
0 0 30 0 40
42 18 0 0 0
6
CÁC DẠNG KHÁC CỦA BÀI TOÁN VẬN TẢI
1. BÀI TOÁN VẬN TẢI KHÔNG CÂN BẰNG
THU – PHÁT
(Xem)
2. BÀI TOÁN VẬN TẢI CÓ DẠNG HÀM MỤC
(Xem)
TIÊU LÀ MAX
3. BÀI TOÁN VẬN TẢI CÓ Ô CẤM
(Xem)
4. BÀI TOÁN VẬN TẢI XE KHÔNG
(Xem)
BÀI TOÁN VẬN TẢI KHÔNG CÂN BẰNG THU-PHÁT
1. TRƯỜNG HP 1. ai > bj
Thêm trạm thu giả thứ Bn+1
Với nhu cầu thu bn+1 = ai – bj
Cước phí vận tải ci,n+1 = 0, i = 1, 2, ..., m.
2. TRƯỜNG HP 2. ai < bj
Thêm trạm phát giả thứ Am+1
Với nhu cầu phát am+1 = bj – ai
Cước phí vận tải cm+1,j = 0, j = 1, 2, ..., n.
Với các ô có cước phí vận tải bằng không
được gọi là ô giả. Lưu ý khi dùng thuật toán thế
vò để giải bài toán trên, với P.A.C.B đầu tiên, ta
ưu tiên phân phối vào các ô thực.
9
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TOÁN VẬN TẢI KHÔNG CÂN BẰNG THU-PHÁT
65
45
50
30
60
10
9
12
7
55
9
11
10
15
50
8
7
14
12
60
P
55
50
Kiểm tra điều kiện cân bằng thu – phát
ai= 165 < bj= 190
25
Thêm một trạm phát giả A4, với
65
45
50
Bảng 2
30
P
60
55
50
25
10
-
9
30 +
9
12
30
15
1
14
12
2
0
0
11
10
30
25
8
7
+
5 -
0
0
45
25
10
Có P.A.T.Ư khác
0
7
0
11
9
11
7
45
10
9
50
12
5
+
9
-
11
30
8
Bảng 1
7
0
25
0
30
15
1
14
12
2
0
0
12
+
5
7
10
55
-
+1
45
0
25
10
a4 = 190 – 165 = 25 và c4j = 0, j=1, 2, 3, 4
T
65
P
Ví dụ 3.6. Giải bài toán vận tải sau
T
T
9
12
7
q = 25
BÀI TOÁN VẬN TẢI
KHÔNG CÂN BẰNG THU-PHÁT
•Phương án cực biên tối ưu của bài toán
vận tải là
xopt
30 0 0 30
30 0 25 0
5 45 0 0
•và Zmin = 1.385
q = 30
10
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
T
65
45
50
BÀI TOÁN VẬN TẢI KHÔNG CÂN BẰNG THU-PHÁT
30
P
•P.A.C.B.T.Ư khác của bài toán
10
60
9
12
30
9
55
30
11
15
1
14
12
2
0
0
11
10
30
8
50
25
7
35
0
25
0
7
15
0
9
11
7
MÔ HÌNH BÀI TOÁN VẬN TẢI
CÓ HÀM MỤC TIÊU LÀ MAX
Tìm {xij} sao cho:
m
n
Z cij xij max
i 1 j 1
n
x
ij
ai , i 1, m
j 1
m
x
ij
b j , j 1, n
i 1
m
n
xij 0; cij 0; ai 0; b j 0; ai b j i 1, m; j 1, n.
i 1
j 1
•Tập P.A.T.Ư của bài toán
•Zopt = Xopt + (1 – ) X/opt
•Hay
25
10
0 30 0 30
30 0 25 0
xopt
35 15 0 0
’
•Và Z min =1.385
Zopt
30 30 0 30
30
30
0
25 0
35 30 15 30 0 0
THUẬT GIẢI BÀI TOÁN VẬN TẢI
CÓ HÀM MỤC TIÊU LÀ MAX
Giống như bài toán QHTT có hàm mục tiêu là
max, chúng ta có thể đưa bài toán vận tải có
hàm mục tiêu Z max về Z/ = – Z min, sau đó
dùng thuật toán thế vò để giải. Tuy nhiên, chúng
ta cũng có thể giải trực tiếp bài toán này bằng
thuật toán thế vò với một vài thay đổi trong thuật
giải như sau:
1. Khi xây dựng P.A.C.B đầu tiên, ta phân phối tối
đa vào ô có cước phí lớn nhất.
2.Tiêu chuẩn tối ưu là vj – ui cij, i,j
3.Ô điều chỉnh là ô có {minij, với ij < 0}
11
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
THUẬT GIẢI THẾ VỊ VỚI HÀM MỤC TIÊU Z Max
Ví dụ 3.7. Một công ty có 3 xí nghiệp cùng sản
xuất một loại bóng đèn. Năng suất trong tháng
của 3 xí nghiệp lần lượt là Ai = (650, 1.000, 350)
bóng. Hợp đồng công ty phải giao cho 4 nhà
phân phối là Bj = (200, 400, 600, 800) bóng. Đơn
giá bán của mỗi bóng đèn tương ứng với các
nhà phân phối được cho bởi ma trận sau:
Đvt: 1.000 đồng 22 25 20 18
cij 30 32 25 28
29 28 25 23
THUẬT GIẢI THẾ VỊ VỚI HÀM MỤC TIÊU Z Max
T 200
650
1000
Hãy tìm kế hoạch phân phối hàng sao cho công
ty đạt doanh số lớn nhất
T 200
400
600
650
1000
350
800
22
25
-2
30
20
18
-3 + 250 – 400
32
25
28
0
400
– 200
29
28
25
+
30
-4
10
+ 400
23
5
-1 – 350
30
32
28
q = 200
THUẬT GIẢI THẾ VỊ VỚI HÀM MỤC TIÊU Z Max
800
T 200
P
600
P
350
THUẬT GIẢI THẾ VỊ VỚI HÀM MỤC TIÊU Z Max
400
400
600
800
P
22
25
30
450 – 200
+ -3
32
25
28
0
29
– 400
28
25
32
18
10
+ 600
23
5
150
-1
200
34
20
30
28
q = 200
650
1000
350
22
25
20
200
30
32
18
7
28
0
450
25
200
29
28
800
25
2
150
200
31
23
32
27
28 Z = 52.350
12
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
THUẬT GIẢI BÀI TOÁN VẬN TẢI
CÓ HÀM MỤC TIÊU LÀ MAX
•Do các ij 0, i, j
•P.A.T.Ư CỦA BÀI TOÁN
xopt
0 200 450 0
0 200 0 800
200 0 150 0
•Và ZMax = 52.350
BÀI TOÁN VẬN TẢI CÓ Ô CẤM
Bài toán vận tải có ô cấm là bài toán vận tải
với P.A.T.Ư của nó phải thỏa điều kiện cho trước.
Để giải bài toán này, ta lập bài toán vận tải mở
rộng VTM bằng cách cho giá cước vận chuyển ở
các ô cấm bằng M, với M > 0 lớn tùy ý rồi dùng
thuật toán thế vò. Có 2 trường hợp xảy ra
1.Trong P.A.T.Ư của bài toán VTM, nếu các ô cấm
có xij = 0 thì P.A.T.Ư của bài toán VTM cũng chính
là P.A.T.Ư của bài toán gốc.
2.Trong P.A.T.Ư của bài toán VTM, nếu các ô cấm
có xij 0 thì bài toán gốc không có P.A.T.Ư.
BÀI TOÁN VẬN TẢI CÓ Ô CẤM
Ví dụ 3.8. Giải bài toán vận tải sau đây với
Nhu cầu trạm phát a = (150, 100, 145, 100)
Nhu cầu trạm thu b = (140, 150, 180) 5 4
6
Ma trận cước vận chuyển
8 5 9
cij
11
6
12
với điều kiện
trạm A3, A4 phải phát hết hàng.
9 7 13
Kiểm tra điều kiện cân bằng thu – phát
ai = 150 + 100 + 145 + 100 = 495
bj = 140 + 150 + 180 = 470
Lập trạm thu giả, với b4= 25 và M > 0 tùy ý.
T 140
150
180
25
Bảng 1
P
150
100
145
100
5
4
0
8
6
150
5
0
M-4
+3
9
4
0
1
+2
+3 + M-1
– 100
1
11
6
12
M
+1
9
+
9
7
40
+1
8
145
13
M
0
35 – 25
q = 25
13
M
13
ThS. Nguyễn Công Trí - Tối ưu hóa * Chương 3
T 140
150
180
25
P
150
100
145
100
5
4
0
8
6
150
5
75
–
11
6
9
+
9
8
4
0
1
25
+2 + +3
1
12
M
7
65
0
+3
145
+1
T 140
13
M
0
+1 – 35
13
1
150
180
145
100
150
100
145
100
q = 35
25
5
+
8
4
180
25
Baûng 3
6
0
3
0 – 150
5
9
0
0
40
–
11
6
+
9
7
100
8
Baûng 4
P
100
150
P
9
150
T 140
Baûng 2
25
+2 + 35
-3
12
M
+4 – 145
13
M
-1
+1
q = 40
7
T 140
9
150
0
180
25
Baûng 5
P
5
8
4
6
40 – 110 +
5
9
0
+4
+1
0
6
+
9
7
100
5
12
4
M
40 – 105
13
M
+1
+1
10
1
25
75
11
0
1
-2
-4
q =105
150
100
145
100
5
4
8
40 –
5
+
11
6
6
0
0
5 + 105
9
0
-3
25
+2 – 75
-2
12
M
145
9
7
100
5
13
M
6
-3
+1
4
-4
q=5
14
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
T 140
150
180
25
Bảng 6
P
150
100
145
100
5
4
–
8
40
+
0
6
3
+ 110
5
11
0
6
9
0
5 – 70
25
-1
12
M
7
13
M
5
9
Z =3.285
0 q = 40
100
8
P.A.T.Ư khác
T 140
150
180
100
145
100
•P.A.C.B.T.Ư của bài toán vận tải trên là
xopt
-1
25
Bảng 7
P
150
•Do các ij 0 i,j nên
0
145
9
BÀI TOÁN VẬN TẢI CÓ Ô CẤM
0 110
40
0
5
70
0 145 0
100 0
0
•và Zmin= 3.285
BÀI TOÁN VẬN TẢI CÓ Ô CẤM
•P.A.C.B.T.Ư khác của bài toán vận tải trên là
5
4
6
5
9
5
40
11
3
0
0
150
0
8
0
6
25
30
12
M
-1
0
40
xopt
0
•và Zmin= 3.285
100
•Tập phương án tối ưu
7
13
M
100
8
5
9
0
-1
Z =3.285
0
150
30
0
0
•Zopt = Xopt + (1 – ) X/opt
145
9
0
5
145
•Hay Z o p t
40
40 40
0
100
0
5
145
0
150 40
30 40
0
0
15
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
MÔ HÌNH BÀI TOÁN VẬN TẢI XE KHÔNG
THUẬT GIẢI BÀI TOÁN XE KHÔNG TẢI
Điều kiện ràng buộc của bài toán vận tải xe
không là một số trạm phát Ai phải phát đủ hàng
cho trạm Bj (được chỉ đònh). Xác đònh lộ trình xe
chạy không tải từ Bj đến Ai là ít nhất.
Khi đó trạm phát Ai trở thành trạm thu xe
không, trạm thu Bj trở thành trạm phát xe không
và khi đó ma trận (cij) là ma trận khoảng cách
tương ứng giữa Ai và Bj.
Qui ước sử dụng các ký hiệu như sau:
x ij
: lượng hàng hóa có vận tải.
xij : lượng hàng của xe không tải.
: tuyến xe chạy có tải.
: tuyến xe chạy không tải
1. Lập bảng vận tải tương ứng với ma trận
khoảng cách. Dùng thuật toán thế vò tìm P.A.T.Ư
của bài toán xe không tải.
2. Tạo bảng phối hợp P.A.T.Ư của bài toán xe
không tải với kế hoạch vận tải đã cho trước. Lập
tuyến điều động tương ứng.
3. Giảm lượng chênh lệch giữa “ô tròn” và “ô
vuông” để có bảng mới thu gọn.
4. Lập vòng điều động gồm các ô có tải và ô
không tải liên tiếp nhau, lượng điều động q=
min{xij}, với xij có tải và xij không tải. Trở về [3].
Sau một số bước lặp hữu hạn [3] và [4], ta sẽ thu
được kế hoạch điều động hàng hóa tối ưu.
THUẬT GIẢI BÀI TOÁN XE KHÔNG TẢI
THUẬT GIẢI BÀI TOÁN XE KHÔNG TẢI
Ví dụ 3.9. Một công ty vận tải có kế hoạch vận
chuyển hàng hóa theo hợp đồng, được thể hiện
qua bảng yêu cầu như sau
Cho biết khoảng cách giữa đòa điểm cung
cấp hàng và đòa điểm nhận hàng (km) được thể
hiện qua ma trận như sau:
Đòa điểm
cấp hàng Ai
Loại
hàng
A1
Cam
A2
Dưa hấu
A3
Sầu riêng
Lượng
(tấn)
20
30
25
15
10
50
20
Nơi nhận
Ký hiệu
hàng Bj
Công ty rau quả
B2
Cửa hàng số 3
B3
Cửa hàng số 1
B1
Công ty rau quả
B2
Cửa hàng số 3
B3
Cửa hàng số 4
B4
Công ty rau quả
B2
2 1 4 3
L 5 2 6 4
3 4 2 5
Hãy xác đònh lộ trình vận chuyển hàng hóa
thỏa yêu cầu hợp đồng và tổng tấn – km xe
chạy không tải nhỏ nhất.
16
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
Bước 1 (tìm P.A.T.Ư của bài toán xe không tải)
Bj
25
55
40
Bước 2 (tạo bảng phối hợp)
Bj
Bảng 1
50
2
1
4
3
2
50
50
5
50
2
6
4
5
3
70
4
1
25
0
5
40
2
5
25
Bảng 3
50
2
1 20
4 30
3
5 25
50
2 15 6 10
4
55
40
3
4 20
45
5 50
2
25
B2 1km
B2 2km
B4 5km
40
5
A1: 20 T X 1km = 20T – km
A2: 5 T X 2km = 10T – km
A3: 5 T X 5km = 25T – km
Bước 3 (lập tuyến điều động)
50
Bj
Ai
25
Bảng 4
55
40
50
Ai
50
50
70
2km
40
5
70
A1
A2
A3
5
Bước 3 (lập tuyến điều động)
Bj
50
45
2
3
3
Zmin= 420 tấn – km
A2
55
Ai
Ai
50
25
Bảng 2
B1
A3
2
1
5 25
30
2 10 6 10
4
4 20
45
5 45
3
25
3km
A3
B4 4km
4 30
2
40
1km
3
50
50
70
q=20
B2
A1
B3
A2:20Tx10km=200T-km
A2
4km
2
1
4 10
3
6 10
4
2
25
5 25
10
5 5
2 10
3
4
5
20
q=5
3km
B1
A3
B4
A2: 5T x 7km = 35T–km.
17
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
Bước 3 (lập tuyến điều động)
Bj
25
Bảng 5
55
40
Bước 3 (lập tuyến điều động)
50
Bj
Ai
50
70
2
1
4 10
3
5
10
2 10 6 10
4
50
50
20
3
4
2
5 20
20
B2 1km
B4 4km
B2
B2
B4
B1
2km A
3
A2
A2
A2
40
50
q=10
A1
B3 2km A3
A2: 10T x 7km = 70T–km
A2
BẢNG ĐIỀU ĐỘNG XE
1km A1: 20 T
2km A : 5 T
2
5km A3: 5 T
3km A3
B2 1km A1
B44km A2: 20 T
B1 3km
B2 1km
B4 4km
A3
B4 4km
A1
B3 2km
A2: 10 T
B3 2km
A3
B4 4km
A2: 5 T
A3
A2: 10 T
2
1
4
3
5
2
6 10
4
10
3
70
4
2
5 10
10
B3
2km
A3
q=10
B4
4km A : 10 T x 6km = 60T–km
2
THUẬT GIẢI BÀI TOÁN XE KHÔNG TẢI
A1
A2
A3
A2
55
Ai
50
A2
25
Bảng 6
BÀI TẬP CHƯƠNG 3
LẬP MÔ HÌNH CỦA BÀI TOÁN VẬN TẢI
[1]
[2]
TÌM PHƯƠNG ÁN CỰC BIÊN ĐẦU TIÊN
B3
Ths. Nguyễn Công Trí
[3a] [3b] [3c*] [3d] [3e]
GIẢI BÀI TOÁN VẬN TẢI CÂN BẰNG THU - PHÁT
[4]
[6] [7] [8] [9] 2001
Copyright
[5]
CÁC DẠNG KHÁC CỦA BÀI TOÁN VẬN TẢI
[10a]
[10b]
[10c]
[11a]
[11b]
[11c]
[11d]
18
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
1. Một công ty vận tải biển cần 110 người để bố
trí vào các nhiệm vụ: 10 máy trưởng; 25 thợ máy
1; 30 thợ máy 2; 45 thợ máy 3. Phòng tổ chức
nhân sự tuyển được 90 người, trong đó gồm 25
kỹ sư máy; 20 kỹ thuật viên trung cấp và 45
công nhân có kinh nghiệm.
Gọi xij là số lao động trình độ i (i = kỹ sư, trung
cấp, công nhân) được bố trí vào nhiệm vụ j (j =
máy trưởng, máy 1, máy 2, máy 3).
z 5 x11 4 x12 3 x21 5 x22 4 x23 x32 5 x33 4 x34 max
x11 x12 x13 x14 25
x21 x22 x23 x24 20
Nhiệm vụ
Điểm đánh giá năng lực (aij)
Trình độ
Máy trưởng Máy 1 Máy 2 Máy 3
Kỹ sư
5
4
0
0
Trung cấp
3
5
4
0
Công nhân
0
1
5
4
x31 x32 x33 x34 45
Hãy bố trí nhân lực sao cho công việc tối ưu.
xij 0, i 1,3, j 1, 4
x11 x21 x31 10
x12 x22 x32 25
x13 x23 x33 30
x14 x24 x34 45
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
2. Hai đội tuyển bóng bàn, mỗi đội có 5 người.
Qua thống kê nhiều trận đấu trong quá khứ,
người ta dự đoán xác suất thắng cuộc mỗi đấu
thủ của mỗi đội được thể hiện qua bảng sau
Đội II Đấu Đấu Đấu Đấu Đấu
Đội I
Thủ 1 Thủ 2 Thủ 3 thủ 4 Thủ 5
Đấu thủ 1 0,4
0,5
0,6
0,7
0,8
Đấu thủ 2
0
0,3
0,4
0,4
0,7
Đấu thủ 3 0,2
0,6
0,4
0,3
0,5
Đấu thủ 4 0,6
0,3
0,4
0,7
0,6
Đấu thủ 5
0
0,2
0,3
0,4
0,6
Hãy sắp xếp các đấu thủ của đội I sao cho xác
suất thắng toàn đoàn của đội I cao nhất.
Gọi xij là đấu thủ i của đội I được xếp thi đấu
với đấu thủ j của đội II (i, j = 1, 2, ..., 5).
z 0, 4 x11 0, 5 x12 0, 6 x13 0, 7 x14 0,8 x15
0, 3x22 0, 4 x23 0, 4 x24 0, 7 x25
0, 2 x31 0, 6 x32 0, 4 x33 0,3 x34 0, 5 x35
0, 6 x41 0,3x42 0, 4 x43 0, 7 x44 0, 6 x45
0, 2 x52 0,3 x53 0, 4 x54 0, 6 x55 max
5
x
ij
1, i 1,5
j 1
5
x
ij
1, j 1,5
i 1
xij 0,1
i, j 1, 5
19
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
3.a) Tìm phương án cực biên bằng hai phương
pháp chi phí bé nhất và phương pháp Vogels
Ai
40
20
30
Bj
20 25 30 15
4
3
2
5
4
6
1
7
9
2
8
3
BÀI TẬP CHƯƠNG 3
3.b) Tìm phương án cực biên bằng hai phương
pháp chi phí bé nhất và phương pháp Vogels
Bj
Ai
10
15
7
3 5 10 14
1 3 7
2 4 2
6 5 4
1
3
1
Kiểm tra điều kiện cân bằng thu phát
ai = 40 + 20 + 30 = 90
bj = 20 + 25 + 30 + 15 = 90
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
3.c*) Tìm phương án cực biên bằng hai phương
pháp chi phí bé nhất và phương pháp Vogels
3.d) Tìm phương án cực biên bằng hai phương
pháp chi phí bé nhất và phương pháp Vogels
Bj
Ai
25
10
45
10 30 50
7
2
3
6
1
5
5
4
2
Ai
30
40
70
Bj
40 30 20 50
3
4
1
7
6
5
4
2
7
6
5
8
Kiểm tra điều kiện cân bằng thu phát
ai = 25 + 10 + 45 = 80
bj = 10 + 30 + 50 = 90
Thêm trạm phát giả thứ 4, với a4 = bj - ai = 10,
c4j = 0, j = 1, 2, 3.
20
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
3.e) Tìm phương án cực biên bằng hai phương
pháp chi phí bé nhất và phương pháp Vogels
Ai
30
20
40
60
Bj
30 20 25 35 40
13
5
10
6
7
1
5
3
6
10
3
2
2
5
7
11
BÀI TẬP CHƯƠNG 3
6. a) Giải bài toán vận tải
5. a) Giải bài toán vận tải
Bj
220
100
90
50
5
5
10
160
4
9
6
a) Phương án cực biên đầu tiên thu được bằng
phương pháp chi phí bé nhất,
b) Phương án cực biên đầu tiên thu được bằng
phương pháp Vogels.
12
11
14
10
BÀI TẬP CHƯƠNG 3
Ai
4. Giải bài tập [3], với
120
3
7
8
80
10
12
15
b) Bài toán có phương án tối ưu khác hay
không? Nếu có, chỉ ra phương án tối ưu đó.
Ai
90
40
50
Bj
20 100 45
10
3
9
6
4
4
4
2
3
15
1
5
7
b) Bài toán có phương án tối ưu khác hay
không? Nếu có, chỉ ra tập phương án tối ưu.
21
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
7. Cho bài toán vận tải có dạng
ai 20, 110, 120
b j 70, 40,30,60,50
4 2 5 7 6
cij 5 8 3 4 5
2 1 4 3 2
BÀI TẬP CHƯƠNG 3
8. Cho bài toán vận tải có dạng
ai 38, 45, 66, 45
b j 52, 45, 38, 59
a) Tìm P.A.T.Ư của bài toán trên.
b) Theo bạn dấu hiệu nào cho ta biết BTVT có
nhiều P.A.T.Ư? P.A.C.B.T.Ư tìm được ở câu
a) có duy nhất không? Nếu có, hãy chỉ ra
P.A.C.B.T.Ư khác?
9 5 6 14
10 7 9 15
cij
10 10 6 7
4 8 13 14
a) Tìm P.A.T.Ư của bài toán trên.
b) Phương án tối ưu vừa tìm được có duy
nhất không? (có giải thích). Chỉ ra một
phương án tối ưu khác? (nếu có).
c) Tìm tập các P.A.T.Ư và chỉ ra 3 P.A.T.Ư?
BÀI TẬP CHƯƠNG 3
9. Giải bài tập [1], [2].
BÀI TẬP CHƯƠNG 3
10. a) Giải bài toán vận tải sau đây và tìm
phương án tối ưu khác (nếu có).
Ai
80
70
100
Bj
60
60
4
10
6
5
3
4
80 100
6
9
7
12
5
9
22
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
10. b) Giải bài toán vận tải sau đây và tìm
phương án tối ưu khác (nếu có).
10. c) Giải bài toán vận tải sau đây và tìm
phương án tối ưu khác (nếu có).
Trạm phát
ai 100, 20, 30, 50
Trạm phát
ai 79, 50, 60, 50
Trạm thu
b j 70, 60, 25, 50
Trạm thu
b j 46, 45, 76, 20, 52
Ma trận cước phí vận tải
10
30
cij
2
8
14 24 8
20 18 14
12 6 7
16 14 36
Ma trận cước phí vận tải
10
5
cij
3
13
1 5 13 8
6 10 8 13
2 8 9 6
5 7 10 13
BÀI TẬP CHƯƠNG 3
BÀI TẬP CHƯƠNG 3
11. a) Giải bài toán vận tải có ô cấm sau đây và
tìm phương án tối ưu khác (nếu có).
11. b) Giải bài toán vận tải có ô cấm sau đây và
tìm phương án tối ưu khác (nếu có).
Trạm phát
ai 90, 40, 50
Trạm phát
ai 100, 80, 50
Trạm thu
b j 20, 100, 45
Trạm thu
b j 65, 90, 50, 30
Ma trận cước phí vận tải
10 6 4
cij 3 4 2
9 4 3
Điều kiện A3 phải phát hết hàng.
Ma trận cước phí vận tải
10 9 12 7
cij 9 11 10 15
8 7 14 12
Điều kiện B2 phải thu đủ hàng.
23
ThS. Nguyễn Cơng Trí - Tối ưu hóa * Chương 3
BÀI TẬP CHƯƠNG 3
11. c) Giải bài toán vận tải có ô cấm sau đây và
tìm phương án tối ưu khác (nếu có).
BÀI TẬP CHƯƠNG 3
11. d) Giải bài toán vận tải có ô cấm sau đây và
tìm phương án tối ưu khác (nếu có).
Trạm phát
ai 220, 100, 90
Trạm phát
ai 90, 40, 50
Trạm thu
b j 50, 160, 120, 80
Trạm thu
b j 20, 100, 45
Ma trận cước phí vận tải
5 4 3 10
cij 5 9 7 12
10 6 8 15
Điều kiện trạm phát A3 không được phát cho
trạm thu B2.
Ma trận cước phí vận tải
10 6 4
cij 3 4 2
9 4 3
Điều kiện trạm thu B2 không được thu của
trạm phát A1.
24