งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Discrete Math Lecture 10: Graphs

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Discrete Math Lecture 10: Graphs"— ใบสำเนางานนำเสนอ:

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

13

14

15

16

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

114

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 ในการทำแผนที่นั้น จะมีการระบายสีขอบเขตต่างๆ ของแผนที่ เราจะมีวิธีการอย่างไรที่จะทำให้ขอบเขตที่อยู่ติดกันมีสีต่างกัน และใช้สีให้น้อยที่สุด ปัญหาข้างต้นเราสามารถใช้กราฟแก้ปัญหาได้ โดยการสร้างแบบจำลองของแผนที่ โดยให้จุดแทนขอบเขต และขอบเขตที่อยู่ติดกันให้มีเส้นเชื่อมจุดนั้นๆ

127

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).


ดาวน์โหลด ppt Discrete Math Lecture 10: Graphs

งานนำเสนอที่คล้ายกัน


Ads by Google