Kinh Tế - Quản Lý - Kinh tế - Thương mại - Công nghệ thông tin Phương pháp tính toán tối ưu Chương 3: Bài toán vận tải Chương 3 Bài toán vận tải 3.1 Mô hình toán học của bài toán 3.2 Các tính chất của bài toán 3.3 Thuật toán giải bài toán vận tải 3.4 Các trường hợp đặc biệt 3.1 Mô hình toán học 3.1.1 Bài toán vận tải - Có một loại hàng do m trạm phát A1, ..., Am cung cấp, khối lượng tương ứng là a1, a2, ..., am. - Có n nơi nhận (trạm thu) B1, ..., Bn, khối lượng tương ứng là b1, b2, ..., bn. - Phí chở một đơn vị hàng từ Ai đến Bj là cij. Tổng khả năng cung cấp bằng tổng nhu cầu tiếp nhận: Yêu cầu: Lập kế hoạch vận chuyển để: Cung hết hàng, nhận đủ hàng, tổng cước phí ít nhất.. 3.1.2 Mô hình toán học của bài toán: - Gọi xij: lượng hàng chuyển từ Ai Bj , xij ≥ 0. - Tổng lượng hàng phát đi từ Ai: - Tổng lượng hàng nhận vào Bj: - Tổng chi phí: - Mô hình toán học: tìm X=(xij)mxn: .. - Mô hình toán học: tìm X=(xij)mxn: cij 0, ai > 0, bj > 0 và: -> BTVT cân bằng thu phát. . 3.1.3 Bảng vận tải: - Dạng bảng của BTVT, gồm m hàng, n cột; - Ô (i, j): cij đặt ở gõ trên trái, xij đặt góc dưới phải. .. T P B1 … Bj … Bn A1 c11 x11 c1j x1j c1n x1n … Ai ci1 xi1 cij xij cin xin … Am cm1 xm1 cmj xmj cmn xmn - Nếu xij > 0 (Ai có chuyển hàng cho Bj): (i, j) đgl ô chọn. - Nếu xij = 0: (i,j) đgl ô loại. - Dãy ô (đường đi): dãy ô được đánh số thỏa mãn: 1) Hai ô liên tiếp phải cùng dòng hoặc cùng cột. 2) Ba ô liên tiếp không cùng dòng và không cùng cột. .. X X X X X X - Vòng (chu trình): Một dãy ô khép kín (ô cuối cùng cột hoặc cùng dòng với ô đầu). - Một tập các ô đgl có chứa vòng nếu từ tập các ô đó có thể trích ra được một số ô tạo thành vòng. Nhận xét: Một vòng bao giờ cũng có một số chẵn các ô.. X X X X X X 3.2 Các tính chất của BTVT Định lý: 1) Bài toán vận tải bao giờ cũng có PATƯ. 2) PA X0 của BTVT cân bằng thu phát là PA cực biên khi và chỉ khi tập các ô chọn của PA không chứa vòng. - Hệ quả1: PA X của BTVT cân bằng thu phát là PA không cực biên khi và chỉ khi tập các ô chọn của PA có chứa vòng. 3) Trên bảng vận tải m dòng, n cột, số ô lớn nhất không chứa vòng là (m+n-1). => Một PACB của BTVT chỉ có không quá m+n-1 ô chọn. . - Hệ quả 2: PACB có m+n-1 ô chọn là PACB không suy biến, có ít hơn m+n-1 ô chọn là PACB suy biến. 4) Mỗi PACB đều có tương ứng ít nhất một tập m+n-1 ô không chứa vòng, trong đó phải có các ô chọn của PA. - Tập ô như trên đgl tập ô cơ sở của PACB tương ứng; Mỗi PACB không suy biến chỉ có một tập ô cơ sở, là tập ô chọn của PA. - Tìm tập cơ sở của PACB suy biến: Thêm các ô loại (đgl ô bổ sung) cho đủ (m+n-1) ô chọn không chứa chu trình -> m+n-1 đgl hạng của BTVT. 5) Với mỗi tập ô cơ sở của một PACB, một ô ngoài cơ sở luôn tạo với một số ô cơ sở một vòng duy nhất. . 3.3 Thuật toán giải bài toán vận tải 3.3.1 Tìm phương án xuất phát: a) Phương pháp cước phí nhỏ nhất: - Phân lượng hàng nhiều nhất có thể được vào ô có cước phí nhỏ nhất. -> Có ít nhất một dòng hay cột thoả mãn nhu cầu (tương ứng với trạm phát đã tiêu thụ hết hàng hoặc trạm thu đã nhận đủ hàng); - Xoá bỏ dòngcột đó đi và lặp lại thao tác trên với các ô còn lại; => Thu được PACB. . Tổng phí: f(X0) =100.5 + 120.12 + 120.8 + 40.10 + 120.10 + 110.16 + 40.15 = 6540 .. P T 150 120 120 100 120 180 16 12 9 51 100 124 80 120 13 10 82 120 8 9 160 145 40 103 120 12 7 15 150 167 110 11 10 6 156 40 b) Phương pháp Fogel: - Tính chênh lệch cước phí giữa 2 ô có cước phí nhỏ nhất của mỗi dòng và mỗi cột; - Tìm dòng hay cột có chênh lệch lớn nhất, phân vào ô có cước phí nhỏ nhất (tiêu thức 1) của dòng hay cột đó lượng hàng lớn nhất có thể được; -> Có ít nhất một dòng hay cột thoả mãn nhu cầu. - Xoá bỏ dòng hay cột đó đi, tính lại chênh lệch cước phí cho các cột hay dòng còn lại. - Lặp lại công việc trên sau một số bước, sẽ thu được PACB. . - Tiêu thức hai: Nếu có nhiều dòng hay cột có chênh lệch lớn nhất như nhau, vẫn xét các ô có cước phí nhỏ nhất của mỗi dòng hay cột đó và ưu tiên ô nào nằm trên cột hay dòng còn lại chứa nó có chênh lệch xij lớn nhất; - Tiêu thức ba: Nếu lại có nhiều ô có tiêu thức hai như nhau thì xét ô có cước phí nhỏ nhất trong chúng. Ví dụ: .. Tổng phí: f(X’0) =80.9 + 100.5 + 120.9 + 40.14 + 120.10 + 110.16 + 40.10 = 6220 .. P T 150 120 120 100 120 180 16 12 93 80 51 100 12 120 13 10 8 8 92 120 160 146 40 104 120 12 7 15 150 167 110 11 105 40 6 15 41, 32, 33x 01, 12 x 31, 22, 23, 24,25 41, 12, 13, 14,65 11, 12, 23, 24,25 01, 02, 13, 14 x 11,12,13, 24,25 x 11 x 31, 32 x c) Phương pháp góc tây bắc: i) Phân phối x11 lớn nhất có thể vào ô (1,1) ở góc trên trái; ii) Xóa hàng hay cột đã hết số lượng phát hay thu; iii) Quay lại bước (i) với bảng còn lại. P T 150 120 120 100 120 180 16 1501 12 302 9 5 12 120 13 10 903 8 304 8 9 160 14 10 12 905 7 706 15 150 16 11 10 6 307 15 1208 3.3.2 Phương pháp thế vị giải BTVT: Bước 1: Khởi tạo - Lập phương án xuất phát X=(xij); - Nếu số ô chọn bằng m + n -1 thì PA xuất phát là không suy biến. - Nếu số ô chọn nhỏ hơn m + n - 1 thì PA xuất phát là suy biến, khi đó phải bổ sung thêm các ô loại để được PA xuất phát không suy biến; các ô đư...
Trang 1Phương pháp tính toán
tối ưu
Chương 3: Bài toán vận tải
Trang 2Chương 3 Bài toán vận tải
3.1 Mô hình toán học của bài toán 3.2 Các tính chất của bài toán
3.3 Thuật toán giải bài toán vận tải 3.4 Các trường hợp đặc biệt
Trang 33.1 Mô hình toán học
3.1.1 Bài toán vận tải
khối lượng tương ứng là a1, a2, , am
- Có n nơi nhận (trạm thu) B1, , Bn, khối lượng tương ứng là b1, b2, , bn
- Phí chở một đơn vị hàng từ Ai đến Bj là cij Tổng khả năng cung cấp bằng tổng nhu cầu tiếp nhận:
Yêu cầu: Lập kế hoạch vận chuyển để: Cung hết hàng,
nhận đủ hàng, tổng cước phí ít nhất./
Trang 43.1.2 Mô hình toán học của bài toán:
- Gọi xij: lượng hàng chuyển từ Ai Bj , xij ≥ 0
- Tổng lượng hàng phát đi từ Ai:
- Tổng chi phí:
Trang 5- Mô hình toán học: tìm X=(xij)mxn:
cij 0, ai > 0, bj > 0 và:
-> BTVT cân bằng thu phát /
Trang 7- Nếu xij > 0 (Ai có chuyển hàng cho Bj): (i, j) đgl ô chọn
- Nếu xij = 0: (i,j) đgl ô loại
- Dãy ô (đường đi): dãy ô được đánh số thỏa mãn:
1) Hai ô liên tiếp phải cùng dòng hoặc cùng cột
2) Ba ô liên tiếp không cùng dòng và không cùng cột
./
Trang 8- Vòng (chu trình): Một dãy ô khép kín (ô cuối cùng cột
hoặc cùng dòng với ô đầu)
- Một tập các ô đgl có chứa vòng nếu từ tập các ô đó có thể trích ra được một số ô tạo thành vòng
* Nhận xét: Một vòng bao giờ cũng có một số chẵn các ô./
Trang 93.2 Các tính chất của BTVT
Định lý:
1) Bài toán vận tải bao giờ cũng có PATƯ
khi và chỉ khi tập các ô chọn của PA không chứa vòng
- Hệ quả1: PA X của BTVT cân bằng thu phát là PA
không cực biên khi và chỉ khi tập các ô chọn của PA có chứa vòng
3) Trên bảng vận tải m dòng, n cột, số ô lớn nhất không chứa vòng là (m+n-1)
=> Một PACB của BTVT chỉ có không quá m+n-1 ô chọn /
Trang 10- Hệ quả 2: PACB có m+n-1 ô chọn là PACB không suy biến, có ít hơn m+n-1 ô chọn là PACB suy biến
4) Mỗi PACB đều có tương ứng ít nhất một tập m+n-1 ô không chứa vòng, trong đó phải có các ô chọn của PA
- Tập ô như trên đgl tập ô cơ sở của PACB tương ứng; Mỗi PACB không suy biến chỉ có một tập ô cơ sở, là tập ô chọn của PA
- Tìm tập cơ sở của PACB suy biến: Thêm các ô loại
(đgl ô bổ sung) cho đủ (m+n-1) ô chọn không chứa chu
trình -> m+n-1 đgl hạng của BTVT
5) Với mỗi tập ô cơ sở của một PACB, một ô ngoài cơ
sở luôn tạo với một số ô cơ sở một vòng duy nhất /
Trang 113.3 Thuật toán giải bài toán vận tải
Trang 12Tổng phí: f(X0) =100.5 + 120.12 + 120.8 + 40.10 + 120.10 +
P T
Trang 13b) Phương pháp Fogel:
- Tính chênh lệch cước phí giữa 2 ô có cước phí nhỏ nhất của mỗi dòng và mỗi cột;
- Tìm dòng hay cột có chênh lệch lớn nhất, phân vào ô
có cước phí nhỏ nhất (tiêu thức 1) của dòng hay cột đó
lượng hàng lớn nhất có thể được;
-> Có ít nhất một dòng hay cột thoả mãn nhu cầu
- Xoá bỏ dòng hay cột đó đi, tính lại chênh lệch cước phí cho các cột hay dòng còn lại
- Lặp lại công việc trên sau một số bước, sẽ thu được
Trang 14- Tiêu thức hai: Nếu có nhiều dòng hay cột có chênh lệch lớn nhất như nhau, vẫn xét các ô có cước phí nhỏ nhất của mỗi dòng hay cột đó và ưu tiên ô nào nằm trên cột hay dòng
- Tiêu thức ba: Nếu lại có nhiều ô có tiêu thức hai như
nhau thì xét ô có cước phí nhỏ nhất trong chúng
Ví dụ: /
Trang 17-> Tập ô sử dụng G(X) gồm m+n-1 ô không chứa vòng/.
Trang 18 Bước 2: Lặp:
2.1 Xác định các thế vị ui, vj từ hệ:
ui+vj = cij; (i,j) G(X);
- Hệ trên có m+n-1 pt và m+n ẩn nên có vô số nghiệm
- Để giải hệ trên ta cho 1 giá trị tùy ý cho biến (thường đặt
u1=0);
2.2 Tính các ước lượng và kiểm tra tiêu chuẩn tối ưu:
- Tính các ước lượng ở các ô không chọn: ij = ui + vj - cij
thuật toán /
Trang 19 2.3 Ngược lại, chọn ô (k,s) có >0 lớn nhất.
- Xét K= K+ + K-: (k, s) K+, các ô tiếp theo của vòng lần lượt thuộc K-, K+ cho đến hết
- Chọn: θ = xp, q =min{xij: (i, j) K-};
- Xây dựng PA mới X’:
- Khi đó tập các ô sử dụng của X’ là: G(X’) = G(X) - {p, q} + {k, s) và không chứa vòng Thay X=X’ và lặp lại bước 2./
(i, θ, x
K j)
(i, θ, x
K j)
(i, x
X
ij
ij
-ij '
ij
Trang 200 0
5 35
10 0
0 0
15 30
Trang 21B2: * Lặp 1:
2.1 Đặt u1=0, tính được các ui, vj như trong bảng
2.2 Tính ij = ui + vj - cij cho các ô không chọn, kết quả ở góc dưới trái (đỏ) các ô; Còn có ij >0 -> chưa TƯ /
T P
Trang 23- Điều chỉnh X0 để được X 1 mới: như trong bảng
* Lặp 2:
- Có G(X1) = G(X)-{p, q}+{k, s) = (3,1)(1,1)(1,2)(2,3)(2,4)(3,4)
- Tính ui, vj và ij n hư trên bảng.
T P
Trang 24- Có max { ij >0}=9 , (k, s) = (1,3);
- Xác định K: (1,3)+(2,3)-(2,4)+(3,4)-(3,1)+(1,1)-;
- Tính θ = min{xij: (i, j) K-} = 20, (p, q)=(1, 1).
T P
Trang 25- Điều chỉnh X1 để được X 2 như trong bảng
* Lặp 3:
- Có G(X3)= G(X2)-{p, q}+{k, s) = (3,1)(3,4)(2,4)(2,3)(1,3)(1,2)
- Tính ui, vj và ij n hư trong bảng.
T P
Trang 26- Có max { ij >0}=6 , (k, s) = (3,3);
- Xác định K: (3,3)+(3,4)-(2,4)+(2,3)-;
- Tính θ = min{xij: (i, j) K-} = 5, (p, q)=(3,3).
T P
Trang 27- Điều chỉnh X2 để được X 3 : Theo bảng
* Lặp 4:
- Tính ui, vj và ij n hư trong bảng.
- Có max = 5, (k, s) =(2, 1); K=(2,1)+(2,3)-(3,3)+(3,1)θ=10, (p, q)= (2, 3).
-T P
Trang 293.4 Các trường hợp đặc biệt của BTVT
3.4.1 Bài toán không cân bằng thu phát:
Trang 30Ví dụ: P>T
Thêm trạm thu giả có lượng hàng 30:
T P
90 6 1 1
70 4 11 3
Trang 3180 4 2 1
70 6 7 8
Trang 323.4.3 Bài toán VT có f(x) → max:
• Phương pháp: Giải bình thường như bt có f(x)→min với lưu ý:
- Tìm PACB ban đầu: Phân phối hàng nhiều nhất vào ô có
cij lớn nhất (năng suất, hiệu quả công việc)
Trang 33Tìm PA phân công công nhân đứng máy để cuối ngày thu được nhiều sản phẩm nhất.
Ví dụ:
Máy CN
T P