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

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

Νοήμονες Πράκτορες.

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


Παρουσίαση με θέμα: "Νοήμονες Πράκτορες."— Μεταγράφημα παρουσίασης:

1 Νοήμονες Πράκτορες

2 Τι είναι πράκτορας; Οποιαδήποτε οντότητα λειτουργεί μέσα σε ένα περιβάλλον, το οποίο αντιλαμβάνεται μέσω αισθητήρων και επιδρά πάνω του μέσω μηχανισμών δράσης. Άνθρωπος Ρομπότ Πράκτορας λογισμικού ...αλλά και μη ευφυή πράγματα όπως.... οι θερμοστάτες!

3 Ένας ορισμός εργασίας Ένας ορισμός εργασίας (Wooldridge & Jennings 1995): Πράκτορας είναι ένα υπολογιστικό σύστημα (ΥΣ) που βρίσκεται μέσα σε κάποιο περιβάλλον και είναι ικανό για αυτόνομη δράση μέσα σε αυτό το περιβάλλον ώστε να εκπληρώσει τους στόχους για τους οποίους σχεδιάστηκε. Ανάλογα με τον τομέα εφαρμογής διαφορετικά χαρακτηριστικά θεωρούνται σημαντικά για να χαρακτηρίζεται ένα πρόγραμμα λογισμικού πράκτορας. Αντιδραστικότητα (ορθολογισμός): οι νοήμονες πράκτορες μπορούν να αντιλαμβάνονται το περιβάλλον τους και να απαντούν με τον καλύτερο δυνατό τρόπο, εντός λογικού χρόνου σε αλλαγές που συμβαίνουν σε αυτό, με σκοπό να εκπληρώσουν τους στόχους τους. Ενεργητικότητα (αυτονομία): οι νοήμονες πράκτορες μπορούν να πάρουν πρωτοβουλίες και να ενεργήσουν προς την εκπλήρωση των στόχων τους. Κοινωνικότητα: οι νοήμονες πράκτορες μπορούν να αλληλεπιδρούν με άλλους πράκτορες (και ανθρώπους) για να εκπληρώσουν τους στόχους τους. Αυτή η αλληλεπίδραση δεν περιορίζεται μόνο στην ανταλλαγή δεδομένων αλλά έχει χαρακτηριστικά που την κάνουν να μοιάζει με ανθρώπινη αλληλεπίδραση π.χ. για την σύναψη συμφωνιών, τη δημιουργία συνεργασιών, το συντονισμό ενεργειών με άλλους πράκτορες.

4 Πράκτορες και αντικείμενα
Δεν είναι ‘πράκτορας’ απλώς ένα όνομα για ένα αντικείμενο (object); Αντικείμενο: Περιέχει μια κατάσταση (state) Επικοινωνεί με ανταλλαγή μηνυμάτων (message passing) Έχει μεθόδους, οι οποίες αντιστοιχούν στις λειτουργίες που μπορούν να εφαρμοστούν στην κατάσταση του

5 Πράκτορες και αντικείμενα
Βασικές διαφορές Οι πράκτορες είναι αυτόνομοι Αποφασίζουν μόνοι τους αν θα εκτελέσουν μία πράξη που τους ζητήθηκε από κάποιο άλλο πράκτορα. Οι πράκτορες είναι ευφυείς Μπορούν να αντιδρούν στις αλλαγές του περιβάλλοντος τους, να παίρνουν πρωτοβουλίες, να είναι κοινωνικοί. Τέτοια είδη συμπεριφοράς δεν υπάρχουν στο βασικό μοντέλο των αντικειμένων. Οι πράκτορες είναι δραστήριοι (active) Κάθε πράκτορας έχει τουλάχιστον ένα νήμα δραστηριότητας.

6 Τα αντικείμενα κάνουν μία πράξη δωρεάν...
Οι πράκτορες κάνουν μία πράξη γιατί το θέλουν Οι πράκτορες κάνουν μία πράξη για λεφτά...

