ΚΕΦΑΛΑΙΟ 6 - Νοήμονες Πράκτορες
Σύνοψη
Οι νοήμονες (ή ευφυείς) πράκτορες αποτελούν σύγχρονα συστήματα Τεχνητής Νοημοσύνης στα οποία δυνητικά μπορούν να χρησιμοποιηθούν επιλεκτικά και σε συνδυασμό μέθοδοι αναπαράστασης γνώσης και επίλυσης προβλημάτων με τεχνολογίες που παρουσιάστηκαν στα προηγούμενα κεφάλαια. Με αυτό ως γνώμονα παρουσιάζονται οι διαφορετικές βασικές αφηρημένες αρχιτεκτονικές των νοημόνων πρακτόρων, γίνεται αναφορά στα πολυπρακτορικά συστήματα και παρουσιάζονται εφαρμογές τους.
Προαπαιτούμενη γνώση
Επίλυση Προβλημάτων, Αναπαράσταση Γνώσης, Έμπειρα Συστήματα, Μηχανική μάθηση.
6.1 Εισαγωγικά
Η εμφάνιση των πρακτόρων (agents) και ειδικότερα των ευφυών πρακτόρων (intelligent agents) στον κλάδο της ΤΝ και, γενικότερα, στην περιοχή της Επιστήμης των Υπολογιστών υπόσχεται ριζικές αλλαγές στην επικοινωνία μεταξύ χρήστη και λογισμικού στο σημερινό διασυνδεδεμένο και δικτυωμένο ψηφιακό κόσμο. Ήδη, γίνεται αισθητή η παρουσία τους σε πληθώρα εφαρμογών, όπως είναι η αναζήτηση και το φιλτράρισμα των πληροφοριών στο διαδίκτυο, η παροχή έξυπνων υπηρεσιών βοήθειας και εξυπηρέτησης πελατών, καθώς και ο έλεγχος σωστής λειτουργίας μεγάλων εργοστασιακών μονάδων.
Σχήμα 6.1 Διασύνδεση χρήστη-προγράμματος μέσω πράκτορα
Η έννοια του όρου πράκτορας παραπέμπει στο πρόσωπο το οποίο ενεργεί εκ μέρους ενός άλλου προσώπου, δηλαδή σε αυτό που καλούμε αντιπρόσωπο, εναλλακτικά πράκτορα ή μεσάζοντα. Γενικότερα, η χρήση του όρου αντιπρόσωπος δεν είναι δόκιμη, δεδομένου ότι ένας αντιπρόσωπος απλώς φέρει εις πέρας ένα πλήθος εντολών. Αντίθετα, ένας πράκτορας είναι σε θέση να εκπληρώσει ένα πλήθος στόχων με την ελάχιστη δυνατή εμπλοκή του χρήστη.
Έχει αποδειχθεί ιδιαίτερα δύσκολο το να δοθεί ένας αυστηρός ορισμός για τον όρο πράκτορας λόγω του ότι ορισμένα από τα χαρακτηριστικά του έχουν τελείως διαφορετική σημασία και βαρύτητα στους διαφορετικούς επιστημονικούς κλάδους που ερευνούν το αντικείμενο. Σε μία, όσο γίνεται, γενικότερη θεώρηση, ένας πράκτορας είναι μία οντότητα που αντιλαμβάνεται το περιβάλλον μέσα στο οποίο βρίσκεται με τη βοήθεια αισθητήρων (sensors), αποτελεί μέρος του περιβάλλοντος αυτού, κάνει συλλογισμούς και δρα σε αυτό με τη βοήθεια μηχανισμών δράσης (effectors) για την επίτευξη δεδομένων στόχων εκ μέρους του χρήστη ή κάποιας άλλης οντότητας λογισμικού που πρέπει να διαθέτει κάποιο βαθμό αυτονομίας (Russel & Norvig, 2009).
Σχήμα 6.2 Βασικός Πράκτορας κατά Russel και Norvig
Αν και δεν είναι εφικτό να δοθεί, όπως προείπαμε, ένας ενιαίος ορισμός για όλα τα είδη πρακτόρων, δεδομένου ότι διαφέρουν μεταξύ τους στον τρόπο λειτουργίας τους και το επιστημονικό πεδίο στο πλαίσιο του οποίου καλούνται να λειτουργήσουν, ο παραπάνω βασικός ορισμός κατά Russel και Norvig αποτελεί κοινό τους παρανομαστή.
Ο βασικός αυτός ορισμός περιγράφει έναν άνθρωπο, ένα ρομπότ, ένα πρόγραμμα υπολογιστή ή και έναν απλό αισθητήρα. Η περίπτωση του αισθητήρα, π.χ. σε ένα σύστημα θερμοστάτη, είναι το απλούστερο παράδειγμα που μπορεί να δοθεί για έναν πράκτορα χωρίς ευφυΐα, δεδομένου ότι είναι ενσωματωμένος σε ένα φυσικό περιβάλλον και παράγει εξόδους του τύπου «άνοιξε τη βαλβίδα»-«κλείσε τη βαλβίδα». Φυσικά, ένα πιο πολύπλοκο σύστημα αυτοματισμού θα μπορούσε να αναλύει τα δεδομένα που δέχεται ο θερμοστάτης για τη θερμοκρασία του, για να δει το βαθμό συμμετοχής τους στα ασαφή σύνολα της έννοιας «θερμοκρασία» και να λαμβάνει αποφάσεις για το άνοιγμα της βαλβίδας με βάση την ασαφή λογική και λαμβάνοντας επιπλέον υπόψη την αβεβαιότητα που πιθανώς υπάρχει στην ακρίβεια των μετρήσεων. Οι ‘δαίμονες’ λογισμικού που επιτηρούν το περιβάλλον ενός λογισμικού και επεμβαίνουν στη λειτουργία του, για να επιφέρουν μεταβολές, όταν το κρίνουν σκόπιμο, μπορούν να θεωρηθούν πράκτορες. Ελεγκτές εναέριας κυκλοφορίας, συστήματα που παρακολουθούν το ηλεκτρονικό σας ταχυδρομείο και σας ειδοποιούν, όταν υπάρχει νέο μήνυμα, κ.ά μπορούν να θεωρηθούν πράκτορες.
Συνοπτικά,
ένας πράκτορας αντιλαμβάνεται το περιβάλλον του (μέσω φυσικών αισθητήρων ή αισθητήρων λογισμικού) και δρα, για να το αλλάξει βάσει των στόχων για τους οποίους έχει σχεδιαστεί.
Στη συνέχεια, ακολουθεί μια ανασκόπηση μερικών από τους πολλούς τρόπους με τους οποίους ο όρος «πράκτορας» έχει χρησιμοποιηθεί στο πλαίσιο των αυτόνομων πρακτόρων διακρίνοντάς τους σαφώς από ένα πρόγραμμα. Αυτή η ανασκόπηση θα οδηγήσει σε μια προτεινόμενη ταξινόμηση για τους αυτόνομους πράκτορες.
6.2 Ορισμοί πρακτόρων
Στην εισαγωγή δόθηκε ο βασικός ορισμός των Russel και Norvig (2009) που δίνει έμφαση στην αλληλεπίδραση πρακτόρων με το περιβάλλον τους. Παρά ταύτα, υπάρχει ένα πλήθος ορισμών οι οποίοι προσπαθούν να καλύψουν τον τομέα των πρακτόρων, ο καθένας από διαφορετική σκοπιά. Στην παράγραφο αυτή επιχειρούμε να παρουσιάσουμε το εύρος των ορισμών για τους πράκτορες που συναντώνται συχνά στη βιβλιογραφία, παραθέτοντας τρεις χαρακτηριστικούς από αυτούς.
Η Pattie Maes, του Media Lab στο MIT, είναι από τους πρωτοπόρους της έρευνας στο χώρο των πρακτόρων. Στον ορισμό της για το τι είναι πράκτορας προσθέτει ένα κρίσιμο χαρακτηριστικό: οι πράκτορες πρέπει να δρουν αυτόνομα, ώστε να «συνειδητοποιούν ένα σύνολο στόχων». Το μοντέλο πρακτόρων Maes (Maes, 1995), εκτός της αυτονομίας και της ύπαρξης στόχων, δίνει έμφαση και στο ότι το περιβάλλον είναι πολύπλοκο και πιθανώς δυναμικό:
«Οι πράκτορες είναι υπολογιστικά συστήματα που δρουν σε ένα πολύπλοκο περιβάλλον, αντιλαμβάνονται και δρουν αυτόνομα σε αυτό. Με τον τρόπο αυτό επιτυγχάνουν ένα σύνολο από στόχους και εκτελούν καθήκοντα για τα οποία έχουν σχεδιαστεί.»
Σχήμα 6.3 Ο βασικός πράκτορας κατά Maes
Στην περίπτωση κατά την οποία αναφερόμαστε σε ευφυείς πράκτορες, ένας ορισμός που ανταποκρίνεται στα χαρακτηριστικά τους είναι το μοντέλο Hayes-Roth (Hayes-Roth, 1995), που δίνει έμφαση στη συλλογιστική:
«Οι ευφυείς πράκτορες συνεχώς εκτελούν τρεις λειτουργίες: αντιλαμβάνονται τις δυναμικές συνθήκες του περιβάλλοντος, δρουν στο περιβάλλον, ώστε να το αλλάξουν, και συλλογίζονται, ώστε να ερμηνεύσουν αυτά που αντιλαμβάνονται, να λύσουν προβλήματα, να εξάγουν συμπεράσματα, για να καθορίσουν τη δράση τους.»
Σχήμα 6.4 Ο βασικός πράκτορας κατά Hayes - Roth
Τέλος, ο SodaBot είναι ένα περιβάλλον ανάπτυξης για πράκτορα λογισμικού που κατασκευάστηκε στο MIT AI Lab από τον Michael Coen το 1994. Ο Coen στο μοντέλο του δίνει έμφαση στη διαδραστικότητα (interactivity):
«Οι λογισμικοί πράκτορες είναι προγράμματα που διενεργούν διάλογο, διαπραγματεύονται και συντονίζουν τη ροή πληροφοριών.»
Σχήμα 6.5 Ο βασικός πράκτορας κατά Coen
6.3 Κοινά Χαρακτηριστικά Πρακτόρων
Βασικό κοινό χαρακτηριστικό των πρακτόρων είναι η αυτονομία τους. Ως αυτόνομες οντότητες ελέγχουν τις καταστάσεις και τις συμπεριφορές τους, χωρίς να κατευθύνονται εξωγενώς βήμα προς βήμα. Άλλα κοινά χαρακτηριστικά που διαθέτουν είναι η κοινωνικότητα και η δυνατότητα συνεργασίας με άλλους πράκτορες:
- Αυτονομία (autonomy): Οι πράκτορες ενεργούν αυτόνομα χωρίς άμεση παρέμβαση από χρήστες ή άλλους πράκτορες, με πλήρη έλεγχο των πράξεών τους (αυτοέλεγχο) και της εσωτερικής τους κατάστασης.
- Κοινωνικότητα (social ability): Οι πράκτορες αλληλεπιδρούν με τους χρήστες για την επίτευξη των στόχων τους και με άλλους πράκτορες μέσω μίας κοινά κατανοητής γλώσσας. Έτσι επιτυγχάνεται επικοινωνία μεταξύ των πρακτόρων για την ολοκλήρωση των ανεξάρτητων στόχων του καθενός ξεχωριστά και ενός κοινού στόχου με συνεργασία μεταξύ τους .
- Ορθολογικότητα (rationality): Αφορά την υπόθεση ότι ένας πράκτορας θα κάνει πάντα το σωστό, δηλαδή θα δρα καταλλήλως για την εκπλήρωση των στόχων του και όχι με τρόπο ο οποίος αποτρέπει την επίτευξή τους.
Οι ευφυείς πράκτορες διαθέτουν επιπλέον χαρακτηριστικά που αφορούν το βαθμό νοημοσύνης που διαθέτουν, όπως:
- Αντιδραστικότητα (reactiveness): Αφορά τον τρόπο με τον οποίο αντιλαμβάνονται το περιβάλλον και ανταποκρίνονται σε τυχόν αλλαγές του εντός συγκεκριμένων χρονικών πλαισίων .
- Προνοητικότητα (pro-activeness): Οι πράκτορες δεν ανταποκρίνονται απλώς στις αλλαγές του περιβάλλοντός τους, αλλά είναι ικανοί να συμπεριφερθούν κατάλληλα σε αυτές τις αλλαγές ορίζοντας επιμέρους στόχους (δηλαδή, αναλαμβάνουν πρωτοβουλία).
- Γνώση (knowledge): Συγκεντρωμένη γνώση σχετική με τον τρόπο με τον οποίο λειτουργεί το περιβάλλον στο οποίο δρα έκαστος πράκτορας, η οποία έχει κατάλληλα αναπαρασταθεί, για να υποστηρίζει τη λήψη αποφάσεων.
- Πεποιθήσεις (beliefs): Αποτελούν την άποψη (view) του πράκτορα για το περιβάλλον του μια δεδομένη χρονική στιγμή, η οποία άποψη ενδέχεται να είναι εσφαλμένη.
- Επιθυμίες (desires): Αφορούν την κρίση του πράκτορα για τις μελλοντικές καταστάσεις του περιβάλλοντός του, όπως, για παράδειγμα, αν μια μελλοντική κατάσταση είναι επιθυμητή ή όχι. Παρά ταύτα, δεν εξετάζεται αν μία επιθυμία του πράκτορα είναι εφικτή ή συγκρούεται με κάποια άλλη.
- Προθέσεις (intentions): Οι προθέσεις είναι υποσύνολο των στόχων, τους οποίους ο πράκτορας προσπαθεί να επιτύχει τη δεδομένη χρονική στιγμή. Δεδομένου ότι δεν είναι δυνατή η ταυτόχρονη επίτευξη όλων των στόχων, επιλέγεται ένα υποσύνολό τους, βάσει ορισμένων κριτηρίων ιεράρχησης.
- Υποχρεώσεις (obligations): Αφορούν την υποχρέωση του πράκτορα να υπακούει σε ένα σύνολο κανόνων και να δρα σε ένα γενικότερο πλαίσιο, ώστε να επιτύχει το σκοπό για τον οποίο σχεδιάστηκε.
- Προσαρμοστικότητα (adaptivity): Ο πράκτορας προσαρμόζεται στο περιβάλλον του (ικανότητα μάθησης).
Εκτός των χαρακτηριστικών που προαναφέρθηκαν υπάρχουν και επιπλέον χαρακτηριστικά που απαντούν σε συγκεκριμένες κατηγορίες πρακτόρων προσφέροντας μια «ανθρωπόμορφη αρχιτεκτονική» λογισμικού, που επιτρέπει:
- Κινητικότητα (mobility): Είναι η ικανότητα ενός πράκτορα να μετακινείται ελεύθερα σε ένα φυσικό χώρο ή σε ένα δίκτυο.
- Συνεργασία (cooperation) μεταξύ πρακτόρων που βασίζεται σε :
- Φιλαλήθεια (veracity): Οι πράκτορες δε δίνουν εσκεμμένα λάθος πληροφορίες.
- Αγαθή προαίρεση (benevolence): Ο κάθε πράκτορας προσπαθεί να επιτύχει τους δικούς του στόχους, οι οποίοι βρίσκονται σε αρμονία με τους στόχους των υπολοίπων πρακτόρων του συστήματος.
Τα χαρακτηριστικά των πρακτόρων μπορούν να ομαδοποιηθούν σε τρεις άξονες:
- χαρακτηριστικά που αφορούν γενικά τη συνεργασία των πρακτόρων με τις γύρω τους οντότητες,
- χαρακτηριστικά που αφορούν την κινητικότητά τους,
- χαρακτηριστικά που αφορούν το βαθμό νοημοσύνης τους (βλέπε Σχήμα 6.3).
Σχήμα 6.6 Άξονες χαρακτηριστικών πρακτόρων
Στο παραπάνω σχήμα, ο άξονας της συνεργασίας αφορά χαρακτηριστικά αλληλεπίδρασης του πράκτορα με το χρήστη, καθώς και συνεργασία του με άλλους πράκτορες, όταν ανήκει σε ένα πολυ-πρακτορικό σύστημα. Ο άξονας της κινητικότητας αφορά χαρακτηριστικά είτε ρομποτικών πρακτόρων που μετακινούνται, για να δράσουν επιτόπου, είτε λογισμικών που δρουν εξ αποστάσεως. Τέλος, ο άξονας της νοημοσύνης αφορά χαρακτηριστικά που πρέπει να διαθέτει επιπλέον ένας ευφυής πράκτορας, ώστε να είναι ικανός να μαθαίνει, να οργανώνει τις ενέργειές του και να συλλογίζεται, για να αντιδρά «έξυπνα» σε ερεθίσματα που δέχεται.
6.4 Κατηγορίες Πρακτόρων
Παρόλο που οι ευφυείς πράκτορες είναι κατά κάποιον τρόπο νέες εφαρμογές στο χώρο των υπολογιστικών περιβαλλόντων, εμπορικών ή μη, έχουν αποτελέσει αντικείμενο έρευνας από χρόνια. Κατά τη διάρκεια των χρόνων αυτών έχουν προταθεί αρκετές διαφορετικές κατηγοριοποιήσεις με βάση τους τρεις άξονες των χαρακτηριστικών που προαναφέρθηκαν. Μία από αυτές παρουσιάζεται στο σχήμα που ακολουθεί:
Σχήμα 6.7 Ιεραρχική ταξινόμηση πρακτόρων
Σύμφωνα με την παραπάνω κατηγοριοποίηση, οι ευφυείς πράκτορες χωρίζονται αρχικά σε δυο βασικές κατηγορίες, τους βιολογικούς και τους τεχνητούς.
Οι βιολογικοί πράκτορες (biological agents) χρησιμοποιούν τις αισθήσεις τους, για να αντιληφθούν το γύρω κόσμο, τις γνώσεις τους, για να συναγάγουν συμπεράσματα γι’ αυτόν, και τα μέρη του σώματός τους, για να εκτελέσουν τις ενέργειες που προκύπτουν από τη συλλογιστική τους.
Οι τεχνητοί πράκτορες (artificial agents) λειτουργούν με παρόμοιο τρόπο και χωρίζονται σε δύο υποκατηγορίες, τους ρομποτικούς και τους υπολογιστικούς πράκτορες.
Οι ρομποτικοί πράκτορες (robotic agents ή robots) έχουν ως αισθητήρες και μηχανισμούς δράσης μηχανικά ή ηλεκτρονικά μέρη και δρουν στον πραγματικό κόσμο.
Σχήμα 6.8 Λειτουργία ρομποτικού πράκτορα
Στους υπολογιστικούς πράκτορες (computational agents) ανήκουν οι λογισμικοί πράκτορες (software agents), προγράμματα που λειτουργούν συνεχώς και αυτόνομα στο πλαίσιο ενός υπολογιστικού συστήματος. Ο πράκτορας δραστηριοποιείται με έξυπνο και ευέλικτο τρόπο ανταποκρινόμενος στις αλλαγές του περιβάλλοντος, χωρίς να απαιτείται η παρέμβαση του χρήστη. Οι λογισμικοί πράκτορες μπορούν να υποδιαιρεθούν σε πράκτορες επιμέρους εργασιών (task-specific agents), πράκτορες ψυχαγωγίας (entertainment agents) και ιούς (viruses). Τέλος, στους υπολογιστικούς πράκτορες ανήκουν οι πράκτορες τεχνητής ζωής (artificial life agents) που, επίσης, βασίζονται στο λογισμικό, αλλά έχουν δικά τους ιδιαίτερα χαρακτηριστικά, με βασικότερο ότι λειτουργούν σε εικονικά περιβάλλοντα.
Σχήμα 6.9 Λειτουργία λογισμικού πράκτορα
Σε όποια κατηγορία και αν ανήκει ένας ευφυής πράκτορας, τότε κατά τεκμήριο θα εμπεριέχει τη δυνατότητα λήψης αποφάσεων μέσω κάποιας συλλογιστικής διαδικασίας βασισμένης στην επεξεργασία των ερεθισμάτων που γίνονται δεκτά από το περιβάλλον του. Οι αποφάσεις που λαμβάνονται βάσει της συλλογιστικής διαδικασίας επιδρούν σε αυτό το περιβάλλον, αλλάζοντας με τον τρόπο αυτό την κατάστασή του. Οι λειτουργίες αυτές καθιστούν τους πράκτορες λιγότερο ή περισσότερο ορθολογικούς.
6.4.1 Ορθολογικοί πράκτορες
Οι ορθολογικοί πράκτορες (rational agents) λαμβάνουν αποφάσεις και δρουν βάσει μιας διαδικασίας λογικής απόδειξης. Στηρίζονται σε μία βάση γνώσης (knowledge base), χάρη στην οποία διατηρούν την αντίληψή τους για το περιβάλλον με μορφή λογικών προτάσεων (logic formulae), και σε ένα σύνολο κανόνων συμπερασμού, για να δράσουν. Έτσι, οι δράσεις που θα εκτελεστούν ανάγονται σε προβλήματα απόδειξης της μαθηματικής λογικής και πολλές φορές χρησιμοποιούνται συμπερασματικές μηχανές, για να επιτευχθούν.
Οι ορθολογικοί πράκτορες εκτελούν συνεχώς τις εξής τρεις λειτουργίες:
- αντιλαμβάνονται τις δυναμικές συνθήκες του περιβάλλοντος,
- δρουν στο περιβάλλον, ώστε να το αλλάξουν και
- συλλογίζονται, ώστε να ερμηνεύσουν αυτά που αντιλαμβάνονται, να λύσουν προβλήματα, να συμπεράνουν και να καθορίσουν τη δράση τους.
Οι ορθολογικοί πράκτορες χρησιμοποιούν μεθόδους και τεχνικές που έχουν καθορισμένη και απλή σημασιολογία. Συνεπώς, είναι περισσότερο κατάλληλοι για στατικά περιβάλλοντα, ενώ καθίσταται ιδιαίτερα δύσκολη η εξαγωγή συμπερασμάτων σε μεταβαλλόμενα (δυναμικά) περιβάλλοντα, όπου απαιτείται επανασχεδιασμός των δράσεων του πράκτορα και μάλιστα σε περιορισμένα χρονικά όρια. Επίσης, η δράση ενός ορθολογικού πράκτορα σε ένα δυναμικό περιβάλλον απαιτεί ακριβή και ικανοποιητική (αν όχι πλήρη) συμβολική περιγραφή του πραγματικού κόσμου, το οποίο είναι ανέφικτο σε πρακτικό επίπεδο.
6.5 Σύγχρονες Θεωρήσεις Πρακτόρων
Όπως αναφέραμε ήδη, είναι δύσκολη μία ενιαία θεώρηση για το τι είναι ένας πράκτορας, δεδομένου ότι ο κάθε τομέας της Επιστήμης Υπολογιστών τους εξετάζει από διαφορετική σκοπιά. Για παράδειγμα:
- Για την ΤΝ οι πράκτορες είναι ευφυείς οντότητες.
- Για τον αντικειμενοστραφή προγραμματισμό θεωρούνται οντότητες που επικοινωνούν μεταξύ τους.
- Για τον παράλληλο προγραμματισμό είναι οντότητες που εκτελούνται παράλληλα.
- Για την επικοινωνία ανθρώπου-μηχανής είναι οντότητες που αναλαμβάνουν πρωτοβουλία σε συνεργασία με το χρήστη, για να επιτελέσουν τα καθήκοντά τους.
Έτσι προκύπτουν οι εξής δύο σύγχρονες θεωρήσεις για τους πράκτορες, η χαλαρή θεώρηση και η ισχυρή θεώρηση. Η πρώτη ανήκει περισσότερο στο χώρο της τεχνολογίας λογισμικού, ενώ η δεύτερη στο χώρο της ΤΝ. Πιο συγκεκριμένα:
- Χαλαρή θεώρηση: ο όρος «πράκτορας» χρησιμοποιείται, για να δηλώσει αυτοπροσδιοριζόμενα υπολογιστικά συστήματα συνήθως, βασισμένα είτε στο λογισμικό (software) είτε στο υλικό (hardware). Κατά τη χαλαρή θεώρηση οι πράκτορες δεν χαρακτηρίζονται απαραίτητα ως «ευφυείς».
- Ισχυρή θεώρηση: στον τομέα της ΤΝ, ένας «πράκτορας», πέραν των ιδιοτήτων που προαναφέρθηκαν, περιγράφεται με έννοιες και ιδιότητες που αναφέρονται συνήθως σε ανθρώπους, όπως πρόθεση, πεποίθηση, επιθυμία και ικανότητα μάθησης.
6.6 Περιβάλλοντα Πρακτόρων
Μέχρι στιγμής έχει αναφερθεί αρκετές φορές ο όρος «περιβάλλον» μέσα στο οποίο δρα ένας πράκτορας. Γενικότερα, υπό μια έννοια το περιβάλλον αποτελεί το «πρόβλημα» για το οποίο οι πράκτορες αποτελούν τη «λύση». Οι Russel & Norvig (2009) κατηγοριοποιούν τα περιβάλλοντα των πρακτόρων ως εξής:
- Πλήρως Προσβάσιμα ή Μερικώς Προσβάσιμα (Fully Observable / Partially Observable): όταν ένας πράκτορας μπορεί να λαμβάνει μέσω των αισθητήρων του ολοκληρωμένη και ακριβή πληροφορία ανά πάσα στιγμή, τότε το περιβάλλον χαρακτηρίζεται ως προσβάσιμο. Σε ένα πλήρως προσβάσιμο περιβάλλον, ένας πράκτορας δεν απαιτείται να έχει εσωτερική κατάσταση για την αναπαράσταση του περιβάλλοντος. Αντιθέτως, σε ένα μερικώς προσβάσιμο περιβάλλον, οι πράκτορες δε λαμβάνουν άμεση και λεπτομερειακή πληροφορία για αυτό. Σημειωτέον πως ο βαθμός προσβασιμότητας του περιβάλλοντος εξαρτάται και από τους αισθητήρες του εκάστοτε πράκτορα. Για παράδειγμα, σε έναν πράκτορα ο οποίος αναλαμβάνει την παρακολούθηση της θερμοκρασίας του περιβάλλοντος μέσα στο οποίο λειτουργεί μια αντλία και διαθέτει θερμοστάτες μόνο για το νερό το οποίο αντλείται, το περιβάλλον θεωρείται μερικώς προσβάσιμο. Εάν προστεθεί ένας ακόμα θερμοστάτης για το μέταλλο που περιβάλλει την αντλία, τότε το περιβάλλον του πράκτορα θεωρείται πλήρως προσβάσιμο.
- Αιτιοκρατικά ή Μη Αιτιοκρατικά (Deterministic / Stochastic): Αν η επόμενη κατάσταση ενός περιβάλλοντος μπορεί να προσδιοριστεί πλήρως από την τρέχουσα κατάστασή του και τις τρέχουσες δράσεις του πράκτορα, τότε αυτό το περιβάλλον καλείται αιτιοκρατικό, ενώ στην αντίθετη περίπτωση χαρακτηρίζεται ως μη αιτιοκρατικό. Μία γενική παρατήρηση είναι ότι ένα περιβάλλον πλήρως προσβάσιμο και αιτιοκρατικό διευκολύνει τον πράκτορα στις δράσεις του. Βέβαια, αν το περιβάλλον είναι μερικώς προσβάσιμο, τότε είναι πολύ πιθανό να αποτελεί παράλληλα ένα μη αιτιοκρατικό περιβάλλον. Αυτό συμβαίνει, κυρίως, σε περιβάλλοντα τα οποία είναι πολύπλοκα και δυσκολεύουν τον πράκτορα στην πλήρη αντίληψη της τρέχουσας κατάστασης του περιβάλλοντός του.
- Επεισοδιακά ή Μη Επεισοδιακά (Episodic / Sequential): Ένα περιβάλλον χαρακτηρίζεται ως επεισοδιακό, όταν χωρίζεται σε διακριτά επεισόδια. Κάθε επεισόδιο χαρακτηρίζεται από την αντίληψη του πράκτορα για το περιβάλλον στο οποίο βρίσκεται την τρέχουσα στιγμή και από τις δράσεις του μέσα σε αυτό. Επειδή το κάθε επεισόδιο είναι ανεξάρτητο από δράσεις επεισοδίων που έχουν προηγηθεί, ο πράκτορας δεν εξετάζει την επίδραση που έχουν οι τρέχουσες δράσεις του σε μελλοντικά επεισόδια. Αντίθετα, σε μη επεισοδιακά περιβάλλοντα είναι πιθανό οι τρέχουσες δράσεις να έχουν συνέπειες σε μελλοντικές δράσεις. Για παράδειγμα, ένας πράκτορας μετεωρολογικών προβλέψεων λειτουργεί σε επεισοδιακό περιβάλλον, ενώ ένας πράκτορας έκδοσης αεροπορικών εισιτηρίων λειτουργεί σε μη επεισοδιακό περιβάλλον.
- Στατικά ή Δυναμικά (Static / Dynamic): Όταν ένα περιβάλλον μπορεί να μεταβάλλεται από τη φύση του, ενώ παράλληλα δρα μέσα σε αυτό ένας πράκτορας, τότε το περιβάλλον χαρακτηρίζεται ως δυναμικό. Όταν το περιβάλλον μεταβάλλεται, αλλά μόνο λόγω των δράσεων του πράκτορα, καλείται ημιδυναμικό (semi-dynamic). Σε όλες τις άλλες περιπτώσεις χαρακτηρίζεται ως στατικό.
- Διακριτά ή Συνεχή (Discrete / Continuous): Ο θεωρητικός αυτός διαχωρισμός βασίζεται κυρίως στην αντίληψη του χρόνου από πλευράς του πράκτορα μέσω των αισθητήρων του. Σε ένα διακριτό περιβάλλον, όπως σε ένα παιχνίδι δυο παικτών που παίζεται σε γύρους, οι διάφορες κινήσεις που κάνει κάθε παίκτης στο γύρο του μπορούν να εκφραστούν σε διακριτές τιμές (κινήσεις). Σε ένα συνεχές περιβάλλον, όπως η λειτουργία ενός εργοστασίου, μεταβλητές όπως οι κινήσεις των αυτοματοποιημένων μηχανημάτων αλλάζουν συνεχώς στη μονάδα του χρόνου.
- Μονοπρακτορικό ή Πολυπρακτορικό ( Single Agent / Multiagent ): Αν ένας πράκτορας δρα μόνος του σε ένα περιβάλλον, το περιβάλλον χαρακτηρίζεται περιβάλλον μοναδικού πράκτορα, ενώ σε αντίθετη περίπτωση το περιβάλλον είναι πολυπρακτορικό.
Οι παραπάνω κατηγοριοποιήσεις περιγράφουν εντέλει την πολυπλοκότητα ενός περιβάλλοντος. Όσο πιο πολύπλοκο είναι το περιβάλλον, τόσο πιο δύσκολη είναι η ανάπτυξη ενός λειτουργικού πράκτορα που δρα μέσα σε αυτό. Μία σημαντική παρατήρηση είναι ότι η πολυπλοκότητα δεν είναι μία προκαθορισμένη ιδιότητα του περιβάλλοντος, αλλά εξαρτάται σε μεγάλο βαθμό από τους αισθητήρες του πράκτορα που αλληλεπιδρά με αυτό. Δύο πράκτορες ίδιας λειτουργίας αλλά διαφορετικών αισθητήρων οι οποίοι δρουν στο ίδιο περιβάλλον το αντιλαμβάνονται διαφορετικά.
6.7 Αφηρημένες Αρχιτεκτονικές Πρακτόρων
Στις προηγούμενες ενότητες, αναφέρθηκαν αρκετοί ορισμοί των πρακτόρων και τα χαρακτηριστικά ενός πράκτορα, ώστε να δοθεί μια γενική εικόνα της οντότητας των πρακτόρων. Όμως, τίθεται ένα εύλογο ερώτημα: πώς ένας πράκτορας κάνει εκτίμηση των αλλαγών του περιβάλλοντος στο οποίο βρίσκεται και πώς ενεργεί, ώστε να εκπληρώσει επιτυχώς τους στόχους του;
Σε αυτό το ερώτημα καλείται να απαντήσει η αφηρημένη αρχιτεκτονική πρακτόρων, η οποία εξετάζει γενικά την δομή των πρακτόρων, αναλύει τους πράκτορες στα επιμέρους συστατικά στοιχεία τους και περιγράφει τη ροή της πληροφορίας μεταξύ αυτών.
Η αρχιτεκτονική ενός πράκτορα βασίζεται
- στα επιθυμητά χαρακτηριστικά του πράκτορα,
- στα γενικά και ειδικά χαρακτηριστικά του περιβάλλοντος μέσα στο οποίο λειτουργεί ο πράκτορας.
Σκοπός είναι να ορίζει:
- τα βασικά στοιχεία (modules) από τα οποία αποτελείται,
- τον τρόπο με τον οποίο αυτά διασυνδέονται,
- τη ροή της πληροφορίας ανάμεσα στα βασικά στοιχεία.
Με βάσει την αφηρημένη αρχιτεκτονική τους, οι πράκτορες μπορεί να κατηγοριοποιηθούν σε δύο βασικές αρχιτεκτονικές ευφυών πρακτόρων, οι οποίες είναι οι αντιδραστικοί πράκτορες (reactive agents) και οι πράκτορες με εσωτερική κατάσταση (internal state agents). Η βασική διαφορά των δύο αρχιτεκτονικών έγκειται στο ότι χαρακτηρίζονται η μεν πρώτη κατηγορία από τη λογική «ερέθισμα- αντίδραση», η δε δεύτερη από την ύπαρξη εσωτερικής συμβολικής αναπαράστασης του περιβάλλοντος κόσμου.
Επιπλέον κατηγορίες είναι οι υβριδικοί πράκτορες με διαστρωματωμένη αρχιτεκτονική που δανείζεται από τις δυο βασικές κατηγορίες, και οι κινητοί πράκτορες, με χαρακτηριστικό τους το ότι κινούνται ελεύθερα στο περιβάλλον τους.
Σχήμα 6.10 Κατηγορίες ευφυών πρακτόρων βάσει της αρχιτεκτονικής τους
6.7.1 Αντιδραστικοί Πράκτορες
Η αρχιτεκτονική ενός αντιδραστικού πράκτορα (reactive agent) αποσκοπεί στη δημιουργία μιας αρχιτεκτονικής όσο γίνεται πιο απλής. Σε αντίθεση με τους πράκτορες με εσωτερική κατάσταση,οι αντιδραστικοί πράκτορες δεν χαρακτηρίζονται από μία εσωτερική συμβολική αναπαράσταση του περιβάλλοντος με το οποίο αλληλεπιδρούν, αλλά η συμπεριφορά τους βασίζεται στη λογική ερέθισμα-αντίδραση στην τρέχουσα κατάσταση του κόσμου όπου βρίσκονται. Επιπλέον, δεν έχουν μνήμη. Υπάρχουν τρεις τύποι αντιδραστικών πρακτόρων: οι απλοί, αυτοί που βασίζονται σε μοντέλα του κόσμου τους και αυτοί που βασίζονται σε στόχους.
Εικόνα 6.1 Συμπεριφορά απλού αντιδραστικού πράκτορα
Ένας αντιδραστικός πράκτορας προσδιορίζεται πλήρως από ένα μηχανισμό επιλογής της εκάστοτε κατάλληλης δράσης, που εκτελείται από το τμήμα εκείνο του πράκτορα που καλείται ενεργοποιητής (activator).
Ο απλός αντιδραστικός πράκτορας (simple reactive agent) διαθέτει μια τρέχουσα αντίληψη για το περιβάλλον του αγνοώντας τι έχει προηγηθεί και χωρίς να τον απασχολεί τι θα ακολουθήσει, αφού δράσει. Ο μηχανισμός αυτός μπορεί να είναι μια συνάρτηση γραμμένη σε κάποια γλώσσα προγραμματισμού ή η μηχανή εξαγωγής συμπερασμάτων σε ένα έμπειρο σύστημα.
Σχήμα 6.11 Αρχιτεκτονική απλού αντιδραστικού πράκτορα
Ο αντιδραστικός πράκτορας βασισμένος σε μοντέλο (model-based reactive agent) αντιλαμβάνεται την τρέχουσα κατάσταση του κόσμου μέσω των αισθητήρων του και τη συγκρίνει με ένα εσωτερικό μοντέλο που διαθέτει για το πώς εξελίσσεται ο κόσμος του. Στη συνέχεια βρίσκει έναν κατάλληλο κανόνα με βάση τον οποίο ενεργεί όπως και ο απλός αντιδραστικός πράκτορας.
Σχήμα 6.12 Αρχιτεκτονική αντιδραστικού πράκτορα βασισμένου σε μοντέλα
6.7.2 Πράκτορες με Εσωτερική Κατάσταση
Στην κατηγορία πρακτόρων με εσωτερική κατάσταση ανήκουν οι πράκτορες οι οποίοι έχουν μία συμβολική αναπαράσταση του κόσμου μέσα στον οποίο βρίσκονται και διαθέτουν ένα σύνολο κανόνων συμπερασμού βάσει των οποίων σχεδιάζουν την επόμενη ενέργειά τους και μελετούν τα αποτελέσματά της στην εσωτερική αναπαράσταση. Στην προσπάθειά τους να επιτύχουν τους στόχους τους, χρησιμοποιούν κλασικές συλλογιστικές μεθόδους και τεχνικές ταυτοποίησης προτύπων και χειρισμού συμβόλων.
Σχήμα 6.13 Γενικό μοντέλο πράκτορα με εσωτερική κατάσταση
Όταν οι πράκτορες εσωτερικής κατάστασης έχουν μια βάση γνώσης, στην οποία διατηρούν την αντίληψή τους για τον πραγματικό κόσμο με μορφή λογικών προτάσεων και ένα σύνολο συμπερασματικών κανόνων που μπορεί να εκτελέσει ο πράκτορας υπό τύπον συλλογιστικής, τότε καλούνται πράκτορες βασισμένοι στη λογική (deliberated agents).
Η κατηγορία των πρακτόρων με εσωτερική κατάσταση περιλαμβάνει δύο υποκατηγορίες αρχιτεκτονικής πρακτόρων: τους πράκτορες με στόχους, που είναι βασισμένοι στους επιδιωκόμενους στόχους και τους πράκτορες με πεποιθήσεις - επιθυμίες – προθέσεις (βλέπε Σχήμα 6.10).
Πράκτορες με στόχους
Ένας πράκτορας με στόχο (goal-based agent), εκτός των πληροφοριών που προσλαμβάνει μέσω των αισθητήρων του για την τρέχουσα κατάσταση του κόσμου, διαθέτει και πληροφορίες που περιγράφουν τον επιδιωκόμενο στόχο. Ένας στόχος (goal) είναι ένα υποσύνολο επιθυμητών μελλοντικών καταστάσεων οι οποίες μπορούν να πραγματοποιηθούν και δεν περιέχουν συγκρούσεις μεταξύ τους. Ο πράκτορας συνδυάζει αυτές τις πληροφορίες με τη γνώση που έχει εσωτερικά για τον κόσμο, ώστε να διερευνήσει τα αποτελέσματα των δυνατών ενεργειών του, προκειμένου να επιλέξει την καταλληλότερη ενέργεια που θα οδηγήσει στο στόχο.
Η εσωτερική κατάσταση μπορεί να βασίζεται σε μοντέλα ή σε οποιαδήποτε άλλη μορφή αναπαράστασης γνώσης.
Σχήμα 6.14 Αρχιτεκτονική πρακτόρων με εσωτερική κατάσταση και στόχο
Πράκτορες με Πεποιθήσεις– Επιθυμίες– Προθέσεις
Ο τρόπος λειτουργίας ενός πράκτορα BDI (BDI agent) στηρίζεται σε θεωρητικά μοντέλα ανθρώπινης συλλογιστικής (Weiss, 1999). Βάσει αυτών, η εσωτερική του κατάσταση περιγράφεται και από τις εξής βασικές έννοιες της ισχυρής θεώρησης των πρακτόρων: «πεποιθήσεις», «επιθυμίες» και «προθέσεις».
- Οι πεποιθήσεις (beliefs) αντιπροσωπεύουν την αντίληψη του πράκτορα για τον κόσμο∙ με άλλα λόγια, τις πεποιθήσεις του για τον κόσμο (συμπεριλαμβανομένου και του ιδίου και άλλων πρακτόρων). Οι πεποιθήσεις μπορούν, επίσης, να περιλαμβάνουν συμπερασματικούς κανόνες, επιτρέποντας την προς τα εμπρός αλυσιδωτή εκτέλεσή τους (βλέπε κεφάλαιο 3), για να οδηγηθούν σε νέες πεποιθήσεις. Η χρήση του όρου πεποίθηση και όχι γνώση αναγνωρίζει ότι αυτό που ένας πράκτορας πιστεύει μπορεί να μην είναι ορθό (και, στην πραγματικότητα, μπορεί να αλλάξει στο μέλλον).
- Οι επιθυμίες (desires) αντιπροσωπεύουν την κινητήρια δύναμη του πράκτορα. Είναι στόχοι ή καταστάσεις που ο πράκτορας θα ήθελε να επιτύχει ή να επιφέρει. Για παράδειγμα, επιθυμίες μπορεί να είναι: βρες την οικονομικότερη πτήση προς ένα προορισμό, επένδυσε στην καλύτερη μετοχή ή βρες όλες τις σχετικότερες αναφορές για τον όρο.
- Στόχοι: Στόχος είναι μια επιθυμία που έχει υιοθετηθεί ως επόμενη επιδίωξη από τον πράκτορα.
- Οι προθέσεις (intentions) αντιπροσωπεύουν το τι ο πράκτορας έχει επιλέξει να κάνει. Είναι επιθυμίες στις οποίες ο πράκτορας έχει σε κάποιο βαθμό αφιερωθεί. Πρακτικά, αυτό σημαίνει ότι ο παράγοντας έχει αρχίσει την εκτέλεση ενός προγράμματος.
- Τα πλάνα (plans) είναι ακολουθίες ενεργειών που μπορεί ο πράκτορας να εκτελέσει για την επίτευξη μιας ή περισσότερων από τις προθέσεις του. Τα πλάνα μπορεί να περιλαμβάνουν άλλα πλάνα: σε ένα παιχνίδι, το πλάνο να επισκεφτεί ο ήρωας έναν άλλο πλανήτη περιέχει το πλάνο να σχεδιάσει τη διαδρομή έως εκεί. Αυτό σημαίνει ότι αρχικά τα πλάνα έχουν ένα γενικό σχεδιασμό και, στη συνέχεια, συμπληρώνονται με στοιχεία ανάλογα με το πώς εξελίσσονται.
Η λειτουργία ενός πράκτορα BDI βασίζεται στην ύπαρξη συμβάντων που προκαλούν την αντίδρασή του:
- Τα συμβάντα (events) είναι ωθήσεις για αντιδραστική δραστηριότητα από τον πράκτορα. Ένα συμβάν μπορεί να ενημερώσει τις πεποιθήσεις, να προκαλέσει σχέδια ή να τροποποιήσει τους στόχους. Τα συμβάντα μπορούν να δημιουργηθούν είτε εσωτερικά από τον ίδιο τον πράκτορα, για να προκαλέσουν αποσυνδεδεμένες ενημερώσεις ή σχέδια δράσης, ή από το ίδιο το σύστημα είτε εξωτερικά και να γίνουν αντιληπτά από τους αισθητήρες.
Η διαδικασία δράσης ενός πράκτορα BDI, με βάση όλα όσα προαναφέρθηκαν, είναι η ακόλουθη:
- Ο πράκτορας, μέσα από ένα σύνολο επιθυμιών, επιλέγει ανάλογα με την κρίση του τους στόχους του.
- Στη συνέχεια επιλέγει ένα υποσύνολο από αυτούς (προθέσεις) με βάση το πόσο τον ικανοποιούν (χρησιμότητα) και αφοσιώνεται σε αυτούς.
- Στο τελικό στάδιο της διαδικασίας δράσης αναλύει τους τρόπους (πλάνα) με τους οποίους οι επιλεγμένες προθέσεις μπορούν να επιτευχθούν.
Η ικανοποίηση του πράκτορα από την επιλογή κάποιου στόχου καλείται χρησιμότητα (utility). Η χρησιμότητα προκύπτει από τη συνάρτηση χρησιμότητας (utility function) που αντιστοιχίζει μια κατάσταση σε έναν πραγματικό αριθμό που καλείται βαθμός ικανοποίησης. Οι επιλογές που ικανοποιούν τον πράκτορα γίνονται προθέσεις, οι οποίες στη συνέχεια προσδιορίζουν τις ενέργειες του πράκτορα.
Οι προθέσεις επιδρούν στις πεποιθήσεις, πάνω στις οποίες θα βασιστεί η μελλοντική συλλογιστική.
Σχήμα 6.15 Η Αρχιτεκτονική BDI
Αξίζει να αναφερθεί ότι ένας πράκτορας BDI, αφότου επιλέξει τους στόχους του από το σύνολο των προθέσεών του, δεσμεύεται πλέον από αυτούς στις μελλοντικές του ενέργειες. Σημειωτέα η επιμονή του πράκτορα προς την επίτευξη των προθέσεων. Αφότου έχει αποφασίσει ότι μία πρόθεση είναι εφικτή, ο πράκτορας αφιερώνει χρόνο επεξεργασίας και υπολογιστικούς πόρους, για να την πετύχει. Βέβαια, αν κριθεί ότι αυτές οι προθέσεις είναι αδύνατον τελικά να επιτευχθούν ή σε τελικό στάδιο δεν ικανοποιούν τον πράκτορα στην λειτουργία που θέλει να επιτελέσει, οι προθέσεις αυτές εγκαταλείπονται. Έτσι, ο πράκτορας θα επανεξετάσει τις προθέσεις του για την εύρεση πιο κατάλληλων στόχων. Η συχνότητα επανεξέτασης των προθέσεων του πράκτορα αποτελεί σημαντικότατο κομμάτι στον σχεδιασμό του και επηρεάζει σε μεγάλο βαθμό την αποδοτικότητά του.
Ένα παράδειγμα που βοηθά στην κατανόηση των παραπάνω είναι το ηλεκτρονικό παιχνίδι όπου ένας παίχτης κυνηγάει να σκοτώσει έναν εξωγήινο σε έναν ανοιχτό χώρο στον οποίο κινούνται και οι δυο.
Στο χρόνο t = 0 ο παίχτης έχει ως:
- επιθυμία να σκοτώσει τον εξωγήινο,
- πρόθεση να φτάσει στο σημείο P που έχει πληροφορηθεί ότι βρίσκεται ο εξωγήινος,
- πεποίθηση ότι ο εξωγήινος βρίσκεται στο σημείο Ρ.
Στον επόμενο χρόνο t = 1 ο παίχτης μεταφέρεται στο σημείο Ρ και έχει ως:
- επιθυμία να σκοτώσει τον εξωγήινο (παραμένει),
- πρόθεση να σκοτώσει τον εξωγήινο (δεδομένου ότι πιστεύει ότι τον έχει φτάσει),
- πεποίθηση ότι ο εξωγήινος είναι στο σημείο Ρ (παραμένει).
Δεδομένου όμως ότι ο εξωγήινος επίσης κινείται, η πρόθεση του παίχτη δε μπορεί να επιτευχθεί λόγω λανθασμένης πεποίθησης άρα οφείλει να την επανεξετάσει.
Πράκτορες που μαθαίνουν
Οι πράκτορες μπορούν να χαρακτηριστούν πραγματικά ευφυείς, όταν είναι σε θέση να μαθαίνουν, για να βελτιώσουν την απόδοσή τους. Πρακτικά, αυτό σημαίνει ότι η αφηρημένη αρχιτεκτονική τους έχει ενσωματωμένο ένα τμήμα μάθησης ικανό να:
- Κρίνει τη συμπεριφορά του πράκτορα βάσει ενός προτύπου συμπεριφοράς.
- Παρέχει προτάσεις ανάδρασης βάσει της κριτικής που έχει ασκηθεί σε έναν ενσωματωμένο μηχανισμό μηχανικής μάθησης.
- Δημιουργεί αλλαγές στη συμπεριφορά του πράκτορα με τη βοήθεια του μηχανισμού μηχανικής μάθησης.
- Μελετά την απόδοση των αλλαγών και επιστρέφει τις αποδεκτές αλλαγές ως νέα γνώση του πράκτορα, συνηθέστερα σε μορφή νέων ή βελτιωμένων κανόνων.
Ένα πιο πλούσιο μοντέλο πράκτορα που μαθαίνει θα μπορούσε να θέτει επιπλέον στόχους μάθησης για προβλήματα που δεν έχει ακόμα συναντήσει και για τα οποία δεν μπορεί, επομένως, να κρίνει και να βελτιώσει τη συμπεριφορά του. Για την περίπτωση αυτή, είναι απαραίτητη μια γεννήτρια προβλημάτων που θα αντικαθιστά τους αισθητήρες με την εισαγωγή εικονικών ερεθισμάτων για τα οποία θα μελετά την απόδοση του πράκτορα.
Σχήμα 6.16 Αποτύπωση διαδικασιών μάθησης αντιδραστικών πρακτόρων με μοντέλο
6.7.3 Υβριδικοί Πράκτορες
Η αρχιτεκτονική των υβριδικών πρακτόρων (hybrid agents) βασίζεται στο συνδυασμό των δύο προηγούμενων αρχιτεκτονικών με σκοπό την εκμετάλλευση των πλεονεκτημάτων τους. Στους υβριδικούς πράκτορες υπάρχουν τουλάχιστον δύο επίπεδα υπεύθυνα για την αντιδραστική συμπεριφορά και την συμπεριφορά με εσωτερική κατάσταση.
Η ροή ελέγχου σε αυτά τα συστήματα εμφανίζεται σε δύο μοντέλα, το οριζόντιο και το κάθετο (βλέπε Σχήμα 6.17). Στο οριζόντιο μοντέλο, όλα τα επίπεδα είναι συνδεδεμένα σε παραλληλία στους αισθητήρες εισόδου και στους μηχανισμούς δράσης. Στο κάθετο μοντέλο, τα επίπεδα είναι συνδεδεμένα σε σειρά, όπου μόνο ένα επίπεδο είναι συνδεδεμένο στους αισθητήρες εισόδου και μόνο ένα στους μηχανισμούς δράσης.
Σχήμα 6.17 Ροή ελέγχου σε υβριδικούς πράκτορες
6.7.4 Κινητοί Πράκτορες
Η τελευταία κατηγορία λογισμικών πρακτόρων που θα εξετάσουμε είναι οι κινητοί πρακτόρες (mobile agents). Ιδιαίτερο χαρακτηριστικό της κατηγορίας αυτής είναι η ικανότητα των πρακτόρων να μετακινούνται μέσα στο περιβάλλον τους που συνήθως είναι διαδικτυακό. Οι κινητοί πράκτορες είναι στην πραγματικότητα διεργασίες λογισμικού (software processes), οι οποίες έχουν την δυνατότητα να εκτελούνται σε οποιονδήποτε υπολογιστή και αν μεταφερθούν.
Ο τρόπος λειτουργίας των κινητών πρακτόρων δεν απαιτεί τη συνεχή επικοινωνία μεταξύ του εξυπηρετητή (server) όπου είναι εγκατεστημένος ο πράκτορας και του υπολογιστή στον οποίο μεταφέρεται, για να δράσει. Με αυτό τον τρόπο υπάρχει ελάχιστη κατανάλωση στους πόρους του δικτύου και η ακεραιότητα των πληροφοριών που λαμβάνει ο πράκτορας δεν επηρεάζεται από τυχόν προβλήματα επικοινωνίας με τον εξυπηρετητή. Για παράδειγμα, ένας κινητός πράκτορας που πρέπει να συλλέξει πληροφορίες από διάφορους ιστοχώρους θα πρέπει να μετακινηθεί στους εξυπηρετητές των ιστοχώρων αυτών στη σειρά, δηλαδή να επισκεφτεί τον πρώτο στη σειρά, όπου θα αντλήσει τις πληροφορίες που τον ενδιαφέρουν, στη συνέχεια θα μεταβεί στο δεύτερο και ούτω καθ’ εξής, μέχρι να επιστρέψει στη βάση του επιβαρύνοντας μόνο το σύστημα του υπολογιστή στον οποίο ενεργεί κάθε χρονική στιγμή. Αντίθετα, ένας μη κινητός πράκτορας θα στείλει αιτήματα προς τους εξυπηρετητές των ιστοσελίδων με τα στοιχεία που τον ενδιαφέρουν και, αφού επεξεργαστεί τις απαντήσεις που θα λάβει, θα παρουσιάσει τα αποτελέσματα στο χρήστη, διαδικασία που αντιστοιχεί σε μεγάλο επικοινωνιακό κόστος και όγκο μεταφερόμενων πληροφοριών.
Βέβαια, ο τρόπος λειτουργίας των κινητών πρακτόρων εμπεριέχει μεγάλα κενά ασφάλειας. Κατά την μεταφορά των πρακτόρων μεταξύ των εξυπηρετητών, υπάρχει το ενδεχόμενο αλλοίωσης του κώδικά τους από κακόβουλα λογισμικά, με συνέπεια οι διεργασίες που εκτελούνται να δώσουν πιθανώς μη επιθυμητά αποτελέσματα και, ακόμα χειρότερα, επικίνδυνα για τους ίδιους τους εξυπηρετητές. Επίσης, βρίσκονται σε κίνδυνο και οι υπολογιστές στους οποίους θα μεταφερθούν οι πράκτορες στην συνέχεια, αφού ο λειτουργικός σκοπός τους είναι, πλέον, αμφίβολος. Τέλος, δεδομένου ότι οι πράκτορες μετακινούνται συνέχεια, είναι δύσκολη η παρακολούθηση της τρέχουσας θέσης τους, ώστε να ελεγχθεί η κατάσταση λειτουργίας τους.
6.8 Πολυπρακτορικά Συστήματα
Ένα πολυπρακτορικό σύστημα (multi-agent system) αποτελείται από ένα σύνολο από πράκτορες που δρουν μαζί, για να επιλύσουν ένα πρόβλημα. Ένα τέτοιο σύστημα στοχεύει στη διασύνδεση και λειτουργία ήδη υπαρχόντων συστημάτων, καθώς και στην επίλυση προβλημάτων:
- που είναι πέρα των δυνατοτήτων και της γνώσης ενός μόνο πράκτορα
- τα οποία είναι από τη φύση τους κατανεμημένα. Τα πολυπρακτορικά συστήματα αποτελούν βασικό τομέα της Κατανεμημένης ΤΝ από πλευράς χαλαρής θεώρησης των πρακτόρων
- όπου η σχετική γνώση είναι κατανεμημένη σε διακριτές πηγές, όπως για παράδειγμα η υπάρχουσα εμπειρία στα επιμέρους γραφεία ενός οργανισμού.
Παραδείγματα πολυπρακτορικών συστημάτων μπορεί κάποιος να συναντήσει σε διαδικτυακές εφαρμογές παροχής πληροφοριών σε σύνθετα διαδραστικά περιβάλλοντα.
Εικόνα 6.2 Πολυπρακτορικό σύστημα για την περιβαλλοντική εποπτεία, την παρακολούθηση και οικολογική προστασία
6.8.1 Χαρακτηριστικά πολυπρακτορικών συστημάτων
Κύριο χαρακτηριστικό των συνεργαζόμενων πρακτόρων είναι ο συντονισμός (coordination). Για το συντονισμό, ένας αντιπροσωπευτικός ορισμός είναι ο παρακάτω:
«O συντονισμός είναι η ιδιότητα ενός συστήματος πρακτόρων να φέρουν εις πέρας ενέργειες μέσα σε ένα κοινό περιβάλλον.»
Υπάρχουν δύο τρόποι συντονισμού:
- Διαπραγμάτευση (Negotiation)
- Συνεργασία (Cooperation)
Άλλα χαρακτηριστικά των πολυπρακτορικών συστημάτων είναι τα ακόλουθα:
- Κανένας πράκτορας δεν έχει πλήρη πληροφορία γιατί τα δεδομένα είναι κατανεμημένα.
- Δεν υπάρχει κεντρικός έλεγχος στο σύστημα.
- Οι υπολογισμοί γίνονται με ασύγχρονο τρόπο.
Τα χαρακτηριστικά ενός πολυπρακτορικού συστήματος επιδρούν παράλληλα στον σχεδιασμό και τη λειτουργία των πρακτόρων που το αποτελούν.
6.8.2 Κρίσιμα σημεία στη σχεδίαση & υλοποίηση
Το σημαντικότερο και πιο κρίσιμο σημείο στην ανάπτυξη πολυπρακτορικών συστημάτων είναι ο τρόπος επικοινωνίας των πρακτόρων, που απαιτεί την ύπαρξη τριών διαφορετικών επιπέδων:
- του κατώτερου επιπέδου (αφορά τον τρόπο διασύνδεσης),
- του μεσαίου επιπέδου (αφορά τη σύνταξη και τη μορφή των μηνυμάτων),
- του ανώτερου επιπέδου (αφορά τη σημασιολογία).
Θέματα που εγείρονται κατά το σχεδιασμό της επικοινωνίας πρακτόρων είναι:
- Ποιες γλώσσες και πρωτόκολλα θα χρησιμοποιηθούν;
- Πότε αυτοί επικοινωνούν και τι πληροφορίες ανταλλάσσουν;
- Με ποιους άλλους πράκτορες επικοινωνούν και ποιο είναι το επιπλέον κόστος;
Η αρμονική συνύπαρξη των μελών ενός πολυπρακτορικού συστήματος θέτει τα θεμέλια για την αποδοτική και σταθερή λειτουργία του. Για την επιτυχή αλληλεπίδραση των πρακτόρων ως μελών μιας ομάδας με κοινό σκοπό, θα απαιτηθεί τυποποίηση, κατάλληλη περιγραφή και διαμοιρασμός του προβλήματος, καθώς και σύνθεση των λύσεων που κάθε πράκτορας μεμονωμένα θα εμφανίζει. Επίσης, προσεκτικό και λεπτομερή σχεδιασμό απαιτούν αφενός ο τρόπος για συμβιβασμό πιθανών διαφορετικών απόψεων μεταξύ πρακτόρων και αντιμετώπιση ενδεχόμενων συγκρουόμενων προθέσεών τους, αφετέρου ο τρόπος διαχείρισης περιορισμένων πόρων.
6.8.3 Μοντέλα διασύνδεσης πολυπρακτορικών συστημάτων
Η αρχιτεκτονική δομή του συστήματος, δηλαδή η διασύνδεση των πρακτόρων του συστήματος μεταξύ τους, απαιτεί σχεδιασμό ανεξάρτητα από την δημιουργία και την ένταξη των πρακτόρων στο σύστημα. Τα επικρατέστερα μοντέλα διασύνδεσης για τη συνεργασία των πρακτόρων είναι τα συστήματα μαυροπίνακα (blackboard systems) και τα συστήματα ανταλλαγής μηνυμάτων (message passing systems).
Στο μοντέλο με μαυροπίνακα η διασύνδεσης των πρακτόρων γίνεται μέσω μιας κεντρικής μονάδας ελέγχου που καλείται Μαυροπίνακας (βλέπε επόμενο σχήμα).
Σχήμα 6.18 Μοντέλο διασύνδεσης Μαυροπίνακα
Η κεντρική μονάδα ελέγχου χωρίζεται σε τρία επιμέρους τμήματα, όπως φαίνεται στο παρακάτω σχήμα 6.19:
- πηγές γνώσης (knowledge sources), οι οποίες είναι ανεξάρτητα δομικά στοιχεία (modules) τα οποία εμπεριέχουν τη γνώση η οποία χρειάζεται για την επίλυση ενός προβλήματος,
- στοιχείο ελέγχου (control component), που κάνει κριτική στις πηγές γνώσης και λαμβάνει αποφάσεις σε πραγματικό χρόνο για την πορεία επίλυσης του προβλήματος και το διαμοιρασμό των πόρων του συστήματος για να την υποστηρίξει,
- μαυροπίνακα (blackboard), που είναι μία καθολική βάση δεδομένων αποτελούμενη από δεδομένα εισόδου, μερικές λύσεις και άλλα δεδομένα τα οποία αξιοποιούνται κατά την επίλυση του προβλήματος.
Σχήμα 6.19 Αρχιτεκτονική κεντρικής μονάδας ελέγχου στο μοντέλο διασύνδεσης με Μαυροπίνακα
Στο μοντέλο ανταλλαγής μηνυμάτων οι πράκτορες συνεργάζονται για την επίλυση ενός προβλήματος μέσω μηνυμάτων τα οποία αποστέλλουν ο ένας στον άλλο βάσει συγκεκριμένων γλωσσών υψηλού επιπέδου. Σε αντίθεση με το μοντέλο μαυροπίνακα, δεν περιέχεται κάποια κεντρική μονάδα για τον έλεγχο της πορείας επίλυσης προβλημάτων που δημιουργούνται από ασυμφωνίες μεταξύ των πρακτόρων και από ανάγκες διαμοιρασμού των περιορισμένων πόρων του συστήματος. Τα ζητήματα αυτά πρέπει να αναλύονται κατά τον σχεδιασμό του συστήματος ή μέσω ανταλλαγής μηνυμάτων και διαπραγματεύσεων μεταξύ των πρακτόρων. Στο παρακάτω σχήμα παρουσιάζεται η μορφή του συστήματος ανταλλαγής μηνυμάτων σε απλή μορφή.
Σχήμα 6.20 Μοντέλο διασύνδεσης ανταλλαγής μηνυμάτων
Τα χαρακτηριστικά του μοντέλου ανταλλαγής μηνυμάτων είναι:
- Ανταλλάσσεται πληροφορία και υπάρχει συνεργασία μέσω μηνυμάτων.
- Αποστολή μηνυμάτων βάσει συγκεκριμένων γλωσσών υψηλού επιπέδου.
- Επιτρέπει την υλοποίηση πολύπλοκων μοντέλων συνεργασίας μεταξύ των πρακτόρων.
Τα συστήματα που βασίζονται στο μοντέλο ανταλλαγής μηνυμάτων προσφέρουν μεγαλύτερη ευελιξία στην ανταλλαγή πληροφοριών από όσο τα συστήματα μαυροπίνακα.
6.8.4 Επικοινωνία μεταξύ πρακτόρων
Απαραίτητη προϋπόθεση για τη λειτουργία ενός πολυπρακτορικού συστήματος είναι η ύπαρξη πρωτοκόλλων επικοινωνίας και αλληλεπίδρασης. Τα πρωτόκολλα επικοινωνίας ορίζουν μηχανισμούς μέσω των οποίων οι πράκτορες μεταδίδουν μεμονωμένα μηνύματα, ενώ τα πρωτόκολλα αλληλεπίδρασης κατευθύνουν την ανταλλαγή μίας σειράς μηνυμάτων μεταξύ των πρακτόρων∙ δηλαδή, πραγματοποιούν διάλογο (Huhns και Stephens, 1999).
Η επικοινωνία μεταξύ των πρακτόρων μπορεί να είναι σύγχρονη ή ασύγχρονη. Κατά τη σύγχρονη επικοινωνία, ο πράκτορας που θέτει μία ερώτηση είναι απαραίτητο να διακόψει τη λειτουργία του, μέχρι να πάρει μία απάντηση, ενώ, κατά την ασύγχρονη, η απάντηση μπορεί να έλθει οποιαδήποτε στιγμή μετά το χρόνο υποβολής της ερώτησης, χωρίς η λειτουργία του πράκτορα να διακόπτεται.
Επιπρόσθετα, ένα άλλο θέμα που αφορά την επικοινωνία των πρακτόρων σε ένα σύστημα είναι ο βαθμός επικοινωνίας (cardinality). Αυτός ορίζεται ως ο αριθμός των αποστολέων και των παραληπτών κατά την ανταλλαγή πληροφορίας. Ο βαθμός επικοινωνίας μπορεί να είναι:
- 1 προς 1,
- 1 προς Ν,
- Ν προς Ν.
6.8.5 Αλληλεπίδραση Πρακτόρων
Όπως αναφέρθηκε παραπάνω, τα πρωτόκολλα επικοινωνίας καθορίζουν την επικοινωνία μεταξύ των πρακτόρων σε πρωτογενές επίπεδο. Οι πράκτορες, ιδιαίτερα αυτοί με εσωτερική κατάσταση, είναι οντότητες με ξεχωριστούς στόχους, επιθυμίες και πεποιθήσεις και απαιτούν πρωτόκολλα αλληλεπίδρασης που θα τους επιτρέψουν να λειτουργήσουν ως κοινωνία πρακτόρων. Στο πλαίσιο μιας τέτοιας κοινωνίας απαιτείται συντονισμός (coordination) των πρακτόρων, να εμποδίζεται η άσχετη με το στόχο δραστηριότητα μέσω της αποφυγής καταστάσεων αδιεξόδου και ενεργούς αναμονής.
Ο συντονισμός σε πολυπρακτορικά περιβάλλοντα μέσα στα οποία οι πράκτορες δεν έχουν αντικρουόμενους στόχους εκφράζεται ως συνεργασία (cooperation), με πρωτόκολλα συνεργασίας (cooperation protocols), ενώ στην αντίθετη περίπτωση ορίζεται ως διαπραγμάτευση (negotiation), με πρωτόκολλα διαπραγμάτευσης (negotiation protocols).
Στα πρωτόκολλα συνεργασίας γίνεται κατάτμηση των διεργασιών στους συνεργαζόμενους πράκτορες. Στα πρωτόκολλα διαπραγμάτευσης βασικός στόχος είναι η από κοινού λήψη αποφάσεων για πράκτορες οι οποίοι έχουν προσωπικούς στόχους και επιθυμίες. Οι πράκτορες αρχικά επικοινωνούν μεταξύ τους για την ανάλυση των στόχων τους και στη συνέχεια διαπραγματεύονται μία αμοιβαία συμφωνία μέσω παραχωρήσεων ή αναζήτησης
Τα πρωτόκολλα αλληλεπίδρασης προσδιορίζουν την τυποποίηση των μηνυμάτων που μπορούν να ανταλλάξουν οι πράκτορες μεταξύ τους. Ένα πρωτόκολλο αλληλεπίδρασης θα μπορούσε να ορίσει την ακόλουθη τυποποίηση των μηνυμάτων που ανταλλάσσουν δύο πράκτορες:
- πρόταση ενέργειας,
- αποδοχή προτεινόμενης ενέργειας,
- απόρριψη προτεινόμενης ενέργειας,
- απόσυρση προτεινόμενης ενέργειας,
- διαφωνία σε μία προτεινόμενη ενέργεια,
- αντιπρόταση σε μία προτεινόμενη ενέργεια.
Βασιζόμενοι σε αυτού του τύπου τα μηνύματα, μία τυπική επικοινωνία μεταξύ του Πράκτορα_Α και του Πράκτορα_Β, η οποία είναι παράλληλα ένα στιγμιότυπο του πρωτοκόλλου αλληλεπίδρασης για την διαπραγμάτευση, είναι η ακόλουθη:
- Πράκτορας_Α: προτείνει ενέργεια σε Πράκτορα_Β.
- Πράκτορας_Β: αναλύει την πρόταση και εναλλακτικά:
- Στέλνει μήνυμα αποδοχής στον Πράκτορα_Α.
- Στέλνει μήνυμα αντιπρότασης στον Πράκτορα_Α.
- Στέλνει μήνυμα διαφωνίας στον Πράκτορα_Α.
- Στέλνει μήνυμα απόρριψης στον Πράκτορα_Α.
6.8.6 Πολυπρακτορικό περιβάλλον
Η αλληλεπίδραση των πρακτόρων πραγματοποιείται σε ένα πολυπρακτορικό περιβάλλον. Οι πράκτορες σε ένα τέτοιο περιβάλλον μπορεί να έχουν αντικρουόμενους στόχους, όπως για παράδειγμα πράκτορες κρατήσεων θέσεων σε θέατρα, όταν έχουν ως στόχο την κράτηση των τελευταίων περιορισμένων θέσεων μιας θεατρικής παράστασης, ή μπορεί να έχουν αντίστοιχα κοινούς στόχους, όπως για παράδειγμα πράκτορες που συνεργάζονται, για να υποδείξουν στο χρήστη συμφέροντα αεροπορικά εισιτήρια για έναν προορισμό και ταυτόχρονα να του προτείνουν ξενοδοχεία για να μείνει και εταιρείες ενοικίασης αυτοκινήτου. Το πιο χαρακτηριστικό παράδειγμα πολυπρακτορικού περιβάλλοντος είναι το Διαδίκτυο. Πρόκειται για ένα κατανεμημένο ανοικτό περιβάλλον συνεχώς εξελισσόμενο με αλλαγές στο μέγεθός του και στα δομικά του στοιχεία, μεταξύ των οποίων είναι και οι πράκτορες.
6.8.7 Γλώσσες επικοινωνίας
Για τη μεταξύ τους επικοινωνία οι πράκτορες χρησιμοποιούν ειδικές γλώσσες επικοινωνίας. Ένα πρωτόκολλο αλληλεπίδρασης ταυτίζεται με τη γλώσσα επικοινωνίας και καθορίζεται από δύο επίπεδα:
- το κατώτερο επίπεδο, το οποίο αφορά τη σύνταξη (syntax) ή τη μορφή των μηνυμάτων (format of messages),
- το ανώτερο επίπεδο, το οποίο αφορά τη σημασιολογία (semantics) ή το νόημα της πληροφορίας (meaning of information).
Οι κυριότερες γλώσσες επικοινωνίας πρακτόρων από τις αρχές της δεκαετίας του 1990 έως σήμερα είναι η KQML και η FIPA ACL. Η FIPA ACL δημιουργήθηκε από τον Οργανισμό για Ευφυείς Φυσικούς Πράκτορες (Foundation for Intelligent Physical Agents - FIPA) το 1999 και βασίστηκε στην προσπάθεια για διασύνδεση των διαφορετικών συστημάτων πρακτόρων που αναπτύσσονται στη βιομηχανία. Η FIPA ACL μοιάζει αρκετά στην KQML, αλλά έχει μία σημαντική διαφορά. Τα τελεστικά μηνύματα και η σημασιολογία της είναι αυστηρώς ορισμένα.
Η σημασιολογία της FIPA ACL εκφράζεται με τη χρήση της γλώσσας S/SL8 , η οποία περιλαμβάνει, μεταξύ άλλων, τις πεποιθήσεις, τις επιθυμίες και τις πράξεις των πρακτόρων. Με βάση τη λογική αυτή, κάθε μήνυμα ACL αντιστοιχεί σε ένα ορθολογικό αποτέλεσμα ή, αλλιώς, στο τι αποβλέπει ο αποστολέας του μηνύματος.
Σε γενικές γραμμές η FIPA ACL δεν μπορεί να χρησιμοποιηθεί σε πολυπρακτορικά συστήματα στα οποία δρουν πράκτορες συγκρουόμενων συμφερόντων. Στις περιπτώσεις εκείνες, όμως, κατά τις οποίες έχει διασφαλιστεί ότι δεν ισχύει κάτι τέτοιο, δεν παρουσιάζονται σημαντικά προβλήματα στην χρησιμοποίησή της. Τέλος, αξίζει να σημειωθεί πως το 2005 η FIPA ACL ως δημιούργημα της FIPA εντάχθηκε στην προτυποποίηση του IEEE.
6.9 Εφαρμογές πρακτόρων
Οι πράκτορες, ως ευφυή συστήματα, έχουν χρησιμοποιηθεί σε ένα πλήθος βιομηχανικών και εμπορικών εφαρμογών: για παρακολούθηση ασθενών, ρύθμιση εναέριας κυκλοφορίας, σε παιχνίδια, σε προσομοιώσεις, στο ηλεκτρονικό εμπόριο, για υποστήριξη χρηστών σε εφαρμογές γραφείου, κλπ.
Οι πράκτορες διεπαφής αποτελούν προσωπικούς βοηθούς (personal assistants) του χρήστη. Μαθαίνουν τις ιδιαίτερες προτιμήσεις του και τον βοηθούν στην ικανοποίηση αναγκών του ∙ παράδειγμα, ο γνωστός συνδετήρας του προγράμματος Word και τα προγράμματα που βοηθούν τους χρήστες να οργανώσουν το ημερήσιο πρόγραμμά τους (Calendar Agent, Calendar Aprentice).
Κλασικό παράδειγμα πολυπρακτορικού συστήματος είναι αυτό που χρησιμοποιείται για τον έλεγχο εναέριας κυκλοφορίας, όπου τα αεροσκάφη και τα διάφορα συστήματα ελέγχου αναπαρίστανται από πράκτορες και κάθε αεροσκάφος που εισέρχεται στην επιχειρησιακή ζώνη του αεροδρομίου ανατίθεται σε έναν διαφορετικό πράκτορα του συστήματος, που αναλαμβάνει την προσγείωση ή απογείωσή του.
Ιδιαίτερη κατηγορία αποτελούν οι πράκτορες διαδικτύου, που διευκολύνουν το χρήστη στην ανεύρεση χρήσιμης πληροφορίας, ενώ προσπαθούν να μάθουν τα ειδικότερα ενδιαφέροντα του χρήστη χρησιμοποιώντας μεθόδους μάθησης μηχανής, για να τον εξυπηρετήσουν καλύτερα. Οι πράκτορες αυτοί ανήκουν κυρίως σε τέσσερις διαφορετικούς τύπους:
- Buyer agent or shopping bot – βοήθεια προς τον πελάτη να βρει προϊόντα και υπηρεσίες. (Το MySimon το επιτυχέστερο bot έως σήμερα)
- User or personal agents – προσωποποιημένη υποστήριξη χρήστη
- Monitoring-and-surveillance agents (καλούνται επίσης predictive agents) – παρατήρηση άλλων συστημάτων και αναφορά στον ίδιο τον εξοπλισμό που τα υποστηρίζει.
- Data-mining agents – ενεργούν σε αποθηκευμένα δεδομένα για την εξόρυξη χρήσιμων δεδομένων.
Τέλος, η διαθεσιμότητα του παγκόσμιου χώρου των δεδομένων (Web of Data) δημιουργεί νέες ευκαιρίες για σχεδιασμό ευφυών πρακτόρων που θα εκμεταλλεύονται τεχνικές της ΤΝ σε σχέση με την αναπαράσταση γνώσης, την ανάκτηση πληροφορίας, την εξόρυξη δεδομένων και την ενσωμάτωση πληροφοριών σε βάσεις δεδομένων.