72
บทที5 ทฤษฎีกราฟ โดย วาสนา สันติธีรากุล

Graph 01

Embed Size (px)

DESCRIPTION

กราฟ

Citation preview

Page 1: Graph 01

บทท 5ทฤษฎกราฟ

โดย วาสนา สนตธรากล

Page 2: Graph 01

ทฤษฎกราฟ

• กราฟเปนแบบจาลองทางคณตศาสตร ซงใชสาหรบจาลองปญหาบางอยางดวยแผนภาพทประกอบดวยจด และเสนทเชอมระหวางจด 2 จด

• ตวอยางเชน - แผนภาพทแสดงเสนทางของรถไฟฟา BTS - แผนภาพทแสดงถนนทเชอมเมองตาง ๆ - แผนภาพแสดงโครงสรางทางเคมของสารประกอบไฮโดรคารบอน

- วงจรไฟฟา- แผนภาพเครอขายคอมพวเตอร- แผนภาพแสดงเสนทางการบน

Page 3: Graph 01

จดกาเนดของทฤษฎกราฟ

• ทฤษฎกราฟ เกดขนเมอ ค.ศ. 1736 โดยนกคณตศาสตรชาวสวสเซอรแลนด ชอ เลออนฮารด ออยเลอร (Leonhard Euler)

• ออยเลอร ไดสรางทฤษฎทเรยกวา “ทฤษฎออยเลอร” (ทฤษฎกราฟ) ขนมาเพอแกปญหาสะพานเคอนกสเบอรก “Konigsberg Bridge

Problem” ไดเปนผลสาเรจ

• ดงนน เลออนฮารด ออยเลอร จงไดชอวาเปนบดาของทฤษฎกราฟ

Page 4: Graph 01

จดกาเนดของทฤษฎกราฟ

• ปญหาสะพานเคอนกสเบอรก

มเกาะ 2 เกาะ อยกลางแมนาพรเกล (Pregel) ในเมองเคอนกสเบอรก (ปจจบนเปลยนชอเปน คาลนการด: Kalinigrad) มสะพาน 7 สะพาน เชอมระหวางเกาะกบแผนดน ดงรป

เกาะ A เกาะ B

ฝง C

ฝง D

Page 5: Graph 01

จดกาเนดของทฤษฎกราฟ

• ปญหาสะพานเคอนกสเบอรก (ตอ)

เปนไปไดหรอไมทชาวเมองเคอนกสเบอรกจะทองเทยวเมองนโดยเรมตนจาก

เกาะหรอฝงอนใดอนหนงแลวขามสะพานแตละแหงเพยงครงเดยวเทานนจนครบ

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

• ออยเลอรไดไขปรศนานโดยแปลงปญหาดงกลาวเปนกราฟโดยใหพนดน

แทนจดยอด และสะพานแทนดวยเสนเชอม ดงรป

A B

C

D

Page 6: Graph 01

จดกาเนดของทฤษฎกราฟ

• ออยเลอรสามารถพสจนยนยนคาตอบวาเปนไปไมไดทจะหาเสนทาง ดงกลาว

• จะมเสนทางดงกลาวไดกตอเมอกราฟนนจะตองตอเนองและมจานวนเสน

ของแตละจดเปนจานวนค

Page 7: Graph 01

นยามเกยวกบกราฟ

• ขอตกลง

– family จะหมายถงกลมของสมาชก โดยทแตละสมาชกอาจซากนได เชน {a,a,a,b,c,c}

–สญลกษณ (a,b) แทนคลาดบของ a และ b

–สญลกษณ {a,b} แทนคไมลาดบของ a และ b

Page 8: Graph 01

นยามเกยวกบกราฟ

• นยาม 1 กราฟ G คอคลาดบ (V(G) , E(G)) โดยท V(G) เปนเซตจากดทไมเปนเซตวางของสมาชกทเรยกวา จดยอด (vertex) และ E(G) เปนแฟมลจากดของคไมลาดบของสมาชกใน V(G) เรยกสมาชกของ E(G) วาเสนเชอม (edge)

• ตวอยาง 1 ให G เปนกราฟกาหนดโดย V(G) = {u, v, w, z} และ E(G) = {{u,v},{v,w},{v,w},{u,w},{w,z},{u,u}} จะไดกราฟ G ดงรป

Page 9: Graph 01

นยามเกยวกบกราฟ• หมายเหต

– เพอความสะดวกจะเขยนเสน {u,v} แทนดวย “uv” ดงนน E(G) = {{u,v},{v,w},{v,w},{u,w},{w,z},{u,u}} สามารถเขยนแทนไดดวย E(G) = {uv, vw, vw, uw, wz, uu}

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