7 Πράκτορες και έμπειρα συστήματα
Δεν είναι ‘πράκτορας’ απλώς ένα όνομα για ένα έμπειρο σύστημα (expert system); Τα έμπειρα συστήματα περιέχουν γνώση για κάποια περιοχή (πχ αρρώστιες αίματος) Παράδειγμα: το έμπειρο σύστημα MYCIN Περιέχει γνώση για αρρώστιες του αίματος σε μορφή κανόνων. Μπορεί να παρέχει εξειδικευμένες συμβουλές σε ένα γιατρό για αρρώστιες του αίματος, λαμβάνοντας από τον γιατρό γεγονότα (συμπτώματα) σχετικά με μία τέτοια αρρώστια.

8 Πράκτορες και έμπειρα συστήματα
Βασικές διαφορές Οι πράκτορες λειτουργούν σε ένα περιβάλλον Το MYCIN δεν γνωρίζει τίποτα για τον κόσμο --- μόνο τις πληροφορίες (συμπτώματα) που του παρέχει ένας χρήστης Οι πράκτορες πράττουν Το MYCIN δεν εφαρμόζει τις συμβουλές του στους ασθενείς Μερικά έμπειρα συστήματα πραγματικού χρόνου (real-time expert systems), όπως π.χ. το σύστημα ARCHON, λειτουργούν όπως οι πράκτορες.

9 Αφηρημένη άποψη πράκτορα/περιβάλλοντος
Συνήθως το περιβάλλον θεωρείται μη-ντετερμινιστικό: η εκτέλεση μιας ενέργειας από τον πράκτορα δεν έχει πάντα το ίδιο αποτέλεσμα. η εκτέλεση μιας ενέργειας από τον πράκτορα δεν είναι πάντα επιτυχής. Ο πράκτορας έχει ένα ρεπερτόριο ενεργειών που μπορεί να εκτελέσει. Δεν εκτελούναι όλες οι ενέργειες όλες τις φορές, συνήθως κάθε μία απαιτεί συγκεκριμένες προϋποθέσεις. Το βασικό πρόβλημα για έναν πράκτορα είναι να αποφασίζει ποια ενέργεια να εκτελέσει όταν περισσότερες από μια είναι πιθανές, έτσι ώστε να ικανοποιήσει τους στόχους για τους οποίους έχει σχεδιαστεί. Αυτή η επιλογή μπορεί να εξαρτάται μόνο από την τρέχουσα αντίληψη του πράκτορα για το περιβάλλον του ή από ολόκληρο το ιστορικό των αντιλήψεων του πράκτορα για το περιβάλλον του. Υπάρχουν αρχιτεκτονικές πρακτόρων, δηλαδή αρχιτεκτονικές λογισμικού για συστήματα λήψης αποφάσεων.

10 Πράκτορας και περιβάλλον (1)
Είσοδος αισθητήρων = αντιλήψεις (percepts). Ακολουθία αντιλήψεων = πλήρες ιστορικό όλων όσων έχει αντιληφθεί ο πράκτορας. Έξοδος δράσης = ενέργειες που εκτελεί ο πράκτορας στο περιβάλλον. Ρεπερτόριο ενεργειών = το σύνολο όλων των ενεργειών που μπορεί να εκτελέσει ο πράκτορας. Συνάρτηση πράκτορα = αντιστοιχία ακολουθιών αντιλήψεων σε ενέργειες Η επιλογή μιας ενέργειας μια χρονική στιγμή εξαρτάται από την τρέχουσα αντίληψη του πράκτορα ή και από ολόκληρη την ακολουθία αντιλήψεών του.

11 Πράκτορας και περιβάλλον (2)
Στη γενική περίπτωση το περιβάλλον ενός πράκτορα θεωρείται μη-ντετερμινιστικό: Η εκτέλεση μιας ενέργειας από τον πράκτορα δεν έχει πάντα το ίδιο αποτέλεσμα. Η εκτέλεση μιας ενέργειας από τον πράκτορα δεν είναι πάντα επιτυχής. Ο πράκτορας έχει ένα ρεπερτόριο ενεργειών που μπορεί να εκτελέσει. Δεν εκτελούνται όλες οι ενέργειες όλες τις φορές, συνήθως κάθε μία απαιτεί συγκεκριμένες προϋποθέσεις. Το βασικό πρόβλημα για έναν πράκτορα είναι να αποφασίζει ποια ενέργεια να εκτελέσει όταν περισσότερες από μια είναι πιθανές, έτσι ώστε να ικανοποιήσει τους στόχους για τους οποίους έχει σχεδιαστεί. Μαθηματικά, ένας πράκτορας είναι μια συνάρτηση που αντιστοιχίζει ενέργειες σε ιστορίες αντιλήψεων: f : Per*  A Το βασικό πρόβλημα για μας είναι να βρούμε ποιος είναι ο σωστός τρόπος να ορίσουμε (προγραμματίσουμε) τη συνάρτηση του πράκτορα έτσι ώστε αυτός να μπορεί να αποφασίζει ποια ενέργεια να εκτελέσει...

