Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Σχετικά έγγραφα
Πανεπιστήμιο Στερεάς Ελλάδας Τμήμα Πληροφορικής ΘΕΩΡΙΑ ΓΡΑΦΩΝ. 9 η Διάλεξη Χρωματισμός γράφων Θεωρήματα Τεχνικές Εφαρμογές

Θεωρία και Αλγόριθμοι Γράφων

Θεωρία Γραφημάτων 8η Διάλεξη

Χρωματισμός γραφημάτων

χ(k n ) = n χ(c 5 ) = 3

ΧΡΩΜΑΤΙΣΜΟΣ ΓΡΑΦΗΜΑΤΩΝ

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

Θεωρία Γραφημάτων 10η Διάλεξη

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Σειρά Προβλημάτων 1 Λύσεις

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Στα μαθηματικά και στις άλλες επιστήμες κάνουμε συχνά υποθέσεις. Οταν δείξουμε ότι μια υπόθεση είναι αλη

Χρωματισμός γραφημάτων

Μη Ντετερμινισμός και NP-Πληρότητα

Θεωρία Γραφημάτων 2η Διάλεξη

Μη Ντετερμινισμός και NP-Πληρότητα

Σχεδίαση & Ανάλυση Αλγορίθμων

Θεωρία Γραφημάτων 11η Διάλεξη

Υποθέσεις - Θεωρήματα. Μαθηματικά Πληροφορικής 1ο Μάθημα. Η χρυσή τομή. Υποθέσεις - Εικασίες

u v 4 w G 2 G 1 u v w x y z 4

S A : N G (S) N G (S) + d S d + d = S

Chapter 9: NP-Complete Problems

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Φροντιστήριο 11 Λύσεις

Λύσεις 4ης Σειράς Ασκήσεων

Διμερή γραφήματα και ταιριάσματα

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Θεωρία Γραφημάτων 2η Διάλεξη

Βασικές Έννοιες Θεωρίας Γραφημάτων

Δρομολόγηση Και Πολύχρωματισμός. Γραφημάτων ΚΑΡΑΓΕΩΡΓΟΣ ΤΙΜΟΘΕΟΣ Α.Μ 1026

Στοιχεία Θεωρίας Γραφηµάτων (1)

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Αλγόριθμοι για ανάθεση συχνοτήτων και έλεγχο αποδοχής κλήσεων σε κυψελικά ασύρματα δίκτυα

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Κατανεμημένα Συστήματα Ι

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Θεωρία Γραφημάτων 1η Διάλεξη

Θεωρία Γραφημάτων 6η Διάλεξη

Edge-coloring σε διμερή πολυγραφήματα

d(v) = 3 S. q(g \ S) S

Διάλεξη 7: X Y Σχήμα 7.2: Παράδειγμα για το Πόρισμα 7.2, όπου: 1 = {1, 2, 5}, 2 = {1, 2, 3}, 3 = {4}, 4 = {1, 3, 4}. Θ

ΑΛΓΟΡΙΘΜΟΙ ΚΑΤΑΣΚΕΥΗΣ ΚΑΙ ΜΕΛΕΤΗ ΠΡΟΒΛΗΜΑΤΩΝ ΧΡΩΜΑΤΙΣΜΟΥ ΚΛΑΣΕΩΝ ΤΕΛΕΙΩΝ ΓΡΑΦΗΜΑΤΩΝ

Μη Ντετερμινισμός και NP-Πληρότητα

NP-πληρότητα. Λεωνίδας Παληός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων

Κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Πολυγραφήµατα (Multigraphs)

Θεωρία Γραφημάτων 9η Διάλεξη

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Θεωρία Γραφημάτων 7η Διάλεξη

Θεωρία Γραφημάτων 5η Διάλεξη

Σχεδίαση και Ανάλυση Αλγορίθμων

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Εισαγωγή σε βασικές έννοιες. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών

Θεωρι α Γραφημα των 8η Δια λεξη

ΔΥΣΚΟΛΙΑ ΣΤΗΝ ΠΡΟΣΕΓΓΙΣΙΜΟΤΗΤΑ

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