Page 10: Graph 01

นยามเกยวกบกราฟ

• หมายเหต (ตอ)

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

Page 11: Graph 01

นยามเกยวกบกราฟ

• หมายเหต (ตอ)

– สามารถเขยนแผนภาพของกราฟไดหลายแบบ เชน กาหนดกราฟ G เมอ V(G) = {a, b, c} E(G) = {ab, ac, bc} สามารถเขยนแผนภาพของกราฟ G ไดดงรป (1), (2) หรอ (3)

Page 12: Graph 01

นยามเกยวกบกราฟ

• นยาม 2 วงวน (loop) คอเสนเชอมทอยในรป {u,u} หรอ uu หรอเสน

ทมจดปลายทงสองเปนจดเดยวกน • นยาม 3 เสนขนาน (parallel edges) หรอ เสนหลายชน (multiple

edges) คอเสนเชอมทมมากกวา 1 เสนทเชอมจดคเดยวกน

จากรปจะไดวา uu เปนวงวน vw เปนเสนขนาน

Page 13: Graph 01

นยามเกยวกบกราฟ

• นยาม 4 กราฟทไมมเสนขนานและไมมวงวน เราเรยกวา กราฟเชงเดยว (Simple graph)

เรยกกราฟเชงเดยวทม p จด และ q เสนวา (p,q) กราฟ

เรยกวา (5,5) กราฟ

Page 14: Graph 01

นยามเกยวกบกราฟ

• นยาม 5 เรยกกราฟ G ใดๆทมเสนขนานและไมมวงวนวา กราฟผสม

(Multigraph)

*หมายเหต กราฟทมวงวนเรยกวา กราฟเทยม (Pseudograph)

Page 15: Graph 01

นยามเกยวกบกราฟ

• นยาม 6 กาหนด G เปนกราฟเชงเดยว จะเรยกกราฟ G วาเปนกราฟ

สมบรณ (Complete Graph) กตอเมอทกๆจด u และ v ใดๆ ของกราฟมเสน

uv และใชสญลกษณ kp แทนกราฟสมบรณทม p จด

K4 K5

( )2

1−=

ppkpจานวนเสนของกราฟ

Page 16: Graph 01

นยามเกยวกบกราฟ

• นยาม 7 เรยกจด u และ v ของกราฟ G ใดๆ วาเปน จดประชด(Adjacent Vertices) กตอเมอมเสนเชอมระหวางจด u และ v

• นยาม 8 ระดบขน หรอ ดกร (degree) ของ v คอจานวนเสนใน E(G) ทตกกระทบกบจด v เราเขยน deg(v) แทนระดบขนของ v

*หมายเหต ถาจด v มเสนวงวนแลว ดกรของจด v ทเกดจากวงวนจะมคา

เทากบ 2

• นยาม 9 ถา deg(v) เปนจานวนค เราเรยก v วา จดค (even vertex)

ถา deg(v) เปนจานวนค เราเรยก v วา จดค (odd vertex)

Page 17: Graph 01

นยามเกยวกบกราฟ

• แบบฝกหด 1 จงเขยนแผนภาพของกราฟตอไปน

1.1 กราฟ G1 เมอ V(G1) = {v1, v2, v3, v4, v5, v6, v7} และ deg(v1) = 7

deg(v2) = 6 deg(v3) = 3 deg(v4) = 2 deg(v5) = 2 deg(v6) = 0 deg(v7) = 0

1.2 กราฟ G2 เมอ V(G2) = {v1, v2, v3, v4, v5, v6} และ deg(v1) = 5

deg(v2) = 4 deg(v3) = 3 deg(v4) = 3 deg(v5) = 4 deg(v6) = 3

Page 18: Graph 01

นยามเกยวกบกราฟ

• ทฤษฎบท 1 (Handshaking Lemma)

สาหรบกราฟ G ใดๆ ผลบวกของดกรของจดทงหมดใน G จะเทากบ 2

เทาของจานวนเสน นนคอ ถากราฟ G ม p จด และ q เสนแลว

( )∑=

=p

iqvi

12deg

Page 19: Graph 01

นยามเกยวกบกราฟ

• จงพจารณาผลบวกของดกรของจดยอดทกจดในกราฟ วามความสมพนธ

กบจานวนเสนเชอมในกราฟอยางไร เมอกาหนดกราฟ G1, G2, G3 และ

G4 ดงรป

Page 20: Graph 01

นยามเกยวกบกราฟ

242010G4

32168G3

0221G2

1000G1

จานวน

จดยอดค