12 Παράδειγμα: πράκτορας-καθαριστής
Ο κόσμος αποτελείται μόνο από τους χώρους Α και Β. Ο πράκτορας μπορεί (να δέχεται την ακόλουθη είσοδο) Να αντιλαμβάνεται σε ποιό χώρο είναι. Να αντιλαμβάνεται αν υπάρχει σκόνη στο χώρο όπου βρίσκεται. (να παράγει την ακόλουθη έξοδο) Να μετακινείται αριστερά. Να μετακινείται δεξιά. Να αναρροφήσει τη σκόνη.

13 Συνάρτηση πράκτορα-καθαριστή

14 Ορθολογικός πράκτορας
Ορθολογικός πράκτορας = ο πράκτορας που κάνει το σωστό. Σωστό = η συνάρτηση του πράκτορα είναι σωστά ορισμένη, δηλαδή για κάθε ακολουθία αντιλήψεων αντιστοιχεί η ορθή/καλύτερη ενέργεια. Ορθή/καλύτερη ενέργεια = εκείνη που κάνει τον πράκτορα πιο επιτυχημένο. Επιτυχημένος πράκτορας = ?

15 Μέτρα απόδοσης για πράκτορες
Μέτρο απόδοσης = ένα κριτήριο για την επιτυχημένη (ή όχι) συμπεριφορά του πράκτορα. Ο πράκτορας αντιλαμβάνεται το περιβάλλον. Με βάση τις αντιλήψεις του επιλέγει μια ενέργεια. Μόλις εκτελεστεί η ενέργειά του το περιβάλλον περνά σε νέα κατάσταση. Αν η νέα κατάσταση του περιβάλλοντος είναι επιθυμητή τότε ο πράκτορας ήταν αποδοτικός/επιτυχημένος. Ποιος θα αποφασίσει ποιες καταστάσεις περιβάλλοντος είναι επιθυμητές; Ο ίδιος ο πράκτορας (αλλά τότε είναι υποκειμενικό το κριτήριο) Ο σχεδιαστής του πράκτορα

16 Μέτρο απόδοσης για πράκτορα-καθαριστή
Πόση σκόνη καθαρίζεται μέσα σε συγκεκριμένο χρονικό διάστημα; Ένας ορθολογικός πράκτορας θα μπορούσε να επιλέξει ...; Πόσο κατάφερε να διατηρήσει το χώρο καθαρό μέσα σε συγκεκριμένο χρονικό διάστημα; “καθαρός χώρος” = ; (μέση καθαρότητα;) Δύο διαφορετικοί πράκτορες μπορεί να επιτύχουν την ίδια απόδοση: Ένας που δουλεύει μέτρια όλη την ώρα Ένας που δουλεύει εντατικά κάποια διαστήματα αλλά κάνει μεγάλα διαλείμματα

17 Επιλογή κατάλληλου μέτρου απόδοσης
Δύσκολη! Προτιμότερο να επιλέγουμε μέτρα απόδοσης σύμφωνα με το τι θέλουμε να συμβεί στο περιβάλλον παρά σύμφωνα με το πώς νομίζουμε ότι πρέπει να συμπεριφερθεί ο πράκτορας. Εξάλλου, δεν είναι πάντα σίγουρο ότι ένας πράκτορας θα συμπεριφερθεί με συγκεκριμένο τρόπο! Αυτονομία...

18 Ορθολογικός πράκτορας (ξανά...)
Η “σωστή” ενέργεια σε μια χρονική στιγμή εξαρτάται Από το μέτρο απόδοσης που χρησιμοποιείται για να ορίσει την επιτυχία Από την ακολουθία αντιλήψεων του πράκτορα μέχρι στιγμής Από την προηγούμενη γνώση του πράκτορα για το περιβάλλον Από τις ενέργειες που μπορεί να πραγματοποιεί ο πράκτορας (ποιων οι προϋποθέσεις εκπληρώνονται;) Για κάθε δυνατή ακολουθία αντιλήψεων, ένας ορθολογικός πράκτορας θα πρέπει να επιλέγει μια ενέργεια που αναμένεται να μεγιστοποιήσει το μέτρο της απόδοσής του, με δεδομένα τα τεκμήρια που παρέχονται από την ακολουθία αντιλήψεων και την ενσωματωμένη γνώση που έχει ο πράκτορας.