ψ φ2 = k χ φ2 = 4k χ φ1 = χ φ1 + χ φ2 + 3 = 4(k 1 + k 2 + 1) + 1 ψ φ1 = ψ φ1 + χ φ2 = k k = (k 1 + k 2 + 1) + 1

Θεωρία Γραφημάτων 1η Διάλεξη

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 7 Φεβρουαρίου / 38

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 3/2/ / 37

Ασκηση 1 [ ] Παράδοση : Τετάρτη , 13:00

NP-complete problems. IS, 4-Degree IS,CLIQUE, NODE COVER, MAX CUT, MAX BISECTION, BISECTION WIDTH. NP-complete problems 1 / 30

για NP-Δύσκολα Προβλήματα

Σειρά Προβλημάτων 5 Λύσεις

Υπολογιστική Πολυπλοκότητα

Διάλεξη 3: Σχήμα 3.3: Το σύνολο των κόκκινων ακμών είναι ακμοδιαχωριστής αλλά όχι τομή. Το σύνολο ακμών {1, 2, 3} είναι τομή. Από

Προσεγγιστικοί Αλγόριθμοι

q(g \ S ) = q(g \ S) S + d = S.

Θεωρία Γραφημάτων 5η Διάλεξη

1. Σε ένα τουρνουά με 8 παίκτες μπορεί οι παίκτες να συμμετείχαν σε: 6,5,4,4,4,3,1,1 αγώνες αντίστοιχα;

βασικές έννοιες (τόμος Β)

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem)

ΠΛΗ 20, 5 η ΟΣΣ: Θεωρία Γραφημάτων

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Βασικές Έννοιες Θεωρίας Γραφημάτων

Προσεγγιστικοί Αλγόριθμοι

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα.

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Υπολογιστική Πολυπλοκότητα

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Αλγόριθμοι για ανάθεση συχνοτήτων και έλεγχο αποδοχής κλήσεων σε κυψελικά ασύρματα δίκτυα. (μέρος ΙΙ)

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 11: Περιορισμοί της Αλγοριθμικής Ισχύος

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα

e 2 S F = [V (H), V (H)]. 3-1 e 1 e 3

E(G) 2(k 1) = 2k 3.

Διάλεξη 4: Απόδειξη: Για την κατεύθυνση, παρατηρούμε ότι διαγράφοντας μια κορυφή δεν μπορούμε να διαχωρίσουμε τα u και v. Αποδεικνύουμε

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

OPTICAL WAVELENGTH ROUTING ON DIRECTED FIBER TREES

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Συνεκτικότητα και Δισυνεκτικότητα. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Γράφοι: κατευθυνόμενοι και μη

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

Transcript:

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Ενότητα 7 ΧΡΩΜΑΤΙΣΜΟΣ Σταύρος Δ. Νικολόπουλος 2017-18 www.cs.uoi.gr/~stavros

Εισαγωγή Χρωματισμός κορυφών-ακμών-περιοχών. Χρωματική τάξη (color class): σύνολο κορυφών με το ίδιο χρώμα. 2

Εισαγωγή χ(g) ω(g) α(g) κ(g) Γράφημα k-χρωματίσιμο (k-colorable): οι κόμβοι του μπορούν να χρωματισθούν με k χρώματα. Γράφημα k-χρωματικό (k-chromatic): οι κόμβοι του μπορούν να χρωματισθούν με k χρώματα, αλλά όχι με k-1. Χρωματικός αριθμός (chromatic number): χ(g) = k. χ(g) ω(g) 3

Εισαγωγή Χρωματικός αριθμός (chromatic number): χ(g) = k. Αν ένα γράφημα G είναι p-χρωματίσιμο (όπου p > χ(g)), τότε το G είναι και r-χρωματίσιμο (όπου p > r χ(g)). Γράφημα χρωματίσιμος κατά μοναδικό τρόπο (uniquely colorable) Ωστόσο, υπάρχουν ειδικές περιπτώσεις για k = χ(g) οι χρωματικές κλάσεις είναι σταθερές. V 1 V 2 V 3 Γενική περίπτωση για k > χ(g), το G μπορεί να χρωματιστεί με πολλούς διαφορετικούς τρόπους χρησιμοποιώντας k χρώματα V 4 V 5 {v 1 }, {v 2,v 5 }, {v 3,v 4 } 3 χρωματικές κλάσεις 4