จานวน

จดยอดค

ผลบวกของดกรของจด

ยอดทกจดของกราฟ

จานวน

เสนเชอม

กราฟ

Page 21: Graph 01

นยามเกยวกบกราฟ

• ตวอยาง 2 กราฟม 6 จดและ 8 เสน

deg(v1) = 4 deg(v2) = 2deg(v3) = 3deg(v4) = 3deg(v5) = 3deg(v6) = 1

( )∑=

=6

116deg

ivi

Page 22: Graph 01

นยามเกยวกบกราฟ

• ทฤษฎบท 2

กราฟทกกราฟจะบรรจจดคเปนจานวนค *** จากตวอยางกราฟทผานมาทงหมด จะสงเกตไดวาทกกราฟมจานวนจดคเปนจานวนคทงหมด

Page 23: Graph 01

นยามเกยวกบกราฟ

• ตวอยาง 3 ผลการสารวจขอมลการใชโทรศพทมอถอของพนกงานในบรษทแหงหนงซงมพนกงาน 20 คน ในเดอนทผานมาพบวา มพนกงาน 15 คน แตละคนคยโทรศพทมอถอกบเพอนในบรษท 5 ครง มพนกงาน 5 คน แตละคนคยโทรศพทมอถอกบเพอนในบรษท 3 ครง จงหาจานวนการใชโทรศพทมอถอของพนกงานบรษทน

Page 24: Graph 01

นยามเกยวกบกราฟ

• วธทา แปลงปญหาเปนกราฟ โดยให จดยอด แทนพนกงาน เสนเชอม แทนการคยโทรศพทมอถอของพนกงานจะไดวา กราฟมจดยอดทมดกรเทากบ 5 มจานวน 15 จด และจดยอดทมดกรเทากบ 3 มจานวน 5 จด จานวนการใชโทรศพทมอถอของพนกงานในบรษท กคอจานวนเสนทงหมดของกราฟ สมมตวากราฟมเสนเชอม n เสน จากทฤษฎบท 1 ผลรวมของดกรของจดยอดทกจดในกราฟเทากบสองเทาของจานวนเสนเชอมในกราฟ ดงนน 5(15) + 3(5) = 2n

75 + 15 = 2n

n = 45

ดงนนจานวนการใชโทรศพทมอถอของพนกงานบรษทแหงน คอ 45 ครง

Page 25: Graph 01

นยามเกยวกบกราฟ

• ตวอยาง 4 จงหวดหนงมอาเภออย 17 อาเภอ ตองการสรางถนนเชอมอาเภอเหลาน โดยใหแตละอาเภอมถนนเชอมกบอาเภออนอก 3 สายพอด จงหาวาสามารถสรางถนนตามเงอนไขดงกลาวไดหรอไม

• วธทา แปลงปญหาเปนกราฟ โดยให จดยอด แทน อาเภอ เสนเชอม แทน ถนน กราฟมจดยอด 17 จด และแตละจดยอดมดกรเทากบ 3 จะไดวา กราฟมจดยอดค จานวน 17 จด ขดแยงกบทฤษฎบท 2 นนคอการสรางถนนตามเงอนไขดงกลาวไมสามารถแปลงเปนกราฟได

ดงนนการสรางถนนตามเงอนไขโจทยจงเปนไปไมได

Page 26: Graph 01

นยามเกยวกบกราฟ

• แบบฝกหด 2

2.1 อาจารยวนดใหผเรยนสงตวแทนออกมาหนาชนเรยน 2 กลมๆ ละ 5 คน แลวใหผเรยนภายในกลมจบมอกน ดงน

กลมท 1 นตยา นพนธ นภา นมต และ นยม แตละคนจบมอกบเพอนในกลมเปนจานวน 4, 3, 2, 2 และ 1 ครง ตามลาดบกลมท 2 อรจต อรทย อรนช อรพรรณ และ อรพน แตละคนจบมอกบเพอนในกลมเปนจานวน 4, 3, 2, 1 และ 1 ครง ตามลาดบ

จงพจารณาวาผเรยนทงสองกลมสามารถทาตามคาบอกของอาจารยวนดไดหรอไม ถาไดจงหาจานวนครงของการจบมอกนในกลมของผเรยน

2.2 การแขงขนฟตบอลมทมสมครแขงขน 10 ทม ในการจดแขงขนครงนจะจดการแขงขนเปนแบบพบกนหมด จงหาจานวนครงทจดการแขงขน

Page 27: Graph 01

นยามเกยวกบกราฟ

• นยาม 10 ให H = (V(H)), E(H)) และ G = (V(G)), E(G)) เปนกราฟใด ๆ

