... cựcđại mạng Cho mạng G=(V,E) Hãy tìm luồng f* mạng với giá trị luồng val(f *) lớn Luồng ta gọi luồngcựcđại mạng 4.1 Thuật toán Ford – Fulkerson tìm luồngcựcđại mạng Bắt đầu từ mạng với luồng ... tìm đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng ( tức luồngcựcđại ) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn luồng thu lại ... c(s+ ,3) 5,0 7,7 3, 3 9,7 d(c+ ,3) a 12,10 b 5,0 4,2 4 ,3 t(e+,2) e(d+,2) 7,6 6,6 4,4 c 5,2 7,7 4,4 4,2 4,1 s b(a+,1) 7,6 t 3, 3 9,9 d 12,12 e + Bước lặp 6: Không đường tăng luồng nữa, Val(fmax) = 6 +3+ 7...
... cựcđại mạng Cho mạng G=(V,E) Hãy tìm luồng f* mạng với giá trị luồng val(f *) lớn Luồng ta gọi luồngcựcđại mạng 4.1 Thuật toán Ford – Fulkerson tìm luồngcựcđại mạng Bắt đầu từ mạng với luồng ... tìm đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng ( tức luồngcựcđại ) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn luồng thu lại ... c(s+ ,3) 5,0 7,7 3, 3 9,7 d(c+ ,3) a 12,10 b 5,0 4,2 4 ,3 t(e+,2) e(d+,2) 7,6 6,6 4,4 c 5,2 7,7 4,4 4,2 4,1 s b(a+,1) 7,6 t 3, 3 9,9 d 12,12 e + Bước lặp 6: Không đường tăng luồng nữa, Val(fmax) = 6 +3+ 7...
... theo thứ tự từ cao xuống thấp giá trị trọng số Sau lần thêm, ta lại tìm cặp ghép cựcđại đồ thị tìm giá trị cựcđại m dừng Bạn tham khảo chương trình sau: uses crt; const fi = 'input.txt'; fo...
... toán(1)-(2) luồngcựcđại G(k*) có giá trị Δ Chứng minh: Do giá trị luồngcựcđại mạng G(k*)không vượt qu Δ, nên để chứng minh bổ đề ta cần luồngvới giá trị Δ mạng G(k*) Ta xây dựng luồng Φ sau: ... toán luồngcựcđại mạng Trước hết với k nguyêndương ta xây dựng mạng G(k) = (V,E) với e thuộc E:khả thông qua c(e) c(s,ui) = pi c(ui,vj) = aij c(vj,t) = k Bổđề 2: Giả sử vớik luồngcựcđại mạng ... (ui,vj)là luồng qua (ui,vj) Chứngminh: Thật vậy, luồngcựcđại mạng có giá trị Δ nguyên nên Φ (s,ui) = pivà Φ (ui,vj) thuộc {0,1}với i=1,2,…,m;j=1,2,…,n Vậy x* phương án toán (1)-(2) (đpcm) Bổđề 3: ...
... f luồngcựcđại mạng 2) không tìm đường tăng luồng f 3) val(f′) = c(X,X*) với lát cắt (X,X*) 2.Thuật toán tìm luồngcựcđại mạng Định lý sở để xây dựng thuật toán lặp sau để tìm luồngcựcđại ... tìm luồngcựcđại Dữ liệu cho file Luong.out có dạng sau: Phần ma trận kích thước n x n thể luồngcựcđại tìm (phần tử (i,j) ma trận luồng cung (i,j)) Dòng số nguyên cho biết giá trị luồngcựcđại ... với mạng cho hình vẽ file tương ứng là: luong.inp 616 034 000 00 032 0 010 030 000004 0000 03 000000 luong.out 033 000 00 030 0 000 030 0000 03 0000 03 000000 Nội dung chương trình sau: var vt,e,p:array [1...
... Như lần tìm đường tăng luồng tổng luồng toàn đồ thị tăng thêm lượng d Khi không tìm đường tăng luồng ta có luồngcựcđại Sau chương trình cài đặt thuật toán tìm luồngcựcđại đồ thị hai phía Các ... xây dựng cặp ghép cựcđại đồ thị sau: Khởi tạo luồng Tìm cho đường tăng luồng Nếu có tăng Nếu không tìm đường tăng luồng ta luồngcựcđại Đường tăng luồng đường đồ thị hai phía có hướng Gx, có tập ... L(1,2) = L(1 ,3) = xếp người lên xe người lên xe 3, người lên xe Chú ý nên có đủ chỗ xe, lên xe Vậy, vấn đề tìm luồngcựcđại Thuật toán sau: Thuật toán Phương pháp xây dựng cặp ghép cựcđại đồ thị...
... đối hoàn chỉnh “bài toán luồngcựcđại mạng với khả thông qua cung đỉnh”, toán luồngcựcđại mạng với khả thông qua cung thuật toán xây dựng dựa thuật toán tìm luồngcực giải toán tối ưu rời ... định mạng G’ 20 Tìm luồngcựcđại mạng G’ Bắt đầu từ luồng zero với khả thông qua cung Hai bước ta biểu diễn dạng sơ đồ thuật toán sau: SƠ ĐỒ THUẬT TOÁN TỔNG QUÁT TÌM LUỒNGCỰCĐẠI TRONG MẠNG VỚI ... trận A’ biểu diễn mạng G’ = (V’,E’) với khả thông qua cung tương ứng * Ma trận luồngcựcđại mạng * Giá trị luồngcựcđại Val(f*) Mạng tương ứng với G = (V,E), |V | = n mạng G’ = (V’,E’), |V’|...
... lát cắt cực tiểu, suy f luồngcựcđại TH2: Thuật toán kết thúc xuất phát từ P2 gặp điều kiện T = Φ Kí hiệu Y tập tất đỉnh mang nhãn lùi, đógetData(V\Y,Y) lát cắt cực tiểu, suy f luồngcựcđại lát ... Del_label Step =3 F T Step =4 Stop=True F Waiting [1] Trần Quốc Chiến, Thuật toán hoán chuyển nguồn đích tìm luồngcựcđại (1), Tạp chí Khoa học & Công nghệ, Đại học Đà Nẵng, 1( 13) /2006, 53- 58 [2] Trần ... chuyển nguồn đích tìm luồngcựcđại (2), Tạp chí Khoa học & Công nghệ, Đại học Đà Nẵng, 3( 15)-4(16)/2006, 77-82 [3] Trần Quốc Chiến (2005), Giáo trình Lý thuyết đồ thị, Đại học Đà Nẵng 2005 [4]...
... mạng luồngcựcđại bình thường Ta rút gọn toán xác định luồngcựcđại mạng có nhiều nguồn nhiều bồn thành toán luồngcựcđại bình thường Hình 26 .3 (b) nêu cách chuyển đổi mạng từ (a) thành mạng luồng ... nhóm Luồngcựcđại Nghĩa là, tổng luồng rời nguồn (Ở đây, hệ ký hiệu |.| thể giá trị luồng, giá trị tuyệt đối số.) Trong toán luồngcực đại, ta có mạng luồng G với nguồn s bồn t, ta muốn tìm luồng ... đó, bảo toàn luồng tuân thủ Như vậy, luồngcựcđại mạng xác định số lượngcựcđại p thùng hàng ngày di chuyển Nhóm - Lớp KHMT B 2010-2012 Bài dịch nhóm Luồngcựcđại Hình 26.1 (b) nêu luồng mạng...
... tìm luồngcựcđại mạng: Bắt đầu từ luồng với luồng tất cung ( ta gọi luồngluồng không ), lặp lại bước lặp sau thu luồng mà không luồng tăng: 21 Thuật toán Ford – Fulkerson 10 Xuất phát từ luồng ... 6,6 5,5 t 3, 1 s 3, 0 6,1 5,2 c + Bước lặp 2: s → c → d → b → e → t, δ2 = b 1,1 e 6 ,3 d 6,6 5,5 s 3, 2 5,4 c 6 ,3 1,1 e 6,5 b(d-,2) d(c+,2) 6,6 5,5 s (-,∞) t 3, 3 t(e+,2) 3, 1 3, 0 5,2 c(s+ ,3) 1,1 6,1 ... 5,2 c(s+ ,3) 1,1 6,1 e(b+,2) + Bước lặp 3: Không đường tăng luồng, Val(fmax) = 5+46 ,3 = b d 6,6 5,5 t 3, 3 s 3, 2 5,4 c 24 1,1 6 ,3 e Hình Mạng G với luồngcựcđại lát cắt hẹp Lặp Đỉnh xét s b c d...
... Định nghĩa 3: Giá trị luồng Cho luồng f mạng G Giá trị luồng f định nghĩa đạilượng V( f) = ∑ ( a ,i ) ∈G f = ∑ ( i , z ) ∈G f iz 2.Bài toán luồngcực đại: * Phát biểu toán luồngcựcđại Trong ... sau luồng fab = 2, fbc =2, fcz = 3, fad = 3, fdc = 1, fde = 2, fez = Lê Duy Quang Trang BÀI TOÁN LUỒNGCỰCĐẠI biểu diễn số ngoặc đơn mạng 2(2) b c 3( 2) 4 (3) a 2(1) 5 (3) z 4(2) d 2(2) e Hình 1 .3 ... toán lặp sau để tìm luồngcựcđại mạng: Bắt đầu từ luồng với luồng tất cung (ta gọi luồngluồng không), lặp lại bước lặp sau thu luồng mà không luồng tăng: (i) Xuất phát từ luồng ban đầu f:=0...
... đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng (tức luồngcực đại) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn đổi với luồng thu ... nhãn chi tiết sau để giải toán luồngcựcđại mạng Thuật toán luồng chấp nhận mạng (có thể luồng không) , sau ta tăng luồng cách tìm đường tăng luồng Để tìm đường tăng luồng ta áp dụng phương pháp ... tìm đường tăng luồng Thuật toán kết thúc luồng có mạng không tìm đường tăng luồng Hai thủ tục tìm đường tăng luồng mô tả sau : Procedure Find-path; { Thủ tục gán nhãn đường tăng luồng p[v], ∈...
... đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng (tức luồngcực đại) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn đổi với luồng thu ... nhãn chi tiết sau để giải toán luồngcựcđại mạng Thuật toán luồng chấp nhận mạng (có thể luồng không) , sau ta tăng luồng cách tìm đường tăng luồng Để tìm đường tăng luồng ta áp dụng phương pháp ... tìm đường tăng luồng Thuật toán kết thúc luồng có mạng không tìm đường tăng luồng Hai thủ tục tìm đường tăng luồng mô tả sau : Procedure Find-path; { Thủ tục gán nhãn đường tăng luồng p[v], ∈...
... tìm luồng f* mạng với giá trị luồng val(f*) lớn Luồng ta gọi luồngcựcđại mạng 4.1 Thuật toán Ford – Fulkerson tìm luồngcựcđại mạng Bắt đầu từ mạng với luồng tất cung ( ta gọi luồngluồng ... tìm đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng ( tức luồngcựcđại ) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn luồng thu lại ... s (s,) c(s+ ,3) 5,0 3, 3 7,7 9,7 d(c+ ,3) a b 5,0 4,2 4 ,3 s 12,10 e(d+,2) 7,6 6,6 t(e+,2) 4,4 c 5,2 t 3, 3 7,7 9,9 d 12,12 e + Bước lặp 6: Không đường tăng luồng nữa, Val(fmax) = 6 +3+ 7 = 16 Generated...
... Bước 3: LuồngcựcđạiLuồngcựcđại có giá trị 9, lát cắt cực tiểu (X,Y) với X={1 ,3} , Y={2,4,5,6} Định lý tính nguyên: “Nếu tất khả thông qua số nguyên thuật toán tìm luồngcựcđại với luồng ... chứa 1 .3 Thuật toán Ford-Fulkerson Việc chứng minh định lý luồngcực đại- lát cắt cực tiểu cho thuật toán Tìm luồngcực đại- thuật toán Ford-Fulkerson: • Khởi tạo luồng • Trong đồ thị tăng luồng ... cứu đề tài, trình bày toán luồngcựcđại thuật toán Ford – Fulkerson Đề tài đưa số toán ứng dụng cụ thể toán luồngcựcđại Hy vọng hiểu thêm thuật toán tìm luồngcựcđại áp dụng để giải toán đặt...
... f luồngcựcđại mạng 2) không tìm đường tăng luồng f 3) val(f′) = c(X,X*) với lát cắt (X,X*) 2.Thuật toán tìm luồngcựcđại mạng Định lý sở để xây dựng thuật toán lặp sau để tìm luồngcựcđại ... tìm luồngcựcđại Dữ liệu cho file Luong.out có dạng sau: Phần ma trận kích thước n x n thể luồngcựcđại tìm (phần tử (i,j) ma trận luồng cung (i,j)) Dòng số nguyên cho biết giá trị luồngcựcđại ... với mạng cho hình vẽ file tương ứng là: luong.inp 616 034 000 00 032 0 010 030 000004 0000 03 000000 luong.out 033 000 00 030 0 000 030 0000 03 0000 03 000000 Nội dung chương trình sau: var vt,e,p:array [1...
... luồng nhận kết thúc thuật toán hoán chuyển nguồn đích có trọng số tìm luồngcựcđại Khi đó, f luồngcựcđại Chứng minh Ta xét hai trường hợp kết thúc thuật toán (i) Thuật toán kết thúc bước 3. 1: ... tìm luồngcựcđại G ta thấy: Ở bước 2, T nhỏ S , từ vòng lặp thứ 2, có bước (sinh nhãn lùi) thực Do kết tính toán giống thuật toán đích hướng nguồn [17] Cuối ta nhận luồngcựcđạiluồng ... i 1, 3k j 1) (i,j)(i+1,j) i 2k1, 3k j 1 2k i 1, j 3k (iii) Khả thông qua tất cung Áp dụng thuật toán hoán chuyển nguồn đích có trọng số tìm luồngcựcđại G ta...
... đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng (tức luồngcực đại) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn đổi với luồng thu ... nhãn chi tiết sau để giải toán luồngcựcđại mạng Thuật toán luồng chấp nhận mạng (có thể luồng không) , sau ta tăng luồng cách tìm đường tăng luồng Để tìm đường tăng luồng ta áp dụng phương pháp ... tìm đường tăng luồng Thuật toán kết thúc luồng có mạng không tìm đường tăng luồng Hai thủ tục tìm đường tăng luồng mô tả sau : Procedure Find-path; { Thủ tục gán nhãn đường tăng luồng p[v], ∈...
... cho thấy có luồng đầy, chưa đạt tới giá trị cựcđại Bởi vậy, cần phải dùng thuật toán Ford-Fulkerson để tìm giá trị cựcđạiluồng 2 .3 Thuật toán Ford-Fulkerson: Để tìm luồngcựcđại mạng vận ... tìm luồngcựcđại mạng: Bắt đầu từ luồng tất cung (ta gọi luồngluồng không), lặp lại bước lặp sau thu luồng mà không đường tăng: Bước lặp tăng luồng (Ford – Fulkerson): Tìm đường tăng P luồng ... đường tăng luồng, trường hợp thứ hai luồng xét không tồn đường tăng luồng (tức luồngcực đại) Mỗi tìm đường tăng luồng, ta lại tăng luồng theo đường tìm được, sau xoá tất nhãn đổi với luồng thu...