Εισαγωγή Κρίσιμος (critical): χ(η) < χ(g), για κάθε Η υποσύνολο του γραφήματος G. χ(g) = 3 χ(η) < 3 k-κρίσιμος (k-critical): τo G είναι k-χρωματικό και κρίσιμο, k 2 εάν χ(g)=k και χ(g-v)=k-1, για κάθε ν που ανήκει V(G). W 6 χ(w 6 ) = 4 4-χρωματικό και κρίσιμο 4-κρίσιμο Θεώρημα: Αν το γράφημα G είναι k-κρίσιμο, τότε d(g) k-1. 5

Εισαγωγή Θεώρημα: G είναι k-κρίσιμο d(g) k-1 V 1 V 2 V k-1 6

Εισαγωγή Θεώρημα: G είναι k-κρίσιμο d(g) k-1 v Γιατί? V 1 V 2 V i V k-1 7

Εισαγωγή Θεώρημα: G είναι k-κρίσιμο d(g) k-1 v V 1 V 2 V i V k-1 8

Εισαγωγή Τέλειο γράφημα (perfect graph): αριθμός κλίκας ω(η)=χ(η) χρωματικό αριθμό, για κάθε επαγόμενο υπογράφημα Η του γραφήματος G. 1 3 2 1 2 1 Holes Antiholes 3 2 Όχι Perfect 9

Εισαγωγή Γράφημα k-χρωματίσιμο ως προς ακμές (k-edge colorable): οι ακμές μπορούν να χρωματισθούν με k χρώματα. Γράφημα k-χρωματικό ως προς ακμές (k-edge chromatic): οι ακμές μπορούν να χρωματισθούν με k χρώματα, αλλά όχι με k-1. Χρωματικός αριθμός ακμών ή κατάλογος (chromatic index): χ (G) = k. Γράφημα k-χρωματίσιμο ως προς περιοχές (k-region colorable): οι περιοχές μπορούν να χρωματισθούν με k χρώματα Χ (G) Χάρτες 10

Χρωματισμός Κόμβων χ(k n ) = n χ(ν n ) = 1 χ(k m,n ) = 2, για m, n 1 χ(g) = 2, αν δεν υπάρχει κύκλος περιττού μήκους ΌΧΙ χ(τ) = 2, αν το δένδρο έχει n > 2 κορυφές χ(c 2n ) = 2 χ(c 2n+1 ) = 3 χ(w 2n ) = 3 χ(w 2n+1 ) = 4 1 1 2 3 2 2 4 3 1 1 1 2 2 11

Χρωματισμός Κόμβων Ερώτημα: ποιος είναι ο χρωματικός αριθμός ενός γραφήματος; Απάντηση: r χ(g) n, αν υπάρχει υπογράφημα K r. Θεώρημα: Κάθε γράφημα μη-πλήρης με μέγιστο βαθμό D είναι (D+1)-χρωματίσιμο (οι κόμβοι του μπορούν να χρωματιστούν με D+1 χρώματα). Θεώρημα (rookes 1941): Κάθε γράφημα μη-πλήρες με D(G) 3 είναι D-χρωματίσιμος. 12

Χρωματισμός Κόμβων Εάν G έχει n = D+1 κόμβους η αλήθεια του Θεωρήματος είναι προφανής. 5 Δ(G) = 4 1 2 3 4 Υποθέτουμε ότι ισχύει για n = k-1 θα αποδείξουμε ότι ισχύει όταν το G έχει k κόμβους. Αν από G διαγράψουμε ν : d(v) = D G-v είναι βαθμού το πολύ D και έχει n-1 κόμβους. Άρα G-v είναι (D+1)-χρωματίσιμος ν παίρνει ένα χρώμα που δεν υπάρχει στους γείτονές του. v Δ(G)=4 13

