ทฤษฎีกราฟ

32
2 ทฤษฎีกราฟ ในเชิงคณิตศาสตร นิยาม กราฟดังนีบทนิยาม กราฟ G ประกอบดวย เซตจํากัด 2 เซต คือ 1. เซตที่ไมเปนเซตวางของจุดยอด (Vertex) แทนดวยสัญลักษณ V(G) 2. เซตของเสนเชื่อม (Edge) ที่เชื่อมระหวางจุดยอด แทนดวยสัญลักษณ E(G) ขอสังเกต V(G) แต E(G) อาจเปนเซตวางได ตัวอยางที1 กําหนดกราฟ G ดังรูป จากกราฟ G ที่กําหนดให จะไดวา V(G) = {A, B, C, D} E(G) = {e 1 , e 2 , e 3 , e 4 } เสนเชื่อม e ของกราฟ เกิดกับ (Incident) จุดยอด v ถาจุดยอด v เปนจุดปลายจุดหนึ่งของ เสนเชื่อม บทนิยาม จุดยอด u และจุดยอด v ของกราฟ เปนจุดยอดประชิด (Adjacent Vertices) ก็ ตอเมื่อ มีเสนเชื่อมระหวางจุดทั้งสอง และเราเรียกจุดยอด u และ v วา จุดปลาย (End Point) ของ เสนเชื่อมนั้น ตัวอยางที2 จากกราฟของตัวอยางที1 จะเห็นวา จุดยอด A และจุดยอด B เปนจุดยอดประชิด จุดยอด A และจุดยอด C เปนจุดยอดประชิด จุดยอด B และจุดยอด C เปนจุดยอดประชิด จุดยอด C และจุดยอด D เปนจุดยอดประชิด แต จุดยอด A และจุดยอด D ไมเปนจุดยอดประชิด

Upload: namfon-supattra

Post on 25-Jun-2015

4.421 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ทฤษฎีกราฟ

82

ทฤษฎกราฟ ในเชงคณตศาสตร นยาม “กราฟ” ดงน

บทนยาม กราฟ G ประกอบดวย เซตจากด 2 เซต คอ

1. เซตทไมเปนเซตวางของจดยอด (Vertex) แทนดวยสญลกษณ V(G) 2. เซตของเสนเชอม (Edge) ทเชอมระหวางจดยอด แทนดวยสญลกษณ E(G)

ขอสงเกต V(G) ≠ ∅ แต E(G) อาจเปนเซตวางได ตวอยางท 1 กาหนดกราฟ G ดงรป

จากกราฟ G ทกาหนดให จะไดวา V(G) = {A, B, C, D} E(G) = {e1, e2, e3, e4}

เสนเชอม e ของกราฟ เกดกบ (Incident) จดยอด v ถาจดยอด v เปนจดปลายจดหนงของเสนเชอม

บทนยาม จดยอด u และจดยอด v ของกราฟ เปนจดยอดประชด (Adjacent Vertices) กตอเมอ มเสนเชอมระหวางจดทงสอง และเราเรยกจดยอด u และ v วา จดปลาย (End Point) ของเสนเชอมนน

ตวอยางท 2 จากกราฟของตวอยางท 1 จะเหนวา จดยอด A และจดยอด B เปนจดยอดประชด จดยอด A และจดยอด C เปนจดยอดประชด จดยอด B และจดยอด C เปนจดยอดประชด จดยอด C และจดยอด D เปนจดยอดประชด แต จดยอด A และจดยอด D ไมเปนจดยอดประชด

Page 2: ทฤษฎีกราฟ

83

จดยอด B และจดยอด D ไมเปนจดยอดประชด หมายเหต

1. ในการเขยนแผนภาพของกราฟนน จะกาหนดตาแหนงของจดยอด ณ ตาแหนงใดกได และจะลากเสนเชอมของกราฟเปนเสนตรงหรอเสนโคงมความยาวเปนเทาใดกได โดยทเสนทลากจะไมตดกบตวมนเอง และไมลากผานจดยอดทไมใชจดยอดของเสนนน เชน กราฟตอไปน ถอวาเปนกราฟเดยวกน

2. เสนเชอมสองเสนของกราฟ อาจลากตดกนกได โดยทจดตดของเสนทงสองไมถอวาเปนจดยอดของกราฟ เชน กราฟ