1. ถา V(H) ⊂ V(G) และ E(H) ⊂ E(G) เรากลาววา H

เปนสบกราฟ (subgraph) ของ G

2. ถา H เปนสบกราฟของ G และ V(H) = V(G) เรากลาววา

H เปนสบกราฟแผทวถง (spanning subgraph) ของ G

3. ถา V(H) = V(G) และ E(H) = E(G) เรากลาววา กราฟ H และกราฟ

G เปนกราฟเหมอนกน (identical) เขยนแทน H = G

Page 28: Graph 01

แนวเดน

• นยาม 11 แนวเดน (Walk) W ในกราฟ G คอ ลาดบสลบของจดและเสน

ของกราฟ G ดงน

W: v0 , e1 , v1 , e2 , v2 , ....., vn-1 , en , vn

ซงเสน ei มจดปลาย คอ vi-1 และ vi สาหรบ 1 ≤ i ≤ n

Page 29: Graph 01

แนวเดน

• ตวอยาง 5 ในอาเภอหนงมตาบลอย 5 ตาบล ไดแก ตาบล A, B, C, D และ E ระหวางตาบลตาง ๆ จะมถนนเชอมระหวางตาบล ซงแสดงแผนผงดวยกราฟโดยให จดยอด แทน ตาบล เสนเชอมแทน ถนน ดงรป

กาหนดเสนทาง ดงน

เสนทางท 1 ตาบล A ตาบล B ตาบล A ตาบล D ตาบล C ตาบล D ตาบล C

เสนทางท 2 ตาบล A ตาบล D ตาบล B

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

เสนทางท 1 มลาดบคอ A, AB, B, BA, A, AD, D, DC, C, CD, D, DC, C

เสนทางท 2 มลาดบคอ A, AD, D, DB, B

สาย 1 สาย 1 สาย 2 สาย 5 สาย 5 สาย 5

สาย 2 สาย 3

Page 30: Graph 01

แนวเดน

• นยาม 12 ให u และ v เปนจดใด ๆ ในกราฟ G

เรากลาววา แนวเดน u – v เปน แนวเดนปด (closed walk) เมอ u = v

และ แนวเดน u – v เปน แนวเดนเปด (open walk) เมอ u ≠ v

• ตวอยาง 6 จากภาพดานบน

W1: A, AD, D, DC, C, CB, B, BA, A เปนแนวเดนปด

W2: A, AD, D, DE, E, EC, C, CB, B เปนแนวเดนเปด

Page 31: Graph 01

แนวเดน

• นยาม 13 ให u และ v เปนจดใด ๆ ในกราฟ G

1. ถาเสนในแนวเดน u – v ไมซากน เรากลาววาแนวเดน u – v เปน

รอยเดน (trail)

2. ถาจดในแนวเดน u – v ไมซากน เรากลาววาแนวเดน u – v เปน

วถ (path)

• นยาม 14

แนวเดนทมเสนเชอมแตกตางกน โดยมจดเรมตนและจดสดทายเปนจดเดยวกน เรยกวา วงจร หรอ วฏจกร (cycle)

Page 32: Graph 01

แนวเดน

• ตวอยาง 7 กาหนดกราฟ G ดงรป จงหาวาแนวเดนในขอใดเปนวงจร

1) v5, e6, v4, e3, v3, e2, v2, e5, v5, e5, v2

2) v2, e2, v3, e3, v4, e4, v2, e5, v5, e6, v4, e4, v2

3) v1, e7, v5, e6, v4, e4, v2, e1, v1, e7, v5, e8, v1

4) v1, e1, v2, e2, v3, e3, v4, e4, v2, e5, v5, e8, v1

5) v1, e1, v2, e2, v3, e3, v4, e4, v2, e5, v5, e8, v1, e9, v4 , e6, v5, e7, v1

Page 33: Graph 01

แนวเดน

• วธทา จากภาพจะเหนวาแนวเดนในขอ 1) ไมเปนวงจร เพราะในแนวเดนมเสนเชอม e5 ซากน

และมจดเรมตนและจดสดทายเปนจดยอดทตางกน

แนวเดนในขอ 2) และ 3) ไมเปนวงจร เพราะในแนวเดนมเสนเชอม e4

และ e7 ซากนตามลาดบ

แนวเดนในขอ 4) และ 5) เปนวงจร เพราะเปนไปตามนยามของวงจร

Page 34: Graph 01

กราฟเชอมโยง กราฟไมเชอมโยง• นยาม 15 ให u และ v เปนจดใด ๆ ในกราฟ G เรากลาววา u และ v