Χρωματισμός Κόμβων Θεώρημα: Κάθε επίπεδος γράφος είναι 6-χρωματίσιμος. Θεώρημα: Κάθε επίπεδος γράφος είναι 5-χρωματίσιμος. Θεώρημα: Κάθε επίπεδος γράφος είναι 4-χρωματίσιμος. Η απόδειξη δεν δίνεται σε κανένα δικτυακό βιβλίο 14

Χρωματισμός Κόμβων Κάθε Επίπεδο Γράφημα είναι 6-χρωματίσιμο 15

Χρωματισμός Κόμβων Εικασία των 4 χρωμάτων (4 color conjecture): Guthrie 1850 (παρατήρηση) DeMorgan 1852 Hamilton 1852 Cayley 1878 (δεν βρήκε λύση) Kempe 1880 (βρήκε λάθος λύση) Heawood 1890 (βρήκε το λάθος της λύσης) ranklin 1920 (για n 25) Reynolds 1926 (για n 27) ranklin 1931 (για n 31) Winn 1943 (για n 35) Ore-Stemple 1968 (για n 40) Appel-Haken-Koch 1977 16

Χρωματισμός Χαρτών Θεώρημα: Ένα επίπεδο απλός γράφημα G είναι k-χρωματίσιμο (ως προς τις κορυφές), αν και μόνον αν το G* είναι k-χρωματίσιμο ως προς τις περιοχές. Θεώρημα: Ένας χάρτης G είναι 2-χρωματίσιμος αν και μόνον αν είναι Eulerian. Θεώρημα: Ένας κυβικός χάρτης είναι 3-χρωματίσιμος αν και μόνον αν κάθε περιοχή περικλείεται από άρτιο αριθμό ακμών. 17

Χρωματισμός Ακμών χ (C 2n ) = 2 χ (C 2n+1 ) = 3 χ (W n ) = n-1, αν n 4 2 3 1 2 3 4 1 1 5 2 n=6 X =5 Θεώρημα (Vizing 1964): Για κάθε απλό γράφο G ισχύει D(G) χ (G) D(G)+1 Θεώρημα: Για κάθε πλήρη διμερή γράφο ισχύει χ (K m,n ) = D(K m,n ) = max(m,n) 18

Χρωματισμός Ακμών Θεώρημα: Για κάθε πλήρη γράφο ισχύει χ (K n ) = n (n περιττό) = n-1 (n άρτιο) 19

Χρωματικά Πολυώνυμα Ερώτηση: Κατά πόσους διαφορετικούς τρόπους μπορούμε να χρωματίσουμε τις κορυφές ενός γράφου με k χρώματα; Απάντηση: Χρωματικό πολυώνυμο P G (k) (irkhoff 1912) P Nn (k) = k n P (k) = k(k-1) n P Kn (k) = k(k-1) (k-n+1) P G (k) = 0, αν k < χ(g) P G (k) > 0, αν k χ(g) P G (k) > 0, αν G απλός επίπεδος γράφος Ο αριθμός των τρόπων που μπορούν να χρωματιστούν οι κόμβοι ενός G με k χρώματα G P G (k) = k(k-1) 2 20

Χρωματικά Πολυώνυμα Θεώρημα: Έστω γράφος G και δύο μη γειτονικές κορυφές u, w. Τότε ισχύει P G (k)=p G1 (k)+ P G2 (k), όπου G 1 =G+(u,w) και G 2 =G/(u,w). Θεώρημα: Το χρωματικό πολυώνυμο γράφου G με n κόμβους είναι πολυώνυμο ως προς k βαθμού n. Το πολυώνυμο έχει ακέραιους συντελεστές με εναλλασσόμενα πρόσημα, μεγαλύτερο όρο το k n και σταθερό όρο ίσο με 0. Κ 5 + 3Κ 4 + 2Κ 3 K(k-1) 3 21