19 Αυτονομία πράκτορα Ορθολογικότητα  παντογνωσία
Ο πράκτορας παντογνώστης γνωρίζει το πραγματικό (όχι απλά το αναμενόμενο) αποτέλεσμα των ενεργειών του και πράττει ανάλογα. Η ορθολογική επιλογή εξαρτάται από τις μέχρι στιγμής αντιλήψεις. Ορθολογικότητα  συλλογή πληροφοριών και εξερεύνηση Ο ορθολογικός πράκτορας θα πρέπει να κάνει και ενέργειες που βοηθούν να μεγιστοποιηθεί η αναμενόμενη απόδοσή του (π.χ. ο πράκτορας-καθαριστής να διατρέξει το χώρο για να εντοπίσει πού βρίσκεται σκόνη, ή πού οριοθετείται ο χώρος) Ορθολογικότητα  μάθηση και αξιοποίηση εμπειρίας Συλλογή πληροφοριών + μάθηση + τροποποίηση συμπεριφοράς = αυτονομία.

20 Περιβάλλοντα εργασιών
Κάθε πράκτορας προορίζεται για να επιλύσει κάποιο πρόβλημα. Για να κατασκευάσουμε ορθολογικό πράκτορα πρέπει κατ’αρχήν να γνωρίζουμε το πρόβλημα, δηλαδή το περιβάλλον εργασίας του. Για να περιγράψουμε περιβάλλοντα εργασίας πρέπει να ορίσουμε Το μέτρο απόδοσης που θα χρησιμοποιηθεί (Performance) Τα περιεχόμενα του περιβάλλοντος (Environment) Τους μηχανισμούς δράσης που θα έχει ο πράκτορας (Actuators) Τους μηχανισμούς αντίληψης που θα έχει ο πράκτορας (Sensors)

21 Παράδειγμα: αυτόματος οδηγός ταξί
Τύπος πράκτορα Μέτρο απόδοσης Περιβάλλον Μηχανισμοί δράσης Αντιλήψεις Οδηγός ταξί Ασφαλές, άνετο, γρήγορο, νόμιμο δρομολόγιο, μέγιστα κέρδη Δρόμοι, άλλα οχήματα, πεζοί, πελάτες, ισχύων ΚΟΚ, καιρικές συνθήκες Τιμόνι, γκάζι, φρένο, κόρνα Κάμερες, ταχύμετρο, GPS, αισθητήρες κινητήρα

22 Κατηγορίες περιβαλλόντων για πράκτορες
Οι Russel & Norvig (1995) κατηγοριοποιούν ένα περιβάλλον ανάλογα με τις ιδιότητές του: Προσιτά/ μη-προσιτά: ένα περιβάλλον είναι προσιτό όταν ο πράκτορας μπορεί να λάβει πλήρη, ακριβή και ενημερωμένη πληροφορία για την κατάστασή του. Τα περισσότερα πραγματικά περιβάλλοντα είναι μη-προσιτά. Ντετερμινιστικά/μη-ντετερμινιστικά: ένα περιβάλλον είναι ντετερμινιστικό όταν κάθε ενέργεια που εκτελείται μέσα σε αυτό έχει ένα μοναδικό και εγγυημένο αποτέλεσμα (και οδηγεί σε μια μοναδική νέα κατάσταση του περιβάλλοντος). Στατικά/δυναμικά: ένα περιβάλλον θεωρείται στατικό όταν αλλάζει μόνο εξαιτίας της ενέργειας κάποιου πράκτορα. Ένα δυναμικό περιβάλλον περιέχει κι άλλες διεργασίες που το αλλάζουν και οι οποίες βρίσκονται εκτός του ελέγχου του πράκτορα. Διακριτά/συνεχή: ένα περιβάλλον είναι διακριτό όταν περιέχει σταθερό, πεπερασμένο αριθμό ενεργειών και μεταβλητών.

