Ελληνικό Ανοικτό Πανεπιστήµιο Σπουδές στην Πληροφορική Φαινόµενα πολυπλοκότητας στα Μαθηµατικά και στη Φυσική: ύο όψεις του ίδιου νοµίσµατος; Γιάννης Κ. Σταµατίου ΣΕΠ ΠΛΗ 10 Πάτρα, Ιουνιος 2003
οµή και στόχος της παρουσίασης Πολυπλοκότητα προβληµάτων: SAT, 3-SAT Κατωφλικά φαινόµενα στα Μαθηµατικά: 3-SAT Κατωφλικά φαινόµενα στη Φυσική: µαγνήτες και spin glasses Συσχέτιση µεταξύ των κατωφλικών φαινοµένων στα Μαθηµατικά και τη Φυσική εµφάνιση «δυσκολιών» στην περιοχή «αλλαγής φάσης» Στόχος µας είναι η ανάδειξη µιας βαθύτερης έννοιας πολυπλοκότητας που διέπει και τα δύο είδη κατωφλικών φαινοµένων τι είναι αυτό που καθιστά δύσκολο υπολογιστικά ένα «αντικείµενο» (Μαθηµατικο ή Φυσικό)
Η µηχανή Turing: το µαθηµατικό µοντέλο του Η/Υ! K # 0 1 0 1 K A L A N (q 1,0) (q 2,1, ) q 0 q 1 M q n T U R I N G Μία άπειρα εκτεινόµενη ταινία χωρισµένη σε κελιά Κάθε κελί αποθηκεύει ένα σύµβολο, συνήθως δυαδικό ψηφίο (0 ή 1) ή το κενό (#) Μία κεφαλή που διαβάζει το περιεχόµενο ενός κελιού κίνηση δεξιά/αριστερά Μηχανισµός «λήψης αποφάσεων»
Υπολογίζοντας µε µία µηχανή Turing! Το παρακάτω «πρόγραµµα» υπολογίζει τη διαφορά µεταξύ δύο θετικών ακεραίων m και n (µόνο εάν m > n, αλλιώς επιστρέφει το 0) που δίνονται στην µορφή 0 m 10 n στην ταινία της µηχανής Turing (µήπως το «πρόγραµµα» σας θυµίζει λίγο Assembly;): q 0 q 1 q 2 q 3 q 4 q 5 q 6 0 (q 1,#, ) (q 1,0, ) (q 3,1,Α) (q 3,0,Α) (q 4,0,Α) (q 5,#, ) - (σταµατά) 1 (q 5,#, ) (q 2,1, ) (q 2,1, ) (q 3,1,Α) (q 4,#,Α) (q 5,#, ) - (σταµατά) # - (q 4,#,Α) (q 0,#, ) (q 6,0, ) (q 6,#, ) - (κρεµά) (σταµατά)
Υπολογιστικοί πόροι µιας µηχανής Turing Μνήµη (αριθµός κελιών) Χρόνος (αριθµός κινήσεων της κεφαλής) Συναρτήσεις πολυπλοκότητας χώρου και χρόνου µε βάση το µέγεθος, n, της εισόδου: t(n) s(n) Θέλουµε να µην υπάρχει εκρηκτική αύξηση του χώρου ή του χρόνου καθώς δίνουµε όλο και µεγαλύτερα στιγµιότυπα στη µηχανή Turing Οι συναρτήσεις που αποφεύγουν την εκρηκτική αύξηση είναι οι πολυωνυµικές
Προσέξτε πώς οι συναρτήσεις πολυπλοκότητας που φράσσονται από κάποιο πολυώνυµο παρουσιάζουν µικρό ρυθµό αύξησης όσο το µέγεθος των στιγµιοτύπων αυξάνει!
ύο σηµαντικές κλάσεις πολυπλοκότητας P: Προβλήµατα για τα οποία υπάρχει µηχανή Turing πολυωνυµικής συνάρτησης χρόνου που τα επιλύει NP: Προβλήµατα για τα οποία δεν έχει βρεθεί ακόµη µηχανή Turing πολυωνυµικής συνάρτησης χρόνου (και πιθανότατα δεν θα βρεθεί!) αλλά υπάρχει τέτοια µηχανή που τουλάχιστον επαληθεύει µια λύση εάν αυτή δοθεί (δείτε και πιο κάτω!)
SAT: η «δροσόφιλα» της Θεωρίας Πολυπλοκότητας! φ= (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) Είναι ικανοποιήσιµος ο λογικός τύπος φ; Αρκεί να θέσουµε, π.χ., x 1 = 1 και x 2 = x 3 = 0 Τι συµβαίνει εάν προσθέσουµε µερικές ακόµη διαζεύξεις; φ = (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) (x 1 x 2 ) (x 2 x 3 ) (x 3 x 1 ) φ = εν πρέπει να έχουν την ίδια τιµή οι 3 µεταβλητές και όλες οι µεταβλητές πρέπει να έχουν την ίδια τιµή!
Το να επαληθεύσουµε (µε µια µηχανή Turing ή, ισοδύναµα, αλγόριθµο) εάν µία δοθείσα ανάθεση τιµών αληθείας ικανοποιεί ένα λογικό τύπο είναι πολύ εύκολο! Η κλάση προβληµάτων NP! Το να ανακαλύψουµε, όµως, µία τέτοια ανάθεση τιµών αληθείας φαίνεται πολύ δύσκολο για µία πλειάδα προβληµάτων σαν το SAT! Τα προβλήµατα αυτά, µε πρώτο το «αρχέγονο» SAT (Cook 1971) είναι οι αντιπρόσωποι της κλάσης NP: όλα τα προβλήµατα της κλάσης αυτής ανάγονται γρήγορα στα δύσκολα αυτά προβλήµατα! Η κλάση προβληµάτων NP-πλήρη πλήρη!
Θα ασχοληθούµε µε λογικούς τύπους k-sat όπου ένας τέτοιος λογικός τύπος φ χαρακτηρίζεται από τα εξής: Αριθµός µεταβλητών: n Αριθµός στοιχείων (µεταβλητή ή το συµπλήρωµά της, τα literals) ανά πρόταση: k Αριθµό προτάσεων(clauses): m Το λόγο αριθµού προτάσεων προς αριθµό µεταβλητών: r = m/n
Σχηµατίζουµε τις m προτάσεις που αποτελούν τις συζεύξεις του φ µε το να επιλέξουµε οµοιόµορφα και ανεξάρτητα, k διαφορετικές µεταβλητές για κάθε πρόταση και να αποφασίσουµε, τυχαία, το πρόσηµό της k n 2 Μέσα από τις δυνατές προτάσεις των k k στοιχείων, επιλέγουµε οµοιόµορφα, ανεξάρτητα και µε επαναλήψεις m προτάσεις Κάθε µία από τις m προτάσεις εµφανίζεται ανεξάρτητα από τις υπόλοιπες µε πιθανότητα 1 k 2 n k
ΙΑΙΣΘΗΣΗ: το r ρυθµίζει τη συµπεριφορά των λογικών τύπων: Όσο το r µεγαλώνει, ένας λογικός τύπος γίνεται όλο και πιο «περιοριστικός» µε αποτέλεσµα να µπορεί να αποδειχθεί εύκολα ότι είναι µη ικανοποιήσιµος Όσο το r µικραίνει, οι προτάσεις που αποτελούν το λογικό τύπο γίνονται όλο και περισσότερο «ανεξάρτητες» µε αποτέλεσµα να µπορούµε να αποδείξουµε πάλι µάλλον εύκολα ότι ο λογικός τύπος είναι ικανοποιήσιµος Έχει παρατηρηθεί, ότι κάπου ενδιάµεσα στις «µεγάλες» και «µικρές» τιµές του r, όπου ο αριθµός των µη ικανοποιήσιµων λογικών τύπων είναι ίσος µε τον αριθµό των ικανοποιήσιµων, η δυσκολία επίλυσης ενός στιγµιοτύπου αυξάνει πολύ
ΠΕΙΡΑΜΑΤΙΚΟ Ε ΟΜΕΝΟ: Όταν το r βρίσκεται κοντά στο 4.2, παρατηρείται η µεγαλύτερη δυσκολία στην επίλυση τυχαίων στιγµιοτύπων του 3-SAT [Cheeseman et al 91, Mitchell et al 92, καθώς και άλλοι] ΕΠΙΣΗΣ: Όταν το r βρίσκεται κοντά στο 4.2, η πιθανότητα να είναι ικανοποιήσιµο ένα τυχαίο στιγµιότυπο του 3-SAT είναι κοντά στο 0.5, τείνει στο 1 όταν το r τείνει στο 0 και τείνει στο 0 όταν το r τείνει στο «άπειρο» (zero-one law) [Mitchell et al 92, Kirkpatrick and Selman 94]
υσκολία επίλυσης (# αναδρ. κλήσεων DP) Ποσοστό ικανοποιήσιµων λογικών τύπων 1 1 2 3 4 * 5 6 7 8 Λόγος λογικών προτάσεων προς µεταβλητές r = m/n
Μαγνήτες! Το µοντέλο Ising. Σωµατίδια µε spin είτε +1 ( ) είτε 1 ( ) ιαντίδραση µόνο µε 4 άµεσους γειτόνους Τάση «συµφωνίας» J ή «διαφωνίας» J Ενέργεια: E = J < i, j> S i S j J > 0 χαµηλότερη ενέργεια όταν όλα τα spins συµφωνούν! (σιδηροµαγνητικό υλικό µαγνήτης) J < 0 χαµηλότερη ενέργεια όταν όλα τα spins διαφωνούν! (παρασιδηροµαγνητικό υλικό όχι µαγνήτης)
Η περίπτωση J > 0 T >> 0: Σωµατίδια σε αταξία ταλάντωση των τιµών spin T > 0: Η επίδραση J αρχίζει να κυριαρχεί T : Το εξωτερικό πεδίο έχει µέγιστη επίδραση T ± = T c = 0 + : Το εξωτερικό πεδίο δεν επιδρά, ξανά, στη διεύθυνση των spins λόγω της δράσης του J χ Συνεισφορά, ως συνάρτηση της θερµοκρασίας H: δράση εξωτερικού µαγνητικού πεδίου H = 0 H 0 T c T Θερµοκρασία Curie
... και τα spin glasses Αραιά κράµατα (dilute alloys) µαγνητικού υλικού (π.χ. Mn) σε µη µαγνητικό υλικό (π.χ. Cu) ανοµοιογενή και µη κανονικά υλικά (όπως, π.χ., είναι οι κρύσταλλοι) Καθώς T 0, δεν παρατηρούνται µαγνητικές ιδιότητες Η συνεισφορά (susceptibility) στο T = T c σχηµατίζει «γωνία» και δεν απειρίζεται για µηδενικό εξωτερικό πεδίο
Τα σωµατίδια του µαγνητικού υλικού βρίσκονται διάρπαρτα σε τυχαία µεταξύ τους απόσταση και σε µη κανονική διάταξη Η συνέπεια αυτού είναι µεταξύ των ζευγών των σωµατιδίων να αντιστοιχούν τυχαία είτε τάσεις συµφωνίας ή διαφωνίας και µάλιστα µε διαφορετικές εντάσεις (τυχαία καθορισµένες) Ο προσδιορισµός της κατάστασης ελάχιστης ενέργειας δεν είναι εύκολη υπόθεση πια... Μοντέλο spin glass E = < i, j> J i,j Spin Glass Αντισιδηροµαγνητικός δεσµός: Σιδηροµαγνητικός δεσµός: Αναποφάσιστο! S i S j
Λογικοί τύποι και spin glasses! φ = (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) T = {x 1 =1,, x n =0} S = {S 1 = +1,, S n =-1} (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) = +1-1 +1-1 +1-1 # λογικών προτάσεων που δεν ικανοποιούνται µε την T i=1..m l,i2 = k, l = 1,..., m E[,S] = l=1..m δ( l=1..n l,i S i,-k) φ ικανοποιήσιµη Το spin glass έχει ενέργεια 0 Ελαχιστοποίησε # λογικών προτάσεων που δεν ικανοποιούνται Ελαχιστοποίησε την ενέργεια E[,S]
Υπολογιστική δυσκολία και τα αίτιά της 3-SAT ή εύρεση σχηµατισµού ελάχιστης ενέργειας: NP-Πλήρη προβλήµατα! Υπολογιστικά δύσκολα! Η θεωρία πολυπλοκότητας δε µας βοηθά, όµως, να ξεχωρίσουµε το λογικό τύπο από τον φ= (x 1 x 2 x 3 ) (x 1 x 2 x 3 ) (x 1 x 2 x 3 ) (x 1 x 2 x 4 ) (x 1 x 2 x 4 ) φ= (x 1 x 2 x 3 ) (x 1 x 2 x 4 ) (x 1 x 2 x 3 ) ( x 1 x 3 x 4 ) (x 2 x 3 x 4 )
Φαίνεται ότι υπάρχει συσχέτιση µεταξύ του πόσο κανονικό είναι ένα στιγµιότυπο και το πόσο δύσκολο είναι αυτό να επιλυθεί! Θεωρία πολυπλοκότητας στιγµιοτύπων instance complexity (π.χ. στιγµιότυπα για quicksort σχεδόν ταξινοµηµένα) Kolmogorov complexity (KC(x)) 10101010101010 vs. 10101111001101 Θεωρία πολυπλοκότητας µέσης τιµής average case complexity (τι είδους στιγµιότυπα «ευνοούνται» από την κατανοµή Universal distribution: Pr[x] ανάλογη του 1 ). KC ( x) 2 υσκολία επίλυσης = τυχαία µορφή;
Συµπεράσµατα Φαίνεται να υπάρχει µία παγκόσµια έννοια της «πολυπλοκότητας» µε διαφορετικές εµφανίσεις (δυσκολία επίλυσης διαφορά σε φυσικές παραµέτρους) σε διαφορετικούς «κόσµους» (λογικοί τύποι συστήµατα spin glass) Εξήγηση της πολυπλοκότητας βασισµένη σε ιδιότητες των στιγµιοτύπων πώς µοιάζουν αυτά; πόσο εύκολα περιγράφονται; είναι «τυχαία» ή παράγονται µε πόλωση; Όλα τα φαινόµενα «πολύπλοκης» συµπεριφοράς δεν είναι παρά δύο όψεις του ίδιου νοµίσµατος!
ΣΑΣ ΕΥΧΑΡΙΣΤΩ!