Προσεγγιστικοί Αλγόριθμοι Χρωματισμού Ο προσδιορισμός του χρωματικού αριθμού είναι NP-πλήρες πρόβλημα. 1 2 1 2 Σειριακός αλγόριθμος (άπληστος): Πολυπλοκότητα Ο(n*m) Τι γίνεται σε διμερή γράφο; 1 2 1 3 22

Προσεγγιστικοί Αλγόριθμοι Χρωματισμού Πρώτα η Μεγαλύτερη (largest first): Ταξινόμηση κορυφών ως προς φθίνοντα βαθμό. Μετά σειριακός. d(v i ) d(v i+1 ) για i=1, 2, 3,..., k-1 Welsh+Powell, 1967: χ(g) max {min (i, d(v i ) + 1)} i 23

Προσεγγιστικοί Αλγόριθμοι Χρωματισμού Τελευταία η Μικρότερη (smallest last): Matula-Marble-Issacson 1972. Για i = n έως 1 με βήμα -1 επανέλαβε: Βρες την κορυφή v i με το min βαθμό. Τοποθετήσετε την v i στην i-στη θέση και διέγραψε αυτή από το γράφημα. Μετά σειριακός. 24

Προσεγγιστικοί Αλγόριθμοι Χρωματισμού Μέθοδος Βαθμού-Χρώματος (color-degree): relaz 1979 Βαθμός (degree) χρώματος κορυφής: αριθμός χρωμάτων που χρησιμοποιήθηκαν σε γειτονικές κορυφές. 1) Κόμβος v με max degree color(v) = 1 2) Μετά max color-degree 1 Max degree 1 2 Color degree 1 επιλέγουμε v με max degree Color degree 2 επιλέγουμε v με max degree 25

Εφαρμογή Αλγορίθμων Χρωματισμού 1) Σειριακή Μέθοδος : 2) Πρώτα η Μεγαλύτερη : 3) Τελευταία η Μικρότερη: 26

Εφαρμογή Αλγορίθμων Χρωματισμού 4) Μέθοδος του Βαθμού Χρώματος Οι 4 αλγόριθμοι χρωματίζουν το γράφημα G με 4, 4, 3, 3 χρώματα, αντίστοιχα. Στο γράφημα G υπάρχει υπογράφημα Κ 3 χ(g) = 3 27

Εφαρμογή Αλγορίθμων Χρωματισμού Ωρολόγιο Πρόγραμμα Ο καθηγητής Χ i (1 i m) διδάσκει το μάθημα Υ j (1 j n) για P ij ώρες/εβδομάδα. Κανείς καθηγητής Χ i δεν διδάσκει περισσότερο από p ώρες/εβδομάδα, αλλά και κανένα μάθημα Υ j δεν διδάσκεται περισσότερο από p ώρες/εβδομάδα. Λύση: Διμερής γράφος K m,n. Η κορυφή Χ i ενώνεται με την κορυφή Υ j με P ij ακμές Χ (K m,n ) = P Χρωματισμός ακμών 28

Το Πρόβλημα του Χρωματισμού Το Πρόβλημα του Χρωματισμού είναι NP-πλήρες 29

Το Πρόβλημα k-coloring k-coloring Δεδομένου ενός γραφήματος G = (V, E), βρες εάν υπάρχει ένας κατάλληλος χρωματισμός του G που χρησιμοποιεί k χρώματα. Σημείωση k-coloring είναι μια συνάρτηση f : V {1, 2,, k} τέτοια ώστε για κάθε ακμή (x, y) του G ισχύει f(x) f(y). Εάν υπάρχει μια τέτοια συνάρτηση f για ένα δεδομένο γράφημα G, τότε το G είναι k-χρωματίσιμο (k-colorable). 30

Το Πρόβλημα k-coloring Ερώτημα? Πώς μπορούμε να ελέγξουμε εάν ένα γράφημα G είναι 2-χρωματίσιμο? Απλώς, έλεγξε εάν το G είναι διμερές (bipartite)! Δυστυχώς, για k 3 το πρόβλημα είναι NP-πλήρες 31