23 Μη-προσιτά περιβάλλοντα και σχεδίαση πρακτόρων
Όσο πιο προσιτό είναι ένα περιβάλλον τόσο πιο εύκολο είναι να κατασκευάσουμε πράκτορα που να λειτουργεί αποτελεσματικά σε αυτό. Γιατί.... Καλός πράκτορας = πράκτορας που παίρνει καλές αποφάσεις Καλές αποφάσεις = αποφάσεις βασισμένες σε καλή πληροφορία Καλή πληροφορία = πλήρης, ενημερωμένη, ακριβής πληροφορία

24 Μη-ντετερμινιστικά περιβάλλοντα και σχεδίαση πρακτόρων
Όσο πιο ντετερμινιστικό είναι ένα περιβάλλον τόσο πιο εύκολο είναι να κατασκευάσουμε πράκτορα που να λειτουργεί αποτελεσματικά σε αυτό. Μη-ντετερμινισμός σημαίνει περιορισμένη επιρροή του πράκτορα στο περιβάλλον του. οι ενέργειες του πράκτορα με συγκεκριμένο στόχο μπορεί να αποτύχουν.

25 Δυναμικά περιβάλλοντα και σχεδίαση πρακτόρων
Όσο πιο στατικό είναι ένα περιβάλλον τόσο πιο εύκολο είναι να κατασκευάσουμε πράκτορα που να λειτουργεί αποτελεσματικά σε αυτό. Σε ένα στατικό περιβάλλον ο πράκτορας θα μπορούσε να λειτουργεί με απλούστερους αλγόριθμους κατάστρωσης σχεδίου δράσης (planning). Δυναμικό περιβάλλον για ένα πράκτορα σημαίνει ότι Ακόμα κι αν ο πράκτορας δεν εκτελέσει καμιά ενέργεια μεταξύ των χρονικών στιγμών t0 και t1, δεν μπορεί να υποθέσει ότι το περιβάλλον έμεινε το ίδιο από τη στιγμή t0 ως την t1. Άρα πριν εκτελέσει κάποια ενέργεια ο πράκτορας πρέπει πάντα να συλλέγει πληροφορίες από το περιβάλλον. Άλλες διεργασίες μέσα στο περιβάλλον μπορεί να παρεμβληθούν στις ενέργειες που προσπαθεί να κάνει ο πράκτορας. Αν ο πράκτορας δει ότι το περιβάλλον έχει μια ιδιότητα x και αποφασίσει να εκτελέσει την ενέργεια a στη βάση αυτής της πληροφορίας, δεν υπάρχει εγγύηση ότι το περιβάλλον θα εξακολουθήσει να έχει την ιδιότητα x κατά τη διάρκεια της εκτέλεσης της ενέργειας a.

26 Διακριτά περιβάλλοντα και σχεδίαση πρακτόρων
Ένα διακριτό περιβάλλον θα βρίσκεται πάντα σε μια από (πιθανά πολύ μεγάλο αλλά) πεπερασμένο πλήθος καταστάσεων. Είναι ευκολότερη η σχεδίαση πράκτορα για διακριτά περιβάλλοντα γιατί: Οι ΗΥ είναι συστήματα διακριτών καταστάσεων. Μπορούν να προσομοιώσουν συνεχή συστήματα αλλά κάποια πληροφορία χάνεται κατά την αντιστοίχιση από συνεχές σε διακριτό. Όταν το πλήθος των καταστάσεων του συστήματος είναι πεπερασμένο μπορούμε να απαριθμήσουμε όλες τις δυνατές ενέργειες και την καλύτερη σε κάθε κατάσταση.

27 Ανοιχτά περιβάλλοντα (Hewitt 1986)
Τα πιο πολύπλοκα περιβάλλοντα είναι Μη-προσιτά και Μη-ντετερμινιστικά και Δυναμικά και Συνεχή

28 Κατηγορίες προγραμμάτων πρακτόρων
Απλοί αντανακλαστικοί πράκτορες Αντανακλαστικοί πράκτορες βασισμένοι σε μοντέλο Πράκτορες βασισμένοι στο στόχο Πράκτορες βασισμένοι στη χρησιμότητα

29 Απλοί αντανακλαστικοί πράκτορες (1)
Επιλέγουν ποια ενέργεια να εκτελέσουν σε μια δεδομένη χρονική στιγμή με βάση την τρέχουσα αντίληψή τους για το περιβάλλον. 29

30 Απλοί αντανακλαστικοί πράκτορες (2)
Παράδειγμα: θερμοστάτης Περιορισμένη ευφυΐα Επαρκούν σε περιβάλλοντα πλήρως παρατηρήσιμα. Σε μερικώς παρατηρήσιμα περιβάλλοντα μπορεί να εκτελούν ατέρμονες βρόχους Αν ο πράκτορας-καθαριστής δεν έχει τον αισθητήρα θέσης, έχει μόνο τον αισθητήρα σκόνης, τότε Ποιες αντιλήψεις είναι δυνατές; Ποια ενέργεια πρέπει να κάνει στην αντίληψη [Καθαρό];

31 Αντανακλαστικοί πράκτορες με μοντέλο (1)
Επιλέγουν ποια ενέργεια να εκτελέσουν σε μια δεδομένη χρονική στιγμή με βάση το ιστορικό των αντιλήψεών του. Το ιστορικό των αντιλήψεών του χρησιμοποιείται για να κατασκευάσει ο πράκτορας ένα μοντέλο για το πώς λειτουργεί ο κόσμος. Πώς εξελίσσεται ο κόσμος ανεξάρτητα από αυτόν (νόμοι του περιβάλλοντος). Πώς αλλάζει ο κόσμος εξαιτίας των ενεργειών του.

32 Αντανακλαστικοί πράκτορες με μοντέλο (2)
32

33 Πράκτορες βασισμένοι σε στόχους (1)
Η τρέχουσα αντίληψη (ή και το ιστορικό) δεν επαρκούν σε μερικές περιπτώσεις για να ληφθεί απόφαση για το ποια ενέργεια πρέπει να εκτελεστεί. Π.χ. σε ένα σταυροδρόμι ένα αυτοκίνητο μπορεί να στρίψει αριστερά, δεξιά ή να πάει ευθεία. Η επιλογή εξαρτάται από το πού θέλει να πάει. Ο πράκτορας χρειάζεται κάποια πληροφορία για το ποιος είναι ο στόχος του (ποια είναι η επιθυμητή κατάσταση περιβάλλοντος που πρέπει να πετύχει). Ο πράκτορας πρέπει να έχει ικανότητες αναζήτησης και σχεδιασμού για να μπορεί να βρει ποια ακολουθία ενεργειών πετυχαίνει το στόχο του.

34 Πράκτορες βασισμένοι σε στόχους (2)
34

35 Πράκτορες βασισμένοι στη χρησιμότητα (1)
Ένας στόχος (π.χ. για τον πράκτορα-καθαριστή, να διατηρήσει τους δύο χώρους καθαρούς) ίσως επιτυγχάνεται με περισσότερους από έναν τρόπους. Πώς επιλέγει ένας πράκτορας ποια ενέργεια να εκτελέσει όταν έχει επιλογή από ένα πλήθος εναλλακτικών που πετυχαίνουν το ίδιο αποτέλεσμα; Συνάρτηση χρησιμότητας: κάθε κατάσταση του περιβάλλοντος (ή κάθε ακολουθία καταστάσεων περιβάλλοντος) “βαθμολογείται” με πραγματικό αριθμό. Η συνάρτηση χρησιμότητας είναι χρήσιμη και όταν πρέπει ένας πράκτορας να αποφασίσει ποιον από πολλούς εναλλακτικούς στόχους θα πρέπει να επιδιώξει (προτεραιότητες) ή ποιόν από συγκρουόμενους στόχους θα πρέπει να επιδιώξει.

36 Πράκτορες βασισμένοι στη χρησιμότητα (2)
36

37 Αφηρημένες αρχιτεκτονικές για νοήμονες πράκτορες
Το περιβάλλον Ε μπορεί να είναι σε μια από ένα πεπερασμένο πλήθος διακριτών, στιγμιαίων καταστάσεων Ε={e0, e1, e2, …} Κάθε πράκτορας έχει ένα ρεπερτόριο ενεργειών που, αν τις πραγματοποιήσει, μετατρέπουν την κατάσταση του περιβάλλοντος. Ac={a0, a1, a2, …} Βασικό μοντέλο αλληλεπίδρασης: Το περιβάλλον αρχικά βρίσκεται σε μια κατάσταση και ο πράκτορας επιλέγει μια ενέργεια. Μετά την εκτέλεση της ενέργειας του πράκτορα το περιβάλλον μεταβαίνει σε μια (από ένα σύνολο πιθανών) νέα κατάσταση η οποία δεν είναι εκ των προτέρων γνωστή στον πράκτορα. Ο πράκτορας επιλέγει νέα ενέργεια κλπ. Μια εκτέλεση (run) r, ενός πράκτορα σε ένα περιβάλλον είναι μια ακολουθία καταστάσεων του περιβάλλοντος εναλλασσόμενων με ενέργειες του πράκτορα:

38

39

40 Υποσυστήματα αντίληψης και δράσης
Το υποσύστημα αντίληψης μπορεί να υλοποιηθεί με υλικό (με αισθητήρες, κάμερα, υπέρυθρες) για πράκτορα που λειτουργεί στο φυσικό περιβάλλον. Για πράκτορα λογισμικού, η αντίληψη υλοποιείται με εντολές που επιστρέφουν πληροφορία για το περιβάλλον λογισμικού (ls, finger κλπ). Η see είναι συνάρτηση που αντιστοιχίζει καταστάσεις του περιβάλλοντος σε αντιλήψεις (εισόδους των αισθητήρων), δηλαδή see: E  Per. H action είναι συνάρτηση που αντιστοιχίζει σειρά αντιλήψεων σε ενέργειες, δηλαδή action: Per*  Ac. Ένας πράκτορας ορίζεται σαν το ζεύγος συναρτήσεων Ag=<see, action>. 40

41 Ιδιότητες των υποσυστημάτων αντίληψης/δράσης
41

42 Απλοί αντανακλαστικοί πράκτορες (1)
Επιλέγουν ποια ενέργεια να εκτελέσουν σε μια δεδομένη χρονική στιγμή με βάση την τρέχουσα αντίληψή τους για το περιβάλλον. 42

43 Απλοί αντανακλαστικοί πράκτορες (2)

44 Αντανακλαστικοί πράκτορες με μοντέλο
44

45 Πράκτορες με κατάσταση
Οι πράκτορες με κατάσταση έχουν μια εσωτερική δομή δεδομένων που χρησιμοποιείται για να καταγράφεται πληροφορία για την κατάσταση του περιβάλλοντος και την ιστορία.

46 Ορισμός πράκτορα με κατάσταση
Το σύνολο όλων των εσωτερικών καταστάσεων του πράκτορα είναι Ι. Η συνάρτηση αντίληψης παραμένει αμετάβλητη, δηλαδή αντιστοιχίζει καταστάσεις περιβάλλοντος σε αντιλήψεις: see: E Per Η συνάρτηση next αντιστοιχίζει μια εσωτερική κατάσταση του πράκτορα και μια αντίληψη σε μια νέα εσωτερική κατάσταση του πράκτορα: next: I x Per I Η συνάρτηση δράσης αντιστοιχίζει εσωτερικές καταστάσεις του πράκτορα σε ενέργειες: action: I Ac

47 Κύκλος πράκτορα με κατάσταση
Ο πράκτορας ξεκινά σε μια αρχική εσωτερική κατάσταση i0. Παρατηρεί την κατάσταση του περιβάλλοντός του e και δημιουργεί μια αντίληψη see(e). Ενημερώνεται η εσωτερική του κατάσταση και γίνεται next(i0, see(e)). Επιλέγεται ενέργεια action(next(i0, see(e))). Εκτελείται αυτή η ενέργεια. Goto(2).

48 Πώς ορίζουμε σε έναν πράκτορα τι να κάνει;
Κατασκευάζουμε πράκτορες για να εκτελούν για λογαριασμό μας κάποιες συγκεκριμένες εργασίες. Πρέπει λοιπόν να ορίσουμε στους πράκτορές μας τι να κάνουν. Ένας τρόπος για να γίνει αυτό είναι να γράψουμε ένα πρόγραμμα για να το εκτελεί ο πράκτορας. Έτσι δεν υπάρχει αβεβαιότητα για τη συμπεριφορά του πράκτορά μας, θα εκτελεί πάντα αυτό που τον προγραμματίσαμε να εκτελεί. Όμως τότε θα πρέπει να σκεφτούμε ακριβώς πώς θα εκτελείται η εργασία και να γράψουμε το πρόγραμμα με συγκεκριμένο αλγόριθμο. Αν προκύψουν συνθήκες που δεν έχουμε προβλέψει, ο πράκτοράς μας δεν θα μπορεί να αντιδράσει ανάλογα. Ένας πιο χρήσιμος τρόπος είναι να ορίσουμε στον πράκτορά μας τι θέλουμε να κάνει χωρίς να του πούμε πώς να το κάνει. Μπορούμε να ορίσουμε εργασίες έμμεσα μέσω κάποιου μέτρου απόδοσης: συσχετίζουμε καταστάσεις του περιβάλλοντος με χρησιμότητες.