สามารถเขยนใหมโดยไมมเสนเชอมตดกนไดดงน

กาหนดกราฟ ดงรป

Page 3: ทฤษฎีกราฟ

84

จากกราฟจะเหนวา e1 และ e2 เปนเสนเชอมระหวางจดยอดคเดยวกน คอ จดยอด a และ จดยอด c เสนเชอม e5 เปนเสนเชอมทเชอมจดยอด b เพยงจดเดยว

บทนยาม เสนเชอมตงแต 2 เสนทเชอมระหวางจดยอดคเดยวกน เรยกวา เสนเชอมขนาน (Parallel Edges)

เสนเชอมทเชอมจดยอดเพยงจดเดยว เรยกวา วงวน (Loop)

จากรปขางตนจะเหนวา e1 และ e2 เปนเสนเชอมขนาน เสนเชอม e5 เปนวงวน

ในกรณทกราฟไมมเสนเชอมขนาน สามารถใชสญลกษณ AB เพอแทนเสนเชอมระหวางจดยอด A และ B ได เชน กราฟในตวอยางท 1 สามารถเขยนเซตของเสนเชอม E(G) ไดใหมเปน E(G) = {AB, BC, AC, CD}

บทนยาม เราเรยกกราฟทไมมเสนเชอมขนาน และไมมวงวน วา กราฟเชงเดยว (Simple Graph)

ตวอยางท 3 พจารณากราฟ

จะเหนวา กราฟ G1 เปนกราฟทมวงวน กราฟ G2 เปนกราฟทมเสนเชอมขนาน และกราฟ G3 เปนกราฟทมวงวนและเสนเชอมขนาน ดงนนกราฟ G1 G2 และ G3 ไมเปนกราฟเชงเดยว

Page 4: ทฤษฎีกราฟ

85

กราฟเดยวกนและกราฟถอดแบบกน

เราไดทราบแลววาในการเขยนกราฟ G จะกาหนดตาแหนงของจดยอด ณ ตาแหนงใดกได จงทาใหกราฟเดยวกนนนมรปทแตกตางกนได

บทนยาม เรากลาววา กราฟ G และกราฟ H เปนกราฟเดยวกน(Identical) กตอเมอ V(G) = V(H)และ E(G) = E(H)

ตวอยางท 4 พจารณากราฟ G และกราฟ H ดงรป

G H จะเหนวา V(G) = {A, B, C, D} = V(H) E(G) = {AC, BC, BD} = E(H)

ดงนน เราจะกลาววา กราฟ G และกราฟ H เปนกราฟเดยวกน บทนยาม เรากลาววา กราฟ G และกราฟ H เปนกราฟถอดแบบกน (Isomorphic) กตอเมอ ม