Το Πρόβλημα k-coloring Χειρισμός NP-πληρότητας Ένας τρόπος να χειριστούμε την NP-πληρότητα είναι να περιορίσουμε το πρόβλημα σε υποσύνολα της εισόδου. Θα δείξουμε ότι το k-coloring πρόβλημα σε τυχαία γραφήματα είναι NP-πλήρες ακόμα και για k = 3! 32

Το Πρόβλημα 3-Coloring 3-Coloring Δεδομένου ενός γραφήματος G = (V, E), βρες εάν υπάρχει ένας κατάλληλος χρωματισμός του G που χρησιμοποιεί 3 χρώματα. G 1 - return ΝΑΙ G 2 - return ΟΧΙ Το Πρόβλημα 3-Coloring είναι NP-πλήρες 33

Το Πρόβλημα 3-Coloring και το 3SA Επιλογή ΝP-πλήρους Πρέπει να επιλέξω ένα πρόβλημα από την «δεξαμενή» των NP-πλήρων προβλημάτων για την αναγωγή μου!!! ΝP SA, 3SA, CHam, SP, IS, Clique, P Επιλέγω το 3SA ΝP-πλήρη Αύξουσα Δυσκολία Το Πρόβλημα 3-Coloring είναι NP-πλήρες 34

Το Πρόβλημα 3-Coloring και το 3SA 3SA Δεδομένου ενός λογικού τύπου (oolean formula) σε συζευκτική μορφή με το πολύ 3 μεταβλητές σε κάθε όρο του: βρες μια ικανοποιούσα ανάθεση τιμών αληθείας ή ανάφερε ότι δεν υπάρχει καμία!!! Το Πρόβλημα 3-Coloring είναι NP-πλήρες 35

