Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Πιθανοκρατικοί Αλγόριθμοι

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Πιθανοκρατικοί Αλγόριθμοι"— Μεταγράφημα παρουσίασης:

1 Πιθανοκρατικοί Αλγόριθμοι
Ειδικά Θέματα Υπολογισμού και Πολυπλοκότητας Σπυριδούλα Γραβάνη 31/05/2012

2 Τι είναι πιθανοκρατικός αλγόριθμος; (1)
Input Algorithm Output Random numbers

3 Τι είναι πιθανοκρατικός αλγόριθμος; (2)
Χρησιμοποιεί το αποτέλεσμα μιας τυχαίας διεργασίας σε κάποια υπολογιστικά βήματα. Η έξοδος αποτελεί μια τυχαία μεταβλητή, δηλαδή μπορεί να διαφέρει σε διαφορετικές εκτελέσεις του αλγορίθμου πάνω στην ίδια είσοδο.

4 Γιατί; (1) Ντετερμινιστικοί αλγόριθμοι για την επίλυση ενός προβλήματος βρίσκουν τη βέλτιστη λύση σε απαγορευτικά μεγάλο χρόνο. Προσεγγιστικοί αλγόριθμοι τερματίζουν σε μικρότερο χρόνο αλλά βρίσκουν υποβέλτιστη λύση.

5 Γιατί; (2) Οι πιθανοκρατικοί αλγόριθμοι είναι αλγόριθμοι που τερματίζουν σε μικρό χρόνο με μεγάλη πιθανότητα. Βρίσκουν τη βέλτιστη λύση με μεγάλη πιθανότητα. Συνήθως είναι απλοί και εύκολοι στην υλοποίηση τους.

6 Προσοχή: Δεν πρέπει να συγχέονται με την πιθανοτική ανάλυση του μέσου χρόνου εκτέλεσης ενός ντετερμινιστικού αλγόριθμου. Στην περίπτωση αυτή η είσοδος προέρχεται από πιθανοτική κατανομή. Στόχος είναι ο υπολογισμός του αναμενόμενου χρόνου εκτέλεσης.

7 Τύποι πιθανοκρατικών αλγορίθμων
Monte Carlo: Τερματίζει σε ντετερμινιστικό (πολυωνυμικό) χρόνο, πιθανώς με λανθασμένη έξοδο. Las Vegas: Παράγει πάντοτε τη σωστή έξοδο. Ο χρόνος τερματισμού του ωστόσο αποτελεί μια τυχαία μεταβλητή με φραγμένη αναμενόμενη τιμή.

8 Παράδειγμα: Τυχαίος Περίπατος (1)
Θεωρούμε τον εξής πιθανοκρατικό αλγόριθμο για το πρόβλημα SAT: “Ξεκίνα με οποιαδήποτε τιμοδοσία Τ και επανέλαβε τα επόμενα r φορές: Αν επαληθεύονται όλες οι προτάσεις, τότε απάντησε: “ ο τύπος είναι αληθεύσιμος” και σταμάτα. Αλλιώς, σε μια πρόταση που δεν επαληθεύεται, διάλεξε τυχαία μια από τις μεταβλητές τις και δώσε την αντίθετη τιμοδοσία σε αυτή. Μετά από r φορές τερμάτισε , απαντώντας: “ ο τύπος δεν ικανοποιείται με μεγάλη πιθανότητα”. ”

9 Παράδειγμα: Τυχαίος Περίπατος (2)
Θεωρούμε το πρόβλημα: 2-SAT = { <φ> | ο φ είναι ένας αληθεύσιμος τύπος σε 2CNF } Θεώρημα: Αν εφαρμόσουμε τον Τυχαίο Περίπατο για βήματα σε οποιοδήποτε αληθές στιγμιότυπο του 2-SAT με n μεταβλητές, τότε με πιθανότητα τουλάχιστον ίση με ½ θα προκύψει αληθής τιμοδοσία.

