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

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

Επικοινωνία πρακτόρων σε MAS. Επικοινωνία μεταξύ αντικειμένων Στον αντικειμενοστραφή προγραμματισμό πώς επικοινωνούν τα αντικείμενα μεταξύ τους; Έστω.

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


Παρουσίαση με θέμα: "Επικοινωνία πρακτόρων σε MAS. Επικοινωνία μεταξύ αντικειμένων Στον αντικειμενοστραφή προγραμματισμό πώς επικοινωνούν τα αντικείμενα μεταξύ τους; Έστω."— Μεταγράφημα παρουσίασης:

1 Επικοινωνία πρακτόρων σε MAS

2 Επικοινωνία μεταξύ αντικειμένων Στον αντικειμενοστραφή προγραμματισμό πώς επικοινωνούν τα αντικείμενα μεταξύ τους; Έστω ότι έχουμε δύο αντικείμενα JAVA, ο1 και ο2, και έστω ότι το ο1 έχει μια δημόσια μέθοδο μ1. Το αντικείμενο ο2 επικοινωνεί με το αντικείμενο ο1 ενεργοποιώντας τη μέθοδο μ1. Δηλαδή το ο2 εκτελεί μια εντολή που μοιάζει με ο1.μ1(...) όπου «...» είναι το περιεχόμενο (οι παράμετροι) που θέλει το ο2 να επικοινωνήσει στο ο1. Στον αντικειμενοστραφή προγραμματισμό το ο1 δεν ελέγχει την εκτέλεση ή όχι της μεθόδου του μ1. Η απόφαση για το αν αυτή η μέθοδος του ο1 θα εκτελεστεί ή όχι εναπόκειται στο αντικείμενο 02.

3 Επικοινωνία μεταξύ πρακτόρων Έστω ότι έχουμε δύο πράκτορες π1 και π2 και ο π1 έχει την ικανότητα (έχει στο ρεπερτόριό του) να εκτελέσει την ενέργεια α (αυτή χαλαρά αντιστοιχεί σε μέθοδο με αντικειμενοστραφείς όρους). Δεν μπορεί ο πράκτορας π2 να ενεργοποιήσει την ενέργεια α του πράκτορα π1 γιατί ο π1 είναι αυτόνομος: εκείνος ελέγχει τόσο την κατάσταση όσο και τη συμπεριφορά του. Το πολύ-πολύ ο π2 να ζητήσει από τον π1 να εκτελέσει την ενέργεια α. Δεν είναι βέβαια σίγουρο ότι ο π1 θα ανταποκριθεί θετικά σε τέτοια αίτηση: μπορεί η εκτέλεση της α να μην εξυπηρετεί τα δικά του συμφέροντα. Γενικά οι πράκτορες δεν μπορούν να εξαναγκάσουν άλλους πράκτορες να εκτελέσουν ενέργειες ή να γράψουν δεδομένα στην εσωτερική τους κατάσταση. Μπορούν όμως να εκτελέσουν ενέργειες επικοινωνιακές, με την ελπίδα ότι θα επηρρεάσουν άλλους πράκτορες να κάνουν αυτό που τους ζητούν.

4 Επικοινωνιακές ενέργειες: Speech Acts Η θεωρία πράξεων λόγου βλέπει την επικοινωνία σαν δράση: ό,τι λέει ένας πράκτορας θεωρείται πως είναι μια επικοινωνιακή ενέργεια κάποιου τύπου. Τα θεμέλια της θεωρίας πράξεων λόγου τέθηκαν από το φιλόσοφο John Austin (1962). Αυτός πρώτος παρατήρησε ότι μερικές εκφράσεις λόγου μπορούν να θεωρηθούν ενέργειες, γιατί αλλάζουν την κατάσταση του κόσμου, κατά τρόπο ανάλογο με τις φυσικές ενέργειες. Πώς μπορεί μια έκφραση να αλλάξει τον κόσμο; –Η έκφραση «και τώρα σας ονομάζω συζύγους» όταν ειπωθεί από τον κατάλληλο άνθρωπο στις κατάλληλες περιστάσεις αλλάζει τον κόσμο (πώς;) –Η έκφραση «αποβάλλεσαι» όταν ειπωθεί από το διαιτητή στη διάρκεια ενός αγώνα ποδοσφαίρου αλλάζει τον κόσμο (πώς;) –Η έκφραση «σήμερα είναι Τρίτη» όταν ειπωθεί προς κάποιον ο οποίος δεν γνωρίζει τι μέρα είναι του αλλάζει την κατάσταση.