Το Πρόβλημα 3-Coloring και το 3SA Θα δείξουμε: 3-Coloring NP 3-Coloring NP-hard: 3SA p 3-Coloring Θεώρημα: Το Πρόβλημα 3-Coloring είναι NP-πλήρες 36

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring 3-Coloring NP Πιστοποιητικό: το G με κάθε κόμβο του χρωματισμένο με ένα χρώμα από το σύνολο {1, 2, 3} Πιστοποιητής: έλεγξε εάν για κάθε ακμή (x, y) του G, οι κόμβοι x και y έχουν διαφορετικό χρώμα O έλεγχος του πιστοποιητή απαιτεί O(n 2 ) χρόνο. 37

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring 3-Coloring NP-hard: 3SA p 3-Coloring Αναγωγή: Δεδομένου ενός στιγμιότυπου φ του 3SA, θα κατασκευάσουμε σε πολυωνυμικό χρόνο ένα στιγμιότυπο του 3-Coloring (δηλ. ένα γράφημα G) Ορθότητα Αναγωγής: το γράφημα G είναι 3-χρωματίσημο εάν-ν ο λογικός τύπος φ είναι ικανοποιήσιμος. 38

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring Ξεκινάμε από το πρόβλημα 3SA!!! Έστω φ ένα στιγμιότυπο (oolean formula) του 3SA με k όρους C1, C2,, Ck (clauses) και n μεταβλητές x1, x2,, xn (variables). Κατασκευάζουμε σε πολυωνυμικό χρόνο ένα στιγμιότυπο G του προβλήματος 3-Coloring τέτοιο ώστε: εάν φ 3SA, τότε G 3-Coloring εάν G 3-Coloring, τότε φ 3SA 39

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Για κάθε μεταβλητή x i (x 1, x 2,, x n ) του φ, δημιούργησε 2 κόμβους στο G, ένα για την μεταβλητή x i και ένα για την x i, και ένωσέ τους με ακμή: x i x i Δημιούργησε 3 ειδικούς κόμβους, και και ένωσέ τους μεταξύ του: Τ 40

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Ένωσε κάθε κόμβο-μεταβλητή με τον κόμβο Β: x 1 x 1 x 2 x 2 x n x n Τ 41

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Ιδιότητες Κάθε κόμβος x i και x i παίρνουν διαφορετικό χρώμα Κάθε κόμβος x i και x i παίρνει διαφορετικό χρώμα από τον κόμβο Β Οι κόμβοι Β, και παίρνουν διαφορετικό χρώμα 42

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Ιδιότητες Άρα, κάθε 3-χρωματισμός αυτού του γραφήματος ορίζει μια σωστή (valid) ανάθεση τιμών αληθείας του φ Πώς; Θέσε xi := Τrue εάν-ν ο κόμβος xi έχει χρωματιστεί όπως ο κόμβος (δηλ. xi και έχουν πάρει το ίδιο χρώμα) 43

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1) x1 x1 x2 x2 x3 x3 Τ 44

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1) x1 x1 xi := Τrue εάν-ν ο κόμβος xi έχει το ίδιο χρώμα με τον x2 x2 x3 x3 Τ 45

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1) x1 xi := Τrue εάν-ν ο κόμβος xi έχει το ίδιο χρώμα με τον x2 Τ x3 x1 = alse x2 = alse x3 = rue 46

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1)?????? Αυτή ανάθεση τιμών αληθείας του φ είναι σωστή (valid)!!! Ερώτηση!...είναι ικανοποιούσα? x1 = alse x2 = alse x3 = rue 47

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1)?????? alse Ερώτηση!...είναι ικανοποιούσα? x1 = alse x2 = alse x3 = rue 48

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1)?????? φ = alse Ερώτηση!...είναι ικανοποιούσα? x1 = alse x2 = alse x3 = rue 49

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Παράδειγμα: φ = (x1 x2 x3) ( x2 x3 x1) Όμως, υπάρχει ικανοποιούσα aνάθεση τιμών αληθείας του λογικού τύπου φ Ερώτηση!...είναι ικανοποιούσα??????? x1 = rue x2 = alse x3 = rue x1 = alse x2 = alse x3 = rue 50

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Θα πρέπει η ανάθεση τιμών στις μεταβλητές x1, x2,, xn να εξασφαλίζει την ικανοποίηση κάθε όρου C1, C2,, Ck του φ Πώς; G Για κάθε όρο Ci = (a b c) του φ, δημιούργησε ένα gadget γράφημα που ενώνει τους κόμβους xp, xq και xr του G που αντιστοιχούν στις μεταβλητές a, b και c και υλοποιεί το ΟR! 51

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a (a b) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } b (a b c) c Κόμβος εξόδου 52

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a (a b) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } b (a b c) c Κόμβος εξόδου 53

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a b (a b) (a b c) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } c Κόμβος εξόδου 54

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a b (a b) (a b c) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } c Κόμβος εξόδου 55

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a (a b) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } b (a b c) c Κόμβος εξόδου 56

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a b (a b) (a b c) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } c Κόμβος εξόδου 57

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G C i = (a b c) o gadget γράφημα ή OR-γράφημα a b (a b) (a b c) Εκφράζουμε το OR των μεταβλητών του με τη χρήση 3 χρωμάτων {,, } c Κόμβος εξόδου 58

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα Ιδιότητες 1) Εάν όλες οι μεταβλητές a, b, c πάρουν το χρώμα, τότε η έξοδος του OR-γραφήματος χρωματίζεται με. 59

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα Ιδιότητες 2) Εάν μία τουλάχιστον από τις a, b, c πάρει το χρώμα, τότε ΥΠΑΡΧΕΙ ένας σωστός 3-χρωματισμός του OR-γραφήματος με τον κόμβο εξόδου να έχει χρώμα Τ. 60

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b (a b c) Τ c 61

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b c Τι θα συμβεί εάν κάθε μεταβλητή από τις (a b c) a, b και c πάρει τιμή alse Τ 62

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b (a b c) Τ c 63

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b (a b c) Τ c 64

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b (a b c) Τ c 65

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b c (a b c)? Τ 66

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G o gadget γράφημα ή OR-γράφημα a b c Εάν όλες οι a, b και c πάρουν τιμή (a b c) alse Τότε τo ΟR-Γράφημα ΔΕΝ? χρωματίζεται με 3 χρώματα Τ 67

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Κατασκευή του G Για κάθε όρο Ci = (xp xq xr) = (a b c) του φ, ένωσε με ακμές τους κόμβους xp, xq, xr του γραφήματος G με τους κόμβους a, b, c, αντίστοιχα, του OR-γραφήματος G OR-γράφημα 68

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) Το γράφημα G 69

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Ορθότητα Αναγωγής (i) φ ικανοποιήσιμος G είναι 3-χρωματίσιμο Εάν x i = rue, τότε χρωμάτισε τον κόμβο x i του G με χρώμα και τον κόμβο x i με χρώμα. Εάν x i = alse, τότε κάνε το αντίθετο. Σε κάθε όρο C i = (a b c) του φ, τουλάχιστο μία μεταβλητή από τις a, b και c έχει τιμή rue. Επομένως το OR-γράφημα που αντιστοιχεί στον C i μπορεί να χρωματιστεί με 3 χρώματα. Άρα, το γράφημα G χρωματίζεται με 3 χρώματα. 70