10 Μειονεκτήματα Υπάρχει πεπερασμένη πιθανότητα λάθους. Αυτή η πιθανότητα ωστόσο , μπορεί να γίνει αυθαίρετα μικρή με επαναληπτική εκτέλεση της τυχαιότητας. Δεν υπάρχει πραγματική τυχαιότητα αριθμών. Οι αλγόριθμοι χρησιμοποιούν ψευδοτυχαίους αριθμούς , γι’αυτό και η έξοδός τους εξαρτάται από την ποιότητα της γεννήτριας. Η ανάλυση του χρόνου εκτέλεσης, καθώς και της πιθανότητας σωστής εξόδου μπορεί να είναι δύσκολη.

11 Πιθανοκρατικές Κλάσεις Πολυπλοκότητας

12 Πιθανοκρατική Μηχανή Turing (1)
Σε κάθε κλάδο b του υπολογισμού της για είσοδο w αποδίδουμε πιθανότητα: όπου k: το πλήθος των κερματοριπτικών βημάτων κατά μήκος του b. Πιθανότητα αποδοχής της w από τη μηχανή:

13 Πιθανοκρατική Μηχανή Turing (2)
Πιθανότητα απόρριψης της w από τη μηχανή: Για , η μηχανή διαγιγνώσκει τη γλώσσα L με πιθανότητα σφάλματος ε όταν ισχύουν οι εξής συνθήκες: Δηλαδή η πιθανότητα λάθους κατά την προσομοίωση της μηχανής δεν πρέπει να υπερβαίνει την ποσότητα ε.

14 Κλάση RP (Randomized Polynomial Time)
Μια γλώσσα L ανήκει στην RP αν και μόνο αν υπάρχει πολυωνυμικού χρόνου πιθανοκρατική μηχανή Turing Μ τέτοια ώστε για κάθε να ισχύουν τα εξής: Ένας RP αλγόριθμος είναι Monte Carlo. Λάθος έξοδος μπορεί να προκύψει μόνο αν Η πιθανότητα λάθους μπορεί να γίνει εκθετικά μικρή εκτελώντας ανεξάρτητες επαναλήψεις του αλγορίθμου.

15 Κλάση coRP Συμπληρωματική κλάση της RP
Μια γλώσσα L ανήκει στην coRP αν και μόνο αν υπάρχει πολυωνυμικού χρόνου πιθανοκρατική μηχανή Turing Μ τέτοια ώστε για κάθε να ισχύουν τα εξής: Ένας coRP αλγόριθμος είναι Monte Carlo. Λάθος έξοδος μπορεί να προκύψει μόνο αν

16 Κλάση ZPP (Zero Error Probabilistic Polynomial Time)
Μια γλώσσα L ανήκει στην κλάση ZPP αν και μόνο αν: Ένα πρόβλημα που ανήκει στην κλάση ZPP έχει αλγόριθμο που δεν κάνει ποτέ λάθος, δηλαδή έναν αλγόριθμο Las Vegas.

17 Κλάση PP (Probabilistic Polynomial Time)
Μια γλώσσα L ανήκει στην PP αν και μόνο αν υπάρχει πολυωνυμικού χρόνου πιθανοκρατική μηχανή Turing Μ τέτοια ώστε για κάθε να ισχύει το εξής: Μια τέτοια μηχανή Μ αποφασίζει την L “βάσει πλειοψηφίας” .

18 Κλάση BPP (Bounded-Probability Polynomial Time)
Μια γλώσσα L ανήκει στην BPP αν και μόνο αν υπάρχει πολυωνυμικού χρόνου πιθανοκρατική μηχανή Turing Μ τέτοια ώστε για κάθε να ίσχουν τα εξής: Μια τέτοια μηχανή Μ αποδέχεται “βάσει καθαρής πλειοψηφίας” ή απορρίπτει “βάσει καθαρής μειοψηφίας”.

