ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
461191 Discrete Math Lecture 10: Graphs
San Ratanasanya CS, KMUTNB Adapted from Dr. Goanchanart, RSU and Assist. Prof. Suksomboon, LPRU
2
Today’s topics Review of Relations Administrivia Graphs 9.1 – 9.5
9.6 – 9.8 2
3
Relations Relations (ความสัมพันธ์) แสดงถึงโครงสร้าง หรือความสัมพันธ์ของสมาชิกใน set ซึ่งเราสามารถนำความสัมพันธ์นี้ไปใช้แก้ปัญหาในหลายๆเรื่องได้ เช่น การออกแบบฐานข้อมูล การออกแบบและวางเครือข่ายคอมพิวเตอร์ เป็นต้น คุณสมบัติที่น่าสนใจของ Relations เช่น Reflexive Symmtric Antisymmetric Transitiveคำว่า Relation โดยทั่วไปจะหมายถึง Binary Relation เราใช้สัญลักษณ์ a R b แทน relation R จาก a ไป b และ a R b หมายถึง a และ b ไม่มี relation R ต่อกัน เราสามารถแสดงใช้ Matrix หรือ DiGraph ความสัมพันธ์ได้ Matrix และ DiGraph สามารถบอกถึงคุณสมบัติที่มีอยู่ในความสัมพันธ์นั้นได้ / 3
4
Examples Relation บน {1,2,3,4} ใดต่อไปนี้ เป็น reflexive, symmetric, antisymmetric, และ transitive ตามลำดับ ? R1 = { (1,1), (1,2), (2,1), (2,2), (3,4), (4,1), (4,4) } R2 = { (1,1), (1,2), (2,1) } R3 = { (1,1), (1,2), (1,4), (2,1), (2,2), (3,3), (4,1), (4,4) } R4 = { (2,1), (3,1), (3,2), (4,1), (4,2), (4,3) } R5 = { (1,1), (1,2), (1,3), (1,4), (2,2), (2,3), (2,4), (3,3), (3,4), (4,4) } R6 = { (3,4) } Reflexive: R3, R5 Symmetric: R2, R3 Antisymmetric: R4, R5, R6 Transitive: R4, R5, R6 4
5
Examples ให้ A = {1,2,3} และ B = {1,2,3,4} และมี Relation R1 = {(1,1), (2,2), (3,3)} และ R2 = {(1,1), (1,2), (1,3), (1,4)} จงหา R1 R2 R1 R2 R1 - R2 R2 – R1 จงหา Composite ของ R และ S โดยที่ R เป็น relation จาก {1,2,3} ไปยัง {1,2,3,4} โดยที่ R = {(1,1), (1,4), (2,3), (3,1), (3,4)} และ S เป็น relation จาก {1,2,3,4} ไปยัง {0,1,2} โดยที่ S = {(1,0), (2,0), (3,1), (3,2), (4,1)} S○R = {(1,0), (1,1), (2,1), (2,2), (3,0), (3,1)} {(1,1), (1,2), (1,3), (1,4), (2,2), (3,3)} {(1,1)} {(2,2), (3,3)} {(1,2), (1,3), (1,4)} 5
6
Examples ให้ Relation R บน Set แสดงด้วย Matrix ข้างล่าง จงหาว่า Rเป็น Reflexive, Symmetric และ/หรือ Antisymmetric R จะเป็น Reflexive และ Symmetric แต่ไม่เป็น Antisymmetric
7
Example จงหาว่า Relation ที่แสดงด้วย Directed Graph ดังรูปข้างล่างเป็น Reflexive, Symmetric, Antisymmetric และ/หรือ Transitive Symmetric
8
Warshall’s Algorithm
9
Equivalence Relations
R ต้องมีคุณสมับติ Reflexsive, Symmetric, Transitive แบ่ง set ออกเป็นส่วนๆ (Partition) โดยที่ไม่จำเป็นต้องรู้รายละเอียดปลีกย่อยของสมาชิกในส่วนนั้นๆ ใช้เป็นตัวแทน (Representative) คุณสมบัติของสมาชิกของส่วนที่แบ่งแล้วได้
10
Examples จงหา Equivalence Class ของ 0 และ 1 สำหรับ congruence modulo 4
[0] = {…, -8, -4, 0, 4, 8, …} [1] = {…, -7, -3, 1, 5, 9, …}
11
Partial Ordering R ที่มีคุณสมบัติ Reflexive, Anti-symmetric, Transitive POSET = Partially Ordered Set หรือ (S, R) เช่น (Z, >) หมายถึง ในเซต Z ความสัมพันธ์ > มีลักษณะเป็น Partial Ordered หรือ > บน Z เป็น POSET นั่นเอง POSET สามารถเขียนให้อยู่ในรูปของ Graph ได้ หรือจะใช้ Hasse diagram ก็ได้ Topological Sorting เปรียบเสมือนการหา POSET
12
Examples
17
Administrivia Midterm Exam
Statistic Summary: n = 109 Max: 15.3 Mean: 6.8 Min: 1 Standard Deviation: 3.00 HW 7 and 8, and Programming Assignment 2 due today Final Exam (comprehensive) is in 1 month. Be prepared! 17
18
Graph กราฟเป็นโครงสร้างแบบไม่ต่อเนื่อง(Discrete Structure) ที่ประกอบด้วยส่วนของ Vertices และส่วนของ Edges ที่เชื่อมต่อระหว่าง Vertices โดยที่เราสามารถแบ่งกราฟได้เป็นหลายชนิดตามแต่ลักษณะการเชื่อมต่อของ Edge Edge 2 edge ใดๆ ที่เชื่อมคู่ของ 2 Vertices เดียวกันไม่สามารถทับกันได้ ถ้าเรามี Vertices จำนวนนับไม่ถ้วน (Infinite) เราจะพูดได้ว่าเรามี Infinite Graph ถ้าเรามี Vertices จำนวนจำกัด (Finite) เราจะพูดได้ว่าเรามี Finite Graph ในบทนี้เราจะศึกษาเฉพาะ Finite Graph
19
Types of Graph
20
Types of Graph
21
Types of Graph
22
Types of Graph
23
Types of Graph
24
Multiple Edges Allowed?
Summary Type Edges Multiple Edges Allowed? Loops Allowed? Simple graph Undirected Multigraph Undirected Pseudograph Undirected Simple directed graph Directed Directed multigraph Directed
25
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
26
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
27
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
28
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
29
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
30
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
31
Exercise Directed/Undirected? Multiple Edges? Loops? Type?
32
Graph Model
33
Graph Model
34
Graph Model: Influence
35
Graph Model
36
Graph Model
37
Graph Model: Precedence Graph
38
Graph Terminology
39
Graph Terminology a b c d e b c d a f e g
40
Graph Terminology
41
Graph Terminology
42
Graph Terminology
43
Special Graph
44
Special Graph
45
Special Graph
46
Special Graph
47
Special Graph: Bipartite
48
Special Graph: Bipartite
49
Special Graph: Bipartite
50
Application of Graph: LAN
51
Application of Graph (Parallel Processing)
52
Construction of New Graph
53
Construction of New Graph
54
Exercise Number of vertices? Number of edges? Degree of each vertex?
55
Exercise Number of vertices? Number of edges? Degree of each vertex?
56
Exercise Number of vertices? Number of edges? Degree of each vertex?
57
Exercise Number of vertices? Number of edges? Degree of each vertex?
58
Exercise Number of vertices? Number of edges? Degree of each vertex?
Initial vertices? End vertices? In-degree Out-degree
59
Exercise Number of vertices? Number of edges? Degree of each vertex?
Initial vertices? End vertices? In-degree Out-degree
60
Graph Representation
61
Graph Representation
62
Graph Representation:Adjacency Matrix
63
Graph Representation:Adjacency Matrix
64
Graph Representation:Adjacency Matrix
65
Graph Representation:Adjacency Matrix
66
Graph Representation:Adjacency Matrix
8
67
Graph Representation:Incident Matrix
68
Graph Representation:Incident Matrix
69
Graph Representation:Incident Matrix
70
Graph Isomorphism Greek roots isos: “equal” morphe: “form”
71
Graph Isomorphism
72
Graph Isomorphism
73
Graph Isomorphism
74
Graph Isomorphism
75
Graph Isomorphism
76
Graph Isomorphism
77
Graph Isomorphism
78
Graph Isomorphism
79
Graph Isomorphism
80
Connectivity หลายๆปัญหาสามารถ Model ด้วยการเดินทางไปตาม Edge ของกราฟ เช่นการส่งข้อมูลใน Data Network หรือปัญหาในการวางแผนการเดินทางสำหรับร้านส่งของ การเก็บขยะ การ Diagnostic ในระบบเครือข่ายคอมพิวเตอร์ เป็นต้น ซึ่งปัญหาเหล่านี้สามารถแก้ไขได้โดยการ Model ด้วยกราฟ
81
Connectivity:Path
82
Connectivity:Path
83
Connectivity:Path
84
Connectivity:Path
85
Connectivity:Path
86
Connectivity:Path
87
Connectivity:Path
88
Connectivity:Connectness
89
Connectivity:Connectness
90
Path of 2 Vertices
91
Path of 2 Vertices
92
Euler and Hamilton Path
เมือง Konigsberg ประเทศ Prussia ในศตวรรษที่18 ได้ถูกแบ่งออกเป็น 4 ส่วนด้วยแม่น้ำ Pregel ที่ไหลผ่านตัวเมือง ซึ่งก่อให้เกิดเกาะกลางระหว่างแขนงของแม่น้ำตามรูป ดังนั้นชาวเมืองจึงสร้างสะพานขึ้น 7 สะพานเพื่อเชื่อมส่วนต่างๆของเมืองเข้าด้วยกัน นักท่องเที่ยวที่เดินชมเมืองเกิดข้อสงสัยว่าจะเป็นไปได้ไหมที่เขาจะเดินชมทุกส่วนของเมืองโดยข้ามสะพานแต่ละสะพานเพียงครั้งเดียว และท้ายสุดกลับมาที่จุดเดิม
93
Euler and Hamilton Path
94
Euler and Hamilton Path
95
Euler and Hamilton Path
96
Euler and Hamilton Path
97
Euler and Hamilton Path
98
Euler and Hamilton Path
99
Euler and Hamilton Path
100
Euler and Hamilton Path
101
Euler and Hamilton Path
102
Euler and Hamilton Path
103
Euler and Hamilton Path
104
Euler and Hamilton Path
105
Shortest-Path Problem
106
Ex: Weighted Graph Modeling an Airline System
107
Ex: Weighted Graph Modeling an Airline System
108
Ex: Weighted Graph Modeling an Airline System
109
Shortest-Path Problem
110
Shortest-Path Problem
111
Dijkstra’s Algorithm
112
Dijkstra’s Algorithm
113
Shortest-Path Problem
จงหา Shortest Path ระหว่าง a และ z
115
Traveling Salesman Problem
116
Planar Graph เป็นไปได้หรือไม่ที่จะเชื่อมต่อ น้ำ ไฟฟ้า และ แกส เข้ากับบ้านทั้ง 3 หลังนี้ โดยไม่ให้ท่อส่งทับกัน?
117
Planar Graph Definition 1
118
Examples: Planar Graph?
119
Euler’s Formula Theorem 1
120
Example
121
Corollary 1 Corollary 2 ถ้า G เป็นกราฟระนาบธรรมดาที่ต่อถึงกันแล้ว G จะมี vertex ที่มีดีกรีไม่เกิน 5 Corollary 3
122
Examples
123
Kuratowski’s Theorem Theorem 2
124
Homeomorgraphic Graphs
125
Planar Graph?
126
Graph Coloring ในการทำแผนที่นั้น จะมีการระบายสีขอบเขตต่างๆ ของแผนที่ เราจะมีวิธีการอย่างไรที่จะทำให้ขอบเขตที่อยู่ติดกันมีสีต่างกัน และใช้สีให้น้อยที่สุด ปัญหาข้างต้นเราสามารถใช้กราฟแก้ปัญหาได้ โดยการสร้างแบบจำลองของแผนที่ โดยให้จุดแทนขอบเขต และขอบเขตที่อยู่ติดกันให้มีเส้นเชื่อมจุดนั้นๆ
128
Graph Coloring Definition 1 Definition 2
129
Examples
130
Four Color Theorem คำถามนี้เกิดขึ้นในปี 1950
พิสูจน์โดย Kenneth Appel และ Wolfgang ในปี 1976
131
Examples
132
Applications of Graph Coloring
133
Applications of Graph Coloring
134
สรุป
135
Homework 9 Section 9.1 11, 12 Section 9.2 36, 37, 47, 48 Section 9.3
34, 44, 60, 61, 64 Section 9.4 38, 39, 49, 54, 55 Section 9.5 24, 25, 56, 64 Section 9.6 4, 21, 23, 27 Section 9.7 4, 5, 8, 13, 19-26, 30 Section 9.8 1, 4, 10, 11, 20, 25 Supplementary --- 135
136
Programming Assignment 3
จงเขียนโปรแกรมเข้ารหัสแบบ Caesar โดยให้ผู้ใช้สามารถกำหนด key เองได้ ในการเข้ารหัสให้ใช้ตัวอักษรภาษาอังกฤษตัวพิมพ์ใหญ่เท่านั้นและให้ถือว่าตัวอักขระที่เป็น Space อยู่ต่อจากตัว Z จงเขียนโปรแกรมเข้ารหัสแบบ Huffman จงเขียนโปรแกรม Dijkstra จงเขียนโปรแกรมจัดตารางสอบ จงเขียนโปรแกรมเครื่องคิดเลขแบบ pre-, in-, post-fix จงเขียนโปรแกรม วิธีการส่งงาน: - ส่งทาง ใช้ชื่อ Subject ว่า Assignment 3 ให้ทำการบีบอัดไฟล์ต่างๆเป็นไฟล์เดียว โดยใช้ format เป็น zip หรือ rar ไฟล์ที่ทำการบีบอัดให้ใช้ชื่อไฟล์เป็นรหัสนศ. Each program should be submitted with a report showing its code and how it works (some screen shorts plus descriptions).
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.