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

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Γραφήματα & Επίπεδα Γραφήματα
Advertisements

Κατηγορηματικός Λογισμός
Φυσική του στερεού σώματος (rigid body)
1 Δορυφορικό 2 ης ομάδας. 2 Είσαι στη μέση του μαθήματος και βλέπεις...  έναν μαθητή να βγαίνει από την αίθουσα διδασκαλίας,  δύο μαθητές να μιλούν.
Επιμέλεια: Τίκβα Χριστίνα
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
Η Γλώσσα Προγραμματισμού LOGO
ΣΧΕΔΙΑΣΜΟΣ (PLANNING)..και εφαρμογές σε video games! Τεχνητή Νοημοσύνη ΙΙ Εαρινό Εξάμηνο
ΜοντελοποίησηΈργα ΜαθήματαΑξιολόγηση Αναστοχασμος Μαθήματα.
Διαχείριση Έργου Οργάνωση, σχεδιασμός και προγραμματισμός έργων ανάπτυξης λογισμικού.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Πρώτο Αρχιτεκτονική.
Τα στοιχειώδη περί γεωδαιτικών υπολογισμών
6ο Γενικό Λύκειο Καλαμάτας Α΄ τάξη - ερευνητική εργασία Σχ
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΗΥ-566 Διαχείρηση Γνώσης στο Διαδίκτυο1 SWRC Ontology Κτιστάκης Γιώργος Μπούτσικα Κατερίνα Παπαδάκης Μύρων.
Διακριτά Μαθηματικά ΙI Δέντρα
Καλή και δημιουργική χρονιά.
Resource Description Framework
Σχεδιασμός ηλεκτρονικών υπηρεσιών μεγάλης κλίμακας και πολυπλοκότητας 24/10/2002.
Κώστας Διαμαντάρας Τμήμα Πληροφορικής ΤΕΙ Θεσσαλονίκης 2011 Συστολικοί επεξεργαστές.
Ανάλυση Λόγου (Discourse Analysis)
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Στοιχεία Διοίκησης Επιχειρήσεων
Αρχιτεκτονική Συστημάτων
Αξιολόγηση ΜοντελοποίησηΈργα ΜαθήματαΑξιολόγηση Αναστοχασμός.
© 2002 Thomson / South-Western Slide 4A-1 Κεφάλαιο 4, Μέρος A Πιθανότητες.
1 AYTOΣ Ο ΠΛΑΝΗΤΗΣ ΕΙΝΑΙ ΠΟΛΥ ΕΝΔΙΑΦΕΡΩΝ ΤΟΠΟΣ ΓΙΑ ΝΑ ΖΕΙ ΚΑΝΕΙΣ….
Μοντελοποίηση Έργα Μαθήματα Αξιολόγηση Αναστοχασμός Αναστοχασμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Σχέση Απόδοσης- Κινδύνου στα Πλαίσια της Θεωρίας Χαρτοφυλακίου
1 Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα.
ΑΠΕΙΚΟΝΙΣΗ ΕΝΝΟΙΩΝ 1. 2 Χρήστης Στόχος Ταμίας διενέργεια πώλησης διενέργεια ενοικίασης εισαγωγή ταμείου εξαγωγή ταμείου * 1 Μοντέλο Πεδίου Προβλήματος.
Αποκεντρωμένη Διοίκηση Μακεδονίας Θράκης ∆ιαχείριση έργων επίβλεψης µε σύγχρονα µέσα και επικοινωνία C2G, B2G, G2G Γενική Δ/νση Εσωτερικής Λειτουργίας.
Στοιχεία Διοίκησης Επιχειρήσεων
Η επιρροή του χώρου εργασίας των σχολικών τάξεων στη μάθηση
Βάσεις Δεδομένων II Διαχείριση Δοσοληψιών Πάνος Βασιλειάδης Σεπτέμβρης 2002
Ιόνιο Πανεπιστήμιο Τμήμα Αρχειονομίας & Βιβλιοθηκονομίας Μεταπτυχιακό Πρόγραμμα Σπουδών στην Επιστήμη της Πληροφορίας: Διοίκηση & Οργάνωση Βιβλιοθηκών.
ΑΝΑΛΥΣΗ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΩΝ ΚΑΤΑΣΤΑΣΕΩΝ ΑΡΙΘΜΟΔΕΙΚΤΕΣ ΡΕΥΣΤΟΤΗΤΑΣ
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ» Β΄ τάξης Γενικού Λυκείου
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
ΕΚΕΦΕ «Δημόκριτος» Ινστιτούτο Πληροφορικής & Τηλεπικοινωνιών Κοινωνία της Πληροφορίας & Τεχνητή Νοημοσύνη Δρ. Κωνσταντίνος Δ. Σπυρόπουλος Δντής Έρευνας.
Ο ΗΛΕΚΤΡΟΝΙΚΟΣ ΥΠΟΛΟΓΙΣΤΗΣ
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
Προφορική (Απευθείας ) Επικοινωνία
Συνδυαστικά Κυκλώματα
ΜΕΘΟΔΟΙ ΔΙΔΑΣΚΑΛΙΑΣ Δομιστική προσέγγιση (Ι)
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
Προγραμματισμός ΙΙ Διάλεξη #5: Εντολές Ανάθεσης Εντολές Συνθήκης Δρ. Νικ. Λιόλιος.
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Κληρονομικότητα.
ANAKOINWSH H 2η Ενδιάμεση Εξέταση μεταφέρεται στις αντί για , την 24 Νοεμβρίου στις αίθουσες ΧΩΔ και 110 λόγω μη-διαθεσιμότητας.
Ανάπτυξη Πρωτοτύπου Λογισμικού
Στατιστική Ι Παράδοση 9 Ο Δείκτης Συσχέτισης.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός.
31 Μαρτίου 2015 ΔΙΑΦΑΝΕΙΑ 1 ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ ΑΝΑΛΥΣΗΣ ΣΥΣΤΗΜΑΤΩΝ ΤΜ. ΠΛΗΡΟΦΟΡΙΚΗΣ Α.Π.Θ. – ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ ΚΑΤΗΓΟΡΗΜΑΤΙΚΟΣ ΛΟΓΙΣΜΟΣ Ι Για τον προτασιακό.
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Διαχείριση Συναλλαγών Πάνος Βασιλειάδης Μάρτιος 2014
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 3 Η Σημασιολογία των Γλωσσών Προγραμματισμού Προπτυχιακό.
Διαχείριση Ψηφιακών Πνευματικών Δικαιωμάτων Ηλεκτρονική Δημοσίευση Στέλλα Λάμπουρα Ιούνιος 2004.
Δομές Δεδομένων - Ισοζυγισμένα Δυαδικά Δένδρα (balanced binary trees)
3/4/2015Μαθηματικές έννοιες και Φυσικές Επιστήμες 1 ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΦΥΣΙΚΕΣ ΕΠΙΣΤΗΜΕΣ Συνάντηση 5η.
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών – Τμήμα Πληροφορικής και Τηλεπικοινωνιών 1 Κεφάλαιο 4 Σημασιολογία μιας Απλής Προστακτικής Γλώσσας Προπτυχιακό.
Βασικά στοιχεία της Java
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Επικοινωνία πρακτόρων σε MAS. Επικοινωνία μεταξύ αντικειμένων Στον αντικειμενοστραφή προγραμματισμό πώς επικοινωνούν τα αντικείμενα μεταξύ τους; Έστω.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
Μεταγράφημα παρουσίασης:

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

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

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

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

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

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

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