เชอมโยงกนได (connect) เมอมวถ u – v

1. ถามวถระหวางจดสองจดใดๆ แลวกราฟ G เปน กราฟเชอมโยง

(connected graph)

2. ถาไมมวถระหวางจดสองจดใดๆ แลวกราฟ G เปน กราฟไม

เชอมโยง (disconnected graph)

Page 35: Graph 01

กราฟเชอมโยง กราฟไมเชอมโยง• ตวอยาง 8 กาหนดแผนผงของสวนสาธารณะ 2 แหง ดงรป จงพจารณา

วาสวนสาธารณะแหงใดสามารถเดนเทยวชมบรเวณสวนสาธารณะไดทก

บรเวณ

Page 36: Graph 01

กราฟเชอมโยง กราฟไมเชอมโยง

• วธทา เขยนแผนภาพของกราฟ G1 และ G2 แทนแผนผงของสวนสาธารณะ แหงท 1 และแหงท 2 โดยให จดยอดแทน เกาะ หรอ ฝง เสนเชอม แทน สะพานตามลาดบ จะไดกราฟ ดงรป

จากภาพจะเหนวา

กราฟ G1 เปนกราฟเชอมโยง ดงนนจงมวถไปยงทกจดในกราฟได ดงนนสวนสาธารณะแหงท 1 สามารถเทยวชมไดทกบรเวณ

กราฟ G2 เปนกราฟไมเชอมโยง ทจด C ดงนนจงไมมวถทไปยงจด C ได ดงนนสวนสาธารณะแหงท 2 ไมสามารถเทยวชมไดทกบรเวณ (ไมสามารถเทยวชมฝง C ได)

Page 37: Graph 01

กราฟเชอมโยง กราฟไมเชอมโยง• ตวอยาง 9 กาหนดขายงานการเชอมโยงระหวางเสาโทรศพท และ

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

เสยหายมากทสด

Page 38: Graph 01

กราฟเชอมโยง กราฟไมเชอมโยง• วธทา แปลงปญหาขางตนเปนกราฟโดยใหจดยอด แทน เสาโทรศพท เสนเชอม

แทน สายโทรศพท ดงรป

จากกราฟ จะพบวา ถาลบจดยอด 3 ออก เสนทเกดกบจดยอด 3 จะถกลบออกดวยดงนน กราฟทเกดจากการลบจดยอด 3 ออกจะไมเปนกราฟเชอมโยง ดงรป

ถาลบจดยอดแตละจด เชน 1 หรอ 2 หรอ 4 หรอ 5 หรอ 6 ออกจากกราฟ กราฟทเกดจากการลบจดยอดดงกลาวยงคงเปนกราฟเชอมโยง ดงนนเสา 3 จงเปนเสาโทรศพททสาคญทสดเพราะถาเสา 3 ลมจะทาความเสยหายมากกวาเสาโทรศพทตนอน

Page 39: Graph 01

กราฟถวงนาหนก

• นยาม 16

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

กราฟถวงนาหนก (weight graph) คอ กราฟทเสนเชอมทกเสนมคานาหนก

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

Page 40: Graph 01

กราฟออยเลอร

• นยาม 17 ให G เปนกราฟเชอมโยง

เรากลาววา G เปน กราฟออยเลอร (Eulerian graph) เมอ G มรอยเดนปด

ซงผานเสนทกเสนใน G และเรยกรอยเดนปดดงกลาวนวา รอยเดนออย

เลอรหรอ วงออยเลอร (Eulerian circuit)

หรอกลาวไดวา

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

Page 41: Graph 01

กราฟออยเลอร

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

Page 42: Graph 01

กราฟออยเลอร

• ตวอยาง 11 กาหนดกราฟ G1 ถง G5 ดงรป กราฟใดเปนกราฟออยเลอร

Page 43: Graph 01

กราฟออยเลอร• วธทา จากภาพจะไดวา

กราฟ G1 สามารถหาวงจรทประกอบดวยเสนเชอมทงหมดของกราฟได วงจรหนงทเปนไปได มลาดบคอ v1, e1, v2, e2, v3, e3, v1

กราฟ G2 ไมสามารถหาวงจรทประกอบดวยเสนเชอมทงหมดของกราฟได เพราะมเสนเชอม e1 ซากน

กราฟ G3 สามารถหาวงจรทประกอบดวยเสนเชอมทงหมดของกราฟได วงจรหนงทเปนไปได มลาดบคอ v1, e1, v2, e2, v1

กราฟ G4 ไมสามารถหาวงจรทประกอบดวยเสนเชอมทงหมดของกราฟได เพราะมเสนเชอมเสนใดเสนหนงในกราฟซากน

