Transcript
Page 1: การให้สีกราฟ Graph Coloring

การให้�สี�กราฟ

Graph Coloring

Page 3: การให้สีกราฟ Graph Coloring

การคาดการณ์#อ�นน��ถู%กกล&าวถู(งคร��งแรกในปี, ค.ศ . 1852 เม- อ ฟรานซิ�สี ก%ทำร� ได�สี�งเกตเห้1นว&าสีามารถูใช�เพั�ยงสี� สี�ก1เพั�ยงพัอในการระบาย ขณ์ะทำ� ก�าล�งระบายแผนทำ� ของเขตห้น( งในอ�งกฤษ

Francis Guthrie แผนทำ� ของเขตห้น( งในอ�งกฤษ

The F our C olor Theorem

Page 4: การให้สีกราฟ Graph Coloring

ขณ์ะน��นก%ทำร�เปี6นล%กศ�ษย#ของ ออก�สีต�สี เดอ มอร#แกน ทำ� University College London ก%ทำร�จับการศ(กษาในปี, ค.ศ . 1850 และต&อมาได�เปี6นศาสีตราจัารย#สีาขาคณ์�ตศาสีตร#ในปีระเทำศแอฟร�กาใต�

Augustus De Morgan University College London

Page 5: การให้สีกราฟ Graph Coloring

ห้ล�กฐานอ�างอ�งทำ� ม�การต�พั�มพั#เปี6นอ�นแรกถู%กพับในงานของ อาร#เทำอร# เคย#เลย#

(Arthur Cayley)

On the colorings of maps.,

Proc . Royal Geography Society

1, 259-261, 1879

Arthur Cayley

Page 6: การให้สีกราฟ Graph Coloring

Timeline

• ค.ศ . 1879 เก�ดบทำพั�สี%จัน#ห้น( งของทำฤษฎี�บทำน��ค-องานของ Alfred Kempe

• ค.ศ . 1880 เก�ดบทำพั�สี%จัน#อ�กอ�นห้น( งค-อของ Peter Tait

• ค.ศ . 1890 Percy Heawood ได�แสีดงว&าบทำพั�สี%จัน#ของ Kempe ม�ข�อผ�ดพัลาด และพั�สี%จัน#ว&ากราฟเช�งระนาบทำ�กอ�นสีามารถูระบายได�ด�วยสี� 5 สี�

• ค.ศ . 1891 Julius Petersenได�แสีดงว&าบทำพั�สี%จัน#ของ Tait ผ�ดพัลาด

Page 7: การให้สีกราฟ Graph Coloring

Timeline (ต่�อ)

• ค.ศ . 1969 - G. Spencer Brown อ�างว&าทำฤษฎี�บทำน��สีามารถูพั�สี%จัน#ได�ด�วยระบบคณ์�ตศาสีตร#ทำ� เขาได�พั�ฒนาข(�นมา

• ค.ศ . 1970 น�กคณ์�ตศาสีตร#ชาวเยอรม�น Heinric h Heesch ได�พั�ฒนาว�ธี�การในการใช�คอมพั�วเตอร#ช&วยห้า

บทำพั�สี%จัน#• ค.ศ . 1976 พั�สี%จัน#ข�อคาดการณ์#สี� สี�น��ได�สี�าเร1จัโดย

Kenneth Appel และ Wolfgang Haken• ค.ศ . 2004 Benjamin Werner และ Georges

Gonthier พั�สี%จัน#ทำฤษฎี�บทำน��ด�วยใช�โปีรแกรมพั�สี%จัน#ทำฤษฎี�บทำช- อ Coq

Page 8: การให้สีกราฟ Graph Coloring

การให้�สี�กราฟ

การให้�สี�กราฟ (Graph Coloring )เปี6นปี;ญห้าเก� ยวข�องก�บการระบายสี�ขอบเขตต&างๆ ของแผนทำ� โดยทำ� ขอบเขตทำ� อย%&ต�ดก�นจัะต�องม�สี�ต&างก�นและใช�สี�น�อยทำ� สี�ด ปี;ญห้าด�งกล&าวสีามารถูจัะใช�กราฟมาสีร�างแบบจั�า ลองได�โดย ให้�แต&ละขอบเขตแทำนด�วยจั�ดขอบเขตทำ� อย%&ต�ดก�นให้�ม�เสี�นเช- อมจั�ดน��น

Page 9: การให้สีกราฟ Graph Coloring

การแปีลงจัากแผนทำ� ภู%ม�ปีระเทำศมาเปี6นกราฟ

Page 10: การให้สีกราฟ Graph Coloring

การแปีลงจัากแผนทำ� ภู%ม�ปีระเทำศมาเปี6นกราฟ

Page 11: การให้สีกราฟ Graph Coloring

นิ�ยาม การให้�สี�ของกราฟธีรรมดาเปี6นการ ก�าห้นดสี�ทำ� จั�ด โดยทำ� จั�ด 2 จั�ดใด ๆ ทำ� อย%&

ต�ดก�นจัะต�องม�สี�ต&างก�น

นิ�ยาม C hromatic N umber ของกราฟค-อจั�านวนสี�ทำ� น�อยทำ� สี�ดทำ� ใช�ในการให้�สี�กราฟน��น

Page 12: การให้สีกราฟ Graph Coloring

The F our Colo r Theorem

• เปี6นทำฤษฎี�ทำ� ม�ช- อเสี�ยงทำางคณ์�ตศาสีตร# • กล&าวว&าจั�านวน C hromatic N umber ในการให้�

สี�กราฟของกราฟระนาบ (P lanar G raph) จัะใช�ไม&เก�น 4 สี�

• พั�สี%จัน#โดย Kenneth Appel และ Wolfgang Haken ใน ค.ศ . 1976

• ใช�ได�ก�บกราฟระนาบเทำ&าน��น

Page 13: การให้สีกราฟ Graph Coloring

จังห้าเลขสี�ของกราฟต&อไปีน��

จั�านวนสี�ทำ� น�อยทำ� สี�ดทำ� จัะให้�สี� กราฟน��ได� = 3

∴ เลขสี� = 3 ค-อ a,d,g สี�แดง, b,f สี�ฟ?า และ c,e สี�เข�ยว

จั�านวนสี�ทำ� น�อยทำ� สี�ดทำ� จัะให้�สี� กราฟน��ได� = 4

∴ เลขสี� = 4 ค-อ a,d สี�แดง, b,f สี�ฟ?า, c,e สี�เข�ยว และ g สี�เห้ล-อง

Page 14: การให้สีกราฟ Graph Coloring

จังห้าเลขสี�ของ Kn

เพัราะว&า Kn 2 จั�ดใด ๆ จัะต&อก�น∴ จัะต�องใช�จั�านวนสี�ในการให้�สี� Kn = n สี� และไม&สีามารถูใช�น�อยกว&า n ได�∴ เลขสี� = n

Page 15: การให้สีกราฟ Graph Coloring

เพัราะว&ากราฟสีองสี&วนจัะแบ&งเซิตของจั�ดออกเปี6น 2กล�&ม ซิ( งภูายในกล�&มจัะไม&ต&อถู(งก�นเลย

∴ ใช�สี�เพั�ยง 2 สี� เทำ&าน��น∴ เลขสี� = 2

จังห้าเลขสี�ของกราฟสีองสี&วนบร�บ%รณ์# Km,n

Page 16: การให้สีกราฟ Graph Coloring

จังห้าเลขสี�ของกราฟ Cn

พั�จัารณ์า C4

, C6

, C8

,… จัะเห้1นว&าใช�เพั�ยง 2 สี�ก1พัอ∴เลขสี�ของ Cn = 2 สี�าห้ร�บ n ทำ� เปี6นจั�านวนค%&

Page 17: การให้สีกราฟ Graph Coloring

พั�จัารณ์า C3

, C5

, C7

,…จัะเห้1นว&า ต�องใช�อย&างน�อย 3 สี�∴ เลขสี�ของ Cn = 3 สี�าห้ร�บ n ทำ� เปี6นจั�านวนค�

จังห้าเลขสี�ของกราฟ Cn

Page 18: การให้สีกราฟ Graph Coloring

การประย�กต่�ใช้�การให้�สี�กราฟ

Page 19: การให้สีกราฟ Graph Coloring

ต่�วอย�างกรรมการจั�ดตารางสีอนของภูาคว�ชา

ว�ทำยาการคอมพั�วเตอร# ต�องทำ�าการก�าห้นดเวลาสีอนให้�ก�บว�ชาจั�านวน 6 ว�ชา (ว�ชา a, b, c, d,

e และ f) โดยม�บางค%&ว�ชาซิ( งไม&สีามารถูจั�ดสีอนพัร�อนก�นได� เน- องจัากม�น�กเร�ยนลงทำะเบ�ยนเร�ยนว�ชาเห้ล&าน��นควบค%&ก�น ซิ( งค-อว�ชา a ก�บ b, b ก�บ

c, c ก�บ a, a ก�บ d, b ก�บ d, d ก�บ c และ c ก�บ e แต&ละว�ชาใช�เวลาเร�ยนต�ดก�น 3 ช� วโมงต&อห้น( งคาบ และทำางภูาคว�ชาม�นโยบายทำ� จัะสีอนว�ชาในภูาคเฉพัาะช&วงเช�า จังห้าจั�านวนว�นทำ� น�อยทำ� สี�ดในการสีอนทำ��ง 6 ว�ชาด�งกล&าว

การจั�ดตารางสีอบ

Page 20: การให้สีกราฟ Graph Coloring

ว�ธี�ทำ�าสีร�างแบบจั�าลอง

a

e

b

d

c

f

เราสีามารถูให้�กราฟจั�าลองปี;ญห้าน��ได� โดยให้�จั�ดแทำนว�ชา และค%&จั�ดใดจัะม�เสี�นเช- อมต&อถู(งก�น เม- อค%&ว�ชาน��นไม&

สีามารถูทำ�าการสีอนได�พัร�อมก�น

Page 21: การให้สีกราฟ Graph Coloring

แสีดงต�วอย&างการให้�สี�ซิ( งใช�สี�น�อยทำ� สี�ด ด�งน��นเราสีามารถูแบ&งว�ชาทำ��งห้มดออกได�เปี6นเซิตย&อยต&างๆ ด�งน��

{a,f}, {b,e}, {c} และ {d} จั(งสีร�ปีว&าต�องใช�เวลาสีอน 4 ว�น

ปี;ญห้าค-อการให้�สี�กราฟ โดยกล�&มจั�ดใดทำ� ม�สี�เห้ม-อนก�นจัะแทำนกล�&มว�ชาซิ( งเปีAดสีอนพัร�อมก�นได�

ด�า

ขาว

ขาว

ฟ?า

แดง

ด�า

Page 22: การให้สีกราฟ Graph Coloring

ต่�วอย�าง

จั�ดตารางสีอบอย&างไรโดยม�เง- อนไขว&าให้�เวลาสีอบว�ชาละ 1 คาบ และไม&ม�น�กศ(กษาคนใดสีอบ 2 ว�ชาพัร�อมก�น โดยม� 7 ว�ชา (ว�ชา 1,2,3,4,5,6,7 ) ม� 2 ว�ชาต&อไปีน��ทำ� ม�น�กศ(กษาสีอบร&วมก�น ค-อ - - 12 13, ,

- - - - - 14 17 23 24 25, , , , ,- - - - - 27 34 36 37 45

- - - - 46 56 57 67, , ,

Page 23: การให้สีกราฟ Graph Coloring

ว�ธี�ทำ�าสีร�างแบบจั�าลอง

Page 24: การให้สีกราฟ Graph Coloring

เลขสี� 4= เพัราะใช�เพั�ยง 4 สี�ก1ทำ�าการให้�สี�กราฟน��ได�∴ จั�านวนคาบม�เพั�ยง 4 ก1พัอ

ลองลงสี�ให้�กราฟ

Page 25: การให้สีกราฟ Graph Coloring

ต่�วอย�าง ปี;ญห้าเก&าแก&ปี;ญห้าห้น( งในทำฤษฎี�กราฟ

ค-อการระบายสี�แผนทำ� ซิ( งถูามว&าจัะต�องใช�สี� จั�านวนน�อยทำ� สี�ดเทำ&าไร ในการระบายสี�

ปีระเทำศต&างๆ บนแผนทำ� เพั- อให้�ปีระเทำศซิ( งม� พัรมแดนต�ดก�นใช�สี�ต&างก�น

การลงสี�แผนทำ�

Page 26: การให้สีกราฟ Graph Coloring

ว�ธี�ทำ�าสีร�างแบบจั�าลอง

จัากแบบจั�าลอง เราสีามารถูแบ&งปีระเทำศออกเปี6น 4 เซิตย&อยต&างๆ ด�งน�� {1,5}, {2,3 , 8 },

{4, 7} และ {6} จั(งสีร�ปีว&าใช� 4 สี� นอกจัากน��ย�งระบายแบบอ- นได�อ�กเพั- อนๆ ลองค�ดด%

Page 27: การให้สีกราฟ Graph Coloring

ต่�วอย�าง

การปีระมวลผลทำ� ม�การวนซิ��าของเคร- องคอมพั�วเตอร#จัะทำ�าให้�เร1วข(�นได� ถู�าต�วแปีรทำ� ถู%กใช�บ&อยถู%กเก1บไว�ทำ� ด�ชน�ร�จั�สีเตอร# (Index

Register) ทำ� อย%&ในห้น&วยปีระมวลผลกลางแทำนทำ� จัะเก1บไว�ในห้น&วยความจั�า ตามปีกต� เม- อก�าห้นดการวนซิ��ามาให้� ปี;ญห้าค-อจัะต�องใช�ด�ชน�ร�จั�สีเตอร#จั�านวนเทำ&าไร เพั- อนๆ ม�แนวค�ดอย&างไรในเร- องน��

การใช�ทำร�พัยากร

Page 28: การให้สีกราฟ Graph Coloring

การสีร�างแบบจั�าลองปี;ญห้าน��ทำ�าได�โดยใช�การให้�สี�กราฟ โดยให้�จั�ดแทำนต�วแปีรในการวนซิ��า และจั�ด 2 จั�ดใด ๆ จัะม�เสี�นเช- อมเช- อมต&อก�น ถู�าต�วแปีรน��นต�องเก1บในร�จั�สีเตอร#พัร�อมๆ ก�น ขณ์ะปีระมวลผลในการวนซิ��า

∴ เลขสี�จัะแทำนจั�านวนร�จั�สีเตอร#ทำ� ต�องใช�เพัราะร�จั�สีเตอร#ทำ� ต&างก�นถู%กก�าห้นดให้�ก�บต�วแปีรทำ� จั�ดน��นต�ดก�น

แนิวคิ�ด

Page 29: การให้สีกราฟ Graph Coloring

ต่�วอย�าง

การก�าห้นดความถู� ของสีถูาน�โทำรทำ�ศน#ช&อง 213 ถู%กก�าห้นดให้�ออกอากาศพัร�อมๆ ก�นได� แต&เพั- อไม&ให้�คล- นรบกวนก�น จัะก�าห้นดให้�สีถูาน�โทำรทำ�ศน#ใช�ช&องต&างก�น ถู�าอย%&ในร�ศม� 250 กม . จังใช�การให้�สี�กราฟในการสีร�างแบบจั�าลองของการก�าห้นดช&องให้�ก�บสีถูาน�โทำรทำ�ศน#

Page 30: การให้สีกราฟ Graph Coloring

1. สีร�างกราฟโดยใช�จั�ดแทำนสีถูาน�โทำรทำ�ศน#

2. จั�ด 2 จั�ดเช- อมด�วยเสี�นเช- อม ถู�าห้&างก�น 250< กม.

3. ทำ�าการให้�สี�โดยทำ� สี�แต&ละสี�จัะแทำนช&องต&าง ๆ

แนิวคิ�ด

เช้�นิ

Page 31: การให้สีกราฟ Graph Coloring

ทำฤษฎี�ทำ�$เก�$ยวข้�อง

ปี;ญห้าการให้�สี�กราฟใดๆ โดยใช�จั�านวนสี� น�อยทำ� สี�ด จั�ดได�ว&าเปี6นปี;ญห้าทำ� ยาก ซิ( ง

ห้มายความว&าย�งไม&ม�ว�ธี�การซิ( งม�ปีระสี�ทำธี�ภูาพัทำ� จัะห้าการให้�สี� ทำฤษฎี�บทำต&อไปีน��น�าเสีนอขอบเขต

ของเลขสี�ปีระจั�ากราฟ G ( ใช�สี�ญล�กษณ์# x(G)) โดยสี�งเกตจัากค�ณ์สีมบ�ต�ของกราฟ G

Page 32: การให้สีกราฟ Graph Coloring

ทำฤษฎี�บทำทำ�$ 1 ถู�ากราฟ G เปี6นกราฟธีรรมดา ซิ( งม� v จั�ด และเสี�นเช- อม e เสี�น จัะได�ว&า

x(G) ≥ v2/(v2 -2e) ทำฤษฎี�บทำทำ�$ 2 ถู�ากราฟ G ไม&ม�วงจัรซิ( งม�

ความยาวเปี6นเลขค� และไม&ใช&กราฟแบบ บร�บ%รณ์#จัะได�ว&า x(G) ≤ d โดยทำ� d ค-อด�กร�

ทำ� มากทำ� สี�ดของจั�ดใน G ทำฤษฎี�บทำทำ�$ 3 กราฟ G จัะเปี6นกราฟ 2 สี� ก1

ต&อเม- อ G ไม&ม�วงจัรซิ( งม�ความยาวเปี6นเลขค� และต�องม�เสี�นเช- อมอย&างน�อยห้น( งเสี�น

ทำฤษฎี�บทำทำ�$ 4 กราฟระนาบ G ใดๆ ถู%กให้�ม� โดยใช�สี� 4 สี�

( ข�อควรระว�ง : อย&าได�สีร�ปีว&ากราฟระนาบจัะ ต�องใช� 4 สี� ห้ร-อกราฟไม&ระนาบจัะต�องใช� 5 สี�

ข(�นไปี)

Page 33: การให้สีกราฟ Graph Coloring

ข�อสี�งเกตอ- นๆ

• กราฟซิ( งม�แต&จั�ดโดดเด�ยว จัะเปี6นกราฟห้น( งสี� • กราฟซิ( งม�เสี�นเช- อม (ซิ( งไม&ใช&เสี�นเช- อมวงวน ) จัะเปี6นกราฟ

อย&างน�อย 2 สี� • กราฟแบบบร�บ%รณ์#ซิ( งม� n จั�ด (Kn ) เปี6นกราฟ n สี� ด�งน��น

กราฟซิ( งม�กราฟย&อยแบบบร�บ%รณ์#ทำ� ม� m จั�ด จัะเปี6นกราฟอย&างน�อย m สี�

• กราฟซิ( งม�เพั�ยงห้น( งวงจัร ทำ� ม� n จั�ด n ≥ 3 จัะเปี6น กราฟสีองสี� ถู�า n เปี6นเลขค%&และเปี6นกราฟ 3 สี� ถู�า n เปี6นเลขค�

• กราฟวงล�อเปี6นกราฟ 3 สี� ถู�าม�จั�านวนซิ� ล�อเปี6นเลขค%& และจัะเปี6นกราฟ 4 สี� ถู�าม�จั�านวนซิ� ล�อเปี6นเลขค�

Page 34: การให้สีกราฟ Graph Coloring

เอกสีารอ�างอ�ง

• http://noppanun.lpru.ac.th/subject/discrete/chapter6.pdf

• http://staff.buu.ac.th/~seree/310213/chap11.pdf

• http://202.28.24.209/206281/?download=graph.pdf

• http:// th.wikipedia.org/wiki/ทำฤษฎี�บทำสี� สี�


Recommended