7 Cohen & Perrault (1979)

8 Γλώσσες επικοινωνίας πρακτόρων (Agent Communication Languages (ACLs)) •Από τις αρχές της δεκαετίας του ’90 –KQML (Knowledge, Query and Manipulation Language): ορίζει συγκεκριμένη μορφή για κάθε τύπο μηνύματος που μπορεί να χρησιμοποιήσει ένας πράκτορας για να επικοινωνήσει με άλλον. Ορίζει ουσιαστικά τα τελεστικά ρήματα, τις προϋποθέσεις και τα αποτελέσματά τους χωρίς να ασχολείται με το περιεχόμενο των μηνυμάτων. –KIF (Knowledge Interchange Format): επιτρέπει την αναπαράσταση εννοιών για συγκεκριμένους τομείς εφαρμογής. Το περιεχόμενο μηνυμάτων KQML αναπαρίσταται συχνά σε KIF.

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

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

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

12 KQML S: αποστολέας, R: παραλήπτης, C: περιεχόμενο.

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

14 Διάλογοι KQML •Άμεση επικοινωνία (ask): •Άμεση επικοινωνία (stream): Agent 1 Agent 2 tell(x) ask-about(x) Agent 1 Agent 2 ακολουθία από tell(x) stream-about(x) eos

15 Διάλογοι KQML