5 Θεωρία πράξεων λόγου (Austin 1962) Υπάρχουν μια σειρά από τελεστικά ρήματα, που αντιστοιχούν σε διαφορετικά είδη πράξεων λόγου, π.χ αιτούμαι, πληροφορώ, υπόσχομαι, κλπ. Κάθε έκφραση έχει τρείς όψεις. Π.χ η έκφραση «φέρε μου σε παρακαλώ έναν καφέ» –Την ενέργεια του να λέει κανείς την έκφραση «φέρε μου σε παρακαλώ έναν καφέ». –Την πράξη λόγου στην οποία αντιστοιχεί αυτή η έκφραση: πρόκειται για μια αίτηση για καφέ. –Το αποτέλεσμα της πράξης λόγου (φέρνω καφέ σ’αυτόν που μου το ζήτησε). Κάθε έκφραση έχει μοναδική πράξη λόγου στην οποία αντιστοιχεί αλλά πολλές πιθανές λεκτικές ενέργειες.

6 Θεωρία πράξεων λόγου: Searle (1969) O John Searle επέκτεινε και συστηματοποίησε τη δουλειά του Austin και πρότεινε μια κατηγοριοποίηση των δυνατών τύπων πράξεων λόγου: –Αντιπροσωπευτικές (representatives): οι πράξεις λόγου που δεσμεύουν τον ομιλητή στην αλήθεια του περιεχομένου τους. Εκφράζονται με τελεστικό ρήμα inform. Π.χ «σήμερα είναι Τρίτη», «βρέχει στο Βόλο τώρα» –Εντολές (directives): οι πράξεις λόγου με τις οποίες ο ομιλητής προσπαθεί να πείσει τον ακροατή να κάνει κάτι. Εκφράζονται με τελεστικό ρήμα request. Π.χ «φέρε μου έναν καφέ», «δώσε μου χρήματα», «κάνε την εργασία αυτή» –Δεσμευτικές (commissives): οι πράξεις λόγου που δεσμεύουν τον ομιλητή σε συγκεκριμένες ενέργειες. Εκφράζονται με τελεστικό ρήμα promise. Π.χ. «θα σου φέρω έναν καφέ», «θα φροντίσω εγώ τα παιδιά», «θα καθαρίσω εγώ το γραφείο» –Εκφραστικές (expressives): οι πράξεις λόγου που εκφράζουν την ψυχολογική κατάσταση του ομιλητή. Π.χ «ευχαριστώ!», «σου είμαι ευγνώμων», «με στεναχώρησες». –Δηλωτικές (declarations): οι πράξεις λόγου που δημιουργούν ή αλλάζουν θεσμικές καταστάσεις. Εκφράζονται με τελεστικό ρήμα declare. Π.χ. «κυρήσσω πόλεμο», «παντρεύεται ο δούλος του Θεού....», «αποβάλλεσαι από το παιχνίδι»

7 Η βασισμένη σε σχέδια δράσης θεωρία πράξεων λόγου Στα τέλη της δεκαετίας του ’60, και αρχές του ’70, διάφοροι ερευνητές προσπάθησαν να κατασκευάσουν συστήματα που θα κατασκεύαζαν σχέδια δράσης αυτόνομα, προκειμένου να πετύχουν τους στόχους τους. Οι Cohen & Perrault (1979) αναπαρέστησαν τις πράξεις λόγου σαν τελεστές όπως αναπαρίστανται και οι υπόλοιπες ενέργειες που έχει διαθέσιμες στο ρεπερτόριό του ένας πράκτορας, δηλαδή μέσω των προϋποθέσεων και των αποτελεσμάτων τους. Χρησιμοποίησαν το συμβολισμό του STRIPS μαζί με πρόσθετους τελεστές για να εκφράσουν τις πεποιθήσεις, τις ικανότητες και τις επιθυμίες των πρακτόρων.