ฟงกชน φ ซงเปนฟงกชน หนงตอหนงจาก V(G) ไปทวถง V(H) โดยท uv ∈E(G) กตอเมอ ∈φφ )v()u( E(H) สาหรบทกๆจดยอด u และจดยอด v ใน G

Page 5: ทฤษฎีกราฟ

86

ตวอยางท 5 พจารณากราฟ

จะเหนวา กราฟ H และกราฟ G กาหนดชอใหจดยอดแตกตางกน ถงแมวารปกราฟทงสองนจะด

เหมอนกนกตาม แตกราฟ G และ กราฟ H เปนกราฟถอดแบบกน ทงนมฟงกชน φ ซงนยามวา φ(ui) = vi โดยท i = 1, 2, 3, 4, 5 เปนฟงกชนหนงตอหนงจาก V(H) ไปทวถง V(G) โดยท uiuj ∈E(H) กตอเมอ vivj ∈E(G) ดกรของจดยอด

พจารณากราฟตอไปน

จดยอด จานวนครงทงหมดทเสนเชอมเกดกบจดยอด a 2 b 4 c 4 d 2

จะเหนวา เสนเชอมทเกดกบจดยอด a ไดแก เสนเชอม ab และ ac ดงนน จานวนครงทงหมดทเสนเชอมเกดกบจดยอด a คอ 2 สาหรบจดยอด b มเสนเชอมทเกดกบจดยอด b ไดแก เสนเชอม ba, bc และ bb เปนวงวน เกดกบจดยอด b กรณทมเสนเชอมเปนวงวนจะกาหนดใหนบจานวนเสนเชอมท

Page 6: ทฤษฎีกราฟ

87

เกดกบจดยอดนนเพมขน โดยใหนบเสนเชอมทเปนวงวน 1 วง วงวนเปน 2 ดงนนจานวนครงทงหมดทเสนเชอมเกดกบจดยอด b จงเปน 4

บทนยาม ดกร (Degree) ของจดยอด v ในกราฟ คอ จานวนครงทงหมดทเสนเชอมเกดกบจดยอด v

ตอไปจะเรยกจานวนครงทงหมดทเสนเชอมเกดกบจดยอดวา ดกร ใชสญลกษณ deg v แทนดกรของจดยอด v ตวอยางท 6 กาหนดกราฟ ดงรป

จากรปจะไดวา deg a = 2 deg b = 1 deg c = 3 deg d = 4 ตวอยางท 7 กาหนดกราฟ ดงรป

Page 7: ทฤษฎีกราฟ

88

จากรปจะไดวา deg a = 2

deg b = 5 deg c = 5 deg d = 4 สงเกตวา deg a + deg b + deg c + deg d = 16 และกราฟมจานวนเสนเชอมทงหมด 8 เสน ความสมพนธระหวางผลรวมของดกรของจดยอดทกจดในกราฟกบจานวนเสนเชอมของกราฟเปนไปตามทฤษฎบทตอไปน

ทฤษฎบท ให u1, u2, u3, …, u

)G(V เปนจดยอดทงหมดในกราฟ G จะไดวา

)G(E2udeg)G(v

1ii =∑

=

นนคอ ผลรวมของดกรของจดยอดทดจดในกราฟเทากบสองเทาของจานวนเสนเชอมในกราฟ

พสจน เนองจากเสนเชอมแตละเสนในกราฟเกดกบจดยอดเปนจานวน 2 ครง ดงนนเสนเชอมแตละเสนจะถกนบ 2 ครงในผลรวมของดกรของจดยอดทกจด นนคอ ผลรวมของดกรของจดยอดทกจดในกราฟเทากบสองเทาของจานวนเสนเชอมในกราฟ ขอสงเกต ผลรวมของดกรของจดยอดทกจดในกราฟเปนจานวนคเสมอ ตวอยางท 8 จงหาจานวนเสนเชอมของกราฟทมผลรวมของดกรของจดยอดทกจดในกราฟเทากบ 22 วธทา สมมตวา กราฟมเสนเชอม n เสน จากทฤษฎบท 1 ผลรวมของดกรของจดยอดทดจดในกราฟเทากบสองเทาของจานวน

เสนเชอมในกราฟ ดงนน 22 = 2n นนคอ n = 11 สรปไดวา กราฟมเสนเชอม 11 เสน

ตวอยางท 9 จงหาจานวนจดยอดของกราฟทมเสนเชอม 15 เสน และมจดยอด 3 จด ทมดกร 4 สวนจดยอดทเหลอมดกร 3 วธทา ให n เปนจานวนจดยอดทมดกร 3

Page 8: ทฤษฎีกราฟ

89

ผลรวมของดกรของจดยอดทกจดในกราฟ คอ (3)(4) + 3n จากทฤษฎบท 1 ผลรวมของดกรของจดยอดทดจดในกราฟเทากบสองเทาของจานวน

เสนเชอมในกราฟ ดงนน (3)(4) + 3n = 2(15) เพราะฉะนน n = 6 ดงนน จานวนจดยอดทงหมดของกราฟ คอ 3 + 6 = 9 จด ตวอยางท 10 จงพจารณาวาเปนไปไดหรอไมวา จะมกราฟทมจดยอด 4 จด และดกรของจดยอด คอ 1, 1, 2 และ 3 ตามลาดบ วธทา สมมตวา มดกรทมจดยอด 4 จด และดกรของจดยอดเทากบ 1, 1, 2 และ 3 ดงนน ผลรวมของดกรของจดยอดทกจด คอ 1 + 1 + 2 + 3 = 7 ซงเปนจานวนค ขดแยงกบทฤษฎบท 1 ดงนนเปนไปไมไดทจะมกราฟดงกลาว

บทนยาม จดยอดทมดกรเปนจานวนค เรยกวา จดยอดค (Even Vertex) จดยอดทมดกรเปนจานวนค เรยกวา จดยอดค (Odd Vertex)

ตวอยางท 11 กาหนดกราฟ ดงรป

จากรปจะไดวา deg a = 2 deg b = 3 deg c = 0 deg d = 3 deg e = 2 ดงนน จดยอด a, c และ e เปนจดยอดค จดยอด b และ d เปนจดยอดค

Page 9: ทฤษฎีกราฟ

90

ทฤษฎบท 2 ทกกราฟจะมจดยอดคเปนจานวนค

พสจน ให G เปนกราฟ ถา G ไมมจดยอดค นนคอ G มจานวนจดยอดคเปนศนย จงไดวา G มจานวนจดยอดคเปนจานวนค ตอไปสมมตวา กราฟ G มจดยอดค k จด คอ v1, v2, v3, …, vk

และมจดยอดค n จด คอ u1, u2, u3, …, un จากทฤษฎบท 1 จะไดวา (deg v1 + deg v2 + … + deg vk) + (deg u1 + deg u2 + … + deg un) = 2q เมอ q คอ จานวนเสนเชอมของ G ดงนน deg v1 + deg v2 + … + deg vk = 2q - (deg u1 + deg u2 + … + deg un) เนองจาก deg u1 + deg u2 + … + deg un ตางกเปนจานวนค ดงนน 2q - (deg u1 + deg u2 + … + deg un) เปนจานวนค นนคอ deg v1 + deg v2 + … + deg vk เปนจานวนค แตเนองจาก deg v1 + deg v2 + … + deg vk เปนจานวนค เพราะฉะนน k จะตองเปนจานวนค จงจะทาให deg v1 + deg v2 + … + deg vk

เปนจานวนค สรปไดวา กราฟ G มจดยอดคเปนจานวนค จากตวอยางท 10 เราใหเหตผลโดยอาศยทฤษฎบท 2 ดงน สมมตวา มกราฟทมจดยอด 4 จด และดกรของจดยอด คอ 1, 1, 2 และ 3 จะไดวา กราฟมจดยอดคเปนจานวน 3 จด ซงขดแยงกบทฤษฎบท 2 สรปไดวา ไมมกราฟทมสมบตดงกลาว

ตวอยางท 12 ถาในหองประชมแหงหนงมผเขารวมประชมทงหมด 23 คน เปนไปไดหรอไม

วา ผเขารวมประชมแตละคนจบมอทกทายผเขารวมประชมคนอนเพยง 7 คนเทานน วธทา แปลงปญหาดงกลาวเปนกราฟ โดยใหจดยอดแทนผเขารวมประชม และเสนเชอมแทน

การจบมอทกทายของผเขารวมประชม จะไดวา กราฟนมจดยอด 23 จด และจดยอดแตละจดมดกร 7 นนคอ กราฟมจดยอดคเปนจานวน 23 จด ซงเปนจานวนค ขดแยง กบทฤษฎบท 2 ดงนน เปนไปไมไดทผเขารวมประชมแตละคนจบมอกบคนอนเพยง 7 คนเทานน

Page 10: ทฤษฎีกราฟ

91

แนวเดนและกราฟเชอมโยง

สมมตวา แผนผงของเมองหนงแทนดวยกราฟดงรป โดยใหจดยอดแทนอาเภอ และเสนเชอมแทนถนนทเชอมระหวางอาเภอสองอาเภอ

ในการเดนทางจากอาเภอ A ไปยงอาเภอ D มเสนทางการเดนทางหลายเสนทาง เสนทางตางๆ จะแทนดวยลาดบของจดยอดและเสนเชอม ดงน เสนทาง A, e1, E, e5, D บทนยาม ให u และ v เปนจดยอดของกราฟ แนวเดน u - v (u - v walk) คอ ลาดบจากดของจดยอดและเสนเชอมสลบกน u = u0, e1, u1, e2, u2, …, un-1, en, un = v โดยเรมตนทจดยอด u และสนสดทจดยอด v และแตละเสนเชอม ei จะเกดกบ

จดยอด ui-1 และ ui เมอ i ∈ {1, 2, …, n}

บทนยาม รอยเดน (trail) คอ แนวเดนในกราฟทเสนเชอมทงหมดแตกตางกน วถ(Path) คอ แนวเดนในกราฟทจดยอดทงหมดแตกตางกน วงจร(Circuit) คอ แนวเดนทเสนเชอมทงหมดแตกตางกน โดยมจดเรมตนและจดสดทายเปนจดยอดเดยวกน วฏจกร(Cycle) คอวงจรทไมมจดยอดซากน ยกเวนจดเรมตนและจดสดทาย

บทนยาม กราฟ G เปนกราฟเชอมโยง(connected graph) ถาจดยอด 2 จดใดๆ ใน G เชอไดดวยวถ

Page 11: ทฤษฎีกราฟ

92

สอการสอน ใช PowerPoint นาเสนอ

Page 12: ทฤษฎีกราฟ

93

Page 13: ทฤษฎีกราฟ

94

กราฟถวงนาหนก (weight) บทนยาม คานาหนก(weight) ของเสนเชอม e ในกราฟ คอ จานวนทไมเปนลบทกาหนดไวบนเสนเชอม e กราฟถวงนาหนก(weight graph) คอ กราฟทเสนเชอมทกเสนมคานาหนก

ตวอยาง กราฟตอไปนเปนถวงนาหนก

2

5 13

42

ตวอยาง กราฟตอไปนเปนกราฟถวงนาหนก ซงจาลองจากแผนทเมองในประเทศไทย โดยใหจดยอดแทนเมอง เสนเชอมแทนถนน และคานาหนกเสนเชอมแทนระยะทางระหวาง เมองสองเมอง

A

D B

F

E

C

2

5

1

2

3

6

3 2

จะหาเสนทางจากเมอง A ไปยงเมอง E ทงหมดทไมผานเมองซากน เสนทางท 1 A, B, D, E ระยะทางยาว 2 + 1 + 3 = 4 กโลเมตร เสนทางท 2 A, B, D, F, E ระยะทางยาว 2 + 1 + 2 + 2 = 7 กโลเมตร เสนทางท 3 A, B, D, C, F, E ระยะทางยาว 2 + 1 + 3 + 6 + 2 = 14 กโลเมตร เสนทางท 4 A, C, F, E ระยะทางยาว 5 + 6 + 2 = 13 กโลเมตร เสนทางท 5 A, C, F, D, E ระยะทางยาว 5 + 6 + 2 + 3 = 16 กโลเมตร

Page 14: ทฤษฎีกราฟ

95

เสนทางท 6 A, C, D, E ระยะทางยาว 5 + 3 + 3 = 11 กโลเมตร เสนทางท 7 A, C, D, F, E ระยะทางยาว 5 + 3 + 2 + 2 = 12 กโลเมตร จะเหนวาเสนทางท 1 A, B, D, E ระยะทางยาว 4 กโลเมตรเปนระยะทางทสนทสด

บทนยาม วถทสนทสด จากจด A ถงจดยอด Z ในกราฟถวงนาหนก คอวถ A - Z ทผลรวมของคานาหนกของเสนเชอมทกเสนในวถ A-Z นอยทสด

ฉะนนในตวอยางขางตน จะเหนวา วถ A, B, D, E เปนวถทสนทสด

สาหรบกราฟถวงนาหนกทมจดยอดและเสนเชอมเปนจานวนมาก การหาวถ A - Z ทสนทสด

โดยการคนหาวถ A - Z ทงหมดแลวเลอกวถทผลรวมของคานาหนกนอยทสด ทาไดไมสะดวกและเสยเวลา ในการหาวถ A - Z ทสนทสด มขนตอนวธทใชหาวถทสนทสด เชน ขนตอนวธของ Dijkstra

Page 15: ทฤษฎีกราฟ

96

ขนตอนวธของไดคสตรา (Dijkstra’s Algorithm)

เมอ G เปนกราฟไมขาดตอนทมนาหนก นนคอ G เปนกราฟทจดทกจดมวถอยางนอยหนงวถเชอมถงกน และแตละเสน e ใน G ถกกาหนดดวยจานวนจรงทไมเปนลบ และ u0 เปนจดทกาหนดใหเปนจดเรมตน

w(uv) หมายถงความยาวของเสน uv S หมายถง complement ของ เซต S

ให i = 0, S0 = {u0}, และ L(v) = ∞ สาหรบทก ๆ จด v ≠ u0

กาหนดคาจด v ดวย (L(v) , -)

yes

no yes

no

|V(G) | = 1 ?

หาคา iSv∈

min {L(v)}

จดใดททาใหเกดคานอยทสด ใหเรยกจดนนวา ui+1

กาหนดให Si+1 = Si U {ui+1} แทนคา i ดวย i + 1

i = V(G)- 1 ?

Finish

สาหรบแตละจด v iS∈ ให L(v) = min{ L(v) , L(ui)+w(uiv) }

กาหนดคา v ใหมเปน (L(v),ui) ถาคา L(v) ทไดเปนคาใหม

Page 16: ทฤษฎีกราฟ

97

ในทนเราจะศกษา ขนตอนวธของ Dijkstra พรอมแสดงตวอยาง จงหาวถ A - H ทสนทสดของกราฟตอไปน

A

E B

D H

C

F

G

2

2

1

4

4

5

1

6

2

3

3

7

Page 17: ทฤษฎีกราฟ

98

Page 18: ทฤษฎีกราฟ

99

Page 19: ทฤษฎีกราฟ

100

จากกราฟขางตน เราไดวา วถ A-H ทสนทสดคอ A, B, E, H วถ A-D ทสนทสดคอ A, C, D วถ A-G ทสนทสดคอ A, C, G วถ A-F ทสนทสดคอ A, B, F

หมายเหต จากขนตอนวธของ Dijkstra ขางตนเราจะไดวถทสนทสดจาก A ไปยงจดยอดใดๆ เทานน ถาเราจะหาวถทสนทสดจากจดยอดทไมใชจด A จะตองเรมขนตอนวธของ Dijkstra

ใหม

กจกรรมการเรยนร

1. ครนาเขาสบทเรยนโดยการใหนกเรยนพจารณาลกษณะของกราฟถวงนาหนก แลวพจารณาวถทสนทสด

2. แจงจดประสงคการเรยนรประจาเรองใหนกเรยนทราบ 3. ครใชเทคนคการสอนแบบบรรยาย 4. ใชสอการสอนดวย PowerPoint เพอใหนกเรยนไดเขาใจทางเดนตางๆ มากยงขน

Page 20: ทฤษฎีกราฟ

101

สอการสอน ใช PowerPoint นาเสนอ

Page 21: ทฤษฎีกราฟ

102

Page 22: ทฤษฎีกราฟ

103

กราฟออยเลอร

ปญหาสะพานเคอนกสเบรก มอยวา ณ เมองเคอนกสเบรกมเกาะกลางแมนาพรเกล (Pregel) จานวน 2 เกาะ และมสะพานทเชอมระหวางเกาะและเมองดงรปตอไปน

ชาวเมองเคอนกสเบรกพยายามหาวธเดนขามสะพานใหครบทกสะพาน โดยทขามสะพานแต

ละสะพานเพยงครงเดยวและกลบมาทจดยอดเรมตน เลออนฮารด ออยเลอรไดแปลงปญหานใหอยในรปกราฟ โดยใหอาณาบรเวณ A, B, C, D

แทนดวยจดยอดของกราฟ และสะพานแตละพานแทนดวยเสนเชอมของกราฟ

Page 23: ทฤษฎีกราฟ

104

A

C

B

D

ปญหาสะพานเคอนกสเบอรก เมอจาลองอยในรปกราฟจะได

จากกราฟ สามารถแปลงไดเปนปญหาการลากผานเสนเชอมของกราฟดงรปขางตน จนครบทกเสนโดยไมตองยกปากกาและผานเสนแตละเสนเพยงครงเดยว โดยทจดเรมตนและจดสนสดเปนจดเดยวกน

บทนยาม วงจรออยเลอร(Euler trail) คอ รอยเดนซงผานจดยอดทกจดและเสนเชอมทกเสนของกราฟ

ทฤษฎบทตอไปน ใหเงอนไขวา กราฟทกาหนดใหเปนกราฟออยเลอรเมอไร

ทฤษฎบท ให G เปนกราฟเชอมโยง จะไดวา G เปนกราฟออยเลอร กตอเมอ จดยอดทกจดของ G มดกรเปนจานวนค กราฟทมวงจรออยเลอร เรยกวา กราฟออยเลอร (Eulerian graph)

Page 24: ทฤษฎีกราฟ

105

ตวอยาง กราฟตอไปนเปนกราฟออยเลอร

บทนยาม รอยเดนออยเลอร(Euler circuit) คอ วงจรทผานจดยอดทกจดและเสนเชอมทกเสนของกราฟ

ทฤษฎบทตอไปน ใหเงอนไขวา กราฟทกาหนดใหมรอยเดนออยเลอรเมอไร

ทฤษฎบท ให G เปนกราฟเชอมโยง จะไดวา G เปนกราฟทมรอยเดนออยเลอร กตอเมอ G มจดยอดทเปนดกรเปนจานวนคไมเกน 2 จด ยงไปกวานนจดยอดทเปนจานวนคเหลานนจะเปนจดเรมตนและจดปลายของรอยเดนออยเลอร

ปญหาหนงทดคลายกบปญหาวงจรออยเลอร คอปญหาการหาวถในกราฟทไมใชจดยอดซากน

ยกเวนจดเรมตนและจดสนสดตองเปนจดเดยวกน ซงกคอ วฎจกรและวฎจกรนผานครบทกจดยอดในกราฟน จะเรยกวฎจกรนวา วฎจกรแฮมลตน ถา G มวฎจกรแฮมลตน จะเรยก G วาเปนกราฟแฮมลตน(Hamiltonian graph)

Page 25: ทฤษฎีกราฟ

106

สอการสอน ใช PowerPoint นาเสนอ

ตนไม ตอไปเราจะศกษากราฟทมลกษณะพเศษชนดหนง เรยกวา ตนไม ซงมบทบาทสาคญในการศกษาทฤษฎกราฟ และในการประยกตทางดานตางๆ เชน โครงสรางขอมลในวชาคอมพวเตอร การศกษาโครงสรางทางเคมของสารประกอบไฮโดรคารบอน หรอในการออกแบบวงจรไฟฟาและอเลกทรอนกส

บทนยาม ตนไม (tree) คอ กราฟเชอมโยงทไมมวฏจกร

Page 26: ทฤษฎีกราฟ

107

ดวอยาง พจารณากราฟตอไปน

(A)

(D) (C)

(B)

จะเหนวา กราฟในรป (A) และ (B) เปนตนไม กราฟในรป (C) ไมเปนตนไม เพราะมวฏจกรปรากฏอย กราฟในรป (D) ไมเปนตนไม เพราะไมใชกราฟเชอมโยง

ลกษณะเฉพาะของตนไม ทฤษฎบทตอไปนเปนทฤษฎบททบงบอกลกษณะเฉพาะ(characterization) ของตนไม ทฤษฎบท

1. ให T เปนกราฟทไมมวงวน กราฟ T เปนตนไม กตอเมอ จดยอด 2 จดใดๆ ใน T เชอมโยงกนไดดวยวถเพยงวถเดยว

2. ให T เปนกราฟทมจานวนจดยอดเปน n จด กราฟ T เปนตนไม กตอเมอ กราฟ T ไมมวฏจกร และมเสนเชอม n – 1 เสน

3. ให T เปนกราฟทมจานวนจดยอดเปน n จด กราฟ T เปนตนไม กตอเมอ กราฟ T เปนกราฟเชอมโยงและมเสนเชอม n – 1 เสน

4. ถา T เปนตนไมทมจานวนจดยอดอยางนอย 2 จด แลว กราฟ T จะมดกร 1 อยางนอย 2 จด

ตนไมแผทว (spanning tree)

กอนทจะศกษาตนไมแผทว เราจะเรมตนศกษากราฟยอยกอน

บทนยาม กราฟยอย (subgraph) ของกราฟ G คอกราฟทประกอบดวยจดยอดและเสนเชอมใน G กลาวคอ กราฟ H เปนกราฟยอยของกราฟ G ถา V(G) V(H) และ E(H) E(G) ⊂ ⊂

Page 27: ทฤษฎีกราฟ

108

ตวอยาง กาหนดกราฟ G และกราฟ H ดงรป

G : A

B C

D A

B C

D

H :

V(G) = { A, B, C, D } V(H) = { A, B, C, D } E(G) = {AB, BC, CD, DA, BD} E(H) = {AB, BC, DA, BD} จะไดวา กราฟ H เปนกราฟยอยของกราฟ G พจารณาวากราฟใด เปนกราฟยอยของกราฟ G

A

B

C

D

A

B

C

D

A

B

C

D

A

B

C

D

A

B

C

D

A

B

C A

B

C

D

G

G1 G2 G3

G4 G5 G6

D

D

กราฟ G2 และ G6 ไมเปนกราฟยอยของ G พจารณากราฟยอยของกราฟ G จะเหนวากราฟ G1 , G3 และ G5 เปนกราฟยอยของ G และเปนตนไมดวย บทนยาม ตนไมแผทว (spanning tree) คอตนไมซงเปนกราฟยอยของกราฟเชอมโยง G ทบรรจจดยอด

ทกจดยอด

Page 28: ทฤษฎีกราฟ

109

การประยกตของทฤษฎกราฟทเกยวของกบตนไม สมมตวาเราตองการสรางถนนเชอมตอระหวางเมองตางๆ โดยททราบคาใชจายในการกอสรางถนนทเชอมเมอง 2 เมองใดๆ ปญหาทเกดขนคอ เราควรสรางถนนเชอมระหวางเมองใดบาง เพอใหเมอง 2 เมองใดๆ สามารถตดตอกนไดทางรถยนต และเสยคาใชจายในการกอสรางนอยทสด จากปญหาดงกลาว เราอาจสรางกราฟทมนาหนกทสมนยกบปญหานได โดยใหเมองแตละเมองแทนดวยจดยอด ถนนแทนดวยเสนเชอม และคาใชจายในการกอสรางถนนแทนคานาหนกของเสนเชอม คาตอบของปญหานคอ การหาสบกราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสด ขนตอนวธในการหากราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสดมอยดวยกนหลายวธ แตในทนเราจะกลาว 2 วธเทานน คอ วธของครสกาวล (Kruskal) และขนตอนวธของพรม (Prim) ในบรรดาขนตอนวธเหลาน ขนตอนวธของครสกาวล จดวาเปนขนตอนวธทมชอเสยงมากทสด ขนตอนวธของครสกาวล (Kruskal’s algorithm) แนวคดของขนตอนวธของครสกาวล คอการเลอกเสนทมนาหนกนอยทสดจากกราฟเชอมโยงถวงนาหนก ตดตอกนไปเพอสรางกราฟเชอมถวงนาหนก และการเลอกเสนดงกลาวตองไมกอใหเกดวฎจกร การเลอกนจะสนสดลงเมอไดตนไมแผทว ตวอยาง จงหากราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสดของกราฟทกาหนดใหโดยใชขนตอนวธของครสกาวล

วธทา เราจะใชเสนหนาบงถงเสนของกราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสด

Page 29: ทฤษฎีกราฟ

110

เราจะเหนวาคานาหนกของแผทวทเปนกราฟเชอมโยงมคาเทากบ 8 หมายเหต กราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสดของแตละกราฟอาจมไดมากกวา 1 แบบ

Page 30: ทฤษฎีกราฟ

111

ขนตอนวธของพรม(Prim’s algorithm) แนวคดขนตอนของพรม คอการแทนตนไม T ทมอยในการเชอมโยงทมนาหนกดวยตนไมอนใหมทเกดจากการเพมเสนทมนาหนกนอยทสดลงไปใน T โดยทเสนๆ นเปนเสนเชอมจดทอยใน T กบจดทไมอยใน T ตวอยาง จงหากราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสดของกราฟทกาหนดให โดยใชขนตอนวธของพรม

วธทา เราจะใชเสนหนาบงถงเสนของกราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอยทสด

Page 31: ทฤษฎีกราฟ

112

เราจะเหนวาคานาหนกของแผทวทเปนกราฟเชอมโยงมคาเทากบ 8

กจกรรมการเรยนร

1. ครนาเขาสบทเรยนโดยการใหนกเรยนนกเรยนพจารณากราฟทมลกษณะพเศษชนดหนง

เรยกวา ตนไม แลวนาไปสเนอหาของตนไม 2. แจงจดประสงคการเรยนรประจาเรองใหนกเรยนทราบ 3. ครใชเทคนคการสอนแบบบรรยาย 4. ใชสอการสอนดวย PowerPoint

สอการสอน ใช PowerPoint นาเสนอ

Page 32: ทฤษฎีกราฟ

113