16 Διάλογοι KQML

17 Διάλογοι KQML •Έμμεση επικοινωνία μέσω facilitator/broker: Agent 1 Agent 2 4. tell(x) Facilitator 3. ask(x) 2. broker(ask(x)) 5. tell(x) 1. advertise(ask(x))

18 Διάλογοι KQML •Αναζήτηση πράκτορα μέσω facilitator/matchmaker: Agent 1 Agent 2 5. tell(x) Facilitator 4. ask(x) 2. recommend(ask(x)) 3. reply(x) 1. advertise(ask(x))

19 Διάλογοι KQML •Έμμεση επικοινωνία μέσω facilitator/feeder: Agent 1 Agent 2 Facilitator 1. subscribe(ask(x)) 3. tell(x) 2. tell(x)

20 Μειονεκτήματα της KQML •Το σύνολο των τελεστικών ρημάτων (τύπων μηνυμάτων) δεν ορίστηκε ποτέ αυστηρά με αποτέλεσμα πράκτορες με διαφορετικές υλοποιήσεις της γλώσσας να μην μπορούν να λειτουργήσουν μεταξύ τους. •Η σημασιολογία των KQML μηνυμάτων δεν ορίστηκε ποτέ αυστηρά, έτσι ώστε να είναι αδύνατον να εξετάσουμε αν δυο πράκτορες που επικοινωνούν με την KQML χρησιμοποιούν ‘σωστά’ τη γλώσσα. Η έννοια ενός KQML τελεστικού ρήματος αποδίδεται με τη χρήση φυσικής γλώσσας. Συνεπώς υπάρχει κίνδυνος διαφορετικοί πράκτορες να ερμηνεύσουν ένα τελεστικό ρήμα με διαφορετικό τρόπο. •Η γλώσσα δεν περιλάμβανε μηνύματα τύπου δέσμευσης (commissives), που είναι απαραίτητα για να σχηματίζουν πράκτορες συμβόλαια με βάση τα οποία να συντονίζουν τη δράση τους.

21 Οι 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 είναι ότι στην τελευταία τα τελεστικά ρήματα είναι κατηγοριοποιημένα και έχουν καλά ορισμένη σημασιολογία.

22 FIPA ACL

23 Σημασιολογία FIPA ACL •Δεδομένου ότι το πιο βασικό μειονέκτημα της KQML είναι η έλλειψη επαρκούς σημασιολογίας, οι ερευνητές που ανέπτυξαν την FIPA ACL διατύπωσαν ένα αυστηρό (μαθηματικό) ορισμό της σημασιολογίας των FIPA ACL μηνυμάτων. •Η σημασιολογία της FIPA ACL εκφράζεται με τη χρήση της γλώσσας SL, η οποία αναπαριστά τις πεποιθήσεις (beliefs), επιθυμίες (desires), και αβέβαιες πεποιθήσεις (uncertain beliefs) των πρακτόρων, καθώς και τις πράξεις που κάνουν οι πράκτορες. •Σύμφωνα με τη σημασιολογία της FIPA ACL κάθε μήνυμα αντιστοιχεί σε μία πρόταση της γλώσσας SL. Αυτή η πρόταση ορίζει μία συνθήκη σκοπιμότητας (feasibility condition) που πρέπει να ικανοποιήσει ο αποστολέας του μηνύματος για να θεωρηθεί ότι το μήνυμα είναι σύμφωνο με τους κανόνες της FIPA ACL. •Κάθε FIPA ACL μήνυμα επιπλέον αντιστοιχεί σε μία πρόταση SL η οποία ορίζει το ορθολογικό αποτέλεσμα (rational effect) του μηνύματος: σε τι αποβλέπει ο αποστολέας του μηνύματος. •Σε μία κοινωνία αυτόνομων πρακτόρων το ορθολογικό αποτέλεσμα ενός μηνύματος δεν είναι βέβαιο ότι θα πραγματοποιηθεί. (Γιατί;) Συνεπώς δεν λαμβάνεται υπόψη το ορθολογικό αποτέλεσμα όταν εξετάζουμε αν ένα μήνυμα είναι σύμφωνο με τους κανόνες της FIPA ACL.