8 Cohen & Perrault (1979)

9 Γλώσσες επικοινωνίας πρακτόρων (ACLs) Από τις αρχές της δεκαετίας του ’90 –KQML (knowledge, query and manipulation language): ορίζει συγκεκριμένη μορφή για κάθε τύπο μηνύματος που μπορεί να χρησιμοποιήσει ένας πράκτορας για να επικοινωνήσει με άλλον. Ορίζει ουσιαστικά τα τελεστικά ρήματα και τις προϋποθέσεις και τα αποτελέσματά τους χωρίς να ασχολείται με το περιεχόμενο των μηνυμάτων. –KIF (knowledge interchange format): επιτρέπει την αναπαράσταση εννοιών για συγκεκριμένους τομείς εφαρμογής. Το περιεχόμενο μηνυμάτων KQML αναπαρίσταται σε KIF.

10 KIF (Genesereth & Fikes 1992) (1) Αναπτύχθηκε με το σκοπό να αποτελέσει την κοινή γλώσσα στην οποία θα μπορούσαν να εκφραστούν ιδιότητες ενός τομέα εφαρμογής. Σκοπός δηλαδή ήταν να αναπαρίσταται έτσι το περιεχόμενο μηνυμάτων, όχι τα ίδια τα μηνύματα. Είναι βασισμένο στην κατηγορηματική λογική πρώτης τάξης και σημειογραφικά μοιάζει πολύ με LISP. Πράκτορες μπορούν να εκφράσουν σε αυτό –Ιδιότητες οντοτήτων ενός τομέα π.χ ο Γιώργος είναι χορτοφάγος, ο Βαγγέλης είναι ψηλός –Σχέσεις μεταξύ οντοτήτων ενός τομέα π.χ ο Γιώργος και η Μαρία είναι παντρεμένοι, η απόσταση από την Αθήνα στην Πάτρα είναι 200 χλμ. –Γενικές ιδιότητες ενός τομέα π.χ όλοι έχουν μια μητέρα, όποιος έχει παιδί είναι γονιός

11 KIF (2) Το λεξιλόγιο είναι βασισμένο σε αυτό της κατηγορηματικής λογικής πρώτης τάξης: –Λογικά συνδετικά and, or, not κλπ. –Ποσοδείκτες forall, exists –Βασικό λεξιλόγιο αντικειμένων: αριθμοί, χαρακτήρες και strings –Βασικές σχέσεις μεταξύ αντικειμένων: < μεταξύ αριθμών, +, * κλπ Παράδειγμα «η θερμοκρασία είναι 83 κελσίου» (=temperature m1) (scalar 83 celsius)) Παράδειγμα: ορισμός της ιδιότητας «εργένης» με βάση υπάρχουσες ιδιότητες: (defrelation bachelor(?x):= (and (man ?x) (not (married ?x))))

12 KQML (1) Γλώσσα επικοινωνίας πρακτόρων, βασισμένη σε μηνύματα. Κάθε KQML μήνυμα μπορεί να ειδωθεί σαν αντικείμενο (σε όρους αντικειμενοστραφούς προγραμματισμού) που έχει –Ένα τελεστικό ρήμα που προσδιορίζει τον τύπο του (την κλάση του) –Ένα σύνολο από παραμέτρους που παίρνουν τιμές. Παράδειγμα μηνύματος στο οποίο ο αποστολέας ρωτά την τιμή της μετοχής της IBM. Κάθε τύπος μηνύματος έχει διαφορετικές παραμέτρους, εδώ φαίνονται οι παράμετροι για τον τύπο μηνύματος ask-one. (ask-one :content(Price IBM ?price) :receiver stock-server :language LPROLOG :ontology NYSE-TICKS )

13 KQML (2)