กราฟ G5 สามารถหาวงจรทประกอบดวยเสนเชอมทงหมดของกราฟได วงจรหนงทเปนไปได มลาดบคอ v1, e1, v5, e2, v2, e3, v3, e4, v5, e5, v4, e6, v1

จากนยามของกราฟออยเลอร

จะเหนไดวากราฟ G3 และ กราฟ G5 เปนกราฟออยเลอร เพราะสามารถหาวงจรออยเลอรได

Page 44: Graph 01

กราฟออยเลอร

• ทฤษฎบท 3 ให G เปนกราฟเชอมโยง และ | E(G) | ≥ 1

จะไดวา G เปนกราฟออยเลอร กตอเมอ จดทกจดใน G เปนจดค

*** หมายเหต | E(G) | หมายถง จานวนสมาชกใน E(G)

Page 45: Graph 01

กราฟออยเลอร

• ตวอยาง 12 กาหนดกราฟแสดงเสนทาง ทตารวจสายตรวจคนหนงตอง

ขบรถตรวจดความเรยบรอยบนถนนทกสาย โดยให จดยอด แทน แยก

ของถนน เสนเชอม แทน ถนนดงรป จงหาเสนทางทตารวจคนนขบรถ

ผานถนนทกสายเพยงครงเดยว แลวกลบมา ณ จดเรมตนดงเดม เมอ

กาหนดใหตารวจคนนเรมตนทจด A

Page 46: Graph 01

กราฟออยเลอร

• วธทา การหาเสนทางทตารวจคนนขบรถผานถนนทกสายเพยงครงเดยว แลวกลบมา ณ จดเรมตนดงเดม คอการหาวงจรออยเลอรของกราฟวงจรออยเลอรของกราฟทสามารถหาได คอ

A, e1, B, e2, C, e3, D, e4, E, e5, B, e6, F, e7, E, e8, A

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

Page 47: Graph 01

กราฟออยเลอร

• แบบฝกหด 3

ชางทาสคนหนงอยทฝง A เขาตองการทาสสะพานทง 12 สะพาน ดงรป ใหเสรจภายใน 1

วน แลวกลบมาทฝง A ตามเดม โดยเขาวางแผนจะใชเวลาในการเดนทางระหวางสะพาน

และทาสสะพานประมาณ 8 ชวโมง แตสทใชทาสะพานจะแหงเมอทาไปแลวประมาณ 3

ชวโมง ถาผเรยนเปนชางทาสจะมวธการทาสสะพานอยางไรเพอใหงานแลวเสรจภายใน 1

วน แลวกลบไปทฝง A ตามเดม (กาหนดใหชวงเวลาทางาน 1 วนของชางทาส คอ 08.00 –

17.00 น.)

Page 48: Graph 01

กราฟออยเลอร

• นยาม 18 ให G เปนกราฟเชอมโยง เราเรยกรอยเดนเปดใน G วา รอย

เดนเปดออยเลอร (Eulerian trail) เมอรอยเดนดงกลาวนผานเสนทกเสน

ใน G

• ทฤษฎบท 4 ให G เปนกราฟเชอมโยง จะไดวา G เปนกราฟทมรอยเดน

เปดออยเลอร กตอเมอ G มจดยอดคไมเกน 2 จด ยงไปกวานนจดค

เหลานนจะเปนจดเรมตนและจดปลายของรอยเดนออยเลอร

Page 49: Graph 01

กราฟออยเลอร

• แบบฝกหด 4 จากกราฟตอไปน กราฟใดม Eulerian trail

4.1 4.34.2

4.4 4.64.5

Page 50: Graph 01

การประยกตของกราฟ: วถทสนทสด• นยาม 19 วถทสนทสด จากจด A ถงจดยอด Z ในกราฟถวงนาหนก คอวถ A - Z ท

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

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

จะหาเสนทางจากเมอง A ไปยงเมอง E ทงหมดทไมผานเมองซากน

Page 51: Graph 01

การประยกตของกราฟ: วถทสนทสด

• วธทา เสนทางจากเมอง 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 กโลเมตร เสนทางท 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, B, D, E เปนวถทสนทสด

Page 52: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

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

ผลรวมของคานาหนกนอยทสด ทาไดไมสะดวกและเสยเวลา ในการหา

วถ A - Z ทสนทสด มขนตอนวธทใชหาวถทสนทสด เชน ขนตอนวธ

ของ Dijkstra

Page 53: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• นยาม 20 ตนไม (tree) คอ กราฟเชอมโยงทไมมวฏจกร • ตวอยาง14 พจารณากราฟตอไปน ขอใดเปนตนไม

