Bài giảng Toán rời rạc - Bài 6: Lý thuyết đồ thị - Nguyễn Văn Hiệu
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Toán rời rạc - Bài 6: Lý thuyết đồ thị - Nguyễn Văn Hiệu", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_toan_roi_rac_bai_6_ly_thuyet_do_thi_nguyen_van_hie.pdf
Nội dung text: Bài giảng Toán rời rạc - Bài 6: Lý thuyết đồ thị - Nguyễn Văn Hiệu
- BÀI 6 LÝ THUYẾT ĐỒ THỊ Giáo viên: TS. Nguyễn Văn Hiệu Email: nvhieuqt@dut.udn.vn Nguyễn Văn Hiệu, 2012, Discrete Mathematics 1
- Tổng quan về đồ thi Nội dung Nội dung 6.1. Giới thiệu 6.6. Đồ thị phân đôi 6.2. Định nghĩa 6.7. Đồ thị đẳng cấu 6.3. Thuật ngữ cơ sở 6.8. Tính liên thông 6.4. Định lý cơ sở về bậc 6.9. Đồ thi Euler 6.5. Đồ thị đơn đặc biệt 6.10. Đồ thị Hamilton Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2
- 6.1. Giới thiệu Lý thuyết đồ thị Ứng dụng Xây dựng mật điện trên một Nghành học lâu đời, nhưng bảng điện dùng nhiều trong ứng dụng hiện đại Xác định hai máy tính có kết nối hay không Xác định đường đi ngắn nhất Leohard Euler giữa hai thành phố Lập lịch thi Phân chia kênh truyền cho đài truyền hình Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3
- 6.2. Định nghĩa Đơn đồ thị Ứng dụng G = (V, E) Mạng gồm các máy tính và các kênh điện thoại. V - tập đỉnh, Giữa hai máy tính bất kì có nhiêu nhất 1 kênh điện thoại. E - tập các cặp không có thứ Kênh thoại cho phép liên lạc hai chiều tự, gọi là cạnh nối các đỉnh Không có máy tính nào được nối với phân biệt. chính nó. ∃! (u,v) ∈ ⟹ ∃! (푣, ) ∈ (u, u )∉ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 4
- 6.2. Định nghĩa Đơn đồ thị Ứng dụng G = (V, E) Mạng điện thoại cố định V - tập đỉnh, Mạng giao thông E - tập các cặp không có thứ tự, gọi là cạnh nối các đỉnh phân biệt. Mạng xe buýt ∃! (u,v) ∈ ⟹ ∃! (푣, ) ∈ (u, u )∉ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 5
- 6.2. Định nghĩa Đa đồ thị Ứng dụng G = (V, E) Mạng gồm các máy tính và các kênh điện thoại. V - tập đỉnh, Cho phép hai máy tính nối nhiều kênh thoại (do truyền tài nhiều) E : cho phép nhiều hơn hai cạnh nối 2 đỉnh phân biệt. (u,v) ∈ (u, u )∉ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 6
- 6.2. Định nghĩa Giả đồ thị Ứng dụng Mạng gồm các máy tính và các kênh G = (V, E) điện thoại. Cho phép máy tính nối u kênh thoại V - tập đỉnh, với chính nó E : cho phép vòng (đỉnh đầu và cuối trùng nhau) (u,u) ∈ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 7
- 6.2. Định nghĩa Chú ý Chú ý ĐỒ THI ĐƠN ĐỒ THỊ ≡ ⊂ ĐỒ THỊ VÔ HƯỚNG ĐA ĐỒ THỊ ⊂ GIẢ ĐỒ THỊ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 8
- 6.2. Định nghĩa Đơn đồ thị có hướng Ứng dụng G = (V, E) V - tập đỉnh, E - tập các cặp có thứ tự, gọi là cung nối các đỉnh phân biệt. (u,v) ∈ ⇏ (푣, ) ∈ (u, u )∉ Nguyễn Văn Hiệu, 2012, Discrete Mathematics 9
- 6.2. Định nghĩa Đa đồ thị có hướng Ứng dụng G = (V, E) V - tập đỉnh, E : cho phép nhiều hơn hai cung nối các đỉnh phân biệt. (u,v) ∈ ⇏ (푣, ) ∈ (u, u )∉ Hai cung tương ứng với một cặp đỉnh được gọi là cung lặp Nguyễn Văn Hiệu, 2012, Discrete Mathematics 10
- 6.2. Định nghĩa Đồ thị tình yêu Ứng dụng Hai người có ít nhất cùng 1 sở thích thì có thể ghép đôi G = (V, E) ? Tìm cách ghép đôi sao cho số người V = {A, B , C , D , E} cô đơn là ít nhất E: (u,v) ∈ E nếu u và v có cùng một sở thích Nguyễn Văn Hiệu, 2012, Discrete Mathematics 11
- 6.2. Định nghĩa Hội thảo video Ứng dụng Có n điểm tham gia hội thảo, mỗi điểm phát tính hiệu cho các điểm còn lại Tổng các điểm phát ra từ v phải nhỏ hơn băng thông của v. Thời gian trể từ điểm v đến điểm u phải nhỏ hơn một thông số cho trước. Đảm bảo băng thông được sử dụng tốt nhất Nguyễn Văn Hiệu, 2012, Discrete Mathematics 12
- 6.2. Định nghĩa Hội thảo video Ứng dụng G = (V, E) V: tập các điểm tham gia hội thảo E: tập tất cả các kết nối có thể có (đồ thị đầy đủ) Tìm một cây phủ: cây thể hiện việc phát tính hiệu từ một điểm Nguyễn Văn Hiệu, 2012, Discrete Mathematics 13
- 6.3. Thuật ngữ cơ sở Đồ thị vô hướng G = (V, E) , e = (u,v) ∈ E u và v – đỉnh liền kề 1 2 e - cạnh liên thuộc với u và v 0 u và v – đỉnh đầu của e Bậc của u là số cạnh liên thuộc 3 6 với u. Đỉnh có bậc 0 - đỉnh cô lập Đỉnh có bậc 1 - đỉnh treo. 7 5 4 Khuyên được tính bậc 2 deg(0) = 3, deg(5) = 1, deg(2) = 0, deg(6) = 5, . Nguyễn Văn Hiệu, 2012, Discrete Mathematics 14
- 6.3. Thuật ngữ cơ sở Đồ thị có hướng G = (V, E) , e = (u,v) ∈ E u – nối tới v u v – nối từ u t v u – đỉnh đầu cung e v – đỉnh cuối cung e deg + (u) – bậc ra của u s x - deg (u) – bậc vào của u deg+(s) = 2, deg-(s) = 1, deg+(x) = 1, deg-(v) = 0, Nguyễn Văn Hiệu, 2012, Discrete Mathematics 15
- 6.4 Định lý cơ sở về bậc Đồ thị vô hướng G = (V, E) 1 2 2 |E| = ∑ deg (v) v€ V 0 Tổng số bậc lẽ của đồ 3 6 thị là một số chẳn. 7 5 4 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 16
- 6.4 Định lý cơ sở về bậc Đồ thị có hướng G = (V, E) u + ∑ v€ V deg (v) = ∑ u € V - deg (u) = | E | t v Bỏ qua hướng của G ta có đồ thị vô hướng nền của G s x có số cạnh bằng số cung của G Nguyễn Văn Hiệu, 2012, Discrete Mathematics 17
- 6.5 Đồ thị đơn đặc biệt Đồ thị đầy đủ - K Minh họa n Có n đỉnh Hai đỉnh bất kỳ luôn có cạnh nối Tất cả các đỉnh có bậc n-1 Số cạnh là n*(n-1)/2 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 18
- 6.5 Đồ thị đơn đặc biệt Đồ thị vòng - C Minh họa n Có n đỉnh Các đỉnh nối với nhau theo vòng tròn Mỗi đỉnh có bậc là 2 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 19
- 6.5 Đồ thị đơn đặc biệt Đồ thị bánh xe - W Minh họa n n+1 đỉnh 2n cạnh n đỉnh bậc 3 và 1 đỉnh bậc n Hai đỉnh bất kỳ luôn kề nhau Nguyễn Văn Hiệu, 2012, Discrete Mathematics 20
- 6.5 Đồ thị đơn đặc biệt Đồ thị lập phương :- Q Minh họa n 2n đỉnh n-1 (n-1).2 cạnh Các đỉnh đều có bậc n – 1 Các đỉnh biểu diễn cho các dãy n bit. Nguyễn Văn Hiệu, 2012, Discrete Mathematics 21
- 6.5 Đồ thị đơn đặc biệt Ứng dụng Mạng LAN Mạng cục bộ cấu trúc hình sao Mạng cục bộ cấu trúc vòng Mạng cục bộ cấu trúc hỗn hợp Xử lý song song Nguyễn Văn Hiệu, 2012, Discrete Mathematics 22
- 6.6 Đồ thị phân đôi G = (V, E) Minh họa G – đồ thị phân đôi nếu V = V1 ∪ V2 , V1 ≠ ⨀, V2 ≠ ⨀, V1 ∩ V2 ≠ ⨀ ∀ (u, v) ∈ E⇒ u ∈ Vi ,v ∈ Vj,i ≠ j G – đồ thị phân đôi đầy đủ nếu G là độ thị phân đôi ∀ u ∈ V1 và ∀ u ∈ V2 ⇒ (u,v) ∈ E Nguyễn Văn Hiệu, 2012, Discrete Mathematics 23
- 6.6 Đồ thị phân đôi G = (V, E) Minh họa G – đồ thị phân đôi nếu V = V1 ∪ V2 , V1 V V1 ≠ ⨀, V2 ≠ ⨀, V1 ∩ V2 ≠ ⨀ 2 ∀ (u, v) ∈ E⇒ u ∈ Vi ,v ∈ Vj,i ≠ j G – đồ thị phân đôi đầy đủ nếu G là độ thị phân đôi ∀ u ∈ V1 và ∀ u ∈ V2 ⇒ (u,v) ∈ E K 3x4 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 24
- 6.6 Đồ thị phân đôi Đồ thị có phân đổi không? Đồ thị có phân đổi không? ? Không là đồ thị phân đôi Đồ thị phân đôi Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2525
- 6.6 Đồ thị phân đôi Xác định đồ thị phân đôi Xác định đồ thị phân đôi Dùng breadth first search Đánh số đỉnh 0, 푛ế 푣 푡ℎ ộ 1 Lv thuộc V = 1, 푛ế 푣 푡ℎ ộ 2 2, ℎư ệ푡 Đồ thị nào sau là phân đôi? C6 Cn K3 Kn Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2626
- 6.7 Đồ thị đẳng cấu Xác định đẳng cấu Xác định 2 đồ thị có vẽ cùng một cách hay không. Khó xác định, có n! khả năng Công thức phân tử giống nhau nhưng cấu trúc khác nhau. Sử dụng các đại lượng bất biến: Số đỉnh bằng nhau Hai đồ thị là đẳng cấu nếu có một Số cạnh bằng nhau song ánh giữa tập đỉnh của hai đồ Bậc của các đỉnh bằng nhau thị đảm bảo quan hệ liền kế. Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2727
- 6.8. Tính liên thông G = Đường đi có độ dài n từ u tới v – dãy các cạnh e1 , e2 , ,en : e1 = (x0 , x1), , e1 = (xn-1 , xn) , u = x0 và v = xn . Chu trình: đường đi có u ≡ v Đường đi đơn: đường đi không lặp cạnh Chu trình đơn: chu trình không lặp cạnh Đường đi sơ cấp: đường đi không lặp đỉnh Chu trình sơ cấp: chu trình không lặp đỉnh. Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2828
- 6.8 Tính liên thông G = Đồ thị vô hướng gọi là liên thông nếu: ∀ , 푣 ∈ , 푣: ∃ đườ푛𝑔 đ𝑖 𝑔𝑖ữ 푣à 푣 Đô thị vô hướng liên thông ⟹ tồn tại đường đi đơn Nguyễn Văn Hiệu, 2012, Discrete Mathematics 2929
- 6.8. Tính liên thông G = (V, E) Ví dụ = 1 ∩ 2 , 1 ≠⊕, 2 ≠ ⨂, 1 ∩ 2 = ⊕ Nếu G liên thông ⟹ G1 thành phần liên thông G liên thông ⟹ ∃! một thành phần liên thông (chính là G) Đỉnh khớp: đỉnh nếu loại bỏ sẽ thu được lớn hơn 1 thành phần liên thông. Cạnh cắt: cạnh nếu loại bỏ sẽ được lớn hơn 1 thành phần liên thông. Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3030
- 6.8. Tính liên thông G = (V, E) – đồ thị có hướng Liên thông mạnh nếu có đường đi giữa mọi cặp đỉnh u, v (cả hai chiều) Liên thông yếu nếu có đường đi giữa 2 đỉnh bất kỳ trong đồ thị nền Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3131
- 6.8. Tính liên thông 1 7 C D 0 10 B 5 2 A 8 3 4 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3232
- 6.8. Tính liên thông Chu trình đơn, đường đi đơn 1 6 7 0 10 9 2 3 5 4 8 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3333
- 6.8. Tính liên thông Chu trình - đẳng cấu Ví dụ Chu trình đơn với chiều dài k (k≥ 2) là đại lượng bất biến. Sử dụng để kiểm tra tính đẳng cấu. Không đẳng cấu vì đồ thị bên phải có chu trình đơn với chiều dài 3 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 3434
- Bài tập Đồ thị có phân đôi không? Đồ thị có đẳng cấu không Nguyễn Văn Hiệu, 2012, Discrete Mathematics 35
- 6.9 Đồ thi Euler B B A D A G D C C 7 cầu ở Konigsberg Mô hình đồ thị Nguyễn Văn Hiệu, 2012, Discrete Mathematics 36
- 6.9 Đồ thi Euler G = (V, E) Ví dụ Chu trình Euler trong G là chu trình đơn chứa mọi cạnh của G Một đường đi Euler là đường đi đơn chứa mọi cạnh của G Đồ thị Euler: -G – liên thông, G có chu trình Euler. Đồ thi nữa Euler : G liên thông, G có đường Euler
- 6.9 Đồ thi Euler G = (V, E) – liên thông Điều kiện cần và đủ G có chu trình Euler khi và chỉ khi mọi đỉnh của G đều có bậc chẳn Điều kiện cần và đủ G có đường đi Euler khi và chỉ khi trong G tồn tại duy nhất 2 đỉnh bậc lẽ
- 6.9 Đồ thi Euler Tìm chu trình Euler Ví dụ Input: G đồ thị liên thông có các đỉnh là đỉnh bậc chẳn Output: chu trình Euler C = chọn 1 chu trình bất kỳ H = G đã xóa đị cạnh của C While(H còn cạnh) do C’ = chu trình trong H nhưng có đi qua đỉnh trong C H = H đã xóa đi cạnh của C’ và đỉnh treo; C = C cộng thêm C’ được chèn phù hợp end Thuật toán FLEURY
- 6.9 Đồ thi Euler VD Đồ thị sau có các đường đi Euler là: d1: 1 2 3 4 2 5 4 1 5 d2: 1 2 4 3 2 5 1 4 5 3 2 4 1 5 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 40
- 6.9 Đồ thi Euler 3 3 2 4 2 4 1 5 1 5 Đồ thị nửa Euler 6 Đồ thị Euler Nguyễn Văn Hiệu, 2012, Discrete Mathematics 41
- 6.10 Hamilton G=(V, E) Chu trình Hamilton trong G là chu trình sơ cấp chứ tất cả các đỉnh Một đường Hamilton trong G là đường sơ cấp chứ tất cả các đỉnh Đồ thị Hamilton là đồ thị có Không có điều kiện cần và chu trình Hamilton. đủ để đồ thị tồn tại đường đi và chu trình Đồ thi nữa Hamiltonr là đồ thị có đường Hamilton
- 6.6 Đồ thi Hamilton • G – đơn đồ thị, |V|= n, mọi u thuộc V, deg(u) ĐL1 ≥ n/2 , thì G đồ thị Hamilton • G – đơn đồ thị, |V|= n,mọi u thuộc V, deg(u) ĐL2 ≥ (n-1)/2 , thì G đồ thị nữa Hamilton • G – đồ thị đầy đủ, thì G đồ thị nữa Hamilton ĐL 3 Nguyễn Văn Hiệu, 2012, Discrete Mathematics 45
- 6.10 Hamilton G – vô hướng G – có hướng Chu trình (t.ư. đường) Hamilton:- chu Chu trình (t.ư. đường) Hamilton:- chu trình (t.ư. đường) sơ cấp chứ tất cả trình (t.ư. đường) sơ cấp chứ tất cả các đỉnh các đỉnh Đồ thị Hamilton: - G chứa chu trình Đồ thị Hamilton: - G chứa chu trình Hamilton Hamilton Đồ thi nữa Hamiltonr :- G chứa Đồ thi nữa Hamilton :- G chứa đường đường Hamilton Hamilton Nguyễn Văn Hiệu, 2012, Discrete Mathematics 46
- Đồ thị có hướng Directed graph Đồ thị vô hướng Undirected graph Đơn đồ thị Simple graph Đa đồ thị Multi-graph Giả đồ thị Pseudo-graph Đỉnh Vertex / Vertices Cạnh Edge Cung Arc Cạnh song song Parallel Edges Cung song song Parallel Arcs Khuyên Loop Nguyễn Văn Hiệu, 2012, Discrete Mathematics 47
- THAT’S ALL; THANK YOU What NEXT? BIỂU DIỄN ĐỒ THỊ