Bài tập chương 11: Luồng Flow Discrete Structures for Computer Science (CO1007)

7 458 1
Bài tập chương 11: Luồng Flow  Discrete Structures for Computer Science (CO1007)

Đang tải... (xem toàn văn)

Thông tin tài liệu

Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính Bài tập chương 11 Dòng chảy Dẫn nhập Trong tập đây, làm quen với thuật giải Ford-Fulkerson ứng dụng thực tiễn Trước làm tập bên dưới, sinh viên cần ôn lại lý thuyết đồ thị dòng chảy, thuật giải liên quan trình bày chương 11 Bài tập mẫu Câu Hãy tìm dòng chảy tối đa từ s đến t đồ thị G sau (G) A C 8 s t B D Lời giải • Đặt G(0) = G Sau đó, ta xây dựng bảng sau: k π (k) (s, A) (s, B) (A, C) (A, D) (B, D) (C, t) (D, C) (D, t) f (k) Theo thuật giải Ford-Fulkerson, ta chọn đường từ s đến t Tại đây, ta chọn π (k) = (s − A − C − t) Dòng chảy G(0) lúc f (k) = min(c(s, A), c(A, C), c(C, t)) = min(8, 4, 6)=4 Lúc này, điền vào bảng: k π (k) (s-A-C-t) (s, A) (s, B) - (A, C) (A, D) - (B, D) - (C, t) (D, C) - (D, t) - f (k) Do đó, ta cần xây dựng đồ thị G(1) sau (cần lưu ý cạnh có trọng số không cần vẽ): (G(1) ) 4 A C s t B Giáo trình Cấu trúc Rời Rạc cho KHMT D Trang 1/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính • Dựa vào đồ thị G(1) , tồn đường từ s đến t, chẳng hạn (s, A, D, C, t) Dòng chảy G(1) f (k) = min(c(s, A), c(A, D), c(D, C), c(C, t)) = min(4, 8, 2, 2)=2 Lúc này, cập nhật vào bảng: k π (k) (s-A-C-t) (s-A-D-C-t) (s, A) (s, B) - (A, C) - (A, D) (B, D) - (C, t) (D, C) (D, t) - f (k) Do đó, ta đồ thị G(2) sau: (G(2) ) A C 6 s B t 2 D • Dựa vào đồ thị G(2) , tồn đường từ s đến t, chẳng hạn (s, A, D, t) Dòng chảy G(2) f (k) = min(c(s, A), c(A, D), c(D, t)) = min(2, 6, 8)=2 Lúc này, điền vào bảng: k π (k) (s-A-C-t) (s-A-D-C-t) (s-A-D-t) (s, A) 2 (s, B) - (A, C) - (A, D) 2 (B, D) - (C, t) - (D, C) - (D, t) f (k) 2 Tiếp theo, ta cần xây dựng G(3) sau: (G(3) ) A C s B t 6 D • Dựa vào đồ thị G(3) , tồn đường từ s đến t, chẳng hạn (s, B, D, t) Dòng chảy G(3) f (k) = min(c(s, B), c(B, D), c(D, t)) = min(6, 6, 6)=6 Lúc này, điền vào bảng: k π (k) (s-A-C-t) (s-A-D-C-t) (s-A-D-t) (s-B-D-t) (s, A) 2 - (s, B) (A, C) - (A, D) 2 - (B, D) (C, t) - (D, C) - (D, t) f (k) 2 Tiếp theo, ta cần xây dựng đồ thị G(4) sau: • Tại G(4) , không tồn đường từ s đến t, nên dừng giải thuật Kết dòng chảy tối đa dòng chảy qua cung thể bảng Giáo trình Cấu trúc Rời Rạc cho KHMT Trang 2/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính (G(4) ) A C s t B k π (k) (s-A-C-t) (s-A-D-C-t) (s-A-D-t) (s-B-D-t) Stop (s, A) 2 (s, B) 6 (A, C) 4 D (A, D) 2 (B, D) 6 (C, t) (D, C) 2 (D, t) f (k) 2 14 ✷ Bài tập tự giải Câu Hãy tìm dòng chảy tối đa từ s đến t đồ thị G1 (G1 ) A C s t B D Câu Hãy tìm dòng chảy tối đa từ s đến t đồ thị G2 (G2 ) A C s t 12 B D Câu Hãy vẽ mặt cắt tối thiểu xác định dòng chảy tối đa từ A đến F đồ thị G3 Câu Hãy vẽ mặt cắt tối thiểu xác định dòng chảy tối đa từ s đến t đồ thị G4 Giáo trình Cấu trúc Rời Rạc cho KHMT Trang 3/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính (G3 ) B A E 2 D F C (G4 ) B C 3 A F D E Câu Hãy tìm dòng chảy tối đa từ s đến t đồ thị có hướng G5 sau (G5 ) 11 A 10 s C E 10 B 14 D F t G Câu Hãy mặt cắt tối thiểu tìm dòng chảy tối đa từ đỉnh A đến đỉnh F đồ thị có hướng G6 sau Câu Hãy mặt cắt tối thiểu tìm dòng chảy tối đa từ đỉnh A đến đỉnh J đồ thị có hướng G7 sau Câu Hãy mặt cắt tối thiểu tìm dòng chảy tối đa từ đỉnh A đến đỉnh F đồ thị có hướng G8 sau Bài tập nâng cao Câu 10 Mặt cắt để tính tiết diện dòng chảy từ đỉnh s đến đỉnh t đồ thị G = (V, E) mặt cắt phân chia tập đỉnh V thành hai tập riêng biệt cho hai đỉnh s t thuộc hai tập Giáo trình Cấu trúc Rời Rạc cho KHMT Trang 4/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính (G6 ) B A (G7 ) B F 10 G E -4 D C H E G 3 A C (G8 ) I C D G E 1 Giáo trình Cấu trúc Rời Rạc cho KHMT A F B J 12 D H 10 15 F H Trang 5/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính khác Vậy số mặt cắt có đồ thị có n đỉnh m cạnh bao nhiêu? Câu 11 Trong ngày lễ hiến máu tình nguyện, có 170 sinh viên Đai Học Bách Khoa đăng ký hiến máu trung tâm hiến máu Kết kiểm nghiệm nhu cầu thực tế mô tả bảng sau Loại máu Khả đáp ứng Nhu cầu A 46 39 B 34 38 O 45 42 AB 45 50 Biết rằng: • bệnh nhân có máu loại A nhận máu loại A O; • bệnh nhân có máu loại B nhận máu loại B O; • bệnh nhân có máu loại O nhận máu loại O; • bệnh nhân có máu loại AB nhận loại máu Hãy giúp trung tâm quản lý máu xác định giải pháp tốt để phục vu cho nhiều bệnh nhân Câu 12 Món dứa tươi đặc biệt phục vụ nhà hàng London: Để đảm bảo độ tươi, dứa mua Hawaii vận chuyển máy bay từ Honolulu đến Heathrow London Sơ đồ mạng sau tuyến đường khác mà dứa vận chuyển 45 CHI 105 56 75 HNL 68 88 71 48 SFO 44 LAX BOS 57 65 NYC LHR 76 63 ATL Nếu trọng số sơ đồ mạng diễn đạt khả vận chuyển số lượng dứa ngày chuyến đi, nhà hàng phục vụ tối đa ngày? Nếu trọng số sơ đồ mạng diễn đạt chi phí/thùng dứa, chuyến ngày tối đa vận chuyển 15 thùng dứa Liệu nhà hàng đáp ứng 2000 khách hàng ngày không? Biết với thùng dứa, nhà hàng phục vụ thức ăn cho 12 khách hàng Ghi chú: mã thông tin sơ đồ tương ứng với mã sân bay thành phố tương ứng trình bày bên dưới: Giáo trình Cấu trúc Rời Rạc cho KHMT Trang 6/7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học Kỹ Thuật Máy Tính Mã HNL CHI BOS SFO NYC LAX ATL LHR Tên thành phố Honolulu Chicago Boston Sans Francissco New York Los Angeles Atlanta LondonHeathrow Tổng kết Thông qua tập phần này, làm quen với việc áp dụng giải thuật FordFulkerson để giải toán dòng chảy Và tập giúp phần hiểu thêm ứng dụng thực tiễn lý thuyết đồ thị (tham khảo chi tiết slide chương 11) Giáo trình Cấu trúc Rời Rạc cho KHMT Trang 7/7

Ngày đăng: 29/03/2017, 18:30

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan