Τι είναι πράκτορας; Άνθρωπος Ρομπότ Πράκτορας λογισμικού. ...αλλά και μη ευφυή πράγματα όπως... οι θερμοστάτες!

Σχετικά έγγραφα
ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

Πράκτορες και περιβάλλοντα Λογική PEAS (Performance measure, Environment, Actuators, Sensors) Τύποι περιβάλλοντος Τύποι πρακτόρων

Ευφυείς πράκτορες. Πράκτορες και Περιβάλλοντα

Τεχνητή Νοημοσύνη Ι. Ενότητα 2: Ευφυείς Πράκτορες. Μουστάκας Κωνσταντίνος Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών

Ευφυείς Τεχνολογίες ----Πράκτορες

Σενάριο 16: Ο κόσμος του Robby

Πληροφορική 2. Τεχνητή νοημοσύνη

Τεχνητή Νοηµοσύνη. Γεώργιος Βούρος Καθηγητής. Τµήµα Ψηφιακών Συστηµάτων Πανεπιστήµιο Πειραιώς.

Ευφυείς Τεχνολογίες ----Πράκτορες

Στοχαστικές Στρατηγικές

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

Αντικείμενα, συμπεριφορές, γεγονότα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ανάλυση της Ορθότητας Προγραμμάτων (HR Κεφάλαιο 4)

Αλγόριθμοι για αυτόματα

αντίστοιχο γεγονός. Όταν όντως το κουμπί

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Τεχνητή Νοημοσύνη. Ενότητα 1: Τεχνητή Νοημοσύνη

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

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

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ

ΕΝΟΤΗΤΑ III ΒΑΣΙΚΕΣ ΜΕΘΟ ΟΙ ΑΝΑΛΥΣΗΣ

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

Εισαγωγή στη Θεωρία Αποφάσεων. Λήψη απλών αποφάσεων για έναν πράκτορα

ΠΡΟΣΟΜΟΙΩΣΗ. Προσομοίωση είναι η μίμηση της λειτουργίας ενός πραγματικού συστήματος και η παρακολούθηση της εξέλιξης του μέσα στο χρόνο.

1. Ποια μεγέθη ονομάζονται μονόμετρα και ποια διανυσματικά;

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Ασκήσεις μελέτης της 6 ης διάλεξης

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη

Μαλούτα Θεανώ Σελίδα 1

Σενάριο 13. Προγραμματίζοντας ένα Ρομπότ

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

ΑΕΠΠ Ερωτήσεις θεωρίας

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

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

Τεχνητή Νοημοσύνη. 6η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Κεφάλαιο 5: Εισαγωγή στην Προσομοίωση

Αυτόνομοι Πράκτορες. ΝΑΟ Μουσικός

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

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

9. Συστολικές Συστοιχίες Επεξεργαστών

Επιμέλεια παρουσίασης: Αριστείδης Παλιούρας ΤΙ ΕΊΝΑΙ ΈΝΑ ΡΟΜΠΟΤ (ROBOT)?

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

53 Χρόνια ΦΡΟΝΤΙΣΤΗΡΙΑ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Σ Α Β Β Α Ϊ Δ Η Μ Α Ν Ω Λ Α Ρ Α Κ Η

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 7. Τυχαίες Μεταβλητές και Διακριτές Κατανομές Πιθανοτήτων

Διδακτική της Πληροφορικής ΙΙ

Υπολογιστικά & Διακριτά Μαθηματικά

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Τεχνητή Νοημοσύνη. 2η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

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

Πρόβλημα 29 / σελίδα 28

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά.

Κατακερματισμός (Hashing)

Επίλυση προβλημάτων με αναζήτηση

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

for for for for( . */

Λήψη απόφασης σε πολυπρακτορικό περιβάλλον. Θεωρία Παιγνίων

Ασκήσεις μελέτης της 8 ης διάλεξης

ΘΕΜΑ Α. Α2. Να αναφέρετε από τι εξαρτάται η επιλογή του καλύτερου αλγορίθμου ταξινόμησης. Μονάδες 4. Σελίδα 1 από 8

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

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

Παραδείγματα μεταβλητών

Notes. Notes. Notes. Notes

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

Υπολογιστικά & Διακριτά Μαθηματικά

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

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

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

Κεφ. 9 Ανάλυση αποφάσεων

ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7)

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Εξοικείωση με το NXT-G

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

Σενάριο 13: Προγραμματίζοντας ένα Ρομπότ

Προγραμματισμός Ι (HY120)

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΚΕΦΑΛΑΙΟ 7ο. Δραστηριότητες για το ΝΧΤ-G και το Robolab

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ

Επαναληπτικές Διαδικασίες

Κεφάλαιο 10 Υποπρογράμματα. Καραμαούνας Πολύκαρπος

ΘΕΜΑ 1ο. Μονάδες 10. Β. ίνεται το παρακάτω τμήμα αλγορίθμου: Όσο Ι < 10 επανάλαβε Εμφάνισε Ι Ι Ι + 3 Τέλος_επανάληψης ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Σ ΤΑΤ Ι Σ Τ Ι Κ Η ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΔΙΑΓΩΝΙΣΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ:- Γ ΛΥΚΕΙΟΥ ΤΜΗΜΑΤΑ: ΓΟ4 ΓΟ7 (ΖΩΓΡΑΦΟΥ) ΓΟ5 ΓΟ6 (ΧΟΛΑΡΓΟΣ) HM/NIA: 15/1/2017

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

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

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

Επικοινωνία:

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

Διαδικασιακός Προγραμματισμός

Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη

m + s + q r + n + q p + s + n, P Q R P Q P R Q R F G

Transcript:

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

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

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

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

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

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

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

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

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

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

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

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

Συνάρτηση πράκτορα-καθαριστή A B Ακολουθία αντιλήψεων [Α, Καθαρό] [Α, Σκονισμένο] [Β, Καθαρό] [Β, Σκονισμένο] [Α, Καθαρό], [Α, Καθαρό] [Α, Καθαρό], [Α, Σκονισμένο]... [Α, Καθαρό], [Α, Καθαρό], [Α, Καθαρό] Ενέργεια Δεξιά Αναρρόφηση Αριστερά Αναρρόφηση Δεξιά Αναρρόφηση... Δεξιά 13

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Απλοί αντανακλαστικοί πράκτορες (1) Επιλέγουν ποια ενέργεια να εκτελέσουν σε μια δεδομένη χρονική στιγμή με βάση την τρέχουσα αντίληψή τους για το περιβάλλον. ΠΡΑΚΤΟΡΑΣ ΑΙΣΘΗΤΗΡΕΣ ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΠΕΡΙΒΑΛΛΟΝ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 29

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

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

Αντανακλαστικοί πράκτορες με μοντέλο (2) ΠΡΑΚΤΟΡΑΣ ΑΙΣΘΗΤΗΡΕΣ ΚΑΤΑΣΤΑΣΗ ΠΩΣ ΕΞΕΛΙΣΣΕΤΑΙ Ο ΚΟΣΜΟΣ; ΤΙ ΚΑΝΟΥΝ ΟΙ ΕΝΕΡΓΕΙΕΣ ΜΟΥ; ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΠΕΡΙΒΑΛΛΟΝ ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 32

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

Πράκτορες βασισμένοι σε στόχους (2) ΠΡΑΚΤΟΡΑΣ ΑΙΣΘΗΤΗΡΕΣ ΚΑΤΑΣΤΑΣΗ ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΠΩΣ ΕΞΕΛΙΣΣΕΤΑΙ Ο ΚΟΣΜΟΣ; ΤΙ ΚΑΝΟΥΝ ΟΙ ΕΝΕΡΓΕΙΕΣ ΜΟΥ; ΠΩΣ ΘΑ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΑΝ ΚΑΝΩ ΤΗΝ ΕΝΕΡΓΕΙΑ Α; ΠΕΡΙΒΑΛΛΟΝ ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΣΤΟΧΟΙ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 34

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

Πράκτορες βασισμένοι στη χρησιμότητα (2) ΠΡΑΚΤΟΡΑΣ ΚΑΤΑΣΤΑΣΗ ΑΙΣΘΗΤΗΡΕΣ ΠΩΣ ΕΞΕΛΙΣΣΕΤΑΙ Ο ΚΟΣΜΟΣ; ΤΙ ΚΑΝΟΥΝ ΟΙ ΕΝΕΡΓΕΙΕΣ ΜΟΥ; ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΠΩΣ ΘΑ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΑΝ ΚΑΝΩ ΤΗΝ ΕΝΕΡΓΕΙΑ Α; ΠΟΣΟ ΚΑΛΟ ΘΑ ΗΤΑΝ ΑΥΤΟ; ΠΕΡΙΒΑΛΛΟΝ ΧΡΗΣΙΜΟΤΗΤΑ ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΣΤΟΧΟΙ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 36

Αφηρημένες αρχιτεκτονικές για νοήμονες πράκτορες Το περιβάλλον Ε μπορεί να είναι σε μια από ένα πεπερασμένο πλήθος διακριτών, στιγμιαίων καταστάσεων Ε={e 0, e 1, e 2, } Κάθε πράκτορας έχει ένα ρεπερτόριο ενεργειών που, αν τις πραγματοποιήσει, μετατρέπουν την κατάσταση του περιβάλλοντος. Ac={a 0, a 1, a 2, } Βασικό μοντέλο αλληλεπίδρασης: Το περιβάλλον αρχικά βρίσκεται σε μια κατάσταση και ο πράκτορας επιλέγει μια ενέργεια. Μετά την εκτέλεση της ενέργειας του πράκτορα το περιβάλλον μεταβαίνει σε μια (από ένα σύνολο πιθανών) νέα κατάσταση η οποία δεν είναι εκ των προτέρων γνωστή στον πράκτορα. Ο πράκτορας επιλέγει νέα ενέργεια κλπ. Μια εκτέλεση (run) r, ενός πράκτορα σε ένα περιβάλλον είναι μια ακολουθία καταστάσεων του περιβάλλοντος εναλλασσόμενων με ενέργειες του πράκτορα: r : e a a a 0 e 1 e 2 0 1 2 L a u 1 e u 37

Μια συνάρτηση μετατροπής καταστάσεων τ αντιστοιχίζει μια εκτέλεση που καταλήγει με μια ενέργεια του πράκτορα στο σύνολο όλων των πιθανών καταστάσεων του περιβάλλοντος που προκύπτουν μετά την εκτέλεση αυτής της ενέργειας, δηλαδή: τ : R Ac ( E ) R είναι το σύνολο όλων των δυνατών εκτελέσεων R Ac R είναι το σύνολο των εκτελέσεων που λήγουν με ενέργεια πράκτορα R E R είναι το σύνολο των εκτελέσεων που λήγουν με κατάσταση περιβάλλοντος Το περιβάλλον εξαρτάται από την ιστορία, δηλαδή η επόμενη κατάστασή του σε μια ορισμένη χρονική στιγμή δεν εξαρτάται μόνο από την ενέργεια που εκτελεί ο πράκτορας εκείνη τη στιγμή αλλά και από τις ενέργειες που εκτέλεστηκαν νωρίτερα. Δεν είναι δεδομένη και μοναδική η επόμενη κατάσταση του περιβάλλοντος μετά την εκτέλεση κάποιας ενέργειας (μη-ντετερμινισμός). 38

Οι πράκτορες μοντελοποιούνται σαν συναρτήσεις που αντιστοιχίζουν εκτελέσεις που τελειώνουν με κατάσταση περιβάλλοντος σε ενέργειες, δηλαδή Ag :R E Ac Ένας πράκτορας αποφασίζει για το ποιά ενέργεια να εκτελέσει βασισμένος στην ιστορία του συστήματος που γνωρίζει μέχρι τώρα. Το σύνολο όλων των πρακτόρων είναι το AG. Τυπικός συμβολισμός: o Ένα περιβάλλον ορίζεται ως η τριάδα Env = E,e, τ όπου e 0 0 είναι μια αρχική κατάσταση του περιβάλλοντος. o Ένα σύστημα ορίζεται σαν ζεύγος ενός πράκτορα κι ενός περιβάλλοντος και έχει ένα πλήθος από πιθανές εκτελέσεις. o Το σύνολο των εκτελέσεων του πράκτορα Ag στο περιβάλλον Env συμβολίζεται R(Ag, Env). 39

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

Ιδιότητες των υποσυστημάτων αντίληψης/δράσης Έστω ότι έχουμε δύο καταστάσεις του περιβάλλοντος ως εξής: e 1 E, e 2 E, e1 e2, see( e1 ) = see( e2 ) Τότε ο πράκτορας δεν μπορεί να διακρίνει μεταξύ των δύο διαφορετικών καταστάσεων και τις μεταχειρίζεται το ίδιο (τις αντιστοιχίζει στις ίδιες αντιλήψεις). Πιο τυπικά, δοθέντων δύο καταστάσεων περιβάλλοντος e 1 και e 2 θα γράφουμε e 1 ~ e2 όποτε see(e 1 )=see(e 2 ). Η σχέση ~ είναι σχέση ισοδυναμίας στο σύνολο Ε των καταστάσεων περιβάλλοντος, δηλαδή το διαχωρίζει σε αμοιβαία αποκλειόμενα υποσύνολα καταστάσεων. Όσο πιο ευρείες είναι οι κλάσεις ισοδυναμίας του Ε, τόσο λιγότερο αποτελεσματική είναι η ικανότητα αντίληψης του πράκτορα. Ο πράκτορας έχει τέλεια αντίληψη του περιβάλλοντός του όταν ~ = Ε και ανύπαρκτη αντίληψη του περιβάλλοντός του όταν ~ =1. 41

Απλοί αντανακλαστικοί πράκτορες (1) Επιλέγουν ποια ενέργεια να εκτελέσουν σε μια δεδομένη χρονική στιγμή με βάση την τρέχουσα αντίληψή τους για το περιβάλλον. ΠΡΑΚΤΟΡΑΣ ΑΙΣΘΗΤΗΡΕΣ ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΠΕΡΙΒΑΛΛΟΝ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 42

Απλοί αντανακλαστικοί πράκτορες (2) Μερικοί πράκτορες αποφασίζουν τι ενέργεια να κάνουν χωρίς να αναφερθούν στην ιστορία τους, βασίζουν δηλαδή την απόφασή τους στις παρούσες συνθήκες μόνο. Η συμπεριφορά τους μπορεί να αντιπροσωπευτεί με τις παρακάτω συναρτήσεις: see : E Per action : Per Ac Για κάθε αμιγώς αντιδραστικό πράκτορα υπάρχει ένας «κανονικός» πράκτορας που είναι ισοδύναμος (το αντίστροφο δεν ισχύει). Ο θερμοστάτης είναι αμιγώς αντιδραστικός πράκτορας. Υποθέτοντας ότι το περιβάλλον του μπορεί να είναι σε δύο μόνο καταστάσεις (πολύ κρύο ή ΟΚ) τότε ο θερμοστάτης ορίζεται: Ag ( e ) = off if e = temperature OK on otherwise 43

Αντανακλαστικοί πράκτορες με μοντέλο ΠΡΑΚΤΟΡΑΣ ΑΙΣΘΗΤΗΡΕΣ ΚΑΤΑΣΤΑΣΗ ΠΩΣ ΕΞΕΛΙΣΣΕΤΑΙ Ο ΚΟΣΜΟΣ; ΤΙ ΚΑΝΟΥΝ ΟΙ ΕΝΕΡΓΕΙΕΣ ΜΟΥ; ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΠΕΡΙΒΑΛΛΟΝ ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 44

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

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

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

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

Πράκτορες βασισμένοι στη χρησιμότητα ΠΡΑΚΤΟΡΑΣ ΚΑΤΑΣΤΑΣΗ ΑΙΣΘΗΤΗΡΕΣ ΠΩΣ ΕΞΕΛΙΣΣΕΤΑΙ Ο ΚΟΣΜΟΣ; ΤΙ ΚΑΝΟΥΝ ΟΙ ΕΝΕΡΓΕΙΕΣ ΜΟΥ; ΚΑΝΟΝΕΣ ΣΥΝΘΗΚΗΣ-ΕΡΓΑΣΙΑΣ ΠΩΣ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΤΩΡΑ; ΠΩΣ ΘΑ ΕΙΝΑΙ Ο ΚΟΣΜΟΣ ΑΝ ΚΑΝΩ ΤΗΝ ΕΝΕΡΓΕΙΑ Α; ΠΟΣΟ ΚΑΛΟ ΘΑ ΗΤΑΝ ΑΥΤΟ; ΠΕΡΙΒΑΛΛΟΝ ΧΡΗΣΙΜΟΤΗΤΑ ΠΟΙΑ ΕΝΕΡΓΕΙΑ ΠΡΕΠΕΙ ΝΑ ΚΑΝΩ ΤΩΡΑ; ΣΤΟΧΟΙ ΜΗΧΑΝΙΣΜΟΙ ΔΡΑΣΗΣ 49

Συναρτήσεις χρησιμότητας σε καταστάσεις περιβάλλοντος Μια συνάρτηση χρησιμότητας αντιστοιχίζει σε κάθε κατάσταση του περιβάλλοντος μια αριθμητική τιμή, ένα «βαθμό» για το πόσο «καλή» είναι, δηλαδή u : E R Σκοπός του πράκτορα είναι να κάνει ό,τι ενέργειες χρειάζονται ώστε να δημιουργούνται καταστάσεις περιβάλλοντος με τη μέγιστη δυνατή χρησιμότητα. Μπορούμε έτσι να ορίσουμε την χρησιμότητα ενός πράκτορα σε ένα περιβάλλον με διάφορους τρόπους (δεν υπάρχει σωστός/λάθος τρόπος, εξαρτάται από την εργασία που θέλουμε να κάνει ο πράκτορας): o Πεσιμιστικά, ως τη χρησιμότητα της χειρότερης κατάστασης που θα συναντήσει ο πράκτορας. o Ως το μέσο όρο όλων των καταστάσεων που θα συναντήσει ο πράκτορας. Το μειονέκτημα αυτής της προσέγγισης είναι ότι συσχετίζουμε χρησιμότητες με τοπικές καταστάσεις. Συνεπώς είναι δύσκολο να μιλήσουμε για μακροπρόθεσμη χρησιμότητα. 50

Συναρτήσεις χρησιμότητας σε εκτελέσεις του πράκτορα Για να μπορούμε να μιλήσουμε για μακροπρόθεσμη χρησιμότητα ορίζουμε τη συνάρτηση χρησιμότητας έτσι ώστε να αντιστοιχίζει κάθε εκτέλεση του πράκτορα σε ένα βαθμό, δηλαδή: u : R R Ένα πολύ γνωστό παράδειγμα όπου χρησιμοποιήθηκε τέτοια συνάρτηση χρησιμότητας είναι στο Tileworld (Pollack 1990). 51

Tileworld: περιγραφή Το περιβάλλον του Tileworld είναι ένα δυδιάστατο πλέγμα που περιέχει πράκτορες, τουβλάκια, εμπόδια και κενά. Κάθε πράκτορας μπορεί να μετακινείται σε 4 κατευθύνσεις (πάνω, κάτω, δεξιά και αριστερά) και αν βρίσκεται δίπλα σε τουβλάκι μπορεί να το σπρώξει. Εμπόδιο είναι κάθε αριθμός αμετακίνητων κυψελών του πλέγματος. Οι πράκτορες δεν μπορούν να μετακινηθούν πάνω/μέσα σε εμπόδια. Τα κενά πρέπει να γεμίζονται με τουβλάκια από τον πράκτορα. Κάθε πράκτορας σκοράρει πόντους όταν γεμίζει κενά με τουβλάκια και στόχος του είναι να γεμίσει όσο περισσότερα κενά γίνεται. Η Τ Α Τ 52

Tileworld: λειτουργία Το περιβάλλον του Tileworld είναι δυναμικό: ξεκινά σε μια τυχαία γεννημένη κατάσταση και μεταβάλλεται με την πάροδο του χρόνου σε διακριτά βήματα, καθώς εμφανίζονται και εξαφανίζονται τυχαία κενά. Ο προγραμματιστής του περιβάλλοντος μπορεί να θέσει διάφορες παραμέτρους (τη συχνότητα εμφάνισης/εξαφάνισης των κενών, τούβλων και εμποδίων). Τούβλα εμφανίζονται τυχαία και εξακολουθούν να υπάρχουν για όσο χρονικό διάστημα έχει ορίσει ο προγραμματιστής του περιβάλλοντος, εκτός αν εξαφανιστούν νωρίτερα εξαιτίας κάποιας ενέργειας του πράκτορα. Η απόδοση ενός πράκτορα μετριέται τρέχοντας το περιβάλλον για ένα προκαθορισμένο αριθμό βημάτων και μετρώντας τον αριθμό των κενών που καταφέρνει να γεμίσει ο πράκτορας στο διάστημα αυτό. Η απόδοση του πράκτορα στη διάρκεια μιας εκτέλεσης r ορίζεται ως: # holes _ filled _in _ r u ( r ) = ˆ # holes _ appeared _in _ r Το αποτέλεσμα είναι μια απόδοση στο διάστημα [0,1], με 0=ο πράκτορας δεν κατάφερε να γεμίσει ούτε ένα κενό, και 1=ο πράκτορας κατάφερε να γεμίσει κάθε κενό που εμφανίστηκε. 53

Tileworld: ικανότητες πρακτόρων Μια σημαντική ικανότητα του πράκτορα που μπορούμε να μελετήσουμε με το περιβάλλον αυτό είναι κατά πόσο ο πράκτορας αντιδρά στις αλλαγές του περιβάλλοντος και κατά πόσο εκμεταλλεύεται τις ευκαιρίες που προκύπτουν Ας υποθέσουμε αρχική κατάσταση του περιβάλλοντος: Η Τ Α Τ Ο πράκτορας επιλέγει να κινήσει το τούβλο βόρεια προς το κενό που απέχει 3 βήματα. Ας υποθέσουμε ότι το περιβάλλον μεταβλήθηκε και εμφανίστηκε νέο κενό που απέχει μόλις ένα βήμα στα δεξιά του πράκτορα. Η Τ Α Τ Η Ο πράκτορας θα πρέπει να αλλάξει τον αρχικό του στόχο και να επιλέξει να γεμίσει το νέο κενό, αφού αυτό είναι πιο εύκολο να εκπληρωθεί.

Αναμενόμενη χρησιμότητα P(r Ag, Env) συμβολίζει την πιθανότητα η εκτέλεση r να λάβει χώρα όταν ο πράκτορας Ag λειτουργεί στο περιβάλλον Env. Ισχύει ότι: P( r r R( Ag, Env) Ag, Env) = 1 Η αναμενόμενη χρησιμότητα (expected utility) του πράκτορα Ag στο περιβάλλον Env είναι: EU ( Ag, Env) = u( r) P( r Ag, Env) r R( Ag, Env) 55

Θεωρήστε το περιβάλλον E = { e0, e1, e2, e3, e4. e5} a τ ( e 0 ) { e1, e o = 2} a τ e ) { e, e, ( 1 e o = 3 4 5 Παράδειγμα Env 1 = E, e0, τ το οποίο ορίζεται ως εξής: } Υπάρχουν δύο πράκτορες που μπορούν να λειτουργήσουν σε αυτό το περιβάλλον: Ag ( = a 1 e0 ) 2 e0 ) Ag ( = a 0 1 56

Παράδειγμα Οι πιθανότητες των εκτελέσεων ορίζονται παρακάτω: P P P P P ( e0 1 1 1 a ( e0 e2 Ag1, Env1 a0 e Ag, Env ) = 0 ) = ( e0 3 2 1 a ( e0 e4 Ag2, Env1 a1 e Ag, Env ) = 1 ) = ( e0 5 2 1 a1 e Ag, Env ) = 0,4 0,6 0,1 0,2 0,7 Θεωρήστε τη συνάρτηση χρησιμότητας u 1 η οποία ορίζεται ως εξής: u u u u u 1 1 1 1 1 a ( e e ) 1 0 0 = a ( e e2) 0 0 = a ( e e3) 0 1 = a ( e e4) 0 1 = a ( e e5) 0 1 = 8 11 70 9 10 Ποιες είναι οι αναμενόμενες χρησιμότητες των πρακτόρων για τη συνάρτηση χρησιμότητας u 1 ; 57

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

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

Ορισμός εργασιών με κατηγορήματα Θεωρούμε ότι η συνάρτηση χρησιμότητας λειτουργεί σαν κατηγόρημα πάνω σε σειρές. Μια συνάρτηση χρησιμότητας u : R R είναι κατηγόρημα αν το πεδίο τιμών της είναι το σύνολο {0, 1}, δηλαδή αν για κάθε εκτέλεση r η συνάρτηση u της αντιστοιχίζει είτε 0 (ψευδές, false) είτε 1 (αληθές, true). Μια εκτέλεση r ικανοποιεί μια ορισμένη εργασία u αν u(r)=1. 60

Περιβάλλοντα εργασίας Ένα περιβάλλον εργασίας ορίζεται ως το ζεύγος ( Env, Ψ ) όπου Env είναι ένα περιβάλλον και Ψ : R { 0, 1} είναι ένα κατηγόρημα πάνω σε εκτελέσεις. Ένα περιβάλλον εργασίας ορίζει o Τις ιδιότητες του συστήματος όπου θα λειτουργήσει ο πράκτορας o Τα κριτήρια με τα οποία ο πράκτορας θα κριθεί ότι έχει πετύχει ή αποτύχει στην εργασία του (τον ορισμό Ψ). Ορίζουμε το σύνολο των εκτελέσεων ενός πράκτορα σε ένα περιβάλλον που ικανοποιούν έναν ορισμό εργασίας: R ( Ag, Env) = { r r R( Ag, Env) και Ψ( r) = 1} Ψ Ένας πράκτορας πετυχαίνει στο περιβάλλον εργασίας (Env, Ψ) όταν: o R Ψ ( Ag,Env ) = R( Ag,Env ), δηλαδή κάθε εκτέλεση του πράκτορα ικανοποιεί το Ψ. Με άλλα λόγια, r R( Ag, Env) έχουμε Ψ( r ) = 1 (αυστηρός ορισμός). o Εναλλακτικά, θεωρούμε ότι ένας πράκτορας πετυχαίνει στο περιβάλλον εργασίας του όταν τουλαχιστον μια εκτέλεσή του ικανοποιεί το Ψ, δηλαδή r R( Ag, Env) τέτοιο ώστε Ψ( r ) = 1. 61

Η πιθανότητα της επιτυχίας P(r Ag, Env) συμβολίζει την πιθανότητα η εκτέλεση r να λάβει χώρα όταν ο πράκτορας Ag λειτουργεί στο περιβάλλον Env. Τότε η πιθανότητα P( Ψ Ag, Env ) ότι το Ψ ικανοποιείται από τον Ag στο περιβάλλον Env, δηλαδή ότι ο Ag πετυχαίνει στο περιβάλλον εργασίας (Env, Ψ), είναι: P( Ψ Ag, Env) = r R Ψ P( r ( Ag, Env) Ag, Env) 62

Είδη εργασίας Ο ορισμός εργασιών με κατηγορήματα είναι ένας αφαιρετικός τρόπος για να περιγράψουμε μερικές πολύ κοινές εργασίες που θέλουμε να εκτελούν οι πράκτορες. Τα δύο συνηθέστερα είδη εργασιών που μας ενδιαφέρουν είναι o Εργασίες εκπλήρωσης, δηλαδή αυτές που έχουν τη μορφή «εκπλήρωσε την κατάσταση περιβάλλοντος φ». o Εργασίες συντήρησης, δηλαδή αυτές που έχουν τη μορφή «διατήρησε την κατάσταση περιβάλλοντος φ». 63

Εργασίες εκπλήρωσης Μια εργασία εκπλήρωσης ορίζεται από ένα πλήθος επιθυμητών καταστάσεων περιβάλλοντος. Ο πράκτορας καλείται να επιφέρει μια από αυτές τις καταστάσεις (δεν μας ενδιαφέρει ποιά ακριβώς, όλες θεωρούνται εξίσου «καλές»). Οι εργασίες εκπλήρωσης έχουν μελετηθεί εκτενώς στην Τεχνητή Νοημοσύνη: Μια εργασία που ορίζεται με ένα κατηγόρημα Ψ είναι εργασία εκπλήρωσης αν υπάρχει υποσύνολο G των καταστάσεων περιβάλλοντος Ε τέτοιο ώστε Ψ(r)=1 όταν μια ή περισσότερες καταστάσεις του G συμβαίνουν στην εκτέλεση r. Ένας πράκτορας πετυχαίνει αν εγγυάται να επιφέρει μια από τις καταστάσεις του G, δηλαδή αν κάθε εκτέλεση του πράκτορα στο περιβάλλον του περιλαμβάνει μια από τις καταστάσεις του G. Ένα περιβάλλον εργασίας (Env, Ψ) ορίζει μια εργασία εκπλήρωσης αν και μόνο αν υπάρχει G E τέτοιο ώστε r R( Ag,Env ) ισχύει Ψ( r) = 1 e G και e r Με όρους θεωρίας παιγνίων, μπορούμε να θεωρήσουμε ότι ο πράκτορας παίζει ένα παιχνίδι με αντίπαλο το περιβάλλον του. Ο πράκτορας και το περιβάλλον ξεκινούν σε κάποια κατάσταση, ο πράκτορας εκτελεί κάποια ενέργεια και το περιβάλλον αποκρίνεται αλλάζοντας την κατάστασή του. Ο πράκτορας κερδίζει αν μπορεί να εξαναγκάσει το περιβάλλον του να βρεθεί σε μια από τις επιθυμητές καταστάσεις G. 64

Εργασίες συντήρησης Όπως μιλάμε για εργασίες εκπλήρωσης στις οποίες ο πράκτορας καλείται να επιφέρει μια κατάσταση περιβάλλοντος, έτσι μιλάμε και για εργασίες συντήρησης, στις οποίες ο πράκτορας καλείται να διατηρήσει μια κατάσταση περιβάλλοντος, ή με άλλα λόγια, να αποφύγει να επιφέρει μια νέα κατάσταση περιβάλλοντος. (Π.χ. στον έλεγχο πυρηνικού αντιδραστήρα, ένας πράκτορας μπορεί να καλείται να μην αφήσει τη θερμοκρασία να πέσει κάτω από κάποια τιμή, στους πράκτορες λογισμικού ένας πράκτορας μπορεί να καλείται να μην αφήσει ένα ανοιχτό αρχείο να ξανανοίξει κλπ). Ένα περιβάλλον εργασίας (Env,Ψ) ορίζει μια εργασία συντήρησης αν υπάρχει υποσύνολο Β των καταστάσεων περιβάλλοντος τέτοιο ώστε Ψ(r)=0 αν οποιαδήποτε κατάσταση του Β συμβαίνει στην εκτέλεση r. Το Β λέγεται σύνολο αποτυχίας. Τυπικά: το (Env,Ψ) είναι περιβάλλον εργασίας συντήρησης αν υπάρχει κάποιο B E τέτοιο ώστε: Ψ( r) = 0 e B και e r. Με όρους θεωρίας παιγνίων, ο πράκτορας κερδίζει αν καταφέρνει να αποφεύγει όλες τις καταστάσεις του Β. Το περιβάλλον στο ρόλο του αντιπάλου προσπαθεί να εξαναγκάσει τον πράκτορα να κάνει τέτοιες ενέργειες που επιφέρουν καταστάσεις του Β. 65

Σύνθεση πρακτόρων Ορίσαμε (μαθηματικά) έναν πράκτορα που θα επιτύχει σε ένα δεδομένο περιβάλλον εργασίας. Πώς όμως τον υλοποιούμε; Μια απάντηση είναι να τον υλοποιήσουμε με το χέρι με βάση τον ορισμό του. Εναλλακτικά, θα μπορούσαμε να αναπτύξουμε έναν αλγόριθμο που αυτόματα συνθέτει πράκτορες από ορισμούς περιβαλλόντων εργασίας Η σύνθεση πρακτόρων είναι ουσιαστικά αυτόματος προγραμματισμός. Θέλουμε ένα πρόγραμμα που θα δέχεται σαν είσοδο ένα περιβάλλον εργασίας και θα παράγει από αυτό αυτόματα έναν πράκτορα που πετυχαίνει σε αυτό το περιβάλλον. Ένας αλγόριθμος σύνθεσης πρακτόρων μπορεί να θεωρηθεί ως συνάρτηση από το σύνολο των περιβαλλόντων εργασίας στο σύνολο των πρακτόρων ή στο κενό σύνολο. Ένας αλγόριθμος σύνθεσης πρακτόρων είναι ορθός όταν οποτεδήποτε κατασκευάζει έναν πράκτορα αυτός πετυχαίνει στο περιβάλλον εργασίας που δίδεται ως είσοδος στον αλγόριθμο. Ένας αλγόριθμος σύνθεσης πρακτόρων είναι πλήρης όταν οποτεδήποτε υπάρχει πράκτορας που να πετυχαίνει στο περιβάλλον εργασίας που δίδεται ως είσοδος, παράγει ένα πράκτορα ως έξοδο. 66

Βιβλιογραφία Κεφάλαιο 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, 183-189, 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. 67