Page 54: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

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

กราฟในรป (C) ไมเปนตนไม เพราะมวฏจกรปรากฏอย

กราฟในรป (D) ไมเปนตนไม เพราะไมใชกราฟเชอมโยง

Page 55: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• ทฤษฎบท 5

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 จด

Page 56: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

45

34

23

12

01

จานวนเสนเชอมจานวนจดยอดตนไม

Page 57: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• นยาม 21 กราฟยอย (subgraph) ของกราฟ G คอกราฟทประกอบดวยจด

ยอดและเสนเชอมใน G กลาวคอ กราฟ H เปนกราฟยอยของกราฟ G ถา

V(H) ⊂ V(G) และ E(H)⊂ E(G)

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

Page 58: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• นยาม 22 ตนไมแผทว (spanning tree) คอตนไมซงเปนกราฟยอยของ

กราฟเชอมโยง G ทบรรจจดยอดทกจดยอด

• ตวอยาง16 กราฟ H1, H2, H3, H4 และ H5 กราฟใดเปนกราฟยอยของ

กราฟ G ทบรรจจดยอดทกจดของกราฟ G ทเปนตนไม

Page 59: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• วธทา จากรปจะเหนวา กราฟ H1 เปนกราฟยอยของ G ทบรรจจดยอดทกจดของ G แตไมเปนตนไม

เพราะมวฏจกร

กราฟ H2 เปนกราฟยอยของ G ทบรรจจดยอดทกจดของ G แตไมเปนตนไม

เพราะไมเปนกราฟเชอมโยง

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

กราฟ H4 และ H5 เปนกราฟยอยทบรรจจดยอดทกจดของ G และเปนตนไม

ดงนน บอกไดวากราฟ H4 และ H5 เปนตนไมแผทวของกราฟ G

Page 60: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• ตวอยาง17 ปญหาหาการวางสายโทรศพท

บรษทรบเหมาตดตงโทรศพทแหงหนง ตองการวางสายโทรศพทเชอมระหวางหมบาน A, B, C,D, E และ F โดยจะวางสายไปตามถนน ถาคาใชจายในการวางสายโทรศพทขนอยกบความยาวของสายโทรศพท บรษทนจะวางสายโทรศพทอยางไรใหเสยคาใชจายนอยทสด เมอกาหนดตารางแสดงระยะทาง (กโลเมตร) ของถนนเชอมระหวางหมบานดงน

Page 61: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

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

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

Page 62: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด

• วธทา (ตอ) พจารณาขนตอนในแตละขนตอนเสนทเลอกจะใชเสนสฟาขนท 1 จดลาดบของเสนเชอมโดยเรยงคานาหนกของเสนเชอมจากนอยไปมากจะได 10, 10, 20, 20, 20, 30, 30, 40, 50, 60

ขนท 2 เลอกเสนเชอมทมคานาหนกของเสนเชอมนอยทสด ดงรป (1)

Page 63: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• วธทา (ตอ)

ขนท 3 เลอกเสนทมคานาหนกของเสนเชอมนอยทสดจากเสนเชอมทเหลอ และไมทาใหเกดวฏจกรเมอรวมเสนเชอมนเขาเปนสวนหนงของตนไมแผทวทตองการ

ดงรป (2)

ขนท 4 ดาเนนการตามขนท 3 ดงรป (3)

Page 64: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• วธทา (ตอ)

ขนท 5 ดาเนนการตามขนท 3 ดงรป (4)

ขนท 6 ดาเนนการตามขนท 3 จะพบวาเสนเชอมทเหลอทมคานาหนกนอยทสด คอ

เสนเชอม BF ซงมคานาหนกของเสนเชอมเทากบ 20 ไมสามารถเลอกไดเพราะทาให

เกดวฏจกรดงนนจะตองเลอกเสนเชอมทมคานาหนกของเสนเชอมเทากบ 30 ซงม 2

เสน คอ เสนเชอม AB และ CE เสนเชอม CE ไมเลอกไดเพราะทาใหเกดวฏจกร

ดงนนเลอกเสนเชอม AB ดงรป (5)

Page 65: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• วธทา (ตอ)

จะเหนวาไมสามารถเลอกเสนเชอมทเหลอไดอกเนองจากทาใหเกดวฏจกรจงสนสด

ขนตอน ไดตนไมแผทวทนอยทสดทมผลรวมของคานาหนกของเสนเชอม เทากบ10 + 10 + 20 + 20 + 30 = 90 ดงรป (6)