24 Σημασιολογία FIPA ACL

25 Μειονέκτημα της FIPA ACL •Δοθέντων μίας γλώσσας επικοινωνίας πρακτόρων και ενός πράκτορα, θέλουμε να ελέγχουμε αν ο πράκτορας σέβεται τη σημασιολογία της γλώσσας όταν επικοινωνεί (semantic conformance testing). •Για να ελέγξουμε αν ένας πράκτορας σέβεται τη σημασιολογία της FIPA ACL πρέπει να ελέγξουμε τις πεποιθήσεις, επιθυμίες, στόχους κλπ. του πράκτορα. •Όμως: –Δοθέντος του κώδικα ενός πράκτορα δεν είναι πάντα ξεκάθαρο ποιες είναι οι επιθυμίες, στόχοι του κλπ. –Δεν έχουμε πάντα πρόσβαση στον κώδικα ενός πράκτορα. •Συνεπώς ο έλεγχος συμμόρφωσης με τη σημασιολογία της FIPA ACL δεν πάντα εφικτός.

26 Γλώσσες Επικοινωνίας Πρακτόρων με «Κοινωνική» Σημασιολογία •Τα τελευταία χρόνια έχει δοθεί έμφαση σε γλώσσες επικοινωνίας για «ανοικτά πολυπρακτορικά συστήματα», δηλαδή για συστήματα όπου οι πράκτορες έχουν αναπτυχθεί από οργανισμούς με αντικρουόμενα (οικονομικά) συμφέροντα, και όπου δεν υπάρχει πρόσβαση στον κώδικα των πρακτόρων. •Η FIPA ACL δεν είναι η κατάλληλη γλώσσα γι’ αυτά τα συστήματα. (Γιατ ί ;) •Για επικοινωνία σε ανοιχτά πολυπρακτορικά συστήματα έχουν αναπτυχθεί γλώσσες με «κοινωνική» σημασιολογία (social semantics), δηλαδή γλώσσες που δεν κάνουν υποθέσεις για την εσωτερική δομή ενός πράκτορα (πεποιθήσεις, επιθυμίες, κλπ.), και οι οποίες συνεπώς επιτρέπουν τον έλεγχο συμμόρφωσης ενός πράκτορα με τη σημασιολογία της γλώσσας. •Η σημασιολογία αυτών των γλωσσών εκφράζεται με έννοιες σχετικές με μία κοινωνία πρακτόρων καθοδηγούμενη από νόμους (norms), όπως θεσμοθετημένη δύναμη (institutional power), δικαίωμα (permission, right) και υποχρέωση (obligation, commitment).

27 Πρωτόκολλα Δέσμευσης •Ένα πλαίσιο επικοινωνίας με «κοινωνική» σημασιολογία είναι τα πρωτόκολλα δέσμευσης (commitment protocols). •Αυτά τα πρωτόκολλα εκφράζουν τις δεσμεύσεις/υποχρεώσεις (commitments) των πρακτόρων. •c(X, Y, P) εκφράζει ότι ο πράκτορας Χ έχει δέσμευση ως προς τον πράκτορα Υ να πραγματοποιήσει την ενέργεια P. •Ένας πράκτορας σέβεται/συμμορφώνεται με τη σημασιολογία ενός πρωτοκόλλου δέσμευσης αν ικανοποιήσει όλες τις δεσμεύσεις του. •Συνήθως τα πρωτόκολλα δέσμευσης αναπαρίστανται με τη χρήση του Λογισμού Πράξης (Event Calculus). •Ο Λογισμός Πράξης είναι μία υλοποίηση σε λογικό προγραμματισμό μίας λογικής πρώτης τάξης, η οποία εκφράζει τις ενέργειες των πρακτόρων και τα αποτελέσματα αυτών των ενεργειών.