49 Πράκτορες βασισμένοι στη χρησιμότητα
49

50 Συναρτήσεις χρησιμότητας σε καταστάσεις περιβάλλοντος

51 Συναρτήσεις χρησιμότητας σε εκτελέσεις του πράκτορα

52 Tileworld: περιγραφή

53 Tileworld: λειτουργία

54 Tileworld: ικανότητες πρακτόρων

55 Αναμενόμενη χρησιμότητα
55

56 Παράδειγμα 56

57 Παράδειγμα 57

58 Βέλτιστοι πράκτορες Ο πράκτορας με τη μέγιστη αναμενόμενη χρησιμότητα ονομάζεται βέλτιστος πράκτορας. Ένας βέλτιστος πράκτορας ίσως να μην έχει την καλύτερη απόδοση βραχυπρόθεσμα. Θα έχει όμως την καλύτερη απόδοση μακροπρόθεσμα. 58

59 Μειονεκτήματα των συναρτήσεων χρησιμότητας
Είναι συχνά δύσκολο να ορίσουμε την κατάλληλη συνάρτηση χρησιμότητας. «Από που προέρχονται οι αριθμοί;» Συνήθως είναι πιο φυσικό να ορίζουμε τις εργασίες που θέλουμε να επιτελέσει ο πράκτορας. Μπορούμε να ορίζουμε τις εργασίες πρακτόρων με κατηγορήματα.

60 Ορισμός εργασιών με κατηγορήματα

61 Περιβάλλοντα εργασίας

62 Η πιθανότητα της επιτυχίας
62

63 Είδη εργασίας

64 Εργασίες εκπλήρωσης

65 Εργασίες συντήρησης

66 Σύνθεση πρακτόρων

67 Βιβλιογραφία Κεφάλαιο 2ο από το βιβλίο του Wooldridge.
Τεχνητή νοημοσύνη ως μία διαδικασία κατασκευής πράκτορα S. Russel and P. Norvig, Τεχνητή νοημοσύνη – μια σύγχρονη προσέγγιση, εκδόσεις Κλειδάριθμος. Κεφάλαιο 2. Τι είναι ένας πράκτορας; S. Franklin and A. Graesser, Is it an agent, or just a program?, Intelligent Agents III, eds Muller, Wooldridge and Jennings, LNAI 1193, 21-36, Springer, 1997. Αφηρημένες αρχιτεκτονικές πρακτόρων M. Genesereth and N. Nilsson, Logical Foundations of Artificial Intelligence, Morgan Kaufmann, 1987. Κεφάλαιο 13. Σχέση μεταξύ πράκτορα και περιβάλλοντος J. Muller, The right agent (architecture) to do the right thing, Intelligent Agent V, eds Muller, Singh and Rao, LNAI 1555, Springer, 1999. Tileworld M. Pollack & M. Ringuette, Introducing the Tileworld: experimentally evaluating agent architectures, Proceedings of AAAI, , 1990. Απόδοση belief-desire-intention (BDI) πρακτόρων στο Tileworld D. Kinny & M. Georgeff, Commitment and effectiveness of situated agents, Proceedings of IJCAI, 82-88, 1991. M. Wooldridge & S. Parsons, Intention reconsideration reconsidered, Intelligent Agent V, eds Muller, Singh and Rao, LNAI 1555, Springer, 1999. Περιβάλλοντα εργασίας M. Wooldridge & P. Dunne, Optimistic and Disjunctive Agent Design Problems, Intelligent Agents VII, eds LNAI 1986, 1-14, Springer, 2000.


Κατέβασμα ppt "Νοήμονες Πράκτορες."

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


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