Page 66: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• วธทา (ตอ)

ดงนนบรษทรบเหมาแหงนตองวางสายโทรศพทตามถนน ดงรป (6) ซงม

ระยะทาง 90 กโลเมตร จงจะเสยคาใชจายนอยทสด

ตนไมแผทวทนอยทสดของกราฟในตวอยางขางตนอาจมไดมากกวา 1 แบบ ดงน

Page 67: Graph 01

การประยกตของกราฟ: ตนไมแผทวทนอยทสด• สรป

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

สรางตนไมแผทวทนอยทสดของกราฟ เสนเชอมทเลอกตองไมทาใหเกด วฏจกร

– ขนตอนวธสนสดเมอเลอกเสนเชอมครบ n – 1 เสน เมอ n เปนจานวนจดยอดของกราฟ

– ขนตอนวธในการหากราฟแผทวทเปนกราฟเชอมโยงและมคานาหนกนอย

ทสดมอยดวยกนหลายวธ เชน วธของครสกาวล (Kruskal) และขนตอนวธของพรม (Prim)

Page 68: Graph 01

เฉลยแบบฝกหด

• เฉลยแบบฝกหด 1

Page 69: Graph 01

เฉลยแบบฝกหด• เฉลยแบบฝกหด 2

2.1 วธทา

พจารณากลมท 1 สมมตวาแปลงปญหาขางตนเปนกราฟไดโดยให จดยอด แทน ผเรยน เสนเชอม แทน การจบมอของผเรยนในกลมกราฟมจดยอด 5 จด และดกรของจดยอด 4, 3, 2, 2 และ 1 จะไดวากราฟมจดยอดคเปนจานวนค สอดคลองกบทฤษฎบท 2 นนคอ สามารถแปลงปญหาขางตนเปนกราฟไดดงนน ผเรยนกลมท 1 สามารถทาตามคาบอกของอาจารยวนดได

พจารณากลมท 2 สมมตวาแปลงปญหาขางตนเปนกราฟได โดยให จดยอด แทน ผเรยน เสนเชอม แทน การจบมอของผเรยนในกลม กราฟมจดยอด 5 จด และดกรของจดยอดเทากบ 4, 3, 2, 1 และ 1 จะไดวากราฟมจดยอดคเปนจานวนค ขดแยงกบทฤษฎบท 2 นนคอ ไมสามารถแปลงปญหาขางตนเปนกราฟไดดงนน ผเรยนกลมท 2 ไมสามารถทาตามคาบอกของอาจารยวนดได

จากคาตอบขางตนจงหาจานวนครงของการจบมอกนในกลมของผเรยนกลมท 1

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

12 = 2nn = 6

ดงนน ผเรยนกลมท 1 มการจบมอกนในกลม 6 ครง

Page 70: Graph 01

เฉลยแบบฝกหด• เฉลยแบบฝกหด 2 (ตอ)

2.2 วธทา

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

จานวนครงทจดการแขงขน คอ จานวนเสนเชอมในกราฟสมมตวากราฟมเสนเชอม n เสนดงนน 9(10) = 2n

90 = 2nn = 45

ดงนน ตองจดการแขงขนฟตบอล 45 ครง หรอ 45 ค

Page 71: Graph 01

เฉลยแบบฝกหด• เฉลยแบบฝกหด 3

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

เนองจากจดยอดทกจดของกราฟเปนจดยอดค จงเปนกราฟออยเลอร นนคอสามารถหาวงจรออยเลอรของกราฟได

จะไดวงจรออยเลอรลาดบหนงทเปนไปได มลาดบคอ A, e1, C, e2, A, e3, B, e4, A, e5, B, e6, D,e7, C, e8, E, e9, D, e10, E, e11, F, e12, A

ดงนนชางทาสควรทาสโดยใชเสนทาง มลาดบคอ A, e1, C, e2, A, e3, B, e4, A, e5, B, e6, D, e7,C, e8, E, e9, D, e10, E, e11, F, e12, A

Page 72: Graph 01

เฉลยแบบฝกหด

• เฉลยแบบฝกหด 4 กราฟทม Eulerian trail ตองมจานวนจดยอดคไม

เกน 2 จด

4.1 มรอยเดนเปดออยเลอร 4.3 ไมมรอยเดนเปดออยเลอร

เพราะมจดค มากกวา 2 จด (4 จด)

4.2 มรอยเดนเปดออยเลอร

4.4 มรอยเดนเปดออยเลอร 4.6 ไมมรอยเดนเปดออยเลอร

เพราะมจดคมากกวา 2 จด

4.5 มรอยเดนเปดออยเลอร