Το Πρόβλημα 3-Coloring είναι NP-πλήρες 3SA 3-Coloring - Ορθότητα Αναγωγής (ii) G είναι 3-χρωματίσιμο φ ικανοποιήσιμος Εάν ο κόμβος x i έχει το ίδιο χρώμα με τον κόμβο, τότε x i := rue, άλλως x i := alse (αυτή είναι μια σωστή ανάθεση τιμών). Έστω C i = (a b c) ένας όρος του φ. Τουλάχιστο μία μεταβλητή από τις a, b και c έχει τιμή rue, γιατί εάν όλες είχαν τιμή alse τότε το G δεν θα μπορούσε να χρωματιστεί με 3 χρώματα (όπως δείξαμε πριν). Άρα, φ ικανοποιήσιμος. 71

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) Δείχνουμε πως μπορούμε χρησιμοποιώντας το πρόβλημα 3-Coloring να λύσουμε το πρόβλημα 3SA Δείξαμε ότι 3SA 3-Coloring Εάν είχαμε ένα πολυωνυμικό αλγόριθμο για το πρόβλημα 3-Coloring θα μπορούσαμε να λύσουμε το πρόβλημα 3SA σε πολυωνυμικό χρόνο. 72

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 73

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 74

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 75

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 76

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 77

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 78

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 79

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 80

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 Β x 3 81

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 Β x 3 82

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 Β x 3 83

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 Β x 3 84

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 1 x 2 x 2 x 3 x 3 85

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 2 x 3 86

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) x 1 x 2 x 1 = rue x 2 = alse x 3 = alse x 3 87

Το Πρόβλημα 3-Coloring είναι NP-πλήρες Παράδειγμα: φ = (x 1 x 2 x 3 ) ( x 2 x 3 x 1 ) rue rue Ανάθεση τιμών αληθείας του λογικού τύπου φ x 1 = rue x 2 = alse x 3 = alse φ = rue 88

Τέλος Το 3-SA είναι ένα από τα 21 NP-πλήρη προβλήματα του Karp, και χρησιμοποιείται ως πρόβλημα αναφοράς για την απόδειξη της NP-πληρότητας άλλων προβλημάτων. Αυτό γίνεται μέσω πολυωνυμικού-χρόνου αναγωγής από το 3-SA σε άλλα προβλήματα. Ένα παράδειγμα είναι το clique πρόβλημα: Δεδομένου ενός στιγμιότυπου (oolean formula) φ του 3SA με k όρους C 1, C 2,, C k (clauses) και n μεταβλητές x 1, x 2,, x n (variables), το αντίστοιχο γράφημα αποτελείται από ένα κόμβο για κάθε μεταβλητή και μια ακμή μεταξύ δύο μηαντιφατικών μεταβλητών από διαφορετικούς τύπους (βλέπε Σχήμα). Το γράφημα έχει μία k-clique εάν-ν ο λογικός τύπος είναι ικανοποιήσιμος.

Τέλος Ευχαριστώ για την Προσοχή σας!!!