19 Εγκλεισμοί Κλάσεων (1) Οι βασικοί εγκλεισμοί είναι:
Ο δεύτερος ισχύει καθώς μια μηχανή που αποφασίζει με “καθαρή” πλειοψηφία, σίγουρα αποφασίζει και με “απλή”. Πιο αυστηρά , από τους ορισμούς, η BPP έχει πιθανότητα λάθους μικρότερη από 0.25 ενώ η PP επιτρέπει πιθανότητα λάθους αυθαίρετα κοντά στο 0.5.

20 Εγκλεισμοί Κλάσεων (2) Για τον πρώτο εγκλεισμό, σκεφτόμαστε ως εξής: Έστω Ορίζουμε μια πιθανοκρατική μηχανή M’ ως εξής: “ Για είσοδο x εξομοίωσε την M(x) δύο φορές. Αποδέξου αν και μόνο αν μια από τις δύο εξομοιώσεις κατέληξε σε κατάσταση αποδοχής, διαφορετικά απόρριψε.”

21 Εγκλεισμοί Κλάσεων (3) Αν τότε η Μ(x) δε θα αποδεχθεί, συνεπώς δε θα αποδεχθεί ούτε η M’(x) Αν τότε εξ’ ορισμού: συνεπώς: Συνεπώς:

22 Εγκλεισμοί Κλάσεων (4) Ένας τελευταίος εγκλεισμός είναι ο εξής:
Έστω μια γλώσσα L στo NP η οποία διαγιγνώσκεται από μια μη ντετερμινιστική μηχανή Ν. Ορίζουμε μια νέα μηχανή N’ , πανομοιότυπη με την Ν εκτός από μια νέα αρχική κατάσταση και μια μη ντετερμινιστική επιλογή από αυτή. Η μια πιθανή κίνηση οδηγεί στον αρχικό υπολογισμό της N πάνω στην ίδια είσοδο. Η δεύτερη επιλογή πάντα σε κατάσταση αποδοχής.

23 Εγκλεισμοί Κλάσεων (5) Έστω μια λέξη x. Αν η Ν με είσοδο x χρειάζεται p(|x|) βήματα και παράγει μονοπάτια υπολογισμού, τότε η N’ παράγει μονοπάτια. Από αυτά τουλάχιστον τα μισά θα τερματίσουν σε κατάσταση αποδοχής (αυτά που ανταποκρίνονται στα μισά μονοπάτια αποδοχής της N’). Έτσι, η πλειοψηφία των υπολογισμών της N’ αποδέχεται αν και μόνο αν υπάρχει τουλάχιστον ένα μονοπάτι υπολογισμού της N(x) που καταλήγει σε αποδοχή, δηλαδή αν και μόνο αν Συνεπώς η Ν’ αποδέχεται την L με πλειοψηφία και

24 Συμπεράσματα Η εισαγωγή τυχαιότητας οδηγεί σε απλότητα και αποτελεσματικότητα κατά τη λύση ενός προβλήματος. Προϋποθέτει την ύπαρξη μιας αμερόληπτης γεννήτριας ανεξάρτητων τυχαίων αριθμών. Η πρόσβαση σε τέτοιες ακολουθίες αριθμών είναι ακριβή, γι’αυτό πρέπει να χρησιμοποιείται με φειδώ όπως ο χώρος και ο χρόνος. Υπάρχουν τρόποι να μειωθεί η τυχαιότητα από τους αλγόριθμους, διατηρώντας την αποδοτικότητα σχεδόν σταθερή.

25 Ανοιχτά Ζητήματα Η σχέση μεταξύ των κλάσεων BPP και NP παραμένει άγνωστη. Αν , τότε: Ένας τέτοιος εγκλεισμός μοιάζει απίθανος , καθώς θα σήμαινε πως υπάρχουν πρακτικές λύσεις για NP-Πλήρη προβλήματα. Γνωρίζουμε πως το RP είναι υποσύνολο του BPP και το BPP είναι υποσύνολο του PP , αλλά δεν γνωρίζουμε αν είναι γνήσια υποσύνολα.

26 Απορίες

27 Ευχαριστώ!


Κατέβασμα ppt "Πιθανοκρατικοί Αλγόριθμοι"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google