28 Λογισμός Πράξης •Κατηγορήματα Λογισμού Πράξης –initiates ( Act, F=V, T ) σημαίνει ότι αν η πράξη Act λάβει χώρα τη χρονική στιγμή Τ τότε τη χρονική στιγμή T+1 θα ισχύει F=V –terminates ( Act, F=V, T ) σημαίνει ότι αν η πράξη Act λάβει χώρα τη χρονική στιγμή Τ τότε τη χρονική στιγμή T+1 δεν θα ισχύει F=V –holdsAt ( F=V, T ) σημαίνει ότι τη χρονική στιγμή T ισχύει F=V –initially ( F=V ) σημαίνει ότι τη χρονική στιγμή 0 ισχύει F=V –happens ( Act, T ) σημαίνει ότι η πράξη Act έλάβε χώρα τη χρονική στιγμή Τ •Ορισμοί Κατηγορημάτων Λογισμού Πράξης holdsAt ( F=V, T ) :- broken ( F=V, T1, T3 ) :- initially ( F=V ), happens ( Act, T2 ), not broken ( F=V, 0, T ).T1 ≤ T2, T2 < T3, terminates ( Act, F=V, T2 ). holdsAt ( F=V, T ) :- terminates ( Act, F=V, T ) :- happens ( Act, T' ), T' < T, initiates ( Act, F=V', T ), initiates ( Act, F=V, T' ), V ≠ V'. not broken ( F=V, T', T ).

29 Πρωτόκολλα Δέσμευσης: Παράδειγμα •Το πρωτόκολλο ηλεκτρονικού εμπορίου NetBill:

30 Το Πρωτόκολλο Δέσμευσης NetBill % C είναι ο πελάτης (consumer) και Μ είναι ο έμπορος (merchant) initiates ( sendRequest(C, M), request(C, M)= true, T ). initiates ( sendQuote(M, C), quote(M, C)= true, T ). initiates ( sendAccept(C, M), c(M, C, sendGoods)= true, T ) :- holdsAt ( quote(M, C)= true, T ). initiates ( sendAccept(C, M), quote(M, C)= false, T ) :- holdsAt ( quote(M, C)= true, T ). initiates ( sendGoods(M, C), c(C, M, sendEPO)= true, T ). initiates ( sendGoods(M, C), c(M, C, sendGoods)= false, T ). initiates ( sendEPO(C, M), c(C, M, sendEPO)= false, T ).

31 Το Πρωτόκολλο Δέσμευσης NetBill % Μία εκτέλεση του πρωτοκόλλου δέσμευσης NetBill happens ( sendQuote(M, C), 4 ). happens ( sendAccept(C, M), 11 ). happens ( sendGoods(M, C), 12 ). happens ( sendEPO(C, M), 19 ). % Ποιες είναι οι δεσμεύσεις κάθε πράκτορα σε κάθε χρονική στιγμή; % Μία άλλη εκτέλεση του πρωτοκόλλου δέσμευσης NetBill happens ( sendRequest(C, M), 3 ). happens ( sendAccept(C, M), 14 ). happens ( sendGoods(M, C), 22 ). happens ( sendEPO(C, M), 190 ). % Υπάρχει κάποιος πράκτορας που δεν σέβεται την σημασιολογία του πρωτοκόλλου;

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

Βιβλιογραφία •Κεφάλαιο 8 ο από το βιβλίο του Wooldridge. •Θεωρία πράξεων λόγου J. L. Austin, How to Do Things with Words, Oxford University Press, J. R. Searle, Speech Acts: an Essay in the Philosophy of Language, Cambridge University Press, •Θεωρία πράξεων λόγου βασισμένη σε σχέδια δράσης P. R. Cohen & C. R. Perrault, Elements of a Plan Based Theory of Speech Acts, Cognitive Science, vol.3, 177—212, •KIF •KQML •FIPA •Γλώσσες επικοινωνίας πρακτόρων με κοινωνική σημασιολογία Singh, M.P., Agent communication languages: rethinking the principles, Computer, vol.31, no.12, 40-47, Singh, M.P., A social semantics for Agent communication languages, Issues in Agent Communication, 31—45, Springer, Artikis A., Pitt J. and Sergot M. Animated Specifications of Computational Societies, in the Proceedings of Autonomous Agents and Multi-Agent Systems (AAMAS), pp , 2002.