14 KQML (3) Η ιδέα είναι ότι οι πράκτορες που χρησιμοποιούν KQML για να επικοινωνήσουν μπορεί να έχουν υλοποιηθεί με διαφορετικές γλώσσες προγραμματισμού και διαφορετικά μοντέλα προγραμματισμού. Όποια πληροφορία έχουν εσωτερικά στη διάθεσή τους οι πράκτορες μπορεί να αναπαρασταθεί με οποιοδήποτε τρόπο για τον καθένα. Η ιδεατή βάση γνώσης κάθε πράκτορα είναι ένας τρόπος για να αναφέρεται ένας πράκτορας στη γνώση που θεωρεί ότι έχει κάποιος άλλος, χωρίς να ξέρει τον τρόπο αναπαράστασής της.

15 Μειονεκτήματα της KQML Το σύνολο των τελεστικών ρημάτων (τύπων μηνυμάτων) δεν ορίστηκε ποτέ αυστηρά με αποτέλεσμα διαφορετικές υλοποιήσεις της γλώσσας να μην μπορούν να δια-λειτουργήσουν. Δεν ορίστηκαν αυστηρά μηχανισμοί μετάδοσης μηνυμάτων με αποτέλεσμα να μην μπορούν να δια-λειτουργήσουν πράκτορες που χρησιμοποιούν διαφορετικές υλοποιήσεις της γλώσσας. Η γλώσσα δεν περιλάμβανε μηνύματα τύπου δέσμευσης, που είναι απαραίτητα για να σχηματίζουν πράκτορες συμβόλαια με βάση τα οποία να συντονίζουν τη δράση τους.

16 Οι ACLs της FIPA Το 1995 η FIPA (Foundation for Intelligent Physical Agents) άρχισε να αναπτύσσει πρότυπα για γλώσσες επικοινωνίας πρακτόρων και κατέληξε με μια γλώσσα το 1999, την FIPA ACL, που μοιάζει πολύ στην KQML. (inform :sender agent1 :receiver agent2 :content(price good2 150) :languagesl :ontology hpl-auction ) Η βασική διαφορά μεταξύ της KQML και της FIPA ACL είναι ότι στην τελευταία τα τελεστικά ρήματα είναι κατηγοριοποιημένα και έχουν καλά ορισμένη σημασία.

17 FIPA ACL τελεστικά ρήματα

18 FIPA ACL παράδειγμα ορισμού τελεστικών ρημάτων

19 Οντολογίες για επικοινωνία μεταξύ πρακτόρων Όταν δύο πράκτορες επικοινωνούν στα πλαίσια κάποιας συγκεκριμένης εφαρμογής θα πρέπει και οι δύο να συμφωνήσουν για την ορολογία που θα χρησιμοποιήσουν όταν θα περιγράφουν πλευρές του τομέα εφαρμογής. Παράδειγμα: δύο πράκτορες θα επικοινωνήσουν για την αγοραπωλησία κάποιων μηχανικών εξαρτημάτων π.χ βίδες. Πρέπει και οι δύο να μπορούν να συζητούν χωρίς ασάφεια για ιδιότητες όπως «μέγεθος» και για μονάδες μέτρησής τους, όπως «εκατοστά» ή «ίντσες». Μια οντολογία είναι ουσιαστικά μια ορολογία για ένα τομέα εφαρμογή: είναι η τυπική αναπαράσταση κάποιας γνώσης που γίνεται ορίζοντας μια ιεραρχία από κλάσεις/υποκλάσεις και σχέσεις μεταξύ τους. Οντολογίες μπορούν να ορίζονται σε διάφορες γλώσσες, π.χ KIF. H Ontolingua πλατφόρμα είναι η πλέον γνωστή για την ανάπτυξη οντολογιών και λειτουργεί με αναπαραστάσεις σε KIF. Άλλες γλώσσες έκφρασης οντολογιών: XML, DAML


Κατέβασμα ppt "Επικοινωνία πρακτόρων σε MAS. Επικοινωνία μεταξύ αντικειμένων Στον αντικειμενοστραφή προγραμματισμό πώς επικοινωνούν τα αντικείμενα μεταξύ τους; Έστω."

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


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