Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ - ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ - ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Διδακτορική Διατριβή ΔΙΔΑΚΤΟΡΙΚΗ ΔΙΑΤΡΙΒΗ Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης Θάνος Σταυρόπουλος Πτυχιούχος Τμήματος Πληροφορικής, Α.Π.Θ. Θάνος Σταυρόπουλος Πτυχιούχος Τμήματος Πληροφορικής, Α.Π.Θ. ΘΕΣΣΑΛΟΝΙΚΗ 2 Επιβλέπων Καθηγητής: Ιωάννης Βλαχάβας ΘΕΣΣΑΛΟΝΙΚΗ 2015

2

3 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ - ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Διδακτορική Διατριβή Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης Θάνος Σταυρόπουλος Πτυχιούχος Τμήματος Πληροφορικής, Α.Π.Θ. Επιβλέπων Καθηγητής: Ιωάννης Βλαχάβας ΘΕΣΣΑΛΟΝΙΚΗ 2015

4

5 ΘΑΝΟΣ ΣΤΑΥΡΟΠΟΥΛΟΣ Υπηρεσίες Ιστού σε Περιβάλλοντα Διάχυτης Νοημοσύνης Υποβλήθηκε στο Τμήμα Πληροφορικής του Αριστοτελείου Πανεπιστημίου Θεσσαλονίκης Ημερομηνία προφορικής εξέτασης: 2/6/2015 Συμβουλευτική Επιτροπή: Βλαχάβας Ιωάννης, Καθηγητής (επιβλέπων) Βασιλειάδης Νικόλαος, Αναπληρωτής Καθηγητής Βράκας Δημήτριος, Λέκτορας Εξεταστική Επιτροπή: Βασιλειάδης Νικόλαος, Αναπληρωτής Καθηγητής Βλαχάβας Ιωάννης, Καθηγητής Βράκας Δημήτριος, Λέκτορας Κατσαρός Παναγιώτης, Επίκουρος Καθηγητής Κομπατσιάρης Ιωάννης, Ερευνητής Α Βαθμίδας Μπικάκης Αντώνης, Λέκτορας Πλεξουσάκης Δημήτριος, Καθηγητής

6

7 Στους L.P. Gousaud, και Millin Kleineseel

8

9 Ευχαριστίες Η εκπόνηση της διατριβής πραγματοποιήθηκε στο Εργαστήριο Γλωσσών Προγραμματισμού και Τεχνολογίας Λογισμικού του Τμήματος Πληροφορικής του Αριστοτελείου Πανεπιστημίου Θεσσαλονίκης, σε συνεργασία με την ομάδα Ευφυών Συστημάτων και Επεξεργασίας Γνώσης. Θα ήθελα αρχικά να εκφράσω τις ευχαριστίες μου στον επιβλέποντα της διατριβής μου και διευθυντή του εργαστηρίου, Καθηγητή κ. Ιωάννη Βλαχάβα, για την εμπιστοσύνη που μου έδειξε εξαρχής, αλλά και για την καθοδήγηση που μου παρείχε κατά την περίοδο εκπόνησης της διατριβής. Θα ήθελα, επίσης, να τον ευχαριστήσω για την ευκαιρία που μου έδωσε να συμμετέχω στο ερευνητικό πρόγραμμα «Έξυπνο ΔΙΠΑΕ», το οποίο μου προσέφερε όχι μόνο την απαραίτητη χρηματοδότηση για τα τρία χρόνια διάρκειάς του, αλλά και πολύ σημαντική προγραμματιστική και ερευνητική εμπειρία. Για τους ίδιους ακριβώς λόγους, θα ήθελα να ευχαριστήσω τον Επίκουρο Καθηγητή κ. Δημήτρη Βράκα και μέλος της συμβουλευτικής επιτροπής, για την αρχική του εμπιστοσύνη, την καθοδήγηση και τις συμβουλές που μου παρείχε κατά την εκπόνηση της διατριβής. Επιπλέον, θα ήθελα να εκφράσω την ευγνωμοσύνη μου στον Αναπληρωτή Καθηγητή κ. Νικόλαο Βασιλειάδη, μέλος της συμβουλευτικής επιτροπής, για το χρόνο που αφιέρωσε και για τη βοήθεια που μου παρείχε. Η καίρια απόκριση και οι πολύτιμες συμβουλές τους θεωρώ πως είχαν αισθητό, θετικό αντίκτυπο στο συνολικό αποτέλεσμα της διατριβής. Παρομοίως, θα ήθελα να ευχαριστήσω και τα υπόλοιπα μέλη της εξεταστικής επιτροπής κκ. Αντώνιο Μπικάκη, Ιωάννη Κομπατσιάρη και Δημήτριο Πλεξουσάκη, για τις πολυτιμότατες συμβουλές, διορθώσεις και το ειλικρινές ενδιαφέρον για την παρούσα διατριβή. Σημαντικότατη ήταν η συμβολή και των μελών της Ομάδας Λογικού Προγραμματισμού και Ευφυών Συστημάτων. Ιδιαίτερες ευχαριστίες θα ήθελα να απευθύνω στα νεότερα μέλη και συνοδοιπόρους μου, κκ. Ιωάννη Καβακιώτη, Εμμανουήλ Ρήγα, Ελευθέριο Σπυρομήτρο και Ανέστη Φαχαντίδη, αλλά και στα παλαιότερα, κκ. Ευστράτιο Κοντόπουλο, Γεώργιο Μεδίτσκο και Γεώργιο Τζανή για τις εποικοδομητικές συζητήσεις μας, τη διαρκή τους συμπαράσταση και, κυρίως, διότι μοιράστηκαν μαζί μου τις καλές αλλά και τις όχι και τόσο καλές στιγμές που αναπόφευκτα προκύπτουν σε μία μακρά πορεία. Η διατριβή αυτή δε θα ήταν ολοκληρωμένη χωρίς τη συμβολή των φοιτητών που εκπόνησαν πτυχιακές και διπλωματικές εργασίες, κκ. Αλέξανδρο Αρβανιτίδη, Ιωάννη Αργυρίου, Στυλιανό Ανδρεάδη, Κωνσταντίνο Γόττη, Ανδρέα Δημήτρη, Γεώργιο Πηλικίδη και Θεόδωρο Τσομπανίδη. Ακόμα θα ήθελα να ευχαριστήσω τον Επίκουρο Καθηγητή του τμήματος κ. Αναστάσιο Γούναρη και όλους τους φοιτητές, μέλη του ACM Student Chapter AUTH, για την ε- μπιστοσύνη που μου έδειξαν και για την ευχάριστη συνεργασία, καθώς και τον Επίκουρο Καθηγητή κ. Γρηγόριο Τσουμάκα για τις πάντα εύστοχες συμβουλές του. Τέλος, θα ήθελα να εκφράσω τη βαθιά μου ευγνωμοσύνη στους γονείς μου Βασιλική και Γεώργιο και στον αδερφό μου Γεώργιο, για την απεριόριστη και πολύπλευρη στήριξή τους σε

10 όλη τη διάρκεια της ζωής μου, χωρίς την οποία τίποτα δε θα ήταν εφικτό. Θερμότατες ευχαριστίες απευθύνονται στη Μαργαρίτα Γραμματικοπούλου και στο Στυλιανό Ανδρεάδη για την εξονυχιστική επιμέλεια όλων των εργασιών ανεξαιρέτως, την ατέρμονη υπομονή και συμπαράσταση. 10

11 Περίληψη Η Διάχυτη Νοημοσύνη είναι ένα από τα τεχνολογικά οράματα του μέλλοντος, σύμφωνα με το οποίο αόρατες, κατανεμημένες υπολογιστικές μηχανές αλληλοεπιδρούν διαισθητικά και φυσικά με τον χρήστη, ενώ προσαρμόζονται ευφυώς στις εκάστοτε συγκυρίες. Η επιστήμη αυτή βρίσκει πολλά πεδία εφαρμογών έξυπνων χώρων, όπως τα Έξυπνα Σπίτια, η Διάχυτη Υποβοηθούμενη Διαβίωση, το εμπόριο, η βιομηχανία, η γεωργία κ.α. Μια και προϋποθέτει την ομοιόμορφη πρόσβαση σε κατανεμημένο υλικό (αισθητήρες, όργανα δράσης) και λογισμικό, είναι στενά συνυφασμένη με την τεχνολογία των Υπηρεσιών Ιστού. Ταυτόχρονα, ο Σημασιολογικός Ιστός προσφέρει τη δυνατότητα σημασιολογικής περιγραφής και ερμηνείας των υπηρεσιών από πράκτορες λογισμικού. Οι Σημασιολογικές Υπηρεσίες Ιστού, που προκύπτουν από τη σύγκλιση των δύο πεδίων, μπορούν να ταυτοποιούνται σημασιολογικά και να συντίθενται με ευφυή τρόπο. Η παρούσα διατριβή συνεισφέρει σε τρία επίπεδα στην έρευνα της Διάχυτης Νοημοσύνης και των τεχνολογιών των Υπηρεσιών Ιστού. Τα επίπεδα αυτά αντιστοιχούν στη διαστρωμάτωση μίας πραγματικής πλατφόρμας για Έξυπνα Κτίρια, η οποία εφαρμόζεται πειραματικά στο Διεθνές Πανεπιστήμιο Ελλάδος και στο σύστημα Smart IHU. Στο πρώτο επίπεδο, αναπτύχθηκε ένα ενδιάμεσο λογισμικό Υπηρεσιών Ιστού, το awesome, για την ολοκλήρωση και την ενσωμάτωση αισθητήρων και οργάνων δράσης, που αφορούν την ενέργεια και τις περιβαλλοντικές συνθήκες. Το λογισμικό εγκαταστάθηκε και αξιολογήθηκε ως προς την καταλληλόλητα και την κλιμάκωσή του στο Έξυπνο Κτίριο του Smart IHU. Στο δεύτερο επίπεδο, το ενδιάμεσο λογισμικό εμπλουτίζεται με σημασιολογικές περιγραφές SAWSDL. Για τον σκοπό αυτό αναπτύχθηκε η οντολογία BOnSAI για την περιγραφή των χώρων, των υπηρεσιών, των αισθητήρων και των οργάνων δράσης στα Έξυπνα Κτίρια. Στη συνέχεια, αναπτύχθηκε το εργαλείο Iridescent, για τη σημασιολογική επισήμανση Υπηρεσιών Ιστού με γραφικό, φιλικό και ημι-αυτόματο τρόπο. Επιπλέον, αναπτύχθηκε η διαδικτυακή εφαρμογή Tomaco, που προσφέρει σημασιολογική ταυτοποίηση και αυτόνομη, ευφυή σύνθεση Υπηρεσιών Ιστού. Ειδικά, ο αλγόριθμος ταυτοποίησης κατατάχθηκε πρώτος σε macro-averaging precision ανάμεσα στους δημοφιλέστερους αλγορίθμους, με κοινό πλαίσιο αξιολόγησης. Ενώ το εργαλείο Iridescent και το σύστημα Tomaco είναι ανεξάρτητα του πεδίου εφαρμογής, χρησιμοποιήθηκαν και στο Smart IHU, αφενός για τη δημιουργία των σημασιολογικών υπηρεσιών awesome-s με χρήση της BOnSAI και αφετέρου για τη σημασιολογική ταυτοποίησή τους. Στο ανώτερο επίπεδο του Έξυπνου Κτιρίου απαντώνται οι εφαρμογές παρακολούθησης και διαχείρισης, αλλά και οι ευφυείς πράκτορες. Αρχικά, οι εφαρμογές παρακολούθησης και διαχείρισης, προσαρμοσμένες στο Smart IHU, επιτρέπουν στους χρήστες να κατανοήσουν πλήρως την κατάσταση του κτιρίου, μέσω συγκερασμού ετερογενών δεδομένων, και με βάση

12 αυτή να προβούν σε άμεσες ή μακροπρόθεσμες ενέργειες. Συγκεκριμένα, μπορούν να συνθέσουν πολιτικές, οι οποίες εφαρμόζονται αυτόνομα από τους ευφυείς πράκτορες. Για τον σκοπό αυτό εξερευνήθηκαν και αξιολογήθηκαν διάφορες αρχιτεκτονικές πρακτόρων. Στο πρώτο στάδιο, δύο διαφορετικοί πράκτορες, με αντιδραστική και διαβουλευτική συμπεριφορά αντίστοιχα, κατάφεραν να εξοικονομήσουν το 4% της ημερήσιας ενεργειακής κατανάλωσης του κτιρίου. Στο δεύτερο στάδιο, οι δύο πράκτορες συνδυάστηκαν σε έναν υβριδικό πράκτορα και σε μία πιο ρεαλιστική πιλοτική εφαρμογή, φιλικότερη για τους χρήστες. Η ε- φαρμογή αυτή εξοικονόμησε 16% της ημερήσιας κατανάλωσης ενός δωματίου, ενώ αν επεκταθεί σε όλο το κτίριο μπορεί να αγγίξει το 6% της ημερήσιας απαίτησης του κτιρίου. 12

13 Abstract Ambient Intelligence is one of the leading technological paradigms of the future. Its vision mandates that ambient, distributed computing devices are interfacing unobtrusively, intuitively and physically with the user, while they also adapt to context. Ambient Intelligence application domains range from Smart Homes, Ambient Assisted Living and commerce to industry and agriculture. Since the realization of such applications fundamentally requires universal access to distributed hardware (sensors and actuators) and software, Ambient Intelligence is tightly interlinked with the Web Service technology. Meanwhile, the Semantic Web technologies have already provided the means to semantically describe services and allow their interpretation by software agents, fostering Semantic Web Services, which can be autonomously matched and composed. The thesis presents various contributions in both the fields of Ambient Intelligence and Web Services. Specific contributions follow a three-layer approach, in accordance to the development of a realistic Smart Building platform, namely Smart IHU, experimentally piloted at the International Hellenic University. The first layer targets the integration of various sensor and actuator networks for energy and environmental parameters, through a Web Service middleware, named awesome. The middleware is installed and evaluated for its suitability and scalability across the entire Smart Building for Smart IHU. On the second layer, the middleware is enriched with semantic annotations in SAWSDL. For that purpose, the ontology BOnSAI was developed to describe buildings, services, sensors and actuators in the Smart Building context. Furthermore, the Iridescent tool was developed, enabling semantic annotation of services in a user-friendly, graphical and even semi-automatic way. Finally, the Tomaco web application was developed to provide semantic matching and autonomous, intelligent composition of services. Notably, Tomaco s matching algorithm has ranked first in macro-averaging precision amongst state-of-the-art using a universal framework. While, Iridescent and Tomaco are domain-independent, they have been both applied in the Smart IHU framework, to author the awesome-s Semantic Web Services and semantically match them. The top-most layer of the proposed Smart Building system hosts monitoring and management applications as well as intelligent agents. Primarily, the monitoring and management applications, tailored to the Smart IHU system, provide users with in-depth analytics for the buildings condition through sensor data fusion and aggregation. Based on that, users are able to take either immediate or long-term action by devising policies that are autonomously enforced by the agents. To that end, various agent architectures have been investigated and evaluated. Initially, two different agents, of reactive and deliberative behavior respectively, have managed to save 4% of the building s daily energy consumption. Consequently, the

14 agents have been combined into a single, hybrid agent and embedded in a user friendly application, towards more realistic piloting. During piloting, the application has reduced daily energy consumption of a single office by 16%, which potentially translates to 6% of the building s consumption if the policies are adopted building-wide. 14

15 Περιεχόμενα Ευχαριστίες... 9 Περίληψη Abstract Περιεχόμενα Κατάλογος Σχημάτων Κατάλογος Πινάκων Εισαγωγή Αρχιτεκτονική Υπηρεσιών Ιστού Σημασιολογικός Ιστός και Υπηρεσίες Διάχυτη Νοημοσύνη Δομή και Συμβολή της Διατριβής Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Εισαγωγή Υπηρεσίες Ιστού Ορισμοί και Τεχνολογίες Ιδιότητες των Υπηρεσιών Ιστού Γλώσσα Περιγραφής Υπηρεσιών Ιστού WSDL Σημασιολογικός Ιστός και Οντολογίες Σημασιολογικός Ιστός Resource Description Framework (RDF) Web Ontology Language (OWL) Σημασιολογικές Υπηρεσίες Ιστού OWL-S Semantic Markup for Web Services WSMO - Web Service Modeling Ontology SAWSDL - Semantic Annotations for WSDL Συμπεράσματα Συμβολές της Διατριβής Διάχυτη Νοημοσύνη Εισαγωγή Διεπαφή Χρήστη στην AmI Πεδία Εφαρμογής της Διάχυτης Νοημοσύνης Έξυπνο Κτίριο Υγεία και Διάχυτη Υποβοηθούμενη Διαβίωση Ρομποτική... 85

16 3.4 Δίκτυα Συσκευών σε Έξυπνους Χώρους Επικοινωνία μέσω Καλωδίωσης Ρεύματος Τεχνολογίες Ραδιοσυχνότητας Σύγκριση Πρωτοκόλλων Αισθητήρες και Όργανα Δράσης Έξυπνες Μπρίζες Πλακέτες Αισθητήρων Έξυπνες Δαγκάνες Συσκευές Z-Wave Συμπεράσματα Συμβολές της Διατριβής Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εισαγωγή Hydra και Home SOA Semantic Spaces Emi MEDUSA και AmIi Polisave KASO, B3G SOM και UbiSOAP Ενδιάμεσο Λογισμικό για Σύνθεση Υπηρεσιών Σύγκριση Υπαρχόντων Συστημάτων με το awesome Το Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού awesome Επίπεδο Ολοκλήρωσης Επίπεδο Υπηρεσιών Ιστού Μεσολαβητής Υπηρεσιών awesome Εγκατάσταση του awesome στο Smart IHU Αποτελέσματα Συμπεράσματα Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εισαγωγή Οντολογία BOnSAI Υπάρχουσες Οντολογίες Διάχυτης Νοημοσύνης Έννοιες και Ιδιότητες της BOnSAI Στιγμιότυπο BOnSAI για το Smart IHU Εργαλείο Σημασιολογικής Επισήμανσης Iridescent Υπάρχοντα Εργαλεία Σημασιολογικής Επισήμανσης Υπηρεσιών Απαιτήσεις Εφαρμογής Iridescent Επισήμανση στο Iridescent Παροχή Συστάσεων στο Iridescent Επισήμανση Υπηρεσιών awesome-s στο Smart IHU Αξιολόγηση Χρηστών Αλγόριθμος Ταυτοποίησης Υπηρεσιών Ιστού Tomaco

17 5.4.1 Υπάρχουσες Προσεγγίσεις Ταυτοποίησης, Αποθετηρίων και Σύνθεσης Στρατηγική Βασισμένη στη Λογική Στρατηγική Συντακτικής Ομοιότητας της Σημασιολογίας Στρατηγική Συντακτικής Ομοιότητας Ονομάτων Υβριδική Στρατηγική Εφαρμογή Ταυτοποίησης και Σύνθεσης Tomaco Πειραματική Αξιολόγηση Συμπεράσματα Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εισαγωγή Εφαρμογές Παρακολούθησης και Διαχείρισης Η Εφαρμογή Διαχειριστή idealism Εφαρμογή Έξυπνου Τηλεφώνου PlugDroid Διαδικτυακή Εφαρμογή Smart IHU Portal Ευφυείς Πράκτορες για το Έξυπνο Κτίριο Πράκτορας Παραγωγικής Λογικής Wintermute Πράκτορας Αναιρέσιμης Λογικής DeL Υβριδικός Πράκτορας, Rule App, Manager App και OpenADR Αποτελέσματα Πιλοτικών Εφαρμογών στο Έξυπνο Κτίριο Πράκτορες Wintermute και DeL Υβριδικός Πράκτορας, Rule App και Manager App Συμπεράσματα Επίλογος και Μελλοντική Εργασία Συμπεράσματα Μελλοντική Εργασία Παράρτημα Α Αρχεία WSDL Παράρτημα Β Αρχεία SAWSDL Παράρτημα Γ Σύνολο Κανόνων Παράρτημα Δ Κατάλογος Δημοσιεύσεων Βιβλιογραφικές Αναφορές

18

19 Κατάλογος Σχημάτων Εικόνα 1.1. Η Αρχιτεκτονική Προσανατολισμένη στις Υπηρεσίες Εικόνα 2.1. Σχηματική απεικόνιση των στοιχείων και των μεταξύ τους σχέσεων στον ορισμό των WSDL 1.1 και Εικόνα 2.2: Γράφος των statements της RDF Εικόνα 2.3. Η εξέλιξη του Ιστού ως προς τη σημασιολογία, τα δεδομένα και τις διεργασίες 58 Εικόνα 2.4. Τα τέσσερα βασικά στοιχεία της WSMO Εικόνα 3.1. Δίκτυο συσκευών πάνω σε έναν μόνο χρήστη κατά το όραμα της Διάχυτης Νοημοσύνης Εικόνα 3.2. Διεπαφή χειρισμού με χειρονομίες σε ταινία επιστημονικής φαντασίας Εικόνα 3.3. Ανίχνευση όλων των αρθρώσεων από τη συσκευή εισόδου LEAP Motion Εικόνα 3.4. Εξελιγμένη προσαυξημένη πραγματικότητα και αναγνώριση ομιλίας σε ταινία επιστημονικής φαντασίας Εικόνα 3.5. Κυριότερα πεδία εφαρμογής Διάχυτης Νοημοσύνης Εικόνα 3.6. Βασική αρχή πίσω από το Google Power Meter είναι η μείωση της κατανάλωσης μέσω εκτενούς παρακολούθησης Εικόνα 3.7. Microsoft Hohm και Ford βελτιστοποιούν την κατανάλωση ενέργειας στο σπίτι Εικόνα 3.8. HydraGizer: αριστερά το interface που παρέχει κεντρικό έλεγχο των συσκευών, δεξιά η εφαρμογή για Android/iPhone Εικόνα 3.9. Το Hydra εκθέτει και ενοποιεί μέσω Υπηρεσιών Ιστού δεδομένα από συσκευές παρακολούθησης υγείας και εξωτερικές εφαρμογές Εικόνα Interface Γιατρού από το HydraMiddleware Εικόνα Έκφραση συναισθημάτων του διάχυτου ρομποτικού συστήματος icat Εικόνα Τα ρομπότ DustBot καθαρίζουν, μαζεύουν τα σκουπίδια και ανακυκλώνουν στην πόλη με διάχυτο τρόπο Εικόνα Διάχυτες διεπαφές προβάλλουν πληροφορίες πάνω σε καθημερινά αντικείμενα, όπως στον καθρέφτη του μπάνιου Εικόνα Ασύρματα Διασυνδεδεμένοι Αισθητήρες και Όργανα Δράσης σε ένα Έξυπνο Σπίτι Εικόνα Τα λογότυπα των επικρατέστερων πρωτοκόλλων PLC, INSTEON και X Εικόνα Τα λογότυπα των ZigBee Alliance και Z-Wave Εικόνα 3.17: Οι τοπολογίες αστέρα (Star), συμπλέγματος (Cluster) και κατανεμημένου (Mesh) δικτύου Εικόνα 3.18: Η στοίβα του πρωτοκόλλου ZigBee Εικόνα 3.19: Η στοίβα του πρωτοκόλλου Z-Wave ενσωματωμένη σε εφαρμογή Εικόνα 3.20: Οι κυριότερες συσκευές Plugwise (από αριστερά προς τα δεξιά):... 98

20 Εικόνα 3.21: Η εφαρμογή Plugwise Source για παρακολούθηση κατανάλωσης (αριστερά) και ανάθεση χρονοδιαγραμμάτων (δεξιά) Εικόνα 3.22: Ένα δίκτυo Plugwise Εικόνα Ένα δίκτυο PrismaSense με πέντε Πλακέτες Αισθητήρων, ένα Gateway και δύο WiFi πελάτες Εικόνα Το λογότυπο της εταιρίας και το πακέτο PrismaSense Εικόνα Εγκατάσταση δύο Έξυπνων Δαγκάνων στον κεντρικό πίνακα ρεύματος Εικόνα 3.26: Η οθόνη EnviR, ένας πομπός και η γέφυρα NetSmart Εικόνα 3.27: Επικοινωνία των συσκευών Current Cost μέσω της τεχνολογίας C Εικόνα Εγκατάσταση και λειτουργία του πακέτου OWL Εικόνα 3.29: Το Z-Wave προσαρμοσμένο στο οικιακό περιβάλλον Εικόνα Συσκευές Z-Wave (από αριστερά προς τα δεξιά και από επάνω προς τα κάτω): Ανιχνευτής Καπνού (SF812), Ανιχνευτής Κίνησης (HSP02), Αισθητήρας CO 2 (SensoAir), USB Ελεγκτής (Ζ-Stick Series 2), Ανιχνευτής Κίνησης (ZIR010), Πολύαισθητήρας (EZMotion) Εικόνα 3.31: Η Vera 2 και η γραφική διεπαφή της Εικόνα 4.1. Αρχιτεκτονική του Ενδιάμεσου Λογισμικού awesome Εικόνα 4.2. Αποδόμηση πακέτων ασύρματων δικτύων σε επίπεδο δεδομένων: τα πακέτα των Έξυπνων Μπριζών, Πλακετών Αισθητήρων και Z-Wave ακολουθούν τη δομή των Encrypted ZigBee, Open ZigBee και Z-Wave αντίστοιχα Εικόνα 4.3. Γραφική Διεπαφή Χρήστη του Οδηγού Έξυπνων Μπριζών Εικόνα 4.4. Γραφική Διεπαφή Χρήστη του Οδηγού Πλακετών Αισθητήρων Εικόνα 4.5. Γραφική Διεπαφή Χρήστη του Οδηγού Συσκευών Z-Wave Εικόνα 4.6. Γραφική διεπαφή του Μεσολαβητή Υπηρεσιών awesome Εικόνα 4.7. Εγκατάσταση δικτύων συσκευών και awesome web servers στο ισόγειου του Διεθνούς Πανεπιστημίου Ελλάδος Εικόνα 4.8. Συνύπαρξη πολλών δικτύων συσκευών στην εγκατάσταση του ισογείου του κτιρίου Εικόνα 4.9. Έξυπνες Μπρίζες εγκατεστημένες στο Data Center του κτιρίου Εικόνα Εγκατάσταση συσκευών στο εργαστήριο υπολογιστών LAB Εικόνα Αλληλεπίδραση servers, Μεσολαβητή και πελατών στην εγκατάσταση awesome του IHU Εικόνα Απεικόνιση κατανομής χρόνου απόκρισης κατά το δεύτερο πείραμα Εικόνα Απεικόνιση μέσης κατανάλωσης ισχύος κατά το δεύτερο πείραμα Εικόνα Απεικόνιση της κατανάλωσης ισχύος κατά την πάροδο του χρόνου στο δεύτερο πείραμα Εικόνα 5.1. Επέκταση της OWL-S με συμφραζόμενα σε σύστημα Διάχυτης Νοημοσύνης Εικόνα 5.2. Οι τέσσερις γενικότερες έννοιες στην οντολογία CoDAMoS Εικόνα 5.3. Έννοιες χρήστη στην οντολογία CoDAMoS Εικόνα 5.4. Έννοιες περιβάλλοντος στην οντολογία CoDAMoS Εικόνα 5.5. Έννοιες υπηρεσίας στην οντολογία CoDAMoS, όπως και στην OWL-S

21 Εικόνα 5.6. Οι κυριότερες κλάσεις και οι μεταξύ τους σχέσεις στην οντολογία OntoAMI Εικόνα 5.7. Διάγραμμα κλάσεων και ιδιοτήτων αντικειμένων στην οντολογία BOnSAI Εικόνα 5.8. Στιγμιότυπα Smart IHU Συσκευής PrismaQuax (πάνω αριστερά), Συσκευής PlugWiseCirclePlus (κάτω αριστερά) και Λειτουργιών του PlugwiseActionsService (δεξιά) Εικόνα 5.9. Υπόμνημα της γραφικής αναπαράστασης εννοιών στο Iridescent Εικόνα Το κύριο παράθυρο της εφαρμογής Iridescent Εικόνα Προβολή schema της SensorBoardService υπηρεσίας με επισημάνσεις Humidity και Temperature στο παράθυρο του Iridescent Εικόνα Παροχή Συστάσεων για το SmartPlugService WSDL, με τον αλγόριθμο Common Words Εικόνα Παροχή Συστάσεων για το SensorBoardService schema με Fuzzy String Search Εικόνα Χρόνοι απάντησης χρηστών ανά ερώτημα σε προβολή κώδικα Εικόνα Χρόνοι απάντησης χρηστών ανά ερώτημα σε προβολή δέντρου του Iridescent Εικόνα Μέσος χρόνος ανά ερώτημα σε προβολή κώδικα και δέντρου του Iridescent 182 Εικόνα Ποσοστά ορθών απαντήσεων ανά ερώτημα, σε προβολή κώδικα και δέντρου του Iridescent Εικόνα 5.18: Κατά Βάθος Αναζήτηση του WSDL δέντρου για εξαγωγή της σημασιολογίας 198 Εικόνα 5.19: Η συνάρτηση ταυτοποίησης του Tomaco εξάγει με DFS τη σημασιολογία, βαθμολογεί βασισμένη στη λογική και εφαρμόζει βάρη Εικόνα 5.20: Βαθμολόγηση στη στρατηγική Βασισμένη στη Λογική του Tomaco Εικόνα Η αρχιτεκτονική της διαδικτυακής εφαρμογής Tomaco Εικόνα Ταυτοποίηση Υπηρεσιών Ιστού στο γραφικό περιβάλλον του Tomaco Εικόνα 5.23: Σύνθεση Υπηρεσιών Ιστού στο Tomaco Εικόνα Macro-averaging precision των μεθόδων του Tomaco Εικόνα Μετρική F1 για τις μεθόδους του Tomaco Εικόνα Macro-averaging precision των Tomaco Hybrid, S3 και αλγορίθμων του S Εικόνα 6.1. Ροή πληροφοριών στο επίπεδο εφαρμογών του συστήματος Smart IHU δια μέσου των κατωτέρων στρωμάτων Εικόνα 6.2. Αρχιτεκτονική desktop, mobile, διαδικτυακών εφαρμογών και ευφυών πρακτόρων στο σύστημα Smart IHU Εικόνα 6.3. Προβολή ιστορικών δεδομένων κατανάλωσης και μέτρησης σε πραγματικό χρόνο μίας Έξυπνης Δαγκάνας, στην εφαρμογή idealism Εικόνα 6.4. Προβολή ιστορικού και λειτουργιών Έξυπνης Μπρίζας στην εφαρμογή idealism Εικόνα 6.5. Προβολή στο PlugDroid των καταχωρημένων δωματίων (αριστερά), συσκευών (κέντρο) και επιλεγμένης συσκευής με την τρέχουσα μέτρηση και τις λειτουργίες της (δεξιά)

22 Εικόνα 6.6. Η γραφική διεπαφή Smart IHU Portal και η απεικόνιση ενός γραφήματος της κατανομής κατανάλωσης ενέργειας ανά είδος συσκευών μέσα σε ένα γραφείο 228 Εικόνα 6.7. Κατανομή κατανάλωσης ενέργειας του κτιρίου για τον Ιούλιο 2014, με τον συγκερασμό δεδομένων Έξυπνων Δαγκανών και Έξυπνων Μπριζών Εικόνα 6.8. Εμφάνιση κατανάλωσης και εξοικονόμησης με τη μορφή ανταγωνιστικού παιχνιδιού μεταξύ των τριών σχολών του Πανεπιστημίου Εικόνα 6.9. Προβολή της Smart TV στην υποδοχή του κτιρίου με ενδείξεις κατανάλωσης σε πραγματικό χρόνο, γράφημα τελευταίων ημερών και επίπεδα CO 2 στις αίθουσες Εικόνα Τρισδιάστατο μοντέλο Smart IHU Google Earth Model (πάνω) και προβολή γραφήματος κατανάλωσης ενέργειας πάνω στο μοντέλο (κάτω) Εικόνα Αρχιτεκτονική του πράκτορα Wintermute Εικόνα Γραφική διεπαφή πράκτορα Wintermute, με δυνατότητες συγγραφής κανόνων (επάνω) και αυτόματη ανάκτηση διαθέσιμων κατηγορημάτων από τις υπηρεσίες (κάτω) Εικόνα Αρχιτεκτονική του πράκτορα DeL Εικόνα Αρχιτεκτονική του υβριδικού πράκτορα, εντός της εφαρμογής Rule App και συνύπαρξη με την Manager App Εικόνα Γραφικό περιβάλλον της εφαρμογής Manager App, όπου προβάλλεται λίστα συσκευών στα αντίστοιχα δωμάτια και προσφέρονται λειτουργίες On και Off για αυτές Εικόνα Γραφικό περιβάλλον εφαρμογής Rule App όπου προβάλλεται η λίστα των διαθέσιμων δωματίων, οι τρέχουσες μετρήσεις σε πραγματικό χρόνο, οι ενεργοί κανόνες και ρυθμίσεις, καθώς και οι τελευταίες ενέργειες Εικόνα Κατανάλωση του κτιρίου, του Data Center και των συσκευών κατά την έναρξη του πειράματος. Η εγκατάσταση του συστήματος στις 15 Ιουλίου είχε σαν αποτέλεσμα την εξάλειψη της πρωινής σπατάλης ενέργειας, η οποία επισημαίνεται στο σχήμα, κατά τον χρόνο δράσης του αντιδραστικού πράκτορα Εικόνα Μέση ωριαία κατανάλωση ανά ημέρα (σε Wh) για όλο το εικοσιτετράωρο, το παράθυρο διαβούλευσης και το παράθυρο αντιδραστικότητας Εικόνα Εγκατάσταση ηλεκτρικών συσκευών, αισθητήρων και οργάνων δράσης στο γραφείο ακαδημαϊκών βοηθών της Σχολής Επιστήμης και Τεχνολογίας Εικόνα Μέση ημερήσια κατανάλωση ενέργειας ανά ώρα για τις τέσσερις ομάδες συσκευών (φώτα, εκτυπωτές, ψύξη/θέρμανση και υπολογιστές) πριν (σημείο αναφοράς) και κατά τη διάρκεια του πειράματος Εικόνα Μέση συνολική ημερήσια κατανάλωση ανά είδος συσκευής, κατά την περίοδο μέτρησης σημείου αναφοράς, κατά την περίοδο του πειράματος και ποσό εξοικονόμησης

23 Κατάλογος Πινάκων Πίνακας 3.1. Σύγκριση ασύρματων πρωτοκόλλων Z-Wave και ZigBee Πίνακας 3.2. Σύγκριση κυριότερων πρωτοκόλλων καλωδίωσης και ραδιοσυχνότητας Πίνακας 4.1. Σύγκριση υπάρχοντος ενδιάμεσου λογισμικού και awesome Πίνακας 4.2. Εντολές και αποκρίσεις στο δίκτυο Έξυπνων Μπριζών Πίνακας 4.3. Λειτουργίες της Υπηρεσίας Έξυπνων Μπριζών Πίνακας 4.4. Λειτουργίες της Υπηρεσίας Πλακετών Αισθητήρων Πίνακας 4.5. Λειτουργίες της Υπηρεσίας Έξυπνων Δαγκάνων Πίνακας 4.6. Λειτουργίες της Υπηρεσίας Συσκευών Z-Wave Πίνακας 4.7. Λειτουργίες της Υπηρεσίας ΤΠ Πίνακας 4.8. Χαρακτηριστικά υπολογιστών που χρησιμοποιήθηκαν για τα πειράματα Πίνακας 4.9. Μέση κατανάλωση συνθηκών αδράνειας κατά το πρώτο πείραμα Πίνακας Κατανομή % του χρόνου απόκρισης κατά το δεύτερο πείραμα Πίνακας Μέση κατανάλωση ισχύος κατά το δεύτερο πείραμα Πίνακας Σύγκριση μεταξύ Netbook και Board. *ο συνολικός χρόνος αναφέρεται στο δεύτερο πείραμα Πίνακας 5.1. Σύγκριση χαρακτηριστικών των εργαλείων επισήμανσης με SAWSDL Πίνακας 5.2. Σημασιολογική επισήμανση των υπηρεσιών του awesome-s Πίνακας 5.3. Μέσος χρόνος και τυπική απόκλιση ανά Διεργασία κατά την αξιολόγηση λειτουργικότητας του Iridescent Πίνακας 5.4: Σύγκριση αλγορίθμων ως προς έτος και γλώσσα Πίνακας 5.5: Σύγκριση αλγορίθμων ως προς τη στρατηγική Πίνακας 5.6: Σύγκριση Tomaco και υπαρχόντων συστημάτων σύνθεσης Πίνακας 5.7. Μετρικές και επιδόσεις των μεθόδων Tomaco στο SME Πίνακας 5.8. Μετρικές και επιδόσεις των Tomaco S3, Hybdrid και αλγορίθμων του S Πίνακας 5.9. Χρονική κατανομή των διαδικασιών στις μεθόδους Tomaco Πίνακας 6.1. Χαρακτηριστικά των εφαρμογών παρακολούθησης και διαχείρισης Πίνακας 6.2. Εξοικονόμηση από την πειραματική εφαρμογή του συστήματος ανά ελεγχόμενη συσκευή, σύνολο συσκευών και σύνολο δωματίου

24

25 1 Εισαγωγή Η Διάχυτη Νοημοσύνη είναι ένα όραμα συστημάτων με έξυπνη συμπεριφορά και ενστικτώδη, μη παρεμβατική αλληλεπίδραση με το χρήστη. Την ίδια στιγμή, τα πληροφοριακά συστήματα βασισμένα σε Υπηρεσίες Ιστού δίνουν εξαιρετική ώθηση στις περισσότερες εφαρμογές Διάχυτης Νοημοσύνης. Σε αυτό το κεφάλαιο γίνεται μια επισκόπηση των τεχνολογιών των Υπηρεσιών Ιστού, του εμπλουτισμού τους με σημασιολογία και στη συνέχεια γίνεται φανερή η σύνδεση και η εκτεταμένη χρήση τους σε εφαρμογές Διάχυτης Νοημοσύνης. Τέλος, παρουσιάζεται η δομή και η συμβολή της παρούσας διατριβής σε πολλαπλά επίπεδα τέτοιων εφαρμογών και συστημάτων. 1.1 Αρχιτεκτονική Υπηρεσιών Ιστού Οι Υπηρεσίες Ιστού (Web Services) είναι εφαρμογές οι οποίες δίνουν πρόσβαση, μέσω τοπικού δικτύου ή Διαδικτύου, σε διαδικασίες απομακρυσμένων συστημάτων. Κατ αντιστοιχία με την απομακρυσμένη κλήση διαδικασιών, η επεξεργασία γίνεται στον απομακρυσμένο κόμβο, χρησιμοποιώντας τους πόρους του και επιστρέφοντας απλώς το αποτέλεσμα. Μια Υπηρεσία Ιστού είναι ένα σύστημα λογισμικού, σχεδιασμένο να υποστηρίζει τη διαλειτουργικότητα στις αλληλεπιδράσεις μιας υπολογιστικής μηχανής με μία άλλη (Booth et al., 2004). Με την αυστηρή έννοια του όρου, ορίζονται συγκεκριμένα πρότυπα και συγκεκριμένη αρχιτεκτονική. Τυπικά η υπηρεσία έχει μια περιγραφή σε γλώσσα WSDL (Web Service Description Language) 1 η οποία καθορίζει τη μορφή και το είδος των μηνυμάτων που ανταλλάσσονται με άλλα συστήματα. Τα μηνύματα αυτά συντάσσονται με το πρωτόκολλο SOAP (Simple Object Access protocol) και μεταδίδονται σε συνδυασμό με άλλα πρωτόκολλα του Ιστού. Και τα δύο πρότυπα έχουν σύνταξη XML 2. Ο παραπάνω ορισμός δίνει έμφαση στη διαλειτουργικότητα των Υπηρεσιών Ιστού και ξεκαθαρίζει τα πρωτόκολλα λειτουργίας τους. Σαφώς, το μεγαλύτερο πλεονέκτημα της χρήσης Υπηρεσιών Ιστού, είναι η δυνατότητα κλήσης και χρήσης τους από οποιαδήποτε μηχανή έχει πρόσβαση στο δίκτυο λειτουργίας τους ή το Διαδίκτυο, με την ευρεία σημερινή του διάδοση. Επιπλέον, οι Υπηρεσίες Ιστού είναι ευέλικτες, χαλαρά συνδεδεμένες, επαναχρησιμοποιήσιμες, και έχουν τη δυνατότητα μεγάλης κλιμάκωσης, συνδέοντας ποικίλες πλατφόρμες, εφαρμογές και επιχειρηματικούς συνεργάτες. Επιπλέον, ορίζεται και μία αρχιτεκτονική για τις Υπηρεσίες Ιστού, η επονομαζόμενη Αρχιτεκτονική Προσανατολισμένη στις Υπηρεσίες (Service Oriented Architecture SOA), στην οποία, τα δεδομένα είναι προσβάσιμα μέσα από Υπηρεσίες (Data as a Service) και επομένως 1 Web Service Description Language: 2 Extensible Markup Language:

26 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη ο προγραμματισμός γίνεται σε ένα ανώτερο, αφαιρετικό επίπεδο. Παρόμοιες πρακτικές ε- φαρμόζονται και για την έκθεση ολόκληρου λογισμικού ή πλατφόρμας μέσα από υπηρεσίες (Software as a Service, Platform as a Service). Σύμφωνα με την Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες, όπως αυτή παρουσιάζεται στην Εικόνα 1.1, ορίζονται τρεις οντότητες. Ο Πάροχος Υπηρεσιών (Service Provider) είναι το σύστημα που φιλοξενεί και προσφέρει μία Υπηρεσία Ιστού. Ο πάροχος, «διαφημίζει» ή αλλιώς γνωστοποιεί για τη διαθεσιμότητα μιας τέτοιας Υπηρεσίας, στέλνοντας την WSDL περιγραφή του σε έναν δημοπράτη Υπηρεσιών (Service Broker). Αυτός καταχωρεί τις Υπηρεσίες σε ένα πίνακα καταχωρήσεων UDDI (μια XML-γλώσσα για καταχωρήσεις) και στέλνει τις WSDL περιγραφές σε κάθε ενδιαφερόμενο αιτητή (Service Requester), μεσολαβώντας ανάμεσα σε αυτόν και τον πάροχο. Αν αυτός επιθυμεί τελικά να κάνει χρήση της Υπηρεσίας, επικοινωνεί άμεσα με τον πάροχο με μηνύματα SOAP. Εικόνα 1.1. Η Αρχιτεκτονική Προσανατολισμένη στις Υπηρεσίες 1.2 Σημασιολογικός Ιστός και Υπηρεσίες Ο Σημασιολογικός Ιστός είναι μία από τις σύγχρονες μορφές του Ιστού που στοχεύει στην ενσωμάτωση σημασιολογίας στα δεδομένα. Μέσα από αυτή τη διαδικασία, ορίζεται δομή και νόημα στο περιεχόμενο των ιστοσελίδων, δημιουργώντας ένα περιβάλλον, όπου οι πράκτορες λογισμικού μπορούν απευθείας να εκτελέσουν περίπλοκες διεργασίες για λογαριασμό των χρηστών, χωρίς ανθρώπινη παρέμβαση (Berners-Lee et al., 2001). Ο Σημασιολογικός Ιστός δεν είναι ένας ξεχωριστός Ιστός αλλά μία επέκταση του τρέχοντος, στον οποίον οι πληροφορίες φέρουν καλώς ορισμένο νόημα, επιτρέποντας τη συνεργασία ανθρώπων και υπολογιστών. Τα πρώτα βήματα για τη δημιουργία και ενσωμάτωση του Σημασιολογικού Ιστού στη δομή του υπάρχοντος Ιστού βρίσκονται ήδη σε εξέλιξη. Στο κοντινό μέλλον, αυτές οι εξελίξεις θα προάγουν το ρόλο και την ικανότητα των μηχανών να κατανοούν τα δεδομένα που σήμερα απλώς προβάλλονται. Σημαντικό ρόλο στο όραμα του Σημασιολογικού Ιστού παίζει η αναπαράσταση γνώσης. Συγκεκριμένα, οι υπολογιστές πρέπει να έχουν πρόσβαση σε δομημένες συλλογές πληροφοριών και σύνολα κανόνων συμπερασμού ώστε να εκτελούν αυτόματα συλλογιστική. Η αναπαράσταση γνώσης έχει ήδη μελετηθεί στα πλαίσια της Τεχνητής Νοημοσύνης πολύ πριν 26

27 Κεφάλαιο 1 Εισαγωγή τη δημιουργία του ίδιου του Ιστού. Παράλληλα, υπάρχει και η ανάγκη για την επίλυση αμφισημίας, συγκρίσεων μεταξύ εννοιών ή συνδυασμού τους. Ιδανικά ένα πρόγραμμα θα πρέπει να έχει έναν τρόπο να ανακαλύψει τέτοιες κοινές έννοιες σε οποιαδήποτε βάση δεδομένων συναντά. Οντολογίες Οι οντολογίες προσφέρουν λύση στα παραπάνω προβλήματα και αποτελούν πολύτιμο εργαλείο για το Σημασιολογικό Ιστό (Pulido et al., 2006), καθώς παρέχουν μια κοινή κατανόηση ενός πεδίου, ώστε να ξεπεραστούν διαφοροποιήσεις στο νόημα και στην ορολογία της σημασίας των όρων (Horrocks et al., 2005). Για το λόγο αυτό, λέγεται ότι οι οντολογίες υποστηρίζουν τη σημασιολογική διαλειτουργικότητα (semantic interoperability) ανάμεσα στις εφαρμογές του Παγκόσμιου (αλλά και του Σημασιολογικού) Ιστού. Στις εφαρμογές αυτές περιλαμβάνονται οι μηχανές αναζήτησης, οι διαδικτυακές πύλες πληροφοριών, οι ευφυείς πράκτορες και οι διαδικτυακές υπηρεσίες. Σύμφωνα με τον Gruber, η οντολογία ορίζεται ως «μία ρητή και τυπική προδιαγραφή μιας επίνοιας (conceptualization)» (Gruber, 1995) και παρέχει την τυπική περιγραφή ενός πεδίου ενδιαφέροντος (domain). Ως «επίνοια» (ή, εναλλακτικά, «εννοιολογική αναπαράσταση») εννοείται ένα αφηρημένο μοντέλο φαινομένων του κόσμου, στο οποίο έχουν προσδιοριστεί οι έννοιες που σχετίζονται με τα φαινόμενα αυτά. Ο όρος «ρητή» (explicit) αναφέρεται στο γεγονός, ότι το είδος των εννοιών που χρησιμοποιούνται και οι περιορισμοί που αφορούν τη χρήση αυτών των εννοιών είναι προσδιορισμένα και καταγεγραμμένα με σαφήνεια. Τέλος, με τον όρο «τυπική» (formal) γίνεται αναφορά στο γεγονός, ότι η οντολογία πρέπει να είναι μηχανικά αναγνώσιμη και αυτό επιτυγχάνεται μόνο μέσω μίας μαθηματικά ορισμένης σύνταξης και σημασιολογίας. Ένας πιο σύγχρονος ορισμός αναφέρει πως «μια οντολογία ορίζει ένα σύνολο από δομές αναπαράστασης, μέσω των οποίων μοντελοποιείται κάποιο πεδίο ενδιαφέροντος» (Gruber, 2009). Μια οντολογία αποτελείται από όρους και συσχετίσεις ανάμεσα στους ό- ρους. Οι όροι υποδηλώνουν τις έννοιες (κλάσεις αντικειμένων) του πεδίου, ενώ οι συσχετίσεις περιγράφουν ιεραρχικές σχέσεις μεταξύ των όρων, ιδιότητες που συνδέουν μεταξύ τους αντικείμενα κλάσεων, σχέσεις ισοδυναμίας και διαχωρισμού, καθώς και σημασιολογικούς συσχετισμούς ανάμεσα στους όρους με τη χρήση της λογικής. Επί του παρόντος, οι σημαντικότερες γλώσσες οντολογιών στο Σημασιολογικό Ιστό είναι οι εξής: Η RDF (Resource Description Framework Πλαίσιο Περιγραφής Πόρων) [Beckett 2004] αποτελεί ένα μοντέλο δεδομένων για πόρους, καθώς και για τις συσχετίσεις ανάμεσά τους. Η γλώσσα παρέχει ένα μοντέλο με απλή σημασιολογία για την περιγραφή των δεδομένων και χρησιμοποιεί σύνταξη XML για την κωδικοποίησή της. Η RDF Schema (RDF/S) (Brickley and Guha, 2000) αποτελεί μια γλώσσα περιγραφής λεξιλογίου, μέσω της οποίας περιγράφονται οι κλάσεις και οι ιδιότητες των 27

28 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη πόρων RDF. Η γλώσσα συνοδεύεται από σημασιολογία αναφορικά με συσχετίσεις ιεραρχίας των κλάσεων και των ιδιοτήτων και είναι εμπνευσμένη από τα σημασιολογικά δίκτυα, τα πλαίσια, τα σχήματα των βάσεων δεδομένων και τα μοντέλα δεδομένων γράφων. Η OWL (Web Ontology Language Γλώσσα Οντολογιών Ιστού) (McGuinness and Van Harmelen, 2004) είναι μία σαφώς πιο εκφραστική γλώσσα περιγραφής λεξιλογίου, μέσω της οποίας περιγράφονται οι κλάσεις αλλά και πολύπλοκες ιδιότητες που τις συνδέουν, όπως σχέσεις πληθικότητας (cardinality), ισότητα, τυποποιήσεις (typing), χαρακτηριστικά ιδιοτήτων (π.χ. συμμετρία) και απαριθμητές κλάσεις (enumerated classes). Η γλώσσα OWL παρέχει τρεις υπο-γλώσσες αυξανόμενης εκφραστικότητας, ανάλογα με την προτιθέμενη χρήση: OWL-Lite, OWL- DL και OWL-Full. Η γλώσσα OWL 2 (Grau et al., 2008) αποτελεί την πιο πρόσφατη σύσταση της W3C (2009) και επεκτείνει την γλώσσα OWL (η οποία πλέον αναφέρεται ως OWL 1) με ένα σύνολο από χρήσιμα χαρακτηριστικά τα οποία όλο και πιο συχνά ζητούνται από τους χρήστες. Όπως και στην γλώσσα OWL 1, η RDF/XML σύνταξη αποτελεί την επίσημη μορφή για την ανταλλαγή οντολογιών, και είναι η μόνη που επιβάλλεται να υποστηρίζεται από τα OWL 2 συμβατά συστήματα και εργαλεία προκειμένου να διασφαλίζεται η διαλειτουργικότητα. Παράλληλα της RDF/XML σύνταξης παρέχεται επιπρόσθετα η δυνατότητα για εναλλακτικές μορφές σύνταξης, συγκεκριμένα οι Turtle (Beckett and Berners-Lee, 2011), OWL 2 XML (Motik et al., 2009) και Manchester Syntax (Horridge and Patel-Schneider, 2009). Οι RDF και RDF/S αποτελούν περισσότερο γλώσσες μοντελοποίησης μετα-δεδομένων και ορισμού λεξιλογίων, αντίστοιχα. Θεωρούνται πολλές φορές γλώσσες οντολογιών καταχρηστικά, καθώς δε διαθέτουν μηχανισμούς συλλογιστικής. Οι παραπάνω γλώσσες αποτελούν από το Φεβρουάριο του συστάσεις του W3C (W3C Recommendations), θεωρούνται δηλαδή επίσημα ως πρότυπες τεχνολογίες του Ιστού. Σημασιολογικές Υπηρεσίες Ιστού Ο συνδυασμός των τεχνολογιών των απλών υπηρεσιών ιστού και του Σημασιολογικού Ιστού οδήγησε σε μια νέα γενιά υπηρεσιών, που καλούνται Σημασιολογικές Υπηρεσίες Ιστού - Semantic Web Services (McIlraith et al., 2001). Με τον όρο Σημασιολογική Υπηρεσία Ιστού εννοείται μια εφαρμογή λογισμικού, η οποία έχει το δικό της περιεχόμενο, καθώς και πλούσια περιγραφή των δυνατοτήτων της, χρησιμοποιώντας κατάλληλα σημασιολογικά δεδομένα. Η υπηρεσία αυτή μπορεί να δημοσιευτεί, να ανακαλυφθεί, να αποτελέσει τμήμα μιας σύνθετης υπηρεσίας και να χρησιμοποιηθεί είτε από ανθρώπους είτε από άλλες εφαρμογές του ιστού με ημι-αυτόματο ή αυτόματο τρόπο Δελτίο τύπου:

29 Κεφάλαιο 1 Εισαγωγή Οι Σημασιολογικές Υπηρεσίες Ιστού προσφέρουν σημαντικά πλεονεκτήματα σε σχέση με τις απλές Υπηρεσίες Ιστού. Όταν δεν εμπλουτίζονται με σημασιολογία, οι Υπηρεσίες Ιστού μπορούν να αλληλοεπιδρούν και να ενσωματώνονται σε οποιαδήποτε άλλη εφαρμογή, αποκλειστικά με τη χρήσης της XML, η οποία εξασφαλίζει κοινούς συντακτικούς κανόνες. Ω- στόσο, δεν παρέχεται καμία δυνατότητα σημασιολογικής ερμηνείας των περιεχομένων. Ο- μοίως, με τη χρήση του προτύπου WSDL, μπορούν να καθοριστούν οι λειτουργίες που μπορεί να εκτελεί μια υπηρεσία ιστού και η δομή των δεδομένων που μπορεί να στέλνει και να λαμβάνει. Ακόμα και με αυτές τις περιγραφές, όμως, δεν είναι δυνατό να καθοριστεί η σημασία τους ή αλλιώς περιορισμοί που αφορούν στη λειτουργία τους σε σημασιολογικό επίπεδο. Το γεγονός αυτό δυσχεραίνει την αλληλεπίδραση των υπηρεσιών ιστού και καθιστά ιδιαίτερα δύσκολη και πολύπλοκη την ανακάλυψη και σύνθεσή τους. Ένα επιπρόσθετο επίπεδο σημασιολογίας στην κορυφή της δομής των υπηρεσιών ι- στού, μπορεί να αντιμετωπίσει τα παραπάνω προβλήματα, εμπλουτίζοντάς τες με σημασιολογικές περιγραφές των δυνατοτήτων τους. Οι Σημασιολογικές Υπηρεσίες Ιστού επιτρέπουν τη δυναμική ανακάλυψη, σύνθεση και εκτέλεση, αξιοποιώντας πλήρως τη λειτουργικότητά τους και αυξάνοντας την αξία που μπορεί να αποκομίσουν οι χρήστες τους. Επιπλέον, αναμένεται να αλλάξουν τον τρόπο που οι επιχειρήσεις χρησιμοποιούν υπηρεσίες και ανταλλάσσουν γνώση στο διαδίκτυο. Περιγραφές Σημασιολογικών Υπηρεσιών Ιστού Στη βιβλιογραφία έχουν μέχρι στιγμής προταθεί δύο ειδών προσεγγίσεις για περιγραφή Σημασιολογικών Υπηρεσιών Ιστού. Οι πρώτες προσεγγίσεις χρονικά, βασίζονται σε οντολογικά μοντέλα και αλλιώς καλούνται από πάνω προς τα κάτω (top-down) προσεγγίσεις ή ανώτερες οντολογίες (upper ontologies): H οντολογία OWL-S, η οποία αποτελείται από τέσσερις βασικές οντολογίες OWL, Service, Service Profile, Service Model και Service Grounding, που προσφέρουν το απαραίτητο υπόβαθρο για τη σημασιολογική περιγραφή των υπηρεσιών Η οντολογία WSMO (Lausen et al., 2005), που ορίζει τις Οντολογίες, τους Στόχους, τους Μεσολαβητές και τις Υπηρεσίες Ιστού Μεταγενέστερα, προέκυψαν οι ελαφριές (lightweight) ή αλλιώς από κάτω προς τα πάνω (bottom-up) προσεγγίσεις, οι οποίες ορίζουν τη σημασιολογία πιο κοντά στις ουσιαστικές και λειτουργικές περιγραφές: H SAWSDL 4, η οποία ορίζει τις επισημάνσεις και τους σημασιολογικούς μετασχηματισμούς πάνω στο WSDL Η WSMO-Lite 5 η οποία επεκτείνει το SAWSDL με ορισμό μη λειτουργικών ιδιοτήτων και συμπεριφορά της υπηρεσίας 4 SAWSDL Specification: 5 WSMO-Lite Specification: 29

30 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Οι SA-REST 6, hrest 7 και MicroWSMO 8 που προσάπτουν σημασιολογία στο πρότυπο REST (Fielding, 2000) Από όλα τα παραπάνω, το πρότυπο SAWSDL κατάφερε να γίνει προτεινόμενο πρότυπο του W3C. Οι έννοιες και τα πρότυπα αυτά αναλύονται περισσότερο στην ενότητα 2.4. Συνοψίζοντας, χρησιμοποιώντας κάποιο από τα παραπάνω πρότυπα σημασιολογικής περιγραφής υπηρεσιών ιστού, μια υπηρεσία αποκτά σημασιολογική υπόσταση. Στη συνέχεια, με κατάλληλους αλγορίθμους και συστήματα συλλογιστικής οντολογιών, μπορούν να αυτοματοποιηθούν διάφορες διαδικασίες των υπηρεσιών ιστού, όπως η ανακάλυψη, η ταυτοποίηση και η σύνθεση. 1.3 Διάχυτη Νοημοσύνη Το όραμα της Διάχυτης Νοημοσύνης (Ambient Intelligence) αναφέρεται σε ηλεκτρονικά περιβάλλοντα που παρουσιάζουν ευαισθησία και ανταποκρίνονται στην παρουσία των ανθρώπων (Aarts and Encarnação, 2006). Συγκεκριμένα, περιλαμβάνει ένα σύνολο ιδεών που εκφράστηκαν τα τέλη της δεκαετίας του 90, για τα συστήματα του μέλλοντος ( ) και επηρέασαν την ανάπτυξη νέων ιδεών σε πολλές επιστήμες όπως την πληροφορική, την ηλεκτρομηχανική, το βιομηχανικό σχέδιο, των υπολογιστών, τη διεπαφή χρηστών και τη γνωσιακή επιστήμη. Σε ένα διάχυτο κόσμο, οι συσκευές λειτουργούν συλλογικά, πάνω από πληροφορίες και ευφυΐα που διαμοιράζεται στο δίκτυο που τις διασυνδέει. Ο φωτισμός, ο ήχος, η τεχνητή όραση και οι οικιακές συσκευές συνεργάζονται μεταξύ τους για να βελτιώσουν τη συνολική εμπειρία χρήστη, υποστηρίζοντας φυσική και διαισθητική διεπαφή μαζί του. Το πρότυπο της Διάχυτης Νοημοσύνης παρέχει τα θεμέλια για νέα μοντέλα τεχνολογικής καινοτομίας σε μια πολυδιάστατη κοινωνία. Ο απαραίτητος παράγοντας που επιτρέπει την υλοποίησή του, είναι η ενσωμάτωση ηλεκτρονικών στοιχείων μέσα στο περιβάλλον, α- φού βοηθά τους συμμετέχοντες, δηλαδή τους ανθρώπους και τα αντικείμενα να αλληλεπιδρούν με το περιβάλλον τους με αόρατο, φυσικό και αξιόπιστο τρόπο. Επιπλέον, τα προηγούμενα χρόνια, εκδηλώθηκε μεγάλο ενδιαφέρον για το ρόλο της πληροφορίας και των τηλεπικοινωνιών που υποστηρίζουν τις ζωές των ανθρώπων με επεκτάσεις στη φροντίδα υ- γείας, στη ψυχαγωγία και στη δημιουργικότητα. Ένα μεγάλο ζήτημα που αναδύθηκε σε σχέση με τα παραπάνω είναι οι στοιχειώδεις απαιτήσεις χρήστη που πρέπει να ικανοποιούν καινοτόμες συσκευές και υπηρεσίες, όπως η χρησιμότητα και η απλότητα χρήσης. Με άλλα λόγια, οι καινοτόμες τεχνολογίες δε θα πρέπει απαραίτητα να αυξάνουν τη λειτουργική περιπλοκότητα αλλά να συνεισφέρουν στην ευκολία χρήσης, κάτι που αποδείχθηκε δύσκολο να επιτευχθεί στην πράξη. 6 Semantic Annotation of Web Resources: 7 hrests HTML Microformat: 8 MicroWSMO Specification: 30

31 Κεφάλαιο 1 Εισαγωγή Η έννοια της διάχυσης στη Διάχυτη Νοημοσύνη αναφέρεται στο περιβάλλον και α- ντικατοπτρίζει την ανάγκη για ενσωμάτωση της τεχνολογίας ώστε να γίνεται μη παρεμβατική και ολοκληρωμένη μέσα σε καθημερινά αντικείμενα. Η έννοια της ευφυΐας εκφράζει την εκδήλωση κοινωνικής αλληλεπίδρασης εκ μέρους του ψηφιακού περιβάλλοντος. Για παράδειγμα, το περιβάλλον θα πρέπει να μπορεί να αναγνωρίζει τους θαμώνες, να μαθαίνει από τη συμπεριφορά τους, να προσαρμόζεται και πιθανώς να ενεργεί για λογαριασμό τους. Τα παραπάνω οδηγούν σε ένα σύνολο εξεχόντων χαρακτηριστικών της Διάχυτης Νοημοσύνης: Ενσωμάτωση (Integration) ηλεκτρονικών στοιχείων στο περιβάλλον σε μεγάλη κλίμακα Γνώση των Συμφραζομένων (Context-awareness) που περιλαμβάνει την ταυτοποίηση και αναγνώριση του χρήστη, της τοποθεσίας και των συνθηκών Προσωποποίηση (Personalization) με ρύθμιση των διεπαφών και των υπηρεσιών Προσαρμογή (Adaptation) μέσω μάθησης Πρόβλεψη (Anticipation) μέσω συλλογιστικής Όπως είναι φανερό, το πρότυπο της Διάχυτης Νοημοσύνης στοχεύει να βελτιώσει την ποιότητα ζωής με τη δημιουργία της επιθυμητής ατμόσφαιρας και λειτουργικότητας μέσω ευφυών, προσωποποιημένων και διασυνδεδεμένων συστημάτων και υπηρεσιών. Όσο και να φαίνεται απλή αυτή η απαίτηση, η αλήθεια είναι ότι η πραγματοποίησή της προς το παρόν είναι ανέφικτη. Απαιτεί μεθοδική έρευνα γύρω από τις τεχνολογίες ενσωμάτωσης, τη φυσική αλληλεπίδραση και την ανθρώπινη συμπεριφορά και αυτός είναι ο στόχος του πεδίου της Διάχυτης Νοημοσύνης. Από τις παραπάνω κατευθύνσεις έρευνας, ιδιαίτερη θέση κατέχουν οι τεχνολογίες της ηλεκτρονικής, των τηλεπικοινωνιών και της πληροφορικής. Στην πράξη, τα περιβάλλοντα Διάχυτης Νοημοσύνης βασίζονται στην επιστήμη ηλεκτρολόγων μηχανικών και πληροφορικής για την κατασκευή και ενσωμάτωση συσκευών. Επιπλέον, αναπτύσσεται παράλληλα η τάση διασύνδεσης στο Διαδίκτυο, κάθε αντικειμένου της καθημερινότητας, με δική του υπόσταση. Αυτή η τάση εκφράζεται στο όραμα του Διαδικτύου των Αντικειμένων - Internet of Things. Τα αντικείμενα αυτά περιλαμβάνουν αισθητήρες, αναλώσιμα προϊόντα, ηλεκτρικά οχήματα, ακόμα και ταχυδρομικά δέματα. Έμφαση δίνεται στη δικτύωση των έξυπνων συσκευών, αισθητήρων και οργάνων δράσης σε αυτά τα πλαίσια. Επομένως, και το όραμα και οι τεχνολογίες του Διαδικτύου των Αντικειμένων δίνουν ώθηση στη Διάχυτη Νοημοσύνη, α- φού διευκολύνεται η πρόσβαση στα δεδομένα των διασκορπισμένων αντικειμένων ή συσκευών στο περιβάλλον του ανθρώπου χρήστη. Μία ακόμα τεχνολογία που συνεισφέρει σημαντικά τόσο στο Διαδίκτυο των Αντικειμένων όσο και στη Διάχυτη Νοημοσύνη είναι οι Υπηρεσίες Ιστού. Οι οντότητες του Διαδικτύου των Αντικειμένων, θα πρέπει να είναι ευφυείς, διαλειτουργικές και ανεξάρτητες. Προβλέπεται ότι οι οντότητες αυτές θα υλοποιούνται και θα εκτίθενται μέσα από Υπηρεσίες Ι- στού, αφού τα πρότυπα των Υπηρεσιών Ιστού προσφέρουν δια-πλατφορμική, ομοιόμορφη πρόσβαση σε δεδομένα και λειτουργίες, μέσω του Διαδικτύου. Επίσης επιτρέπουν τη δυναμική ανακάλυψη και σύνθεση λειτουργικότητας των συσκευών. Πράγματι, στην έρευνα της 31

32 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Διάχυτης Νοημοσύνης, οι Υπηρεσίες Ιστού θεωρούνται πλέον απαραίτητο δομικό στοιχείο διαλειτουργικότητας και ενσωμάτωσης (Eisenhauer et al., 2010) (Davidyuk et al., 2011). 1.4 Δομή και Συμβολή της Διατριβής Στο πεδίο της Διάχυτης Νοημοσύνης, το πρόβλημα της ενσωμάτωσης και ολοκλήρωσης συσκευών θεωρείται από τα πιο σημαντικά θέματα (Aarts and Encarnação, 2006). Άλλα ανοιχτά θέματα περιλαμβάνουν την ενσωμάτωση και χρήση σημασιολογίας, την αυτόνομη ανακάλυψη υπηρεσιών και την ευφυή χρήση τους από πράκτορες λογισμικού. Ένα πεδίο που δείχνει ιδιαίτερο ενδιαφέρον, είναι η έρευνα για αποτελεσματικές εφαρμογές Έξυπνων Κτιρίων που καταφέρνουν να παρέχουν εξοικονόμηση ενέργειας και αυτοματισμούς. Η παρούσα διατριβή συμβάλλει στην αντιμετώπιση των παραπάνω προβλημάτων, παρουσιάζοντας μία ολοκληρωμένη μεθοδολογία, που περιλαμβάνει καινοτόμα εργαλεία και αλγορίθμους για την υλοποίηση ενός πλήρους συστήματος Διάχυτης Νοημοσύνης. Αρχικά, προτείνεται ένα ενδιάμεσο λογισμικό, βασισμένο στις Υπηρεσίες Ιστού, το οποίο παρέχει ομοιόμορφη πρόσβαση σε δεδομένα και λειτουργίες ετερογενών δικτύων αισθητήρων και οργάνων δράσης στο περιβάλλον. Στη συνέχεια, το ενδιάμεσο λογισμικό εμπλουτίζεται με σημασιολογικές περιγραφές που μπορούν να ανακαλύπτονται από πράκτορες λογισμικού. Συγκεκριμένα, προτείνεται μία οντολογία για Έξυπνα Κτίρια, ένα εργαλείο σημασιολογικής επισήμανσης υπηρεσιών και ένας καινοτόμος αλγόριθμος σημασιολογικής ταυτοποίησης υπηρεσιών. Με δεδομένη την ύπαρξη σημασιολογίας, προτείνονται εφαρμογές διαχείρισης και ευφυείς πράκτορες, οι οποίοι έχουν τη δυνατότητα να χειρίζονται αυτόνομα το Έ- ξυπνο Κτίριο εξοικονομώντας ενέργεια. Στα δύο επόμενα κεφάλαια γίνεται μία επισκόπηση της βιβλιογραφίας και των υπαρχόντων τεχνολογιών στα πεδία συμβολής της διατριβής. Συγκεκριμένα, στο δεύτερο κεφάλαιο παρουσιάζονται οι βασικές έννοιες της τεχνολογίας των Υπηρεσιών Ιστού και η πρότυπη γλώσσα περιγραφής Υπηρεσιών Ιστού, WSDL. Στη συνέχεια, γίνεται επισκόπηση των τεχνολογιών του Σημασιολογικού Ιστού, των οντολογιών και των γλωσσών περιγραφής τους, RDF και OWL. Στην τομή των πεδίων των Υπηρεσιών Ιστού και του Σημασιολογικού Ιστού απαντώνται οι έννοιες των Σημασιολογικών Υπηρεσιών Ιστού και τα πρότυπα περιγραφής τους. Τα πρότυπα αυτά χωρίζονται σε bottom-up (από κάτω προς τα πάνω) και top-down (από πάνω προς τα κάτω). Η διατριβή εξετάζει δύο από τα επικρατέστερα top-down πρότυπα, OWL-S και WSMO, που αλλιώς μπορούν να ιδωθούν σαν υψηλού επιπέδου οντολογίες (upper ontologies). Το πρότυπο το οποίο χρησιμοποιεί η διατριβή στο μεγαλύτερο μέρος της είναι το μεταγενέστερο, bottom-up πρότυπο, SAWSDL, που θεωρείται πιο ελαφρύ και εξετάζεται τελευταίο. Η συμβολή της διατριβής σε αυτές τις τεχνολογίες είναι η ανάπτυξη φιλικών στο χρήστη εργαλείων και εφαρμογών που τις χρησιμοποιούν με σκοπό τη μεγαλύτερη διάδοσή τους στην έρευνα και τη βιομηχανία. Στο τρίτο κεφάλαιο η βιβλιογραφική επισκόπηση συνεχίζεται με την παρουσίαση του επιστημονικού πεδίου της Διάχυτης Νοημοσύνης. Αρχικά, γίνεται μία εισαγωγή στις έννοιες του πεδίου και στο πώς αυτό διαχωρίζεται σε διάφορες εφαρμογές. Ιδιαίτερη αναφορά γίνε- 32

33 Κεφάλαιο 1 Εισαγωγή ται στη διεπαφή ανθρώπου και υπολογιστή σε τέτοια περιβάλλοντα. Η επισκόπηση ακολούθως εξετάζει τα σημαντικότερα πεδία εφαρμογής της Διάχυτης Νοημοσύνης και επικεντρώνεται στο οικιακό περιβάλλον, ένα από τα δημοφιλέστερα πεδία, που περιλαμβάνει εφαρμογές Έξυπνων Σπιτιών, Έξυπνων Κτιρίων και Έξυπνων Χώρων γενικότερα. Το πεδίο των ε- φαρμογών υγείας στη Διάχυτη Νοημοσύνη γνωρίζει κι αυτό ιδιαίτερη άνθηση. Οι εφαρμογές αυτές, που συχνά αναφέρονται με τη δική τους ορολογία ως Διάχυτη Υποβοηθούμενη Διαβίωση (AAL), έχουν ως στόχο την πρόληψη, την έγκαιρη διάγνωση και τη βελτίωση ποιότητας ζωής ομάδων χρηστών με δυσκολίες διαβίωσης. Επίσης, παρουσιάζεται το πεδίο των εφαρμογών Διάχυτης Νοημοσύνης με τη χρήση ρομποτικής και μία σειρά από συσκευές και συγκεκριμένα δίκτυα αισθητήρων και οργάνων δράσης, που χρησιμοποιούνται κατά κόρον σε εφαρμογές όλων των πεδίων. Οι συσκευές αυτές επιτρέπουν την παρακολούθηση ενέργειας, των περιβαλλοντικών συνθηκών και το χειρισμό συσκευών, ενώ η ενσωμάτωσή τους σε συστήματα Διάχυτης Νοημοσύνης είναι, άλλωστε, μία από τις συμβολές της διατριβής. Η συμβολή της διατριβής στο πεδίο της Διάχυτης Νοημοσύνης είναι αφενός η ανάπτυξη λογισμικού που ενσωματώνει έξυπνες συσκευές, επιτρέποντας την απρόσκοπτη χρήση τους σε κάθε πεδίο εφαρμογής, όπως η υγεία και τα έξυπνα κτίρια. Αφετέρου αναπτύσσεται μία πλήρης εφαρμογή Έξυπνου Κτιρίου, που περιλαμβάνει ενσωμάτωση συσκευών, σημασιολογία και ευφυΐα. Η μεθοδολογία ανάπτυξης αυτής της εφαρμογής, όπως παρουσιάζεται στη διατριβή, μπορεί να φανεί χρήσιμη στην έρευνα του πεδίου της Διάχυτης Νοημοσύνης συνολικά. Τα επόμενα κεφάλαια παρουσιάζουν εκτενώς τα σημεία συμβολής της διατριβής στα παραπάνω πεδία. Στο τέταρτο κεφάλαιο παρουσιάζεται το πρωτότυπο ενδιάμεσο λογισμικό βασισμένο σε Υπηρεσίες Ιστού awesome (Stavropoulos et al., 2013a), το οποίο έχει ως στόχο την ενσωμάτωση συσκευών σε περιβάλλοντα Διάχυτης Νοημοσύνης με ομοιόμορφο τρόπο. Ενώ οι εφαρμογές Διάχυτης Νοημοσύνης οφείλουν να χειρίζονται πληθώρα συσκευών σε υ- ψηλό επίπεδο, οι συσκευές από μόνες τους δεν το επιτρέπουν. Εμφανίζουν διάφορους περιορισμούς όσον αφορά τη μορφή δεδομένων, την πλατφόρμα και τη γλώσσα προγραμματισμού, ενώ ενδέχεται, επίσης, να εισέρχονται ή να εξέρχονται από το περιβάλλον. Η προτεινόμενη αρχιτεκτονική επιτρέπει την ομοιόμορφη πρόσβαση στα δεδομένα και τις λειτουργίες των συσκευών ανεξαρτήτως πλατφόρμας με χρήση προτύπων περιγραφής. Το ενδιάμεσο λογισμικό awesome ενσωματώνει εσωτερικά Υπηρεσίες υλικού (συσκευών) και λογισμικού και παρέχει μία ομοιόμορφη διεπαφή για τη χρήση τους, αλλά και τη δυναμική ανακάλυψη των διαθέσιμων κάθε στιγμή υπηρεσιών. Για την αξιολόγηση της κλιμάκωσης και των επιδόσεων του λογισμικού, έγινε εγκατάσταση στο κτίριο του Διεθνούς Πανεπιστημίου Ελλάδος, με χρήση μεγάλου αριθμού συσκευών διαφορετικού τύπου. Η εγκατάσταση αυτή είναι τμήμα του ολοκληρωμένου συστήματος Διάχυτης Νοημοσύνης, Smart IHU (Smart International Hellenic University), και χρησιμοποιείται ως θεμέλια δομή και για τις επόμενες συμβολές της διατριβής. Στο πέμπτο κεφάλαιο της διατριβής παρουσιάζεται η σημασιολογική επέκταση του προτεινόμενου συστήματος, καθώς και η δυνατότητα σημασιολογικής ταυτοποίησης των υπηρεσιών. Τα υπάρχοντα πρότυπα περιγραφής υπηρεσιών κάνουν δυνατή την ταυτοποίησή τους 33

34 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη σε συντακτικό μόνο επίπεδο (τύπων δεδομένων). Αντίθετα, με την προσθήκη σημασιολογίας οι Σημασιολογικές, πλέον, Υπηρεσίες Ιστού μπορούν να ερμηνευτούν αυτόματα από πράκτορες λογισμικού, διευκολύνοντας την Ανακάλυψη, Επιλογή, Ταυτοποίηση και Σύνθεσή τους. Για αυτόν τον σκοπό, αναπτύχθηκε η οντολογία BOnSAI για τη σημασιολογική περιγραφή εννοιών που συναντώνται στα Έξυπνα Κτίρια και στη Διάχυτη Νοημοσύνη γενικότερα (Stavropoulos et al., 2012). Η οντολογία ορίζει τις βασικές έννοιες των συσκευών, των μετρικών, των υπηρεσιών, των δεδομένων και των ιεραρχικών σχέσεων μεταξύ τους με τη γλώσσα OWL. Επιπλέον, επαναχρησιμοποιεί και παρέχει σύνδεση με υπάρχουσες οντολογίες, όπως η OWL-S οντολογία περιγραφής υπηρεσιών. Μία επέκταση της οντολογίας με κατάλληλες κλάσεις και στιγμιότυπα εφαρμόζεται για να περιγράψει τις έννοιες του συστήματος Smart IHU, επαληθεύοντας τη χρησιμότητα και καταλληλότητάς της για αντίστοιχα Έξυπνα Κτίρια. Στη συνέχεια, παρουσιάζεται η εφαρμογή Iridescent, που αποτελεί ένα πρωτότυπο εργαλείο για σημασιολογική περιγραφή υπηρεσιών με το πρότυπο SAWSDL (Stavropoulos et al., 2013b). Το Iridescent σκοπεύει να αντιμετωπίσει τη μικρή διάδοση σημασιολογικών προτύπων, όπως το SAWSDL, όσο και την έλλειψη φιλικών προς το χρήστη εργαλείων για αυτά. Ως εργαλείο, μπορεί να χρησιμοποιηθεί ανεξαρτήτως πεδίου, για την επισήμανση οποιασδήποτε υπηρεσίας WSDL στον Παγκόσμιο Ιστό. Κατά τη διαδικασία αυτή μπορούν να χρησιμοποιηθούν οντολογίες OWL και RDF, ενώ παρέχεται και δυνατότητα ημιαυτόματης επισήμανσης, με παροχή προτεινόμενων επισημάνσεων στον χρήστη βάσει της συντακτικής τους ομοιότητας. Το εργαλείο χρησιμοποιήθηκε για την επισήμανση των Υπηρεσιών του awe- SoME, από όπου προκύπτει η σημασιολογική διεπαφή του ενδιάμεσου λογισμικού, awe- SoME-S, ως σημασιολογικές υπηρεσίες του Smart IHU (Stavropoulos et al., 2014a). Η σημασιολογική ταυτοποίηση υπηρεσιών είναι μια διαδικασία που λαμβάνει χώρα στο ανώτερο επίπεδο εφαρμογών, με δεδομένη την ύπαρξη σημασιολογίας, για την οποία αναπτύχθηκε ο πρωτότυπος αλγόριθμος Tomaco (Stavropoulos et al., 2015a). Το πρόβλημα της σημασιολογικής ταυτοποίησης υπηρεσιών μεταφράζεται στην εύρεση μίας ή περισσοτέρων υπηρεσιών με βάση σημασιολογικών κριτηρίων. Ο αλγόριθμος Tomaco αντιμετωπίζει το πρόβλημα αυτό εστιάζοντας στα κριτήρια των δεδομένων εισόδου και εξόδου μίας υπηρεσίας και στοχεύει να συμβάλλει γενικότερα στο πεδίο των Σημασιολογικών Υπηρεσιών Ιστού που βρίσκονται διαθέσιμες στον Παγκόσμιο Ιστό. Βασισμένος στο πρότυπο SAWSDL, παρέχει τρεις πρωτότυπες παραλλαγές γνωστών στρατηγικών. Η στρατηγική βασισμένη στη λογική ακολουθεί σημασιολογικά κριτήρια και συλλογιστική για την εύρεση των επιθυμητών υπηρεσιών. Η στρατηγική βασισμένη στην ομοιότητα κειμένου της σημασιολογίας εφαρμόζει αλγορίθμους συντακτικής ομοιότητας πάνω στις σημασιολογικές επισημάνσεις της υπηρεσίας. Αντίθετα, η στρατηγική ομοιότητας κειμένου της ονοματολογίας εφαρμόζει τους ίδιους αλγορίθμους για την εύρεση συντακτικής ομοιότητας μεταξύ των ερωτημάτων και των ονομάτων συντακτικών περιγραφών (WSDL) των Υπηρεσιών. Επομένως, η τεχνική αυτή εφαρμόζεται εξίσου σε υπηρεσίες και λειτουργίες όπου απουσιάζουν οι σημασιολογικές επισημάνσεις. Η Υβριδική Στρατηγική συνδυάζει με πρωτότυπο τρόπο τις παραπάνω θεμελιώδεις στρατηγικές μεταξύ τους. 34

35 Κεφάλαιο 1 Εισαγωγή Ο αλγόριθμος αξιολογήθηκε εκτενώς, σε σχέση με τις επικρατέστερες υπάρχουσες προσεγγίσεις με χρήση ενός κοινώς αποδεκτού συνόλου δεδομένων (SAWSDL-TC). Η αξιολόγηση κατέταξε τον αλγόριθμο σε υψηλές θέσεις σε όλες τις μετρικές, αλλά και πρώτο στο διάγραμμα macro averaging precision (μέσης ακρίβειας). Ειδικότερα, ο αλγόριθμος αποδείχτηκε ο πλέον κατάλληλος, όταν ενδιαφέρει η ακρίβεια στις πρώτες δεκάδες σχετικών υπηρεσιών (που αντιστοιχούν στα πρώτα επίπεδα ανάκλησης). Εφόσον ο αλγόριθμος είναι γενικού σκοπού, εφαρμόζεται εξίσου στις υπηρεσίες του awesome, στα πλαίσια του συστήματος Smart IHU, αλλά και στον Παγκόσμιο Ιστό, αφού δημοσιεύεται μέσω της διαδικτυακής εφαρμογής αποθετηρίου Tomaco. Στο διαδικτυακό Tomaco μπορούν να φορτωθούν οποιαδήποτε διαδικτυακά ή τοπικά σύνολα υπηρεσιών και οντολογιών, ενώ επιπλέον προσφέρεται αυτόματη σύνθεση υπηρεσιών με χρήση σχεδιασμού ενεργειών. Στο έκτο κεφάλαιο της διατριβής παρουσιάζονται οι εφαρμογές που κάνουν ευφυή χρήση της σημασιολογικής και υλικής υποδομής που παρέχουν οι παραπάνω συμβολές της διατριβής. Συγκεκριμένα, οι εφαρμογές χωρίζονται σε δύο κατηγορίες: στις απλές εφαρμογές παρακολούθησης και διαχείρισης και στους ευφυείς πράκτορες του Έξυπνου Κτιρίου. Στην πρώτη κατηγορία απαντάται η διαχειριστική εφαρμογή idealism, μία εφαρμογή προσωπικού υπολογιστή που προσφέρει όλες τις διαχειριστικές δυνατότητες των συσκευών του κτιρίου, συν παρακολούθηση ιστορικού και σε πραγματικό χρόνο (Stavropoulos et al., 2011). Η ίδια λειτουργικότητα με πιο προηγμένες δυνατότητες διεπαφής με το περιβάλλον προσφέρεται από την εφαρμογή κινητού τηλεφώνου PlugDroid. Οι εξωτερικοί χρήστες, όπως επισκέπτες, φοιτητές και προσωπικό, χρησιμοποιούν τη διαδικτυακή εφαρμογή που προσφέρει δυνατότητες παρακολούθησης ιστορικού, στατιστικών και συγκριτικών διαγραμμάτων για την ενεργειακή κατανάλωση και τις περιβαλλοντικές συνθήκες του κτιρίου. Στη δεύτερη κατηγορία εφαρμογών εξετάζονται διαφορετικές προσεγγίσεις ευφυών πρακτόρων, που διαχειρίζονται αυτόματα την υποδομή του Έξυπνου Κτιρίου. Η πρώτη προσέγγιση ακολουθεί την παραγωγική συλλογιστική, για την υλοποίηση ενός αντιδραστικού πράκτορα, Wintermute, κατάλληλου για μικρά σύνολα κανόνων. Η δεύτερη προσέγγιση ενσωματώνει αναιρέσιμη λογική στον πράκτορα DeL. Η λογική αυτή κάνει τους κανόνες πιο διαισθητικούς και ευκολότερα διαχειρίσιμους από τον άνθρωπο-ειδικό. Επομένως, ο πράκτορας DeL ενσωματώνει μεγαλύτερα σύνολα κανόνων και διαχειρίζεται τη συλλογιστική κανόνων για μακροπρόθεσμη εξοικονόμηση ενέργειας (Stavropoulos et al., 2014a). Καθώς η επίλυση συγκρούσεων μεταξύ των δύο πρακτόρων είναι αδύνατη, οι δύο προσεγγίσεις ενσωματώνονται στον ίδιο πράκτορα, Rapp, σε δύο διακριτά επίπεδα. Ο πράκτορας αυτός συνδυάζει τόσο αντιδραστικές (βραχυπρόθεσμες) στρατηγικές, όσο και μακροπρόθεσμες. Επιπλέον, εξετάζονται μεθοδολογίες συνεργασίας πρακτόρων στο κτίριο για την επίτευξη κοινών στόχων (Stavropoulos et al., 2014c). Ο πράκτορας Rapp αξιολογήθηκε πειραματικά, σε συνδυασμό με τη διαχειριστική εφαρμογή Mapp, στο περιβάλλον ενός γραφείου του Έξυπνου Κτιρίου, αποφέροντας 17% ημερήσια εξοικονόμηση ενέργειας (Stavropoulos et al., 2014b). 35

36 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Στο έβδομο και τελευταίο κεφάλαιο η διατριβή ολοκληρώνει παρουσιάζοντας τα συνολικά συμπεράσματα μέσα από την εκπόνησή της και τις μελλοντικές κατευθύνσεις της έρευνας στα πεδία των Υπηρεσιών Ιστού και της Διάχυτης Νοημοσύνης. 36

37 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός

38

39 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Σε αυτό το κεφάλαιο παρουσιάζονται τα αλληλένδετα πεδία των Υπηρεσιών Ιστού (Web Services) και του Σημασιολογικού Ιστού (Semantic Web), που μαζί αποτελούν τον πρώτο άξονα συμβολής της διατριβής. Οι Υπηρεσίες Ιστού είναι μία σύγχρονη τεχνολογία του Παγκόσμιου Ιστού που προτείνει συγκεκριμένα πρότυπα για την περιγραφή και την κλήση απομακρυσμένων διαδικασιών, όπως η γλώσσα WSDL. Παράλληλα, ο Σημασιολογικός Ιστός είναι μία εξελιγμένη μορφή του Ιστού, όπου τα δεδομένα περιγράφονται σημασιολογικά με τη χρήση κατάλληλων μοντέλων. Τα μοντέλα αυτά, ή αλλιώς οντολογίες, συντάσσονται με τη βοήθεια υπαρχόντων προτύπων, όπως οι γλώσσες RDF και OWL. Στην τομή των δύο πεδίων σχηματίζεται το πεδίο των Σημασιολογικών Υπηρεσιών Ιστού. Οι Σημασιολογικές Υπηρεσίες Ιστού εμφανίζουν κι αυτές τα δικά τους πρότυπα περιγραφής και χρήσης. Χάρις τη σημασιολογία, προσφέρουν βελτιωμένες δυνατότητες επιλογής, ανακάλυψης, ταυτοποίησης και σύνθεσης, σε σχέση με τις παραδοσιακές υπηρεσίες. Στην πρώτη ενότητα του κεφαλαίου παρουσιάζονται οι βασικές έννοιες πίσω από την τεχνολογία των Υπηρεσιών Ιστού, καθώς και η γλώσσα WSDL, ενώ στη δεύτερη ενότητα γίνεται μία επισκόπηση των τεχνολογιών του Σημασιολογικού Ιστού και των γλωσσών RDF και OWL. Στην τρίτη ενότητα εξετάζεται η τομή των δύο πεδίων, οι Σημασιολογικές Υπηρεσίες Ιστού, καθώς και τα πιο δημοφιλή πρότυπα τέτοιων υπηρεσιών, SAWSDL, OWL-S και WSMO. 2.1 Εισαγωγή Στη σύγχρονη εποχή της επιχειρηματικής ανταγωνιστικότητας, η αποδοτική ανταλλαγή δεδομένων και η επικοινωνία μέσω του διαδικτύου είναι πολύ σημαντικά στοιχεία. Παραδοσιακά, οι εφαρμογές πελάτη - εξυπηρετητή ήταν επικεντρωμένες στα δεδομένα, ή αλλιώς προσανατολισμένες στην ανάκτηση και παρουσίαση των πληροφοριών, αγνοώντας τις επιχειρησιακές λειτουργίες και τη λογική των εφαρμογών. Αντίθετα, η μεταγενέστερη αρχιτεκτονική των διαδικτυακών εφαρμογών άλλαξε ως προς αυτό τον προσανατολισμό. Μια και οι διαδικτυακές εφαρμογές είναι βασισμένες στην κατανεμημένη αρχιτεκτονική και με την πρόοδο των τεχνολογιών Ιστού, οι εφαρμογές αυτές απομακρύνονται συνεχώς από την απλή παρουσίαση δεδομένων και προσανατολίζονται στην παροχή ενεργειών, απομακρυσμένων διαδικασιών και στις προσπελάσιμες κλήσεις εκτός του ενδοδικτύου μίας επιχείρησης, προάγοντας τη συνεργασία μεταξύ εταιριών (Business to Business B2B communications). Όλα τα παραπάνω περιλαμβάνονται στην έννοια των Υπηρεσιών Ιστού. Τα πρώτα δείγματα τέτοιων Αρχιτεκτονικών Προσανατολισμένων στις Υπηρεσίες (Service-Oriented Architectures) είναι οι RPC (Remote Procedure Calls) (Nelson, 1981), RMI (Remote Method Invocation) (Java and Tarr, 1998) και COBRA (Common Object Request Broker Architecture) (Pope, 1998).

40 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη H ανάγκη για συνδυασμό κατανεμημένων δεδομένων και λογισμικού εφαρμογών είναι ένα από τα σημαντικότερα κίνητρα που οδήγησε στην ανάπτυξη του διαδικτύου και εξακολουθεί να παίζει πρωτεύοντα ρόλο ακόμα και σήμερα. Ο Παγκόσμιος Ιστός έχει συμβάλει με τη σειρά του σε αυτήν την ανάγκη, αφού έχει οδηγήσει σε μια πρωτοφανή κατανομή των δεδομένων σε παγκόσμια κλίμακα. Έτσι, με βάση κάποια προσυμφωνημένα πρότυπα, οι χρήστες είναι δυνατό να διαμοιράσουν πληροφορία εύκολα, γρήγορα και με χαμηλό κόστος. Ό- μως, η κατανομή των εφαρμογών απαιτεί, επιπλέον, προσυμφωνημένα πρωτόκολλα και διεπαφές ανάμεσα στα κατανεμημένα τμήματα λογισμικού. Επίσης, τα δεδομένα που ανταλλάσσονται μεταξύ αυτών των οντοτήτων θα πρέπει να είναι επεξεργάσιμα και κατανοητά από τους πράκτορες λογισμικού. Οι εξελίξεις στην υποδομή του διαδικτύου οδήγησαν ταυτόχρονα στο Υπολογιστικό Νέφος (Cloud Computing) δηλαδή στην κατά απαίτηση διαδικτυακή κεντρική διάθεση υπολογιστικών πόρων (όπως δίκτυο, εξυπηρετητές, εφαρμογές και υπηρεσίες) με υψηλή ευελιξία, ελάχιστη προσπάθεια από τον χρήστη και υψηλή αυτοματοποίηση. Στο Υπολογιστικό Νέφος η αποθήκευση, η επεξεργασία και η χρήση δεδομένων, λογισμικού και υπηρεσιών γίνεται διαδικτυακά, μέσω απομακρυσμένων υπολογιστών σε κεντρικά Data Centers. Υπηρεσίες όπως η κατ' αίτηση παροχή εικονικών μηχανών, το διαδικτυακό ηλεκτρονικό ταχυδρομείο ή τα κοινωνικά δίκτυα συχνά βασίζονται στην τεχνολογία του Υπολογιστικού Νέφους. Οι χρήστες εξοικονομούν πόρους από την αγορά και συντήρηση λογισμικού, τη συντήρηση ακριβών εξυπηρετητών και εγκαταστάσεων αποθήκευσης δεδομένων. Η έννοια του Λογισμικού ως Υπηρεσία (SaaS - Software as a Service) αποτελεί μια από τις εκδοχές του Υπολογιστικού Νέφους και αναφέρεται σε λογισμικό που προσφέρεται διαδικτυακά ως Υπηρεσία στο Νέφος 9. Επομένως, οι Υπηρεσίες Ιστού απαιτούνται ως μέσο επικοινωνίας των χρηστών και του Υπολογιστικού Νέφους. Για να καλυφθούν αυτές οι απαιτήσεις, οι Αρχιτεκτονικές Προσανατολισμένες στις Υ- πηρεσίες αποτελούν έναν από τους βασικούς άξονες έρευνας και ανάπτυξης τα τελευταία χρόνια. Τα προσυμφωνημένα πρότυπα που έχουν προκύψει μέσα από αυτή την έρευνα έ- χουν ήδη ξεφύγει από τα πλαίσιά της και γνωρίζουν ήδη ευρεία διάδοση στη βιομηχανία, έχοντας ενσωματωθεί σε βιομηχανικά εργαλεία και τεχνολογίες. Οι Υπηρεσίες Ιστού φαίνεται να αποτελούν το ιδανικό ενδιάμεσο λογισμικό για την ανάπτυξη διαλειτουργικών κατανεμημένων εφαρμογών λογισμικού. Οι νέες τεχνολογίες των Υπηρεσιών Ιστού υπόσχονται εύκολη ολοκλήρωση/ενσωμάτωση λογισμικού με τη χρήση πρότυπων γλωσσών, όπως η XML, και μια κοινή πλατφόρμα επικοινωνίας, η οποία βασίζεται σε υπάρχοντα πρωτόκολλα του Ιστού. Ενώ οι σύγχρονες τεχνολογικές εξελίξεις γύρω από τις Υπηρεσίες Ιστού και τις Αρχιτεκτονικές Προσανατολισμένες στις Υπηρεσίες προσφέρουν απαραίτητες υποδομές, ένα ακόμη πεδίο κερδίζει έδαφος. Το πεδίο του Σημασιολογικού Ιστού υπόσχεται την εξέλιξη του Ιστού 713_el.htm 40 9 Δελτίο Τύπου Ευρωπαϊκής Επιτροπής:

41 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός στην επόμενη γενιά. Στοχεύει, δηλαδή, σε έναν Ιστό, στον οποίον τα δεδομένα που δημοσιεύονται δε θα απευθύνονται μόνο στους ανθρώπους, αλλά θα είναι κατανοητά και ερμηνεύσιμα και από τους υπολογιστές. Επομένως, ακόμα και οι πράκτορες λογισμικού του Ιστού θα μπορούν να εξάγουν συμπεράσματα βάσει της σημασιολογίας των πληροφοριών. Αν και τα δύο αυτά πεδία των Υπηρεσιών Ιστού και του Σημασιολογικού Ιστού είναι φαινομενικά ξένα μεταξύ τους, γίνονται πολλές ερευνητικές προσπάθειες για τον συνδυασμό τους, γνωστός ως Σημασιολογικές Υπηρεσίες Ιστού (Semantic Web Services). 2.2 Υπηρεσίες Ιστού Η αρχιτεκτονική που βασίζεται στις Υπηρεσίες είναι ένα αναπτυσσόμενο μοντέλο αρχιτεκτονικής, το οποίο χρησιμοποιεί την Υπηρεσία ως θεμελιώδη μονάδα για τη γρήγορη και με χαμηλό κόστος ανάπτυξη σύνθετων και κατανεμημένων εφαρμογών. Οι Υπηρεσίες είναι αυτοτελείς μονάδες, οι οποίες γίνονται διαθέσιμες μέσω τυποποιημένων ενδιάμεσων πλατφορμών και περιγράφονται, δημοσιεύονται, εντοπίζονται, οργανώνονται και προγραμματίζονται με γλώσσες βασισμένες σε XML. Σχεδόν οποιαδήποτε εφαρμογή μπορεί να μετατραπεί σε μια υπηρεσία που να είναι διαθέσιμη μέσω τοπικού δικτύου ή του διαδικτύου. Η έννοια του προσανατολισμού στις υπηρεσίες μεταφράζεται ουσιαστικά σε έναν τρόπο και μια μεθοδολογία προγραμματισμού βασισμένο στην ιδέα της περιγραφής των διαθέσιμων υπολογιστικών πόρων ως υπηρεσίες, οι οποίες μπορούν να χρησιμοποιηθούν μέσω μιας καλά ορισμένης και τυποποιημένης διεπαφής. Οι υπηρεσίες συνήθως αναπτύσσονται με έναν τρόπο ανεξάρτητο από το πεδίο στο οποίο θα χρησιμοποιηθούν. Αυτό σημαίνει ότι οι πάροχοι και οι πελάτες των υπηρεσιών είναι χαλαρά συνδεδεμένοι (loosely coupled) (Papazoglou, 2008). Οι τεχνολογίες των Υπηρεσιών Ιστού αποτελούν ορόσημο για την ανάπτυξη κατανεμημένων εφαρμογών μεγάλης κλίμακας των Αρχιτεκτονικών Προσανατολισμένων στις Υπηρεσίες. Συγκεκριμένα, προσφέρουν για πρώτη φορά ευρέως αποδεκτά πρότυπα, τα οποία καθορίζουν τον τρόπο με τον οποίο επικοινωνούν οι εφαρμογές, επιτρέποντας παράλληλα τον συνδυασμό τους σε πιο πολύπλοκες οντότητες. Αυτό είναι ένα σημαντικό βήμα σε σχέση με προηγούμενα πρότυπα, τα οποία δεν είχαν τον ίδιο βαθμό αποδοχής. Η αποτυχία τους ήταν κυρίως αποτέλεσμα της έλλειψης συμφωνίας μεταξύ μεγάλων παραγόντων της βιομηχανίας και της έλλειψης απλών, ανεξάρτητων εφαρμογής πρωτοκόλλων και τυποποιημένων τρόπων ανταλλαγής δεδομένων, όπως τα HTTP και XML, στα οποία βασίζονται οι Υπηρεσίες Ιστού Ορισμοί και Τεχνολογίες Οι έννοιες των Υπηρεσιών και των Υπηρεσιών Ιστού είναι πολλές φορές αμφίσημες ανάλογα με τα συμφραζόμενα. Στον επιχειρηματικό κόσμο, μια Υπηρεσία δηλώνει την παροχή μιας επιχειρηματικής δραστηριότητας, η οποία προσφέρει μια ορισμένη αξία στον πελάτη. Στην επιστήμη των υπολογιστών, οι όροι Υπηρεσία και Υπηρεσία Ιστού πολλές φορές θεωρούνται συνώνυμοι και αναφέρονται σε μια μονάδα λογισμικού, η οποία είναι προσβάσιμη μέσω του διαδικτύου και μιας πρότυπης διεπαφής. Μιλώντας, όμως, πιο εξειδικευμένα, οι δύο έννοιες διαχωρίζονται. Ο Preist (Preist, 2004) αποσαφηνίζει τους δύο όρους ως εξής: 41

42 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Ως Υπηρεσία ορίζεται η παροχή ενός διακριτού προϊόντος ή μιας αφηρημένης αξίας σε κάποιο πεδίο. Για παράδειγμα, ας θεωρήσουμε έναν χρήστη ο οποίος θέλει να κλείσει μια πτήση από την Αθήνα για τη Θεσσαλονίκη. Με βάση τον ορισμό της υπηρεσίας που δόθηκε προηγουμένως, εννοούμε τη μεταφορά που πρόκειται να γίνει, ικανοποιώντας τις απαιτήσεις του χρήστη, όπως την ημερομηνία του ταξιδιού. Η προσφορά αυτής της υπηρεσίας είναι ανεξάρτητη από τον τρόπο που ο πάροχος της υ- πηρεσίας και ο πελάτης αλληλοεπιδρούν. Είναι, δηλαδή, αδιάφορο αν ο χρήστης παίρνει το εισιτήριο από κάποιο κατάστημα της αεροπορικής εταιρίας ή αν χρησιμοποιεί το δικτυακό ιστοχώρο της εταιρίας για να κάνει την κράτηση. Ως Υπηρεσία Ιστού ορίζεται η υπολογιστική οντότητα που είναι προσβάσιμη μέσω του διαδικτύου και μέσω διεπαφών, οι οποίες είναι ανεξάρτητες πλατφορμών και γλωσσών προγραμματισμού. Με βάση το προηγούμενο παράδειγμα, η αεροπορική εταιρία μπορεί να προσφέρει μια προγραμματιστική οντότητα που να είναι προσβάσιμη μέσω προτύπων υπηρεσιών ιστού, δηλαδή μια Υπηρεσία Ιστού, για την κράτηση αεροπορικών εισιτηρίων. Μια Υπηρεσία Ιστού είναι ένα ηλεκτρονικό μέσο που εξυπηρετεί μια αίτηση μιας Υπηρεσίας μέσω τυποποιημένων προτύπων. Επομένως, η Υπηρεσία Ιστού είναι το μέσο για την κατανάλωση μιας υπηρεσίας. Συμπερασματικά, ο όρος Υπηρεσία είναι γενικά ανεξάρτητος τεχνολογίας και πιο αφηρημένος σε σχέση με τον όρο Υπηρεσία Ιστού. Οι Υπηρεσίες Ιστού είναι μια ειδική περίπτωση Υπηρεσιών, που εμπλέκει τον Παγκόσμιο Ιστό και συγκεκριμένες τεχνολογίες. Ο Gustavo Alonso, δίνει τον παρακάτω ορισμό (Alonso et al., 2004): Πολύ γενικά, μια Υπηρεσία Ιστού μπορεί να θεωρηθεί ως μια εφαρμογή που είναι προσβάσιμη από άλλες εφαρμογές στο διαδίκτυο. Με αυτόν, όμως, τον ορισμό, μπορεί να αποτελεί Υπηρεσία Ιστού καθετί έχει URL. Ένας πιο ξεκάθαρος ορισμός έχει δοθεί από το W3C (World Wide Web consortium). Σύμφωνα με αυτόν, Υπηρεσία Ιστού είναι μια εφαρμογή λογισμικού προσδιορισμένη από ένα URI, της οποίας οι διεπαφές και συνδέσεις (interfaces και bindings) μπορούν να οριστούν, να περιγραφούν και να ταυτοποιηθούν ως αντικείμενα XML. Μια Υπηρεσία Ιστού θα πρέπει να υποστηρίζει άμεσες αλληλεπιδράσεις μεταξύ πρακτόρων χρησιμοποιώντας μηνύματα σε XML μορφή, που θα ανταλλάσσονται μέσω πρωτοκόλλων του διαδικτύου. Ένα βασικό σημείο του ορισμού του W3C είναι πως οι Υπηρεσίες Ιστού δε θα πρέπει μόνο να είναι διαθέσιμες και λειτουργικές, αλλά να μπορούν να περιγραφούν και να προσφέρονται, ώστε να υπάρχει η δυνατότητα να δημιουργηθούν clients, που θα συνδέονται και θα αλληλοεπιδρούν με αυτές. Με άλλα λόγια, οι Υπηρεσίες Ιστού πρέπει να είναι συστατικά, τα οποία να μπορούν να ενσωματωθούν σε πιο σύνθετες κατανεμημένες εφαρμογές. Όταν αναφέρεται κανείς στις Υπηρεσίες Ιστού, οφείλει να αναφέρει συνήθως και τις αντίστοιχες τεχνολογίες περιγραφής και επικοινωνίας που ορίζουν το πρωτόκολλο διεπαφής με αυτές. Οι τεχνολογίες αυτές έχουν πάρει κυρίως δύο κατευθύνσεις: αυτή του WSDL/SOAP και αυτή του REST/HTTP. Η πρώτη μεθοδολογία περιγράφει εκτενώς με XML έγγραφα τόσο τις υπηρεσίες σε WSDL, όσο και τα ανταλλασσόμενα μηνύματα σε SOAP. Αυτή η προσέγγιση 42

43 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός συστήνεται από το ίδιο το W3C και γνωρίζει μεγάλη διάδοση στην έρευνα και βιομηχανία. Από την άλλη, οι REST/HTTP υπηρεσίες είναι ακόμα πιο διαδεδομένες στη βιομηχανία, αφού χρησιμοποιούνται ευρέως στις διεπαφές εφαρμογών νέφους (Cloud APIs). Ωστόσο, δε γνωρίζουν την ίδια διάδοση στην έρευνα, αφού η πληροφορία δεν είναι τόσο αυστηρά δομημένη. Η παρούσα διατριβή δεν αποτελεί εξαίρεση και ακολουθεί την πρώτη προσέγγιση του WSDL/SOAP. Στην συνέχεια της διατριβής, οι δύο όροι Υπηρεσία και Υπηρεσία Ιστού χρησιμοποιούνται ως συνώνυμες για να υποδηλώσουν μια Υπηρεσία Ιστού. Επιπλέον, έχει υιοθετηθεί το πρωτόκολλο WSDL για την περιγραφή και το πρωτόκολλο SOAP για την επικοινωνία. Πολλές φορές αναφερόμαστε στον όρο Υπηρεσία Ιστού θεωρώντας τη χρήση αυτών των προτύπων δεδομένη. Ειδικότερα, το πρότυπο WSDL ενδιαφέρει ιδιαίτερα, εφόσον χρησιμοποιείται και παρουσιάζεται σε επόμενη ενότητα. Στη συνέχεια εξετάζονται κάποιες από τις πρότυπες τεχνολογίες Υπηρεσιών Ιστού, SOAP και UDDI. SOAP Simple Object Access Protocol Το πρωτόκολλο SOAP (Simple Object Access Protocol) (Box et al., 2000) προσφέρει έναν απλό και ελαφρύ μηχανισμό για την ανταλλαγή δομημένης πληροφορίας μεταξύ υπολογιστών (peers) σε ένα αποκεντρωμένο, κατανεμημένο περιβάλλον με χρήση της XML. Εναλλακτικά, μπορεί να οριστεί ως το πρωτόκολλο που χρησιμοποιείται για την πρόσβαση σε μια Υπηρεσία Ιστού. Ο κυριότερος λόγος εξάπλωσης του SOAP είναι το γεγονός ότι χρησιμοποιεί το HTTP, το οποίο αποτελεί το βασικό πρωτόκολλο για την ανταλλαγή πληροφοριών μέσω του διαδικτύου. Το SOAP καθορίζει ένα τυποποιημένο σύνολο προδιαγραφών για τα κωδικοποιημένα με XML μηνύματα που ανταλλάσσονται μεταξύ των εφαρμογών στο διαδίκτυο. Είναι ανεξάρτητο από πλατφόρμες, συγκεκριμένες εφαρμογές λογισμικού και γλώσσες προγραμματισμού. Είναι απλό και εφόσον χρησιμοποιεί την XML, είναι και επεκτάσιμο. Καθορίζει ένα συγκεκριμένο τρόπο χρήσης του HTTP σαν το υπάρχον πρωτόκολλο επικοινωνίας για την ανταλλαγή μηνυμάτων SOAP μέσω δύο τελικών σημείων ενός δικτύου. Παρόλα αυτά, μπορεί να λειτουργήσει και πάνω από άλλα πρωτόκολλα του διαδικτύου, όπως το SMTP (Simple Mail Transfer Protocol) 10 ή το TCP (Transmission Control Protocol) (Fall and Stevens, 2011). Ουσιαστικά, αποτελεί ένα είδος φακέλου ο οποίος περιέχει πληροφορίες σχετικά με τα μηνύματα των Υπηρεσιών Ιστού. Ένα από τα βασικά χαρακτηριστικά του SOAP είναι η απλότητά του. Οι προδιαγραφές που ορίζει είναι απλές, έτσι ώστε να μπορεί εύκολα να εξασφαλιστεί η αλληλεπίδραση μεταξύ όλων των εφαρμογών, χωρίς δεσμεύσεις σε υπολογιστικά συστήματα και συγκεκριμένες εφαρμογές λογισμικού. Παράλληλα, επιτρέπει την προσθήκη προδιαγραφών σχετικών με 10 SMTP: 43

44 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη την ασφάλεια, τη δρομολόγηση και την αξιοπιστία των μεταφορών σε κατανεμημένα συστήματα, ανάλογα με τις εκάστοτε συνθήκες επικοινωνίας και το εκάστοτε πρωτόκολλο που χρησιμοποιείται. Επιπλέον, καθώς το SOAP μπορεί να χρησιμοποιηθεί πάνω σε οποιοδήποτε από τα πρωτόκολλα μεταφοράς που συνηθίζονται στο διαδίκτυο, είναι απαραίτητο να ορίζονται πρόσθετα χαρακτηριστικά και συνδέσεις για κάθε πρωτόκολλο, προκειμένου να τηρούνται οι κανόνες που πρέπει να ισχύουν σε κάθε περιβάλλον. Επομένως, ένα άλλο χαρακτηριστικό του SOAP είναι το γεγονός ότι παρέχει ένα ευέλικτο πλαίσιο για τον ορισμό πρόσθετων βοηθητικών συνδέσεων για κάθε πρωτόκολλο. Ένα τρίτο γνώρισμα του SOAP είναι το γεγονός ότι μπορεί να υποστηρίξει οποιοδήποτε προγραμματιστικό μοντέλο, ορίζοντας ένα σύστημα για τη διαχείριση ατομικών, μονόδρομων μηνυμάτων. Ωστόσο, υπάρχει περίπτωση να υπάρξει μια σειρά μηνυμάτων, όπου το ένα να διαδέχεται το άλλο, με αποτέλεσμα πολλά μηνύματα να συνδυαστούν σε μια συνολική ανταλλαγή μηνυμάτων Ιδιότητες των Υπηρεσιών Ιστού Μια Υπηρεσία Ιστού είναι μια ανεξάρτητη από πλατφόρμες, χαλαρά συνδεδεμένη, αυτόνομη εφαρμογή ιστού, η οποία μπορεί να περιγραφεί, δημοσιευθεί, ανακαλυφθεί και να διαμορφωθεί με τη χρήση προτύπων XML, με σκοπό την ανάπτυξη κατανεμημένων διαλειτουργικών εφαρμογών. Οι Υπηρεσίες Ιστού διαθέτουν την ικανότητα της αλληλεπίδρασης με άλλες υ- πηρεσίες σε μια κοινή υπολογιστική ενέργεια, έτσι ώστε να ολοκληρώσουν μια διεργασία, μια συναλλαγή ή να λύσουν ένα σύνθετο πρόβλημα. Επιπλέον, οι Υπηρεσίες Ιστού δημοσιεύουν τα χαρακτηριστικά τους προγραμματιστικά μέσω του διαδικτύου, χρησιμοποιώντας πρότυπα βασισμένα στην XML και μπορούν να υλοποιηθούν με τη χρήση αυτό-περιγραφόμενων διεπαφών (Papazoglou, 2008). Αναλυτικότερα: Οι Υπηρεσίες Ιστού είναι χαλαρά συνδεδεμένες προγραμματιστικές μονάδες. Οι Υπηρεσίες Ιστού διαφέρουν από προηγούμενες κατανεμημένες αρχιτεκτονικές σε ένα βασικό σημείο: Τα πρωτόκολλα, οι διεπαφές και οι κατάλογοι των υπηρεσιών ιστού επιτρέπουν τις εφαρμογές να λειτουργούν συνεργατικά βασισμένες στην αρχή της χαλαρής συνδεσιμότητας (loose coupling). Για την επίτευξη αυτού του χαρακτηριστικού, η διεπαφή της υπηρεσίας ορίζεται με έναν ουδέτερο τρόπο, ο οποίος είναι ανεξάρτητος από την πλατφόρμα, το λειτουργικό σύστημα και τη γλώσσα προγραμματισμού με την οποία έχει υλοποιηθεί η υπηρεσία. Αυτό επιτρέπει στις υπηρεσίες να αλληλοεπιδρούν μεταξύ τους με έναν ενιαίο και καθολικό τρόπο. Αυτό το χαρακτηριστικό του ουδέτερου ορισμού μιας διεπαφής είναι γνωστό ως χαλαρή συνδεσιμότητα. Οι Υπηρεσίες Ιστού ενθυλακώνουν μια συγκεκριμένη λειτουργία. Μια Υπηρεσία Ι- στού είναι μια αυτόνομη μονάδα λογισμικού, η οποία εκτελεί μια συγκεκριμένη εργασία. Αυτή η μονάδα περιγράφει τα χαρακτηριστικά της, όπως για παράδειγμα τις 44

45 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός λειτουργίες που υποστηρίζει, τις παραμέτρους, τους τύπους δεδομένων και τα πρωτόκολλα προσπέλασης, με τέτοιον τρόπο ώστε άλλες μονάδες λογισμικού να μπορούν να καθορίζουν τι κάνει, πώς μπορεί να κληθεί και τί αποτέλεσμα να περιμένουν από την κλήση της. Υπό αυτήν την έννοια, οι υπηρεσίες ιστού είναι δεσμευμένες μονάδες λογισμικού, αφού παρέχουν περιγραφές οι οποίες είναι προσβάσιμες από ό- λους και οι οποίες χρησιμοποιούνται για την προσπέλαση των υπηρεσιών για να μπορούν να τις χρησιμοποιήσουν πιθανοί πελάτες. Οι Υπηρεσίες Ιστού είναι προσπελάσιμες προγραμματιστικά. Μία Υπηρεσία Ιστού παρέχει προγραμματιστική πρόσβαση, επιτρέποντας τις Υπηρεσίες Ιστού να ενσωματωθούν σε απομακρυσμένες εφαρμογές. Το γεγονός αυτό επιτρέπει την υποβολή ερωτημάτων και την ενημέρωση της πληροφορίας, βελτιώνοντας την αποδοτικότητα και την ακρίβεια των προγραμμάτων-πελατών. Σε αντίθεση με τις ιστοσελίδες, οι Υπηρεσίες Ιστού δεν προορίζονται για τους ανθρώπους, αλλά χρησιμοποιούνται μέσω κώδικα από άλλες εφαρμογές. Ωστόσο, οι Υπηρεσίες Ιστού μπορούν να ενσωματωθούν σε εφαρμογές που απευθύνονται σε χρήστες. Οι Υπηρεσίες Ιστού μπορούν δυναμικά να ανακαλυφθούν και να συμπεριληφθούν σε εφαρμογές. Σε αντίθεση με υπάρχουσες διεπαφές, οι Υπηρεσίες Ιστού μπορούν να συντεθούν για την επίλυση ενός σύνθετου προβλήματος. Με αυτόν τον τρόπο, δίνεται η δυνατότητα της δυναμικής κλήσης των υπηρεσιών που χρειάζονται για την επίτευξη ενός στόχου, ανάλογα με τις προτιμήσεις του εκάστοτε χρήστη και τις περιστάσεις που ισχύουν κατά την κλήση των υπηρεσιών. Οι Υπηρεσίες Ιστού περιγράφονται με βάση μια τυποποιημένη γλώσσα περιγραφής. Η Γλώσσα Περιγραφής Υπηρεσιών Ιστού (Web Service Description Language - WSDL) περιγράφει τις λειτουργικές (functional) και τις μη λειτουργικές (non-functional) ιδιότητες των υπηρεσιών. Οι λειτουργικές ιδιότητες περιλαμβάνουν χαρακτηριστικά, τα οποία καθορίζουν τη συνολική συμπεριφορά της υπηρεσίας. Για παράδειγμα, καθορίζουν το πώς μπορεί να κληθεί μια υπηρεσία και η τοποθεσία στην οποία βρίσκεται. Αυτές οι περιγραφές εστιάζονται κυρίως στη σύνταξη των μηνυμάτων και το πώς πρέπει να διαμορφωθούν τα πρωτόκολλα δικτύου για την παράδοση αυτών των μηνυμάτων. Οι μη λειτουργικές ιδιότητες επικεντρώνονται σε ποιοτικά χαρακτηριστικά, όπως το κόστος της χρήσης μιας υπηρεσίας, σε χαρακτηριστικά απόδοσης, όπως ο χρόνος απόκρισης της υπηρεσίας, στην αξιοπιστία, στη διαθεσιμότητα, κτλ Γλώσσα Περιγραφής Υπηρεσιών Ιστού WSDL Καθώς τα πρωτόκολλα επικοινωνίας και οι μορφές των μηνυμάτων τυποποιούνται στη διαδικτυακή κοινότητα, γίνεται ολοένα και πιο εφικτή και σημαντική η ανάγκη για περιγραφή των επικοινωνιών με έναν πιο δομημένο τρόπο. Η γλώσσα περιγραφής Υπηρεσιών Ιστού WSDL (Web Service Description Language) 11 ικανοποιεί αυτή την ανάγκη ορίζοντας μια XML 11 Web Service Descri0ption Language 1.1: 45

46 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη γραμματική για να περιγράψει υπηρεσίες δικτύου ως συλλογές σημείων επικοινωνίας, ικανών για ανταλλαγή μηνυμάτων. Το κύριο χαρακτηριστικό του WSDL είναι η ιεραρχική δομή που διέπει τα δομικά του στοιχεία. Η Εικόνα 2.1 δείχνει σχηματικά την αποδόμηση των περιγραφών WSDL στα επιμέρους στοιχεία. Σε αυτό το σχήμα το έγγραφο χωρίζεται εννοιολογικά στο αφηρημένο τμήμα (abstract section), όπου ορίζονται οι τύποι δεδομένων, και στο συμπαγές τμήμα (concrete section), όπου ορίζεται η τοποθεσία και τα πρωτόκολλα κλήσης της Υπηρεσίας. Επίσης, είναι εμφανής η ενθυλάκωση των στοιχείων μέσα σε άλλα, ενώ παρατίθενται οι εκδόσεις 1.1 και 2.0 του προτύπου. Στο επίπεδο που εξετάζονται τα πρότυπα, οι διαφορές περιλαμβάνουν τη μετονομασία κάποιων στοιχείων και την παράληψη του στοιχείου message. Η διατριβή α- φορά και στις δύο εκδόσεις του προτύπου, αλλά παρακάτω αναλύεται, ως παράδειγμα, το πρότυπο 1.1. Εικόνα 2.1. Σχηματική απεικόνιση των στοιχείων και των μεταξύ τους σχέσεων στον ορισμό των WSDL 1.1 και 2.0 Ένα έγγραφο WSDL ορίζει μία υπηρεσία ως ένα σύνολο από τερματικά σημεία (endpoints) ή αλλιώς θύρες (ports). Ένα port ορίζεται ως η συσχέτιση μιας διεύθυνσης δικτύου με μια επαναχρησιμοποιήσιμη σύνδεση (binding). Ένα binding με τη σειρά του αποτελείται από το πρωτόκολλο και τις προδιαγραφές της μορφής των δεδομένων για ένα συγκεκριμένο τύπο θύρας (port type). Ένα port type ορίζεται ως μια συλλογή από λειτουργίες (operations). Τέλος, τα μηνύματα (messages) αποτελούν γενικές περιγραφές των δεδομένων που ανταλλάσσονται. Ο ορισμός των messages και των ports είναι αυτοτελής και δεν εξαρτάται από τη σύνδεση στην υπηρεσία, ή αλλιώς τα bindings. Έτσι, επιτρέπεται η επαναχρησιμοποίηση των ορισμών τύπων δεδομένων. Αναλυτικότερα, ακολουθεί μια περιγραφή όλων των στοιχείων, που μπορούν να χρησιμοποιηθούν στην κατασκευή μια υπηρεσίας. 46

47 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Το στοιχείο types (Κώδικας 2.1) ορίζει τους τύπους των δεδομένων βασισμένο στα πρότυπα XML Schema Definition ή XSD 12, όπως φαίνεται στη σύνταξη του Κώδικα 2.1. Οι τύποι δεδομένων που ορίζονται στο πεδίο types περικλείονται αργότερα στα μηνύματα που ανταλλάσσει η υπηρεσία. Ο λόγος που η WSDL προτιμά τη χρήση του XSD είναι για μέγιστη διαλειτουργικότητα και ουδετερότητα ως προς την πλατφόρμα. Κώδικας 2.1. Το στοιχείο types <definitions. > <types> <xsd:schema />* </types> </definitions> Το στοιχείο message αντιπροσωπεύει ένα ανταλλασσόμενο μήνυμα και αφορά τα δεδομένα που μετέχουν στην επικοινωνία. Ένα πεδίο message αποτελείται από ένα ή περισσότερα λογικά μέρη (parts). Κάθε part μπορεί να συνδεθεί με ένα type ή ένα element μέσω ενός αντίστοιχου χαρακτηριστικού (attribute) type. Το attribute element περιέχει ένα XSD element, το οποίο αναφέρει μέσω του ονόματός του (QName), ενώ το attribute type ένα XSD simpletype ή complextype, πάλι μέσω του ονόματος. Το message, όπως και το part, έχει ένα attribute name, που προσφέρει ένα μοναδικό όνομα για κάθε ένα message του εγγράφου. Ακολουθεί η σύνταξη ενός μηνύματος. Στον Κώδικα 2.2 φαίνεται αυτή η δομή, όπου με? συμβολίζονται τα στοιχεία που είναι προαιρετικά, ενώ με * συμβολίζονται τα στοιχεία που μπορούν να υπάρξουν μία ή περισσότερες φορές. Κώδικας 2.2. Το στοιχείο message <definitions. > <message name= name >* <part name= name element= qname? type= qname >?/>* </message> </definitions> Το port type είναι μια συλλογή από operations και το operation είναι η περιγραφή μιας ενέργειας που υποστηρίζεται από την υπηρεσία. Η WSDL προσφέρει τέσσερα αρχέτυπα μετάδοσης: One-way (μονόδρομη), όταν το operation μόνο λαμβάνει ένα μήνυμα. Request-response (αίτημα-απόκριση), όταν το operation δέχεται ένα μήνυμα και στέλνει ένα σχετικό μήνυμα. Solicit-response (αίτηση για απόκριση), όταν το operation στέλνει ένα μήνυμα και λαμβάνει ένα σχετικό. Notification (ειδοποίηση), όταν το operation μόνο αποστέλλει ένα μήνυμα. 12 XML Schema και XSD: 47

48 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Ένα operation της μορφής request-response αποτελείται από είσοδο (input), έξοδο (output) και σφάλμα (fault). Το input ορίζει τη μορφή του μηνύματος για το αίτημα, το output για την απόκριση και το προαιρετικό fault για τα μηνύματα λάθους, που μπορεί να προκύψουν ως αποτέλεσμα του operation. Ο Κώδικας 2.3 δείχνει τη σύνταξη ενός operation αυτής της μορφής. Κώδικας 2.3. Τα στοιχεία porttype, operation, input, output και fault <definitions. > <porttype >* <operation name= name parameterorder= name > <input name= name? message= qname /> <output name= name? message= qname /> <fault name= name message= qname />* </operation> </porttype> </definitions> Το binding ορίζει τις λεπτομέρειες σχετικά με τη μορφή του μηνύματος και του πρωτόκολλου για τα operations και τα messages που ορίζονται από κάποιο συγκεκριμένο port type. Για ένα port type μπορούν να υπάρχουν πολλά bindings. Το attribute name προσφέρει ένα μοναδικό όνομα για κάθε binding του εγγράφου, ενώ το attribute type το ενώνει με το port type που συνδέει. Στα σημεία (1) έως (5) του Κώδικα 2.4 μπορούν να οριστούν στοιχεία που επεκτείνουν το binding. Κώδικας 2.4. Το στοιχείο binding <definitions. > <binding name= name type= qname >* <-- extensibility element (1) -->* <operation name= name >* <-- extensibility element (2) -->* <input name= name?>? <-- extensibility element (3) -->* </input> <output name= name?>? <-- extensibility element (4) -->* </output> <fault name= name > * <-- extensibility element (5) -->* </fault> </operation> </binding> </definitions> 48

49 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Το port προσδιορίζει μια μοναδική διεύθυνση δικτύου για ένα binding. Το attribute name προσφέρει ένα μοναδικό όνομα για το port και το attribute binding αναφέρεται μέσω ονόματος (QName) στο αντίστοιχο binding. Στο σημείο (1) του Κώδικα 2.5 μπορούν να οριστούν οι πληροφορίες της διεύθυνσης για το port. Κώδικας 2.5. Το στοιχείο port <definitions. > <service >* <port name= name binding= qname >* <-- extensibility element (1) --> </port> </service> </definitions> Τέλος, το service αποτελεί μια συλλογή από σχετικά ports και η σύνταξή του φαίνεται στον Κώδικα 2.6. Κώδικας 2.6. Το στοιχείο service <definitions. > <service name= name >* <port />* </service> </definitions> 2.3 Σημασιολογικός Ιστός και Οντολογίες Στην ενότητα αυτή εξετάζονται οι έννοιες του Σημασιολογικού Ιστού, οι τεχνολογίες και τα πρότυπα που χρησιμοποιούνται για την υλοποίηση του Σημασιολογικός Ιστός Ο Παγκόσμιος Ιστός (World Wide Web ή εν συντομία Web) είναι ένα σύστημα διασυνδεδεμένων υπερκειμένων, προσβάσιμων από το διαδίκτυο. Κατά τα πρώτα στάδια ανάπτυξής του, την εποχή του λεγόμενου Web 1.0, οι χρήστες μπορούσαν να επισκεφτούν ιστοσελίδες, οι οποίες περιλάμβαναν κείμενο, εικόνες, βίντεο και άλλα πολυμέσα, και να πλοηγηθούν μεταξύ αυτών μέσω υπερσυνδέσμων. Η δημοτικότητα του Ιστού οδήγησε στην εξέλιξή του, αυτή του Web 2.0. Στην εξελιγμένη αυτή φάση της ανάπτυξη του Ιστού, δίνεται η δυνατότητα στους χρήστες να συμμετέχουν ενεργά, προσφέροντας το δικό τους υλικό. Έτσι, το στατικό περιεχόμενο των ιστοσελίδων μετατράπηκε σε δυναμικό και η αλληλοεπίδραση μεταξύ των χρηστών είχε ως αποτέλεσμα τη δημιουργία διαδικτυακών κοινοτήτων. Σήμερα, κυρίαρχες τέτοιες εφαρμογές είναι τα κοινωνικά δίκτυα, τα blogs και οι ιστότοποι διαμοιρασμού πολυμεσικού υλικού, που κάνουν εμφανή τον κοινωνικό πλέον χαρακτήρα του Ιστού. 49

50 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Προσπαθώντας να δώσει τον ορισμό του Σημασιολογικού Ιστού, ο Tim Berners-Lee ξεκινάει με μια αναφορά στο πρόβλημα ότι το μεγαλύτερο μέρος του περιεχομένου του Ιστού είναι σχεδιασμένο έτσι ώστε να αναγνωρίζεται από τους ανθρώπους, ενώ οι υπολογιστές αδυνατούν να το χειριστούν (Berners-Lee et al., 2001). Οι υπολογιστές έχουν δηλαδή την ι- κανότητα να αναλύουν ιστοσελίδες εντοπίζοντας σχεδιαστικά στοιχεία (π.χ. υπερσυνδέσμους για άλλες σελίδες), αλλά δεν υπάρχει αξιόπιστος τρόπος για να αντιληφθούν τη σημασία του περιεχομένου τους. Ο Σημασιολογικός Ιστός θεωρείται κομμάτι ή πολλές φορές είναι συνώνυμος του Web 3.0 και δημιουργήθηκε με στόχο να ορίσει μια δομή γύρω από τη σημασία του περιεχομένου των ιστοσελίδων. Δεν είναι ένας νέος, ξεχωριστός Ιστός, αλλά αποτελεί μια επέκταση του ήδη υπάρχοντος, όπου το νόημα της πληροφορίας είναι σαφώς ορισμένο και οι υπολογιστές μπορούν να συνεργαστούν είτε με τους χρήστες είτε μεταξύ τους. Το πρώτο στάδιο είναι η δόμηση της σημασιολογίας του περιεχομένου που διατίθεται ήδη στον Ιστό και απώτερος στόχος να αποκτήσουν οι μηχανές τη σημαντική λειτουργία του να καταλαβαίνουν τα δεδομένα, που τώρα απλά παρουσιάζονται στις ιστοσελίδες. Μέχρι σήμερα ο Ιστός έχει αναπτυχθεί με ταχείς ρυθμούς σε ένα μέσο διάθεσης κειμένων για ανθρώπους, παρά δεδομένων και πληροφορίας, που μπορούν να επεξεργαστούν αυτόματα. Ο Σημασιολογικός Ιστός στοχεύει στη διόρθωση αυτού του προβλήματος και θέτει την πρόκληση για μια γλώσσα που να εκφράζει δεδομένα, αλλά και κανόνες για συλλογισμό (reasoning) γύρω από τα δεδομένα. Επίσης, αυτή η γλώσσα θα πρέπει να επιτρέπει την εξαγωγή κανόνων από κάθε υπάρχον σύστημα αναπαράστασης γνώσης στον Ιστό. Για την υλοποίηση, συνεπώς, του Σημασιολογικού Ιστού μπορούν να οριστούν τέσσερις βασικές τεχνολογίες, που αναλύονται στις επόμενες παραγράφους. Πρώτο εργαλείο αποτελούν τα αναγνωριστικά, γνωστά ως Universal Resource Identifiers ή URIs. Χρησιμοποιούνται για τον προσδιορισμό αντικειμένων στο διαδίκτυο, με πιο γνωστά τα Universal Resource Locators (URLs), που προσδιορίζουν τη διεύθυνση μιας ιστοσελίδας. Ένα URL αποτελείται από τρία μέρη: τον υπολογιστή ή τη διεύθυνση διαδικτύου (domain) όπου βρίσκεται η ιστοσελίδα, το directory και το όνομα της σελίδας ή του αρχείου που διατίθεται online. Τα URIs ορίζονται με τον ίδιο τρόπο, αλλά δε χρησιμοποιούνται ως διεύθυνση μιας σελίδας, αλλά ως αναγνωριστικό ενός στοιχείου, που μπορεί να είναι ή να μην είναι διαθέσιμο στο διαδίκτυο. Επόμενη τεχνολογία είναι η γλώσσα σήμανσης XML. Η XML επιτρέπει στον κάθε χρήστη να κατασκευάσει τις δικές του ετικέτες (π.χ. <zipcode>) και να επισημάνει με αυτές ιστοσελίδες ή τμήματα κειμένου σε μια σελίδα. Οι υπολογιστές μπορούν να αξιοποιήσουν την πληροφορία που δίνουν οι ετικέτες, όμως με την προϋπόθεση ότι γνωρίζουν γιατί τις χρησιμοποίησε ο συγγραφέας της σελίδας. Επομένως, η XML προσφέρει μια δομή σε ένα αρχείο, αλλά δε δίνει καμία πληροφορία σχετικά με το τι σημαίνει αυτή η δομή. Η τρίτη τεχνολογία αφορά τις οντολογίες. Στον τομέα της φιλοσοφίας, ως οντολογία ορίζεται η θεωρία γύρω από τη φύση της ύπαρξης, ενώ στον τομέα της Τεχνητής Νοημοσύνης και του Ιστού η οντολογία είναι ένα έγγραφο που ορίζει επίσημα τις σχέσεις μεταξύ όρων. 50

51 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Εικόνα 2.2: Γράφος των statements της RDF Για παράδειγμα, μια κοινή έννοια μπορεί να προσδιορίζεται από δύο διαφορετικά αναγνωριστικά. Ένα πρόγραμμα θα πρέπει να γνωρίζει πως οι δύο όροι χρησιμοποιούνται για να εκφράσουν την ίδια ιδέα και εδώ εισάγεται η χρήση της οντολογίας. Μια οντολογία του Ιστού αποτελείται από μία ταξινόμηση και ένα σύνολο συμπερασματικών κανόνων. Η ταξινόμηση ορίζει κλάσεις αντικειμένων και σχέσεις μεταξύ τους. Οι κλάσεις μπορούν να έχουν ιδιότητες, που τις συνδέουν με άλλες κλάσεις, καθώς και υποκλάσεις, που κληρονομούν αυτές τις ιδιότητες. Η ταξινόμηση καλύπτει την αναπαράσταση της γνώσης, ενώ οι συμπερασματικοί κανόνες παρέχουν μια περαιτέρω χρήση των όρων. Για παράδειγμα, εάν η κλάση κωδικός πόλης σχετίζεται με την κλάση ταχυδρομικός κωδικός και η κλάση διεύθυνση χρησιμοποιεί την κλάση κωδικός πόλης, τότε βγαίνει το συμπέρασμα ότι η διεύθυνση σχετίζεται με τον ταχυδρομικό κωδικό. Οι οντολογίες μπορούν να ενισχύσουν τις λειτουργίες του Ιστού. Μπορούν να βελτιώσουν την ακρίβεια των μηχανών αναζήτησης, αφού πραγματοποιείται αναζήτηση σύμφωνα με την ακριβή έννοια και όχι με τη χρήση διφορούμενων λέξεων-κλειδιών. Ακόμη, οι οντολογίες επιτρέπουν σε προγράμματα να απαντούν σε πολύπλοκες ερωτήσεις, των οποίων οι απαντήσεις δε βρίσκονται μόνο σε μία ιστοσελίδα. Δύο βασικές γλώσσες περιγραφής ο- ντολογιών αποτελούν οι RDF και OWL, που θα αναλυθούν λεπτομερώς στη συνέχεια. Τέταρτη και τελευταία τεχνολογία είναι οι πράκτορες. Η πραγματική δύναμη του Σημασιολογικού Ιστού θα γίνει αισθητή όταν θα κατασκευαστούν προγράμματα, τα οποία θα συλλέγουν περιεχόμενο του Ιστού από διαφορετικές πηγές, θα επεξεργάζονται την πληροφορία και θα ανταλλάσσουν αποτελέσματα με άλλα προγράμματα. Η αποτελεσματικότητα τέτοιων πρακτόρων λογισμικού θα αυξηθεί εκθετικά όταν καταστεί διαθέσιμο περισσότερο υλικό αναγνώσιμο από μηχανές. Τελικός στόχος είναι ότι πράκτορες που δε σχεδιάστηκαν για να δουλεύουν συνεργατικά θα μπορούν να μεταφέρουν δεδομένα μεταξύ τους, όταν αυτά τα δεδομένα θα συνοδεύονται από σημασιολογία. 51

52 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Resource Description Framework (RDF) Η RDF είναι η μια από τις δύο γλώσσες οντολογιών που θα αναφερθούν και ορίζει ένα πλαίσιο περιγραφής πόρων (Resource Description Framework) (Manola et al., 2004). Σκοπός της είναι η αναπαράσταση μεταδεδομένων για πόρους του Ιστού, όπως ο τίτλος, ο συγγραφέας και η ημερομηνία δημιουργίας μιας ιστοσελίδας ή οι πληροφορίες γύρω από τα δικαιώματα ενός διαδικτυακού αρχείου κειμένου. Γενικεύοντας την έννοια του «πόρου», η RDF μπορεί επίσης να αναπαραστήσει πληροφορία για αντικείμενα, που μπορούν να προσδιοριστούν στον Ιστό, ακόμη και όταν δεν ανακτώνται άμεσα σε αυτόν. Η RDF βασίζεται στην ιδέα του προσδιορισμού αντικειμένων με τη χρήση των URIs και στην ιδέα της περιγραφής των πόρων μέσω απλών ιδιοτήτων. Η RDF μπορεί να αναπαραστήσει απλές προτάσεις (statements) σχετικά με πόρους ως έναν γράφο, όπου οι κόμβοι συμβολίζουν τους πόρους ή τις τιμές και οι ακμές τις ιδιότητες. Για παράδειγμα, το σύνολο των προτάσεων «υπάρχει ένα άτομο, το οποίο έχει όνομα Eric Miller, η ηλεκτρονική του διεύθυνση είναι και ο τίτλος του Dr.» μπορεί να αναπαρασταθεί στον γράφο της RDF, όπως στην Εικόνα 2.2. Παρατηρούμε στη γραφική απεικόνιση ότι η RDF χρησιμοποιεί URIs για να δηλώσει την εξής σειρά από έννοιες: Οντότητες π.χ. το άτομο Eric Miller, με το URI EM/contact#me Είδη αντικειμένων π.χ. άτομο, με το URI pim/contact#person Ιδιότητες των αντικειμένων π.χ. το ότι μία οντότητα έχει ηλεκτρονική διεύθυνση, με το URI Τιμές των ιδιοτήτων π.χ. «Dr.» ως η τιμή της ιδιότητας του τίτλου Πέρα από τη δυνατότητα απεικόνισης ως γράφο, η RDF προσφέρει ένα συντακτικό βασισμένο στην XML γλώσσα, το RDF/XML. Για παράδειγμα, ο Κώδικας 2.7 αναπαριστά τον παραπάνω γράφο. Κώδικας 2.7. RDF/XML schema του παραδείγματος <?xml version= 1.0?> <rdf:rdf xmlns:rdf= xmlns:contact= > <contact:person rdf:about= > <contact:fullname>eric Miller</contact:fullName> <contact:mailbox rdf:resource= /> <contact:personaltitle>dr.</contact: personaltitle > </contact:person> </rdf:rdf> 52

53 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Όπως φαίνεται από το παράδειγμα και ειδικά από τον γράφο, κάθε ένα statement της RDF ορίζεται ως μία τριπλέτα, η οποία αποτελείται από το υποκείμενο (subject), το κατηγόρημα (predicate) και το αντικείμενο (object). Συγκεκριμένα, η πρόταση «Το πρόσωπο έχει τίτλο με τιμή Dr.» μπορεί να αναπαρασταθεί από ένα RDF statement με: Υποκείμενο το Κατηγόρημα το Title Αντικείμενο το Dr.. Τα αντικείμενα των RDF statements μπορούν να είναι είτε URIs είτε να έχουν σταθερές τιμές, που ονομάζονται literals και αναπαρίστανται από συμβολοσειρές, όπως στο παράδειγμα. Το λεξικό της γλώσσας RDF είναι μια σημασιολογική επέκταση της RDF και ονομάζεται RDF Schema ή RDFS (Brickley and Guha, 2000). Η RDF Schema προσφέρει μηχανισμούς για την περιγραφή ομάδων από σχετικούς πόρους και σχέσεων μεταξύ αυτών των πόρων. Έτσι, ορίζονται οι δύο βασικές έννοιες κλάση (class) και ιδιότητα (property). Κάθε κλάση αποτελείται από μια ομάδα πόρων, ενώ με τη σειρά της θεωρείται και αυτή πόρος. Συχνά οι κλάσεις χαρακτηρίζονται από URI αναφορές, ενώ τα μέλη τους είναι γνωστά ως στιγμιότυπα των κλάσεων. Οι πιο γνωστές κατηγορίες κλάσεων είναι η rdfs:resource, που είναι η υπερκλάση όλων, η rdfs:class, η rdf:property, η rdf:statement και η rdfs:literal, των οποίων η χρήση είναι εύκολο να κατανοηθεί σύμφωνα με το όνομά τους. Ο ορισμός της RDF ιδιότητας μπορεί να περιγραφεί ως η σχέση μεταξύ υποκειμένων και αντικειμένων. Κάθε ιδιότητα αποτελείται από ένα domain (πεδίο) και ένα range (εύρος). Το domain περιορίζει σε ποια στοιχεία μπορεί να εφαρμοστεί η ιδιότητα, ενώ το range περιορίζει τα στοιχεία τα οποία μπορεί να έχει ως τιμή η ιδιότητα. Δύο σημαντικές ιδιότητες είναι η rdfs:subclassof με domain την rdfs:class και range την rdsf:class και η rdfs:subpropertyof με domain την rdf:property και range την rdf:property. Όπως φαίνεται από αυτές τις δύο, μπορεί να υπάρχει κληρονομικότητα τόσο κλάσεων όσο και ιδιοτήτων Web Ontology Language (OWL) Μέχρι αυτό το στάδιο, η XML έχει την ικανότητα να ορίζει προσαρμοσμένα σχήματα ετικετών, ενώ η RDF είναι μια ευέλικτη προσέγγιση στην αναπαράσταση των δεδομένων. Το επόμενο βήμα στην εξέλιξη του Σημασιολογικού Ιστού απαιτεί μια γλώσσα οντολογίας που να μπορεί να περιγράφει επίσημα τη σημασία των ορολογιών που χρησιμοποιούνται στα αρχεία του Ιστού. Σύμφωνα με την απαίτηση της παραγωγής χρήσιμων συλλογισμών, η ζητούμενη γλώσσα θα πρέπει να ξεπερνά τις βασικές δυνατότητες έκφρασης σημασιολογίας της RDF Schema. Σε αυτό το σημείο εφευρέθηκε η Web Ontology Language ή OWL (McGuinness and Van Harmelen, 2004). Η OWL παρέχει καλύτερους μηχανισμούς έκφρασης της σημασιολογίας από τις XML, RDF και RDF Schema και επομένως ξεπερνά αυτές τις γλώσσες ως προς την ικανότητα να αναπαριστά διαδικτυακό περιεχόμενο που να είναι κατανοητό από τις μηχανές. 53

54 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Η OWL εμπλουτίζει το λεξιλόγιο της περιγραφής των κλάσεων και των ιδιοτήτων με νέες σχέσεις και χαρακτηριστικά, που παρουσιάζονται εν συντομία παρακάτω. Η OWL προσφέρει τρεις υπογλώσσες, αυξανόμενης εκφραστικότητας, σχεδιασμένες για χρήση από ξεχωριστές κοινότητες χρηστών. Η OWL Lite καλύπτει τους χρήστες που κατά κύριο λόγο χρειάζονται μια ιεραρχία κατηγοριοποίησης και απλούς περιορισμούς και έχει τη χαμηλότερη πολυπλοκότητα από τις τρεις. Η OWL DL καλύπτει τους χρήστες που θέλουν τη μέγιστη δυνατή εκφραστικότητα, διατηρώντας παράλληλα την εγγύηση για υπολογιστική πληρότητα σε πεπερασμένο χρόνο. Η OWL Full προορίζεται για χρήστες που επιθυμούν μέγιστη εκφραστικότητα και τη συντακτική ελευθερία της RDF, χωρίς εγγύηση για τους υπολογισμούς. Για να παρουσιάσουμε τις διαφορές της OWL σε σχέση με την RDFS, θα αναφερθούμε στις προσθήκες μίας εκ των τριών υπογλωσσών, της OWL Lite, που μπορούν να χωριστούν σε πέντε κατηγορίες. 1. Ορίζεται η ισότητα και η ανισότητα. Για παράδειγμα, η ιδιότητα equivalentclass δηλώνει ότι δυο κλάσεις είναι ίσες, ενώ η αντίστοιχη για ιδιότητες είναι η equivalentproperty. Από την άλλη, η differentfrom ορίζει πως ένα στιγμιότυπο είναι διαφορετικό από ένα άλλο. 2. Ορίζονται επιπλέον χαρακτηριστικά των ιδιοτήτων. Η έννοια TransitiveProperty δηλώνει μεταβατικότητα. Σύμφωνα με αυτή, εάν το ζεύγος (x,y) είναι στιγμιότυπο της μεταβατικής ιδιότητας Ρ και το ζεύγος (y,z) επίσης, τότε το ζεύγος (x,z) είναι και αυτό στιγμιότυπο της Ρ. Άλλα χαρακτηριστικά περιλαμβάνουν τη SymmetricProperty, TransitiveProperty και άλλες. 3. Ορίζονται περιορισμοί για τις ιδιότητες. Ο περιορισμός allvaluesfrom δηλώνει πως μια ιδιότητα μπορεί να έχει ως εύρος τιμών μόνο συγκεκριμένα αντικείμενα. Ο περιορισμός somevaluesfrom ορίζει πως η ιδιότητα πρέπει να έχει τουλάχιστον ένα α- ντικείμενο στο πεδίο τιμών της, με συγκεκριμένο τύπο. 4. Εισάγεται η έννοια του πληθάριθμου (Cardinality). Το όρισμα mincardinality θέτει το κάτω όριο του αριθμού αντικειμένων που θα έχει η ιδιότητα μιας κλάσης, ενώ η maxcardinality θέτει το άνω όριο. 5. Επιτρέπεται ο ορισμός μίας κλάσης ως την τομή (intersection) ή την ένωση (union) δύο άλλων κλάσεων ή περιορισμών. Η OWL 2 αποτελεί μια επέκταση και αναθεώρηση της OWL και προσφέρει τρία διαφορετικά προφίλ, ανάλογα με την εκφραστικότητα που θέλει κάποιος να χρησιμοποιήσει κατά τη διάρκεια της μοντελοποίησης, το πεδίο της εφαρμογής και τη διαδικασία της συλλογιστικής που πρόκειται να ακολουθηθεί. 54

55 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός OWL 2 EL: Το προφίλ OWL 2 EL είναι χρήσιμο σε εφαρμογές οι οποίες χρησιμοποιούν οντολογίες που περιέχουν πολύ μεγάλο αριθμό από κλάσεις και ιδιότητες. Αυτό το προφίλ περιλαμβάνει την εκφραστικότητα που χρησιμοποιείται σε τέτοιες οντολογίες (Baader et al., 2005) και αποτελεί ένα υπο-σύνολο της OWL 2, για το οποίο η διαδικασία συλλογιστικής μπορεί να γίνει σε πολυωνυμικό χρόνο, αναφορικά με το μέγεθος της οντολογίας. OWL 2 QL: Το προφίλ OWL 2 QL στοχεύει σε εφαρμογές οι οποίες χρησιμοποιούν πολύ μεγάλο αριθμό αντικειμένων και η απάντηση ερωτημάτων είναι η πιο σημαντική διαδικασία συλλογιστικής. Χρησιμοποιώντας μια κατάλληλη διαδικασία συλλογιστικής, μπορεί να επιτευχθεί ορθή και πλήρης απάντηση συζευκτικών ερωτημάτων σε χρόνο LOGSPACE, αναφορικά με τον αριθμό των αντικειμένων (assertions). OWL 2 RL: Το προφίλ OWL 2 RL έχει σχεδιαστεί έτσι ώστε να μπορεί να επιτευχθεί κλιμάκωση στη διαδικασία συλλογιστικής, χωρίς να χρειάζεται να θυσιαστούν πολύ οι εκφραστικές δυνατότητες της γλώσσας. Τα συστήματα συλλογιστικής για το προφίλ OWL 2 RL μπορούν να βασιστούν σε συστήματα κανόνων. Ο έλεγχος της συνέπειας της οντολογίας και της ικανοποιησιμότητας των κλάσεων, ο υπολογισμός της ιεραρχίας υπαγωγής (subsumption hierarchy), ο έλεγχος των αντικειμένων και η α- πάντηση συζευκτικών ερωτημάτων μπορούν να γίνουν σε πολυωνυμικό χρόνο, αναφορικά με το μέγεθος της οντολογίας. Όπως προαναφέρθηκε, η γλώσσα OWL 2 επεκτείνει την OWL 1 και προτάθηκε προκειμένου να αντιμετωπιστούν οι αδυναμίες που παρατηρήθηκαν κατά τη χρήση της OWL 1 αλλά και για να ενσωματώσει νέα στοιχεία. Οι επεκτάσεις / διαφοροποιήσεις με την OWL DL σε επίπεδο λογικής αφορούν (Golbreich et al., 2009): Συντακτικά βοηθήματα: Η OWL 2 εισάγει κάποια συντακτικά βοηθήματα για τον ευκολότερο ορισμό προτύπων που χρησιμοποιούνται περισσότερο κατά την μοντελοποίηση. Αυτές οι νέες δομές είναι απλά «συντομεύεις» και δεν αλλάζουν τη σημασιολογία και την πολυπλοκότητα της γλώσσας. Για παράδειγμα, στην OWL 1 μια κλάση μπορεί να θεωρηθεί άμεσα ξένη μόνο με μια άλλη, με αποτέλεσμα αν υπάρχουν πολλά ζεύγη να πρέπει να δηλωθούν σαφώς όλα (δυαδική σχέση). Στην OWL 2 όλες οι κλάσεις που ανήκουν στον σύνολο owl:disjointclasses θεωρούνται ξένες. Νέα αξιώματα για ιδιότητες: Η εκφραστικότητα της OWL σχετικά με τις ιδιότητες μιας οντολογίας είναι περιορισμένη. Η OWL 2 προσφέρει επιπλέον αξιώματα για ι- διότητες, όπως για παράδειγμα, κλειδιά (keys), αλυσίδες ιδιοτήτων (property chains), 55

56 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη ξένες ιδιότητες (disjoint properties), νέα χαρακτηριστικά ιδιοτήτων (asymmetric, reflexive, irreflexive), νέους περιορισμούς (π.χ. ObjectMinCardinality, DataMaxCardinality κα). Νέα αξιώματα για τύπους δεδομένων: Η OWL 1 δεν υποστηρίζει υποσύνολα των τύπων δεδομένων int και string, δηλαδή δεν μπορεί να αναπαραστήσει περιορισμούς π.χ. του τύπου >10. Η OWL 2 εισάγει νέους τύπους δεδομένων (π.χ. double, float), νέους περιορισμούς (DatatypeRestriction - facets), δυνατότητες ορισμού νέων τύπων δεδομένων (DatatypeDefinition), καθώς και δυνατότητες ορισμού νέων τύπων δεδομένων συνδυάζοντας ήδη υπάρχοντες (DataIntersectionOf, DataUnionOf, DataComplementOf). Απλές δυνατότητες μετα-μοντελοποίησης: Στην OWL 1 υπάρχει σαφής διαχωρισμός των ονομάτων ανάμεσα στις κλάσεις και στα αντικείμενα. Στην OWL 2 μπορεί ένας όρος να χρησιμοποιηθεί και σαν κλάση και σαν αντικείμενο με κάποιους περιορισμούς: δεν επιτρέπεται το ίδιο όνομα να χρησιμοποιηθεί και σαν κλάση και σαν τύπος δεδομένου και ότι ένα όνομα μπορεί να χρησιμοποιηθεί μόνο ως τύπος δεδομένου ή τύπος αντικειμένου. Περισσότερες ιδιότητες επισήμανσης (annotation properties): H OWL 1 υποστηρίζει λίγες ιδιότητες επισήμανσης αξιωμάτων, π.χ. label και comment, που αφορούν κυρίως το ποιος έκανε μια προσθήκη ενός αξιώματος και πότε. Στην OWL 2 υπάρχουν περισσότερες δυνατότητες επισήμανσης αξιωμάτων που μπορούν να αφορούν στην οντολογία (Annotation), ανώνυμα αντικείμενα (AnnotationAssertion), αξιώματα, α- κόμα και στις ίδιες τις ιδιότητες επισήμανσης (SubAnnotationPropertyOf, AnnotationPropertyDomain, AnnotationPropertyRange). Άλλα καινούρια στοιχεία: o Δηλώσεις (Declarations). Διασφαλίζουν τη σωστή χρήση των αξιωμάτων με το να δηλώνονται οι οντότητες που απαρτίζουν το λεξιλόγιο της οντολογίας. Για παράδειγμα, η δήλωση Declaration(Class(Person)) δηλώνει ότι το Person είναι κλάση της οντολογίας. o Ιδιότητες Κορυφής και Βάσης (Top/Bottom). Σε αντιστοιχία με τις κλάσεις Thing και Nothing της OWL 1, η OWL 2 ορίζει τις ιδιότητες Κορυφής και Βάσης (topobjectproperty, bottomobjectproperty, topdataproperty, bottomdataproperty). Έτσι, (α) κάθε ζεύγος αντικειμένων συνδέεται μέσω της topobjectproperty ιδιότητας, (β) δεν υπάρχει κανένα ζεύγος αντικειμέ- 56

57 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός νων που να συνδέεται μέσω της topobjectproperty ιδιότητας, (γ) όλα τα πιθανά αντικείμενα συνδέονται με όλες τις τιμές τύπου δεδομένου μέσω της topdataproperty ιδιότητας και (δ) δεν υπάρχουν αντικείμενα που να συνδέονται με τιμές τύπου δεδομένου μέσω της bottomdataproperty ιδιότητας. o Uniform Resource Locators. Η OWL 1 χρησιμοποιεί URIs (Uniform Resource Locators) για τον προσδιορισμό των οντοτήτων των οντολογιών, τα οποία α- ποτελούνται από ένα υποσύνολο του ASCII. Η ΟWL 2 χρησιμοποιεί IRIs (Internationalized Resource Identifiers) που αποτελούνται από μεγαλύτερο σύνολο χαρακτήρων και υποστηρίζουν και άλλες γλώσσες εκτός από τα Αγγλικά. 2.4 Σημασιολογικές Υπηρεσίες Ιστού Τα πεδία των Υπηρεσιών Ιστού και του Σημασιολογικού Ιστού συνεισφέρουν στον Ιστό σε δύο διαφορετικές κατευθύνσεις. Οι Υπηρεσίες Ιστού καθιστούν δυνατή την ομοιογενή κλήση α- πομακρυσμένων διαδικασιών και APIs. Ο Σημασιολογικός Ιστός περιγράφει τα δεδομένα με μορφή κατανοητή στις μηχανές. Οι Σημασιολογικές Υπηρεσίες Ιστού (Semantic Web Services) είναι ένα σύνολο τεχνολογιών και προτύπων που σχηματίζεται στην τομή των δύο πεδίων (McIlraith et al., 2001). Σκοπός τους είναι με λίγα λόγια η σημασιολογική περιγραφή των ο- μοιόμορφων διεπαφών που προσφέρουν οι Υπηρεσίες Ιστού, ώστε να γίνεται δυνατή η εξυπνότερη χρήση τους. Αυτή η αυτοματοποίηση μπορεί να επιτευχθεί με το να γίνουν οι ίδιες οι υπηρεσίες επεξεργάσιμες και κατανοητές από τα προγράμματα - μηχανές. Αναλυτικότερα, οι Σημασιολογικές Υπηρεσίες Ιστού εμπεριέχουν δύο δομικά στοιχεία, τα οποία μπορούν να συνδυαστούν αποδοτικά με σκοπό την αυτοματοποίηση της χρήσης των υπηρεσιών: Ο Σημασιολογικός Ιστός αφορά την προσθήκη σημασιολογίας στα δεδομένα, επεξεργάσιμης από τους υπολογιστές. Οι υπολογιστές μπορούν να ερμηνεύσουν την πληροφορία και να την επεξεργαστούν στη θέση των ανθρώπων, για τους ανθρώπους. Οι Υπηρεσίες Ιστού στοχεύουν στη χρήση του Ιστού σαν μια καθολική υποδομή για κατανεμημένη υπολογιστική, για ολοκλήρωση εφαρμογών και για αυτοματοποίηση επιχειρηματικών διεργασιών. Ο ιστός δε θα είναι μόνο ο τόπος στον οποίο δημοσιεύονται πληροφορίες που απευθύνονται σε ανθρώπους, αλλά θα είναι και το μέσο στο οποίο θα υλοποιείται ο παγκόσμιος υπολογισμός (global computing). Οι υπηρεσίες ιστού, με τη δυνατότητα αφαιρετικής πρόσβασης στους υπολογιστικούς πόρους, μετασχηματίζουν τον Ιστό σε ένα πιο δυναμικό περιβάλλον. Οι παραπάνω διατυπώσεις απεικονίζονται σχηματικά στην Εικόνα 2.3, όπου φαίνονται οι δύο φυσικές πτυχές της εξέλιξης του Ιστού. Το όραμα των Σημασιολογικών Υπηρεσιών Ιστού είναι να περιγράψουν και να επισημάνουν τις διάφορες πτυχές των Υπηρεσιών Ιστού 57

58 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 2.3. Η εξέλιξη του Ιστού ως προς τη σημασιολογία, τα δεδομένα και τις διεργασίες χρησιμοποιώντας ρητή σημασιολογία, κατανοητή από τους υπολογιστές, επιτρέποντας την αυτοματοποιημένη αναζήτηση και γενικά τη χρήση των Υπηρεσιών Ιστού. Προς αυτήν την κατεύθυνση, η έρευνα και οι τεχνολογίες που έχουν αναπτυχθεί για τον Σημασιολογικό Ιστό εφαρμόζονται στις Υπηρεσίες Ιστού, με σκοπό να ελαχιστοποιηθεί η παρέμβαση των ανθρώπων στις διάφορες διαδικασίες που συμμετέχουν οι υπηρεσίες. Η σημασιολογική επισήμανση αποτελεί το βασικό στοιχείο αυτής της προσπάθειας, για να αυτοματοποιηθούν οι διαδικασίες της Επιλογής (Selection), Ανακάλυψης (Discovery), Ταυτοποίησης (Matching) και Σύνθεσης (Composition) των υπηρεσιών, δημιουργώντας ευφυείς εφαρμογές για Υπηρεσίες Ιστού. Οι τέσσερις αυτές διαδικασίες πολλές φορές αναφέρονται ως οι φάσεις ζωής των υ- πηρεσιών (Service Lifecycle) Οι μέχρι τώρα προσεγγίσεις περιγραφής υπηρεσιών που εξετάστηκαν, όπως το WSDL, είναι συντακτικής φύσεως: περιορίζονται μόνο στην περιγραφή των συντακτικών χαρακτηριστικών της αλληλεπίδρασης των υπηρεσιών. Επιτρέπουν την περιγραφή του πώς μια υπηρεσία μπορεί να κληθεί, ποιες διαδικασίες είναι διαθέσιμες, κτλ. Ωστόσο, το τι κάνει μια υπηρεσία και με ποια σειρά πρέπει να κληθούν οι διαδικασίες της ώστε να επιτευχθεί μια συγκεκριμένη λειτουργία μπορούν να περιγραφούν μόνο με φυσική γλώσσα, ως σχόλια στις περιγραφές WSDL. Κατά αναλογία με τον τρόπο αναζήτησης, ή αλλιώς Επιλογής, των στατικών σελίδων στον Ιστό, θα ακολουθήσουν οι Υπηρεσίες Ιστού. Όταν αναζητούμε κατάλληλες υπηρεσίες για την επίτευξη κάποιου στόχου, αντιμετωπίζουμε ορισμένα εμπόδια, όμοια με αυτά που αντιμετωπίζουμε κατά το φιλτράρισμα της πληροφορίας εξαιτίας του μεγάλου όγκου των δεδομένων του σημερινού στατικού Ιστού. Οι σημασιολογικές περιγραφές με τη χρήση τεχνολογιών του Σημασιολογικού Ιστού φαίνεται να αποτελούν μια μεγάλη ελπίδα προς την επίλυση τέτοιων προβλημάτων, έτσι ώστε η τεχνολογία των Υπηρεσιών Ιστού να υιοθετηθεί σε μεγαλύτερη έκταση. Με γνώμονα τέτοια προβλήματα, δημιουργήθηκαν οι απαιτήσεις των σημασιολογικών περιγραφών των Υπηρεσιών Ιστού, λαμβάνοντας υπόψιν και τις απαιτήσεις των τεχνολογιών των κοινών Υπηρεσιών Ιστού. Αυτές οι υψηλότερες απαιτήσεις εμφανίζουν μικρές, αλλά σημαντικές διαφορές, όπως η χρήση οντολογιών και κοινών λεξιλογίων, οι οποίες υπό- 58

59 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός σχονται μεγαλύτερο βαθμό αυτοματοποίησης. Οι τεχνολογίες του Σημασιολογικού Ιστού α- ναμένεται να έχουν το μεγαλύτερο αντίκτυπο στις Υπηρεσίες Ιστού όσον αφορά στις εξής διαδικασίες: Ανακάλυψη, Επιλογή, Ταυτοποίηση Για να μπορέσει να χρησιμοποιηθεί μια δημοσιευμένη Υπηρεσία στον Ιστό, από χρήστες ή επιχειρήσεις, θα πρέπει πρώτα να ανακαλυφθεί. Αυτό το βήμα υποστηρίζεται ήδη από υπάρχουσες τεχνολογίες, όπως το UDDI, με την αναζήτηση μόνο με βάση λέξεις-κλειδιά. Επίσης, χρησιμοποιούνται κάποιας μορφής πρότυπα λεξικά, για παράδειγμα το UNSPC 13. Σε αντίθεση με αυτά τα πρότυπα, η σημασιολογική επισήμανση των δυνατοτήτων των Υπηρεσιών Ιστού μπορεί να γίνει πιο αποδοτικά με τη χρήση οντολογιών. Με αυτόν τον τρόπο, μπορούν να χρησιμοποιηθούν συστήματα συλλογιστικής, ώστε να βρεθούν οι υπηρεσίες που ταιριάζουν σε ένα συγκεκριμένο στόχο κάθε φορά. Οι οντολογικές αυτές περιγραφές μπορούν, επίσης, να εμπεριέχουν πιο ακριβείς έννοιες, όπως περιγραφές των συνθηκών που πρέπει να ισχύουν πριν την κλήση της υπηρεσίας (προϋποθέσεις - preconditions), των συνθηκών που πρέπει να ισχύουν μετά την κλήση της υπηρεσίας (postconditions ή αποτελέσματα - effects) και των εισόδων (inputs) και εξόδων (outputs) της υπηρεσίας, που μπορούν να γίνουν με όρους οντολογίας. Εν συντομία, τα παραπάνω χαρακτηριστικά αποκαλούνται IOPEs (Input Output Precondition Effects). Τα προβλήματα της Ανακάλυψης, της Επιλογής και της Ταυτοποίησης αφορούν όλα στην εύρεση και στο φιλτράρισμα ενός μετώπου αναζήτησης με στόχο μία υπηρεσία και πολλές φορές θεωρούνται ταυτόσημα. Σύνθεση Πολλές φορές μία επιθυμητή κατάσταση-στόχος δεν μπορεί να επιτευχθεί με τη χρήση απλών Υπηρεσιών Ιστού. Σε αυτές τις περιπτώσεις, όπου απαιτείται Σύνθεση πολλών ατομικών υπηρεσιών σε μία, οι σημασιολογικές περιγραφές μπορούν να βοηθήσουν στον προσδιορισμό αυτού του συνδυασμού που επιτυγχάνει την επιθυμητή λειτουργικότητα. Αρχικά, μια υποβοηθούμενη, έξυπνη επιλογή υπηρεσιών και ένας απλός συνδυασμός τους μπορεί να βοηθήσει σημαντικά τη χειροκίνητη σύνθεση υπηρεσιών. Πρόσθετες τεχνικές, όπως σχεδιασμός ενεργειών (planning), μπορούν να χρησιμοποιηθούν για την πλήρη αυτοματοποίηση της Σύνθεσης με βάση τη σημασιολογία. Η Σύνθεση απαιτεί όχι μόνο τη σημασιολογική επισήμανση των δυνατοτήτων των υπηρεσιών, αλλά και μια περιγραφή του πώς πρέπει να αλληλοεπιδράσει κανείς με την υπηρεσία για να επιτύχει την επιθυμητή λειτουργικότητα. Εκτέλεση Η εκτέλεση μίας υπηρεσίας είναι το επόμενο βήμα μετά την Επιλογή ή τη Σύνθεση Υπηρεσιών. Για την εκτέλεση, από προγραμματιστική σκοπιά, πρέπει να εξαχθούν οι

60 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη πιθανές τιμές των εισόδων και εξόδων που περιγράφονται στις σημασιολογικές περιγραφές και να προσαρμοστούν στα συμφωνηθέντα πρωτόκολλα επικοινωνίας. Διαπραγμάτευση H διαπραγμάτευση ενός στιγμιότυπου υπηρεσίας είναι απαραίτητη όταν ένας κατάλληλος προμηθευτής έχει επιλεγεί για τη διεκπεραίωση ενός στόχου, έτσι ώστε να ε- πιλεγεί η κατάλληλη υπηρεσία από ένα σύνολο υπηρεσιών που ο προμηθευτής μπορεί να προσφέρει. Αυτή η διαδικασία υπαγορεύει την καθιέρωση πολιτικών εμπιστοσύνης (trust policies), τον προσδιορισμό των τρόπων πληρωμής, την επιλογή προσφορών, κτλ. Για την αυτοματοποίηση αυτών των διεργασιών, χρειάζονται σημασιολογικές περιγραφές. Είναι σημαντικό μια τέτοια σημασιολογική περιγραφή υπηρεσίας να μην περιγράφει μόνο τη λειτουργικότητα μέσω των λειτουργικών ιδιοτήτων, άλλα να περιγράφει και ποιοτικά χαρακτηριστικά μέσω των μη λειτουργικών ιδιοτήτων, όπως το κόστος. Οι περισσότερες προσεγγίσεις για τη σημασιολογική επισήμανση (περιγραφή) των Υπηρεσιών Ιστού βασίζονται στην επέκταση ή τη συμπλήρωση των ήδη υπαρχόντων τεχνολογιών των Υπηρεσιών Ιστού, όπως οι WSDL, SOAP και UDDI, σε συνδυασμό με σημασιολογικές τεχνολογίες, όπως οι RDF και OWL. Από μόνη της η WSDL, όπως περιγράφηκε σε προηγούμενη ενότητα, μπορεί να προσδιορίσει τις λειτουργίες τις οποίες διαθέτει μία Υπηρεσία Ιστού και τη δομή των δεδομένων που λαμβάνονται και αποστέλλονται, αλλά δεν μπορεί να προσδιορίσει τη σημασιολογική ουσία τους. Από την άλλη, οι γλώσσες περιγραφής οντολογιών, όπως η RDF και η OWL, επιτρέπουν στους παρόχους υπηρεσιών να περιγράψουν σημασιολογικά τα δεδομένα και τους πόρους τους. Αυτός ο συγκερασμός προτύπων γίνεται με διαφορετικές μεθοδολογίες. Μέχρι σήμερα, δεν υπάρχει κάποια συμφωνία στον φορμαλισμό που πρέπει να χρησιμοποιείται για τη σημασιολογική επισήμανση των Υπηρεσιών Ιστού. Οι κύριες σύγχρονες προσεγγίσεις χωρίζονται σε δύο μεθοδολογίες: τις από πάνω προς τα κάτω (top down) και τις από κάτω προς τα πάνω (bottom up). Οι πρώτες βασίζονται στην ιδέα χρήσης ανωτέρου επιπέδου μοντέλων, όπως οι οντολογίες, για την περιγραφή των κατώτερων στρωμάτων της λειτουργικότητας των Υπηρεσιών. Τέτοιες προσεγγίσεις είναι οι προγενέστερες OWL-S (Semantic Markup for Web Services) 14 και WSMO (Web Service Modeling Ontology) 15, γνωστές επίσης και ως ανώτερες οντολογίες (upper ontologies). Η δεύτερη κατηγορία προτύπων ξεκινά την περιγραφή ανώτερου επιπέδου σημασιολογίας απευθείας πάνω στις κατωτέρου επιπέδου περιγραφές των Υπηρεσιών. Λόγω της χαμηλής πολυπλοκότητας αυτής της προσέγγισης, τα πρότυπα αυτά χαρακτηρίζονται ως ελαφριά (lightweight). 14 OWL-S Specification: 15 WSMO Homepage: 60

61 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Παραδείγματα αποτελούν τα πρότυπα SAWSDL (Sematic Annotations for WSDL) 16, MicroWSMO 17 και WSMO-Lite 18. Τα τρία επικρατέστερα πρότυπα από αυτά, OWL-S, WSMO και SAWSDL, παρουσιάζονται στη συνέχεια OWL-S Semantic Markup for Web Services Η OWL-S είναι μια γλώσσα περιγραφής οντολογιών για υπηρεσίες (Ontology Web Language for Services), που χτίζεται πάνω στην OWL με στόχο να κωδικοποιήσει πλούσιες περιγραφές σημασιολογικών υπηρεσιών (Martin et al., 2005). Η OWL-S δεν είναι ανεξάρτητη γλώσσα, αλλά μία ειδικού σκοπού οντολογία που συνδέει μέσα της τις συμπαγείς περιγραφές για την κλήση των Υπηρεσιών σε WSDL. Αυτή η σύζευξη της OWL-S με την WSDL οδηγεί σε έναν ε- κτενή προσδιορισμό των Υπηρεσιών Ιστού μέσω της σημασιολογίας. Πρόκειται για μία οντολογία, η οποία αποτελείται από τρεις αλληλένδετες υποοντολογίες, γνωστές ως Service Profile, Service Model και Service Grounding. Αναλυτικά: Service Profile Το Service Profile (Προφίλ Υπηρεσίας) χρησιμοποιείται για να περιγράψει τι κάνει μία υπηρεσία, με συνοπτικό τρόπο ώστε να μπορεί να ανακαλύπτεται και να επιλέγεται. Τα αντικείμενα της κλάσης Service παρουσιάζουν (ιδιότητα presents) μηδέν ή περισσότερα Προφίλ Υπηρεσίας (κλάση ServiceProfile). Ένα Προφίλ Υπηρεσίας εκφράζει το τι κάνει η Υπηρεσία για λόγους προβολής και χρησιμεύει επίσης ως ένα πρότυπο για αιτήσεις υπηρεσιών. Επομένως, το Προφίλ Υπηρεσίας επιτρέπει τη σημασιολογική αναζήτηση υπηρεσιών. Το προφίλ περιλαμβάνει μη λειτουργικές ιδιότητες, όπως αναφορές σε σχήματα κατηγοριοποίησης (π.χ. UNSPC) ή οντολογίες, πληροφορίες για τον πάροχο της Υπηρεσίας και ποιοτικές εκτιμήσεις. Ωστόσο, η πιο σημαντική πληροφορία που περιγράφει το προφίλ είναι οι προδιαγραφές για τη λειτουργικότητα που προσφέρει η Υπηρεσία. H μετατροπή της πληροφορίας που προκαλείται από την εκτέλεση της υπηρεσίας αναπαρίσταται με τις εισόδους (inputs) και τις εξόδους (outputs), ενώ η αλλαγή της κατάστασης του κόσμου ορίζεται με τις συνθήκες προϋποθέσεων (preconditions) και αποτελεσμάτων ή επιδράσεων (effects). Οι είσοδοι και οι έξοδοι αναφέρονται σε κλάσεις OWL, περιγράφοντας τον τύπο των αντικειμένων που πρέπει να σταλούν στην υπηρεσία και των αναμενόμενων αποκρίσεων. Η μορφή έκφρασης των συνθηκών προϋποθέσεων και επιδράσεων δεν είναι προκαθορισμένη, αλλά μπορούν να χρησιμοποιηθούν διάφοροι φορμαλισμοί μέσα στην οντολογία OWL, όπως για παράδειγμα η γλώσσα κανόνων SWRL (A Semantic Web Rule Language Combining OWL and RuleML) SAWSDL Specification: 17 MicroWSMO Specification: 18 WSMO-Lite Specification: 19 SWRL: 61

62 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 62 Ένα μειονέκτημα αυτής της μεθόδου είναι ότι η σημασιολογία αυτών των συνθηκών δεν καλύπτεται από την εκφραστικότητα της οντολογίας OWL-S. Αντίθετα, η οντολογία περιέχει δείκτες στις γλώσσες έκφρασης. Επομένως, οι οντότητες που αλληλεπιδρούν με βάση περιγραφές OWL-S ή που τις χρησιμοποιούν για την αναζήτηση Υπηρεσιών, πρέπει να συμφωνούν πρώτα (με ad-hoc τρόπο) στη γλώσσα περιγραφής αυτών των συνθηκών και στην έννοια της ομοιότητας, η οποία δεν ορίζεται στο πρότυπο. Service Model Το Service Model (Μοντέλο Υπηρεσίας) συνοπτικά περιγράφει το πώς δουλεύει μια υπηρεσία. Μια υπηρεσία μπορεί να περιγράφεται (ιδιότητα describedby) από ένα Μοντέλο Υπηρεσίας (ServiceModel), το οποίο δηλώνει τον τρόπο λειτουργίας της. Ο κύριος στόχος του μοντέλου υπηρεσίας είναι να επιτρέψει την εκτέλεση, σύνθεση και επίβλεψη μιας υπηρεσίας. Το μοντέλο υπηρεσίας θεωρεί τις αλληλεπιδράσεις της υπηρεσίας σαν μια διεργασία. Μια διεργασία δεν είναι απαραίτητα ένα πρόγραμμα το οποίο πρέπει να εκτελεστεί, αλλά μια προδιαγραφή των τρόπων με τους οποίους μια εφαρμογή μπορεί να αλληλεπιδράσει με την υπηρεσία. Η OWL-S διαχωρίζει τις διεργασίες σε ατομικές (atomic), απλές (simple) και σύνθετες (composite). Οι ατομικές διεργασίες είναι μονομερείς διαδικασίες, ενώ οι απλές διεργασίες είναι όψεις ατομικών ή σύνθετων διεργασιών. Οι σύνθετες διεργασίες ορίζονται από ατομικές ή απλές διεργασίες με τη χρήση δομών ροής, όπως η σειριακή (sequence), η διαίρεση (split) ή η ένωση (join). Όπως και προηγουμένως, ένα μειονέκτημα είναι ότι η σημασιολογία των δομών ροής δεν μπορεί να εκφραστεί στην OWL-DL και συνεπώς δεν μπορεί να ενσωματωθεί στην οντολογία OWL. Service Grounding Το Service Grounding (Θεμελίωση Υπηρεσίας) εμπλουτίζει το Service Model με λεπτομερείς προσδιορισμούς της μορφής των μηνυμάτων και των πρωτόκολλων. Για να επιτευχθεί η α- ντιστοίχιση του προτύπου OWL-S στο σύνολο των προτύπων των Υπηρεσιών Ιστού, μια Υπηρεσία πρέπει να υποστηρίζει (ιδιότητα support) μια θεμελίωση (grounding), η οποία αντιστοιχεί τις δομές του μοντέλου διεργασίας σε προδιαγραφές μορφών μηνυμάτων, πρωτοκόλλων, κτλ. Πιο συγκεκριμένα, η OWL-S επιτρέπει την αντιστοίχιση των ατομικών διεργασιών σε διαδικασίες WSDL (operations) και τις εξόδους και εισόδους σε μηνύματα WSDL (messages). Αυτές οι αντιστοιχίσεις μπορούν να υποστηρίξουν μετασχηματισμούς XSLT, ώστε να είναι δυνατή η μετατροπή διαφόρων εννοιών από OWL σε δεδομένα XML schema. Κώδικας 2.8. Παράδειγμα atomic process σε OWL-S <AtomicProcess ID= AuthorSearch > <hasinput> <Input ID= AAuthor > <parametertype resource= #Human > </Input> </hasinput> <hasinput>

63 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός <Input ID= Title > <parametertype resource= #BookTitle > </Input> </hasinput> <hasoutput> <Output ID= BookID > <parametertype resource= #ISBN > </Output> </hasoutput> </AtomicProcess> Στη συνέχεια, εστιάζουμε σε ένα βασικό στοιχείο της WSDL, που εμπλουτίζεται περιγραφικά από την OWL-S, το operation. Τα operations προσφέρουν την οργανωτική δομή, γύρω από την οποία ορίζεται η σύνταξη των μηνυμάτων για τα input και output. Η αντίστοιχη, αλλά πιο αφαιρετική έννοια στην OWL-S είναι η ατομική διαδικασία, η οποία χαρακτηρίζεται με τους όρους των inputs, outputs, preconditions και effects (εν συντομία IOPEs). Όπως αναφέρθηκε, τα preconditions είναι λογικές προτάσεις, οι οποίες απαιτείται να ικανοποιούνται από αυτόν που αιτείται την υπηρεσία, προτού αυτή εκτελεστεί. Τα effects είναι επίσης λογικές προτάσεις, που όμως θα ισχύουν (δηλαδή θα έχουν τιμή true) μετά την επιτυχή εκτέλεση της υπηρεσίας. Για την καλύτερη κατανόηση της ατομικής διαδικασίας, δίνεται το παράδειγμα του Κώδικα 2.8. Στο παράδειγμα αυτό, η διαδικασία αναζήτησης βιβλίου με βάση τον συγγραφέα (AuthorSearch), δέχεται δύο ορίσματα, έναν συγγραφέα (Author) ως αντικείμενο της κλάσης Human και ένα τίτλο (Title) ως αντικείμενο της κλάσης BookTitle. Η διαδικασία επιστρέφει τον κωδικό του βιβλίου (BookID) ως αντικείμενο της κλάσης ISBN WSMO - Web Service Modeling Ontology Μία εναλλακτική προσέγγιση ανώτερης οντολογίας για Σημασιολογικές Υπηρεσίες Ιστού είναι η οντολογία WSMO (Web Service Modeling Ontology) (Feier et al., 2005). Η WSMO συνοδεύεται από μια επίσημη γλώσσα, τη WSML (Web Service Modeling Language), η οποία επιτρέπει τη συγγραφή επισημάνσεων Υπηρεσιών Ιστού σύμφωνα με ένα εννοιολογικό μοντέλο. Η οντολογία WSMO έχει βασιστεί στο πλαίσιο WSMF (Web Service Modeling Framework), σύμφωνα με το οποίο χρησιμοποιεί τέσσερα στοιχεία ανώτερου επιπέδου ως βασικές έννοιες, όπως φαίνονται στην Εικόνα 2.4. Τα τέσσερα βασικά στοιχεία της WSMO είναι οι Οντολογίες, οι Υπηρεσίες Ιστού, οι Στόχοι και οι Μεσολαβητές. Συγκεκριμένα: Οι Οντολογίες εξυπηρετούν ως λεξικό για την ορολογία που χρησιμοποιείται ως κύριο στοιχείο των Σημασιολογικών Υπηρεσιών Ιστού. Η WSMO περιγράφει μια επιστημολογία (epistemology) από οντολογίες, δηλαδή τα εννοιολογικά δομικά στοιχεία, όπως έννοιες και σχέσεις. Οι Υπηρεσίες Ιστού είναι υπολογιστικές οντότητες, οι οποίες προσφέρουν μια «αξία» σε ένα συγκεκριμένο πεδίο. Οι περιγραφές των Υπηρεσιών Ιστού αποτελούνται από 63

64 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 2.4. Τα τέσσερα βασικά στοιχεία της WSMO τις ικανότητές τους (capabilities), τις διεπαφές τους (interfaces) και την ενορχήστρωσή τους (orchestration). Οι ιδιότητές τους μπορούν επίσης να διαχωριστούν σύμφωνα με τρεις διαφορετικές οπτικές: τις μη-λειτουργικές ιδιότητες (nonfunctional properties), τη λειτουργικότητα (functionality) και τη συμπεριφορά (behavior). Οι Στόχοι (Goals) εμπεριέχουν πληροφορίες σχετικές με τις επιθυμίες του χρήστη και με την επιθυμητή λειτουργικότητα. Οι Οντολογίες μπορούν να χρησιμοποιηθούν κι εδώ, για να οριστεί η ορολογία του πεδίου που αφορά σε κάθε περίπτωση και για να περιγραφούν οι διάφοροι στόχοι. Ουσιαστικά, οι Στόχοι μοντελοποιούν την οπτική των χρηστών για τις Υπηρεσίες Ιστού. Οι Μεσολαβητές (Mediators) περιγράφουν τα στοιχεία που χειρίζονται προβλήματα διαλειτουργικότητας ανάμεσα σε διαφορετικές μονάδες, για παράδειγμα ανάμεσα σε οντολογίες ή Υπηρεσίες. Οι Μεσολαβητές είναι ουσιαστικά θεμελιώδεις έννοιες, οι οποίες επιλύουν ασυμβατότητες σε δεδομένα, διεργασίες και πρωτόκολλα, δηλαδή χρησιμοποιούνται για να επιλύσουν αποτυχίες ανάμεσα σε διαφορετικές ορολογίες, για την επικοινωνία μεταξύ υπηρεσιών με διαφορετικά πρωτόκολλα και για το συνδυασμό Υπηρεσιών Ιστού με Στόχους SAWSDL - Semantic Annotations for WSDL Η σημασιολογική επισήμανση SAWSDL για τη WSDL και την XML Schema ορίζει τον τρόπο με τον οποίο μπορούν να επισημανθούν σημασιολογικά τέτοιου είδους έγγραφα. Για την ακρίβεια, προσθέτουν σχόλια σχετικά με τη σημασιολογία σε διάφορα μέρη ενός εγγράφου WSDL, όπως στα input και output messages, στα interfaces ή στα operations (Kopecky et al., 2007). Η σημασιολογική επισήμανση ενός εγγράφου προσδίδει πρόσθετη πληροφορία που προσδιορίζει μία έννοια ενός σημασιολογικού μοντέλου, ώστε να περιγράψει περαιτέρω τα 64

65 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός αντίστοιχα τμήματα αυτού του εγγράφου. Στην SAWSDL οι σημασιολογικές επισημάνσεις είναι attributes σε XML μορφή, που προστίθενται απευθείας στα στοιχεία ενός αρχείου WSDL ή ενός αρχείου XML Schema. Οι σημασιολογικές επισημάνσεις μπορούν να είναι αναγνωριστικά δύο ειδών: σαφή αναγνωριστικά εννοιών ή αναγνωριστικά mapping (μετασχηματισμός) μεταξύ εννοιών και WSDL. Στην πρώτη περίπτωση, οι επισημάνσεις αναφέρονται σε μία έννοια μιας οντολογίας, ενώ στη δεύτερη σε μία έννοια ενός εγγράφου mapping. Ο μηχανισμός επισήμανσης είναι ανεξάρτητος από τη γλώσσα περιγραφής της οντολογίας, αλλά και από τη γλώσσα του mapping. Model References Για τη σημασιολογική επισήμανση ενός στοιχείου προσφέρονται από την SAWSDL τα παρακάτω attributes, που υποστηρίζονται εγγενώς από τη WSDL, ως χαρακτηριστικά επέκτασης. Το attribute με όνομα modelreference (αναφορά σε μοντέλο) χρησιμοποιείται για να προσδιορίσει τη σχέση μεταξύ ενός στοιχείου της WSDL ή της XML Schema και μίας έννοιας ενός σημασιολογικού μοντέλου. Από την άλλη, τα attributes liftingschemamapping και lowering- SchemaMapping προστίθενται μόνο στα στοιχεία της XML Schema για να ορίσουν mapping μεταξύ σημασιολογικών δεδομένων και της XML. Η τιμή του attribute modelreference είναι ένα σύνολο από μηδέν ή περισσότερα URIs, διαχωρισμένα με κενά, κάθε ένα από τα οποία αποτελεί δείκτη στην έννοια ενός σημασιολογικού μοντέλου και προσφέρει σημασιολογική πληροφορία για το στοιχείο το οποίο έχει επισημανθεί. Το attribute modelreference επιτρέπει πολλαπλές επισημάνσεις και υπάρχει η ελευθερία τα URIs να αντιστοιχούν σε διαφορετικές γλώσσες αναπαράστασης οντολογιών, χωρίς βέβαια να προκύπτει κάποια λογική σχέση μεταξύ τους με αυτή τη δήλωση. Επίσης, δεν υπάρχει περιορισμός ως προς το πλήθος των στοιχείων που μπορούν να επισημανθούν σημασιολογικά. Τα στοιχεία αυτά μπορούν να είναι τα παρακάτω: Το interface του εγγράφου WSDL, όπου το modelreference μπορεί να το κατηγοριοποιήσει ως προς κάποιο μοντέλο ή να προσδιορίσει κάποια χαρακτηριστικά συμπεριφοράς. Στο παράδειγμα του Κώδικα 2.9 επισημαίνεται το interface με όνομα Order με ένα δείγμα URL. Κώδικας 2.9. Πρότυπο επισήμανσης interface σε SAWSDL <wsdl:interface name= Order sawsdl:modelreference= ts/electronics > </wsdl:interface> 65

66 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Το operation του WSDL, όπου η σημασιολογική επισήμανση μπορεί να προσφέρει υψηλού επιπέδου περιγραφή της λειτουργίας. Ο Κώδικας 2.10 δίνει ένα παράδειγμα επισήμανσης του operation με όνομα order με την κλάση RequestPurchaseOrder της οντολογίας purchaseorder. Κώδικας Πρότυπο επισήμανσης operation σε SAWSDL <wsdl:operation name= order pattern= in-out sawsdl:modelreference= spec/ontology/purchaseorder#requestpurchaseorder > <wsdl:input element= OrderRequest /> <wsdl:output element= OrderResponse /> </wsdl:operation> Το fault του WSDL, για υψηλό επίπεδο περιγραφής του σφάλματος. O Κώδικας 2.11 δίνει ως παράδειγμα την επισήμανση του fault με όνομα ItemUnavailable- Fault με την κλάση ItemUnavailable της οντολογίας purchaseorder. Κώδικας Πρότυπο επισήμανσης fault σε SAWSDL <wsdl:interface name= Order > <wsdl:fault name= "ItemUnavailableFault" element= AvailabilityInformation sawsdl:modelreference= /ws/sawsdl/spec/ontology/purchaseorder#itemunavailable /> </wsdl:interface> Το simpletype του εγγράφου XML Schema, για σημασιολογική περιγραφή ενός τύπου δεδομένων. Ο Κώδικας 2.12 απεικονίζει την επισήμανση ενός simpletpye με όνομα Confirmation με την κλάση OrderConfirmation της οντολογίας purchaseorder. Κώδικας Πρότυπο επισήμανσης simpletype σε SAWSDL <xs:simpletype name= Confirmation sawsdl:modelreference= http: // nfirmation /> </xs:simpletype> 66

67 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός Το complextype του XML Schema, όπου διακρίνονται δύο βασικές τεχνικές. Η ε- πισήμανση χαμηλού επιπέδου (Bottom Level Annotation) εφαρμόζεται σε κάποιο element ή attribute που εμπεριέχεται σε ένα complextype, ενώ η επισήμανση υψηλού επιπέδου (Top Level Annotation) στο ίδιο το complextype. Ο Κώδικας 2.13 δίνει ένα παράδειγμα επισήμανσης δύο elements, quantity και UPC, με τις κλάσεις Quantity και ProductCode αντίστοιχα. Και τα δύο elements ανήκουν στο ίδιο sequence ενός complextype. Κώδικας Πρότυπο επισήμανσης complextype σε SAWSDL <xs:complextype> <xs:sequence minoccurs= 1 maxoccurs= unbounded > <xs:element name= quantity type= xs:integer sawsdl:modelreference= c/ontology/purchaseorder#quantity /> <xs:element name= UPC type= xs:string sawsdl:modelreference= c/ontology/purchaseorder#productcode /> </xs:sequence> </xs:complextype> Ένα οποιοδήποτε element του XML Schema μπορεί να επισημανθεί ανεξάρτητα. Ο Κώδικας 2.14 απεικονίζει τον τρόπο με τον οποίο ένα element με όνομα OrderRequest επισημαίνεται με την κλάση OrderRequest. Κώδικας Πρότυπο επισήμανσης element σε SAWSDL <xs:element name= OrderRequest sawsdl:modelreference= est /> <xs:complextype> <xs:sequence> <xs:element name= customerno type= xs:integer /> <xs:element name= orderitem type= item minoccurs= 1 maxoccurs= unbounded /> </xs:sequence> </xs:complextype> </xs:element> Ομοίως επισημαίνεται και ένα attribute του XML Schema. Ο Κώδικας 2.15 δίνει ένα παράδειγμα επισήμανσης ενός attribute quantity με την κλάση Quantity. Κώδικας Πρότυπο επισήμανσης attribute σε SAWSDL 67

68 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη <xs:attribute name= quantity type= xs:integer sawsdl:modelreference= tology/purchaseorder#quantity /> Lifting και Lowering Schema Mapping Ενώ το modelreference αποτελεί το κύριο μέσο έκφρασης σημασιολογίας, τα SchemaMappings επιτρέπουν τεχνικά τον σημασιολογικό μετασχηματισμό των πληροφοριών από υψηλό σε χαμηλό επίπεδο και αντίστροφα. Τα modelreferences μπορούν να χρησιμοποιηθούν ώστε να καθορίσουν εάν ένα service πληροί τις προϋποθέσεις ενός πελάτη (client), αλλά και πάλι μπορεί να υπάρχουν αναντιστοιχίες μεταξύ του σημασιολογικού μοντέλου και της δομής των inputs και outputs. Για παράδειγμα, ένας client μπορεί να έχει ένα μικρό όνομα και ένα επίθετο μεταξύ των δεδομένων του. Αυτές οι δύο τιμές θα πρέπει να συνενωθούν στο μήνυμα που θα σταλεί τελικά στην Υπηρεσία Ιστού. Ένα lowering schema mapping δέχεται τα σημασιολογικά δεδομένα του client, τα μετατρέπει σε XML και στη συνέχεια εφαρμόζει την αναγκαία ένωση για να παράγει ένα ενιαίο όνομα (μικρό όνομα + επίθετο). Αντίθετα, ένα lifting schema mapping μετατρέπει στοιχεία της XML σε ένα σημασιολογικό μοντέλο. 68 Σε ένα πιο πολύπλοκο σενάριο, έστω ότι ένας client χρησιμοποιεί τη WSDL μαζί με σημασιολογικές επισημάνσεις για να περιγράψει την υπηρεσία που αναζητεί. Εάν οι δομές της XML που αναμένονται από τον client και αυτές της υπηρεσίας διαφέρουν, το schema mapping θα μεταφράσει τις XML δομές σε ένα σημασιολογικό μοντέλο, ώστε κάθε αναντιστοιχία να γίνει αντιληπτή και να διορθωθεί. Ως παράδειγμα, ο Κώδικας 2.16 δίνει τη μορφή ενός Lifting Schema Mapping για ένα simpletype. Το simpletype έχει όνομα confirmation και επισημαίνεται με την κλάση OrderConfirmation. Ταυτόχρονα, επισημαίνεται με ένα liftingschemamapping με τον μετασχηματισμό Response2Ont.xslt, ο οποίος, όπως φανερώνει το όνομά του, μετατρέπει μία απάντηση από μορφή string σε στιγμιότυπο της κλάσης Order- Confirmation με χρήση XSLT. Κώδικας Πρότυπο Lifting Schema Mapping ενός simpletype σε SAWSDL <xs:element name= OrderResponse type= xs:confirmation /> <xs:simpletype name= confirmation sawsdl:modelreference= #OrderConfirmation sawsdl:liftingschemamapping= > <xs:restriction base= xs:string > <xs:enumeration value= Confirmed /> <xs:enumeration value= Pending /> <xs:enumeration value= Rejected /> </xs:restriction> </xs:simpletype> </xs:element>

69 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός 2.5 Συμπεράσματα Συμβολές της Διατριβής Σε αυτό το κεφάλαιο παρουσιάστηκαν οι βασικές έννοιες και τεχνολογίες των Υπηρεσιών Ι- στού και των Αρχιτεκτονικών Προσανατολισμένων στις Υπηρεσίες. Πιο συγκεκριμένα, αναφέρθηκαν τα πλεονεκτήματα των Υπηρεσιών Ιστού με τη χρήση προτύπων βασισμένων στην XML για τον ορισμό και την επικοινωνία μεταξύ ανομοιογενών πλατφορμών. Η γλώσσα WSDL, ως ένα από τα επικρατέστερα τέτοια πρότυπα, χρησιμοποιείται για την περιγραφή των χαρακτηριστικών των Υπηρεσιών Ιστού, ενώ το πρότυπο SOAP προσφέρει ένα πρωτόκολλο ανταλλαγής μηνυμάτων. Στη συνέχεια, παρουσιάστηκε το πεδίο του Σημασιολογικού Ιστού, σκοπός του ο- ποίου είναι η ανώτερου επιπέδου, σημασιολογική περιγραφή της πληροφορίας στον Ιστό. Ο Σημασιολογικός Ιστός, ως εξέλιξη του απλού Ιστού, ορίζει μοντέλα αυξανόμενης εκφραστικότητας, ώστε να περιγραφούν οι ιδιότητες και οι ιεραρχικές σχέσεις μεταξύ των εννοιών της πληροφορίας. Τέτοια πρότυπα είναι οι γλώσσες RDF και OWL. Τα πλεονεκτήματα αυτής της διαδικασίας είναι ότι τα σημασιολογικά δεδομένα μπορούν να ερμηνευθούν από τους υπολογιστές και όχι μόνο από τους ανθρώπους. Κατά συνέπεια, μπορούν να αναζητηθούν και να διαχειριστούν αποτελεσματικότερα. Ένα τρίτο πεδίο έρευνας στον Ιστό αναδύθηκε μέσα από τον συγκερασμό των δύο παραπάνω πεδίων. Οι τεχνικές περιγραφής πληροφορίας του Σημασιολογικού Ιστού μπορούν να εφαρμοστούν για την περιγραφή λειτουργικών και μη λειτουργικών ιδιοτήτων των Υπηρεσιών Ιστού. Σαν αποτέλεσμα, οι υπηρεσίες μπορούν να προσπελαστούν από ευφυείς λογισμικούς πράκτορες, αυτοματοποιώντας ή ημι-αυτοματοποιώντας την Ανακάλυψη, Επιλογή, Ταυτοποίηση και Σύνθεσή τους. Τα πρότυπα που έχουν προκύψει μέσα από αυτές τις προσπάθειες για την περιγραφή των Σημασιολογικών Υπηρεσιών Ιστού χωρίζονται σε από πάνω προς τα κάτω (ανώτερες οντολογίες) και από κάτω προς τα πάνω (ελαφριές προσεγγίσεις). Οι ανώτερες οντολογίες OWL-S και WSMO παρουσιάστηκαν από την πρώτη κατηγορία, ενώ το μεταγενέστερο, ελαφρύ πρότυπο SAWSDL παρουσιάστηκε από τη δεύτερη κατηγορία. Η διάρθρωση και συμβολή της διδακτορικής διατριβής στα θέματα που παρουσιάστηκαν σε αυτό το κεφάλαιο είναι επιγραμματικά: Κεφάλαιο 4 Ενότητα 4.2 Η ενότητα αυτή παρουσιάζει ένα ενδιάμεσο λογισμικό Υπηρεσιών Ιστού στοχευμένο στο πεδίο της Διάχυτης Νοημοσύνης και των Έξυπνων Κτιρίων. Το ενδιάμεσο λογισμικό αφενός βασίζεται στα πρότυπα Υπηρεσιών Ιστού WSDL και SOAP για την περιγραφή και την επικοινωνία αντίστοιχα, προσφέροντας ομοιόμορφη και ανεξάρτητη από πλατφόρμες διεπαφή στο επίπεδο εφαρμογών. Η διεπαφή αυτή είναι απαραίτητη, επειδή στο επίπεδο υλικού υ- πάρχουν πολυάριθμες ετερογενείς συσκευές σε κατανεμημένα δίκτυα, τα οποία ενοποιεί το 69

70 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη ενδιάμεσο λογισμικό. Αφετέρου, γίνεται χρήση των πλεονεκτημάτων της Αρχιτεκτονικής Προσανατολισμένης σε Υπηρεσίες αφού αναπτύσσεται ένας Μεσολαβητής για δυναμική α- νακάλυψη των Υπηρεσιών στο περιβάλλον κάθε στιγμή. Κεφάλαιο 5 Ενότητα 5.2 Σε αυτήν την ενότητα περιγράφεται ο σχεδιασμός και η ανάπτυξη μίας οντολογίας για Έξυπνα Κτίρια και Διάχυτη Νοημοσύνη. Η οντολογία περιγράφει μία ιεραρχία αλληλένδετων εννοιών και ιδιοτήτων γύρω από τους άξονες των συσκευών, των υπηρεσιών και των έξυπνων κτιρίων. Επιπλέον, γίνεται σύνδεση με υπάρχουσες οντολογίες. Συγκεκριμένα, για τον άξονα των Υπηρεσιών γίνεται σύνδεση με την οντολογία περιγραφής Υπηρεσιών OWL-S, όπως αυτή έχει περιγραφεί παραπάνω. Για την υλοποίηση της οντολογίας χρησιμοποιήθηκε η γλώσσα OWL. Ενότητα 5.3 Η ενότητα αυτή περιγράφει τον σχεδιασμό και την ανάπτυξη ενός εργαλείου για επισήμανση Υπηρεσιών Ιστού με σημασιολογία. Το εργαλείο δέχεται σαν είσοδο περιγραφές Υπηρεσιών Ιστού σε WSDL και οντολογικά μοντέλα σε OWL και RDF, ενώ σαν έξοδο παράγονται περιγραφές SAWSDL, σύμφωνα με όσα παρουσιάστηκαν πιο πάνω. Η εφαρμογή επιτρέπει τη συγγραφή Σημασιολογικών Υπηρεσιών Ιστού με επισημάνσεις (model references), αλλά και τους απαραίτητους μετασχηματισμούς (lifting και lowering schema mappings) με γραφικό και φιλικό τρόπο. Επιπλέον, εφαρμόζοντας αλγορίθμους ομοιότητας κειμένου παρέχονται συστάσεις για επισήμανση, ημι-αυτοματοποιώντας τη διαδικασία και διευκολύνοντας τη μαζική επισήμανση περιγραφών. Ενότητα 5.4 Τα αποτελέσματα των προηγούμενων ενοτήτων συνδυάζονται σε αυτήν την ενότητα σε μία ολοκληρωμένη λύση. Συγκεκριμένα, το ενδιάμεσο λογισμικό Υπηρεσιών Ιστού με περιγραφές WSDL της ενότητας 4.2 μετατρέπεται σε σημασιολογικό, με επισημάνσεις των εννοιών από την οντολογία της ενότητας 5.2. Οι SAWSDL επισημάνσεις προκύπτουν μέσα από τη χρήση του εργαλείου της ενότητας 5.3. Το τελικό σημασιολογικό ενδιάμεσο λογισμικό προσφέρει βελτιωμένες ικανότητες Ανακάλυψης, Επιλογής, Ταυτοποίησης και Σύνθεσης. Ενότητα 5.5. Στην ενότητα αυτή παρουσιάζεται ένας γενικού σκοπού αλγόριθμος σημασιολογικής Ταυτοποίησης Υπηρεσιών Ιστού. Ο αλγόριθμος ενσωματώνει τέσσερις διαφορετικές τεχνικές. Η στρατηγική βασισμένη στη λογική εκμεταλλεύεται τη συλλογιστική και τις ιδιότητες των ο- ντολογιών όπως έχουν περιγραφεί παραπάνω, υπολογίζοντας τη σημασιολογική ομοιότητα. Η στρατηγική βασισμένη στην ομοιότητα κειμένου στη σημασιολογία υπολογίζει τη συντα- 70

71 Κεφάλαιο 2 Υπηρεσίες Ιστού και Σημασιολογικός Ιστός κτική ομοιότητα μεταξύ σημασιολογικών εννοιών. Οι ίδιες τεχνικές εφαρμόζονται στις συντακτικές περιγραφές στη στρατηγική ομοιότητας συντακτικών εννοιών. Η υβριδική στρατηγική συνδυάζει τις προηγούμενες τρεις με ενστικτώδη τρόπο. Ο αλγόριθμος αφενός αξιολογήθηκε σε ευρέως διαδεδομένο σύνολο δεδομένων και αφετέρου προσφέρεται μέσω διαδικτυακής εφαρμογής. 71

72

73 Κεφάλαιο 3 Διάχυτη Νοημοσύνη

74

75 3 Διάχυτη Νοημοσύνη Στη σύγχρονη εποχή είναι εμφανής η αυξανόμενη ενσωμάτωση υπολογιστικών δυνατοτήτων σε πολλές συσκευές της καθημερινότητας, μικρές και μεγάλες. Η υπολογιστική ισχύς αυτών των μηχανών αυξάνεται ραγδαία, ενώ το κόστος μειώνεται, κάνοντάς τες προσιτές σε όλο και μεγαλύτερο κοινό. Έτσι λοιπόν, ο μέσος καταναλωτής διαθέτει ήδη smartphones (έξυπνα κινητά τηλέφωνα) με επεξεργαστή πολλαπλών πυρήνων ή έξυπνες τηλεοράσεις που επιτρέπουν την πλοήγηση και χρήση υπηρεσιών στο διαδίκτυο. Στην εξειδικευμένη αγορά τεχνολογιών πληροφορικής κυκλοφορούν ήδη μικροϋπολογιστές που μπορούν να ενσωματωθούν σε αντικείμενα ή ρούχα. Οι συσκευές του οικιακού περιβάλλοντος είναι ήδη διασυνδεδεμένες σε πρωταρχικό βαθμό, καθώς τα συστήματα οικιακού κινηματογράφου και οι τηλεοράσεις μπορούν απευθείας να αναπαράγουν αρχεία μεταξύ υπολογιστών και smartphones. Μεγάλη πρόοδος έχει σημειωθεί και στις τεχνολογίες αισθητήρων και τεχνητής όρασης, αφού οι σύγχρονες παιχνιδομηχανές ενσωματώνουν τρισδιάστατη σάρωση του χώρου του χρήστη, επιταχυνσιόμετρο στο χειριστήριο και αλγορίθμους αναγνώρισης χειρονομιών και κινήσεων. Ό- λες αυτές οι εξελίξεις οδήγησαν στην υλοποίηση του οράματος της Διάχυτης Νοημοσύνης, του οποίου τις πτυχές εξετάζει αυτό το κεφάλαιο. 3.1 Εισαγωγή Η ανάπτυξη της διαμοιρασμένης υπολογιστικής ισχύς γύρω από τον χρήστη συνάδει με το τεχνολογικό όραμα του Απανταχού Υπολογίζειν (Ubiquitous ή Pervasive Computing UbiComp ή PerComp). Το όραμα του Απανταχού Υπολογίζειν παρουσιάζει μία από τις επικρατέστερες αρχιτεκτονικές του μέλλοντος των υπολογιστών. Σύμφωνα με αυτό, η παραδοσιακά γνωστή μέχρι σήμερα επιτραπέζια μορφή του προσωπικού υπολογιστή εγκαταλείπεται. Οι υπολογιστές αντικαθίστανται με πολλαπλές συσκευές ανά χρήστη, κατανεμημένες στο περιβάλλον του, περιτριγυρίζοντάς τον παντού και πάντα. Ο πρώτος που διατύπωσε τις ιδέες αυτές πολύ προγενέστερα και θεωρείται πατέρας του Απανταχού Υπολογίζειν είναι ο Mark Weiser στην εργασία The Computer for the 21 st Century (Weiser, 1991). Η Διάχυτη ή Περιβάλλουσα Νοημοσύνη (Ambient Intelligence - AmI) είναι εξέλιξη του οράματος του Απανταχού Υπολογίζειν, με την προσθήκη ευφυΐας. Έμφαση δίνεται στη φιλικότητα και στη μη παρεμβατικότητα της διεπαφής του χρήστη με το εκάστοτε διάχυτο σύστημα. Στόχος της έρευνας του πεδίου της Διάχυτης Νοημοσύνης είναι η ανάπτυξη εφαρμογών που αντιλαμβάνονται την παρουσία του χρήστη, την περίσταση (περιβάλλον - context) ή τα συναισθήματά του και στη συνέχεια αλληλεπιδρούν μαζί του με ενστικτώδη για τον χρήστη τρόπο. Με άλλα λόγια, οι διάχυτες εφαρμογές δεν απαιτούν την πλήρη συγκέντρωση και προσοχή του χρήστη κατά την αλληλεπίδραση, όπως συμβαίνει με την παραδοσιακή χρήση του προσωπικού υπολογιστή, αλλά ενσωματώνονται διακριτικά στο περιθώριο. Ένας σύντομος ορισμός είναι ο εξής:

76 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη «Ο όρος Διάχυτη Νοημοσύνη αναφέρεται σε ηλεκτρονικά περιβάλλοντα τα οποία διαισθάνονται και αντιδρούν στην παρουσία των ανθρώπων, με σκοπό να διευκολύνουν τις καθημερινές τους δραστηριότητες.» Η καθημερινή ζωή, έτσι όπως σκιαγραφείται από το όραμα της Διάχυτης Νοημοσύνης και του Απανταχού Υπολογίζειν, απεικονίζεται διαγραμματικά στην Εικόνα 3.1. Ένας υ- πάλληλος γραφείου ή επιχειρηματίας εφοδιάζεται με πολλές φορητές μικροσυσκευές, αντί για το παραδοσιακό laptop. Οι συσκευές σχηματίζουν το λεγόμενο «δίκτυο εμβέλειας ανθρώπινου σώματος body area network», όρος που δίνει έμφαση στην αυξανόμενη πληθώρα συσκευών που αντιστοιχούν σε ένα μόνο άνθρωπο. Στη συνέχεια, ο χρήστης με τη βοήθεια των συσκευών μπορεί να εκτελεί απομακρυσμένες διεργασίες σε χώρους της ιδιοκτησίας του ή μη. Μπορεί, για παράδειγμα, να ελέγχει οικιακές συσκευές και φωτισμό στο έξυπνο σπίτι του, το έξυπνο αυτοκίνητό του, τις συσκευές στο γραφείο του και υπηρεσίες προσφερόμενες από τρίτους, όπως τα super markets και τα εστιατόρια που επισκέπτεται. Όλα τα παραπάνω γίνονται με λίγη ή καθόλου αλληλεπίδραση από την πλευρά του. Εικόνα 3.1. Δίκτυο συσκευών γύρω από έναν χρήστη κατά το όραμα της Διάχυτης Νοημοσύνης 3.2 Διεπαφή Χρήστη στην AmI Όπως αναφέρθηκε, ένα από τα πιο κρίσιμα χαρακτηριστικά των διάχυτων εφαρμογών είναι η διεπαφή του χρήστη. Ο τομέας της διεπαφής ανθρώπου-υπολογιστή (Human Computer Interaction HCI) συνεχώς ερευνά νέους τρόπους, αλλά κυρίως νέες συσκευές, ώστε να ανακαλυφθούν και να γίνουν προσιτοί στο κοινό νέοι τρόποι αλληλεπίδρασης με τις μηχανές. Οι τρόποι αυτοί πρέπει να είναι ενστικτώδεις και στην περίπτωση της AmI να προσφέρουν ά- νεση και αφαιρετικότητα. Όπως είναι φυσικό, η παραδοσιακή διεπαφή του συνδυασμού πληκτρολόγιο-ποντίκι είναι ακατάλληλη για σχεδόν κάθε δυνατό σενάριο AmI. Αντίθετα, μία κατηγορία κατάλληλων διεπαφών για εφαρμογές Διάχυτης Νοημοσύνης αφορά τεχνολογίες εικονικής ή επαυξημένης πραγματικότητας (virtual ή augmented reality αντίστοιχα). Με την πρόοδο της τεχνολογίας μάλιστα, διεπαφές ταινιών επιστημονικής 76

77 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα 3.2. Διεπαφή χειρισμού με χειρονομίες σε ταινία επιστημονικής φαντασίας Εικόνα 3.3. Ανίχνευση όλων των αρθρώσεων από τη συσκευή εισόδου LEAP Motion φαντασίας γίνονται πλέον πραγματικότητα. Για παράδειγμα, στη δημοφιλή ταινία επιστημονικής φαντασίας Minority Report, ο πρωταγωνιστής χειρίζεται και μετακινεί παράθυρα σε ένα πρόγραμμα υπολογιστή χρησιμοποιώντας μόνο χειρονομίες των χεριών, ενώ αυτά προβάλλονται σαν ολογράμματα γύρω του (Εικόνα 3.2). Αυτή η διεπαφή εισόδου δεδομένων έχει ήδη εμπνεύσει υπάρχοντα συστήματα που βασίζονται είτε σε τεχνητή όραση είτε σε φορητά επιταχυνσιόμετρα. Μία πρότυπη συσκευή ανίχνευσης κινήσεων στο εμπόριο είναι το LEAP Motion, το οποίο ανιχνεύει με ακρίβεια την κίνηση όλων των αρθρώσεων του χεριού, όπως φαίνεται στην Εικόνα 3.3. Επιπλέον, από αυτά τα σενάρια εγείρονται προβληματισμοί για την ασφάλεια και την ιδιωτικότητα στα συστήματα Διάχυτης Νοημοσύνης (Wright, 2008). Ένα δεύτερο σενάριο χρήσης διάχυτου συστήματος, που παρουσιάζεται, είναι αυτό των μελλοντικών αγορών σε εμπορικό κέντρο. Ενώ ο ήρωας εισέρχεται στο εμπορικό κέντρο, σαρώνεται η ίριδα του ματιού του. Έτσι ταυτοποιείται με μοναδικό τρόπο και ένα σύστημα 77

78 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη σύστασης αγορών προβάλλεται δίπλα του σαν ολόγραμμα με τη μορφή ανθρώπινης πωλήτριας. Στη συνέχεια, αναλαμβάνει να τον χαιρετήσει με ομιλία, να του υπενθυμίσει τις τελευταίες αγορές του και να του προτείνει νέα προϊόντα. Εσωτερικά της εφαρμογής υλοποιούνται αλγόριθμοι προσωποποίησης και σύστασης αγορών με τεχνικές Μηχανικής Μάθησης. Στο κομμάτι της διάχυτης διεπαφής, προσφέρονται ήδη στο εμπόριο αισθητήρες ανίχνευσης παρουσίας και ταυτοποίησης, όπως αυτοί που βασίζονται στην τεχνολογία RFID. Σήμερα, όμως, βρισκόμαστε στο κατώφλι μιας νέας εποχής, όπου προηγουμένως α- πρόσιτοι οικονομικά αισθητήρες γίνονται διαθέσιμοι στο ευρύ κοινό. Πλέον στον χώρο του gaming προσφέρονται τρισδιάστατες κάμερες, επιταχυνσιόμετρα και γυροσκόπια που ανιχνεύουν τις κινήσεις του ανθρώπινου σώματος. Οι αισθητήρες αυτοί γίνονται εκμεταλλεύσιμοι από την προγραμματιστική κοινότητα μέσω προγραμματιστικής διεπαφής και έχουν ήδη χρησιμοποιηθεί εκτενώς στην έρευνα της τεχνητής όρασης (Ren et al., 2011). Συνολικά, είναι φανερό ότι οι συσκευές εισόδου έχουν πια εγκαθιδρυθεί, όσο και οι αλγόριθμοι στο backend των εφαρμογών. Επομένως, αυτό που διερευνάται είναι επιτυχημένες εφαρμογές που ενσωματώνουν τις διαισθητικές αυτές διεπαφές στους αλγορίθμους. Το όραμα αυτών των πλήρως εναρμονισμένων διεπαφών χρήστη σε συνδυασμό με πολύ προχωρημένη Τεχνητή Νοημοσύνη παρουσιάζεται στην ταινία Her (Εικόνα 3.4). Θέτονται με εξαιρετικά ακριβή τρόπο πολύπλευροι στόχοι για τα διάχυτα συστήματα: Εικόνα 3.4. Εξελιγμένη προσαυξημένη πραγματικότητα και αναγνώριση ομιλίας σε ταινία επιστημονικής φαντασίας Ρεαλιστική επαυξημένη πραγματικότητα Ακρίβεια στην αναγνώριση και παραγωγή φυσικής γλώσσας Ολοκλήρωση προγραμμάτων και υπηρεσιών που ακολουθούν τον χρήστη απρόσκοπτα μεταξύ φορητών και σταθερών συσκευών Προσαρμοστικότητα, μάθηση και πρόβλεψη προτιμήσεων χρήστη 78

79 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα 3.5. Κυριότερα πεδία εφαρμογής Διάχυτης Νοημοσύνης 3.3 Πεδία Εφαρμογής της Διάχυτης Νοημοσύνης Οι δημοφιλέστερες εφαρμογές της Διάχυτης Νοημοσύνης μπορούν να κατηγοριοποιηθούν σε οικιακές, υγείας και υποβοηθούμενης διαβίωσης, έξυπνου κτιρίου, γραφείου, βιομηχανικές, γεωργικές και άλλες. Μία αφαιρετική κατηγοριοποίηση φαίνεται στην Εικόνα 3.5 (Grammenos et al., 2009), που διακρίνει εφαρμογές στην Κατοικία, την Εργασία, την Εκπαίδευση, την Ψυχαγωγία, το Εμπόριο και τις Μεταφορές. Άλλες κατηγορίες εφαρμογών είναι η Υγεία και τα Νοσοκομεία, η Ασφάλεια και Έκτακτη Ανάγκη (Cook et al., 2009), επιστρατεύοντας πολλές τεχνικές Τεχνητής Νοημοσύνης κατά περίπτωση, όπως η λήψη αποφάσεων, οι κανόνες, η Μηχανική Μάθηση, ο Σχεδιασμός Ενεργειών και οι πράκτορες (Sadri, 2011). Στη συνέχεια, εξετάζονται τρεις τέτοιοι τομείς: το Έξυπνο Κτίριο, οι εφαρμογές υγείας και υποβοηθούμενης διαβίωσης και οι εφαρμογές που εμπλέκουν ρομποτική Έξυπνο Κτίριο Οι εφαρμογές Έξυπνου Κτιρίου συνοπτικά στοχεύουν στην άνεση, στους αυτοματισμούς και ενίοτε στην εξοικονόμηση ενέργειας με διάχυτο τρόπο, παρέχοντας, δηλαδή, φιλική, ενστικτώδη, αυτόματη ή ημι-αυτόματη διεπαφή χρήστη. Όπως παρουσιάζεται στη συνέχεια, οι εφαρμογές Έξυπνου Κτιρίου συναντώνται τόσο στη βιομηχανία, όσο και στην έρευνα. Ειδικά οι πράσινες εφαρμογές βελτιστοποίησης της κατανάλωσης ενέργειας γνωρίζουν ιδιαίτερη άνθηση τα τελευταία χρόνια. Η βασική αρχή πίσω από αυτές τις εφαρμογές είναι η μεθοδική παρακολούθηση της ενεργειακής κατανάλωσης ενός χώρου, πριν τη συνειδητή μείωση κατανάλωσης του χρήστη. Σε αυτή την κατεύθυνση, οι μεγαλύτερες εταιρίες στον χώρο ήδη παρέχουν Cloud Υπηρεσίες ενεργειακής παρακολούθησης κτιρίου. Το Google 79

80 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη powermeter 20 βασίζεται σε αυτή την απλή αρχή: όταν οι καταναλωτές παρακολουθούν την κατανάλωση ρεύματός τους, τείνουν να ξοδεύουν λιγότερο (Εικόνα 3.6). Για την αποστολή δεδομένων, διατίθενται διάχυτες συσκευές με API ενοποιημένο με την Cloud Υπηρεσία. Η λίστα των συνεργαζόμενων εταιρειών συνεχώς μεγαλώνει, ενώ οι εφαρμογές παρακολούθησης (monitoring) διαφόρων μετρικών κερδίζουν συνεχώς έδαφος στον Ιστό. Στον τομέα των Έξυπνων Κτιρίων εντοπίζεται, επιπλέον, η τομή του πεδίου της Διάχυτης Νοημοσύνης με το πεδίο των Smart Grids (Έξυπνων Δικτύων Διανομής), που αφορά εφαρμογές τεχνολογιών πληροφορικής τελευταίας γενιάς στην ηλεκτροδότηση (Amin and Wollenberg, 2005). Σε αυτές τις εφαρμογές εμπλέκονται η Τεχνητή Νοημοσύνη και η έξυπνη ηλεκτροδότηση (όπως η φόρτιση ηλεκτρικών αυτοκινήτων) με διάχυτο τρόπο. Μία τέτοια Εικόνα 3.6. Βασική αρχή πίσω από το Google Power Meter είναι η μείωση της κατανάλωσης μέσω εκτενούς παρακολούθησης Εικόνα 3.7. Microsoft Hohm και Ford βελτιστοποιούν την κατανάλωση ενέργειας στο σπίτι 20 Power Meter: 80

81 Κεφάλαιο 3 Διάχυτη Νοημοσύνη πρόταση είναι η Cloud Υπηρεσία Microsoft Hohm 21. Το Hohm υπεισέρχεται φαινομενικά σε μεγαλύτερη γκάμα εφαρμογών Έξυπνου Κτιρίου από απλή παρακολούθηση. Εκτός από τα γραφήματα του ιστορικού κατανάλωσης, γίνεται συνδυασμός με τεχνικές Μηχανικής Μάθησης, ώστε να παρουσιάζονται στο χρήστη συστάσεις με βάση τις συνήθειές του. Ένα ενδιαφέρον στοιχείο του Hohm είναι η συνεργασία με την εταιρία αυτοκινήτων Ford, ώστε το σύστημα να προτείνει στον χρήστη τις βέλτιστες χρονικές στιγμές για να φορτίσει το Ford αυτοκίνητό του (βλ. Εικόνα 3.7). Άφθονες παρόμοιες προσπάθειες συνδυάζουν Διάχυτη Νοημοσύνη και Smart Grids ερευνητικά (Tischer and Verbic, 2011) (Hart, 2008). Δύο ακόμα παράγοντες που συμβάλλουν στην ανάπτυξη εφαρμογών Έξυπνου Κτιρίου είναι τα δίκτυα συσκευών και οι Υπηρεσίες Ιστού. Από τη μία, το υλικό, δηλαδή οι αισθητήρες και τα όργανα δράσης, παίζουν πρωταρχικό ρόλο σε αυτά τα περιβάλλοντα. Ήδη τεράστια ποικιλία συσκευών διατίθεται στο εμπόριο για οικιακή ή προγραμματιστική χρήση σε προσιτές τιμές. Σε αυτό συμβάλλουν και οι δυνατότητες δικτύωσης και ενοποίησης που προσφέρουν πρωτόκολλα όπως το ZigBee και το Z-Wave, που παρουσιάζονται σε επόμενη ενότητα. Ταυτόχρονα, η ενοποίηση των συσκευών και η απομακρυσμένη κλήση τους επιτυγχάνονται σε μεγάλο βαθμό από την τεχνολογία των Υπηρεσιών Ιστού, όπως αυτή έχει παρουσιαστεί σε προηγούμενο κεφάλαιο. Είναι εμφανές ότι στην έρευνα οι Υπηρεσίες Ιστού παίζουν κυρίαρχο ρόλο στην ενοποίηση υλικού για Έξυπνα Κτίρια. Μεταξύ άλλων, το πρόγραμμα Hydra περιλαμβάνει την ε- φαρμογή HydraGizer, η οποία ενοποιεί και παρουσιάζει συσκευές σε έναν έξυπνο χώρο (Eisenhauer et al., 2010). Στην Εικόνα 3.8 φαίνονται δύο διαφορετικά κομμάτια της εφαρμογής. Στα αριστερά εικονίζεται η κεντρική γραφική διεπαφή χρήστη που προβάλλει εκτεταμένες δυνατότητες παρακολούθησης. Παρουσιάζει τις διασυνδεδεμένες συσκευές, την κατανάλωσή τους και δίνει τη δυνατότητα ρύθμισης μιας επιθυμητής κατανάλωσης-στόχο στο σπίτι. Ανάλογα με αυτή την τιμή, το σύστημα ενεργοποιεί και απενεργοποιεί κάποιες συσκευές. Εικόνα 3.8. HydraGizer: αριστερά το interface που παρέχει κεντρικό έλεγχο των συσκευών, δεξιά η εφαρμογή για Android/iPhone 21 Hohm: 81

82 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Στα δεξιά εικονίζεται η εφαρμογή για έξυπνο τηλέφωνο (Android ή iphone), η οποία παρουσιάζει τις ίδιες διαχειριστικές ικανότητες, αλλά μπορεί, επίσης, να αναγνωρίζει τις συσκευές από την κάμερα με τεχνικές τεχνητής όρασης και να προβάλλει την κατανάλωσή τους τη δεδομένη στιγμή Υγεία και Διάχυτη Υποβοηθούμενη Διαβίωση Η ραγδαία βελτίωση των συνθηκών ζωής και η ανάπτυξη της ιατρικής τις τελευταίες δεκαετίες έχει αυξήσει κατά πολύ την προσδόκιμη διάρκεια ζωής σε σχέση με τις προηγούμενες γενιές. Σύμφωνα με υπολογισμούς, μέχρι το 2050, περίπου το 20% του πληθυσμού των ΗΠΑ θα είναι πάνω από 85 ετών (Vincent and Velkoff, 2010). Αυτό αποτελεί πρόκληση για την κοινωνία και το σύστημα υγείας. Θα υπάρξουν περισσότεροι ασθενείς με Αλτσχάιμερ και Πάρκινσον, το εξειδικευμένο νοσηλευτικό προσωπικό πιθανότατα να μην επαρκεί, ενώ όλο και περισσότεροι ηλικιωμένοι επιθυμούν να λαμβάνουν την απαραίτητη φροντίδα χωρίς να εγκαταλείπουν την άνεση του σπιτιού τους. Ειδικά για το Αλτσχάιμερ, 62% των ατόμων άνω των 85% θα νοσήσουν το 2050, αντί 40% το 1995 ενώ το συνολικό ποσοστό στο συνολικό πληθυσμό θα διπλασιαστεί (Hebert et al., 2001). Η παροχή ποιοτικής φροντίδας από συγγενικά πρόσωπα ή κατ οίκον νοσηλευτές είναι δυσχερής από οικονομική άποψη. Όμως σήμερα η πλειονότητα των ατόμων μεγαλύτερης ηλικίας δεν απολαμβάνουν ακόμα τα οφέλη της ψηφιακής εποχής. Για να ξεπεραστεί αυτό, ερευνητικές ομάδες σε όλο τον κόσμο δραστηριοποιούνται στον τομέα της υποβοηθούμενης από το περιβάλλον διαβίωσης. Αυτές οι προσπάθειες χαρακτηρίζονται από διεπιστημονικότητα και τεχνολογική καινοτομία. Οι εφαρμογές υγείας στη Διάχυτη Νοημοσύνη γνωρίζουν τόση διάδοση στην έρευνα, ώ- στε αποτελούν από μόνες τους ανεξάρτητο πεδίο έρευνας, με την ονομασία Διάχυτη Υποβοηθούμενη Διαβίωση (Ambient Assisted Living AAL) (Kleinberger et al., 2007). Η υποβοηθούμενη από το περιβάλλον διαβίωση αναφέρεται σε ευφυή συστήματα υποβοήθησης για καλύτερη, υγιέστερη και ασφαλέστερη ζωή. Ο όρος καλύπτει έννοιες, προϊόντα και υπηρεσίες που βελτιώνουν και διασυνδέουν μεταξύ τους νέες τεχνολογίες με κοινωνικό περιβάλλον, έχοντας υπόψιν κατά κύριο λόγο τις ανάγκες υπερήλικων ανθρώπων ή ευπαθών ομάδων. Οι εφαρμογές της μπορούν να χρησιμοποιηθούν για την πρόληψη, θεραπεία και αποκατάσταση παθήσεων υγείας που συνδέονται με τη γήρανση ή στοχευμένων παθήσεων (Sun et al., 2009). Τα συστήματα και εργαλεία που έχουν αναπτυχθεί μέχρι τώρα μπορούν να κατηγοριοποιηθούν στις παρακάτω ομάδες: Λήψη φαρμάκων, διαχείριση και υπενθύμιση Συστήματα ασφαλείας, άμεσης απόκρισης για ηλικιωμένους Συστήματα ανίχνευσης πτώσης Συστήματα παρακολούθησης μέσω βίντεο Υποβοήθηση δραστηριοτήτων βασισμένη στην παρακολούθηση και αναγνώριση δραστηριοτήτων καθημερινής ζωής (Activities of Daily Living - ADL) και δημιουργία υπενθυμίσεων για αυτές 82

83 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Αυτοματισμοί και βοήθεια για αυτονομία μετακινήσεων Τεχνολογίες υποβοήθησης επικοινωνίας ηλικιωμένων με φίλους και συγγενείς Στη συνέχεια, εξετάζεται ως υπόδειγμα μία τέτοια εφαρμογή, που συνδυάζει τα περισσότερα από τα παραπάνω στοιχεία. Συγκεκριμένα, πρόκειται για την εφαρμογή Hydra στο πεδίο της υγείας, που σχεδιάστηκε μετά από εκτενή ανάλυση κοινωνικών, οικονομικών, πολιτισμικών και πολιτικών παραγόντων. Ως γνωστόν, η κύρια συμβολή του Hydra είναι η ενοποίηση συσκευών με ενσωμάτωση Υπηρεσιών Ιστού. Σαν αποτέλεσμα, οι ασθενείς μπορούν πλέον να μετρούν με συσκευές και να «ανεβάζουν» αυτόνομα τα αποτελέσματα των εξετάσεών τους, χωρίς την ανάγκη επίσκεψης σε ιατρείο. Η μελέτη ωφελεί ιδιαίτερα άτομα με ασθένειες κάποιας επικινδυνότητας, που χρήζουν συνεχούς παρακολούθησης, όπως ο σακχαρώδης διαβήτης τύπου II. Αναλυτικά, η λειτουργικότητα της εφαρμογής περιλαμβάνει τη διεξαγωγή μικρο-εξετάσεων με φορητές συσκευές (βάρος, επίπεδα γλυκόζης και χοληστερίνης) και αυτοματοποιημένες ειδοποιήσεις προς τον επιβλέποντα γιατρό κατά συνθήκη. Για παράδειγμα, όταν τα αποτελέσματα είναι ικανοποιητικά, η ειδοποίηση γίνεται με , ενώ όταν τα αποτελέσματα ξεπερνούν κάποιο κατώφλι ή δεν έχουν ληφθεί, γίνεται με φωνητικό ταχυδρομείο. Επιπλέον, το σύστημα ενθαρρύνει τον ασθενή να εξασκηθεί σωματικά, καταγράφοντας τις αποστάσεις που διανύει και τα ρεκόρ του στο τρέξιμο. Τέλος, εξασφαλίζει την τήρηση κατάλληλης διατροφής, φιλτράροντας τα ακατάλληλα για τον ασθενή γεύματα από ηλεκτρονικές λίστες εστιατορίων. Εικόνα 3.9. Το Hydra εκθέτει και ενοποιεί μέσω Υπηρεσιών Ιστού δεδομένα από συσκευές παρακολούθησης υγείας και εξωτερικές εφαρμογές 83

84 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Στην Εικόνα 3.9 φαίνεται η αρχιτεκτονική του παραπάνω συστήματος. Είναι φανερή η διασύνδεση από τη μία μεριά με τις τοπικές βιομετρικές συσκευές, όπως το Wii Fit, και από την άλλη με εξωτερικές Cloud Υπηρεσίες όπως το Google health και το Microsoft HealthVault, όπου οι χρήστες ανεβάζουν τα δεδομένα τους. Στην Εικόνα 3.10 φαίνεται η Γραφική Διεπαφή Χρήστη, που παρουσιάζεται στο κλινικό προσωπικό (γιατρό) με τη σύνοψη των βιομετρικών δεδομένων του χρήστη. Εικόνα Interface Γιατρού από το HydraMiddleware Στη συνέχεια εξετάζονται πρόσθετες ιδιότητες που εμφανίζουν εφαρμογές υποβοηθούμενης διαβίωσης. Κατά αντιστοιχία με το πεδίο των οικιακών αυτοματισμών, οι εφαρμογές υποβοηθούμενης διαβίωσης θα πρέπει να είναι σε θέση να παρέχουν ομοιόμορφη πρόσβαση στα δεδομένα και τις λειτουργίες συσκευών διαφορετικών κατασκευαστών, πρωτοκόλλων επικοινωνίας και τύπων δεδομένων. Στο πεδίο της υγείας, οι συσκευές αυτές είναι συχνά ο καρδιογράφος, το ακτινολογικό κ.ο.κ. και μπορούν να ενοποιηθούν σε ένα κοινό πλαίσιο και πάλι με τη βοήθεια Υπηρεσιών Ιστού, αλλά και σημασιολογικών μοντέλων. Για ακόμα μεγαλύτερη ευαισθησία και ανίχνευση του περιβάλλοντος (context) κάθε στιγμή, συχνά εγκαθίστανται αισθητήρες περιβαλλοντολογικών συνθηκών στο νοσοκομείο και στους χώρους όπου γίνονται οι εξετάσεις. Η ιδιωτικότητα και ασφάλεια των ιατρικών δεδομένων των ασθενών παίζει σημαντικότερο ρόλο από ότι σε άλλες εφαρμογές. Μπορεί να διασφαλιστεί με ένα online κεντρικοποιημένο σύστημα (Cloud). Ο κάθε ασθενής, κατόπιν, εξουσιοδοτεί τον εκάστοτε γιατρό να προβάλλει τα σχετικά μόνο δεδομένα. Όσον αφορά τη λήψη φαρμάκων, συναντώνται διάχυτες εφαρμογές που στοχεύουν στην καλή εξυπηρέτηση των ασθενών και στη νομιμότητα. Συχνά εγκαθίσταται ένα online σύστημα παράδοσης συνταγών, όπου το φαρμακείο λαμβάνει τη συνταγή απευθείας από τον γιατρό και ανταποκρίνεται με την παράδοση των φαρμάκων στον ασθενή. Έτσι, αποτρέπονται οι λανθασμένες ή παράνομες συνταγογραφήσεις. Όλα τα παραπάνω προϋποθέτουν την αναμφισβήτητη ταυτοποίηση ασθενών και φαρμάκων, για παράδειγμα με RFID tags. Ε- πιπλέον, ένα φάρμακο (ή οποιοδήποτε αντικείμενο) με RFID tag μπορεί να εντοπιστεί και να διερευνηθεί η διαδρομή που ακολούθησε από την κατασκευή του (tracking), ώστε να αποτρέπονται φαινόμενα παράνομης εισαγωγής φαρμάκων. Όσον αφορά τις υπενθυμίσεις και τη διαχείριση από πλευράς χρήστη, στα πλαίσια της αυτόνομης θεραπείας του στο σπίτι, μία λύση περιλαμβάνει ηλεκτρονικές θήκες φαρμάκων. Οι χρήστες μπορούν να διαθέτουν μια 84

85 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα Έκφραση συναισθημάτων του διάχυτου ρομποτικού συστήματος icat τέτοια θήκη για τα φάρμακα, η οποία να καταγράφει τις δόσεις τους, προλαμβάνοντας την υπερ- ή υπο-κατανάλωση (Eisenhauer et al., 2010) Ρομποτική Οι εφαρμογές της Διάχυτης Νοημοσύνης στη ρομποτική παρουσιάζουν ιδιαίτερο ενδιαφέρον από πλευράς Τεχνητής Νοημοσύνης και εστιάζουν σε διάφορους άξονες. Σε αυτή την ενότητα εξετάζονται τρία είδη πρότυπων εφαρμογών. Η πρώτη εφαρμογή στοχεύει στη βελτίωση της ποιότητας ζωής, με μία διάχυτη διεπαφή που δίνει έμφαση στο συναίσθημα. Συγκεκριμένα, το ρομπότ icat αναλαμβάνει τον χειρισμό του Έξυπνου Σπιτιού, όπως την αναπαραγωγή πολυμέσων. Ο χρήστης αλληλοεπιδρά μαζί του με αναγνώριση και παραγωγή φυσικής γλώσσας. Το ιδιαίτερο, όμως, χαρακτηριστικό του icat είναι η δυνατότητα αλλαγής έκφρασης προσώπου του ρομπότ, ώστε να α- ντανακλά τα συναισθήματά του, όπως φαίνεται στην Εικόνα Αυτό το πετυχαίνει με την ενσωμάτωση μεγάλου αριθμού κινητήρων στο πρόσωπο. Η πειραματική πλατφόρμα icat προσφέρει μια ενδιαφέρουσα βάση για την αξιολόγηση του παράγοντα αποδοχής και άνεσης χρήσης των διάχυτων συστημάτων με εφόδιο το συναίσθημα (van Breemen et al., 2005). Τα πειράματα γίνονται σε δύο φάσεις. Στην πρώτη, το πρόγραμμα του icat είναι πιο εξωστρεφές, κοινωνικό και ευδιάθετο, αλλάζοντας πολλές εκφράσεις, ενώ στη δεύτερη το πρόγραμμα γίνεται πιο εσωστρεφές, αλλάζοντας λιγότερες εκφράσεις και δίνοντας μονολεκτικές απαντήσεις. Ένα τέτοιο πείραμα είναι το σενάριο του τηλεοπτικού οδηγού, όπου το icat παρακολουθεί τηλεόραση μαζί με τον χρήστη. Όταν αναγνωρίζει το προβαλλόμενο πρόγραμμα, λέει στον χρήστη τις πληροφορίες και τον ρωτάει αν το πρόγραμμα αυτό του αρέσει. Αν όχι, τότε προτείνει άλλα προγράμματα που παίζονται την ίδια στιγμή. Το πείραμα εκτελείται σε δύο φάσεις, με ένα εκφραστικό και ένα ανέκφραστο πρόγραμμα. Συμπερασματικά, το icat δίνει μια νέα, πολύ ενδιαφέρουσα διάσταση στη διάδραση με AmI προγράμματα, δίνοντας στον χρήστη πλήθος εκφράσεων ανάδρασης, αντί για μια μονοδιάστατη φωνή. 85

86 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Ένα δεύτερο είδος εφαρμογών περιλαμβάνει ρομπότ που κινούνται με διακριτικό, διάχυτο τρόπο στο περιβάλλον. Το παράδειγμα που παρατίθεται είναι αυτό των ρομπότ της οικογένειας DustBot (Reggente et al., 2010). Στα πλαίσια του προγράμματος DustBot κατασκευάστηκαν δύο ρομπότ που συλλέγουν τα απορρίμματα των πολιτών και αλληλοεπιδρούν μαζί τους ενημερώνοντάς τους για τις περιβαλλοντικές συνθήκες. Όταν οι συνθήκες που α- ντιλαμβάνονται μέσω αισθητήρων είναι μη βιώσιμες, εκπέμπουν μια προειδοποίηση. Επιπλέον, οι πολίτες μπορούν να καλούν το DustBot με SMS. Αυτό τους εντοπίζει και συλλέγει τα σκουπίδια τους (Εικόνα 3.12). Η λειτουργία αυτή εξυπηρετεί τους πολίτες σε περιοχές δυσπρόσιτες για τα μεγάλα απορριμματοφόρα ή πεζοδρομημένες. Το πρόγραμμα έτρεξε πιλοτικά στην Ιταλία, τη Σουηδία και την Ιρλανδία. Ο κοινός παρονομαστής των DustBot και icat είναι ότι τα δύο ρομπότ λειτουργούν στο περιθώριο του χρήστη, κάνοντας την ζωή του ευκολότερη, χωρίς να απαιτούν την πλήρη προσοχή του, σύμφωνα με τις προσταγές της Διάχυτης Νοημοσύνης. Σαν τελευταία εφαρμογή αναφέρονται ρομποτικά αντικείμενα τα οποία μπορούν να κινούνται ή να προβάλλουν πληροφορίες με διάχυτο τρόπο. Η προβολή χρήσιμων πληροφοριών σε καθημερινά αντικείμενα φαίνεται με το παράδειγμα του καθρέφτη του μπάνιου, 86 Εικόνα Τα ρομπότ DustBot καθαρίζουν, μαζεύουν τα σκουπίδια και ανακυκλώνουν στην πόλη με διάχυτο τρόπο

87 Κεφάλαιο 3 Διάχυτη Νοημοσύνη στην Εικόνα Έτσι, ο σύγχρονος χρήστης δε χρειάζεται πια να καθίσει στον προσωπικό τον υπολογιστή του για να προβάλλει τον καιρό, την πορεία των μετοχών του ή πληροφορίες υγείας, όπως ο μεταβολισμός του κλπ. Αντίστοιχα καθημερινά αντικείμενα μπορούν πλέον να επιδρούν στο περιβάλλον. Τέτοια παραδείγματα περιλαμβάνουν ρομποτικούς βραχίονες που ταΐζουν ή παίζουν με τα κατοικίδια ζώα κ.α. Το όραμα του συνδυασμού πληροφοριών με τη ρομποτική συντροφιά υλοποιείται στην εργασία (Saffiotti and Broxvall, 2005). Εικόνα Διάχυτες διεπαφές προβάλλουν πληροφορίες πάνω σε καθημερινά αντικείμενα, ό- πως στον καθρέφτη του μπάνιου 3.4 Δίκτυα Συσκευών σε Έξυπνους Χώρους Ιδιαίτερη ώθηση στη Διάχυτη Νοημοσύνη δίνει η ραγδαία ανάπτυξη των δικτύων αισθητήρων, τόσο ενσύρματων, όσο και ασύρματων. Αν και τα δίκτυα συσκευών παραδοσιακά αναφέρονται σε αισθητήρες, αναφέρονται πλέον εξίσου και σε όργανα δράσης. Οι αισθητήρες και τα όργανα δράσης αποτελούν τη βάση κάθε τέτοιου συστήματος. Στην Εικόνα 3.14 φαίνεται ένα παράδειγμα ενός τέτοιου ιδανικά διασυνδεδεμένου δωματίου. Βλέπουμε μια γενική κατηγοριοποίηση των αισθητήρων σε ένα Έξυπνο Σπίτι, που περιλαμβάνει αισθητήρες κίνησης, επαφής (στην πόρτα), θερμοκρασίας και περιβάλλοντος γενικότερα, αλλά και όργανα δράσης για τον έλεγχο των παραθύρων, του συναγερμού, της θέρμανσης και του φωτισμού. Επομένως, ένα από τα προβλήματα που προκύπτουν είναι η δικτύωση και η μεταφορά δεδομένων μεταξύ όλων αυτών των απομακρυσμένων συσκευών, με αποδοτικό τρόπο. Από τον χώρο των δικτύων και τηλεπικοινωνιών, πολλά νέα πρωτόκολλα υπόσχονται να λύσουν αυτό το πρόβλημα μέσω ασύρματης ή ενσύρματης δικτύωσης μικροσυσκευών στο σπίτι, με χαμηλό κόστος λειτουργίας. Οι τεχνολογίες αυτές διαμορφώνουν καθοριστικά την τιμή και τη λειτουργικότητα των συσκευών του εμπορίου. Για τους οικιακούς χρήστες παίζουν ακόμα πιο καθοριστικό ρόλο, αφού τα πρωτόκολλα δεν επικοινωνούν μεταξύ τους. Έτσι, όταν ένας χρήστης επιλέγει κάποιο πακέτο αισθητήρων ενός πρωτοκόλλου, ουσιαστικά δεσμεύεται να το επεκτείνει μόνο με τέτοιες συσκευές. Στην έρευνα αυτό ισχύει σε λιγότερο 87

88 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη βαθμό, καθώς γίνεται προσπάθεια να ενοποιηθούν τα πρωτόκολλα προγραμματιστικά (αυτός είναι ο σκοπός συνήθως του Ενδιάμεσου Λογισμικού). Και πάλι όμως, προτιμώνται σίγουρα συσκευές που είναι ήδη ενοποιημένες σε επίπεδο πρωτοκόλλου επικοινωνίας. Άρα, υπάρχει μεγάλη ταύτιση του πρωτοκόλλου επικοινωνίας και του εμπορικού πακέτου ή αλλιώς της «οικογένειας» που ανήκει μια συσκευή. Εικόνα Ασύρματα Διασυνδεδεμένοι Αισθητήρες και Όργανα Δράσης σε ένα Έξυπνο Σπίτι Τα πιο δημοφιλή πρωτόκολλα που επιλέγονται για οικιακή χρήση είναι τα χαμηλού κόστους ανά συσκευή δίκτυα με καλωδίωση ρεύματος ή ασύρματα. Για παράδειγμα, στα δίκτυα καλωδίωσης ρεύματος ανήκουν τα INSTEON και X10 πρωτόκολλα, ενώ στα ασύρματα τα ZigBee και Z-Wave. Όλες οι παραπάνω οικογένειες συσκευών προσφέρουν περίπου την ίδια λειτουργικότητα, δηλαδή αισθητήρες για τη μέτρηση της κατανάλωσης του ρεύματος και περιβαλλοντικών συνθηκών, την ανίχνευση κίνησης με υπέρυθρες και όργανα δράσης για τη ρύθμιση του θερμοστάτη ή κινητήρες για αυτοματισμούς σε πόρτες γκαράζ ή παράθυρα. Σπανιότερα, επιλέγονται πιο υψηλού κόστους λύσεις και εξειδικευμένα πρωτόκολλα. Για παράδειγμα, ένα σύστημα RFID μπορεί να χρησιμοποιηθεί για την εύρεση και ταυτοποίηση αντικειμένων στον χώρο. Επιπλέον, μια κάμερα με κατάλληλους αλγορίθμους μπορεί να ανιχνεύσει την παρουσία ατόμων στον χώρο και να τα ταυτοποιήσει. Ακόμα πιο εξειδικευμένες εφαρμογές μπορούν να ανιχνεύσουν τη διάθεση από την έκφραση του ανθρώπινου προσώπου. Τέλος, στις πολυμεσικές εφαρμογές χρησιμοποιείται περισσότερος εξοπλισμός, πχ. τηλεοράσεις και συστήματα οικιακού κινηματογράφου, συμβατά με τεχνολογία DLNA. Ενώ η επιλογή κατάλληλων αισθητήρων και οργάνων δράσης είναι κρίσιμη για μια εφαρμογή Διάχυτης Νοημοσύνης, η περίπτωση να ανήκουν όλες οι συσκευές στο ίδιο πρωτόκολλο είναι σχετικά απίθανη. Το σύστημα που προτείνει η παρούσα διατριβή δεν αποτελεί εξαίρεση, αφού οι λειτουργικές απαιτήσεις του περιβάλλοντός του είναι αρκετά εκτενείς, προκειμένου να καλυφθούν οι ανάγκες παρακολούθησης ρεύματος και περιβαλλοντικών συνθηκών, ανίχνευσης κίνησης και ελέγχου ηλεκτρικών συσκευών. Οι συσκευές που επιλέχθηκαν ανήκουν σε αρκετά ετερογενή, ασύμβατα μεταξύ τους συστήματα και συγκεκριμένα 88

89 Κεφάλαιο 3 Διάχυτη Νοημοσύνη τα Plugwise, PrismaSense, OWL, CurrentCost και Z-Wave. Παρότι όλα τα συστήματα βασίζονται σε ασύρματη επικοινωνία, τα πρωτόκολλά τους είναι διαφορετικά, δηλαδή ZigBee, Z- Wave και RF. Τα συστήματα αυτά και οι προσφερόμενες συσκευές παρουσιάζονται αναλυτικά στις παρακάτω ενότητες Επικοινωνία μέσω Καλωδίωσης Ρεύματος Η Επικοινωνία μέσω Καλωδίωσης Ρεύματος - Power Line Communication (PLC) (Yousuf et al., 2008) είναι μια νέα τεχνολογία επικοινωνιών που κάνει χρήση της υπάρχουσας υποδομής παροχής ρεύματος για τη μετάδοση δεδομένων και σημάτων ελέγχου. Με αυτόν τον τρόπο το σύστημα εκμεταλλεύεται ήδη υπάρχουσα καλωδίωση για την απομακρυσμένη επικοινωνία τερματικών μέσα σε ένα σπίτι ή κτίριο. Επωφελείται τα πλεονεκτήματα της ενσύρματης επικοινωνίας (μικρότερες απώλειες), ενώ ταυτόχρονα οι συσκευές δεν απαιτούν μπαταρία, αφού βρίσκονται ήδη συνδεδεμένες στο ρεύμα. Υπάρχουν διάφορα πρωτόκολλα βασισμένα στην τεχνολογία PLC, εκ των οποίων κάποια στοχεύουν τους οικιακούς αυτοματισμούς, τα συστήματα ασφαλείας, τον έλεγχο φωτισμού κ.α. Κάποια άλλα χρησιμοποιούνται σε πιο περιορισμένες πρακτικές εφαρμογές με μεγαλύτερο αγοραστικό κοινό. Για παράδειγμα, υπάρχουσες PLC προεκτάσεις καλωδίου Ethernet για οικιακές εγκαταστάσεις με δύο τερματικά. X10 To Χ10 22 είναι ένα διεθνές και ανοιχτό πρότυπο για επικοινωνία μεταξύ ηλεκτρονικών συσκευών που αναπτύχθηκε το 1975 από την Pico Electronics για χρήση σε οικιακούς αυτοματισμούς (domotics), ενώ ήταν το πρώτο πρωτόκολλο που αναπτύχτηκε με αυτόν τον σκοπό. Ταυτόχρονα, X10 ονομάζεται και το πακέτο προϊόντων της εταιρίας που εστιάζουν εξίσου στην οικιακή ασφάλεια και τους αυτοματισμούς. Το X10 ενσωματώνει τόσο ενσύρματη, όσο και ασύρματη επικοινωνία. Αφενός, η ενσύρματη επικοινωνία χρησιμοποιεί τους φορείς καλωδίωσης ρεύματος (Power Line Carriers) για τη μετάδοση σημάτων με τη μορφή ραδιοσυχνοτήτων που αντιπροσωπεύουν την ψηφιακή πληροφορία. Η μετάδοση γίνεται κατά τη διάρκεια του μηδενικού εναλλασσόμενου ρεύματος με σήματα στη συχνότητα των 120 KHz μέσω των καλωδίων. Αφετέρου, ορίζεται πρωτόκολλο ασύρματης επικοινωνίας, που μεταδίδει στη συχνότητα 310 KHz για ΗΠΑ και 433 KHz για Ευρώπη. Τα σήματα μεταφέρουν κωδικούς και εντολές από έναν ελεγκτή στις υπόλοιπες συσκευές. Οι ρυθμοί μετάδοσης που επιτυγχάνονται είναι της τάξης των 20 bps, καθιστώντας το πρωτόκολλο τόσο αργό ώστε στην πράξη να εκτελεί κυρίως πολύ απλές ενέργειες, όπως το άνοιγμα ή το κλείσιμο μιας συσκευής. Σε γενικές γραμμές, το πρωτόκολλο θεωρείται πολύ αργό, μη αξιόπιστο, αρκετά περιορισμένο σε θέματα λειτουργικότητας και δεν υπάρχει η δυνατότητα κρυπτογράφησης των ανταλλασσόμενων πληροφοριών. 22 Το πρωτόκολλο X10: 89

90 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη INSTEON Το INSTEON 23 είναι μία εξέλιξη του X10 σε μια πιο αξιόπιστη τεχνολογία που απευθύνεται σε οικιακά συστήματα ελέγχου και αυτοματισμούς και αποτελεί μία από τις επικρατέστερες τεχνολογίες PLC σήμερα. Υποστηρίζοντας τεχνολογίες καλωδίωσης ρεύματος, αλλά και τεχνολογίες ραδιοσυχνοτήτων, στοχεύει στον έλεγχο από απόσταση και τον αυτοματισμό συσκευών και εφαρμογών, όπως ο φωτισμός και τα συστήματα ασφαλείας. Αναπτύχθηκε από την SmartLabs και στηρίζεται σε ένα διπλό, κατανεμημένο (dual-mesh) δίκτυο που στέλνει σήματα μέσω ραδιοσυχνοτήτων είτε μέσω των προϋπαρχόντων καλωδίων ρεύματος του σπιτιού. Σε αντίθεση με τα κοινά κατανεμημένα δίκτυα άλλων πρωτοκόλλων, το δίκτυο INSTEON χρησιμοποιεί όλες τις συσκευές του ως αναμεταδότες, λαμβάνοντας και στέλνοντας κάθε μήνυμα σε όλες τις υπόλοιπες συσκευές του δικτύου. Έτσι, με την προσθήκη περισσότερων συσκευών, αντί να δημιουργούμε συμφόρηση στο δίκτυο, στην πραγματικότητα το ενισχύουμε. Αντίθετα, άλλου είδους κατανεμημένα δίκτυα χρησιμοποιούν μοναδικούς δρομολογητές με τον αποκλειστικό ρόλο της αναμετάδοσης μηνυμάτων, πράγμα που μειώνει την αξιοπιστία τους. Εικόνα Τα λογότυπα των επικρατέστερων πρωτοκόλλων PLC, INSTEON και X10 Το πρωτόκολλο λειτουργεί στη συχνότητα των KHz με διαμόρφωση κλειδιού δυαδικής ολίσθησης φάσης (Binary Phase Shift Keying - BPSK) για τα ηλεκτρικά καλώδια και στη συχνότητα MHz με διαμόρφωση κλειδιού ολίσθησης συχνότητας (Frequency Shift Keying FSK) για τις ραδιοσυχνότητες, πετυχαίνοντας ρυθμούς μετάδοσης 2.88 kbps και 38.4 kbps αντίστοιχα. Στην ασύρματη μετάδοση οι συσκευές έχουν ορατότητα 45 μέτρων σε ανοιχτό χώρο. Επίσης, το INSTEON υποστηρίζει προς τα πίσω συμβατότητα (backward compatibility) με το X10, αναγνωρίζοντας εντολές και διευθύνσεις χωρίς όμως να μπορεί να μεταδίδει μηνύματα του πρωτοκόλλου X10. Στην Εικόνα 3.15 φαίνονται τα λογότυπα των δύο δημοφιλών πρωτοκόλλων. Άλλα Πρωτόκολλα: HomePlug, LonWorks Η HomePlug Alliance είναι μία ένωση που σχεδίασε και ανέπτυξε μία σειρά από εξειδικευμένα πρωτόκολλα (Lee et al., 2003). Το πρώτο ευρυζωνικό πρωτόκολλο καλωδίωσης ρεύματος της ένωσης HomePlug ονομάστηκε HomePlug 1.0 και σχεδιάστηκε για την υλοποίηση οικιακών τοπικών δικτύων με ταχύτητα μετάδοσης 14Mbps. Διάφορες άλλες παραλλαγές του πρωτοκόλλου προέκυψαν με τροποποιήσεις στο Φυσικό Επίπεδο (Physical Layer) επικοινωνίας. Το HomePlug AV στοχεύει, όπως μαρτυρά το όνομά του, στη μετάδοση πολυμέσων. Το INSTEON:

91 Κεφάλαιο 3 Διάχυτη Νοημοσύνη HomePlug BPL σχεδιάστηκε για παροχή υψηλής ταχύτητας Internet. Τέλος, το HomePlug Command and Control παρέχει μια λύση χαμηλής ταχύτητας και κόστους για οικιακούς αυτοματισμούς. Ενδεικτικά αναφέρεται μία ακόμα προσπάθεια στον τομέα των PLC, αυτή της ένωσης LonWorks (Local operation networks) (Dutta-Roy, 1999). Στο πρωτόκολλα LonWorks, το μέσο διάδοσης μπορεί να είναι καλώδια ανεστραμμένου ζεύγους, ομοαξονικά, ίνες, υπέρυθρες ή ραδιοσυχνότητες, ακόμα και καλώδια ρεύματος. Στόχος είναι ένα διαλειτουργικό πρότυπο, κοινό για παραπάνω από έναν κατασκευαστή. Οι ταχύτητες που επετεύχθησαν είναι 5.4kbps ή 3.6kbps, ανάλογα με τη συχνότητα. Άλλα PLC πρωτόκολλα άξια αναφοράς είναι τα PLC-BUS, EIB και KNX Τεχνολογίες Ραδιοσυχνότητας Τα τελευταία χρόνια έχει αναπτυχθεί πληθώρα τεχνολογιών ασύρματης μετάδοσης μικρής εμβέλειας, κατάλληλων για δικτύωση στον οικιακό χώρο, όπως τα ZigBee και Z-Wave (Εικόνα 3.16). Οι απαιτήσεις ενός τέτοιου χώρου προστάζουν πρώτα από όλα χαμηλή κατανάλωση ρεύματος, ταχύτητα, ευελιξία διασύνδεσης και εγκατάστασης και τέλος κάλυψη της οικίας. Εικόνα Τα λογότυπα των ZigBee Alliance και Z-Wave ZigBee Μια από τις δημοφιλέστερες τεχνολογίες είναι το πρωτόκολλο ZigBee, από τη ZigBee Alliance. Το ZigBee βασίζεται στο IEEE για ασύρματα προσωπικά δίκτυα περιοχής (WPANs) χαμηλού ρυθμού μετάδοσης δεδομένων και στοχεύει τους οικιακούς και κτιριακούς αυτοματισμούς (Baronti et al., 2007). Το κυριότερο προτέρημά του είναι η βελτιστοποίηση κατανάλωσης ενέργειας και επομένως η εκτεταμένη διάρκεια ζωής της μπαταρίας ασύρματων αισθητήρων (Lee, 2006). Αυτό το χαρακτηριστικό, μαζί με το αποδοτικό mesh δίκτυο που σχηματίζουν οι συσκευές ZigBee καλύπτοντας το κτίριο, είναι αυτά που το καθιστούν συχνά προτιμώμενη τεχνολογία. Η δημιουργία ενός τέτοιου προτύπου πρωτοκόλλου για διαλειτουργικούς, ιδιόκτητους ασύρματους αισθητήρες και συστήματα ελέγχου απαιτεί μικρή καθυστέρηση μνήμης, χαμηλούς ρυθμούς μετάδοσης, χαμηλό κόστος και χαμηλή κατανάλωση ρεύματος. Το πρότυπο ΙΕΕΕ ορίζει το φυσικό επίπεδο (PHY) και το επίπεδο προσπέλασης ελέγχου μέσων (Media Access Control - MAC) για χαμηλού ρυθμού WPANs, περιορίζει τον ρυθμό μετάδοσης στα 2.4 GHz στην ISM ζώνη και ενσωματώνει χαμηλή κατανάλωση και κόστος. Με βάση τα επίπεδα PHY και MAC, η Z-Wave Alliance ανέπτυξε το πρωτόκολλο ZigBee το Το 91

92 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 3.17: Οι τοπολογίες αστέρα (Star), συμπλέγματος (Cluster) και κατανεμημένου (Mesh) δικτύου ZigBee καθιστά ικανή την αμφίδρομη επικοινωνία μεταξύ των μέσων ελέγχου, έχει εμβέλεια μέτρων και επιτρέπει τον έλεγχο συσκευών διαφόρων λειτουργιών. Οι οικιακές και εμπορικές εφαρμογές του ZigBee περιλαμβάνουν έλεγχο του φωτισμού, ανιχνευτές καπνού και αερίων, συσκευές κλιματισμού, ασφάλειας, αυτόματους μετρητές και επικοινωνία μεταξύ ενός απομακρυσμένου χειριστηρίου και ψηφιακών συσκευών. Το ZigBee και το πρότυπο δημιουργούν δίκτυα συσκευών δύο τύπων: των συσκευών πλήρους λειτουργίας (Full Function Device - FFD) και των συσκευών περιορισμένης λειτουργίας (Reduced Function Device - RFD). Όλες οι συσκευές έχουν διευθύνσεις 64-bit, αν και μπορούν να χρησιμοποιηθούν και διευθύνσεις 16-bit για να μειωθεί το μέγεθος του πακέτου. Οι συσκευές FFD πρέπει να είναι συντονιστές δικτύου ή δρομολογητές, ενώ οι καταληκτικές συσκευές που επιδρούν με τον φυσικό κόσμο είναι RFD. Όλα τα ZigBee δίκτυα πρέπει να έχουν κάποιο συντονιστή δικτύου. Ο συντονιστής δημιουργεί το δίκτυο, ενημερώνεται για την κατάσταση του, ενεργεί ως αποθήκη κλειδιών ασφαλείας, διαχειρίζεται και αποθηκεύει τις εισερχόμενες και τις εξερχόμενες πληροφορίες και δρομολογεί μηνύματα μεταξύ κόμβων. Οι δρομολογητές ενεργούν ως μεσολαβητές, διοχετεύοντας την πληροφορία μεταξύ συσκευών. Οι καταληκτικές συσκευές έχουν περιορισμένη λειτουργία, με σκοπό τη μείωση του κόστους λειτουργίας και της πολυπλοκότητας, ενώ μειωμένο είναι και το κόστος κατασκευής τους. Παρόλο που το ZigBee υποστηρίζει διάφορες τοπολογίες δικτύου, η ZigBee Alliance το ορίζει κυρίως σαν ένα ευφυές mesh δίκτυο. Επιπλέον, το χαρακτηρίζει σαν χαμηλού κόστους και κατανάλωσης, καινοτόμο, αυτορρυθμιζόμενο, αυτοθεραπευόμενο σύστημα πλεοναζόντων κόμβων. Στα κατανεμημένα δίκτυα οι ασύρματοι κόμβοι επικοινωνούν με τους γειτονικούς τους κόμβους. Αν κάποιος κόμβος απουσιάζει, οι πληροφορίες αυτόματα δρομολογούνται μέσω άλλων κόμβων, ώστε να επιτραπεί η λειτουργία των υπόλοιπων. Αυτή η πλεονάζουσα, δυναμική συνδεσμολογία συμβάλει στις μικρές απαιτήσεις συντήρησης, στην αξιοπιστία και στη συνεχή λειτουργία (persistence) του δικτύου. Χάρις τις ιδιότητες του κατανεμημένου δικτύου, οι κόμβοι μπορούν να επικοινωνούν διαμέσου τοίχων και πατωμάτων κτιρίων, ακόμα και όταν δεν υπάρχει άμεση ορατότητα μεταξύ όλων των κόμβων. 92

93 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Μία πιο κοινή τοπολογία είναι αυτή του αστέρα. Η βέλτιστη διευθέτηση συμβαίνει όταν οι καταληκτικές συσκευές είναι συγκεντρωμένες κοντά και επικοινωνούν με έναν κοινό δρομολογητή. Αυτή η διευθέτηση επιτυγχάνει την καλύτερη εξοικονόμηση ρεύματος των μπαταριών. Οι προδιαγραφές του ZigBee αναφέρουν και την τοπολογία δένδρου, όπου ένα μεγάλο δίκτυο ενώνει πολλά μικρότερα δίκτυα αστέρα. Στην Εικόνα 3.17 παρουσιάζονται οι βασικές τοπολογίες που εφαρμόζονται στα ασύρματα δίκτυα. Εικόνα 3.18: Η στοίβα του πρωτοκόλλου ZigBee Η στοίβα του πρωτοκόλλου ZigBee περιλαμβάνει το φυσικό επίπεδο (Physical - PHY), το επίπεδο ελέγχου προσπέλασης μέσων (Media Access Control - MAC), το επίπεδο δικτύου (Network - NWK) και το επίπεδο εφαρμογής (Application - APL). Το φυσικό επίπεδο σχεδιάστηκε έτσι ώστε να φιλοξενεί τις ανάγκες για χαμηλό κόστος και ευκολία ενσωμάτωσης στις εφαρμογές που υιοθετούν το ZigBee. Το επίπεδο ελέγχου προσπέλασης μέσων σχεδιάστηκε με στόχο να επιτρέπει πολλαπλές τοπολογίες χωρίς πολυπλοκότητα και να μπορεί να διαχειριστεί RFD συσκευές, όπως και μεγάλο αριθμό κόμβων, χωρίς αυτοί να βρίσκονται σε σταθερά σημεία. Το επίπεδο δικτύου επιτρέπει στο δίκτυο να εξαπλώνεται χωρίς την παρουσία ισχυρών, ενεργοβόρων πομπών. Παράλληλα, μπορεί να διαχειριστεί μεγάλους αριθμούς κόμβων αποφεύγοντας τις σχετικά μεγάλες καθυστερήσεις. Στην Εικόνα 3.18 φαίνεται η διαστρωμάτωση του πρωτοκόλλου και κάποια χαρακτηριστικά του, όπως ο πάροχος υπηρεσιών ασφαλείας (SSP) που χρησιμοποιείται όταν απαιτείται κρυπτογράφηση των ανταλλασσόμενων πακέτων. Το υποεπίπεδο υποστήριξης εφαρμογών (Application Support APS sublayer) και το αντικείμενο ZigBee συσκευής (ZigBee Device Object - ZDO) είναι υπεύθυνα για τη διασύνδεση συγκριμένων συσκευών και την επικοινωνία μεταξύ τους. Z-Wave Το Z-Wave είναι μία τεχνολογία κατανεμημένων δικτύων (mesh network) που αναπτύχθηκε το 1999 για ασύρματη επικοινωνία μέσω ραδιοσυχνοτήτων (RF), ειδικά για οικιακές συ- 93

94 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 3.19: Η στοίβα του πρωτοκόλλου Z-Wave ενσωματωμένη σε εφαρμογή σκευές. Στόχος της είναι η χρήση χαμηλού κόστους και κατανάλωσης πομποδεκτών ραδιοσυχνοτήτων. Ένας δεύτερος στόχος είναι η διαλειτουργικότητα: όλες οι συσκευές που επικοινωνούν με Z-Wave χρησιμοποιούν την ίδια οικογένεια κυκλωμάτων και έτσι μπορούν να αλληλεπιδρούν σε υλικό επίπεδο, έστω κι αν προέρχονται από διαφορετικούς κατασκευαστές. Η Z-Wave επικοινωνία έχει βασιστεί στα πρωτόκολλα δικτύων που χρησιμοποιούνται στους υπολογιστές και παρέχει υψηλή αξιοπιστία. Επιπρόσθετα, οι συσκευές Z-Wave ενεργούν ως αναμεταδότες, προωθώντας μηνύματα σε άλλες συσκευές στο δίκτυο. Όσον αφορά τη συχνότητα εκπομπής, το Z-Wave αποφεύγει τη συχνότητα των οικιακών συσκευών, για παράδειγμα των τηλεφώνων, οι οποίες εκπέμπουν στα 2.4 GHz, εξασφαλίζοντας λιγότερες παρεμβολές. Η συχνότητα που χρησιμοποιείται ανήκει στην ISM ζώνη μονής συχνότητας με κωδικοποίηση καναλιού Manchester. Η εκπομπή χρησιμοποιεί την τεχνική κλειδιού ολίσθησης συχνότητας (FSK) και ποικίλει ανάλογα με τη χώρα. Στις ΗΠΑ ορίζεται στα MHz και στην Ευρώπη στα 860 MHz. Η ταχύτητα φτάνει τα 40Kbps, που είναι κατάλληλη για εφαρμογές αισθητήρων και αυτοματισμού. Το Z-Wave έχει συγκριτικά μεγάλη εμβέλεια, φτάνοντας τα 30 μέτρα για εσωτερικούς χώρους και τα 100 μέτρα για εξωτερικούς. Επέκταση του δικτύου είναι δυνατή με τη χρήση περισσοτέρων συσκευών, υποστηρίζοντας μέχρι και 232 κόμβους ανά δίκτυο. Εφόσον όλες οι Z-Wave συσκευές λειτουργούν και ως αναμεταδότες, το σήμα μεταδίδεται από τον έναν στον άλλο προσθέτοντας κάθε φορά 30 μέτρα εμβέλειας. Συνολικά, μπορούν γίνουν 3 μεταπηδήσεις (hops) από συσκευή σε συσκευή για την επέκταση του δικτύου, πριν το πρωτόκολλο τερματίσει την αναμετάδοση του σήματος (Hop kill). Το Z-Wave είναι ένα χαμηλού εύρους ζώνης, ημιαμφίδρομο (half duplex) πρωτόκολλο, σχεδιασμένο για επικοινωνία χαμηλού κόστους και αυξημένης αξιοπιστίας, που μεταδίδει μικρό όγκο δεδομένων. Αποτελείται από 4 επίπεδα, όπως αυτά απεικονίζονται στην Εικόνα Το πρώτο επίπεδο συνδυάζει το φυσικό PHY με τον έλεγχο πρόσβασης μέσων MAC. Το επίπεδο μεταφοράς (Transport layer) διαχειρίζεται τη μετάδοση και τη λήψη πα- 94

95 Κεφάλαιο 3 Διάχυτη Νοημοσύνη κέτων. Το επίπεδο δρομολόγησης (Routing layer) ευθύνεται για τη δρομολόγηση των πακέτων στο δίκτυο και το επίπεδο εφαρμογής (Application layer) διαχειρίζεται τον φόρτο των απεσταλμένων και των ληφθέντων πλαισίων. Στο σχήμα διακρίνονται οι λειτουργίες που πρέπει να υλοποιεί μία εφαρμογή που διαχειρίζεται Z-Wave συσκευές, πχ οι περιοδικές κλήσεις καταγραφής (polls), η διαχείριση γεγονότων (events) και η διαχείριση της κατάστασης (status) και των αναφορών του συστήματος (reports). Εκτενέστερη αναφορά στα χαρακτηριστικά αυτά γίνεται στη συνέχεια της εργασίας. Η Z-Wave Alliance είναι μία κοινοπραξία κατασκευαστών που δημιουργούν προϊόντα βασισμένα στο Z-Wave. Υπάρχουν αρκετές εταιρίες που υποστηρίζουν το Z-Wave, ανάμεσα τους οι Leviton, Intermatic και Honeywell, προσφέροντας πλήθος συσκευών οικιακού αυτοματισμού. Ταυτοποίηση με Ραδιοσυχνότητα RFID Παρόλο που δεν αποτελεί τεχνολογία δικτύου αισθητήρων παρόμοιο με τις υπόλοιπες που παρουσιάζονται στην ενότητα, η τεχνολογία ταυτοποίησης μέσω ραδιοσυχνοτήτων, RFID, είναι σίγουρα άξια αναφοράς. Συγκεκριμένα, η ασύρματη αυτή τεχνολογία δε χρησιμοποιείται σε οικιακούς αυτοματισμούς μεμονωμένα, αλλά σε συνδυασμό με άλλες. Παίζει κρίσιμο ρόλο σε έξυπνα περιβάλλοντα, αφού δίνει ένα μέσο ταυτοποίησης και εντοπισμού ενός προσώπου ή αντικειμένου μέσα σε αυτό. Οι RFID ετικέτες RFID tags (Radio Frequency Identification) βασίζονται στην ενσωμάτωση χαμηλού κόστους παθητικών UHF ετικετών στα αντικείμενα ή πρόσωπα υπό παρακολούθηση. Επιτρέπει στη συνέχεια τον εντοπισμό τους σε μικρή απόσταση, με κόστος τόσο χαμηλό που επιτρέπει την ενσωμάτωσή τους σε μεγάλο α- ριθμό αντικειμένων ή προσώπων. Οι χρήσεις ενός τέτοιου συστήματος είναι ποικίλες. Η ταυτοποίηση και ο εντοπισμός μπορούν να βελτιώσουν τα διάχυτα περιβάλλοντα σε πιο ασφαλή, πιο έξυπνα και διαδραστικά. Για παράδειγμα, στην εργασία (Davidyuk et al., 2011) οι ετικέτες RFID προσκολλώνται σε αντικείμενα, ώστε η σειρά σάρωσής τους αργότερα να αποτελεί δεδομένο εισόδου σε μια πολύπλοκη διεργασία σύνθεσης Υπηρεσιών Ιστού. Έτσι λοιπόν, τα αντικείμενα αποτελούν στην ουσία φυσικό μέσο διεπαφής με τον υπολογιστή. Ωστόσο, η τεχνολογία RFID δεν έχει εισέλθει ακόμα επιτυχημένα στην αγορά λιανικής οικιακών αυτοματισμών, ούτε διατίθενται τόσο εύκολα πακέτα για προγραμματισμό με ανοιχτό API Σύγκριση Πρωτοκόλλων Στην προσπάθεια να δοθεί μια εποπτική εικόνα των δικτύων αισθητήρων, γίνεται αρχικά μία σύγκριση των κυρίαρχων ασύρματων πρωτοκόλλων, Z-Wave και ZigBee. Ο Πίνακας 3.1 παρουσιάζει περιληπτικά όλες τις πτυχές αυτών των πρωτοκόλλων (Galeev, 2006). Και τα δύο πρωτόκολλα λειτουργούν με ασφάλεια και αξιοπιστία σε χαμηλούς ρυθμούς μετάδοσης δεδομένων και ενεργειακής κατανάλωσης. Στοχεύουν σε παρακολούθηση συνθηκών με αισθητήρες, αυτοματισμούς και έλεγχο κυρίως σε οικιακές εφαρμογές. Έχουν παρόμοια λειτουργία, ονοματολογία και απευθύνονται στο ίδιο αγοραστικό κοινό. Ωστόσο, το ZigBee καλύπτει 95

96 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πίνακας 3.1. Σύγκριση ασύρματων πρωτοκόλλων Z-Wave και ZigBee Z-Wave/Zensys ZigBee/IEEE Ραδιοσυχνότητα/Επίπεδο PHY ΗΠΑ Ευρώπη ΗΠΑ Ευρώπη ΗΠΑ/Ευρώπη Συχνότητα λειτουργίας (MHz) Αριθμός καναλιών Μέγιστη ταχύτητα μετάδοσης (Kbit) Modulation FSK, GFSK, narrowband BPSK/BPSK/O-PQSK, DSSS Μέση απόσταση κόμβων χωρίς εμπόδια 30m/ 100ft 30m/ 100ft Διευθύνσεις/Επίπεδο MAC Κόμβοι ανά δίκτυο Μέχρι 233 Μέχρι αναλόγως τοπολογίας Διευθύνσεις Κόμβων Ανατίθενται από τον Ελεγκτή 64 bit IEEE διευθύνσεις, προαιρετικές σύντομες διευθύνσεις από Ελεγκτή Αλγόριθμος πρόσβασης Τυχαίο Backoff CSMA CA Δίκτυο Τοπολογία Κατανεμημένη Αστέρα, Κατανεμημένη, Δενδρική Ρόλος κόμβων Ελεγκτής και Σκλάβος Ελεγκτής, Δρομολογητής, Τερματικό Μετάδοση Μέχρι 4 hops Μέχρι 32 hops ανάλογα με καθυστέρηση Δρομολόγηση Από την πηγή Δενδρική ή Κατανεμημένη δρομολόγηση Ασφάλεια, Κρυπτογράφηση Εφαρμογές/Εφοδιαστική Πεδία εφαρμογής Οικιακοί Αυτοματισμοί και Φωτισμός Οικιακοί και Βιομηχανικοί Αυτοματισμοί, Παρακολούθηση και Έλεγχος Λειτουργίες Κόμβων Πολλαπλές κλάσεις εντολών Πολλαπλά προφίλ εφαρμογών Απαιτήσεις Hosting 8051@ 16MHz, 32K/2K 8 bits MCU@ 16MHz, 32K/2K Εφοδιαστική πρωτοκόλλου Ιδιόκτητο Προτυποποιημένο Προμηθευτές ολοκληρωμένων κυκλωμάτων Προμηθευτές στοίβας πρωτοκόλλου Zensys Zensys Chipcon, Freescale, ZMD κ.α. Chipcon, Ember κ.α. Ολοκληρωμένες μονάδες Zensys L.S. Research, MaxStream κ.α. Τιμή στόχος < 2 $ < 3 $ 96

97 Κεφάλαιο 3 Διάχυτη Νοημοσύνη μία ευρύτερη γκάμα εφαρμογών, αφού προσφέρει πολύ μεγαλύτερο μέγεθος δικτύων (προσαρμόσιμο αναλόγως της τοπολογίας και των απαιτήσεων αξιοπιστίας κάθε εφαρμογής), διάφορες τοπολογίες και εκτενή αναμετάδοση πακέτων. Επομένως, το Z-Wave μπορεί να θεωρηθεί υποσύνολο του ZigBee κατά μία έννοια. Το Z-Wave είναι σχεδιασμένο πιο στοχευμένα και αποκλειστικά για οικιακά δίκτυα, θέτοντας κάποια όρια στα χαρακτηριστικά του πρωτοκόλλου, όπως η τοπολογία και η διευθυνσιοδότηση. Εν ακολουθία, παρουσιάζεται ένας συγκεντρωτικός πίνακας των επικρατέστερων τεχνολογιών για οικιακούς αυτοματισμούς, ενσύρματων και ασύρματων 24. Ο Πίνακας 3.2 παρουσιάζει τα γενικότερα χαρακτηριστικά αυτών των τεχνολογιών. Ενώ αρχικά φαίνεται ότι το πρωτόκολλο INSTEON κυριαρχεί στα περισσότερα σημεία, πρέπει να σημειωθεί ότι η επιλογή συσκευών με τις καλύτερες επιδόσεις, σύμφωνα με τον πίνακα, δεν είναι μονόδρομος. Υπάρχουν κι άλλοι πρακτικοί παράγοντες που επηρεάζουν μια τέτοια επιλογή. Για παράδειγμα, το πρωτόκολλο πρέπει να προσφέρει συσκευές με την επιθυμητή λειτουργικότητα είτε αφορά αισθητήρες, είτε όργανα δράσης. Επιπλέον, σημαντικός παράγοντας είναι η ύπαρξη ανοιχτών εργαλείων προγραμματισμού (SDK ή API). Τα εργαλεία αυτά μπορεί φυσικά να διαφέρουν ανά κατασκευαστή, άρα δεν αφορούν ολόκληρο το πρωτόκολλο και εξετάζονται κατά περίπτωση. Πολλά δείγματα δείχνουν ότι το INSTEON έχει εγκαταλειφθεί από την προγραμματιστική κοινότητα, ενώ το ZigBee και το Z-Wave υπερτερούν σε αυτόν τον τομέα. Τέλος, τα δύο αυτά πρωτόκολλα προσφέρουν μεγαλύτερη γκάμα συσκευών, αφού το Z-Wave υποστηρίζει πολλούς κατασκευαστές. Πίνακας 3.2. Σύγκριση κυριότερων πρωτοκόλλων καλωδίωσης και ραδιοσυχνότητας INSTEON X10 ZigBee Z-Wave Ελάχιστη τιμή λιανικής συσκευής ($) Αξιοπιστία Άριστη Μέτρια Καλή Καλή Κάθε κόμβος βελτιώνει το δίκτυο Αναμετάδοση από κάθε κόμβο Φυσικό μέσο RF και PLC PLC RF RF Διαλειτουργικότητα στο φυσικό επίπεδο Απλή εγκατάσταση χωρίς ελεγκτή Μέγιστος αριθμός κόμβων ανά δίκτυο 16,777, Μοναδικές διευθύνσεις 24 Πηγή: 97

98 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 3.5 Αισθητήρες και Όργανα Δράσης Η προηγούμενη ενότητα εξέτασε τις τεχνολογίες και τα πρωτόκολλα επικοινωνίας συσκευών σε Έξυπνους Χώρους, χωρίς να παρουσιάζει συγκεκριμένη λειτουργικότητα και ιδιότητες των μεμονωμένων κόμβων. Αντίθετα, σε αυτή την ενότητα παρουσιάζεται τέτοιο υλικό, δηλαδή αισθητήρες και όργανα δράσης που χρησιμοποιούνται στα σύγχρονα διάχυτα συστήματα. Για κάθε οικογένεια συσκευών ή μεμονωμένη συσκευή παρουσιάζεται αναλυτικά η λειτουργικότητα που προσφέρει και το πώς αυτή υπακούει στα πρωτόκολλα επικοινωνίας και λειτουργίας που παρουσιάστηκαν παραπάνω Έξυπνες Μπρίζες Το πρώτο πακέτο συσκευών που επιλέχθηκε καλύπτει κάποιες βασικές λειτουργικές απαιτήσεις του συστήματος. Αρχικά, είναι αναγκαία η μέτρηση της κατανάλωσης ενέργειας των ε- πιμέρους συσκευών στο κτίριο, ώστε να σχεδιαστούν κατάλληλες ενέργειες. Επιπλέον, το σύστημα πρέπει να μπορεί με προγραμματιστικό τρόπο να προβαίνει σε ενέργειες διαχείρισης της κατανάλωσης και των περιβαλλοντικών συνθηκών, ενεργοποιώντας και απενεργοποιώντας ηλεκτρικές συσκευές και την ηλεκτρική ψύξη-θέρμανση των χώρων. Εικόνα 3.20: Οι κυριότερες συσκευές Plugwise (από αριστερά προς τα δεξιά): Circle, Stealth, Switch και Stick Τις δεδομένες ανάγκες εξυπηρετεί το πακέτο διαχείρισης ενέργειας της ομώνυμης ολλανδικής εταιρείας Plugwise 25. Το πακέτο αποτελείται από ένα δίκτυο ασύρματων κόμβων ZigBee, για οικιακή χρήση, αρκετά διαδεδομένο στην Ευρώπη και με προσιτή τιμή λιανικής (ενδεικτικά 40 ανά κόμβο). Σκοπός του είναι η μέτρηση και η εξοικονόμηση ενέργειας με χειροκίνητες ενέργειες ή με τις λειτουργίες χρονοδιακόπτη και stand-by killer. Τα κύρια μέρη του συστήματος φαίνονται στην Εικόνα 3.20 και είναι τα: Circle, Stealth, Switch και Stick. Αναλυτικότερα, τα μέρη του συστήματος Plugwise είναι τα εξής: Circle Ο κόμβος Circle παρεμβάλλεται με εύκολη εγκατάσταση ανάμεσα από μία μπρίζα και μία ηλεκτρική συσκευή. Κατόπιν, επιτρέπει τη μέτρηση της κατανάλωσής της με περίοδο δειγματοληψίας 8s, αλλά και την ενεργοποίηση ή απενεργοποίηση της. Διαθέτει μνήμη buffer (512ΚΒ) για την αποθήκευση των δεδομένων των τελευταίων (περίπου δύο) μηνών με ανάλυση μίας ώρας

99 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Stealth Τις ίδιες ακριβώς δυνατότητες με το Circle δίνει και η συσκευή Stealth. Χρησιμοποιείται, όμως, για τις συσκευές που δε διαθέτουν φις, αλλά απευθείας παροχή ρεύματος, όπως τα φώτα και ο κλιματισμός. Circle+/Stealth+ Έχουν τη μορφή και τις λειτουργίες ενός Circle ή Stealth, αλλά αποτελούν επίσης δρομολογητές του δικτύου. Οι κόμβοι αυτοί διατηρούν τη λίστα των κόμβων του δικτύου και το κεντρικό ρολόι και δρομολογούν τα δεδομένα, αποτελώντας τον μοναδικό συνδετικό κρίκο μεταξύ των Circle/Stealth και του Stick. Switch Το Switch αντικαθιστά τους παραδοσιακούς διακόπτες ρεύματος, αφού μπορεί να προγραμματιστεί για να αντιστοιχεί σε μία ή περισσότερες συσκευές Circle ή Stealth. Αποτελεί τη μόνη διεπαφή χρήστη από τον φυσικό κόσμο με το δίκτυο Plugwise. Stick Το Stick είναι απαραίτητο για τη σύνδεση του υπολογιστή (μέσω USB) με το δίκτυο Plugwise, παρέχοντας τη διεπαφή ZigBee με το ασύρματο δίκτυο. Source Το εμπορικό λογισμικό της εταιρίας, απαραίτητο για τον προγραμματισμό του δικτύου. Οι λειτουργίες που προσφέρει είναι: κατασκευή του δικτύου (ανίχνευση και συσχετισμός κόμβων), ομαδοποίηση συσκευών, χειροκίνητος χειρισμός συσκευών ή ομάδων, παρακολούθηση ιστορικού κατανάλωσης ανά συσκευή, δωμάτιο ή ομάδα (με ανάλυση μίας ώρας), συσχετισμός διακόπτη και συσκευής ή ομάδας, ανάθεση χρονοδιαγραμμάτων με ρύθμιση stand-by killer. Στην Εικόνα 3.21 φαίνεται η διεπαφή παρακολούθησης και η διεπαφή ανάθεσης χρονοδιαγραμμάτων. Είναι φανερό πως οι πιο σημαντικές για τη λειτουργικότητα συσκευές είναι τα Circle και Stealth, τα οποία στο εξής θα ονομάζονται Smart Plugs/Έξυπνες Μπρίζες χάριν γενικότητας. Οι Έξυπνες Μπρίζες είναι βασικοί αισθητήρες μέτρησης κατανάλωσης σε μικρή κλίμακα (ανά συσκευή), αλλά και όργανα δράσης για τη ρύθμιση του φωτισμού, της ψύξης-θέρμανσης και γενικότερα της κατανάλωσης ενέργειας. Ένα δίκτυο Plugwise είναι μια ειδική περίπτωση ZigBee δικτύου. Σχηματίζει μία δυναμική δομή από εξαρτήματα που υπολογίζει την ενεργειακή κατανάλωση, ανοίγει ή κλείνει συσκευές και εξοικονομεί ενέργεια. Τα διάφορα εξαρτήματα λειτουργούν ανεξάρτητα και συνδέονται το ένα με το άλλο με το ασύρματο πρωτόκολλο ZigBee σχηματίζοντας ένα κατανεμημένο (mesh) δίκτυο. Τα μεγέθη των δικτύων εξαρτώνται από τις εκάστοτε ανάγκες και τους σκοπούς χρήσης. Ένα δίκτυο πρέπει οπωσδήποτε να περιέχει ένα και μόνο ένα Circle+ ή Steath+ ως συντονιστή. Ο συντονιστής πρέπει να είναι πάντα εντός εμβέλειας των υπόλοιπων συσκευών και κοντά στο Stick, διότι μεταφέρει όλη την κίνηση του δικτύου στο Stick και έπειτα στον υπολογιστή. Το Stick δεν είναι απαραίτητο να βρίσκεται σε μόνιμη θέση, αλλά κάθε φορά που αλλάζει η θέση του, καινούργιοι πίνακες δρομολόγησης πρέπει να δημιουργηθούν, μειώνοντας στην αρχή την ταχύτητα του δικτύου. Κάθε δίκτυο μπορεί να υποστηρίξει μέχρι και 64 κόμβους, Circle ή Stealth, όμως η εταιρία συστήνει τη χρήση περίπου 30 κόμβων. Εκτός από τη λήψη και την αποστολή δεδομένων κάθε κόμβος ενεργεί και ως δρομολογητής, οπότε στην περίπτωση που για οποιοδήποτε λόγο η πρόσβαση σε μία μπρίζα δεν είναι δυνατή, η επικοινωνία επαναδρομολογείται μέσω μίας άλλης διαδρομής στο δίκτυο. Αυτή η ιδιότητα είναι γνωστή ως αυτοθεραπεία 99

100 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 3.21: Η εφαρμογή Plugwise Source για παρακολούθηση κατανάλωσης (αριστερά) και ανάθεση χρονοδιαγραμμάτων (δεξιά) (selfhealing). Η μέση κατανάλωση ενός σχετικά απλού οικιακού δικτύου Plugwise δεν ξεπερνά τα 10 W, τιμή πολύ μικρή σε σχέση με την εξοικονόμηση που επιτυγχάνεται. Η τοπολογία του δικτύου είναι ο σημαντικότερος παράγοντας που επιδρά στην ταχύτητα και στην αξιοπιστία του. Μία ιδανική τοπολογία τοποθετεί το Stick στη μέση του γράφου με το Circle+/Stealth+ να είναι πολύ κοντά του και τα Circles/Stealths περιφερειακά, με ενδιάμεση απόσταση 5 έως 10 μέτρων, όπου κάθε μονάδα βλέπει τουλάχιστον άλλες τρεις. Μία ακόμα αποδεκτή τοποθέτηση περιλαμβάνει τα Stick και Circle+ στην άκρη του δικτύου με τις υπόλοιπες συσκευές σχεδόν ομοιόμορφα κατανεμημένες, όπως φαίνεται στην Εικόνα Ένα μειονέκτημα σε αυτή την τοποθέτηση εντοπίζεται στις μονάδες που βρίσκονται μακριά, όπου η μετάδοση των δεδομένων μπορεί να καθυστερήσει κάποια λεπτά, ανάλογα με την απόσταση, μέχρι να φτάσουν στο Stick. Η χειρότερη περίπτωση τοπολογίας συμβαίνει όταν το δίκτυο έχει σχήμα ζευγνύοντος δένδρου, οπότε όλη η πληροφορία διέρχεται από κόμβους ενός σημείου. Σε αυτή την περίπτωση, η ταχύτητα μετάδοσης μπορεί να μειωθεί κατά πολύ, ανάλογα με τον φόρτο, ενώ αν ένας κόμβος απενεργοποιηθεί, ένα μεγάλο μέρος του δικτύου μπορεί να αποκλειστεί και να βγει εκτός λειτουργίας. 100 Εικόνα 3.22: Ένα δίκτυo Plugwise

101 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα Ένα δίκτυο PrismaSense με πέντε Πλακέτες Αισθητήρων, ένα Gateway και δύο WiFi πελάτες. Εικόνα Το λογότυπο της εταιρίας και το πακέτο PrismaSense Σημειώνεται ότι αν και ZigBee, το δίκτυο Plugwise είναι «κλειστό», αφού μεταδίδει κωδικοποιημένη πληροφορία, με ιδιόκτητη κρυπτογράφηση της εταιρίας κι έτσι δεν είναι συμβατό με άλλες συσκευές εκτός του πακέτου. Επίσης, σε περίπτωση που χρειάζεται μεγαλύτερη κάλυψη συσκευών, πρέπει να δημιουργηθούν νέα δίκτυα εξολοκλήρου, που θα περιλαμβάνουν, δηλαδή, δικά τους Stick και Circle+/Stealth+. Το Software της εταιρίας απαιτεί εταιρική άδεια για τη διαχείριση πολλών τέτοιων δικτύων Πλακέτες Αισθητήρων Μία πρόσθετη ανάγκη του συστήματος είναι η παρακολούθηση περιβαλλοντικών συνθηκών σε μεγάλη κλίμακα. Την ανάγκη αυτή λύνει το εμπορικό πακέτο της ελληνική εταιρίας Prisma Electronics, PrismaSense 26. Το πακέτο περιλαμβάνει μία ή περισσότερες Πλακέτες Αισθητή- 26 Prisma Electronics SA: 101

102 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη ρων Sensor Boards με το εμπορικό όνομα Quax. Κάθε πλακέτα μπορεί να ενσωματώνει μέχρι και οχτώ αναλογικούς ή ψηφιακούς αισθητήρες χαμηλού κόστους, όπως θερμοκρασίας, φωτεινότητας, υγρασίας, αποθέματος μπαταρίας, CO 2, επιτάχυνσης κ.α. Η πλακέτα εκπέμπει τις πληροφορίες που συλλέγει μέσω ZigBee και μπορεί να λειτουργεί και σαν αναμεταδότης. Ενδεικτικά κάθε πλακέτα περιέχει επεξεργαστή Texas Instruments MPS430F1611, μνήμη RAM 10 KB και εξωτερική μνήμη EPROM 512 KΒ, ενώ η εμβέλεια του XBee (ZigBee) προσαρμογέα δικτύου φτάνει μέχρι και 300 μέτρα Το PrismaSense περιλαμβάνει, επίσης, ένα ή περισσότερα Gateways, τα οποία συλλέγουν τις πληροφορίες από τα Quaxes μέσω ZigBee και τις επανεκπέμπουν μέσω TCP/IP Ethernet ή WiFi σε έναν ή περισσότερους υπολογιστές. Τα δίκτυα PrismaSense, επομένως, έχουν τοπολογία αστέρα, αν κανένα Quax δεν είναι αναμεταδότης (εξοικονόμηση ενέργειας) ή κατανεμημένη, αν κάποιο Quax λειτουργεί και σαν αναμεταδότης (μεγαλύτερη εμβέλεια). Στην πρώτη περίπτωση μπορούν να υποστηριχθούν μέχρι οχτώ κόμβοι, ενώ στη δεύτερη προστίθενται άλλοι οχτώ κόμβοι ανά αναμεταδότη. Ένα δίκτυο PrismaSense φαίνεται στην Εικόνα 3.23, όπου πέντε Πλακέτες Αισθητήρων εκπέμπουν σε ένα Gateway, το οποίο με τη σειρά του μεταδίδει σε δύο τερματικά-πελάτες. Ένα μεγάλο πλεονέκτημα του πακέτου είναι η διάθεση εξειδικευμένου Software Development Kit SDK. Το kit περιλαμβάνει καλώδια για σύνδεση στη μνήμη της κάθε συσκευής και εικονίζεται στην Εικόνα Πρώτα από όλα, το SDK δίνει τη δυνατότητα απευθείας πρόσβασης στα δεδομένα από το software του τερματικού. Ύστερα, δίνεται η δυνατότητα για embedded programming του κάθε Quax ξεχωριστά, αλλά και της Gateway. Ο προγραμματισμός αυτός γίνεται σε αρκετά χαμηλό επίπεδο, σε γλώσσα C για το περιβάλλον ISOS Intelligent Sensors Operating System. Μέσα από αυτή τη διαδικασία ρυθμίζονται οι παράμετροι συχνότητας λήψης δεδομένων από τους αισθητήρες, η συχνότητα εκπομπής, η ενεργοποίηση και η απενεργοποίηση της λειτουργίας δρομολογητή. Δυστυχώς η διαδικασία προγραμματισμού του κάθε κόμβου δίνει μεν μεγάλη ευελιξία, είναι όμως υπερβολικά χρονοβόρα, ειδικά όταν πρόκειται για απλή αλλαγή παραμέτρων Έξυπνες Δαγκάνες Ενώ οι Έξυπνες Μπρίζες καλύπτουν τις ανάγκες για παρακολούθηση μικρής κλίμακας ανά συσκευή, είναι αδύνατον να αθροιστούν στο σύνολο τους για παρακολούθηση μεγάλης κλίμακας. Με άλλα λόγια, είναι απαγορευτικό από πλευράς δυνατοτήτων και κόστους να τοποθετηθούν Μπρίζες σε κάθε παροχή ρεύματος. Αντίθετα, πολλά εμπορικά πακέτα με τεχνολογία Έξυπνων Δαγκάνων μπορούν να παρακολουθούν απευθείας την κεντρική παροχή ρεύματος ενός διαμερίσματος ή ενός κτιρίου. Οι Έξυπνες Δαγκάνες κουμπώνουν γύρω από ένα καλώδιο μεγάλης ισχύος και μετρούν το ρεύμα του επαγωγικά, χωρίς να επεμβαίνουν στην καλωδίωση. Μία τέτοια εγκατάσταση φαίνεται στην Εικόνα Το εμπορικό πακέτο που επιλέχθηκε στα πλαίσια της διατριβής είναι αυτό της εταιρίας Current Cost 27. Μερικά από τα πλεονεκτήματα που προσφέρει είναι η χαμηλή τιμή, η

103 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα Εγκατάσταση δύο Έξυπνων Δαγκάνων στον κεντρικό πίνακα ρεύματος Εικόνα 3.26: Η οθόνη EnviR, ένας πομπός και η γέφυρα NetSmart ευκολία στη χρήση και η αξιοπιστία και κυρίως η ανοιχτή μετάδοση δεδομένων που επιτρέπει τη χρήση τους προγραμματιστικά. Απευθύνεται σε ιδιώτες ή οργανισμούς που θέλουν να γνωρίζουν την ενεργειακή τους συμπεριφορά με απώτερο σκοπό τη μείωση της κατανάλωσης. Τα πακέτα Current Cost αποτελούνται βασικά από πομπούς, δέκτες και αισθητήρες. Οι δαγκάνες (Εικόνα 3.25) είναι ένα είδος αισθητήρα. Μία έως τρεις δαγκάνες (για το τριφασικό ρεύμα) συνδέονται σε έναν πομπό (Εικόνα 3.26), για παράδειγμα στην κεντρική παροχή του κτιρίου/διαμερίσματος. Ο πομπός μετρά και αποστέλλει την πληροφορία ανά 6s σε εμβέλεια μέχρι 30 μέτρων σε έναν ή περισσότερους δέκτες. Η εταιρία προσφέρει πολλά είδη δέκτη, που συνήθως έχουν τη μορφή μικρής οθόνης. Διαφέρουν ως προς τον αριθμό πομπών που μπορούν να υποστηρίξουν και την πληροφορία που απεικονίζουν. Η τυπική οθόνη δέκτης είναι η EnviR, η οποία φαίνεται στην Εικόνα 3.26 και συσχετίζεται με μέχρι 10 πομπούς. Έτσι, ο χρήστης δε χρειάζεται υπολογιστή για να παρακολουθήσει την κατανάλωσή του. Η οθόνη συνδέεται είτε με τον υπολογιστή μέσω USB, όπου αποθηκεύονται τα δεδομένα σε ανοιχτή μορφή, είτε με τη συσκευή Bridge/NetSmart (Εικόνα 3.26) που ανεβάζει τα δεδομένα στο Cloud για απομακρυσμένη παρακολούθηση οποιαδήποτε στιγμή. Άλλο είδος πομπού και αισθητήρα είναι τα IAMs (Individual Appliance Monitors), τα οποία, όπως και οι Έξυπνες Μπρίζες, συνδέονται σε μία συσκευή. Είναι, όμως, υποδεέστερά τους, αφού το δίκτυο υποστηρίζει λίγα μόνο από αυτά (μέχρι 10), ενώ δεν επιτρέπει τον έλεγχό τους. 103

104 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Συνολικά, ένα δίκτυο Current Cost φαίνεται στην Εικόνα Αρχικά, το μέσο επικοινωνίας είναι ραδιοσυχνότητα (433MHz SRD band) που έχει προτυποποιηθεί με την ονομασία C 2 από την εταιρία. Όπως είναι φανερό και από τα παραπάνω, το δίκτυο έχει τη μορφή αστέρα γύρω από κάθε δέκτη, αν και στις περισσότερες εγκαταστάσεις θα υπάρχει ένας πομπός και ένας δέκτης (ad-hoc). Η επικοινωνία είναι μονόδρομη προς τους δέκτες, με εξαίρεση τα IAMs, τα οποία λαμβάνουν και εντολές. Χάριν πληρότητας, ένα ακόμα παράδειγμα Έξυπνης Δαγκάνας συμπεριλήφθηκε στην έρευνα αγοράς και συγκεκριμένα το πακέτο OWL 28. Στην Εικόνα 3.28 φαίνεται η εξαιρετικά όμοια δικτύωση του πακέτου, που αποτελείται από τον αισθητήρα συνδεδεμένο στον πομπό και μία οθόνη-δέκτη. Το μειονέκτημα, όμως, του πακέτου είναι η κλειστή μετάδοση δεδομένων και η χειροκίνητη εξαγωγή τους (σε CSV). Επομένως, ένα τέτοιο πακέτο δεν μπορεί να ενημερώνει το σύστημα Διάχυτης Νοημοσύνης online σε πραγματικό χρόνο, αλλά μόνο offline με ανθρώπινη παρέμβαση, η οποία κρίνεται ανεπιθύμητη. Εικόνα 3.27: Επικοινωνία των συσκευών Current Cost μέσω της τεχνολογίας C 2 Εικόνα Εγκατάσταση και λειτουργία του πακέτου OWL The OWL energy solutions

105 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Συσκευές Z-Wave Η οικογένεια συσκευών Z-Wave είναι μία μεγάλη συλλογή συσκευών που προέρχονται από ευρεία γκάμα κατασκευαστών και υλοποιούν το ομώνυμο πρωτόκολλο επικοινωνίας. Το Z- Wave είναι ένα σύστημα ασύρματων συσκευών επόμενης γενιάς, που επιτρέπει στις οικιακές ηλεκτρικές συσκευές να επικοινωνούν μεταξύ τους και με τον χρήστη, μέσω απομακρυσμένου ελέγχου. Χρησιμοποιεί απλές, αξιόπιστες, χαμηλής κατανάλωσης ραδιοσυχνότητες, που δεν εμποδίζονται εύκολα από τοίχους και πατώματα. Ο έλεγχος μέσω Z-Wave μπορεί να ενσωματωθεί ακόμα και σε συσκευές που δύσκολα μπορούμε να φανταστούμε ως έξυπνες, όπως παράθυρα, τέντες, θερμοστάτες και συσκευές οικιακού φωτισμού. Με αυτόν τον τρόπο, ο καταναλωτής φτιάχνει ευέλικτα το δικό του πακέτο οικιακών αυτοματισμών. Η Εικόνα 3.29 παρουσιάζει ένα τέτοιο ολοκληρωμένο σύστημα οικιακού αυτοματισμού. Εικόνα 3.29: Το Z-Wave προσαρμοσμένο στο οικιακό περιβάλλον Το Z-Wave ενοποιεί όλες τις οικιακές ηλεκτρονικές συσκευές σε ένα ενσωματωμένο ασύρματο δίκτυο, το οποίο είναι απλό στον προγραμματισμό του και δεν περιλαμβάνει καλώδια. Οποιαδήποτε συσκευή στην οποία έχει ενσωματωθεί Z-Wave μπορεί να προστεθεί στο δίκτυο, ενώ πολλές συσκευές που δεν περιέχουν κυκλώματα Z-Wave μπορούν να γίνουν συμβατές με ένα ειδικό εξάρτημα. Αυτόματα η συσκευή εντάσσεται στο δίκτυο και επικοινωνεί ασύρματα με άλλες μονάδες και ελεγκτές. Συν τοις άλλοις, οι συσκευές Z-Wave δίνουν τη δυνατότητα στον χρήστη να έχει πλήρη έλεγχο και εκτός σπιτιού. Αυτό επιτυγχάνεται μέσω απομακρυσμένης σύνδεσης από άλλο υπολογιστή μέσω Διαδικτύου, είτε μέσω έξυπνου κινητού τηλεφώνου. Οι λύσεις που ενσωματώνουν Z-Wave προσφέρουν απλότητα και ευελιξία, είναι προσιτές στον μέσο καταναλωτή, προσδίδουν ευφυΐα στο περιβάλλον και παρέχουν ευκολία στον χρήστη να το διαμορφώσει όπως θέλει. Οποιαδήποτε συσκευή μπορεί να προστεθεί εύκολα στο δίκτυο, ενώ το επίπεδο αυτοματισμού καθορίζεται από τις ανάγκες και τις επιθυμίες του χρήστη. Η έλλειψη καλωδίων το καθιστά πιο εύκολο στην εγκατάσταση και μία πιο οικονομική λύση. 105

106 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Μία πολύ σημαντική δυνατότητα του δικτύου είναι η συνεργασία συσκευών σε ομάδες. Για παράδειγμα, η άφιξη του χρήστη στον χώρο ανιχνεύεται από έναν αισθητήρα κίνησης και ενεργοποιεί τις συσκευές που ανοίγουν τα φώτα ή τη συσκευή που ανοίγει την πόρτα του γκαράζ, επιτρέποντας στον χρήστη να δημιουργήσει έξυπνα σενάρια (scenes) με βάση τις προτιμήσεις του και τις καθημερινές του συνήθειες. Το δίκτυο Z-Wave αποτελείται από δύο είδη κόμβων, τους ελεγκτές (controllers) και τις εξαρτώμενες συσκευές (slaves) (Galeev, 2006). Οι ελεγκτές μπορεί να είναι στατικοί ή φορητοί, είναι υπεύθυνοι για την έναρξη της μετάδοσης και κατέχουν πληροφορίες για τη δρομολόγηση πακέτων στο δίκτυο. Επίσης, είναι υπεύθυνοι για μια σημαντική λειτουργία του συστήματος, τη συμπερίληψη (inclusion) μίας νέας συσκευής και τον αποκλεισμό (exclusion) μιας υπάρχουσας. Υπάρχει ακόμη η δυνατότητα υποστήριξης και άλλων οικιακών συστημάτων, όπως το ένα δίκτυο TCP/IP ή συσκευές X10, από έναν στατικό ελεγκτή που λειτουργεί ως γέφυρα. Οι εξαρτώμενες συσκευές είναι γενικού σκοπού, με απλές λειτουργίες εισόδου- εξόδου, που απλά εκτελούν εισερχόμενες εντολές. Εφόσον δεν υπάρχει η δυνατότητα απόκρισης, αν δεν τους σταλεί ανάλογο αίτημα, ο ελεγκτής πρέπει ανά καθορισμένα χρονικά διαστήματα να τις καλεί για να καταγράψει την κατάστασή τους (polling). Σε ορισμένες περιπτώσεις υπάρχει η ανάγκη για αναμετάδοση του σήματος, οπότε μερικές από αυτές μπορούν να επεκτείνουν τη λειτουργία τους και συμπεριφέρονται κα ως δρομολογητές (routing slaves). Πολλές φορές, αυτή η δυνατότητα εκπομπής αυτόκλητων μηνυμάτων (unsolicited messages) εξυπηρετεί έναν πρόσθετο σκοπό, όταν για παράδειγμα πρόκειται για συσκευές ανίχνευσης κίνησης και συναγερμούς, όπου οι ενδείξεις τους πρέπει να μεταδοθούν άμεσα στον ελεγκτή. Η λογική προγραμματισμού του χρόνου που μια συσκευή, τροφοδοτούμενη από μπαταρίες, κοιμάται και ξυπνάει, ώστε να λάβει κλήση καταγραφής ή κάποια αλλαγή στις ρυθμίσεις της, επαφίεται στο είδος της εφαρμογής που την ενσωματώνει. Αν για παράδειγμα, ένας αισθητήρας δωματίου καταγράφει την υγρασία, τότε η χρονική διαφορά στα διαστήματα που ξυπνάει δε χρειάζεται να είναι μικρή, αυξάνοντας τον χρόνο ζωής της μπαταρίας. Μία άλλη λειτουργία είναι αυτή της συσχέτισης (association) δύο ή περισσότερων απλών συσκευών. Η συσχέτιση καθορίζει σχέσεις εξάρτησης μεταξύ των συσκευών, όπου κάποιες ελέγχουν κάποιες άλλες. Με τη συσχέτιση ενός αισθητήρα κίνησης και διακοπτών που ελέγχουν τον φωτισμό, μπορούμε να ανοίγουμε τα φώτα ενός δωματίου απλά μπαίνοντας σε αυτό. Η Εικόνα 3.31 δείχνει τα είδη των συσκευών Z-Wave που χρησιμοποιούνται στην υ- λοποίηση του συστήματος Smart IHU. Συγκεκριμένα, χρησιμοποιήθηκαν πέντε είδη ασύρματων αισθητήρων: ένας ανιχνευτής καπνού, δύο τύποι αισθητήρων κίνησης, ένας αισθητήρας συγκέντρωσης CO 2 και ένας πολυαισθητήρας για ανίχνευση κίνησης, μέτρηση φωτεινότητας και θερμοκρασίας. Ο ελεγκτής που χρησιμοποιήθηκε είναι ο Z-Stick Series 2 της Aeon Labs. Ο ελεγκτής Z-Stick S2 είναι ένας αυτόνομος USB αντάπτορας τροφοδοτούμενος από μπαταρία. Έχει τη δυνατότητα απομακρυσμένων λειτουργιών συμπερίληψης (Inclusion- Mode) και αποκλεισμού (Removal-Mode) συσκευών και μπορεί να επικοινωνεί απευθείας με έναν host, δηλαδή έναν υπολογιστή ή μία gateway, μέσω σειριακής σύνδεσης (SerialAPI- 106

107 Κεφάλαιο 3 Διάχυτη Νοημοσύνη Εικόνα Συσκευές Z-Wave (από αριστερά προς τα δεξιά και από επάνω προς τα κάτω): Α- νιχνευτής Καπνού (SF812), Ανιχνευτής Κίνησης (HSP02), Αισθητήρας CO2 (SensoAir), USB Ελεγκτής (Ζ-Stick Series 2), Ανιχνευτής Κίνησης (ZIR010), Πολύ-αισθητήρας (EZMotion) Mode). Κατά την τελευταία λειτουργία, το Z-Stick ακούει μονίμως για εντολές που προέρχονται από τον host και για μηνύματα από τις συσκευές του δικτύου, οι οποίες έχουν συσχετιστεί με το stick. Η πρώτη συσκευή Z-Wave είναι ένας φωτοηλεκτρικός αισθητήρας καπνού, με κωδική ονομασία SF812. Όταν ανιχνεύσει μία συγκριμένη πυκνότητα καπνού, ενεργοποιείται ο ηχητικός συναγερμός του και ταυτόχρονα εκπέμπει σήματα σε όλες τις συσχετισμένες σε αυτόν συσκευές για περαιτέρω ενέργειες. Εκτός από τη σειρήνα, σε κατάσταση συναγερμού αναβοσβήνει και το LED του, ενώ μπορεί να δοκιμαστεί για την κατάσταση της μπαταρίας ή του συναγερμού μέσω ενός εξωτερικού κουμπιού. Δεν μπορεί να ανιχνεύσει αέρια, θερμότητα ή φλόγες. Είναι κατασκευασμένος αποκλειστικά για οικιακή χρήση και τροφοδοτείται από μία μπαταρία των 9V. Η δεύτερη συσκευή είναι ο παθητικός (Passive InfraRed) αισθητήρας κίνησης PIR010 της HomePro. Μπορεί να ανιχνεύσει κίνηση σε απόσταση μέτρων, ενώ η ευαισθησία του αισθητήρα μπορεί να ρυθμιστεί από ένα jumper στο εσωτερικό του. Όταν ανιχνεύσει κίνηση ή ανοιχτεί το κάλυμμα της συσκευασίας, αναβοσβήνει το φως LED, στέλνει σήμα σε όλες τις συσχετισμένες συσκευές και μετά από ένα χρονικό διάστημα, όταν δεν ανιχνευτεί ξανά κίνηση κάνει την ίδια ενέργεια. Τροφοδοτείται από 4 μπαταρίες AAA. Η τελευταία συσκευή Z-Wave της εργασίας είναι ο πολυαισθητήρας EZMotion της Express Controls. Ο αισθητήρας κίνησης που είναι ενσωματωμένος παρουσιάζει παρόμοια λειτουργία με αυτόν της προηγούμενης συσκευής, ενώ όταν δε βρίσκεται σε κατάσταση ύ- πνου, στέλνει ενδείξεις θερμοκρασίας και φωτεινότητας. Τροφοδοτείται από 3 μπαταρίες AAA. 107

108 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 3.31: Η Vera 2 και η γραφική διεπαφή της Ένα ακόμα παράδειγμα ελεγκτή είναι αυτό της Vera 2 gateway της εταιρίας Mi Casa Verde, κατασκευασμένης συγκριμένα για Z-Wave δίκτυα 29. Μπορεί να επικοινωνήσει με ο- ποιαδήποτε συσκευή Z-Wave, προσφέρει απομακρυσμένη πρόσβαση μέσω διαδικτύου, λειτουργεί ως δρομολογητής-ελεγκτής Z-Wave και διαθέτει γραφικό περιβάλλον, όπως φαίνεται στην Εικόνα Προσφέρει πλήρεις δυνατότητες διαχείρισης των συσκευών και του δικτύου, παρέχει σύνδεση Ethernet και Wi-Fi και μπορεί να συνδεθεί με Z-Wave ελεγκτές μέσω USB θύρας. Ωστόσο, με αυτόν τον τρόπο δεν επιτρέπεται η πρόσβαση στους αισθητήρες προγραμματιστικά. Αντίθετα, η συγκεκριμένη λύση είναι κατάλληλη μόνο για τελικούς χρήστες/καταναλωτές. 3.6 Συμπεράσματα Συμβολές της Διατριβής Στο κεφάλαιο αυτό παρουσιάστηκαν οι έννοιες, οι εφαρμογές και οι τεχνολογίες πίσω από το ερευνητικό πεδίο της Διάχυτης Νοημοσύνης. Αρχικά, το όραμα του Απανταχού Υπολογίζειν εκφράζει μία από τις κυρίαρχες τάσεις για το μέλλον των υπολογιστών. Σύμφωνα με αυτό, ο προσωπικός υπολογιστής σταδιακά εγκαταλείπεται και αντικαθίσταται από πολλές μικρότερες υπολογιστικές συσκευές στο περιβάλλον του χρήστη. Η Διάχυτη Νοημοσύνη είναι ένα αμιγώς ερευνητικό όραμα, που εξελίσσει τις ιδέες του Απανταχού Υπολογίζειν, με την προσθήκη ευφυΐας και διαισθητικής, αόρατης αλληλεπίδρασης με τον χρήστη. Ειδικότερα, οι διεπαφές χρήστη στη Διάχυτη Νοημοσύνη επωφελούνται από πολλές άλλες υλικές τεχνολογίες και τεχνολογίες λογισμικού, που γνωρίζουν παράλληλη ανάπτυξη. Έξυπνες διεπαφές από σενάρια επιστημονικής φαντασίας μπορούν πλέον να γίνουν πραγματικότητα. Παραδείγματα τέτοιων διεπαφών είναι η αναγνώριση και παραγωγή ομιλίας ή η αναγνώριση κίνησης και χειρονομιών, με χρήση κατάλληλων αλγορίθμων από τα πεδία της αναγνώρισης φυσικής γλώσσας και της τεχνητής όρασης. Επιπλέον, ώθηση δίνουν και οι ε- ξαιρετικά ανεπτυγμένες και πλέον οικονομικά προσιτές συσκευές εικονικής και επαυξημένης

109 Κεφάλαιο 3 Διάχυτη Νοημοσύνη πραγματικότητας, οι τρισδιάστατες κάμερες, τα χειριστήρια με επιταχυνσιόμετρα και γυροσκόπια. Όλα δείχνουν πως με κατάλληλη ενσωμάτωση των αλγορίθμων και των συσκευών, πολλές φορές με χρήση των τεχνολογιών Υπηρεσιών Ιστού, μπορούν να ενορχηστρωθούν αρκετά περίπλοκα και φουτουριστικά διάχυτα συστήματα. Στη συνέχεια, παρουσιάστηκαν τρία από τα επικρατέστερα πεδία εφαρμογής της Διάχυτης Νοημοσύνης. Το πεδίο των Έξυπνων Κτιρίων εμφανίζει πολλές διεπιστημονικές προσεγγίσεις και οφέλη, αφού συνδυάζει τους αυτοματισμούς με την εξοικονόμηση και την έξυπνη διαχείριση ενέργειας από το πεδίο των Smart Grids. Από την άλλη, οι εφαρμογές Διάχυτης Υποβοηθούμενης Διαβίωσης και υγείας έχουν αποκτήσει δική τους ανεξάρτητη υπόσταση λόγω της ζωτικής τους σημασίας. Το πεδίο αυτό επεκτείνει τις τεχνικές τηλεϊατρικής με απομακρυσμένη παρακολούθηση, προσαρμογή και ανάδραση για τη διευκόλυνση της διαβίωσης ηλικιωμένων και ευπαθών ομάδων. Το τρίτο πεδίο, που παρουσιάστηκε, περιλαμβάνει εφαρμογές ρομποτικής και συγκεκριμένα διάχυτη διαβίωση, προσαρμογή και έκφραση συναισθημάτων και ενημέρωση μέσω ρομποτικών πρακτόρων σε περιβάλλοντα μικρής και μεγάλης κλίμακας. Σημαντικό ρόλο στη Διάχυτη Νοημοσύνη παίζει η ανάπτυξη πρωτοκόλλων επικοινωνίας και δικτύωσης συσκευών. Τα δίκτυα συσκευών καθιστούν δυνατή την πραγματοποίηση των περισσότερων διάχυτων συστημάτων, αφού ενοποιούν και συντονίζουν την αποδοτική επικοινωνία και τη μεταφορά δεδομένων πληθώρας αισθητήρων και οργάνων δράσης. Τα δημοφιλέστερα πρωτόκολλα είναι τα PLC, X10, INSTEON, ZigBee, Z-Wave και απλής ραδιοσυχνότητας. Κάποια από αυτά καταφέρνουν να ενοποιήσουν συσκευές διαφόρων κατασκευαστών, αυτό όμως αποτελεί εξαίρεση, δημιουργώντας την ανάγκη για ένα ενδιάμεσο λογισμικό πάνω από τις συσκευές. Τα πρωτόκολλα συγκρίθηκαν μεταξύ τους σε συγκριτική μελέτη. Ενώ η τέταρτη ενότητα εξέτασε τα πρωτόκολλα επικοινωνίας, η πέμπτη ενότητα παρουσιάζει μεμονωμένες συσκευές και οικογένειες συσκευών ως προς τη λειτουργικότητά τους. Οι αισθητήρες και τα όργανα δράσης που παρουσιάζονται παίζουν κύριο ρόλο στα διάχυτα συστήματα, αφού καθορίζουν τα διαθέσιμα δεδομένα και τις διαθέσιμες ενέργειες. Συγκεκριμένα, παρουσιάστηκαν οι Έξυπνες Μπρίζες για παρακολούθηση και χειρισμό μεμονωμένων ηλεκτρικών συσκευών, οι Πλακέτες Αισθητήρων περιβαλλοντικών συνθηκών, οι Έξυπνες Δαγκάνες παρακολούθησης κατανάλωσης μεγάλης κλίμακας και οι Συσκευές Z-Wave για εκτεταμένη παρακολούθηση του περιβάλλοντος. Οι συμβολές της διατριβής στα παραπάνω πεδία είναι οι εξής: Κεφάλαιο 4 Ενότητα 4.2 Στην ενότητα αυτή παρουσιάζεται ένα ενδιάμεσο λογισμικό που διευκολύνει την α- νάπτυξη διάχυτων συστημάτων. Το λογισμικό ενοποιεί όλες τις οικογένειες συσκευών και τις μεμονωμένες συσκευές που παρουσιάστηκαν στην ενότητα 3.5, με τη χρήση της τεχνολογίας Υπηρεσιών Ιστού. Ενοποιεί, επομένως, πολλά από τα πρωτόκολλα επικοινωνίας και διάφορα 109

110 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη δίκτυα συσκευών που παρουσιάστηκαν στην ενότητα 3.4. Με αυτόν τον τρόπο παρέχει ομοιόμορφη και απομακρυσμένη πρόσβαση στις ετερογενείς αυτές συσκευές. Επιπλέον, ενσωματώνει υπηρεσίες λογισμικού. Κεφάλαιο 6 Ενότητα 6.1 Η ενότητα αυτή παρουσιάζει εφαρμογές Διάχυτης Νοημοσύνης στο πεδίο των Έξυπνων Κτιρίων, όπως αυτό παρουσιάστηκε στην ενότητα 3.3. Οι εφαρμογές αυτές βασίζονται στο Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού που προσφέρεται, για να παρουσιάσουν μείωση κατανάλωσης ενέργειας μέσω της εκτεταμένης δυνατότητας παρατήρησης κατανάλωσης και περιβαλλοντικών συνθηκών. Οι εφαρμογές χωρίζονται σε διαχειριστικές, εφαρμογές έξυπνου τηλεφώνου και διαδικτυακές εφαρμογές για εξωτερικούς επισκέπτες. Η εφαρμογή τηλεφώνου δίνει τη δυνατότητα αλληλεπίδρασης με το περιβάλλον μέσω σάρωσης τυπωμένων ενδείξεων σύμφωνα με όσα έχουν περιγραφεί στο Κεφάλαιο 3. Ενότητα 6.2 Η ενότητα 6.2 επεκτείνει τις ιδέες της ενότητας 6.1 προσθέτοντας ευφυΐα στις διάχυτες εφαρμογές. Ευφυείς πράκτορες αναλαμβάνουν την αυτόματη και ημι-αυτόματη διαχείριση του κτιρίου με βάση τη σημασιολογία και τεχνικές συλλογιστικής διαφόρων ειδών. Ειδικότερα, αναπτύσσονται και συγκρίνονται πράκτορες παραγωγικής λογικής, αναιρέσιμης λογικής και υβριδικοί, ενώ εφαρμόζεται κατανομή της γνώσης σε παραπάνω του ενός πράκτορες. Η εξοικονόμηση ενέργειας επιτυγχάνεται με τρόπο διαφανή και μη παρεμβατικό, σύμφωνα με όσα έχουν αναλυθεί στο Κεφάλαιο

111 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού

112

113 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Το κεφάλαιο αυτό παρουσιάζει το ενδιάμεσο λογισμικό Υπηρεσιών Ιστού awesome (a WEb Service MiddlewarE), το οποίο σχεδιάστηκε και υλοποιήθηκε στα πλαίσια της παρούσας διατριβής. Το κύριο κίνητρο για τη σχεδίαση και την υλοποίηση αυτού του λογισμικού ήταν η ανάγκη για ομοιόμορφη και ομογενή πρόσβαση στις λειτουργίες του συστήματος, είτε αυτές αφορούν hardware (αισθητήρες, όργανα δράσης) είτε software. Κατά τη σχεδίασή του, λήφθηκαν υπόψιν τόσο λειτουργικές όσο και μη λειτουργικές απαιτήσεις. Για παράδειγμα, η κύρια λειτουργική απαίτηση είναι ότι ένα τέτοιο λογισμικό θα πρέπει να παρέχει αφαιρετικά ομοιόμορφη πρόσβαση και προγραμματιστική διεπαφή (Application Programming Interface API) για όλες τις εφαρμογές που συνυπάρχουν στο δεδομένο περιβάλλον Διάχυτης Νοημοσύνης. Άλλη λειτουργική απαίτηση είναι η δυναμική ανακάλυψη των διαθέσιμων υπηρεσιών στο περιβάλλον κάθε στιγμή. Οι μη λειτουργικές απαιτήσεις αφορούν τον χαμηλό χρόνο α- πόκρισης και τη χαμηλή κατανάλωση ενέργειας του ίδιου του συστήματος. Με γνώμονα τις παραπάνω απαιτήσεις, διερευνήθηκαν και χρησιμοποιήθηκαν ευρέως διαδεδομένα και ανοιχτά πρότυπα του Παγκόσμιου Ιστού, αφενός για την περιγραφή και αφετέρου για την ανακάλυψη των υπηρεσιών. Η χρήση αυτών των προτύπων εξασφαλίζει τη διαλειτουργικότητα, ακόμα και εκτός των συνόρων της εκάστοτε εφαρμογής, στον ευρύτερο Παγκόσμιο Ιστό, τουλάχιστον σε συντακτικό επίπεδο. Εσωτερικά, το λογισμικό ενσωματώνει σε ενιαίο πλαίσιο διάφορες συσκευές χαμηλού κόστους, που είναι διαθέσιμες στο εμπόριο λιανικής. Έτσι, μια μεγάλη γκάμα εφαρμογών πελάτη μπορεί να χρησιμοποιήσει το ενδιάμεσο λογισμικό για να πετύχει ποικίλους στόχους, όπως η παρακολούθηση και η διαχείριση του συστήματος, αλλά και η εξοικονόμηση ενέργειας. Τέτοια παραδείγματα εφαρμογών μαζί με τα αποτελέσματά τους αποτελούν ξεχωριστό πεδίο έρευνας και παρουσιάζονται στο έκτο κεφάλαιο της διατριβής. Από την άλλη, το προτεινόμενο σύστημα θα πρέπει να χρησιμοποιεί τους ελάχιστους δυνατούς πόρους και κατ επέκτασιν τα λιγότερο απαιτητικά μηχανήματα, που θα παίζουν τον ρόλο των Web Servers. Άλλωστε, στο συγκεκριμένο πεδίο εφαρμογής που εξετάζει η διατριβή ενδιαφέρει ιδιαίτερα η κατανάλωση ενέργειας, καθώς το λογισμικό του συστήματος οφείλει να τη διατηρεί χαμηλή. Εκτός αυτού, ενδιαφέρει η αξιοπιστία και η ταχύτητα απόκρισης (response time) των υπηρεσιών. Για αυτόν τον σκοπό, παρουσιάζονται αποτελέσματα πειραμάτων που πραγματοποιήθηκαν με έναν σύγχρονο προσωπικό υπολογιστή (PC), ένα netbook και έναν μικρο-υπολογιστή (Board computer). Τα πειράματα στοχεύουν στην εύρεση της χρυσής τομής μεταξύ της κατανάλωσης ενέργειας και του χρόνου απόκρισης. Για την επαλήθευση της ορθότητας, της ευχρηστίας και της λειτουργικότητάς του, το awesome κλήθηκε να παίξει το ρόλο του ενδιάμεσου λογισμικού, στο πλήρες σύστημα Διάχυτης Νοημοσύνης, Smart IHU. Η πραγματική εγκατάσταση του συστήματος, έγινε στο κτίριο

114 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Α του Διεθνούς Πανεπιστημίου Ελλάδος 30, όπου το awesome αναλαμβάνει πλήρως το χειρισμό των συσκευών. Μέσα από αυτή την εγκατάσταση, επαληθεύεται σε πραγματικές συνθήκες και η δυνατότητα κλιμάκωσης του λογισμικού, αφού το κτίριο καλύπτεται από πολλά δίκτυα συσκευών. Τρεις συνολικά servers του awesome, καλύπτουν όλο το κτίριο, δηλαδή το ισόγειο και τον πρώτο όροφο, με τον τρόπο που περιγράφεται στην ενότητα Η εγκατάσταση αυτή χρησιμοποιείται και σε άλλες συμβολές τις διατριβής ως κομμάτι του ολοκληρωμένου συστήματος Smart IHU. Το κεφάλαιο αυτό περιλαμβάνει τις παρακάτω ενότητες: στην πρώτη ενότητα παρουσιάζεται μία εισαγωγή στην έρευνα για ενδιάμεσο λογισμικό διάχυτης νοημοσύνης, στην οποία παρουσιάζεται και συγκρίνεται το υπάρχον λογισμικό της βιβλιογραφίας με το προτεινόμενο σύστημα. Στη δεύτερη ενότητα παρουσιάζεται αναλυτικά το προτεινόμενο λογισμικό awesome μαζί με τα υποσυστήματα ολοκλήρωσης, υπηρεσιών ιστού και μεσολαβητή ανακάλυψης υπηρεσιών. Στην τρίτη ενότητα παρουσιάζεται η εγκατάσταση του συστήματος στον χώρο ενός κτιρίου πανεπιστημίου, ενώ στην τέταρτη ενότητα γίνεται μία πειραματική αξιολόγηση των επιδόσεων του συστήματος. Στην τελευταία ενότητα παρουσιάζονται τα συμπεράσματα από τη συγκεκριμένη μελέτη. 4.1 Εισαγωγή Οι Υπηρεσίες Ιστού είναι μια σύγχρονη τεχνολογία, στενά συνδεδεμένη με τα οράματα του Απανταχού Υπολογίζειν και της Διάχυτης Νοημοσύνης. Αρχικά, το τεχνολογικό πρότυπο του Απανταχού Υπολογίζειν βασίζεται στην κατανομή μικρών και σχετικά ισχυρών, σε σχέση με το παρελθόν, υπολογιστικών συσκευών σε μεγάλη κλίμακα. Ο όρος καθιερώθηκε από τον Mark Weiser (Weiser, 1991), αναγνωρίζοντάς το ως «το τρίτο κύμα της υπολογιστικής» για να περιγράψει μία από τις κυρίαρχες τάσεις στην επιστήμη των υπολογιστών για το μέλλον. Σύμφωνα με το Απανταχού Υπολογίζειν, ένα σύνολο κατανεμημένων υπολογιστών είναι σε θέση να αντιληφθούν τις εκάστοτε ανάγκες του χρήστη και να αλληλοεπιδράσουν μαζί του με διαισθητικό τρόπο. Σε αυτήν την αλληλεπίδραση συμμετέχουν και καθημερινά αντικείμενα του φυσικού κόσμου, συνδέοντας το συγκεκριμένο αντικείμενο έρευνας με το Internet of Things IoT (Διαδίκτυο των Αντικειμένων). Ήδη στις μέρες μας ο Προσωπικός Υπολογιστής (Desktop/Personal Computer) σταδιακά αντικαθίσταται με φορητές συσκευές ή ακόμα και συσκευές που ο χρήστης μπορεί να φοράει πάνω του (π.χ. smartwatch, γυαλιά Google Glass). Το όραμα της Διάχυτης Νοημοσύνης επεκτείνει τις ιδέες του Απανταχού Υπολογίζειν με χρήση τεχνικών από το πεδίο της Τεχνητής Νοημοσύνης. Τα ήδη κατανεμημένα αντικείμενα και τερματικά ενσωματώνουν αλγορίθμους, μάθηση και σημασιολογία με σκοπό την πρόβλεψη, αντίληψη, κατανόηση και εξυπηρέτηση των αναγκών του χρήστη. Με αυτόν τον τρόπο ο υπολογιστής γίνεται ακόμα πιο «αόρατος» για τον χρήστη και ενσωματώνεται ομοιόμορφα στο περιβάλλον

115 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Παράλληλα, από τη σκοπιά της Τεχνολογίας Λογισμικού έχουν προκύψει εξελιγμένες τεχνικές προγραμματισμού, όπως η Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες (Service- Oriented Computing - SOA). Η αρχιτεκτονική αυτή βασίζεται στην ιδέα της χρήσης Υπηρεσιών ως δομικά στοιχεία του προγραμματισμού, αντί για παράδειγμα των δεδομένων, των μεταβλητών ή των συναρτήσεων που χρησιμοποιούνται παραδοσιακά. Η Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες ορίζει μία σαφή αλληλεπίδραση Εξυπηρετητών που προσφέρουν Υπηρεσίες (Servers, Service Providers), Καταναλωτών ή Πελατών των Υπηρεσιών (Service Consumers, Clients) και Αποθετηρίων ή Μεσολαβητών (Service Registries, Brokers). Ταυτόχρονα, οι τεχνολογίες του Παγκοσμίου Ιστού έχουν ήδη ωριμάσει αρκετά, ώστε ορισμένα τεχνολογικά πρότυπα Υπηρεσιών Ιστού να έχουν καθιερωθεί πλέον τόσο στη βιομηχανία, όσο και στην έρευνα, όπως το πρότυπο WSDL. Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες Ενώ τα οράματα του Απανταχού Υπολογίζειν και της Διάχυτης Νοημοσύνης αναφέρονται στο ανώτερο επίπεδο εφαρμογών, η Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες αναφέρεται στο κατώτερο επίπεδο, πιο κοντά στην υλοποίηση μιας εφαρμογής. Χάρις στα πλεονεκτήματα που προσφέρουν η Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες και ειδικότερα τα πρότυπα Υπηρεσιών Ιστού, οι τεχνολογίες αυτές βρίσκουν άμεση εφαρμογή στη Διάχυτη Νοημοσύνη. Για παράδειγμα, οι Υπηρεσίες διευκολύνουν και προάγουν την επαναχρησιμοποίηση μεθόδων από διάφορους πελάτες σε ένα τέτοιο διάχυτο περιβάλλον. Επιπλέον, διευκολύνουν την απομακρυσμένη συνεργασία και χρησιμοποίηση πόρων κατανεμημένων συσκευών. Τέλος, προσφέρουν ένα ομοιογενές, ευρέως γνωστό και αποδεκτό API, ώστε οι διάφορες εφαρμογές του περιβάλλοντος AmI να αναπτύσσονται σε αφηρημένο, γενικό επίπεδο, χωρίς γνώση των επιμέρους απαιτήσεων των συσκευών στο χαμηλό επίπεδο. Αντιθέτως, τα αντικείμενα του AmI περιβάλλοντος δημοσιεύουν τα δεδομένα και τις μεθόδους τους μέσω των Υπηρεσιών, στα πρότυπα του Internet of Things. Σαν αποτέλεσμα, η AmI και οι Υπηρεσίες Ιστού είναι στην πράξη αλληλένδετα πεδία. Διαλειτουργικότητα Εστιάζοντας στο κομμάτι της διαλειτουργικότητας, το πιο συχνό εμπόδιο που συναντούν οι εφαρμογές Διάχυτης Νοημοσύνης είναι η διαχείριση ετερογενών συσκευών, οι οποίες προσφέρουν τις θεμελιώδεις ενέργειες στο περιβάλλον. Χάρη στην πρόοδο που έχει σημειώσει η βιομηχανία, μία μεγάλη γκάμα τέτοιων συσκευών, κατάλληλων για την υλοποίηση του ο- ράματος της Διάχυτης Νοημοσύνης, είναι ήδη διαθέσιμη στην αγορά σε προσιτή τιμή. Επιπλέον, στοχευμένα πρωτόκολλα επικοινωνίας έχουν σχεδιαστεί για τη λειτουργία δικτύων 115

116 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη συσκευών, βελτιστοποιώντας τη σχέση απόδοσης και κατανάλωσης ενέργειας. Τέτοια παραδείγματα πρωτοκόλλων είναι τα ασύρματα ZigBee 31 και Z-Wave 32 και τα ενσύρματα πρωτόκολλα επικοινωνίας μέσω κυκλωμάτων ρεύματος (Power-Line-Communications PLC) INSTEON 33 και X10 34, όπως αυτά παρουσιάστηκαν στο προηγούμενο κεφάλαιο. Τα πρωτόκολλα αυτά δε μένουν μόνο στην επικοινωνία ως ανταλλαγή πακέτων, αλλά και στον χειρισμό των συσκευών ανεξαρτήτως κατασκευαστή. Έτσι, λοιπόν, τα ZigBee και Z- Wave έχουν κάνει μεγάλα βήματα σε αυτήν την κατεύθυνση. Συγκεκριμένα, ορίζουν κλάσεις συσκευών και εντολών ανεξάρτητες του κατασκευαστή, υποστηρίζοντας πολύ μεγάλο εύρος αισθητήρων και οργάνων δράσης. Στον χώρο των πολυμέσων ένα αντίστοιχο πρότυπο είναι το UPnP 35, το οποίο γνωρίζει ακόμη μεγαλύτερη διάδοση στο ευρύτερο κοινό λιανικής συστημάτων ψυχαγωγίας, αλλά και στην έρευνα της Διάχυτης Νοημοσύνης. Το πρότυπο αυτό ορίζει, επίσης, κλάσεις και ρόλους συσκευών προσφέροντας διαλειτουργικότητα ανάμεσα στους μεγαλύτερους κατασκευαστές τηλεοράσεων, ηχοσυστημάτων, smartphones κ.α. Παρά τη μεγάλη αυτή πρόοδο, απαιτείται ενδιάμεσο λογισμικό και για τη συνύπαρξη διαφορετικών ομάδων συσκευών. Παρόλο που τα δίκτυα Z-Wave, ZigBee και UPnP είναι ενοποιημένα εσωτερικά, παραμένουν ξένα μεταξύ τους, όπως και κάθε μεμονωμένο πακέτο συσκευών πέρα των προαναφερθέντων. Ένας πρόσθετος περιορισμός είναι οι πλατφόρμες και οι απαιτήσεις του κάθε API που προσφέρει ο κάθε κατασκευαστής (π.χ. διαφορετικές γλώσσες προγραμματισμού). Κάποιες φορές, μάλιστα, δεν προσφέρεται καθόλου ανοιχτό API από τον κατασκευαστή. Σύμφωνα με τα παραπάνω, προκύπτει η απαίτηση για ένα ακόμα υψηλότερου επιπέδου API, το οποίο θα μπορούν να χρησιμοποιούν οι εφαρμογές για να διαχειριστούν κάθε συσκευή χωρίς περιορισμούς. Αυτό το ιδανικό API καλείται να ενοποιήσει εξίσου υπάρχοντα πακέτα συσκευών, αλλά και μεμονωμένες συσκευές που υπάρχουν στην αγορά (που δεν είναι συμβατές, δηλαδή, με κάποια οικογένεια ή πρότυπο). Το ανώτερο αυτό API μπορεί να πάρει τη μορφή του ενδιάμεσου λογισμικού. Με αυτήν την έννοια, το ενδιάμεσο λογισμικό είναι στην ουσία ένα σύνολο από προγράμματα οδηγών (drivers), ένα για κάθε συσκευή ή οικογένεια συσκευών με διαφορετικό API. Προσφέρει, έτσι, έναν ενιαίο τρόπο επικοινωνίας με τις συσκευές σε πιο αφηρημένο επίπεδο από τα επιμέρους APIs. Ταυτόχρονα, η τεχνολογία των Υπηρεσιών Ιστού μπορεί να συνεισφέρει στη δημιουργία ενός τέτοιου ενδιάμεσου λογισμικού. Συγκεκριμένα, μπορεί να παρέχει τη δυνατότητα περιγραφής ενός ομογενούς, ευέλικτου, συντακτικώς διαλειτουργικού και απομακρυσμένα προσβάσιμου μέσω του Ιστού API του ίδιου του middleware. Από μόνη της, η σύμπραξη του 31 The ZigBee Alliance: 32 Z-Wave: 33 INSTEON: 34 X10: 35 UPnP Forum: 116

117 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Παγκοσμίου Ιστού, το World Wide Web Consortium W3C 36, έχει εγκρίνει και συνιστά σαφώς ορισμένα πρότυπα για την περιγραφή APIs Υπηρεσιών Ιστού. Το επικρατέστερο πρότυπο από αυτά είναι η γλώσσα WSDL (Web Service Description Language) 37, αφού έχει ήδη υιοθετηθεί σε βιομηχανικές και ερευνητικές εφαρμογές. Η WSDL είναι μια XML γλώσσα, με την οποία μπορεί να ορίσει κανείς (συνήθως ο πάροχος της Υπηρεσίας) τα διαφορετικά λειτουργικά στοιχεία μίας Υπηρεσίας σε επίπεδο δεδομένων, αλλά και τη μεταξύ τους ιεραρχία. Στην ουσία, ορίζει τον τύπο δεδομένων εισόδου και εξόδου κάθε μεθόδου μιας Υπηρεσίας, περιγράφοντάς την συντακτικά. Εκτός αυτού, ορίζει και τη σύνδεση στην Υπηρεσία (binding), ώστε οι πελάτες να την εντοπίσουν σε συγκεκριμένο τερματικό σημείο (endpoint) και να αλληλοεπιδράσουν μαζί της με το κατάλληλο πρωτόκολλο (συνήθως SOAP ή HTTP). Τελικά, η WSDL προσδίδει ικανοποιητική συντακτική διαλειτουργικότητα, που σημαίνει ότι οι Υπηρεσίες μπορούν να αναζητηθούν, να επιλεγούν και να συντεθούν με άλλες, με βάση το θεμελιώδες κριτήριο του τύπου δεδομένων. Εκτός από τη συντακτική διαλειτουργικότητα, οι Υπηρεσίες Ιστού παρέχουν στο ενδιάμεσο λογισμικό έναν τρόπο για ανακάλυψη υπηρεσιών από τους πελάτες. Σύμφωνα με την Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες, ένας Μεσολαβητής Υπηρεσιών είναι υ- πεύθυνος για την καταχώρηση και τη προβολή των Υπηρεσιών σε εν δυνάμει πελάτες. Οι πάροχοι Υπηρεσιών πρώτα από όλα πρέπει να καταχωρήσουν τις παρεχόμενες Υπηρεσίες τους στον Μεσολαβητή. Οι πελάτες φυλλομετρούν και αναζητούν κάθε στιγμή Υπηρεσίες στον Μεσολαβητή, από τη λίστα των διαθέσιμων Υπηρεσιών. Αφότου επιλέξουν μία Υπηρεσία, ο ρόλος του Μεσολαβητή τελειώνει και οι πελάτες μπορούν να έρθουν σε απευθείας επικοινωνία με τον πάροχο για να καλέσουν την Υπηρεσία. Η ανάγκη για έναν τέτοιο Μεσολαβητή είναι εμφανής, αφού οι προσφερόμενες Υπηρεσίες στον Παγκόσμιο Ιστό είναι κατανεμημένες και προσφέρονται από πολλούς διαφορετικούς παρόχους. Εξάλλου, θα ήταν δύσκολο και ασύμφορο για κάθε πελάτη να διατηρεί μια ενημερωμένη λίστα με όλες τις πληροφορίες Υπηρεσιών και παρόχων. Η παραπάνω αρχιτεκτονική μεσολαβητών είναι ιδιαίτερα σημαντική σε περιβάλλοντα Διάχυτης Νοημοσύνης, καθώς πολλοί κατανεμημένοι πάροχοι, τοπικά ή μέσω Ιστού, αλλάζουν συνεχώς δυναμικά. Για παράδειγμα, κάποιοι πάροχοι μπορεί να φιλοξενούνται σε φορητές συσκευές που εισέρχονται και εξέρχονται δυναμικά από το περιβάλλον. Επιπλέον, έτσι καλύπτονται και περιπτώσεις σφάλματος που αποσυνδέουν τον πάροχο από το περιβάλλον. Το λογισμικό awesome Στο παρόν κεφάλαιο περιγράφεται μία τέτοια ολοκληρωμένη προσέγγιση για διαλειτουργικότητα σε περιβάλλοντα Διάχυτης Νοημοσύνης και συγκεκριμένα το ενδιάμεσο λογισμικό awesome. Το awesome έχει βασιστεί στην Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες για να ενισχύσει τη διαλειτουργικότητα εφαρμογών Διάχυτης Νοημοσύνης γενικότερα, αλλά 36 The World Wide Web Consortium: 37 The Web Service Description Language 1.1: 117

118 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη και εφαρμογών Έξυπνων Σπιτιών και εξοικονόμησης ενέργειας ειδικότερα, στα πλαίσια του ευρύτερου συστήματος Smart IHU. Στόχος του Smart IHU είναι η παροχή αυτοματισμών με τεχνικές Διάχυτης Νοημοσύνης με σκοπό την άνεση του χρήστη και παράλληλα τη βελτιστοποίηση της κατανάλωσης ενέργειας. Για αυτόν τον λόγο, το Smart IHU απαιτεί την εγκατάσταση συσκευών σε μεγάλη κλίμακα, όπως αισθητήρων περιβαλλοντικών συνθηκών και ε- νέργειας και οργάνων δράσης. Όπως είναι φυσικό, αυτές οι συσκευές είναι χαμηλού κόστους (και όχι για εξειδικευμένες βιομηχανικές εφαρμογές) και προέρχονται από διαφορετικούς κατασκευαστές λιανικής, ώστε να καλύψουν όλες τις απαιτήσεις. Επομένως, η κάθε συσκευή ενέχει, σύμφωνα με τα παραπάνω, τον δικό της τρόπο επικοινωνίας και διαχείρισης των δεδομένων και των ενεργειών της. Η πλατφόρμα awesome ενοποιεί όλες τις ετερογενείς συσκευές του συστήματος και παρέχει διαπλατφορμική πρόσβαση στα δεδομένα και στις μεθόδους τους. Για αυτόν τον σκοπό, ακολουθεί τα πρότυπα της Αρχιτεκτονικής Προσανατολισμένης σε Υπηρεσίες περιγράφοντας τις Υπηρεσίες με WSDL και διαφημίζοντάς τες σε Μεσολαβητή σύμφωνα με το πρότυπο WS-Discovery. Έτσι, υποστηρίζεται η δυναμικότητα και η ευελιξία σε ένα τέτοιας μεγάλης κλίμακας περιβάλλον κτιρίου. Η εσωτερική του δομή επιτρέπει την κλιμάκωση σε μεγαλύτερο αριθμό αισθητήρων (προσθέτοντας περισσότερα δίκτυα), αλλά και την επέκταση με περισσότερες Υπηρεσίες λογισμικού ή υλικού (νέους αισθητήρες) με τη μορφή plugin. Στα πλαίσια της αξιολόγησης του awesome έγιναν πειράματα διάφορων υλικών για τον εξυπηρετητή και ειδικά με τη χρήση ενός μικρο-υπολογιστή τύπου πλακέτας, ώστε να βρεθεί η ιδανική σχέση απόδοσης και χρόνου απόκρισης, με αποδεκτή κατανάλωση ενέργειας. Στη συνέχεια της ενότητας παρουσιάζεται μία σειρά από υπάρχουσες προσεγγίσεις ενδιάμεσου λογισμικού για περιβάλλοντα Διάχυτης Νοημοσύνης. Εξετάζονται τα ιδιαίτερα χαρακτηριστικά τους, όπως η λειτουργικότητα, οι τεχνολογίες υλοποίησης και το πεδίο εφαρμογής. Στην τελευταία υποενότητα παρουσιάζεται η σύγκριση αυτών των προσεγγίσεων με το προτεινόμενο awesome λογισμικό Hydra και Home SOA Μία από τις πιο σχετικές και πλήρεις προσεγγίσεις για ενδιάμεσο λογισμικό Διάχυτης Νοημοσύνης είναι αυτή του Hydra Middleware 38, το οποίο αργότερα μετονομάστηκε σε LinkSmart Middleware. Το λογισμικό αυτό αναπτύχθηκε στα πλαίσια Ευρωπαϊκού προγράμματος (FP7) με στόχο την ενοποίηση διαφόρων ετερογενών συσκευών με ομοιόμορφο τρόπο. Το πρόγραμμα, επίσης, στόχευσε όλο το φάσμα εφαρμογών Διάχυτης Νοημοσύνης, όπως Οικιακούς Αυτοματισμούς, Υγεία και Γεωργία. Το Hydra υποστηρίζει πληθώρα συσκευών, οι οποίες αναφέρονται ως Hydraenabled. Η κάθε συσκευή προσφέρει το δικό της εγγενές πρωτόκολλο επικοινωνίας ή διεπαφή, όπως Bluetooth, ZigBee, RF, RFID ή USB. Για να ενσωματωθεί η συσκευή στο σύστημα του Hydra δημιουργείται κάθε φορά το αντίστοιχο λογισμικό και οι αντίστοιχες Υπηρεσίες The Hydra Middleware online:

119 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Σε αυτό το κομμάτι, το Hydra ακολουθεί την Ανάπτυξη Οδηγούμενη από τα Μοντέλα (Model- Driven Development) σε συνδυασμό με σημασιολογικά μοντέλα (οντολογίες) για να δημιουργεί δυναμικά αυτό το λογισμικό κατά περίπτωση (Eisenhauer et al., 2009). Τεχνικά, το Hydra στοχεύει κυρίως σε συσκευές που έχουν τη δυνατότητα να ενσωματώσουν τα κομμάτια του λογισμικού Υπηρεσιών Ιστού του, ώστε να γίνουν Hydra-enabled, χωρίς να απαιτείται κάποιος εξωτερικός Server για να τις διαχειρίζεται. Μία παρόμοια προσέγγιση μικρότερης έκτασης είναι το σύστημα Home SOA (Bottaro and Gérodolle, 2008). Το Home SOA στοχεύει πάλι στο πεδίο των Οικιακών Αυτοματισμών και στην ενοποίηση πρωτοκόλλων επικοινωνίας. Τα πρωτόκολλα επικοινωνίας συσκευών που ενοποιεί το Home SOA είναι το ZigBee και το X10, τα οποία συνδυάζει με Υπηρεσίες πολυμέσων, όπως τα UPnP και Bonjour, για την παροχή αυτοματισμών. Η ενσωμάτωση των συσκευών γίνεται με ανάπτυξη εξειδικευμένων drivers ως ενδιάμεσο λογισμικό και παροχή α- ντίστοιχων OSGi Υπηρεσιών. Το Hydra, το Home SOA και το προτεινόμενο από τη διατριβή λογισμικό, awesome, μοιράζονται τον ίδιο στόχο: την ενοποίηση διάφορων έξυπνων συσκευών με ομοιόμορφο τρόπο μέσω Υπηρεσιών Ιστού, σε ένα περιβάλλον Διάχυτης Νοημοσύνης για Έξυπνα Σπίτια. Όμως, μια βασική τους διαφορά είναι ο αριθμός και το είδος των συσκευών που υποστηρίζει το κάθε σύστημα. Οι συσκευές που προσφέρει το Hydra ως Hydra-enabled είναι σχετικά περιορισμένες, ενώ αυτές που υποστηρίζονται από το Home SOA είναι ακόμα λιγότερες. Από τη μία, είναι πολύ δύσκολο να υποστηριχθούν όλες οι συσκευές που κυκλοφορούν στο εμπόριο, αλλά το γεγονός ότι το Hydra πρέπει να ενσωματώνεται στην ίδια τη συσκευή εισάγει έναν παραπάνω περιορισμό. Αντίθετα, το awesome στοχεύει να ενσωματώσει μερικές από τις πιο διαδεδομένες συσκευές του εμπορίου, οι οποίες θα μπορούν να καλύπτουν ένα μεγάλο μέρος των αναγκών του Έξυπνου Σπιτιού. Σε αντίθεση με το Hydra, είναι αναγκαία η χρήση ενός κεντρικού awesome server για όλα τα δίκτυα συσκευών εντός εμβέλειάς του. Άλλωστε, ο ίδιος server χρησιμοποιείται ούτως ή άλλως στα περισσότερα σενάρια και για τη φιλοξενία άλλων εφαρμογών-πελάτη και πρακτόρων στο ευρύτερο σύστημα Διάχυτης Νοημοσύνης. Για μεγαλύτερη ευκολία στην εγκατάσταση του server και για να διατηρηθούν χαμηλά οι παράγοντες του μεγέθους, του κόστους και της κατανάλωσης, μελετήθηκαν μικροί υπολογιστές τύπου πλακέτας Semantic Spaces Το σύστημα Semantic Spaces (Wang et al., 2004) παρουσιάζει μια παρόμοια προσέγγιση ενδιάμεσου λογισμικού. Τα αποκαλούμενα «wrappers» του συστήματος Semantic Spaces είναι στην πραγματικότητα UPnP Υπηρεσίες που μπορούν να εντοπιστούν δυναμικά. Οι υπηρεσίες του προσφέρουν τη δυνατότητα ανάκτησης πληροφοριών που αφορούν υλικό, όπως δεδομένα αισθητήρων περιβαλλοντικών συνθηκών, αλλά και αμιγώς λογισμικό, όπως η χρήση CPU ή η πρόβλεψη καιρού. Ομοίως με το Hydra, το σύστημα χρησιμοποιεί οντολογίες για την αναπαράσταση γνώσης. Οι πληροφορίες του περιβάλλοντος ή αλλιώς η αναπαράσταση του κόσμου για το σύστημα αποθηκεύονται σε μία ειδικά σχεδιασμένη οντολογία. Πάνω σε αυτά 119

120 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη τα δεδομένα εκτελείται συλλογιστική και με κατάλληλα ερωτήματα ανακτάται η πληροφορία. Αντίθετα, το awesome χρησιμοποιεί ευρέως διαδεδομένα πρότυπα του Ιστού, όπως το WSDL ως API και το WS-Discovery, πράγμα που επιτρέπει την ανακάλυψη και τη χρήση των Υπηρεσιών απομακρυσμένα από οποιαδήποτε συσκευή (πέρα από συμβατές με UPnP). Επιπλέον, ενσωματώνονται περισσότερες συσκευές στο λογισμικό, π.χ. αισθητήρες ρεύματος, όργανα δράσης και συσκευές Z-Wave. Η μεθοδολογία που ακολουθεί το Semantic Spaces για τη διαχείριση γνώσης, δηλαδή να καταχωρεί όλη την πληροφορία του περιβάλλοντος σε μία οντολογία, είναι γενικότερα δημοφιλής στην έρευνα. Από την άλλη, στο σύστημα awesome η αποθήκευση της πληροφορίας γίνεται εκτός του middleware, σε επίπεδο εφαρμογών, κάτι που μπορεί να θεωρηθεί σχεδιαστικά πιο ευέλικτο. Το πώς δομείται, αποθηκεύεται και χρησιμοποιείται αυτή η πληροφορία επαφίεται σχεδιαστικά περισσότερο στους χρήστες, για μεγαλύτερη ελευθερία και εξετάζεται εκτενώς στα επόμενα κεφάλαια Emi 2 Το σύστημα Emi 2 (López-de-Ipiña et al., 2006) προτείνει μία υποδομή παρόμοια με αυτή του UPnP/DLNA, όπου κάθε υποσύστημα έχει ένα σαφώς ορισμένο ρόλο. Οι ρόλοι αυτοί είναι: Emi 2 Server, Αντικείμενα, Συσκευές Αναπαραγωγής κ.α. Κάθε χρήστης και κάθε Αντικείμενο (που εδώ έχει παρόμοια έννοια με την Υπηρεσία) αντιπροσωπεύονται από έναν Πράκτορα. Τα Αντικείμενα μπορούν να εντοπιστούν απομακρυσμένα, αλλά πρέπει να ανακτηθούν και να αποθηκευτούν τοπικά για να εκτελεστούν, πράγμα που αποτελεί σημαντική διαφορά με τις περισσότερες υπάρχουσες προσεγγίσεις, συμπεριλαμβανομένου του awesome. Συνολικά, η πλατφόρμα Emi 2 εισάγει αρκετούς περιορισμούς συμβατότητας υλικού και ύπαρξης πόρων, ενώ δεν υποστηρίζει εξωτερικούς πελάτες ή υπάρχουσες υπηρεσίες MEDUSA και AmIi Ένα ακόμα ενδιάμεσο λογισμικό Υπηρεσιών Ιστού είναι το MEDUSA (Davidyuk et al., 2011), το οποίο επιτρέπει τη διαφανή χρήση των λειτουργιών που προσφέρει ένα Έξυπνο Περιβάλλον. Το MEDUSA κάνει χρήση καρτών RFID για διεπαφή με τον φυσικό κόσμο και επομένως εγκαθίσταται σε κινητά τηλέφωνα με δυνατότητες ανάγνωσης RFID-ετικετών. Στο διάχυτο περιβάλλον της εφαρμογής υπάρχουν κάρτες, η κάθε μία από τις οποίες αντιπροσωπεύει μία προσφερόμενη υπηρεσία. Στη συνέχεια, οι χρήστες χρησιμοποιούν τα τηλέφωνα για να σαρώσουν τις κάρτες. Η σειρά σάρωσης μεταφράζεται σε μία αντίστοιχη σύνθεση Υπηρεσιών, δίνοντας με αυτόν τον τρόπο στους χρήστες μία απτή διεπαφή χρήστη στο φυσικό κόσμο. Στην υλοποίησή του το MEDUSA βασίζεται σε προηγούμενες εργασίες και συγκεκριμένα στο AmIi middleware (Georgantas et al., 2010), το οποίο ορίζει τη δική του προγραμματιστική διεπαφή και περιγραφή υπηρεσιών, επίσης βασισμένη σε XML γλώσσα. Αν και αυτό χαρακτηρίζεται ως περιοριστικό, το AmIi παρέχει τη δυνατότητα μετατροπής περιγραφών υ- πηρεσιών από τις επικρατέστερες γλώσσες, όπως τις συντακτικές WSDL, UPnP και τις σημασιολογικές OWL-S και SAWSDL, σε μια εσωτερική περιγραφή, την ASDL. H ASDL είναι μια ανωτέρου επιπέδου XML αναπαράσταση που δανείζεται στοιχεία από την SAWSDL για την 120

121 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού περιγραφή σημασιολογίας και τη WS-BPEL για την περιγραφή workflows. Από την άλλη πλευρά, η δεδομένη αναπαράσταση δεν έχει υιοθετηθεί σε μεγάλη έκταση στην πράξη. Επομένως, η συμβατότητα του συστήματος περιορίζεται. Τα ευρέως διαδεδομένα standards WSDL και SAWSDL παραμένουν απλούστερα και πλέον διαλειτουργικά για τη χρήση υπαρχόντων υπηρεσιών και εργαλείων. Ως πεδίο εφαρμογής, τα συστήματα MEDUSA/AmIi έχουν σχεδιαστεί βασικά για σενάρια με συσκευές πολυμέσων, όπως εφαρμογές γραφείου, συσκέψεων κ.ο.κ. Το awesome απεναντίας υποστηρίζει στο τεχνικό/υλικό κομμάτι διαφορετική ποικιλία συσκευών και κυρίως δικτύων αισθητήρων, με στόχο την εξοικονόμηση ενέργειας Polisave Το Polisave (Chiaraviglio and Mellia, 2010) είναι ένα σχετικό σύστημα για εξοικονόμηση ενέργειας στο Πολυτεχνείο του Τορίνο, με διαχείριση του τεχνικού εξοπλισμού. Το σύστημα ενσωματώνει την υπάρχουσα τεχνολογία Wake On Lan, η οποία υλοποιεί σε επίπεδο hardware τη δυνατότητα απομακρυσμένης εκκίνησης ενός υπολογιστή μέσω LAN. Αντίστοιχα, ειδικά scripts έχουν ενσωματωθεί για την απενεργοποίηση των υπολογιστών (λαμβάνοντας υπόψιν το κάθε λειτουργικό σύστημα). Μέσω του Polisave, οι χρήστες μπορούν να ορίσουν χρονοδιαγράμματα ενεργοποίησης και απενεργοποίησης του πανεπιστημιακού υπολογιστή τους, με σκοπό την εξοικονόμηση ενέργειας και χρημάτων για το πανεπιστήμιο. Η διεπαφή της εφαρμογής είναι ένα Web application με γραφικό περιβάλλον, ώστε να χρησιμοποιείται α- πομακρυσμένα. Το awesome ενσωματώνει τις ίδιες λειτουργίες Wake On Lan και τη χρήση scripts για απενεργοποίηση/αδρανοποίηση και επανεκκίνηση. Η διαφορά του έγκειται στο ότι ενθυλακώνει αυτές τις λειτουργίες σε Υπηρεσίες Ιστού, προσφέροντάς τες με ευέλικτο τρόπο σε παραπάνω από μία εφαρμογές. Επιπλέον, το awesome συνδυάζει πλήθος άλλων συσκευών και πληροφοριών με προορισμό την εξοικονόμηση. Τα χρονοδιαγράμματα εξοικονόμησης ενέργειας προσφέρονται σε αυτές τις επιμέρους εφαρμογές KASO, B3G SOM και UbiSOAP Τα τρία επόμενα συστήματα που παρουσιάζονται εμφανίζουν παρόμοια χαρακτηριστικά. Το πρώτο από αυτά, το middleware KASO (Corredor et al., 2012), ενσωματώνει δίκτυα αισθητήρων και οργάνων δράσης. Σαν πεδίο εφαρμογής, το KASO εστιάζει κυρίως στη χρήση Υπηρεσιών μέσω του Cloud (Νέφους) και σε σενάρια χρήσης του μελλοντικού διαδικτύου. Το σύστημα B3G SOM της εργασίας (Autili et al., 2009) προσαρμόζει 3G υπηρεσίες κινητών και τις ενσωματώνει σε middleware Υπηρεσιών Ιστού. Το σύστημα UbiSOAP (Caporuscio et al., 2012) είναι ενδιάμεσο λογισμικό που εστιάζει και βελτιστοποιεί τον τρόπο επικοινωνίας στο physical layer (φυσικό επίπεδο). Η ιδέα πίσω από το UbiSOAP είναι ότι οι κινητές συσκευές σε ένα Έξυπνο Περιβάλλον μπορούν να παρέχουν ή και να καταναλώνουν Υπηρεσίες. Έχουν, όμως, περιορισμένους υπολογιστικούς πόρους και επομένως εισάγουν καθυστέρηση, ειδικά στην περίπτωση που παίζουν τον ρόλο του παρόχου. Το UbiSOAP εισάγει τη χρήση πολλαπλών ραδιοσυχνοτήτων στο φυσικό επίπεδο επικοινωνίας, καθώς και διαμεσολαβητές (proxy 121

122 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη servers) ως γέφυρες επικοινωνίας. Ενσωματώνοντας αυτά τα επίπεδα, καταφέρνει απρόσκοπτη λειτουργία όλων των Υπηρεσιών, χωρίς καθυστερήσεις. Η περιγραφή των υπηρεσιών είναι εσωτερική στο σύστημα και ονομάζεται PSDL. Αντίθετα, στο σύστημα awesome δεν α- παιτείται η χρήση του Cloud για εύρεση υπολογιστικών πόρων, ούτε η ενσωμάτωση 3G υπηρεσιών. Επιπλέον, ενσωματώνεται ένας υπολογιστικά μη-ισχυρός μικρο-υπολογιστής με ικανοποιητική απόδοση Ενδιάμεσο Λογισμικό για Σύνθεση Υπηρεσιών Μια επόμενη κατηγορία Ενδιάμεσου Λογισμικού για Διάχυτη Νοημοσύνη περιλαμβάνει λογισμικό που προσφέρει αυτόματη και ευφυή σύνθεση υπηρεσιών. Μία πλήρης βιβλιογραφική μελέτη των τεχνικών αυτόματης σύνθεσης παρουσιάζεται στην εργασία (Stavropoulos et al., 2013c), καθώς και στο επόμενο κεφάλαιο της διατριβής. Σε αυτήν την ενότητα απομονώνονται και παρουσιάζονται μόνο τα συστήματα που προσφέρουν τη δυνατότητα της σύνθεσης ως λειτουργία του ίδιου του ενδιάμεσου λογισμικού. Όπως είναι φυσικό, αυτή η κατηγορία middleware διαφέρει πρωτίστως στο ότι δεν ενσωματώνει τη διεπαφή με συσκευές. Το middleware Scooby (Robinson et al., 2004) δίνει τη δυνατότητα περιγραφής Σύνθετων Υπηρεσιών με τη μορφή της δικής του γλώσσας. Η γλώσσα του Scooby έχει τη μορφή script υψηλού επιπέδου. Ένα παρόμοιο σύστημα είναι το MySIM (Ibrahim et al., 2009), το οποίο αποτελεί ενδιάμεσο λογισμικό που προσφέρει αυτόματη σύνθεση Υπηρεσιών. Αρχικά, το MySIM μεταφράζει υπάρχουσες περιγραφές Υπηρεσιών OSGi και WSDL σε μια εσωτερική μορφή αναπαράστασης. Στη συνέχεια, η σύνθεση συμβαίνει «αυθόρμητα», όπως αναφέρεται στην αντίστοιχη εργασία, δηλαδή προληπτικά και χωρίς την απαίτηση του χρήστη. Εφόσον δεν μπορούν να συντεθούν όλοι οι πιθανοί συνδυασμοί Υπηρεσιών λόγω του απαιτούμενου υπολογιστικού χρόνου, συντίθενται όλες οι Υπηρεσίες ανά δύο και όχι παραπάνω. Έ- τσι, τα ζευγάρια Υπηρεσιών βρίσκονται άμεσα διαθέσιμα κατά την απαίτηση του χρήστη. Τα ζευγάρια περιγράφονται με χρήση του μοντέλου του MySIM, ως ένα σύνολο δεδομένων εισόδου, εξόδου και σημασιολογικών επισημάνσεων για αυτά. Από την άλλη, θα έλεγε κανείς πως το σύστημα μεταφράζει διαλειτουργικές και έτοιμες προς κατανάλωση περιγραφές (WSDL, OSGi) σε μία εσωτερική αναπαράσταση που δεν είναι συμβατή με εξωτερικούς πελάτες, περιορίζοντας τη χρήση του. Πολλές άλλες προσεγγίσεις εφαρμόζουν διάφορες τεχνικές για να προσφέρουν σύνθετες υπηρεσίες μέσω middleware. Τέτοια παραδείγματα είναι το σύστημα COCOA (Ben Mokhtar et al., 2007) ή αυτά των εργασιών (Mabrouk et al., 2009) και (Lagesse et al., 2010). Αντίθετα, στην παρούσα διατριβή και στο σύστημα awesome, η σύνθεση υπηρεσιών θεωρείται μία υψηλού επιπέδου λειτουργικότητα, η οποία προσφέρεται, όχι απλώς εκτός του middleware, αλλά και εκτός του συστήματος. Με αυτόν τον τρόπο, η σύνθεση μπορεί να εφαρμόζεται με δεδομένες όσο το δυνατόν περισσότερες υπάρχουσες υπηρεσίες, εντός και εκτός του συστήματος. Μία τέτοια εφαρμογή παρουσιάζεται στο πέμπτο κεφάλαιο. Νεότερες προσεγγίσεις στον τομέα της Υγείας και Διάχυτης Υποβοηθούμενης Διαβίωσης έχουν εστιάσει στην παροχή υψηλού επιπέδου λειτουργιών, όπως η σύνθεση. Το 122

123 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού OpenAAL (Wolf et al., 2010) είναι μια ανοιχτή πλατφόρμα που προσφέρει λειτουργίες διαχείρισης της κατάστασης του περιβάλλοντος, ταυτοποίηση και σύνθεση υπηρεσιών. Ωστόσο, δεν έχουν ενσωματωθεί ακόμα συσκευές και υλικό απαραίτητο για τέτοια περιβάλλοντα. Ο- μοίως, στην πλατφόρμα FamiWare (Gámez and Fuentes, 2011), προσφέρονται υπηρεσίες α- νάγνωσης ροών και συγκερασμού πηγών δεδομένων αισθητήρων, καθώς και ανακάλυψη. Όμως, όσον αφορά το υλικό, ενοποιούνται μόνο αισθητήρες του TinyOS και όχι περισσοτέρων, πιο ευρέως διαδεδομένων πρωτοκόλλων Σύγκριση Υπαρχόντων Συστημάτων με το awesome Σε σύγκριση με τα υπάρχοντα συστήματα, το προτεινόμενο λογισμικό awesome διαφέρει σε τρεις κυρίως άξονες: στη διαλειτουργικότητα με εξωτερικά συστήματα, στο πλήθος και είδος των συμβατών συσκευών και στο πεδίο εφαρμογής. Όσον αφορά στη διαλειτουργικότητα, το awesome ακολουθεί τα πρότυπα του W3C, όπως το WSDL για την περιγραφή και το WS- Discovery για την ανακάλυψη, και όχι εσωτερικές ή προσαρμοσμένες αναπαραστάσεις. Εξασφαλίζει με αυτόν τον τρόπο τη μέγιστη δυνατή συμβατότητα με εξωτερικό λογισμικό, όπως και τη δυνατότητα επαναχρησιμοποίησης ανοιχτών εργαλείων και βιβλιοθηκών που υπάρχουν ήδη για τα πρότυπα αυτά. Επιπλέον, χάριν διαλειτουργικότητας και σπονδυλωτού σχεδιασμού, η αποθήκευση της πληροφορίας με σημασιολογία και οι ανωτέρου επιπέδου λειτουργίες, όπως η σύνθεση, δεν προσφέρονται από το middleware, αλλά από εφαρμογές πελάτη του, εντός του ευρύτερου συστήματος. Οι συσκευές που ενσωματώνει και υποστηρίζει το awesome δεν υποστηρίζονται στο σύνολό τους από τα υπάρχοντα συστήματα και ανήκουν σε έναν ανοιχτό αριθμό πρωτοκόλλων επικοινωνίας: ZigBee, Z-Wave και RF. Όσον αφορά στο πεδίο εφαρμογής, το awesome εστιάζει στην παρακολούθηση, στη διαχείριση και στην εξοικονόμηση ενέργειας, σε αντίθεση με άλλα δημοφιλή συστήματα που αφορούν την υγεία, τη γεωργία και τα πολυμέσα σε έξυπνους χώρους. Για αυτήν ακριβώς την αιτία, διερευνήθηκε ιδιαίτερα η υλική ε- γκατάσταση του awesome με χαμηλή κατανάλωση ενέργειας και υψηλή απόδοση. Μια σύνοψη των συστημάτων παρουσιάζονται στον Πίνακα 4.1, όπου φαίνεται η έμφαση που δόθηκε στα χαμηλού επιπέδου χαρακτηριστικά του awesome. Ειδικότερα, η γλώσσα περιγραφής του είναι ίσως η πιο διαλειτουργική γλώσσα WSDL, ενώ υποστηρίζεται το μεγαλύτερο εύρος συσκευών και υπηρεσιών, εξίσου εκτενές με αυτό του Hydra/Linksmart middleware. Όσον αφορά στο πεδίο εφαρμογής, φαίνεται εποπτικά πως το πεδίο των Έξυπνων Κτιρίων, με την έννοια της εξοικονόμησης ενέργειας, είναι σχετικά ανεξερεύνητο από την πλευρά των συστημάτων Διάχυτης Νοημοσύνης. Τέλος, υπενθυμίζεται ότι η προσθήκη σημασιολογίας και η σύνθεση υπηρεσιών προστίθενται σε επόμενες συμβολές. Μπορεί η σημασιολογία, που εξετάζεται στο επόμενο κεφάλαιο, να προστίθεται στο middleware, όμως η διαχείριση και η αποθήκευση γνώσης αφορά κυρίως τους πελάτες. Το ίδιο ισχύει και για τη σύνθεση υπηρεσιών, η οποία δεν περιλαμβάνεται στο ενδιάμεσο λογισμικό, ώστε να λαμβάνει υπόψιν εσωτερικές και εξωτερικές υπηρεσίες. 123

124 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πίνακας 4.1. Σύγκριση υπάρχοντος ενδιάμεσου λογισμικού και awesome Σύστημα Πεδίο Εφαρμογής Είδη Συσκευών και Περιγραφές Υπηρεσιών Σημασιολογία Σύνθεση Υπηρεσιών Υπηρεσιών Hydra/ Υγεία, ZigBee, SAWSDL Linksmart Γεωργία, Έξυπνο Σπίτι Bluetooth, Διάφοροι Αισθητήρες (Παραλλαγή) Home SOA Πολυμέσα, ZigBee, UPnP Έξυπνο Σπίτι X10, UPnP Semantic Έξυπνο Σπίτι UPnP OWL/RDF Spaces Emi 2 Πολυμέσα UPnP MEDUSA + AmIi Πολυμέσα, UPnP ASDL Έξυπνο Σπίτι Polisave Έξυπνο Κτίριο Wake On LAN KASO Cloud Διάφοροι REST Αισθητήρες B3G SOM 3G Επικοινωνία Κινητά Τηλέφωνα UbiSOAP Επικοινωνία Κινητά PSDL Τηλέφωνα Scooby Έξυπνος Χώρος Εξοπλισμός ΤΠ Script MySIM Έξυπνος Χώρος Χειρισμός MySIM αρχείων και ει- κόνων COCOA Πολυμέσα, Streaming OWL-S Επικοινωνίες Βίντεο και Ή- χου (επέκταση) OpanAAL Υγεία Ταυτοποίηση και Σύνθεση FamiWare Υγεία TinyOS και Ανακάλυψη awesome Έξυπνο Κτίριο ZigBee, Z-Wave, Wake On LAN, Διάφοροι Αισθητήρες WSDL 124

125 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού 4.2 Το Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού awesome Το ενδιάμεσο λογισμικό Υπηρεσιών Ιστού awesome (a WEb Service MiddlewarE) 39 αναπτύχθηκε στα πλαίσια της διατριβής ως θεμέλιο εφαρμογών Διάχυτης Νοημοσύνης. Συγκεκριμένα, το awesome παίζει τον ρόλο του ενδιάμεσου επιπέδου μεταξύ πολλών ετερογενών συσκευών στο υλικό επίπεδο και διαφόρων εφαρμογών στο υψηλότερο επίπεδο εφαρμογών σε διάχυτα περιβάλλοντα. Ακολουθώντας τις τάσεις των υπαρχόντων συστημάτων, το ενδιάμεσο λογισμικό προσφέρει τον απαραίτητο βαθμό αφαιρετικότητας από τις λειτουργίες συγκεκριμένης πλατφόρμας και τα ετερογενή δεδομένα που προσφέρουν οι συσκευές της αγοράς. Επιπρόσθετα, οι Υπηρεσίες Ιστού που υλοποιεί εκθέτουν τις λειτουργίες και τα δεδομένα αυτών των συσκευών στο τοπικό δίκτυο και στον Παγκόσμιο Ιστό. Η αρχιτεκτονική του awesome υπακούει στα πρότυπα της Αρχιτεκτονικής Προσανατολισμένης σε Υπηρεσίες, ώ- στε να εγγυάται ακόμα περισσότερη ευελιξία, ενημερότητα και δυναμικότητα σε περιβάλλοντα μεγάλης κλίμακας με κατανεμημένους servers. Για να εξασφαλιστεί η επεκτασιμότητα του awesome σε περισσότερα πακέτα συσκευών και υλικό, σχεδιάστηκε μια εσωτερική διαστρωμάτωση σε δύο λογικά υπό-επίπεδα: αυτό της ολοκλήρωσης (integration layer) και αυτό των Υπηρεσιών Ιστού (Web Service Layer). Στο επίπεδο της ολοκλήρωσης γίνεται η ενσωμάτωση των συσκευών στο σύστημα. Η ενσωμάτωση πραγματοποιείται τμηματικά, ώστε να μπορεί να προστεθεί περισσότερο υλικό στο μέλλον με τη λογική των πρόσθετων (plug-ins). Ξεχωριστά προγράμματα οδηγών (drivers) αναπτύχθηκαν για κάθε συσκευή που υποστηρίζεται στην τρέχουσα μορφή του awesome. Όλα τα προγράμματα οδηγών έχουν υλοποιηθεί εκ νέου, χωρίς να εξαρτώνται από ιδιόκτητο λογισμικό κατασκευαστή και αλληλοεπιδρούν απευθείας με το υλικό των συσκευών. Οι οδηγοί έχουν αναπτυχθεί σε γλώσσα κατάλληλη για την πλατφόρμα που απαιτεί ο κάθε κατασκευαστής, είτε Java ή C#, για τις δεδομένες υπάρχουσες συσκευές. Στο σύστημα έχουν ε- γκατασταθεί PCs, netbooks και ένας μικρο-υπολογιστής, που μπορούν να αλληλοεπιδρούν απευθείας με τις συσκευές και φιλοξενούν το awesome λογισμικό. Στο υποεπίπεδο Υπηρεσιών Ιστού υλοποιούνται Υπηρεσίες Ιστού WSDL/SOAP, που αντιστοιχούν σε μεθόδους υλικού ή λογισμικού. Στην περίπτωση των υπηρεσιών υλικού, οι μέθοδοι των υπηρεσιών ενθυλακώνουν ένα και μόνο πρόγραμμα οδηγού υλικού από το προηγούμενο επίπεδο. Με αυτόν τον τρόπο, εξασφαλίζεται και πάλι η επεκτασιμότητα, αφού είναι δυνατή η προσθήκη (και αφαίρεση) οδηγών μαζί με τις αντίστοιχες Υπηρεσίες. Σε αντίθετη περίπτωση, θα μπορούσαν να υπάρχουν πολλές Υπηρεσίες, μία για κάθε λειτουργία συσκευής, καθιστώντας δύσκολη τη διαχείρισή τους. Επομένως, χάριν επεκτασιμότητας και ορθού σχεδιασμού, κάθε οικογένεια λογισμικού ομαδοποιείται σε μία Υπηρεσία. Η Υπηρεσία αυτή προσφέρει πολλές μεθόδους για κάθε λειτουργία των αντίστοιχων συσκευών. Παράλληλα, ομαδοποιούνται λογικά και οι Υπηρεσίες Ιστού λογισμικού, που δεν αντιστοιχούν σε κάποιον οδηγό υλικού, ανά είδος. Όλες οι Υπηρεσίες έχουν υλοποιηθεί σε περιβάλλον Java, 39 Ιστοσελίδα του awesome: 125

126 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 4.1. Αρχιτεκτονική του Ενδιάμεσου Λογισμικού awesome συνεπώς είναι τελείως ανεξάρτητες από την πλατφόρμα του server και μπορούν να φιλοξενηθούν σε οποιοδήποτε μηχάνημα. Ακολουθώντας το πρότυπο προσανατολισμού σε Υπηρεσίες, ένας Μεσολαβητής Υ- πηρεσιών είναι υπεύθυνος για την καταγραφή και την προβολή των Υπηρεσιών που βρίσκονται διάσπαρτες στο περιβάλλον. Στους servers του awesome εγκαθίστανται κάθε φορά τα απαραίτητα τμήματα, οδηγοί και Υπηρεσίες. Στη συνέχεια, οι νέες προσφερόμενες Υπηρεσίες καταγράφονται στον Μεσολαβητή. Οι εν δυνάμει πελάτες αυτών των Υπηρεσιών φυλλομετρούν το αποθετήριο και εντοπίζουν τον κατάλληλο server. Μία συμπαγής έκδοση του awe- SoME προς διανομή φιλοξενείται στη ιστοσελίδα του awesome και περιέχει ενδεικτικά μερικά μόνο από τα προγράμματα οδηγών 40. Παράλληλα, το λογισμικό εγκαταστάθηκε στον χώρο ενός κτιρίου για να επαληθευτεί η κλιμάκωση και η απόδοσή του υπό πραγματικές συνθήκες. Στην πορεία της ενότητας περιγράφονται αναλυτικά τα υποεπίπεδα Ολοκλήρωσης και Υπηρεσιών Ιστού, ενώ περιγράφεται η μεθοδολογία και η τοπολογία της πραγματικής εγκατάστασης του awesome στο κτίριο. 40 Διανομή awesome: 126

127 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εικόνα 4.2. Αποδόμηση πακέτων ασύρματων δικτύων σε επίπεδο δεδομένων: τα πακέτα των Έξυπνων Μπριζών, Πλακετών Αισθητήρων και Z-Wave ακολουθούν τη δομή των Encrypted ZigBee, Open ZigBee και Z-Wave αντίστοιχα Επίπεδο Ολοκλήρωσης Το επίπεδο ολοκλήρωσης του ενδιάμεσου λογισμικού περιέχει τα προγράμματα οδηγών που είναι υπεύθυνα για την απευθείας επικοινωνία με τις συσκευές του συστήματος, αναφορικά τους αισθητήρες και τα όργανα δράσης. Κάθε οικογένεια συσκευών ή μεμονωμένη συσκευή προσφέρουν τη δική τους προγραμματιστική διεπαφή, πρωτόκολλο επικοινωνίας και λειτουργίας. Τα προγράμματα οδηγών μπορούν να θεωρηθούν ως βιβλιοθήκες λογισμικού που χειρίζονται τις συσκευές σε πολύ χαμηλό επίπεδο. Δεν έχουν καμία εξωτερική εξάρτηση από ιδιόκτητο/εμπορικό λογισμικό, οπότε μπορούν να εγγυηθούν ευέλικτη εγκατάσταση και γρήγορες επιδόσεις. Επομένως, το ίδιο το ενδιάμεσο λογισμικό μπορεί να αποσυντεθεί και να πακεταριστεί, ώστε να περιέχει το κατάλληλο υποσύνολο οδηγών αναλόγως του σεναρίου. Αυτή η δυνατότητα συμπίεσης είναι ιδιαίτερα χρήσιμη στο σενάριο χρήσης μικρο-υπολογιστή που εξετάζεται παρακάτω. Επιπλέον, περισσότερες οικογένειες συσκευών μπορούν να υποστηριχθούν μελλοντικά με την ανάπτυξη και προσθήκη περισσότερων οδηγών. Στη συνέχεια, εξετάζονται ένας προς έναν οι οδηγοί που ενσωματώνει το awesome ανά οικογένεια συσκευής. Οδηγός Έξυπνων Μπριζών Οι Έξυπνες Μπρίζες είναι πακέτο συσκευών για οικιακούς αυτοματισμούς, που συνδέονται σε οποιαδήποτε ηλεκτρική συσκευή και επιτρέπουν την ενεργοποίηση και απενεργοποίηση της. Επίσης, μετρούν κάθε στιγμή την κατανάλωση ρεύματος της συσκευής. Αυτές οι λειτουργίες είναι πολύ χρήσιμες για σενάρια εξοικονόμησης ενέργειας, αλλά και σε γενικότερες ε- φαρμογές διαφόρων πεδίων εφαρμογών Διάχυτης Νοημοσύνης (υγεία, αυτοματισμούς). Το εμπορικό πακέτο Έξυπνων Μπριζών που επιλέχθηκε 41 σχηματίζει δυναμικά κατανεμημένα 41 Plugwise company: 127

128 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 4.3. Γραφική Διεπαφή Χρήστη του Οδηγού Έξυπνων Μπριζών δίκτυα ZigBee. Ακόμη, περιλαμβάνει Έξυπνες Μπρίζες για συσκευές που συνδέονται στην μπρίζα τοίχου ή και απευθείας στην παροχή ρεύματος, π.χ. στην περίπτωση του φωτισμού και του κλιματισμού, όπως αυτές έχουν περιγραφεί στο τρίτο κεφάλαιο. Οι δύο παραλλαγές των συσκευών έχουν ακριβώς τις ίδιες ιδιότητες, λειτουργίες και προγραμματιστικές διεπαφές, συνεπώς θεωρούνται ισοδύναμες. Κάθε δίκτυο Έξυπνων Μπριζών μπορεί να φιλοξενήσει μέχρι πενήντα κόμβους/μπρίζες, αλλά οι βέλτιστες επιδόσεις διατηρούνται μέχρι τους τριάντα κόμβους. Το δίκτυο αυτοδιαχειρίζεται από τον κόμβο συντονιστή, που αποτελεί και ο ίδιος μία Έξυπνη Μπρίζα. Ο συντονιστής επικοινωνεί με τον υπολογιστή μέσω ενός USB Stick, που παρέχει τη διεπαφή μεταξύ των προγραμμάτων και του ZigBee. Για χρήση παραπάνω συσκευών απαιτείται η δημιουργία περισσότερων, ανεξάρτητων δικτύων. Η συγκεκριμένη τοπολογία των δικτύων Έξυπνων Μπριζών του προτεινόμενου συστήματος παρουσιάζεται σε επόμενη ενότητα. Σημειώνεται ότι το Stick δεν μπορεί να αντικατασταθεί με γενικού σκοπού ZigBee διεπαφή, ούτε μπορεί να χρησιμοποιηθεί ανοιχτή βιβλιοθήκη ZigBee, αφού η εταιρία χρησιμοποιεί κρυπτογράφηση δεδομένων. Επομένως, για να μπορέσουν να ενσωματωθούν οι συσκευές στο λογισμικό awe- SoME και λόγω απουσίας ανοιχτού προγραμματιστικού API, το πρωτόκολλο λειτουργίας των συσκευών ανακατασκευάστηκε από την αρχή. Ο Οδηγός Έξυπνων Μπριζών (Smart Plug Driver) κατασκευάστηκε αποκρυπτογραφώντας σε έναν βαθμό, με τεχνική reverse-engineering, τα πακέτα που διέρχονται από τη θύρα USB. Ο Οδηγός βρίσκεται, λοιπόν, αφενός σε 128

129 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Πίνακας 4.2. Εντολές και αποκρίσεις στο δίκτυο Έξυπνων Μπριζών Κωδικός Περιγραφή Εντολής Κωδικός Απόκρισης Περιγραφή Απόκρισης Εντολής 0017 Ενεργοποίηση/Απενεργοποίηση Πληροφορίες Συσκευής 0024 Κατάσταση On/Off Ρολόι Firmware 0048 Πληροφορίες Μνήμης 0049 Ιστορικό Παλμών 0026 Πληροφορίες Ρύθμισης 0027 GainA, GainB Offtotal, Offnoise 0012 Πληροφορίες Ρεύματος 0013 Παλμοί 0001 Ανάθεση Κόμβου στο Δίκτυο Α Ανάθεση Συντονιστή στο Δίκτυο - - θέση να δημιουργεί και να στέλνει και αφετέρου να λαμβάνει και να ερμηνεύει τα κατάλληλα πακέτα για τη λειτουργία των συσκευών του δικτύου. Συγκεκριμένα, τα πακέτα που αποστέλλει είτε δίνουν on/off εντολές, είτε ζητούν τη μέτρηση κατανάλωσης ρεύματος ή την κατάσταση μιας συσκευής. Από την άλλη, τα πακέτα που λαμβάνει είναι αποκρίσεις σε αυτές τις αιτήσεις και περιέχουν τη μέτρηση της τρέχουσας ισχύς μιας συσκευής ή την κατάστασή της (on/off). Με τη συλλογή μετρήσεων ισχύος υπολογίζεται η κατανάλωση ενέργειας. Άλλα πακέτα αποκρίσεων περιέχουν επιπρόσθετες πληροφορίες που δε χρησιμοποιούνται στο σύστημα, όπως τα δεδομένα της μνήμης buffer των συσκευών, την έκδοση firmware και το ε- σωτερικό τους ρολόι. Η Εικόνα 4.2 δείχνει τη γενική δομή ενός πακέτου κρυπτογραφημένου ZigBee (Encrypted ZigBee) στο δίκτυο Έξυπνων Μπριζών, σύμφωνα με την οποία ο Οδηγός κατασκευάζει τα πακέτα προς αποστολή και επεξεργάζεται τα πακέτα που λαμβάνονται. Ενδεικτικά, τα πεδία Header και End είναι στατικά, το πεδίο Op εκφράζει τον κωδικό της λειτουργίας, το πεδίο Source ID αναφέρεται στο ID του κόμβου, το πεδίο Data περιέχει τα σχετικά δεδομένα, ενώ το CRC χρησιμοποιείται για επαλήθευση του πεδίου των δεδομένων (Cyclic Redundancy Check). Ενδιαφέρον παρουσιάζει η αποκρυπτογράφηση των κωδικών εντολών και αποκρίσεων, η οποία προέκυψε μέσα από χρήση, παρακολούθηση και α- ντίστροφη κατασκευή (reverse engineering). Οι μέχρι τώρα γνωστές εντολές και αποκρίσεις που αντιστοιχούν στο πεδίο Op φαίνονται στον Πίνακα 4.2. Ένα πλεονέκτημα του Οδηγού είναι ότι μπορεί να ενοποιεί πολλά δίκτυα Μπριζών στον ίδιο server. Αφού ο οδηγός λειτουργεί στο χαμηλότερο επίπεδο, μπορεί να διαχειρίζεται περισσότερα του ενός δίκτυα που έχουν συνδεθεί στις USB θύρες του server, διατηρώντας απλώς έναν κατάλογο με τους κόμβους που αντιστοιχούν στο καθένα. Αυτή η δυνατότητα δίνει μεγάλη ευελιξία και είναι καινοτόμα σε σχέση με το υπάρχον λογισμικό της εταιρίας. 129

130 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πέρα από τις λειτουργίες switch, ο Οδηγός είναι υπεύθυνος για τη συνεχή συλλογή δεδομένων, περιοδικά, από όλες τις καταγεγραμμένες Μπρίζες. Η συλλογή αυτή παρουσιάζεται σε γραφική διεπαφή χρήστη για καλύτερη εποπτεία και αποσφαλμάτωση του δικτύου από τους διαχειριστές. Η Εικόνα 4.3 δείχνει τη γραφική διεπαφή του Οδηγού. Αριστερά φαίνεται το ιστορικό καταγραφής από τις Μπρίζες, που συνοδεύονται από κωδικό όνομα και τοποθεσία, ενώ δεξιά καταγράφονται τα σφάλματα ανάγνωσης, όταν αυτά συμβαίνουν. Ο Οδηγός υλοποιήθηκε εξ ολοκλήρου σε Java και JavaFx. Οδηγός Πλακετών Αισθητήρων Το πακέτο ασύρματων αισθητήρων που επιλέχθηκε 42 έχει τη δυνατότητα να συλλέγει μετρήσεις περιβαλλοντικών συνθηκών από διάφορα σημεία ενός κτιρίου. Συγκεκριμένα, οι συσκευές του πακέτου είναι Πλακέτες Αισθητήρων που τροφοδοτούνται με μπαταρία και ενσωματώνουν από έναν αισθητήρα θερμοκρασίας, έναν υγρασίας και έναν φωτεινότητας. Οι πλακέτες σχηματίζουν μεταξύ τους ένα δίκτυο ZigBee με τοπολογία αστέρα. Το κέντρο του αστέρα αποτελούν αφοσιωμένες συσκευές gateways (πύλες). Σε αντίθεση με τις Έξυπνες Μπρίζες, οι gateways αυτές γεφυρώνουν το δίκτυο ZigBee των αισθητήρων με το TCP/IP, αφού διαθέτουν διεπαφή Ethernet και WiFi, οπότε επιτρέπουν την ύπαρξη πολλών πελατών. Στην περίπτωση απλών εφαρμογών πελάτη, όπου επιθυμούν απλά να συλλέξουν τα δεδομένα, το πακέτο διαθέτει λογισμικό με τη δυνατότητα να τα παρουσιάζει. Στην περίπτωση, όμως, του συστήματος Διάχυτης Νοημοσύνης που στοχεύει το awesome λογισμικό, απαιτείται επιπλέον ομοιομορφία, αλλά και απομακρυσμένη πρόσβαση, πέραν του τοπικού δικτύου. Είναι απαραίτητη, λοιπόν, η ενσωμάτωση των συσκευών στο σύστημα, με ανάπτυξη ενός προγράμματος οδηγού. Για την υλοποίηση του Οδηγού Πλακετών Αισθητήρων (Sensor Board Driver) ανακατασκευάστηκε και πάλι λογισμικό που αποκρυπτογραφεί τα πακέτα που λαμβάνει ο πελάτης. Οι διαφορές με τον αντίστοιχο Οδηγό των Έξυπνων Μπριζών είναι δύο. Αφενός, το δίκτυο Πλακετών παρέχει τις πληροφορίες αποκρυπτογράφησης των πακέτων. Η αποδόμηση αυτή αντιστοιχεί στο πακέτο Open ZigBee της Εικόνας 4.2. Είναι φανερό πως επιπλέον πεδίο σε σχέση με τις Έξυπνες Μπρίζες είναι το Length, το οποίο αναφέρεται στο μήκος σε bytes του πεδίου Data. Αφετέρου, η ροή δεδομένων είναι τύπου boardcast και push-based. Δηλαδή, όλοι οι πελάτες που ακούνε στην TCP/IP σύνδεση λαμβάνουν χωρίς αίτηση τα δεδομένα στο ορισμένο από τις πλακέτες διάστημα. Για να διευκολυνθεί η διαχείριση του δικτύου, ο Οδηγός προσφέρει δική του γραφική διεπαφή που προβάλλει όλο το δίκτυο. Η σύνδεση ενός Οδηγού μπορεί να γίνει με περισσότερες από μία gateways. Για παράδειγμα, η Εικόνα 4.4 δείχνει την απεικόνιση στον Οδηγό Πλακετών Αισθητήρων, ενός δικτύου από οχτώ πλακέτες συνδεδεμένες σε μία gateway. Οι πλακέτες που σημειώνονται με πράσινο έχουν στείλει δεδομένα πρόσφατα, ενώ κάνοντας Prisma Electronics:

131 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εικόνα 4.4. Γραφική Διεπαφή Χρήστη του Οδηγού Πλακετών Αισθητήρων κλικ σε οποιαδήποτε πλακέτα προβάλλονται όλα τα δεδομένα των αισθητήρων της. Η γραφική διεπαφή και η αποκρυπτογράφηση πακέτων του Οδηγού υλοποιήθηκαν με χρήση βιβλιοθηκών του πλαισίου.net και της γλώσσας C#. Οδηγός Έξυπνων Δαγκάνων Οι Έξυπνες Δαγκάνες είναι συσκευές που καλύπτουν οικονομικά και εύκολα την απαίτηση του συστήματος για παρακολούθηση ενέργειας σε μεγάλη κλίμακα. Οι Έξυπνες Μπρίζες, που παρουσιάστηκαν παραπάνω, καλύπτουν τις απαιτήσεις για παρακολούθηση ενέργειας σε μικρή κλίμακα, όπως και για έλεγχο των συσκευών. Δυστυχώς, όμως, είναι πρακτικά ασύμφορο, αλλά και σχεδόν αδύνατο να χρησιμοποιηθούν τόσες πολλές ώστε να καλύψουν όλες τις συσκευές του κτιρίου. Αντίθετα, οι Έξυπνες Δαγκάνες χρησιμοποιούνται σε σενάρια Έξυπνων Σπιτιών και εξοικονόμησης ενέργειας για τη μέτρηση μεγάλων παροχών ρεύματος κατευθείαν από την πηγή. Κατά την εγκατάσταση, μία Έξυπνη Δαγκάνα κουμπώνει γύρω από ένα καλώδιο παροχής ρεύματος και μετράει επαγωγικά το ρεύμα. Το καλώδιο αυτό μπορεί να αντιστοιχεί στην παροχή ρεύματος ενός ολόκληρου διαμερίσματος, σπιτιού ή κτιρίου. Από την άλλη, ούτε οι Δαγκάνες αρκούν σε ένα ολοκληρωμένο Έξυπνο Κτίριο, διότι δεν μπορούν να μετρήσουν την κατανομή του συνολικού φορτίου στις επιμέρους παροχές συσκευών μέσα σε αυτό. Ως εκ τούτου, η χρήση Δαγκάνων και Μπριζών είναι συμπληρωματική. Το πακέτο Έξυπνων Δαγκάνων που επιλέχθηκε 43 περιλαμβάνει ασύρματους πομπούς που μεταδίδουν τα δεδομένα ισχύος. Τα δεδομένα λαμβάνονται από έναν μοναδικό δέκτη ο 43 CurrentCost: 131

132 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη οποίος συνδέεται με δέκα πομπούς, σχηματίζοντας ένα δίκτυο απλής ραδιοσυχνότητας, τοπολογίας αστέρα. Κατόπιν, συνδέεται μέσω θύρας USB σε έναν μοναδικό υπολογιστή και μεταδίδει τα δεδομένα σε ανοιχτή μορφή XML, χωρίς κρυπτογράφηση. Και πάλι τα δεδομένα πρέπει να καταχωρηθούν στο σύστημα, ώστε να είναι προσβάσιμα απομακρυσμένα και με ομοιόμορφο τρόπο. Εφόσον υπάρχουν ήδη δεδομένα ενέργειας στο σύστημα, είναι σημαντικό Μπρίζες και Δαγκάνες να αποθηκεύουν τις μετρήσεις τους στην ίδια κλίμακα (Watt). Ο Οδηγός Έξυπνων Δαγκάνων (Smart Clamper Driver) που υλοποιήθηκε διαβάζει απευθείας τα δεδομένα από τη θύρα, τα επεξεργάζεται και τα αποθηκεύει στην ίδια μορφή με τα υπόλοιπα δεδομένα ενέργειας του συστήματος. Ο Οδηγός υλοποιήθηκε σε Java. Οδηγός Συσκευών Z-Wave Το πρωτόκολλο Z-Wave προέρχεται από μία σύμπραξη κατασκευαστών οικιακών αυτοματισμών. Είναι παρόμοιο με το πρωτόκολλο ZigBee σε πολλά σημεία: βασίζεται σε ασύρματη επικοινωνία μεγάλης εμβέλειας και υψηλού αριθμού κόμβων για να καλύπτει ένα ολόκληρο σπίτι και ενδεχομένως ένα κτίριο. Το Z-Wave επεκτείνει, όμως, τη διαλειτουργικότητά του και σε επίπεδο λειτουργίας συσκευών, αφού ορίζει κλάσεις αισθητήρων και οργάνων δράσης που υποστηρίζονται από όλους τους κατασκευαστές Z-Wave. Έτσι, διασφαλίζει τη συμβατότητα μεταξύ μίας πληθώρας λογισμικού και υλικού στην αγορά που περιλαμβάνει ελεγκτές, αισθητήρες και όργανα δράσης. Ένα βασικό πλεονέκτημα της πλατφόρμας είναι η πολύ μεγάλη ποικιλία έξυπνων συσκευών που προσφέρονται. Υπάρχουν συσκευές που ελέγχουν τα συστήματα πολυμέσων ε- νός σπιτιού, κινητήρες για πόρτες γκαράζ και παντζούρια, συστήματα ασφαλείας για ανίχνευση κίνησης και καπνού και για έλεγχο συναγερμού, θερμοστάτες και αισθητήρες περιβαλλοντικών συνθηκών. Επιπλέον, προσφέρεται πλήθος ελεγκτών, είτε με τη μορφή οθονών LED είτε με τη μορφή gateway ή USB Stick για έλεγχο από τον υπολογιστή. Στην προτεινόμενη εγκατάσταση συστημάτων που υποστηρίζονται από το awesome, οι συσκευές Z-Wave καλύπτουν τις πρόσθετες απαιτήσεις παρακολούθησης περιβάλλοντος. Πιο λεπτομερώς, οι παράμετροι που καλύπτονται από συσκευές Z-Wave περιλαμβάνουν την ανίχνευση κίνησης, καπνού και επιπέδων CO 2 στην ατμόσφαιρα. Κάποιοι αισθητήρες προσφέρουν, επίσης, μέτρηση θερμοκρασίας και φωτεινότητας, που παρέχονται ήδη στο σύστημα από τις Πλακέτες Αισθητήρων, όμως μπορούν να τοποθετηθούν σε παραπάνω σημεία ή να χρησιμοποιηθούν για επαλήθευση των μετρήσεων. Η διεπαφή του δικτύου Z-Wave με τον υπολογιστή γίνεται και πάλι μέσω του ελεγκτή με τη μορφή USB Stick. Για την υλοποίηση του Οδηγού Συσκευών Z-Wave (Z-Wave Driver) χρησιμοποιήθηκε η βιβλιοθήκη ανοιχτού κώδικα Open Z-Wave 44 και το λογισμικό ανοιχτού κώδικα zvirtualscences 45, σε γλώσσα C#. Το Virtual Scenes προσφέρει μία γραφική διεπαφή για την εύκολη Βιβλιοθήκη open-zwave ανοιχτού κώδικα: 45 Λογισμικό zvirtualscenes ανοιτχτού κώδικα:

133 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εικόνα 4.5. Γραφική Διεπαφή Χρήστη του Οδηγού Συσκευών Z-Wave διαχείριση του δικτύου συσκευών, ενώ η βιβλιοθήκη Open Z-Wave τη διεπαφή με τις συσκευές. Η αποδόμηση των πακέτων, που γίνεται εσωτερικά της βιβλιοθήκης, ακολουθεί τη μορφή πακέτων που παρουσιάζεται στην Εικόνα 4.2. Το πρόγραμμα οδηγού ευθύνεται για τη ρύθμιση των συσκευών, π.χ. για τη συχνότητα δειγματοληψίας και για την επεξεργασία των πακέτων. Οι συσκευές Z-Wave είναι push-based, όπως οι Πλακέτες Αισθητήρων, πράγμα που σημαίνει ότι τα πακέτα λαμβάνονται παθητικά και περιοδικά, χωρίς αίτημα. Ο Οδηγός φροντίζει, επίσης, να καταχωρούνται οι πληροφορίες θερμοκρασίας και υγρασίας στην ίδια κλίμακα και μονάδα μέτρησης με τις Πλακέτες Αισθητήρων. Με αυτόν τον τρόπο ένας πελάτης μπορεί διαφανώς να ερμηνεύσει τις τιμές, άσχετα αν προέρχονται από Πλακέτες Αισθητήρων ή Συσκευές Z-Wave. Στην περίπτωση των δικτύων Z-Wave οποιαδήποτε καινούρια συσκευή (νέου τύπου) μπορεί να προστεθεί στο σύστημα, χωρίς να αλλάξει την υλοποίηση. Στην Εικόνα 4.5 φαίνεται η γραφική διεπαφή του Οδηγού Συσκευών Z-Wave. Η διεπαφή προβάλλει μία λίστα με όλες τις συσχετισμένες συσκευές. Στο συγκεκριμένο παράδειγμα οι συσκευές περιλαμβάνουν αισθητήρες CO 2, καπνού, κίνησης και έναν ελεγκτή. Ο χρήστης μπορεί να δει την τελευταία κίνηση δεδομένων από τις συσκευές προς τον υπολογιστή, στην καρτέλα Log. Επίσης, μπορεί να γίνει χρήση όλων των λειτουργιών που προσφέρει ούτως ή άλλως το zvirtualscenes, όπως η δημιουργία σεναρίων αυτοματισμού (Scenes & Triggers) και προγραμματισμένων διεργασιών με χρήση των συσκευών Z-Wave. 133

134 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Επίπεδο Υπηρεσιών Ιστού Το υποεπίπεδο Υπηρεσιών Ιστού του awesome φιλοξενεί τις υπηρεσίες WSDL/SOAP που χρησιμεύουν ως απαραίτητη διεπαφή με το υψηλότερο επίπεδο της αρχιτεκτονικής του συστήματος, δηλαδή τις εφαρμογές. Κάθε Υπηρεσία Ιστού βασίζεται είτε σε λογισμικό, είτε σε υλικό και οι λειτουργίες του συστήματος ομαδοποιούνται λογικά ή με βάση το υλικό σε υπηρεσίες. Συνεπώς, μία υπηρεσία υλικού τυλίγει έναν και μόνο Οδηγό υλικού από το υποεπίπεδο ολοκλήρωσης, ενώ μια υπηρεσία λογισμικού προσφέρει αλληλένδετες λειτουργίες υλικού. Σε αυτό το επίπεδο εκτίθενται και συγκεκριμένα μηνύματα λάθους, ώστε να διαχειρισθούν κατάλληλα από τις εφαρμογές πελάτη. Σύμφωνα με αυτήν την ομαδοποίηση, το σύστημα προσφέρει υπηρεσίες εκ των οποίων η κάθε μία προσφέρει πολλές λειτουργίες (αντί για πολλές υπηρεσίες με μία λειτουργία ανά υπηρεσία). Στην Εικόνα 4.1 φαίνονται οι Υπηρεσίες που υλοποιεί το awesome και συγκεκριμένα τέσσερις υπηρεσίες υλικού (Έξυπνων Μπριζών, Πλακετών Αισθητήρων, Έξυπνων Δαγκάνων και Συσκευών Z-Wave) και μία υπηρεσία λογισμικού (ΤΠ). Οι υπηρεσίες υλοποιήθηκαν όλες σε Java, ενώ οι περιγραφές τους παράγονται από τη βιβλιοθήκη JAX-WS 46 και παρουσιάζονται αναλυτικά στη συνέχεια. Υπηρεσία Έξυπνων Μπριζών Οι λειτουργίες που προσφέρει η Υπηρεσία Έξυπνων Μπριζών φαίνονται στον Πίνακα 4.3 μαζί με τα δεδομένα εισόδου και εξόδου τους. Όπως είναι εμφανές, κάθε λειτουργία στοχεύει σε ένα συγκεκριμένο κόμβο του δικτύου Μπριζών, ο οποίος δίνεται σαν δεδομένο εισόδου με αναφορά στη μοναδική διεύθυνση ID του. Τα IDs είναι εμφανή πάνω στις ίδιες τις Μπρίζες και αποτελούν ουσιαστικά τη διεύθυνση MAC του κόμβου στο ZigBee δίκτυο. Η διαχείριση, η απομνημόνευση, αλλά και η εισαγωγή με ανάγνωση QR code των IDs αφορά τις εφαρμογές πελάτη και παρουσιάζεται στην αντίστοιχη ενότητα. Κάθε Υπηρεσία Έξυπνων Μπριζών στο περιβάλλον διαχειρίζεται έναν Οδηγό Έξυπνων Μπριζών και επομένως όλα τα δίκτυα Μπριζών που αντιστοιχούν στον server. Σε διαφορετικούς κατανεμημένους servers στο περιβάλλον ο πελάτης οφείλει πάλι να γνωρίζει ποιοι κόμβοι αντιστοιχούν στον καθένα. Όσον αφορά τις λειτουργίες, οι κύριες λειτουργίες των Μπριζών ως όργανα δράσης είναι οι Switch On, Switch Off και Switch. Οι λειτουργίες αυτές ανοίγουν ή κλείνουν την παροχή μίας Έξυπνης Μπρίζας. Ως αισθητήρες, οι Έξυπνες Μπρίζες προσφέρουν πολύ περισσότερες λειτουργίες. Η θεμελιώδης λειτουργία τους είναι η getpulses, που επιστρέφει τις ακατέργαστες πληροφορίες παλμού μίας Έξυπνης Μπρίζας. Η πληροφορία αυτή μπορεί να μετατραπεί σε ισχύ σύμφωνα με την εξίσωση (1), λειτουργία που προσφέρει η convertpulsestopower. Η λειτουργία getpower τυλίγει και τις δύο λειτουργίες σε μία, επιστρέφοντας απευθείας την κατανάλωση σε Watt. Μπορεί δηλαδή να θεωρηθεί μία (στατική) σύνθεση των δύο Υπηρεσιών Java JAX-WS:

135 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Ισχύς (Watt) = Παλμοί 3600 T, όπου Τ = s (1) Επιπλέον, σε διαφορετικές εγκαταστάσεις, οι μπρίζες μπορούν να «ρυθμιστούν» αυτόματα, αλλάζοντας την τιμή κάποιων εσωτερικών παραμέτρων Off total, Gain A και Gain B (calibration). Αυτοί οι παράμετροι μπορούν να επιστραφούν με τη λειτουργία getcalibration. Έπειτα, μπορούν να χρησιμοποιηθούν για να διορθώσουν και να αυξήσουν την ακρίβεια των ακατέργαστων παλμών, σύμφωνα με τη ρύθμιση του περιβάλλοντος, με τη χρήση της εξίσωσης (2). Η λειτουργία που προσφέρει τη διόρθωση παλμών είναι η correctpulses. Παλμοί ορθοί = (Παλμοί + Off noise ) 2 Gain B + (Παλμοί + Off noise ) Gain A (2) + Off total Οι ορθοί, ή αλλιώς διορθωμένοι, παλμοί μπορούν και πάλι να μετατραπούν σε (ορθή) ισχύ με τη λειτουργία convertpulsestopower. Ο συνδυασμός όλης της διαδικασίας σε μία μόνο λειτουργία δίνεται από τη getcorrectpower, η οποία εκτελεί εσωτερικά τις getcalibration, GetPulses, correctpulses και convertpulsestopower. Παρότι θα μπορούσε να προσφέρεται μόνο η τελευταία μέθοδος για όλες τις εφαρμογές, παραλείποντας όλες τις προηγούμενες ατομικές λειτουργίες, αυτό δεν αποτελεί βέλτιστη λύση για όλα τα σενάρια χρήσης. Λόγω διεπαφής με το υλικό δίκτυο Έξυπνων Μπριζών, κάθε λειτουργία απαιτεί υπολογίσιμο χρόνο απόκρισης (~1s), ενώ οι παράμετροι calibration είναι πάντα σταθεροί. Έτσι, είναι προτιμότερο για έναν πελάτη να λάβει μία φορά τις παραμέτρους και να τις διατηρεί σε μία λίστα. Κατόπιν, μπορεί να λαμβάνει μόνο τους παλμούς κάθε φορά και να τους μετατρέπει αντίστοιχα σε ισχύ. Αντίθετα, η ολοκληρωμένη λειτουργία είναι καταλληλότερη για σενάρια ενός ελαφρύ πελάτη χωρίς μνήμη (stateless), ο οποίος θα καλεί σπάνια την υπηρεσία. Τέλος, η λειτουργία getinfo επιστρέφει διάφορες επιπρόσθετες πληροφορίες των Έξυπνων Μπριζών, όπως το firmware version, το εσωτερικό ρολόι και τα περιεχόμενα της μνήμης buffer των κόμβων. Οι WSDL περιγραφές της υπηρεσίας, άλλα και όλων των υπόλοιπων υπηρεσιών του awesome παράγονται, επίσης, από τη βιβλιοθήκη JAX-WS. Με τη χρήση της βιβλιοθήκης το σύστημα awesome ακολουθεί μία μεθοδολογία περιγραφής που είναι αρκετά συγκεκριμένη, όμως μπορεί να περιγράψει οποιονδήποτε συνδυασμό δεδομένων εισόδου ή εξόδου. Όλες οι περιγραφές ορίζουν λειτουργίες με μηνύματα εισόδου και εξόδου, τα οποία με τη σειρά τους περιέχουν στοιχεία (elements). Κάθε στοιχείο αντιστοιχεί πάντα σε έναν σύνθετο τύπο (complex type), ο οποίος περιέχει μία σειρά (sequence) στοιχείων των επιθυμητών τύπων δεδομένων εισόδου ή εξόδου. Πρόσθετα, κάθε λειτουργία υποστηρίζει ενδεχομένως κάποια σφάλματα (faults). Στο awesome ορίζονται και υποστηρίζονται δύο είδη σφαλμάτων. Όλες οι λειτουργίες που δέχονται ως είσοδο ID συσκευής υποστηρίζουν το σφάλμα εσφαλμένης διεύθυνσης συσκευής InvalidDeviceAddressException. Επίσης, όλες οι λειτουργίες υποστηρίζουν το γενικό εσωτερικό σφάλμα υπηρεσίας InternalServiceException. Ως δείγμα παρατίθεται ολόκληρη η περιγραφή της Υπηρεσίας Έξυπνων Μπριζών στο Παράρτημα Α λόγω μεγάλου μεγέθους. 135

136 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Κώδικας Ορισμός περίπλοκων μηνυμάτων εισόδου, τύπων στην εξόδου περιγραφή και σφάλματος της Υπηρεσίας λειτουργιών Έξυπνων της Μπριζών Υπηρεσίας Έξυπνων Μπριζών <xs:complextype name="getpower"> <xs:sequence> <operation name="correctpulses"> <xs:element name= ID" type="xs:string" minoccurs=«0»/> <input </xs:sequence> wsam:action=" RectPulsesRequest" </xs:complextype> message="tns:correctpulses"/> <xs:complextype <output wsam:action=" <xs:sequence> message="tns:correctpulsesresponse"/> name="getpowerresponse"> <fault message="tns:internalserviceexception" <xs:element name="return" type="xs:double" name="internal- ServiceException" nillable="true" wsam:action=" </xs:sequence> minoccurs=«0» maxoccurs="unbounded"/> </operation> </xs:complextype> <operation <xs:complextype name="getinfo"> name="switch"> <input <xs:sequence> wsam:action=" InfoRequest" <xs:element name="id" type="xs:string" minoccurs=«0»/> message="tns:getinfo"/> <xs:element name="onoff" type="xs:string" <output minoccurs=«0»/> wsam:action=" InfoResponse" </xs:sequence> </xs:complextype> message="tns:getinforesponse"/> <xs:complextype <fault message="tns:invaliddeviceaddressexception" name="switchresponse"> name="invaliddeviceaddressexception" <xs:sequence/> wsam:ac- </xs:complextype> tion=" validdeviceaddressexception"/> <fault message="tns:internalserviceexception" name="internal- ServiceException" wsam:action=" </operation> Δύο ενδιαφέροντα αποσπάσματα της WSDL περιγραφής της υπηρεσίας εξετάζονται παρακάτω. Τα παραδείγματα αυτά αντιστοιχούν στον ορισμό λειτουργιών και περίπλοκων τύπων της Υπηρεσίας Έξυπνων Μπριζών. Συγκεκριμένα, στο κομμάτι των λειτουργιών ορίζονται τα ονόματα των μηνυμάτων εισόδου και εξόδου με το όνομα της λειτουργίας και τις καταλήξεις Request και Response αντίστοιχα. Παράλληλα, ορίζονται τα σφάλματα που μπορεί να επιστρέψει η λειτουργία. Στο παρακάτω παράδειγμα φαίνεται ο ορισμός δεδομένων εισόδου και εξόδου, αλλά και σφάλματος για τη λειτουργία correctpulses, η οποία επιστρέφει το γενικό σφάλμα InternalServiceException. Οι υπηρεσίες που δέχονται ως είσοδο το ID μίας συσκευής, π.χ. η getinfo, μπορεί να επιστρέψουν, εναλλακτικά, InvalidDeviceAddressException, όπως ορίζεται στον Κώδικα 4.1. Ο ορισμός των περίπλοκων τύπων παρουσιάζει ενδιαφέρον, επειδή εκεί ορίζεται ο τύπος δεδομένων εισόδου και εξόδου μίας λειτουργίας. Στο ακόλουθο παράδειγμα η λειτουργία getpower δέχεται ένα ID της μορφής String, ενώ επιστρέφει την κατανάλωση ως δεκαδικό διπλής ακρίβειας (double). Από την άλλη, η λειτουργία Switch δέχεται ομοίως ένα 136

137 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού ID, αλλά δεν επιστρέφει τίποτα. Οι τύποι δεδομένων ενθυλακώνονται πάντα σε μία σειρά στοιχείων, όπως φαίνεται στον Κώδικα 4.2. Υπηρεσία Πλακετών Αισθητήρων Όλες οι λειτουργίες της Υπηρεσίας Πλακετών Αισθητήρων τυλίγουν στην ουσία τις μεθόδους του Οδηγού Πλακετών Αισθητών. Οι Πλακέτες Αισθητήρων έχουν και αυτές προκαθορισμένες και μοναδικές διευθύνσεις MAC, που παίζουν τον ρόλο του ID. Επομένως, χρησιμοποιούνται σαν είσοδος των λειτουργιών για να στοχευθεί μια συγκεκριμένη Πλακέτα Αισθητήρων του δικτύου. Ο Πίνακας 4.4 παρουσιάζει τις μεθόδους που επιστρέφουν τα δεδομένα θερμοκρασίας, υγρασίας και φωτεινότητας από τους αισθητήρες. Πρόσθετα, προσφέρονται βοηθητικές λειτουργίες για τη μέτρηση των κόμβων του δικτύου και την ανάκτηση όλων των διευθύνσεων. Πίνακας 4.3. Λειτουργίες της Υπηρεσίας Έξυπνων Μπριζών Λειτουργία Περιγραφή Είσοδος Έξοδος SwitchOff Απενεργοποίηση Μπρίζας ID - SwitchOn Ενεργοποίηση Μπρίζας ID - Switch Απ/Ενεργοποίηση Μπρίζας ID, Κατάσταση - getstatus Επιστρέφει την κατάσταση ID Κατάσταση getpulses Επιστρέφει τους παλμούς ID Παλμοί convertpulsestopower Μετατροπή παλμών σε ισχύ Παλμοί Ισχύς (W) getpower Επιστρέφει την ισχύ ID Ισχύς (W) getcalibration Επιστρέφει παραμέτρους ρύθμισης ID Ρύθμιση getcorrectpower Επιστρέφει ορθή ισχύ ID Ισχύς (W) correctpulses Διόρθωση παλμών Παλμοί, Ρύθμιση Παλμοί getinfo Επιστρέφει πληροφορίες ID Πληροφορίες Πίνακας 4.4. Λειτουργίες της Υπηρεσίας Πλακετών Αισθητήρων Λειτουργία Περιγραφή Είσοδος Έξοδος getnodecount Επιστρέφει τον αριθμό κόμβων ID Αριθμός κόμβων getids Ανάκτηση όλων των διευθύνσεων ID Λίστα από IDs getluminance Επιστρέφει τη μέτρηση φωτεινότητας ID Φωτεινότητα (cd/m2) gethumidity Επιστρέφει τη μέτρηση υγρασίας ID Υγρασία (%) gettemperature Επιστρέφει τη μέτρηση θερμοκρασίας ID Θερμοκρασία (Celsius) Πίνακας 4.5. Λειτουργίες της Υπηρεσίας Έξυπνων Δαγκάνων Λειτουργία Περιγραφή Είσοδος Έξοδος getpower Επιστρέφει όλες τις μετρήσεις αισθητήρων ενός πομπού ID Ώρα εγγραφής, Μετρήσεις ισχύος (W) getpowersum Επιστρέφει το άθροισμα των μετρήσεων ενός πομπού ID Ώρα εγγραφής, Άθροισμα μετρήσεων(w) 137

138 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πίνακας 4.6. Λειτουργίες της Υπηρεσίας Συσκευών Z-Wave Λειτουργία Περιγραφή Είσοδος Έξοδος getnodeids Ανάκτηση όλων των IDs - Λίστα από IDs getbattery Επιστρέφει επίπεδο μπαταρίας ID % Μπαταρίας getawake Επιστρέφει την κατάσταση του κόμβου ID Κατάσταση (0-1) getversion Επιστρέφει την έκδοση λογισμικού ID Έκδοση getspecifications Επιστρέφει τα χαρακτηριστικά του κόμβου ID Χαρακτηριστικά getmotion Επιστρέφει μέτρηση ανίχνευσης κίνησης ID Κίνηση (0-1) getpirmotion Επιστρέφει μέτρηση ανίχνευσης κίνησης ID Κίνηση (1-255) gettemperature Επιστρέφει μέτρηση θερμοκρασίας ID Θερμοκρασία ( ο F) getluminance Επιστρέφει μέτρηση φωτεινότητας ID Φωτεινότητα (1-40) getsmoke Επιστρέφει τιμή ανίχνευσης καπνού ID Καπνός (0-1) Πίνακας 4.7. Λειτουργίες της Υπηρεσίας ΤΠ Λειτουργία Περιγραφή Είσοδος Έξοδος wake Ενεργοποίηση υπολογιστή MAC, IP Address - wakemac Ενεργοποίηση υπολογιστή με βάση MAC MAC Address - wakeip Ενεργοποίηση με βάση IP IP Address - getip Εύρεση IP MAC Address IP Address getmac Εύρεση MAC IP Address MAC Address pingip Ping με βάση IP IP Address IP online shutdown Απενεργοποίηση υπολογιστή IP Address - restart Επανεκκίνηση υπολογιστή IP Address - sleep Αναστολή λειτουργίας IP Address - hibernate Αδρανοποίηση υπολογιστή IP Address - getservercpu Ανάκτηση χρήσης επεξεργαστή - % CPU Usage getservercpuavg Ανάκτηση μέσης χρήσης επεξεργαστή Interval (sec) % CPU Usage Υπηρεσία Έξυπνων Δαγκάνων Ομοίως με τις υπόλοιπες υπηρεσίες, η Υπηρεσία Έξυπνων Δαγκάνων δίνει πρόσβαση στις μετρήσεις μέσω του δικτύου Έξυπνων Δαγκάνων, όπως φαίνεται στον Πίνακα 4.5. Κάθε πομπός στο δίκτυο Δαγκάνων μπορεί να έχει μέχρι τρεις αισθητήρες συνδεδεμένους, οι οποίοι μετρούν το τριφασικό ρεύμα (έναν για κάθε φάση). Η λειτουργία getpower επιστρέφει όλες τις μετρήσεις του επιθυμητού πομπού (από μία έως τρεις μετρήσεις) σε Watt και την εγγραφή ώρας στην οποία αντιστοιχούν οι μετρήσεις. Χάριν πληρότητας, η μέθοδος getpowersum επιστρέφει το σύνολο του τριφασικού ρεύματος ενός πομπού, δηλαδή το άθροισμα της ισχύος των τριών μετρήσεων. Υπηρεσία Συσκευών Z-Wave Η Υπηρεσία Συσκευών Z-Wave εκθέτει τις λειτουργίες του αντίστοιχου οδηγού, παρέχοντας συγκεκριμένες λειτουργίες για τις συσκευές που έχουν προβλεφθεί στην εγκατάσταση. Ειδικότερα, οι υπάρχουσες κλάσεις συσκευών που υποστηρίζονται είναι ο αισθητήρας κίνησης 138

139 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού με υπέρυθρες (Passive Infrared PIR), ο αισθητήρας κίνησης (γενικού τύπου), ο ανιχνευτής καπνού και ο πολυαισθητήρας θερμοκρασίας, φωτεινότητας και κίνησης. Οι λειτουργίες που προσφέρονται από την υπηρεσία και υλοποιούνται από τον οδηγό φαίνονται στον Πίνακα 4.6. Παρόμοια με άλλες υπηρεσίες, σαν είσοδος δίνεται ο επιθυμητός κόμβος του δικτύου και σαν έξοδος η τιμή του αισθητήρα, ενώ υπάρχουν και βοηθητικές λειτουργίες για την α- νάκτηση των IDs των κόμβων, του επιπέδου μπαταρίας και της κατάστασης του κόμβου (αδρανής ή ενεργή). Υπηρεσία Τεχνολογιών Πληροφορικής Η Υπηρεσία ΤΠ (Τεχνολογιών Πληροφορικής) αναφέρεται σε λειτουργίες βασισμένες αμιγώς στο λογισμικό, που δεν αντιστοιχούν σε κάποιον οδηγό συσκευής. Ο σκοπός της υπηρεσίας είναι να παρακολουθεί και να διαχειρίζεται την τρέχουσα υποδομή ΤΠ εξοπλισμού με τη χρήση υπαρχόντων τεχνολογιών. Κίνητρο για την κατασκευή αυτών των υπηρεσιών αποτέλεσε το γεγονός ότι οι λειτουργίες Switch On και Off των Έξυπνων Μπριζών είναι ακατάλληλες για τον εξοπλισμό ΤΠ του κτιρίου, αφού οι υπολογιστές πρέπει να απενεργοποιηθούν πριν διακοπεί η παροχή τους. Ακόμη, οι υπολογιστές δεν ενεργοποιούνται πάντοτε με την παροχή ρεύματος, ούτε μπορούν να επανέλθουν από την αδρανοποίηση. Η Υπηρεσία ΤΠ υλοποιεί μία βιβλιοθήκη τεχνολογιών Wake On LAN (WOL) (Bui, 2006) για την ενεργοποίηση υπολογιστών και scripts λειτουργικών συστημάτων για την απενεργοποίηση αντίστοιχα. Η λειτουργία WOL αντιστοιχεί στη λειτουργία wakecomputer και έχει τη δυνατότητα να ξυπνήσει έναν υπολογιστή του LAN δικτύου του server από κατάσταση ύπνου, αδρανοποίησης ή απενεργοποίησης (Sleep, Hibernate, Off). Αυτό υλοποιείται με την αποστολή ενός «Μαγικού Πακέτου» (Magic Packet), το οποίο περιέχει την IP του τερματικού-προορισμού και τη MAC διεύθυνσή του. Επομένως, οι διευθύνσεις αυτές αποτελούν την είσοδο της μεθόδου. Για διευκόλυνση, προσφέρονται λειτουργίες που δίνουν την αντιστοίχιση MAC ή IP, αν η μία από αυτές είναι γνωστή (getmac, getip). Σύνθετες λειτουργίες που περιέχουν αυτή τη μέθοδο προσφέρουν τη λειτουργία WOL δεδομένης είτε της IP, είτε της MAC: wakeip, wakemac. Όσον αφορά στον τερματισμό ή στην αδρανοποίηση ενός υπολογιστή, δεν υπάρχει ανάλογη τεχνολογία. Για αυτόν τον λόγο, υλοποιήθηκαν scripts για Linux και Windows λειτουργικά συστήματα που μπορούν να απενεργοποιήσουν, επανεκκινήσουν, κοιμίσουν και αδρανοποιήσουν έναν υπολογιστή (shutdown, restart, sleep, hibernate). Οι ομώνυμες λειτουργίες δέχονται ξανά ως είσοδο την IP του υπολογιστή. Επιπλέον, προσφέρονται μέθοδοι για το τρέχον και το μέσο ποσοστό επεξεργαστικής ισχύς του server που χρησιμοποιείται. Το σύνολο των λειτουργιών της υπηρεσίας εμφανίζονται στον Πίνακα Μεσολαβητής Υπηρεσιών awesome Ο Μεσολαβητής Υπηρεσιών, που υλοποιήθηκε για το σύστημα awesome, είναι υπεύθυνος για την καταγραφή και τη δημοσίευση των διαθέσιμων υπηρεσιών του, σύμφωνα με τα πρότυπα της Αρχιτεκτονικής Προσανατολισμένης σε Υπηρεσίες. Το ευρύτερο awesome σύστημα 139

140 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 4.6. Γραφική διεπαφή του Μεσολαβητή Υπηρεσιών awesome αποτελείται από πολλούς κατανεμημένους awesome servers, οι οποίοι διαθέτουν διάφορους συνδυασμούς των υπηρεσιών awesome. Στο περιβάλλον βρίσκονται διάφοροι πελάτες Υπηρεσιών είτε αυτοί χειρίζονται από ανθρώπους χρήστες, είτε είναι αμιγώς πράκτορες λογισμικού. Αυτοί οι πελάτες δεν μπορούν να γνωρίζουν ανά πάσα στιγμή την τοποθεσία (URL) και τη διαθεσιμότητα όλων των διαφορετικών υπηρεσιών. Αυτή τη λειτουργία την αναλαμβάνει δυναμικά ο Μεσολαβητής Υπηρεσιών, ενώ οι πελάτες έρχονται σε επαφή μόνο μαζί του για την εύρεση υπηρεσιών. Ο σκοπός του Μεσολαβητή Υπηρεσιών είναι διπλής φύσης: 1) να διατηρεί μία λίστα των κατανεμημένων υπηρεσιών στο περιβάλλον, ώστε να είναι πάντα διαθέσιμη ως μοναδικό σημείο αναφοράς και 2) να την ανανεώνει κάθε στιγμή, αφαιρώντας τις υπηρεσίες που βγαίνουν εκτός σύνδεσης (λόγω σφάλματος ή εσκεμμένα). Για την υλοποίηση του Μεσολαβητή λήφθηκαν υπόψιν υπάρχοντα πρότυπα και συγκεκριμένα το πρότυπο WS-Discovery της στοίβας WS-* προτύπων (Modi and Kemp, 2009). Το WS-Discovery είναι μία τεχνολογία που ανακαλύπτει αυτόματα μέσω IP multicast και TCP/UDP θύρες τα προσφερόμενα WSDL/SOAP services ενός τοπικού δικτύου. Η τεχνολογία είναι εξαιρετικά εδραιωμένη, καθώς χρησιμοποιείται στο λειτουργικό σύστημα Windows (Vista, 7 και 8) για την ανακάλυψη υπολογιστών και εκτυπωτών, ενώ η ίδια η HP την ενσωματώνει στους εκτυπωτές της από το Επομένως, με τη χρήση της βιβλιοθήκης WS-Discovery ο μεσολαβητής είναι σε θέση να ενημερώνει ενεργητικά τη λίστα, χωρίς να χρειάζεται παθητική ενημέρωση από τους servers. Ωστόσο, αυτή η δυνατότητα είναι επίσης διαθέσιμη. Αν και οι υπηρεσίες του τοπικού 140

141 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού δικτύου του κτιρίου καλύπτουν απόλυτα τα σενάρια χρήσης του συστήματος, ακόμα και ε- ξωτερικές υπηρεσίες μπορούν να εγγραφούν στον κατάλογο με χρήση της αντίστοιχης μεθόδου. Οι λειτουργίες που προσφέρει εξωτερικά ο Μεσολαβητής είναι δύο: 1) η καταγραφή μίας νέας υπηρεσίας, προς χρήση των servers και 2) η ανάκτηση της λίστας των εγγεγραμμένων υπηρεσιών, προς χρήση των πελατών. Για να μπορεί να χρησιμοποιηθεί από τους πελάτες, αλλά και τους servers, ο ίδιος ο Μεσολαβητής προσφέρει διεπαφή ως WSDL/SOAP υπηρεσία. Οι λειτουργίες παρουσιάζονται σε Web διεπαφή χρήστη που προσφέρει ο Μεσολαβητής, όπως αυτή φαίνεται στην Εικόνα 4.6. Η εφαρμογή μπορεί να χρησιμοποιηθεί από ε- πόπτες ανθρώπους που επιθυμούν να προβάλλουν τις διαθέσιμες υπηρεσίες ή να καταγράψουν μία καινούρια. Συνολικά ο Μεσολαβητής προσφέρει μεγάλη δυναμικότητα στο περιβάλλον και κάνει τη συντήρησή του πολύ πιο εύκολη, χάριν στην αυτοματοποιημένη ανακάλυψη. Στο πεδίο της επιλογής Υπηρεσιών Ιστού, έχουν γίνει περαιτέρω βήματα με την προσθήκη σημασιολογίας. Οι τεχνικές αυτές, ωστόσο, αφορούν πολύ πιο ανοιχτά περιβάλλοντα όπου ο πελάτης θα πρέπει να επιλέξει μέσα από χιλιάδες υπηρεσίες και επομένως εκτείνονται πέραν του σκοπού της ανακάλυψης μέσα σε ένα μόνο σύστημα Διάχυτης Νοημοσύνης. Μία τέτοια τεχνική που εφαρμόστηκε παρουσιάζεται σε επόμενο κεφάλαιο Εγκατάσταση του awesome στο Smart IHU Το ενδιάμεσο λογισμικό awesome, με μια πιο μικροσκοπική ματιά, είναι ένα σύνολο από οδηγούς για την υποστήριξη έξυπνων συσκευών και υπηρεσιών, χρήσιμων για ένα περιβάλλον Διάχυτης Νοημοσύνης, όπως αυτά περιγράφηκαν στις προηγούμενες ενότητες. Ένα σύστημα Διάχυτης Νοημοσύνης μπορεί να υποστηριχθεί με μία εγκατάσταση του awesome με διαφορετικές τοπολογίες και υλικό. Σε αυτή την ενότητα περιγράφεται μια τέτοια εγκατάσταση, η οποία εξυπηρετεί ως proof-of-concept, αλλά και ως βάση για πειράματα που παρουσιάζονται σε επόμενα κεφάλαια της διατριβής. Η εγκατάσταση αυτή αποτελεί μέρος του συστήματος Έξυπνου Κτιρίου Smart IHU, στο κτίριο του Διεθνούς Πανεπιστημίου Ελλάδος (IHU International Hellenic University) 47. Στην παρούσα του μορφή το σύστημα Smart IHU καλύπτει το κτίριο Α του IHU και ειδικά το ισόγειο και τον πρώτο όροφο. Για να καλυφθεί η δεδομένη έκταση ένας μόνο server δεν επαρκεί, σύμφωνα με τους τεχνικούς περιορισμούς που παρουσιάστηκαν παραπάνω (εμβέλεια ασύρματων αισθητήρων). Για να διατηρηθεί χαμηλή η κατανάλωση του ίδιου του συστήματος, αλλά και ο όγκος των μηχανημάτων, χρησιμοποιήθηκε ένας PC, ένα netbook και ένας μικρο-υπολογιστής. Με την εγκατάσταση εξετάζεται και επιβεβαιώνεται η δυνατότητα του συστήματος να κλιμακώνεται και να επεκτείνεται χωρικά με περισσότερους servers. Συν τοις άλλοις, επιβεβαιώνεται η ευκολία επέκτασης (deployability) σε διαφορετικό υλικό, διαφορετικό λειτουργικό σύστημα και με λιγότερους πόρους

142 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 4.7. Εγκατάσταση δικτύων συσκευών και awesome web servers στο ισόγειου του Διεθνούς Πανεπιστημίου Ελλάδος Η εγκατάσταση συνολικά περιλαμβάνει τρεις servers και πολλά δίκτυα συσκευών. Οι δύο servers βρίσκονται στο ισόγειο, που είναι πιο απαιτητικό, ενώ ο τρίτος καλύπτει τα τρία δωμάτια, που ενδιαφέρουν, στον πρώτο όροφο. Τα δίκτυα του ισογείου, η κάλυψή τους και οι αντίστοιχοι servers φαίνονται ανά είδος στην Εικόνα 4.7. Στην εικόνα βλέπουμε συνοπτικά τρία δίκτυα mesh Έξυπνων Μπριζών που αντιστοιχούν σε δύο μόνο servers και ένα mesh ZWave με έναν server. Αντίστοιχα, οι Πλακέτες Αισθητήρων σχηματίζουν δύο δίκτυα αστέρα 142

143 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εικόνα 4.8. Συνύπαρξη πολλών δικτύων συσκευών στην εγκατάσταση του ισογείου του κτιρίου με έναν server και οι Έξυπνες Δαγκάνες δύο δίκτυα αστέρα σε δύο servers. Η συνύπαρξη των δικτύων στο ίδιο σχήμα φαίνεται στην Εικόνα 4.8. Παρακάτω αναλύεται βήμα προς βήμα η εγκατάσταση και οι περιορισμοί που οδήγησαν σε αυτήν την τοπολογία δικτύου. Ο πρώτος περιορισμός για την τοποθέτηση πηγάζει από την τοποθεσία της κεντρικής παροχής ρεύματος, η οποία βρίσκεται στο υπόγειο, κάτω από την υποδοχή (Reception). Δύο σετ των τριών Δαγκανών τοποθετούνται εκεί, ώστε αθροιστικά να δίνουν το σύνολο της ε- νέργειας του κτιρίου. Μία Τρίτη Δαγκάνα τοποθετείται στο Data Center (server room) του κτιρίου. Σαν αποτέλεσμα, ο πρώτος awesome server τοποθετείται στο γραφείο SciTech 2 για να βρίσκεται στο ενδιάμεσο της εμβέλειας των δύο RF πομπών και αναλαμβάνει τη συλλογή δεδομένων όλων των συσκευών εντός της εμβέλειάς του, δηλαδή Δαγκανών, Μπριζών και Z- Wave. Συγκεκριμένα, τοποθετείται κοντύτερα στην υποδοχή και τις σκάλες, καθώς η μετάδοση διαμέσου του πατώματος από το υπόγειο στο SciTech 2 είναι οριακά δυνατή. Μία τέταρτη Δαγκάνα τοποθετείται και πάλι στον κεντρικό πίνακα για να μετράει μόνο την παροχή του κεντρικού συστήματος ψύξης του κτιρίου. 143

144 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Έξυπνες Μπρίζες συνδέονται σε όλες τις ηλεκτρικές συσκευές αυτού του τμήματος, συμπεριλαμβανομένων του φωτισμού, των υπολογιστών του προσωπικού, των εκτυπωτών και πολυμηχανημάτων, των οθονών στην υποδοχή και όλης της ηλεκτρικής ψύξης και θέρμανσης. Η Εικόνα 4.9 δείχνει την εγκατάσταση Μπριζών στους servers του IHU. Δηλαδή, ενώ μία Έξυπνη Δαγκάνα μετράει την κατανάλωση όλου του Data Center, από τη μέτρηση μπορούν να αφαιρεθούν οι Μπρίζες για τη στοχευμένη παρατήρηση των server, της ψύξης και των UPS μέσα στον χώρο. Η εγκατάσταση Συσκευών Z-Wave καλύπτει όλο τον όροφο με έναν αισθητήρα ανίχνευσης κίνησης σε κάθε ένα από τα έντεκα δωμάτια. Επιπλέον, τοποθετήθηκαν αισθητήρες ανίχνευσης καπνού και επιπέδου CO 2 σε τέσσερα δωμάτια μεγάλου ενδιαφέροντος: στην αίθουσα διαλέξεων Lecture Room R1, στα δύο εργαστήρια υπολογιστών LAB 1 και LAB 2 και στο αμφιθέατρο Auditorium. Η εμβέλεια και ο αριθμός των συσκευών επιτρέπουν την ένταξή τους σε ένα μόνο δίκτυο Z-Wave, το οποίο διαχειρίζεται ο πρώτος awesome server, με τη μορφή PC. Εικόνα 4.9. Έξυπνες Μπρίζες εγκατεστημένες στο Data Center του κτιρίου Εικόνα Εγκατάσταση συσκευών στο εργαστήριο υπολογιστών LAB 1 144

145 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Εικόνα Αλληλεπίδραση servers, Μεσολαβητή και πελατών στην εγκατάσταση awesome του IHU Ο δεύτερος server, με τη μορφή netbook, τοποθετείται στη βόρεια πλευρά του ισογείου, στο εργαστήριο Lab 2. Με αυτόν τον τρόπο χειρίζεται τις Έξυπνες Μπρίζες των αιθουσών της σχολής Ανθρωπιστικών σπουδών (Humanities 1, 2), των γραφείων καριέρας (Career 1, 2), δύο εργαστηρίων υπολογιστών (Lab 1,2) και της υποδοχής (Reception). Στον ίδιο server συνδέονται τέσσερις Έξυπνες Δαγκάνες, που αντιστοιχούν στη συνολική κατανάλωση των υ- πολογιστών των Lab 1 και 2, του κυλικείου (Coffee Shop) και του αμφιθέατρου (Auditorium). Ο server είναι, επίσης, υπεύθυνος για τη συλλογή δεδομένων από τα δύο δίκτυα Πλακετών Αισθητήρων που καλύπτουν τόσο το βόρειο, όσο και το νότιο μέρος του ισογείου. Οι Πλακέτες Αισθητήρων μετρούν τις περιβαλλοντικές συνθήκες (θερμοκρασία, υγρασία και φωτεινότητα) σε κάθε δωμάτιο του ισογείου. Τέλος, ο server χειρίζεται την ενεργοποίηση/απενεργοποίηση του ΤΠΕ εξοπλισμού μέσω της Υπηρεσίας ΤΠΕ για όλο τον όροφο. Η Εικόνα 4.10 δείχνει την πραγματική όψη της εγκατάστασης των Έξυπνων Μπριζών, Πλακετών Αισθητήρων και Συσκευών Z-Wave. Όπως είναι εμφανές, η εγκατάσταση είναι μη-παρεμβατική (unobtrusive), αφού δε γίνεται αντιληπτή από τους επισκέπτες. Ένας τρίτος server έχει εγκατασταθεί στον τρίτο όροφο για να χειρίζεται τις αντίστοιχες Έξυπνες Μπρίζες και Συσκευές Z-Wave ανίχνευσης κίνησης. Ομοίως, οι συσκευές αυτές καλύπτουν όλες τις ηλεκτρικές συσκευές και την ανίχνευση κίνησης στα τρία δωμάτια της Σχολής Οικονομίας (Economics 1, 2, 3). Ο server χειρίζεται σαφώς μικρότερο φόρτο, για αυτό έχει τη μορφή μικρο-υπολογιστή. Οι επιδόσεις και η κατανάλωση αυτού του server εξετάζονται στην ενότητα «Αποτελέσματα». Η Εικόνα 4.11 δείχνει την αλληλεπίδραση servers, μεσολαβητή και εφαρμογών στο περιβάλλον του κτιρίου σχηματικά, σύμφωνα με την Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες. Στο περιβάλλον υπάρχουν servers διαφορετικού υλικού netbook, PC και μικρουπολογιστή. Οι υπηρεσίες ανιχνεύονται στο τοπικό δίκτυο από τον Μεσολαβητή, που φιλοξενείται επίσης στον πρώτο server. Οι πελάτες έχουν τη μορφή προσωπικών υπολογιστών, web πελατών ή smartphones και εντοπίζουν τις υπηρεσίες μέσω του Μεσολαβητή. Οι διαφορετικές εφαρμογές πελάτη και οι λειτουργίες τους παρουσιάζονται στο έκτο κεφάλαιο. 145

146 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 4.3 Αποτελέσματα Για να μετρηθεί και να αξιολογηθεί η αξιοπιστία, οι επιδόσεις και η ενεργειακή απόδοση του προτεινόμενου συστήματος ακολούθησε μία σειρά από πειράματα. Σημειώνεται ότι η ενεργειακή μελέτη σε αυτό το στάδιο δεν εξετάζει την εξοικονόμηση ενέργειας σε επίπεδο συσκευών και κτιρίου, επειδή αυτή επιτυγχάνεται από τις εφαρμογές πελάτη του awesome και όχι από το ίδιο το λογισμικό, επομένως παρουσιάζεται σε ξεχωριστό κεφάλαιο. Στην παρούσα μελέτη εξετάζονται τα χαρακτηριστικά των υπηρεσιών, αλλά και των ίδιων των servers ως υλικό. Συγκεκριμένα, δοκιμάστηκαν τρεις διαφορετικές ρυθμίσεις υλικού, που αντιστοιχούν σε ένα PC, ένα Netbook και ένα Board (μικρο-υπολογιστή) με τα χαρακτηριστικά που φαίνονται στον Πίνακα 4.8. Στο πρώτο πείραμα ο στόχος ήταν η εύρεση της κατανάλωσης του κάθε μηχανήματος σε αδρανή κατάσταση. Όλοι οι servers δοκιμάστηκαν σε διαφορετικά σενάρια, δηλαδή συνδυασμούς αδρανούς (σχεδόν) φόρτου CPU και ενεργοποιημένων ή απενεργοποιημένων καναλιών εισόδου/εξόδου (I/O), χωρίς κίνηση, ώστε να μετρηθεί η μέση κατανάλωση σε συνθήκες αδράνειας. Το Σενάριο 1 είναι το πιο απαιτητικό, αφού περιλαμβάνει τη λειτουργία του μηχανήματος σαν awesome server, δίχως, όμως, να δέχεται κλήσεις με πολλές συνδεδεμένες συσκευές I/O. Στα σενάρια 2, 3 και 4 δοκιμάστηκαν συνδυασμοί όπου ο awesome server είναι ή δεν είναι εγκατεστημένος και οι συσκευές I/O είναι ή δεν είναι συνδεδεμένες, πάντα σε κατάσταση αδράνειας. Όπως φαίνεται στον Πίνακα 4.9, η κατανάλωση αδράνειας του Board είναι σταθερά το 4% του PC (εξοικονομεί 96%), ενώ αυτή του Netbook αντιστοιχεί στο 28% του PC (εξοικονομεί 72%). Στο δεύτερο πείραμα διερευνήθηκε η κατανάλωση κατά τη λειτουργία του συστήματος, δηλαδή κατά τη διάρκεια κλήσεων υπηρεσιών. Για τους σκοπούς του πειράματος χρησιμοποιήθηκε η ίδια λειτουργία γρήγορης απόκρισης Switch της Υπηρεσίας Έξυπνων Μπριζών, που κάνει χρήση του καναλιού I/O (USB). Συγκεκριμένα, έγιναν 120 συνεχόμενες κλήσεις σε κάθε δοκιμή. Η επί τοις εκατό κατανομή του χρόνου απόκρισης κατά τις 120 κλήσεις ανά μηχάνημα φαίνεται στην Εικόνα 4.12, ενώ ο Πίνακας 4.10 δίνει τις αντίστοιχες, αναλυτικές τιμές. Γίνεται φανερό πως το Board είναι αισθητά πιο αργό, αφού το 91% των κλήσεων διαρκούν 3s, ενώ το 4% φτάνει τα 4s. Αντίθετα, τα Netbook και PC είναι πιο γρήγορα, διότι εγγυώνται απόκριση 1s κατά 82.5% και μπορούν να θεωρηθούν ισοδύναμα, με μόλις 0.1% των κλήσεων στο Netbook να διαρκεί 1s παραπάνω από το PC. Κατά το ίδιο πείραμα, η απαιτούμενη ισχύς του κάθε server καταγράφηκε με τη χρήση μιας εξωτερικής υπηρεσίας Έξυπνων Μπριζών, για να μην επηρεάζεται το πείραμα. Ο Πίνακας 4.11 δείχνει τη μέση κατανάλωση ισχύος ανά μηχάνημα. Η κατανάλωση χωρίζεται Πίνακας 4.8. Χαρακτηριστικά υπολογιστών που χρησιμοποιήθηκαν για τα πειράματα Είδος Μοντέλο CPU Συχνότητα CPU Μνήμη RAM PC P4 1.8 Ghz 1GB DDR2 Netbook Atom 2x1.66 Ghz 1GB DDR3 Board ARM9 400Mhz 64MB RAM 146

147 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Πίνακας 4.9. Μέση κατανάλωση συνθηκών αδράνειας κατά το πρώτο πείραμα Σενάριο Board Netbook PC W W W W W W W W W W W W Πίνακας Κατανομή % του χρόνου απόκρισης κατά το δεύτερο πείραμα Χρόνος Απόκρισης (s) Board (%) Netbook PC (%) Εικόνα Απεικόνιση κατανομής χρόνου απόκρισης κατά το δεύτερο πείραμα στην περίοδο αδράνειας μεταξύ των κλήσεων και στην ενεργή κατά τη διάρκεια επεξεργασίας των αιτημάτων. Επίσης, παρουσιάζεται η διαφορά τους. Τα αποτελέσματα απεικονίζονται γραφικά στην Εικόνα Συμπερασματικά, αφενός επιβεβαιώνεται η κατανάλωση α- δράνειας που μετρήθηκε μεμονωμένα στο πρώτο πείραμα και αφετέρου βλέπουμε ότι η διαφορά ενεργής και ανενεργής κατανάλωσης στα Board και Netbook είναι αμελητέα, σε αντίθεση με το PC, όπου υπάρχει αύξηση 70%. Το Board καταναλώνει μόνο το 3% του PC (εξοικονόμηση 97%), ενώ το Netbook το 18% του PC (εξοικονόμηση 82%) κατά την ενεργή φάση. Η Εικόνα 4.14 δείχνει την εξέλιξη της κατανάλωσης ισχύος στον χρόνο, κατά τη διάρκεια του δεύτερου πειράματος. Χάριν πληρότητας, συμπεριλαμβάνεται η εκδοχή του Netbook με ανοιχτή οθόνη (περίπου 4W). Εκτός από τις μεγάλες διαφορές στην κατανάλωση ισχύος που παρατηρήθηκαν παραπάνω, γίνεται ακόμα πιο αισθητός ο μεγάλος χρόνος απόκρισης του Board. Παρατηρείται 40% μεγαλύτερος χρόνος απόκρισης και σαν αποτέλεσμα 40% μεγαλύτερη διάρκεια εκτέλεσης του πειράματος σε σχέση με το Netbook. 147

148 00' 00'' 00' 15'' 00' 30'' 00' 46'' 01' 01'' 01' 16'' 01' 31'' 01' 46'' 02' 02'' 02' 17'' 02' 32'' 02' 47'' 03' 03'' 03' 18'' 03' 33'' 03' 48'' 04' 03'' 04' 19'' 04' 34'' 04' 49'' 05' 04'' 05' 20'' 05' 35'' 05' 50'' 06' 05'' 06' 20'' Iσχύς (W) Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πίνακας Μέση κατανάλωση ισχύος κατά το δεύτερο πείραμα Κατάσταση Board (W) PC (W) Netbook (W) Ανενεργή Ενεργή Διαφορά Μέση Κατανάλωση Ισχύος (W) Ανενεργή Ενεργή Διαφορά Board (W) Netbook (W) PC (W) Εικόνα Απεικόνιση μέσης κατανάλωσης ισχύος κατά το δεύτερο πείραμα Κατανάλωση Ισχύος στο Χρόνο 90 W 80 W 70 W 60 W 50 W 40 W 30 W 20 W 10 W 0 W PC Netbook+Monitor Netbook Board PC Εικόνα Απεικόνιση της κατανάλωσης ισχύος κατά την πάροδο του χρόνου στο δεύτερο πείραμα Συνολικά, σε σχέση με τις εξεταζόμενες παραμέτρους, το PC αποκλείεται από τη σύγκριση, αφού το Netbook παρουσιάζει ίδιο χρόνο απόκρισης με πολύ χαμηλότερη κατανάλωση. Ο Πίνακας 4.12 δείχνει τα χαρακτηριστικά, την κατανάλωση και τις επιδόσεις, για τη σύγκριση Netbook και Board. Η σύγκριση αυτή βοηθά στο να επιλέγεται ο κατάλληλος server για κάθε εφαρμογή ανάμεσα στο Netbook και το Board, αναλόγως των απαιτήσεων. Χάριν 148

149 Κεφάλαιο 4 Ενδιάμεσο Λογισμικό Υπηρεσιών Ιστού Πίνακας Σύγκριση μεταξύ Netbook και Board. *ο συνολικός χρόνος αναφέρεται στο δεύτερο πείραμα Χαρακτηριστικά Board PC Netbook Διαφορά CPU 400MHz 2x1.6GHz 41% RAM 64MB 1GB 16% Μέση Ενεργή Ισχύς W W 65% Συνολικός χρόνος απόκρισης* 358 s 142 s 40% Μέσος χρόνος απόκρισης 2.98 s 1.18 s 40% στα αποτελέσματα αυτά, στην εγκατάσταση του συστήματος χρησιμοποιήθηκαν δύο netbooks στο ισόγειο του κτιρίου, που ο φόρτος όλων των υπηρεσιών είναι μεγάλος. Στον πρώτο όροφο του κτιρίου, όπου γίνεται απλή καταγραφή με την Υπηρεσία Έξυπνων Μπριζών, χρησιμοποιήθηκε το Board, ελαχιστοποιώντας την κατανάλωση του συστήματος και μεγιστοποιώντας τον χρόνο απόκρισης. 4.4 Συμπεράσματα Σε αυτό το κεφάλαιο παρουσιάστηκε το ενδιάμεσο λογισμικό Διάχυτης Νοημοσύνης awe- SoME, βασισμένο στην Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες (SOA). Επίσης, παρουσιάστηκε η εγκατάσταση δικτύου αισθητήρων, οργάνων δράσης και ενδιάμεσου λογισμικού σε ένα κτίριο, ενώ μετρήθηκαν αποτελέσματα των επιδόσεων του υλικού και του ενδιάμεσου λογισμικού. Παρόλο που τα συστήματα Διάχυτης Νοημοσύνης χαρακτηρίζονται από την ποικιλία του υλικού που απαιτείται, η αγορά δεν έχει φτάσει ακόμα στο σημείο όπου οι συσκευές θα μπορούν να χρησιμοποιηθούν προγραμματιστικά με ομοιόμορφο τρόπο. Επομένως, πολύ συχνά απαιτείται η ανάπτυξη ενδιάμεσου λογισμικού για αυτόν τον σκοπό. Ταυτόχρονα, παρατηρείται μια μεταβολή στην αρχιτεκτονική λογισμικού σύμφωνα με το πρότυπο του Λογισμικού ως Υπηρεσία. Η εφαρμογή του συγκεκριμένου προτύπου σε περιβάλλοντα Διάχυτης Νοημοσύνης βοηθά στο να παρέχει την απαραίτητη γενίκευση περίπλοκων API συσκευών, με ομοιόμορφο και αφηρημένο τρόπο στο επίπεδο εφαρμογών. Το middleware awesome που αναπτύχθηκε αφενός ενοποιεί ένα σύνολο από οικογένειες συσκευών και πρωτοκόλλων διαφορετικών κατασκευαστών, εκθέτοντας με ομοιόμορφο τρόπο τα δεδομένα και τις μεθόδους που αυτές προσφέρουν. Ειδικά στο υποεπίπεδο ολοκλήρωσης το awesome υλοποιεί οδηγούς για δίκτυα Έξυπνων Μπριζών σε κωδικοποιημένο ZigBee, Πλακετών Αισθητήρων σε ανοιχτό ZigBee, Έξυπνων Δαγκανών σε απλή ραδιοσυχνότητα και Συσκευών Z-Wave. Στο υ- ποεπίπεδο Υπηρεσιών οι οδηγοί αυτοί, αλλά και υπηρεσίες λογισμικού, όπως η Υπηρεσία Τεχνολογιών Πληροφορικής, εκτίθενται με συντακτικά διαλειτουργικό τρόπο, σύμφωνα με το WSDL πρότυπο Υπηρεσιών Ιστού. Αφετέρου, το awesome συμμορφώνεται πλήρως με την Αρχιτεκτονική Προσανατολισμένη σε Υπηρεσίες, συμπεριλαμβάνοντας έναν Μεσολαβητή Υπηρεσιών για δυναμική α- 149

150 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη νακάλυψη υπηρεσιών. Καθώς το σύστημα βασίζεται σε κατανεμημένους servers, οι υπηρεσίες μπορούν δυναμικά να εισέρχονται και να εξέρχονται από το περιβάλλον. Ο Μεσολαβητής υποστηρίζει το πρότυπο WS-Discovery και ανιχνεύει δυναμικά τις προσφερόμενες υπηρεσίες στο τοπικό δίκτυο. Κάθε πάροχος μπορεί να καταχωρήσει την υπηρεσία του, ενώ οι πελάτες εντοπίζουν τις διαθέσιμες κάθε στιγμή υπηρεσίες στον κατάλογο του Μεσολαβητή. Έτσι, οι πελάτες δεν υποχρεούνται να διατηρούν δυναμικές λίστες, ενώ οι servers μπορούν με ασφάλεια να βγουν εκτός σύνδεσης είτε λόγω φορητότητας είτε λόγω σφάλματος. Το σύστημα awesome εγκαταστάθηκε στο κτίριο Α του Διεθνούς Πανεπιστημίου Ελλάδος (IHU). Η εγκατάσταση περιλαμβάνει κατανεμημένους servers με διαφορετικές υπηρεσίες, ώστε να καλυφθούν όλοι οι χώροι παρά την περιορισμένη εμβέλεια των συσκευών. Έ- νας από τους σκοπούς της μελέτης του συστήματος είναι η διατήρηση του μικρού μεγέθους και της χαμηλής κατανάλωσης του ίδιου του υλικού. Επομένως, δοκιμάστηκαν διαφορετικές ρυθμίσεις υλικού ως προς τον χρόνο απόκρισης και την κατανάλωση κάτω από μεγάλο φόρτο. Ένα Netbook χρησιμοποιείται στις απαιτητικές τοποθεσίες του κτιρίου, ενώ ένας μικρο-υπολογιστής χρησιμοποιείται στο σημείο που απαιτείται μόνο συλλογή δεδομένων. Στα επόμενα κεφάλαια της διατριβής παρουσιάζονται τα τμήματα του συστήματος που επεκτείνουν το ενδιάμεσο λογισμικό awesome. Αρχικά, η ενσωμάτωση σημασιολογίας στο awesome διευρύνει τη διαλειτουργικότητα και τη χρηστικότητά του. Υπάρχουσες τεχνολογίες του Σημασιολογικού Ιστού παρέχουν εργαλεία και πρότυπα που καθιστούν τα δεδομένα του Ιστού ερμηνεύσιμα από υπολογιστή. Ενώ η κατασκευή και η χρήση εφαρμογών Ι- στού μεταβαίνει από τα δεδομένα στις υπηρεσίες, η έρευνα έχει ήδη επικεντρωθεί στην α- νάπτυξη μεθοδολογιών για τις Σημασιολογικές Υπηρεσίες Ιστού. Έτσι, προέκυψαν πρότυπα, όπως η OWL-S και η SAWSDL. Στο επόμενο κεφάλαιο παρουσιάζεται η μεθοδολογία που εφαρμόστηκε για την α- νάπτυξη μίας οντολογίας, των κατάλληλων εργαλείων και αλγορίθμων για τη σημασιολογική επισήμανση και ταυτοποίηση υπηρεσιών του awesome. Επιπλέον, ευφυείς εφαρμογές που εκμεταλλεύονται αυτές τις υπηρεσίες με σκοπό τους αυτοματισμούς και την εξοικονόμηση ενέργειας παρουσιάζονται στο κεφάλαιο

151 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού

152 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Ενώ τα πρότυπα του Ιστού και το υλικό εξελίσσονται, παρόμοια πρόοδος απαιτείται και στον τομέα της σημασιολογίας, ώστε να υλοποιηθούν πραγματικά ευφυή συστήματα Διάχυτης Νοημοσύνης. Από τη μία, οι τεχνολογίες του Ιστού ήδη παρέχουν στους χρήστες τα μέσα για να εκτελούν διεργασίες. Τέτοια παραδείγματα είναι οι διαδικτυακές εφαρμογές και οι Υπηρεσίες Ιστού, οι οποίες συνοδεύονται από σαφώς ορισμένα πρότυπα που εγγυώνται τη διαλειτουργικότητά τους, ως έναν βαθμό. Παράλληλα, οι τεχνολογίες του Σημασιολογικού Ι- στού, όπως έχουν περιγραφεί, δίνουν τη δυνατότητα σημασιολογικής επισήμανσης των υπηρεσιών ώστε να παρέχουν ισχυρότερη, σημασιολογική διαλειτουργικότητα. Την ίδια στιγμή, οι τεχνολογίες αυτές είναι συνδεδεμένες με το όραμα της Διάχυτης Νοημοσύνης ως ένα από τα κύρια συστατικά τέτοιων περιβαλλόντων. Το κεφάλαιο αυτό παρουσιάζει τη συμβολή της διατριβής για την ενσωμάτωση σημασιολογίας, τη δημιουργία και τη σημασιολογική αναζήτηση Υπηρεσιών Ιστού. Στην πρώτη ε- νότητα, γίνεται μία εισαγωγή στις έννοιες των οντολογιών Έξυπνων Κτιρίων, των εργαλείων σημασιολογικής επισήμανσης και των αλγορίθμων σημασιολογικής ταυτοποίησης υπηρεσιών. Η δεύτερη ενότητα παρουσιάζει την οντολογία BOnSAI. Η τρίτη ενότητα παρουσιάζει το εργαλείο σημασιολογικής επισήμανσης Υπηρεσιών Ιστού, Iridescent, ενώ η τέταρτη ενότητα την περιγραφή και τα αποτελέσματα του αλγορίθμου ταυτοποίησης Tomaco. Στην τελευταία ενότητα παρουσιάζονται τα συμπεράσματα από την παρούσα μεθοδολογία σημασιολογικής επισήμανσης και ταυτοποίησης. 5.1 Εισαγωγή Αρχικά, για την ενσωμάτωση σημασιολογίας πρέπει να βρεθεί ή να κατασκευαστεί μία οντολογία που θα περιλαμβάνει έννοιες σχετικές με το Έξυπνο Κτίριο και τη Διάχυτη Νοημοσύνη. Υπάρχουσες πρότυπες, ανώτερες οντολογίες περιγράφουν τις Σημασιολογικές Υπηρεσίες Ι- στού ανεξαρτήτως πεδίου. Η οντολογία BOnSAI (Smart Building Ontology for Ambient Intelligence) (Stavropoulos et al., 2012) περιγράφει όρους του συγκεκριμένου πεδίου, επεκτείνοντας και συγκεκριμενοποιώντας τις ανώτερες οντολογίες. Επίσης, εισάγει και επεκτείνει άλλες οντολογίες του πεδίου, με σκοπό να περιγράψει όλους τους όρους σχετικούς με υπηρεσίες, έξυπνες συσκευές (αισθητήρες και όργανα δράσης), παραμέτρους και έξυπνα κτίρια. Στόχος είναι η άμεση εφαρμογή του στο σύστημα του περιβάλλοντος Smart IHU. Στη συνέχεια, οι περιγραφές των υπηρεσιών πρέπει να ενσωματώσουν τη σημασιολογία με τη βοήθεια τέτοιων οντολογικών λεξιλογίων. Για αυτόν τον σκοπό αναπτύχθηκε στα πλαίσια της διατριβής το εργαλείο Iridescent, το οποίο παρουσιάζεται στην τρίτη ενότητα του κεφαλαίου. To Iridescent (Stavropoulos et al., 2013b) είναι ένα καινοτόμο εργαλείο για δημιουργία και επεξεργασία Σημασιολογικών Υπηρεσιών Ιστού, σύμφωνα με το πρότυπο

153 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού SAWSDL. Ενώ οι τεχνολογίες του Σημασιολογικού Ιστού και των Υπηρεσιών Ιστού έχουν σχηματίσει μεθοδολογίες για τις Σημασιολογικές Υπηρεσίες Ιστού, η χρήση τους παραμένει περιορισμένη. Οι πιθανοί χρήστες τους συνήθως αποθαρρύνονται από την έλλειψη φιλικών εργαλείων, αλλά και από τον αριθμό διαφορετικών προτύπων. Επίσης, είναι απαραίτητες η επέμβαση ενός ειδήμονα και αρκετή χειροκίνητη δουλειά για την υιοθέτηση αυτών των προτύπων. Το εργαλείο Iridescent προσπαθεί να αντιμετωπίσει τα παραπάνω προβλήματα με δύο τρόπους. Πρώτον, βοηθά τόσο ειδήμονες, όσο και απλούς χρήστες να δημιουργήσουν και να επεξεργαστούν περιγραφές SAWSDL με φιλικό στον χρήστη, γραφικό τρόπο. Αποφεύγεται έτσι η απαιτούμενη γνώση και η χρήση κώδικα. Δεύτερον, παρέχεται ένας ημι-αυτόματος τρόπος παραγωγής των περιγραφών μέσω συντακτικού ελέγχου ομοιότητας των εννοιών και παροχής συστάσεων. Το εργαλείο σχεδιάστηκε για να βελτιώνει και να επεκτείνει τα υ- πάρχοντα με τις παραπάνω λειτουργίες. Επίσης, αξιολογήθηκε μεθοδικά από χρήστες ως προς τη χρηστικότητά του. Τέλος, χρησιμοποιήθηκε σε ένα πραγματικό σενάριο επισήμανσης των υπηρεσιών του συστήματος Smart IHU. Εφόσον οι υπηρεσίες έχουν κατασκευαστεί και επισημανθεί κατάλληλα, οι περιγραφές τους θα πρέπει να γίνονται διαθέσιμες σε όσους ενδιαφέρονται να τις χρησιμοποιήσουν. Οι χρήστες θα πρέπει να έχουν τη δυνατότητα να αναζητήσουν και να εντοπίσουν υπηρεσίες, ανακαλύπτοντας τις πιο σχετικές ως προς τις επιθυμίες τους. Η σημασιολογική ταυτοποίηση Υπηρεσιών Ιστού υπονοεί την αυτόματη εύρεση Υπηρεσιών Ιστού, που προσφέρουν μια συγκεκριμένη υπηρεσία και ανταποκρίνονται σε κάποια ζητούμενα χαρακτηριστικά (McIlraith et al., 2001). Ένας χρήστης, για παράδειγμα, θα μπορούσε να ζητήσει μια υπηρεσία, η οποία «πουλάει αεροπορικά εισιτήρια μεταξύ του Σαν Φρανσίσκο και του Τορόντο και δέχεται πληρωμή με πιστωτική κάρτα Diner s Club». Για να πετύχει τον σκοπό του, ο χρήστης πρέπει να χρησιμοποιήσει μια μηχανή αναζήτησης για να βρει μια υπηρεσία και έπειτα είτε να διαβάσει την ιστοσελίδα που την περιγράφει, είτε να την τρέξει, ώστε να επαληθεύσει ο ίδιος εάν ανταποκρίνεται στα απαιτούμενα χαρακτηριστικά. Με τη σημασιολογική, όμως, επισήμανση των υπηρεσιών, μπορούμε να προσδιορίσουμε την αναγκαία πληροφορία για την ταυτοποίηση των Υπηρεσιών Ιστού ορίζοντας κατανοητή από τις μηχανές σημασιολογία στις ιστοσελίδες των υπηρεσιών και στη συνέχεια μια αποθήκη υπηρεσιών και μια εμπλουτισμένη με οντολογίες μηχανή αναζήτησης θα μπορούν αυτόματα να εντοπίσουν κατάλληλες υπηρεσίες. Για την κάλυψη της συγκεκριμένης ανάγκης αναπτύχθηκε ο αλγόριθμος σημασιολογικής ταυτοποίησης Tomaco (Stavropoulos et al., 2015a), που παρουσιάζεται στην τέταρτη ενότητα. Ο αλγόριθμος αξιολογήθηκε σε ένα μεγάλο και διαδεδομένο σύνολο δεδομένων πετυχαίνοντας υψηλή απόδοση. Επιπλέον, ο αλγόριθμος ενσωματώθηκε στο ομώνυμο διαδικτυακό σύστημα, το οποίο προσφέρει δυνατότητες ταυτοποίησης και σύνθεσης υπηρεσιών, τόσο για τις υπηρεσίες του Smart IHU, όσο και για οποιαδήποτε υπηρεσία στον Ιστό. 153

154 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 5.2 Οντολογία BOnSAI Οι οντολογίες αποτελούν ένα μέσο μοντελοποίησης περιβαλλόντων Διάχυτης Νοημοσύνης που παρουσιάζει αρκετά πλεονεκτήματα έναντι άλλων μεθόδων, αφού προσφέρουν δυνατότητες όπως τη διαλειτουργικότητα, τον ορισμό σχέσεων και τη συλλογιστική (Bettini et al., 2010). Παρά τις ελλείψεις τους, όπως τον ορισμό χρονικών σχέσεων και ασάφειας, έχουν προτιμηθεί σε μεγάλο βαθμό στη βιβλιογραφία, εγκαθιδρύοντας οντολογίες πεδίου για διαχείριση γνώσης, πολλές φορές προσανατολισμένες στις υπηρεσίες. Μία χρήση των οντολογιών σε τέτοια συστήματα είναι η αναπαράσταση γνώσης, η εκτέλεση ερωτημάτων και η ε- ξαγωγή συμπερασμάτων. Μία δεύτερη χρήση, που αναδύθηκε μεταγενέστερα, είναι η επισήμανση υπηρεσιών με σκοπό την Ανακάλυψη, Επιλογή, Ταυτοποίηση και Σύνθεση υπηρεσιών. Για αυτόν τον λόγο, οι οντολογίες θα πρέπει να αποσαφηνίζουν έννοιες σχετικές με τα δεδομένα εισόδου/εξόδου, τις προϋποθέσεις και τα αποτελέσματα των λειτουργιών των υ- πηρεσιών. Είτε ο στόχος είναι η αναπαράσταση γνώσης με οντολογία, είτε είναι η σημασιολογική επισήμανση, η κατασκευή του οντολογικού λεξικού θεωρείται απαραίτητο βήμα. Ακόμα κι αν τα πρότυπα των Σημασιολογικών Υπηρεσιών Ιστού επιτρέπουν τεχνικά τη διαλειτουργικότητα, η πραγματική συμβατότητα μεταξύ εννοιών συστημάτων σε επίπεδο δεδομένων απαιτεί κοινά λεξιλόγια. Συγκεκριμένα για το περιβάλλον της Διάχυτης Νοημοσύνης, δεν προσφέρεται ακόμα μία κοινώς αποδεκτή οντολογία, αλλά κάθε σύστημα χρησιμοποιεί το δικό του λεξιλόγιο. Συστήματα που κάνουν βήματα προς μία κοινή κατεύθυνση εισάγοντας διαδεδομένες οντολογίες είναι τα (Sheshagiri et al., 2004) (Bottaro et al., 2007), καθώς και η προτεινόμενη οντολογία, BOnSAI, που επεκτείνει αυτές τις προσπάθειες. Πολλές από αυτές τις προσεγγίσεις επεκτείνουν την ανώτερη οντολογία OWL-S με γνώση του εκάστοτε πεδίου, οπότε και μπορούν να χρησιμοποιηθούν απευθείας ως σημασιολογικές περιγραφές Υπηρεσιών Ιστού. Ένα τέτοιο παράδειγμα φαίνεται στην Εικόνα 5.1, όπου η έννοια της υπηρεσίας επεκτείνεται με την έννοια των συμφραζομένων στο πεδίο της Διάχυτης Νοημοσύνης (Maamar et al., 2006). Μία εκτενής επισκόπηση αυτών των προσεγγίσεων δίνεται στην εργασία (Stavropoulos et al., 2013c), όπου εντοπίζονται διαφορετικές γλώσσες (XML, DAML, OWL), αλλά και κοινές έννοιες. Παρακάτω εξετάζονται οι κοινές έννοιες ανά κατηγορία. Εικόνα 5.1. Επέκταση της OWL-S με συμφραζόμενα σε σύστημα Διάχυτης Νοημοσύνης 154

155 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Η οντολογία BOnSAI (a Smart Building Ontology for Ambient Intelligence) σχεδιάστηκε ώστε να ενισχύσει την ανάπτυξη συστημάτων Διάχυτης Νοημοσύνης για Έξυπνα Κτίρια. Η μέθοδος σχεδιασμού που ακολουθήθηκε (Noy and McGuinness, 2001) δίνει έμφαση στην εφαρμογή όπου πρόκειται να χρησιμοποιηθεί η οντολογία, δηλαδή στη διαλειτουργικότητα υπηρεσιών και συσκευών. Κατόπιν, υλοποιήθηκε σε OWL με χρήση του εργαλείου Protégé 48 και είναι διαθέσιμη στο διαδίκτυο 49. Οι κλάσεις της BOnSAI μπορούν να κατηγοριοποιηθούν σε σχετικές με το υλικό, το περιβάλλον, τη λειτουργικότητα, τις υπηρεσίες και την ποιότητα υπηρεσίας. Λόγω της υπάρχουσας δουλειάς σε αυτό το ερευνητικό πεδίο, η οντολογία εισάγει και επαναχρησιμοποιεί υπάρχοντα μοντέλα, όπως οι CoDAMoS 50 (Preuveneers and Berbers, 2005) και OWL-S. Πέρα από τη γενική σκοπιά της BOnSAI, η οντολογία εφαρμόζεται στη συγκεκριμένη εφαρμογή που πραγματεύεται η διατριβή, το σύστημα Smart IHU. Για αυτόν τον σκοπό επεκτείνεται με ειδικότερες κλάσεις, που μπορούν να θεωρηθούν ως οντολογία πεδίου. Επιπλέον, δημιουργούνται στιγμιότυπα (instances) που μοντελοποιούν πλήρως το σύστημα Smart IHU. Μέσα από αυτή τη διαδικασία, επαληθεύεται η χρηστικότητα και εκφραστικότητα της οντολογίας, ώστε να μπορεί να υποστηρίξει παρομοίως και άλλα συστήματα Υπάρχουσες Οντολογίες Διάχυτης Νοημοσύνης Στην υποενότητα αυτή περιγράφονται οι κυριότερες υπάρχουσες οντολογίες με αντικείμενο τη Διάχυτη Νοημοσύνη. Για κάθε μία από αυτές, αναφέρεται η πιθανή σύγκλιση με την προτεινόμενη οντολογία BOnSAI. GAIA Η οντολογία GAIA (Ranganathan et al., 2003) αποσαφηνίζει έννοιες των συμφραζομένων και των οντοτήτων στα πλαίσια του ομώνυμου συστήματος Διάχυτης Νοημοσύνης. Με αυτόν τον τρόπο, χρησιμοποιείται για να περιγράψει ορίσματα που θα χρησιμεύσουν στον Σχεδιασμό Ενεργειών του συστήματος. Ορίζονται έννοιες συμφραζομένων σχετικών με το φυσικό κόσμο (π.χ. τοποθεσία, χρόνος) με το περιβάλλον (π.χ. καιρός, φωτεινότητα, επίπεδο ήχου), με ενημέρωση (π.χ. τιμές μετοχών, αποτελέσματα αθλητικών αγώνων) με προσωπικές πληροφορίες (π.χ. υγεία, διάθεση, χρονοδιάγραμμα, δραστηριότητες), με κοινωνικότητα (π.χ. ομαδικές δραστηριότητες, κοινωνικές σχέσεις), με εφαρμογές (π.χ. , επισκεπτόμενα sites) και με το σύστημα (π.χ. κίνηση δικτύου, κατάσταση εκτυπωτών). Επίσης, ορίζονται οντολογίες για τις συσκευές, τις υπηρεσίες, τις εφαρμογές και τους χρήστες. Έτσι, η δήλωση Chris and Room 2401 μπορεί να ελεγχθεί ως προς τους σημασιολογικούς τύπους των ορισμάτων Chris και Room. Στην BOnSAI δε γίνεται χρήση και επέκταση των οντολογιών GAIA, αφενός γιατί οι οντολογίες δεν είναι διαθέσιμες, αφετέρου, η GAIA δεν εστιάζει στη διάκριση του ρόλου των 48 Protégé Η BOnSAI στο διαδίκτυο: 50 CoDAMoS

156 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 5.2. Οι τέσσερις γενικότερες έννοιες στην οντολογία CoDAMoS Εικόνα 5.3. Έννοιες χρήστη στην οντολογία CoDAMoS συσκευών και των υπηρεσιών ως αισθητήρων ή οργάνων δράσης, στις έννοιες των Έξυπνων Κτιρίων και στη λειτουργικότητά τους. DEHEMS Η οντολογία DEHEMS (Digital Environment Home Energy Management System) (Shah et al., 2011) επιτρέπει την αναπαράσταση γνώσης και τη συλλογιστική διαδικασία στα πλαίσια του ομώνυμου συστήματος. Στόχος του προγράμματος είναι η διάδοση της συναίσθησης των χρηστών για την κατανάλωση ενέργειας και η παροχή συμβουλών εξοικονόμησης σε πολλά οικιακά περιβάλλοντα ταυτόχρονα, τα οποία μπορούν να θεωρηθούν στο σύνολό τους ως μια Έξυπνη Πόλη. Η οντολογία υποστηρίζει τη μοντελοποίηση γνώσης από χιλιάδες σπίτια, συλλογιστική και εξαγωγή συμπερασμάτων και παροχή συμβουλών για ενδεχόμενη σπατάλη και μείωση κατανάλωσης ενέργειας. Το όνομά της είναι the Home Appliances Ontology και βασίζεται στην αναγνωρισμένη SUMO 51 οντολογία, ώστε να μοντελοποιήσει ενεργειακά χαρακτηριστικά των οικιακών συσκευών. Η γενικότερη κλάση είναι η ηλεκτρική συσκευή, ElectricHomeAppliance, ενώ μερικά παραδείγματα υποκλάσεων είναι οι συσκευές γραφείου στο σπίτι HomeOfficeAppliance, ψυχαγωγίας EntertainmentAppliance και φροντίδας σώματος BodyCareAppliance. Μία βασική ιδιότητα της οντολογίας είναι η StarInfo, η οποία δίνει τα γνωστά αστέρια ενεργειακής κλάσης της συσκευής. Η συλλογιστική χρησιμοποιείται για δύο λόγους: για έλεγχο της ομαλότητας της κατανάλωσης (εντός του εύρους) και για παροχή συμβουλών. Από την άλλη, The Suggested Upper Merged Ontology (SUMO),

157 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού η οντολογία δεν επαρκεί για ένα σύστημα Διάχυτης Νοημοσύνης, αφού περιορίζεται μόνο στις οικιακές συσκευές, αποκλείοντας έννοιες σχετικές με τις υπηρεσίες, τους αισθητήρες και τα όργανα δράσης (που αποτελούν άλλα είδη συσκευών), τις παραμέτρους εισόδου/εξόδου και τα φυσικά μεγέθη για μοντελοποίηση της λειτουργικότητας. Σε περίπτωση που η οντολογία γίνει διαθέσιμη στο διαδίκτυο μπορεί να χρησιμοποιηθεί μόνο για τη μοντελοποίηση των οικιακών συσκευών. CoDAMoS Η οντολογία CoDAMoS περιστρέφεται γύρω από τέσσερις γενικότερες έννοιες: τον χρήστη User, την πλατφόρμα Platform, την υπηρεσία Service και το περιβάλλον Environment, όπως φαίνεται στην Εικόνα 5.2 (Preuveneers and Berbers, 2005). Συνοπτικά, το περιβάλλον έχει τοποθεσία, χρόνο και περιβαλλοντικές συνθήκες (Εικόνα 5.3). Ένας χρήστης έχει διάθεση mood, προφίλ profile, ρόλο role, και καθήκοντα tasks, τα οποία με τη σειρά τους αφορούν δραστηριότητες και καλούν υπηρεσίες (Εικόνα 5.4). Οι υπηρεσίες είναι εμπνευσμένες από την OWL-S, συνδέοντάς την με τις έννοιες της CoDAMoS (Εικόνα 5.5). Μία πλατφόρμα παρέχει υλικό hardware που αντιστοιχεί σε πόρους resources (ισχύς, μνήμη, CPU, αποθηκευτικός χώρος και δίκτυο), σε μονάδες εισόδου/εξόδου και σε λογισμικό με υπηρεσίες. Το λογισμικό μπορεί να είναι λειτουργικό σύστημα (operating system), εικονική μηχανή (virtual machine), ενδιάμεσο λογισμικό (middleware) ή Εικόνα 5.4. Έννοιες περιβάλλοντος στην οντολογία CoDAMoS Εικόνα 5.5. Έννοιες υπηρεσίας στην οντολογία CoDAMoS, όπως και στην OWL-S 157

158 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη μονάδα σχεδίασης (rendering engine). Οι τέσσερις παραπάνω κύριες έννοιες συνδέονται με πολλούς τρόπους: η υπηρεσία απαιτεί μία πλατφόρμα, η πλατφόρμα έχει ένα περιβάλλον και οι υπηρεσίες καλούνται από καθήκοντα του χρήστη. Η BOnSAI εισάγει απευθείας την οντολογία CoDAMoS και επωφελείται από τις ήδη ορισμένες κλάσεις της, όπως τις έννοιες της υπηρεσίας, του χρήστη με διάθεση και προφίλ και του περιβάλλοντος. Αντίθετα, επιπλέον έννοιες που απαιτούνται δεν καλύπτονται από την CoDAMoS και ορίζονται εκ νέου. Συγκεκριμένα, για να μπορέσει να οριστεί η λειτουργικότητα των υπηρεσιών (όχι απαραίτητα συνδεδεμένη με καθήκοντα και χρήστη) και τα IOPEs τους, απαιτούνται φυσικά μεγέθη και έννοιες σχετικές με τις συσκευές και το hardware, που στην CoDAMoS δεν αφορά αισθητήρες και όργανα δράσης. OntoAMI Η οντολογία OntoAMI (Santofimia et al., 2008) προτείνει ένα γενικό σημασιολογικό μοντέλο με τις πιο γενικές έννοιες ενός συστήματος Διάχυτης Νοημοσύνης. Οι έννοιες αυτές είναι η Υπηρεσία Service, η Συσκευή Device, το Γεγονός Event, η Ενέργεια Action, το Αντικείμενο Object και τα Συμφραζόμενα Context, ενώ οι μεταξύ τους σχέσεις φαίνονται στην Εικόνα 5.6. Στη συνέχεια, η οντολογία επεκτείνεται με άλλες οντολογίες πεδίου κατά περίπτωση, με έννοιες όπως η Ανακοίνωση Announcement και ο Κίνδυνος Hazard σε ένα σενάριο συστήματος ασφαλείας. Πράγματι, και η οντολογία BOnSAI συμμορφώνεται με πολλές από αυτές τις έννοιες, αλλά διαμορφώνεται διαφορετικά. Στην BOnSAI, οι Υπηρεσίες παρέχονται από μία γενικότερη έννοια του Εξυπηρετητή Server ώστε να καλύπτονται περιπτώσεις όπου οι Συσκευές δεν προσφέρουν αυτή τη δυνατότητα. Οι Ενέργειες εκτελούνται πιο συγκεκριμένα από Λειτουργίες Operations που ανήκουν στις Υπηρεσίες, ενώ επιδρούν πάνω σε Γεγονότα - Facts, μία γενικότερη έννοια από τα Αντικείμενα. Επίσης, ορίζεται η έννοια των Συμφραζομένων. Οντολογίες ανά ομάδα εννοιών Πολλές ακόμα οντολογίες αγγίζουν σχετικές έννοιες και παρουσιάζονται ομαδοποιημένες. Σε σχέση με το υλικό, η DEHEMS μοντελοποιεί οικιακές συσκευές και ενεργειακή αποδοτικότητα. Σε άλλες οντολογίες ορίζονται πολυμεσικές συσκευές (Messer et al., 2006), υπολογιστικοί πόροι (Bellur and Narendra, 2005) (Mokhtar, 2007) και άλλες έννοιες υλικού (Maffioletti and Hirsbrunner, 2002) (Santofimia et al., 2008) (Iacob et al., 2008) Οι πληροφορίες περιβάλλοντος μοντελοποιούνται ως συνδυασμός της τοποθεσίας, του περιβάλλοντος, του χρόνου και εννοιών σχετικών με τον χρήστη (Ranganathan et al., 2003). Συλλογιστική μπορεί να χρησιμοποιηθεί για την κατασκευή των συμφραζομένων λ.χ. για εύρεση δωματίου από συντεταγμένες (Preuveneers and Berbers, 2005). Σε άλλη οντολογία (Iacob et al., 2008) τα συμφραζόμενα σχετίζονται με τοποθεσίες στην κυψέλη τηλεφωνίας, στη γεωγραφική τοποθεσία (GSMCell, GeoLocation) και στο χρονοδιάγραμμα (Schedule). Εναλλακτικά, οι υπηρεσίες, το περιβάλλον και οι υπηρεσίες (Qiu et al., 2006) ή οι πόροι (Bellur and Narendra, 2005) μπορούν να σχετίζονται με συμφραζόμενα. Η έννοια του 158

159 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα 5.6. Οι κυριότερες κλάσεις και οι μεταξύ τους σχέσεις στην οντολογία OntoAMI γεγονότος (Event) σχετίζεται, επίσης, με τα συμφραζόμενα (Santofimia et al., 2008). Οι προτιμήσεις χρήστη μπορούν να θεωρηθούν ειδική περίπτωση συμφραζομένων, που αλλάζει σπανιότερα. Παραδείγματα προτιμήσεων είναι η διάθεση, το προφίλ και ο ρόλος και συγκεκριμένα μπορεί να αφορούν το προφίλ εκτύπωσης, ποιότητας αναπαραγωγής βίντεο κ.α. (Preuveneers and Berbers, 2005). Πολλές φορές τα συμφραζόμενα παίζουν ρόλο στη σύνθεση υπηρεσιών (Vallée et al., 2005). Η λειτουργικότητα ορίζεται με τους τύπους δεδομένων εισόδου και εξόδου (Masuoka et al., 2003) (Vallée et al., 2005). Οι υπηρεσίες είναι και αυτές είδος λειτουργικότητας (Santofimia et al., 2008) (Bellur and Narendra, 2005). Μπορούν να περιγράφονται οι δυνατότητες και οι δομές δεδομένων (Beauche and Poizat, 2008), ιεραρχίες υπηρεσιών (Chakraborty et al., 2005), ενέργειες των υπηρεσιών (Ibrahim et al., 2009) και τύποι πολυμεσικών δεδομένων (Messer et al., 2006). Ορίζοντας τη λειτουργικότητα μιας συσκευής σε οντολογία, το Hydra middleware παράγει δυναμικά τις αντίστοιχες υπηρεσίες (Hansen et al., 2008). Τρεις ο- ντολογίες για το Internet of Things περιέχουν υλικό, λειτουργικότητα και μαθηματικά μοντέλα (Hachem et al., 2011). Όσον αφορά την Ποιότητα Υπηρεσίας, τα υπάρχοντα συστήματα μοντελοποιούν παραμέτρους προστιθέμενης αξίας, όπως η καθυστέρηση της υπηρεσίας, ο χρόνος απόκρισης και το κόστος. Οι παράγοντες αυτοί λαμβάνονται υπόψιν για προβλήματα βελτιστοποίησης (Davidyuk et al., 2011) Έννοιες και Ιδιότητες της BOnSAI Η Εικόνα 5.7 δείχνει ένα εκτεταμένο διάγραμμα κλάσεων της BOnSAI. Απεικονίζονται οι ιεραρχικές σχέσεις υποκλάσεων και υπερκλάσεων, καθώς και οι συνδέσεις μεταξύ εννοιών, μέσω ιδιοτήτων αντικειμένων ObjectProperties με βέλη. Οι δύο εισαγόμενες, υπάρχουσες οντολογίες OWL-S και CoDAMoS (για την οποία έγιναν συντακτικές βελτιώσεις) περικλείονται από πλαίσιο. Μέσω των περιορισμών restrictions, ορίζονται οι διάφοροι τύποι συσκευών, πρωτοκόλλων κ.ο.κ. Έτσι, μία Έξυπνη Μπρίζα (Smart Plug) είναι μία ειδική περίπτωση Συσκευής (Device) με πρωτόκολλο επικοινωνίας Κωδικοποιημένο ZigBee (Encrypted ZigBee). Ως Αισθητήρας (Sensor) επιστρέφει μία τιμή κατανάλωσης (Power Consumption) σε Watt ενώ 159

160 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη ως Όργανο Δράσης (Actuator) προσφέρει μια λειτουργία Switch.Στη συνέχεια, περιγράφεται αναλυτικά κάθε κατηγορία εννοιών της BOnSAI. Έννοιες Υλικού Οι έννοιες σχετικές με το υλικό θα πρέπει να καλύπτουν τις ενεργειακές προδιαγραφές, τη λειτουργικότητα και τον προσανατολισμό στις υπηρεσίες. Όλο το υλικό χωρίζεται σε Οικιακές Συσκευές Appliances και Συσκευές Devices, που διαφέρουν ως προς την ικανότητα παροχής υπηρεσιών. Και οι δύο έννοιες συνδέονται με μία φυσική Τοποθεσία Location, όπου βρίσκονται και επιδρούν. Οικιακές Συσκευές είναι οι ηλεκτρικές συσκευές που δεν προσφέρουν υπηρεσίες, όπως τα Καλοριφέρ - Radiators, ο Φωτισμός - Lighting, ο Κλιματισμός - Air- Condition, οι Εκτυπωτές Printers κ.α. Το τμήμα Οικιακών Συσκευών μπορεί να επεκταθεί περαιτέρω από εφαρμογές όπως η DEHEMS με εκτεταμένες ενεργειακές πληροφορίες. Οι Οικιακές Συσκευές, σε σχέση με τη λειτουργικότητα, μπορούν να επηρεάσουν (ιδιότητα affects) τις Περιβαλλοντικές Συνθήκες EnvironmentalParameters (και κατά περίπτωση τις υποκλάσεις τους). Για παράδειγμα, τα Καλοριφέρ και ο Κλιματισμός επηρεάζουν τη Θερμοκρασία Temperature, ενώ ο Φωτισμός τη Φωτεινότητα Luminance. Οι Υπολογιστές προσφέρουν πόρους σχετικούς με ποιότητα υπηρεσιών. Οι Εξυπηρετητές είναι είδος Υπολογιστών που φιλοξενούν υπηρεσίες (ιδιότητα hostsservice). Όλες οι οικιακές συσκευές έχουν μία Ενεργειακή Κατάσταση PowerState με τιμή on ή off, ενώ η μέση κατανάλωσή τους καταγράφεται στην ιδιότητα consumes με τιμή Ισχύος - PowerConsumption. Οι Συσκευές αναφέρονται σε έξυπνες συσκευές που έχουν συνήθως άμεση σχέση με τις υπηρεσίες. Τα βασικά τους είδη είναι ο Αισθητήρας Sensor, το Όργανο Δράσης Actuator και οι συνδυασμοί τους Πολυαισθητήρας MultiSensors και Αισθητήρας-Όργανο Δράσης SensorActuator για τις συσκευές με διπλό ρόλο. Οι Συσκευές εκθέτονται από Υπηρεσίες στο λεγόμενο Διαδίκτυο των Αντικειμένων (Internet of Things) ή Ιστό Αισθητήρων (Sensor Web). Η ποικιλία πρωτοκόλλων επικοινωνίας υποστηρίζεται από την αντίστοιχη έννοια και χωρίζεται σε κατηγορίες όπως Ασύρματα Wireless, Ενσύρματα Wired, Καλωδίωσης Ρεύματος PLC κ.α. όπως αυτά έχουν περιγραφεί στο Κεφάλαιο 3. Σχετικά με τη λειτουργικότητα, οι Αισθητήρες επιστρέφουν Παραμέτρους Parameters, ενώ τα Όργανα Δράσης εκτελούν Ενέργειες Actions. Για την επέκταση της οντολογίας στο Smart IHU, προστίθενται υποκλάσεις Συσκευών. Η Έξυπνη Μπρίζα Smart Plugs είναι είδος Αισθητήρα-Οργάνου Δράσης στην οντολογία που μπορεί να επιδρά στην Ενεργειακή Κατάσταση των Οικιακών Συσκευών, δηλαδή να τις ενεργοποιεί και απενεργοποιεί. Ως αισθητήρας μπορεί να διαβάζει την κατανάλωση Ισχύος και Ενέργειας της συσκευής. Πιο ειδικά μοντέλα Έξυπνων Μπριζών που υπάρχουν στο σύστημα είναι έχουν συγκεκριμένες ιδιότητες δεδομένων και πρωτόκολλο επικοινωνίας ZigBee. Οι Έ- ξυπνες Δαγκάνες SmartClampers είναι Αισθητήρες που μετρούν κατανάλωση ενέργειας. Έννοιες Συμφραζομένων Τα συμφραζόμενα μπορούν να οριστούν ως ένα σύνολο προτάσεων για ένα άτομο, ένα μέρος ή ένα αντικείμενο (Hachem et al., 2011). Η γνώση για τα συμφραζόμενα (context-awareness) 160

161 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού είναι σημαντική ιδιότητα των διάχυτων συστημάτων. Αναφέρεται στην ιδιότητα ενός συστήματος να αντιδρά δυναμικά σύμφωνα με την κατάσταση του κόσμου. Η έννοια των Συμφραζομένων Context στην BOnSAI είναι ένα σύνολο από μία Τοποθεσία, μία ή περισσότερες Περιβαλλοντικές Συνθήκες και μία ένδειξη του Χρόνου Time. Ένα στιγμιότυπο Συμφραζομένων μπορεί να συσχετιστεί με έναν Χρήστη User. Έτσι, μπορούν να ποικίλουν οι αποφάσεις για τον ίδιο χρήστη αναλόγως των συμφραζομένων σε ένα σύστημα. Η Τοποθεσία ως τμήμα των Συμφραζομένων μπορεί να ποικίλει σε κλίμακα από ένα σημείο στον χώρο μέχρι δωμάτιο, όροφο και κτίριο, ενώ έχει με τη σειρά της πληροφορίες για το υλικό που βρίσκεται εκεί. Τα Δωμάτια Rooms ανήκουν σε έναν Όροφο Floor και οι όροφοι σε Κτίρια Buildings. Μία ακόμα πληροφορία στα Συμφραζόμενα είναι η διάθεση του χρήστη ή το προφίλ προτιμήσεων του και εισάγονται από την οντολογία CoDAMoS. Έννοιες Λειτουργικότητας Οι δύο κύριες έννοιες για τη λειτουργικότητα είναι οι Παράμετροι Parameters και οι Ενέργειες Actions. Οι Παράμετροι μοντελοποιούν φυσικά μεγέθη και διακρίνονται σε Περιβαλλοντικές Συνθήκες, Ενέργεια, Ισχύ και Χρόνο. Οι Περιβαλλοντικές Συνθήκες διακρίνονται περαιτέρω σε Θερμοκρασία - Temperature, Υγρασία - Humidity, Επίπεδο Διοξειδίου του Άνθρακα CO 2 Level, Φωτεινότητα Luminance και Πίεση - Pressure (παρόμοια με την έννοια EnvironmentalConditions της CoDAMoS). Οι Παράμετροι χρησιμεύουν στην περιγραφή της λειτουργικότητας των Συσκευών και των Υπηρεσιών. Συγκεκριμένα, οι Αισθητήρες συνδέονται απευθείας με τις παραμέτρους, τις οποίες επιστρέφουν μέσω ιδιότητας (returnsparameter). Τα Όργανα Δράσης συνδέονται έμμεσα με τις παραμέτρους που επηρεάζουν. Έχουν Ενέργειες, οι οποίες με τη σειρά τους επιδρούν σε Γεγονότα μέσω ιδιότητας (causesfact). Τα Γεγονότα είναι χρήσιμα για τη μοντελοποίηση λογικών συνθηκών. Η αλλαγή σε μία υπόσταση της Ενεργειακής Κατάστασης (συνδεδεμένη με μια Οικιακή Συσκευή) ή Περιβαλλοντικών Συνθηκών μπορεί να μοντελοποιηθεί σαν Γεγονός. Για παράδειγμα, ένας θερμοστάτης μπορεί να επιδρά σε ένα Γεγονός με τιμή Θερμοκρασίας. Παρομοίως, ένας ροοστάτης στον φωτισμό (dimmer) ως Όργανο Δράσης μπορεί να θέτει την τιμή Φωτεινότητας στο δωμάτιο, δηλαδή σε ένα Γεγονός τύπου Φωτεινότητας. Για τη μοντελοποίηση του Smart IHU, προστίθεται η υποκλάση της Ενέργειας, Ενέργειας Διακόπτη SwitchAction, η οποία περιορίζει την ιδιότητα causesfact με εύρος τιμών μόνο από την κλάση Ενεργειακή Κατάσταση. Επιπλέον, οι Έξυπνες Μπρίζες ως Αισθητήρες- Όργανα Δράσης επιστρέφουν Ενέργεια και Ισχύ. Η συνδεδεμένη σε κάθε Έξυπνη Μπρίζα Οικιακή Συσκευή εμφανίζεται μέσω της ιδιότητας attachedatappliance. Οι υπόλοιπες συσκευές του Smart IHU επίσης συνδέονται με τις παραμέτρους που επιστρέφουν. Οι Πολυαισθητήρες περιέχουν στιγμιότυπα Αισθητήρων, που επιστρέφουν Θερμοκρασία, Φωτεινότητα και Υγρασία. Οι Έξυπνες Δαγκάνες επιστρέφουν Ενέργεια και Ισχύ. Όπως αναφέρθηκε, οι Παράμετροι συνδέονται με τις Συσκευές και τις Υπηρεσίες με διαφορετικό τρόπο που περιγράφεται παρακάτω. 161

162 Εικόνα 5.7. Διάγραμμα κλάσεων και ιδιοτήτων αντικειμένων στην οντολογία BOnSAI

163 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Έννοιες Υπηρεσιών Η έννοια της Υπηρεσίας στην BOnSAI είναι συμβατή με τα υπάρχοντα πρότυπα του ιστού, αφού εισάγει την ανώτερη οντολογία για υπηρεσίες, OWL-S. Σύμφωνα με αυτή, μία Υπηρεσία περιγράφεται (describedby) από ένα Μοντέλο Υπηρεσίας Service Model, παρουσιάζει (presents) ένα Προφίλ Υπηρεσίας Service Profile και υποστηρίζει (supports) μία Θεμελίωση Υπηρεσίας Service Grounding. Ωστόσο, η BOnSAI επεκτείνει την έννοια με αυτήν της Λειτουργίας Operation, που πολλές φορές συγχέεται ως ισοδύναμη της Υπηρεσίας. Για την παραμετροποίηση αυτή, η Υ- πηρεσία στην BOnSAI είναι υποκλάση της OWL-S Υπηρεσίας. Σύμφωνα με τα πρότυπα WSDL/SAWSDL, μία Υπηρεσία μπορεί να έχει πολλές Λειτουργίες, κάθε μία εκ των οποίων μπορεί να έχει διαφορετικές παραμέτρους Εισόδου - Input, Εξόδου - Output και ενίοτε Προϋποθέσεις - Preconditions και Αποτελέσματα - Effects (IOPEs). Σε διάχυτα περιβάλλοντα με Όργανα Δράσης, η έννοια των Αποτελεσμάτων είναι απαραίτητη για να μοντελοποιηθούν και να κατηγοριοποιηθούν οι Λειτουργίες. Συγκεκριμένα, κάθε Λειτουργία έχει Είσοδο και Έξοδο με εύρος τιμών από την κλάση Παραμέτων. Οι Προϋποθέσεις και τα Αποτελέσματα, από την άλλη, μοντελοποιούνται σαν Γεγονότα, δηλαδή ως συγκεκριμένες τιμές Παραμέτρων, όπως Περιβαλλοντικών Συνθηκών ή Ενεργειακών Καταστάσεων. Επιπλέον, οι Λειτουργίες διαχωρίζονται σε Λειτουργίες Αισθητήρων SensorOperations και Λειτουργίες Οργάνων Δράσης ActuatorOperations, κάτι που βοηθά σε σενάρια εύρεσης λειτουργίας. Οι πρώτες επιστρέφουν δεδομένα και δεν έχουν Αποτελέσματα, ενώ οι τελευταίες έχουν τουλάχιστον ένα Αποτέλεσμα. Με αυτή την προσθήκη ενισχύεται περισσότερο ο υπηρεσιοκεντρικός χαρακτήρας, αφού διακρίνονται οι Λειτουργίες εξίσου καλά με τις Συσκευές. Ούτως ή άλλως οι Συσκευές συνδέονται με τις Υπηρεσίες αφού εκτίθενται από αυτές. Στο περιβάλλον Smart IHU, οι αντίστοιχες Λειτουργείες επιστρέφουν Παραμέτρους ή προκαλούν γεγονότα κατά αντιστοιχία με τις Συσκευές. Επιπλέον, γίνεται αναζήτηση των λειτουργιών ανάλογα με τα δεδομένα Εισόδου, Εξόδου, τις Προϋποθέσεις και τα Αποτελέσματα. Σε έναν έξυπνο πράκτορα που παρουσιάζεται στο επόμενο κεφάλαιο, γίνεται χρήση της διάκρισης σε Λειτουργίες Αισθητήρων και Λειτουργίες Οργάνων Δράσης. Έννοιες Ποιότητας Υπηρεσίας Η Ποιότητα Υπηρεσίας (Quality of Service - QoS) αφορά διάφορες μη-λειτουργικές ιδιότητες συστημάτων, όπως η ταχύτητα απόκρισης, που βοηθούν στη βελτιστοποίηση των παρεχόμενων υπηρεσιών. Για παράδειγμα, μπορεί να γίνει σύνθεση υπηρεσιών με βάση μία ή περισσότερες τέτοιες ιδιότητες. Στην BOnSAI η ποιότητα υπηρεσίας σχετίζεται με την έννοια των Πόρων Resources και το υποδέντρο εννοιών της που μοντελοποιούν κοινούς υπολογιστικούς πόρους, όπως η Μνήμη, CPU, κ.α., όπως ορίζονται από την CoDAMoS. Η έννοια του Πόρου σχετίζεται με έναν Υπολογιστή ή έναν Εξυπηρετητή. Όσον αφορά την Ποιότητα Υπηρεσιών των Συσκευών, αυτές καταγράφονται σε ιδιότητες των Πρωτοκόλλων Επικοινωνίας με τα οποία συνδέονται οι Συσκευές. Παραδείγματα τέτοιων ιδιοτήτων των ZigBee, Z-Wave 163

164 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη κ.α. είναι η καθυστέρηση latency, ο αριθμός κόμβων ανά δίκτυο nodespernetwork, η εμβέλεια range και ο ρυθμός μετάδοσης δεδομένων Date Rate Στιγμιότυπο BOnSAI για το Smart IHU Ένα στιγμιότυπο της οντολογίας BOnSAI χρησιμοποιείται για να μοντελοποιήσει την τρέχουσα υλοποίηση του συστήματος Smart IHU σε ξεχωριστό μοντέλο-επέκταση. Με αυτό τον τρόπο βεβαιώνεται ότι η οντολογία δεν αλλάζει και παραμένει αρκετά γενική ώστε να καλύψει οποιοδήποτε άλλο σύστημα. Το στιγμιότυπο παρέχεται σε ξεχωριστό αρχείο στη σελίδα της οντολογίας 52. Παρακάτω παρουσιάζονται κάποια ενδιαφέροντα παραδείγματα από τα στιγμιότυπα σχετικά με το Smart IHU, τα οποία δείχνουν πώς η BOnSAI μπορεί να χρησιμοποιηθεί για να μοντελοποιήσει διαφορετικές έξυπνες συσκευές και υπηρεσίες. Η Εικόνα 5.8 δείχνει πολλά παραδείγματα στιγμιότυπων των κλάσεων της εκτεταμένης BOnSAI για το Smart IHU. Στο δεξί μέρος φαίνεται μία λίστα στιγμιότυπων Λειτουργιών της WSDL Υπηρεσίας PlugwiseActionsService (είδος SmartPlug). Όλες ανήκουν (μέσω της belondstoservice) στην Υπηρεσία PlugwiseService. Το επιλεγμένο στιγμιότυπο WFSwitchOn είναι η λειτουργία ενεργοποίησης Οικιακής Συσκευής και έχει σαν Αποτέλεσμα (haseffect) μία Ενεργειακή Κατάσταση με τιμή ON (PowerStateOn στιγμιότυπο της PowerState με τιμή ON ). Πάνω αριστερά φαίνεται ένα στιγμιότυπο Πολυαισθητήρα, μίας Πλακέτας Αισθητήρων με όνομα PrismaQuaxTripleSensor1. Μέσω της ιδιότητας hassensor, ενσωματώνονται τρεις απλοί Αισθητήρες στην πλακέτα, ένας για Υγρασία, ένας για Φωτεινότητα και ένας για Θερμοκρασία (στιγμιότυπα PrismaQuaxHumiditySensor1, PrismaQuaxLuminanceSensor1 και PrismaQuaxTemperatureSensor1 αντίστοιχα). Οι αισθητήρες συνδέονται με αυτές τις παραμέτρους μέσω της returnsparameter. Είναι ακόμη εμφανές στο στιγμιότυπο Πολυαισθητήρα ότι η τοποθεσία του είναι η αίθουσα διαλέξεων LectureRoomA11, ενώ το πρωτόκολλο επικοινωνίας του είναι ένα στιγμιότυπο του ZigBee παραμετροποιημένο για αυτή τη σειρά προϊόντων (PrismaZigBee). Κάτω αριστερά, η Εικόνα 5.8 δείχνει ένα στιγμιότυπο Έξυπνης Μπρίζας (υποκλάση της ActuatorSensor), με όνομα PlugwiseCirclePlus1, και αρκετές από τις ιδιότητες αντικειμένων του. Ως Όργανο Δράσης, έχει μία performaction ιδιότητα με τιμή SwitchAction (Ενέργεια Διακόπτη), σύμφωνα με το περιορισμένο εύρος τιμών της SmartPlug. Η συσκευή εκτίθεται από δύο διαφορετικές υλοποιήσεις υπηρεσιών, PlugwiseActionsCOMService και PlugwsiseActionsService. Ο κατασκευαστής της συσκευής ενσωματώνει το δικό του κρυπτογραφημένο ZigBee που μοντελοποιείται ως PlugwiseZigbee. Η τοποθεσία της συσκευής είναι το γραφείο της σχολής Επιστήμης και Τεχνολογίας, SciTechOffice. Η διασυνδεδεμένη Οικιακή Συσκευή που ελέγχει η Έξυπνη Μπρίζα είναι τα φώτα του γραφείου αυτού (isattachedtoappliance με τιμή SciTechOfficeLights). Ως Αισθητήρας, η συσκευή επιστρέφει Στιγμιότυπα BOnSAI για το Smart IHU:

165 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα 5.8. Στιγμιότυπα Smart IHU Συσκευής PrismaQuax (πάνω αριστερά), Συσκευής Plug- WiseCirclePlus (κάτω αριστερά) και Λειτουργιών του PlugwiseActionsService (δεξιά) ένα στιγμιότυπο Κατανάλωσης Ισχύος με μέτρηση σε Watt (returnsparameter, PowerConsumptionWatt). Η δυνατότητα συλλογιστικής χρησιμοποιείται για την κατηγοριοποίηση πολλών από αυτά τα στιγμιότυπα μέσω της χρήσης των περιορισμών ως ικανών συνθηκών. Για παράδειγμα, οι Λειτουργίες που έχουν τιμή εξόδου (hasoutput) αλλά δεν προκαλούν κανένα Αποτέλεσμα, κατηγοριοποιούνται από τη μηχανή συλλογιστικής ως Λειτουργίες Αισθητήρων. Α- ντίθετα, οι Λειτουργίες που προκαλούν Αποτέλεσμα, κατηγοριοποιούνται ως Λειτουργίες Οργάνων Δράσης. Μία εφαρμογή που εκμεταλλεύεται αυτή την πληροφορία παρουσιάζεται στο Κεφάλαιο 6. Συνολικά, η επέκταση και τα στιγμιότυπα της BOnSAI που παρουσιάστηκαν παραπάνω δείχνουν την αποτελεσματικότητα και τη χρησιμότητά της για εφαρμογές Διάχυτης 165

166 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Νοημοσύνης. Η οντολογία, επομένως, μπορεί να χρησιμοποιηθεί ως αποθήκη γνώσης, εισάγοντας στιγμιότυπα των δεδομένων. Μία άλλη προσέγγιση, που ακολουθήθηκε στην παρούσα διατριβή, χρησιμοποιεί την οντολογία όχι ως αποθήκη, αλλά ως λεξικό για την επισήμανση των υπηρεσιών. Η διαδικασία αυτή ταιριάζει με το υπηρεσιοκεντρικό μοντέλο Σημασιολογικών Υπηρεσιών Ιστού και παρουσιάζεται στη συνέχεια. 5.3 Εργαλείο Σημασιολογικής Επισήμανσης Iridescent Όπως έχει ήδη αναφερθεί, τα πρότυπα των Σημασιολογικών Υπηρεσιών Ιστού ξεκίνησαν με τις από πάνω προς τα κάτω προσεγγίσεις ή αλλιώς ανώτερες οντολογίες για υπηρεσίες. Η OWL-S είναι η πιο διαδεδομένη από αυτές και περιγράφει τις λειτουργικές και μη λειτουργικές ιδιότητες των υπηρεσιών, καθώς και τη θεμελίωση με αναφορά στη λειτουργική περιγραφή WSDL. Η WSMO είναι μια εναλλακτική τέτοια προσέγγιση που ακολούθησε χρονικά. Πιο πρόσφατα, έχουν προταθεί οι λεγόμενες από κάτω προς τα πάνω, ή αλλιώς ελαφριές προσεγγίσεις, όπως η SAWSDL. Η SAWSDL επιτρέπει την επισήμανση απευθείας πάνω στις λειτουργικές περιγραφές WSDL. Η γλώσσα εισάγει κυρίως δύο ειδών επισημάνσεις: τα Model References και τα Schema Mappings. Τα Model References είναι αναφορές στα σημασιολογικά μοντέλα (οντολογίες) και αποτελούν της σημασιολογικές επισημάνσεις. Τα Schema Mappings χρησιμεύουν για τον μετασχηματισμό των δεδομένων από συντακτικά σε σημασιολογικά και αντίστροφα. Συγκεκριμένα, διακρίνονται σε Lifting Schema Mappings, τα οποία μετασχηματίζουν δεδομένα XML schema σε οντολογική μορφή (RDF/OWL) και Lowering Schema Mappings, που παρέχουν τον αντίστροφο μετασχηματισμό. Όντας ελαφριά προσέγγιση, η SAWSDL δίνει προτεραιότητα στη λειτουργικότητα και στην ελαχιστοποίηση της πολυπλοκότητας. Έχει αποδειχτεί ήδη ότι είναι επαρκώς εκφραστική, ώστε να χρησιμοποιηθεί για Ταυτοποίηση, Ανακάλυψη, Επιλογή και Σύνθεση Υπηρεσιών. Ταυτόχρονα, οι ελαφριές προσεγγίσεις γενικά διαδίδονται όλο και περισσότερο. Ένδειξη αποτελεί ότι η ομάδα εργασίας της WSMO ακολούθησε αυτή την τάση με τη γλώσσα WSMO-Lite. Το εργαλείο Iridescent στοχεύει να παρέχει ένα φιλικό περιβάλλον με πλήρεις δυνατότητες συγγραφής και επεξεργασίας SAWSDL, ώστε να διαδοθεί και να εδραιωθεί α- κόμα περισσότερο η χρήση του. Ταυτόχρονα με την ανάπτυξη προτύπων, έχουν υπάρξει προσπάθειες ανάπτυξης εργαλείων για αυτές τις τεχνολογίες. Εξάλλου και η εξάπλωση του ίδιου του Σημασιολογικού Ιστού εμποδίζεται από την έλλειψη λειτουργικών εργαλείων. Ειδικότερα, τα εργαλεία για Σημασιολογικές Υπηρεσίες Ιστού συχνά έχουν εγκαταλειφθεί από τους δημιουργούς τους. Μέχρι σήμερα υπάρχουν λίγα τέτοια λειτουργικά εργαλεία, γεγονός που αποθαρρύνει τους υ- ποψήφιους χρήστες και καθυστερεί την υιοθέτηση των τεχνολογιών. Οι ειδικοί του τομέα, ή αλλιώς οι ειδήμονες, ήδη μπορούν να υιοθετήσουν νέες τεχνολογίες, καθώς μπορούν απευθείας να αναπτύξουν περιγραφές σε κώδικα. Όμως και αυτοί αποθαρρύνονται, γιατί η διαδικασία είναι δυσάρεστη χωρίς γραφικά, απαιτεί χειροκίνητη εργασία και είναι δύσκολο να εφαρμοστεί για μεγάλο όγκο εγγράφων. 166

167 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Το εργαλείο Iridescent 53 προσπαθεί να αντιμετωπίσει τα παραπάνω προβλήματα με δύο τρόπους (Stavropoulos et al., 2013b). Πρώτον, παρέχει ένα φιλικό προς τον χρήστη, διαισθητικό τρόπο σημασιολογικής επισήμανσης περιγραφών Υπηρεσιών Ιστού, χωρίς να απαιτούνται ειδικές γνώσεις. Δεύτερον, παρέχοντας πολλαπλές συστάσεις μπορεί να επισπεύσει την επισήμανση πολλών αρχείων, αυξάνοντας την παραγωγικότητα. Το κίνητρο για την ανάπτυξη του Iridescent ήταν η εμφανής έλλειψη τέτοιων εργαλείων και μεθοδολογιών (Della Valle et al., 2011), ήδη από την εποχή των OWL-S και WSMO προτύπων (Dimitrov et al., 2007) (Jaeger et al., 2005), που εμποδίζει τη διάδοση των Σημασιολογικών Υπηρεσιών Ιστού. Η μεγάλη πολυπλοκότητα των από πάνω προς τα κάτω μεθόδων, αλλά και η έλλειψη εργαλείων είναι εμφανής και στην εργασία (Gannod and Bhatia, 2004). Η υψηλή πολυπλοκότητα αυτών των προτύπων οδήγησε στη δημιουργία των από κάτω προς τα πάνω προσεγγίσεων. Ήδη το ελαφρύ πρότυπο SAWSDL έχει χρησιμοποιηθεί για Ταυτοποίηση (Tran et al., 2009), Ανακάλυψη (Iqbal et al., 2008) και Σύνθεση (Lécué et al., 2010), επιτρέποντας την ανάπτυξη έξυπνων εφαρμογών πελάτη. Μία ανασκόπηση των υπαρχόντων εργαλείων αποκαλύπτει ότι υπάρχει μεγάλο περιθώριο βελτίωσης. Με βάση αυτή, σχηματίστηκαν οι απαιτήσεις της εφαρμογής και αναπτύχθηκε το εργαλείο, το οποίο αξιολογήθηκε από χρήστες ως προς τη λειτουργικότητά του. Επιπλέον, αξιολογείται εκ του αποτελέσματος, εφόσον χρησιμοποιείται για την υλοποίηση πραγματικών έξυπνων εφαρμογών κατά την επισήμανση του awesome-s στο σύστημα Smart IHU Υπάρχοντα Εργαλεία Σημασιολογικής Επισήμανσης Υπηρεσιών Στην υποενότητα αυτή περιγράφονται τα κυριότερα υπάρχοντα εργαλεία σημασιολογικής ε- πισήμανσης υπηρεσιών με το πρότυπο SAWSDL. Στο τέλος της υποενότητας παρουσιάζεται μία σύγκριση χαρακτηριστικών μεταξύ αυτών και του προτεινόμενου εργαλείου Iridescent. Radiant Το εργαλείο Radiant (Gomadam et al., 2005) είναι το πρώτο εργαλείο που επέτρεψε τη σημασιολογική επισήμανση με SAWSDL. Δεν πρόκειται για αυτοτελή εφαρμογή, αλλά για plugin του Eclipse IDE 54 και βρίσκεται διαθέσιμο στο διαδίκτυο 55. Το περιβάλλον του Radiant προσφέρει προβολή του WSDL σε δενδρική δομή από το ίδιο το Eclipse. Ταυτόχρονα, το Eclipse δίνει τη δυνατότητα επεξεργασίας του WSDL κώδικα στον WSDL Editor. Οι χρήστες δημιουργούν ένα project και προσθέτουν ένα ή περισσότερα τοπικά αρχεία WSDL. Στη συνέχεια, το Radiant plug-in προβάλλει μία οντολογία σε δενδρική δομή, από ένα τοπικό αρχείο ή URL. Εκεί βρίσκεται μία μπάρα εργαλείων που παρέχει τις λειτουργίες επισήμανσης. Καταρχάς, οι χρήστες πρέπει χειροκίνητα να εισάγουν το namespace του SAWSDL στο σωστό σημείο του 53 Iridescent: 54 Eclipse IDE: 55 Radiant online: 167

168 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη κώδικα, δηλαδή στη λίστα wsdl:definitions. Αυτό γίνεται επιλέγοντας το σωστό σημείο και κάνοντας δεξί κλικ στο παράθυρο της οντολογίας. Επομένως, για αυτό το βήμα απαιτούνται γνώσεις κώδικα, αλλά και χειρισμού του εργαλείου. Με τον ίδιο τρόπο μπορούν να προσθέσουν το namespace της οντολογίας, ώστε τα URI των επισημάνσεων (ModelReferences) να είναι συντομότερα. Όσον αφορά την ίδια την επισήμανση, η λειτουργία αυτή δεν προσφέρεται πλέον, σε αντίθεση με όσα εξηγούνται στις οδηγίες του εργαλείου. Η ιδέα του Radiant ήταν να υποστηρίζει τη συγκεκριμένη λειτουργία με Drag n Drop ή με δεξί κλικ στην επιθυμητή κλάση. Ένα δεύτερο πρόβλημα είναι η διάταξη του περιβάλλοντος εργασίας του εργαλείου, αφού όλες οι λειτουργίες αναφέρουν παλαιότερη λειτουργικότητα που υποστήριζε το WSDL-S, τον προκάτοχο του SAWSDL. Οι όροι WSSEM, Action, Precondition και Effect ανήκουν στο WSDL-S και έχουν αφαιρεθεί από τον ορισμό του SAWSDL. Η τελευταία ενημέρωση του plug-in έγινε στις 29/05/2007 και υποστήριζε το Eclipse 3.2 και τη Java 1.5. WSMO Studio To WSMO Studio (Dimitrov et al., 2007) είναι ένα ολοκληρωμένο IDE που ενσωματώνει διάφορα εργαλεία για Σημασιολογικές Υπηρεσίες Ιστού, με τη μορφή λογισμικού ανοιχτού κώδικα 56. Διατίθεται με τη μορφή plug-in του Eclipse, όπως το Radiant, αλλά και ως αυτόνομη εφαρμογή. Το κίνητρο πίσω από το WSMO Studio είναι η υποστήριξη της οικογένειας τεχνολογιών WSMO, όμως το εργαλείο έχει επεκταθεί και σε ελαφριές περιγραφές με την υποστήριξη του SAWSDL. Συγκεκριμένα, αποτελείται από έναν επεξεργαστή WSMO (WSMO Editor), μία μηχανή συλλογιστικής WSML και έναν μετατροπέα WSMX που έχει σχέση με την εκτέλεση υπηρεσιών. Το WSMO Studio αναπτύχθηκε μεταξύ 2005 και 2009, ενώ η τελευταία ε- νημέρωση του SAWSDL plug-in έγινε το Υποστηρίζει Eclipse 3.2 και Java 1.5. Δυστυχώς, η λειτουργικότητα δεν προσφέρεται πια, αλλά τα χαρακτηριστικά του WSMO Studio κρίνονται όπως αυτά παρουσιάζονται σε εικόνες και οδηγίες του λογισμικού. SOWER Το SOWER ή αλλιώς WSMO-Lite Editor είναι μία ανοιχτού κώδικα web εφαρμογή που υποστηρίζει SAWSDL και WSMO-Lite ελαφριές περιγραφές υπηρεσιών. Κατά τη διάρκεια του προγράμματος SOA4All, που διήρκησε από τον Μάρτιο του 2008 μέχρι τον Φεβρουάριο του 2011, αναπτύχθηκαν πολλές εφαρμογές και μεταξύ αυτών το SWEET (Semantic Web services Editing Tool) και το SOWER (Sweet is not a Wsdl EditoR). Το SWEET υποστηρίζει επισήμανση RESTful υπηρεσιών και συγκεκριμένα παράγει hrests και MicroWSMO επισημάνσεις πάνω σε HTML περιγραφές. Είναι πολύ παρόμοιο με το SOWER σε ό,τι αφορά τον σχεδιασμό και τη χρηστικότητα, αλλά ελαφρώς πιο περίπλοκο για να συμμορφώνεται με τη φύση των διαφορετικών τύπων δεδομένων. Η επισήμανση RESTful υπηρεσιών βρίσκεται έξω από τη σκοπιά της διατριβής, επομένως εξετάζεται μόνο το SOWER στην παρούσα σύγκριση. 56 WSMO Studio online: 168

169 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Το SOWER είναι προσβάσιμο στο διαδίκτυο 57, μαζί με επεξηγηματικά βίντεο που καλύπτουν όλες τις λειτουργίες του. Η γραφική διεπαφή του είναι ελκυστική, φιλική στο χρήστη και ενστικτώδης στον χειρισμό της, αφού όλες οι λειτουργίες γίνονται με Drag n Drop. Ο χρήστης μπορεί να ανοίξει πολλές οντολογίες ταυτόχρονα, οι οποίες εισάγονται και προβάλλονται στην ίδια δενδρική δομή. Επίσης, ανοίγει μία και μόνο WSDL περιγραφή που προβάλλεται σε δενδρική δομή στο πάνω τμήμα της εφαρμογής και σε κώδικα στο κάτω τμήμα. Οι δύο τύποι εγγράφων, οι οντολογίες και οι περιγραφές υπηρεσιών μπορούν να ανοιχτούν είτε από URL είτε από ένα ειδικό αποθετήριο των SOA4All εργαλείων. Με το άνοιγμα του WSDL, το SOWER σιωπηλά προσθέτει το SAWSDL namespace. Αυτό μπορεί να είναι επιθυμητό ως επί το πλείστον, αλλά μπορεί να δημιουργήσει σύγχυση εάν ο χρήστης δεν μπορεί να το διαχειριστεί (χωρίς παρέμβαση στον κώδικα). Οι χρήστες μπορούν να αναζητούν έννοιες στην οντολογία με κείμενο και να επισημαίνουν το WSDL με αυτές μέσω Drag n Drop. Το αρχείο που προκύπτει μπορεί να σώζεται κάθε στιγμή στο iserve, το εργαλείο διαφήμισης υπηρεσιών του SOA4All ή στο ειδικό αποθετήριο από όπου μπορεί να ανακτηθεί και τοπικά αργότερα. Σύγκριση Iridescent και Υπαρχόντων Εργαλείων Ο Πίνακας 5.1 παρουσιάζει μία σύγκριση των χαρακτηριστικών των υπαρχόντων εργαλείων και του Iridescent. Τα πρώτα χαρακτηριστικά αφορούν γενικές ιδιότητες, όπως το έτος και η ύπαρξη τεκμηρίωσης. Η αρχιτεκτονική των εφαρμογών ποικίλει από desktop (είτε σαν Eclipse plug-in είτε σαν αυτόνομη εφαρμογή) μέχρι web, όπως το SOWER. Η επιλογή της desktop αρχιτεκτονικής για το Iridesent έγινε συνειδητά, ώστε να μην απαιτείται πάντα σύνδεση στο διαδίκτυο. Άλλωστε, οι επεξεργαστές κειμένου ή τα εργαλεία ανάπτυξης πρέπει να είναι πάντα διαθέσιμα στους προγραμματιστές (σε αντίθεση με άλλες εφαρμογές cloud φύσης όπως το ). Για τον ίδιο λόγο, δε δίνεται η δυνατότητα αποθήκευσης στο cloud όπως στο SOWER. Στο τελευταίο, οι χρήστες περιορίζονται αφού είναι αναγκασμένοι να αποθηκεύουν τα αρχεία στο cloud σε μία αυθαίρετα δομημένη και μη-ασφαλή οργάνωση αρχείων. Αυτή η δυνατότητα θα μπορούσε να προσφερθεί ως μελλοντική προσθήκη, αφού ληφθούν υπόψιν απαιτήσεις ασφαλείας και συγκεκριμένες απαιτήσεις/σενάρια χρήσης. Στη συνέχεια, εξετάζονται οι δυνατότητες χειρισμού αρχείων WSDL και οντολογιών. Όλα τα εργαλεία δίνουν τη δυνατότητα φόρτωσης τοπικών αρχείων, αλλά μόνο κάποια από αυτά φορτώνουν αρχεία από URL. Πράγματι, τα επιθυμητά αρχεία βρίσκονται αρκετά συχνά στον Ιστό, αφού αυτή είναι η φύση τους. Επομένως, το Iridescent υποστηρίζει και τις δύο δυνατότητες. Μία ακόμα απαίτηση είναι η φόρτωση και ταυτόχρονη επεξεργασία πολλών αρχείων. Αυτή η δυνατότητα είναι χρήσιμη για τα αρχεία οντολογιών, αφού επιτρέπει τη γρήγορη εναλλαγή τους για επισήμανση από πολλές πηγές. Το SOWER μπορεί να φορτώσει πολ- 57 SOWER online: 169

170 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη λές οντολογίες, όμως τις προβάλλει στην ίδια δενδρική δομή. Επομένως, αυτή η δομή μεγαλώνει γρήγορα δυσκολεύοντας τον χειρισμό της, χωρίς τη χρήση της αναζήτησης. Για αυτό τον λόγο, στο Iridescent οι οντολογίες φορτώνονται σε ξεχωριστά δέντρα που μπορούν να εναλλάσσονται (με dropdown box). 170 Πίνακας 5.1. Σύγκριση χαρακτηριστικών των εργαλείων επισήμανσης με SAWSDL Χαρακτηριστικό Radiant WSMO Studio SOWER Iridescent Έτος Τεκμηρίωση Αρχιτεκτονική Εφαρμογής Eclipse 3 Plugin Eclipse 3 Plugin, Desktop Εφαρμογή Web Εφαρμογή Desktop Εφαρμογή Φόρτωση τοπικών WSDL Φόρτωση WSDL από τον Ιστό Φόρτωση πολλαπλών WSDLs Αυτόματη φόρτωση αρχείων schema Φόρτωση τοπικών οντολογιών Φόρτωση οντολογιών από τον Ιστό Φόρτωση πολλαπλών οντολογιών Αυτόματη φόρτωση συνδεδεμένων οντολογιών Αναζήτηση κλάσης οντολογίας Προσθήκη SAWSDL namespace Αφαίρεση SAWSDL namespace Επισήμανση με Drag n Drop (ίδιο δέντρο) (καρτέλες) Επισήμανση με δεξί κλικ - Επισήμανση από γραμμή εργαλείων - Παροχή συστάσεων

171 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Η φόρτωση πολλαπλών αρχείων WSDL είναι επίσης χρήσιμη ώστε να επισημαίνονται ταυτόχρονα από τις ίδιες πηγές-οντολογίες. Αυτό συμβαδίζει με μία κοινή πρακτική ανάπτυξης, που ακολουθείται και από το διαδεδομένο NetBeans IDE για Java, κατά την οποία οι τύποι δεδομένων δε βρίσκονται μέσα στο WSDL, αλλά σε ένα ξεχωριστό αρχείο schema τύπου xsd. Άλλες φορές, οι περιγραφές εκτείνονται σε περισσότερα των δύο αρχείων, λόγω όγκου ή καλού σχεδιασμού. Σε αυτές τις περιπτώσεις, το άνοιγμα όλων των συνδεδεμένων αρχείων είναι αναγκαίο για να μπορεί να επισημανθεί η υπηρεσία έχοντας συνολική εικόνα. Τα πρώτα εργαλεία βασίζονται στο Eclipse, το οποίο ούτως ή άλλως υποστηρίζει το άνοιγμα πολλών WSDL σε καρτέλες. Η ίδια λειτουργία υποστηρίζεται και στο Iridescent, αλλά βελτιωμένη, γιατί τα συνδεδεμένα αρχεία που αναφέρονται μέσα σε ένα WSDL ανοίγονται αυτόματα σε καρτέλες. Παρομοίως, τα αρχεία οντολογιών, π.χ. OWL, περιέχουν και αυτά αναφορές σε άλλα, τα λεγόμενα imports. Οι περισσότεροι επεξεργαστές οντολογιών ανοίγουν αυτόματα τα συνδεδεμένα αρχεία, αφού αποτελούν αναπόσπαστο κομμάτι της οντολογίας. Tα εργαλεία SOWER και Iridescent ανοίγουν επίσης αυτόματα τα συνδεδεμένα αρχεία, αλλά το SOWER δεν προσφέρει τη δυνατότητα εύρεσης ενός συνδεδεμένου αρχείου που λείπει. Αυτό είναι ένα κοινό συμβάν, είτε λόγω έλλειψης σύνδεσης στο διαδίκτυο, είτε λόγω λαθών. Στο Iridescent δίνεται η δυνατότητα εντοπισμού ή αντικατάστασης αυτών των αρχείων, όταν δεν βρίσκονται αυτόματα, με τρόπο παρόμοιο με αυτό του διαδεδομένου εργαλείου Protégé. Συνολικά, αυτές οι δυνατότητες συνεισφέρουν σε μία αυτόματη δυναμική φόρτωση όλων των χρήσιμων αρχείων στο Iridescent και στη διευκόλυνση επισήμανσης πολλών αρχείων από πολλές πηγές ταυτόχρονα. Τα τελευταία χαρακτηριστικά αφορούν λειτουργικότητα και επιπρόσθετη αξία. Όλα τα εργαλεία δίνουν τη δυνατότητα προβολής κώδικα ή δενδρικής δομής για τα WSDL και τις οντολογίες. Παραδοσιακά, η επισήμανση γίνεται με Drag n Drop των κλάσεων σε κόμβους WSDL. Παρότι αυτός είναι ο πιο ενστικτώδης τρόπος επισήμανσης, απαιτεί ακρίβεια χειρισμού και χειροκίνητη εξερεύνηση των κόμβων. Στο Iridescent γίνεται προσπάθεια παροχής πολλών εναλλακτικών τρόπων εκτέλεσης μιας ενέργειας, δηλαδή μέσω κουμπιών γραμμής εργαλείων, μενού του δεξιού κλικ και συστάσεων. Έτσι, απαιτείται λιγότερη εξερεύνηση του εργαλείου κατά την εκμάθηση, αφού οι λειτουργίες εμφανίζονται σε πολλά σημεία. Η αξιολόγηση χρηστών που παρουσιάζεται στη συνέχεια, επαλήθευσε αυτή την επιλογή αφού 60% των χρηστών προτιμούν να έχουν στη διάθεσή τους τόσο το Drag N Drop, όσο και τα μενού και κουμπιά. Ένα ακόμα σημείο ενδιαφέροντος είναι η εισαγωγή του SAWSDL namespace από τα εργαλεία. Στο Radiant, απαιτείται γνώση για ακριβή εισαγωγή στον κώδικα. Στο SOWER γίνεται αυτόματα, σιωπηλά (διαφανώς) και είναι μη αναστρέψιμο. Αντίθετα, στο Iridescent το namespace είναι ορατός κόμβος και μπορεί να προστεθεί ή να αφαιρεθεί εύκολα χωρίς τη γνώση κώδικα. Τέλος, το Iridescent εισάγει την καινοτόμα δυνατότητα ημι-αυτόματης επισήμανσης πολλαπλών αρχείων με την παροχή συστάσεων. Αυτό γίνεται με τη συντακτική ταυτοποίηση 171

172 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη των κλάσεων με τους κόμβους του WSDL μέσω παραμετροποιήσιμων αλγορίθμων. Οι χρήστες μπορούν να επιλέξουν από λίστα πόσες και ποιες συστάσεις θα εισάγουν στην περιγραφή, κάτι που διευκολύνει και επιταχύνει τη διαδικασία Απαιτήσεις Εφαρμογής Iridescent Οι απαιτήσεις της εφαρμογής βασίστηκαν στην ανάλυση της βιβλιογραφίας που έγινε παραπάνω. Σε κάθε περίπτωση εξηγούνται οι αποφάσεις που λήφθηκαν. 172 Συμβατότητα Το εργαλείο πρέπει να είναι ανεξάρτητο πλατφόρμας, αφού απευθύνεται σε ένα ευρύ κοινό που περιλαμβάνει έρευνα, βιομηχανία και μεμονωμένους προγραμματιστές. Η πλατφόρμα της Java επιλέχθηκε για αυτό τον λόγο. Διαθεσιμότητα Επειδή προορίζεται για ανάπτυξη εφαρμογών, το εργαλείο, όπως και όλοι οι απαραίτητοι πόροι, θα πρέπει να είναι πάντα προσπελάσιμοι. Η διαθεσιμότητα μίας online εφαρμογής είναι εξαρτημένη από περιορισμούς συνδεσιμότητας και τον πρόσθετο κόπο να ανεβάζει κανείς και να κατεβάζει τα αρχεία. Επομένως, το εργαλείο υλοποιήθηκε σαν μία desktop εφαρμογή, όπως τα περισσότερα υπάρχοντα εργαλεία προγραμματισμού (IDEs), που όμως δεν απαιτεί εγκατάσταση, είναι ανεξάρτητη πλατφόρμας και ελάχιστα απαιτητική όσον αφορά πόρους. Οι πηγές δεδομένων για την ανάπτυξη, δηλαδή οι οντολογίες και οι υπηρεσίες, μπορούν να φορτωθούν τόσο τοπικά, όσο και από τον Ιστό. Χρηστικότητα Η εφαρμογή πρέπει να είναι όσο το δυνατόν πιο φιλική στον χρήστη, ακόμα και για αυτούς που δεν έχουν γνώση των τεχνολογιών Σημασιολογικών Υπηρεσιών Ιστού. Η διάταξη της διεπαφής και η σχεδίασή της θα πρέπει να είναι διαισθητική και να συμβάλλει στη γρήγορη εκμάθηση του εργαλείου. Η διάταξη του Iridescent ακολουθεί παρόμοια εργαλεία. Το αριστερό μέρος φιλοξενεί τις οντολογίες και οτιδήποτε σχετίζεται με αυτές. Το ίδιο συμβαίνει με τις υπηρεσίες που φιλοξενούνται στο κεντρικό και στο δεξί μέρος. Οι έννοιες οντολογία και υπηρεσία διαχωρίζονται με ξεχωριστά χρώματα και σύμβολα που σχεδιάστηκαν ειδικά για την εφαρμογή, ώστε να βοηθήσουν τον χρήστη στην οπτική διάκρισή τους. Σύμφωνα με το μοτίβο που προτείνεται, οι έννοιες του SAWSDL έχουν κυανό χρώμα, οι έννοιες του WSDL έχουν μπλε χρώμα και οι έννοιες των οντολογιών έχουν κόκκινο χρώμα. Ένα υπόμνημα αυτών των συμβολισμών φαίνεται στην Εικόνα 5.9, αλλά και στο μενού Help της εφαρμογής. Οι λειτουργίες προσφέρονται παρομοίως με διαισθητικό τρόπο είτε μέσω Drag n Drop, είτε μέσω γραμμής εργαλείων, είτε με το μενού του δεξιού κλικ. Η χρηστικότητα υποστηρίζεται, επίσης, με αυτόματες διαδικασίες, όπως το αυτόματο άνοιγμα των απαραίτητων αρχείων οντολογιών και υπηρεσιών που συνδέονται με τα ήδη ανοιγμένα. Τέλος, πολλά αρχεία μπορούν να είναι ταυτόχρονα ανοιχτά και να εναλλάσσονται διευκολύνοντας τις περίπλοκες διεργασίες. Επεκτασιμότητα Το εργαλείο θα πρέπει να είναι επεκτάσιμο σε μελλοντικές τεχνολογίες και πρότυπα. Στην τρέχουσα μορφή του, το δέντρο οντολογιών υποστηρίζει OWL και RDF έγγραφα, αλλά είναι σχεδιασμένο ώστε να μπορεί να επεκταθεί σε άλλες μορφές. Κάθε είδος αρχείου Schema Mapping υποστηρίζεται ήδη με απλή αναφορά στο URL του.

173 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα 5.9. Υπόμνημα της γραφικής αναπαράστασης εννοιών στο Iridescent Τεκμηρίωση Χρηστική και ενημερωμένη τεκμηρίωση είναι απαίτηση για κάθε εφαρμογή. Το υλικό εκμάθησης του Iridescent είναι διαθέσιμο στη σελίδα του και αποτελείται από παρουσίαση και εγχειρίδιο χρήσης. Επειδή η παρουσίαση χρησιμοποιήθηκε για την εξοικείωση των δοκιμαστικών χρηστών (beta testers) της εφαρμογής, περιλαμβάνει την απαραίτητη εισαγωγή στις γενικές έννοιες των Σημασιολογικών Υπηρεσιών Ιστού και στη συνέχεια καθοδηγεί τον χρήστη στη δημιουργία SAWSDL μέσα από τρία σενάρια που εκμεταλλεύονται πλήρως το εργαλείο. Λειτουργικές Απαιτήσεις Με τη χρήση του εργαλείου, ένας χρήστης θα πρέπει να είναι σε θέση να δημιουργήσει ή να επεξεργαστεί ένα ολοκληρωμένο και συντακτικά ορθό SAWSDL αρχείο δεδομένων ενός WSDL ή SAWSDL αρχείου και μίας ή περισσότερων οντολογιών. Το SAWSDL στην ουσία εισάγει τρία νέα στοιχεία: τα Model References, τα Schema Mappings (ως extension attributes της WSDL) και το SAWSDL namespace. Ο χρήστης πρέπει να έχει τη δυνατότητα να προσθέσει ή να αφαιρέσει οποιοδήποτε από αυτά τα στοιχεία, χωρίς κανέναν περιορισμό, όπως ακριβώς θα έκανε με επεμβάσεις στον κώδικα. Επιπλέον, θα πρέπει να παρέχονται διευκολύνσεις προστιθέμενης αξίας, όπως αναζήτηση. Το εργαλείο θα πρέπει να παρέχει τρόπους για γρήγορη επισήμανση πολλών αρχείων και αύξηση παραγωγικότητας. Αυτό υποστηρίζεται με τη διαχείριση πολλών αρχείων ταυτόχρονα, την παροχή συστάσεων και τη μαζική εισαγωγή επισημάνσεων Επισήμανση στο Iridescent Σύμφωνα με τις παραπάνω απαιτήσεις, το Iridescent παρέχει ένα πλήρες γραφικό μέσο επισήμανσης ως εναλλακτικό του κώδικα. Η Εικόνα 5.10 δείχνει το κύριο παράθυρο της εφαρμογής, υλοποιημένης σε Java και Java Swing, το οποίο χωρίζεται σε δύο τμήματα εμφανή από το διαφορετικό χρώμα. Το Πάνελ Οντολογιών βρίσκεται στα αριστερά, ενώ το Πάνελ Υπηρεσιών στα δεξιά. Το πρώτο παρέχει κουμπιά για Άνοιγμα (Open), Κλείσιμο (Close), Επαναφόρτωση (Reload) οντολογιών και Παροχή Συστάσεων (Recommendations) σε σχέση με αυτές, όπως αυτά εμφανίζονται από αριστερά προς τα δεξιά. Οι οντολογίες φορτώνονται σε δεντρική δομή, εισάγοντας αυτόματα έννοιες από τα συνδεδεμένα αρχεία. Οι οντολογίες μπορούν να εναλλάσσονται μεταξύ τους μέσω του dropdown κουτιού. Σε περίπτωση εξωτερικής 173

174 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Το κύριο παράθυρο της εφαρμογής Iridescent επεξεργασίας μιας οντολογίας μπορεί να γίνει επαναφόρτωση. Το κουτί αναζήτησης υποστηρίζει αυτόματη συμπλήρωση για την εύρεση εννοιών με λέξη-κλειδί. Για την επισήμανση, μία έννοια οντολογίας μπορεί να γίνει Drag n Drop πάνω στον επιθυμητό κόμβο της υπηρεσίας. Η δυνατότητα παροχής συστάσεων αναλύεται παρακάτω. Το Πάνελ Υπηρεσιών παρομοίως φιλοξενεί δεντρική δομή του αρχείου των υπηρεσιών και κουμπιά για τις λειτουργίες που τις αφορούν. Τα κουμπιά πάνω δεξιά χρησιμοποιούνται για το άνοιγμα και την αποθήκευση αρχείων WSDL, SAWSDL ή xsd, από τον Ιστό ή τον τοπικό δίσκο. Με το άνοιγμα αρχείου, τα στοιχεία του φορτώνονται στο δέντρο δεξιά, εμφανίζοντας με μπλε τα στοιχεία WSDL και κυανό τα στοιχεία SAWSDL. Για παράδειγμα, η Εικόνα 5.10 δείχνει ένα WSDL αρχείο χωρίς επισημάνσεις, ενώ η Εικόνα 5.11 ένα xsd αρχείο με τις επισημάνσεις Humidity και Temperature. Για να γίνεται αισθητό και διαχειρίσιμο το SAWSDL namespace, προβάλλεται επίσης σαν κόμβος του δέντρου (παρότι είναι attribute και όχι κόμβος). Με δεξί κλικ στον επιθυμητό κόμβο μπορεί να γίνει προσθήκη Model Reference ή Schema Mapping (Lifting ή Lowering). Τα κουμπιά πάνω αριστερά στο Πάνελ Υπηρεσιών παρέχουν δυνατότητες συγγραφής SAWSDL, δηλαδή προσθήκη ή αφαίρεση του SAWSDL namespace, προσθήκη Schema Mapping και προσθήκη Model Reference σε οποιονδήποτε κόμβο, όπως εμφανίζονται από αριστερά προς τα δεξιά. Ο κόμβος για τον οποίον προορίζεται το στοιχείο επιλέγεται σε επόμενο βήμα. Η ύπαρξη ή μη του SAWSDL namespace ανιχνεύεται αυτόματα, αλλάζοντας το κουμπί αντίστοιχα. Τα κουμπιά προσθήκης Schema Mapping και Model Reference ενεργοποιούνται μόνο εφόσον έχει ανοιχθεί τουλάχιστον μία οντολογία ως πηγή. Για τα Schema Mappings, ο χρήστης απλά παρέχει το URL του αρχείου μετασχηματισμού. Ως μελλοντική επέκταση, θα 174

175 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού μπορούσε να υπάρχει υποβοήθηση για τη συγγραφή (και ανέβασμα στον Ιστό) του ίδιου του αρχείου μετασχηματισμού εκτός του SAWSDL. Οι προδιαγραφές WSDL 1.1 και WSDL 2.0 υποστηρίζονται και οι δύο σύμφωνα με τον ορισμό του SAWSDL. Συγκεκριμένα, η μόνη διαφορά μεταξύ των δύο εκδόσεων είναι ότι στο 1.1 οι λειτουργίες επισημαίνονται με χρήση του στοιχείου attrextensions εισάγοντας το Model Reference ως κόμβο-παιδί. Όλα τα υπόλοιπα στοιχεία 1.1 και 2.0 επισημαίνονται με το attribute sawsdl:modelreference. Στον κεντρικό τομέα του παραθύρου προβάλλεται ο κώδικας του αρχείου με χρωματισμένη XML μορφή. Το κουμπί στο κάτω μέρος του κώδικα εκτελεί συντακτική επαλήθευση του XML. Η λίστα των ανοιγμένων αρχείων, οντολογιών και υπηρεσιών, σώζεται εσωτερικά ώστε να επαναφέρεται κάθε φορά η συνεδρία του χρήστη με το άνοιγμα της εφαρμογής. Η γραμμή μενού της εφαρμογής προσφέρει ξανά αυτές τις δυνατότητες και επιπρόσθετα τη δυνατότητα αλλαγής της εμφάνισης με χρωματικούς συνδυασμούς. Δύο από αυτούς φαίνονται στην Εικόνα 5.10 και την Εικόνα Ακόμη, εμφανίζει πληροφορίες για την εφαρμογή και το υπόμνημα της γραφικής αναπαράστασης εννοιών. Συνοψίζοντας οι λειτουργίες που μπορεί να επιτελέσει ένας χρήστης είναι οι εξής και προσφέρονται με πολλούς τρόπους: 1) Προσθήκη SAWSDL namespace Κουμπί του Πάνελ Υπηρεσιών Μενού WSDL Δεξί κλικ στον κόμβο-ρίζα του δέντρου WSDL (description ή definition) 2) Προσθήκη Schema Mapping (Lifting ή Lowering) Κουμπί του Πάνελ Υπηρεσιών Μενού WSDL Δεξί κλικ στον επιθυμητό κόμβο WSDL 3) Προσθήκη Model Reference Κουμπί του Πάνελ Υπηρεσιών Μενού WSDL Δεξί κλικ στον επιθυμητό κόμβο Drag n Drop κλάσης στον επιθυμητό κόμβο Παροχή Συστάσεων 4) Αφαίρεση SAWSDL στοιχείου (namespace, Model Referecne, Schema Mapping) Δεξί κλικ στο επιθυμητό στοιχείο από το δένδρο WSDL Κουμπί του Πάνελ Υπηρεσιών (για το namespace) Παροχή Συστάσεων στο Iridescent Όσον αφορά την παροχή συστάσεων, η βασική ιδέα είναι ότι οι χρήστες χρησιμοποιούν συντακτικά δεδομένα, δηλαδή τις περιγραφές σε κείμενο, για να αναγνωρίσουν και να ταυτοποιήσουν την επιθυμητή έννοια με το στοιχείο προς επισήμανση. Στη συνέχεια, είτε συγκρίνουν τα ονόματα κειμένου, είτε οδηγούνται από ανώτερη γνώση του πεδίου ή εσωτερική επιθυμία. Ενώ η δεύτερη περίπτωση δεν μπορεί προς το παρόν να προσδιοριστεί, στην πρώτη περίπτωση το εργαλείο μπορεί να βοηθήσει με απλή συντακτική ταυτοποίηση του κειμένου. 175

176 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Προβολή schema της SensorBoardService υπηρεσίας με επισημάνσεις Humidity και Temperature στο παράθυρο του Iridescent Η λειτουργία Παροχής Συστάσεων της εφαρμογής ενεργοποιείται όταν έχει φορτωθεί μία τουλάχιστον οντολογία και μία υπηρεσία. Όταν κληθεί, εμφανίζει το παράθυρο διαλόγου όπως φαίνεται στην Εικόνα 5.12, οδηγώντας τον χρήστη σε αυτόματη ταυτοποίηση των εννοιών της ενεργούς οντολογίας και των κόμβων της ενεργούς υπηρεσίας (WSDL ή xsd αρχείο). Τρεις αλγόριθμοι παρέχονται για αυτόν τον σκοπό: η απόσταση Levenshtein, ο Fuzzy String Search (γνωστός και ως Approximate Matching) και ο Common Words. Ενώ η απόσταση Levenshtein θεωρείται γνωστή, ο Fuzzy String Search υπολογίζει την ελάχιστη απόσταση Levenshtein για όλα τα substrings των δύο strings (Εικόνα 5.13). Ο αλγόριθμος Common Words αναπτύχθηκε στα πλαίσια της διατριβής με βάση την παρατήρηση ότι τα ονόματα εννοιών και κόμβων παραδοσιακά εκφράζουν συντετμημένες φράσεις σε μία λέξη χωρίς κενά. Αυτό γίνεται συνήθως με κάποια προγραμματιστική πρακτική όπως το CamelCase, π.χ. η φράση immune system γίνεται ImmuneSystem. Ο αλγόριθμος χωρίζει αυτές τις φράσεις με βάση τα κεφαλαία γράμματα και κατόπιν ψάχνει για κοινές λέξεις ανάμεσα στις δύο φράσεις. Σαν αποτέλεσμα, είναι ιδιαίτερα αποτελεσματικός σε περιπτώσεις όπου τα κείμενα περιέχουν κοινές λέξεις χωρίς να χρειάζεται το ένα να περιέχεται ολόκληρο στο άλλο. Αντίθετα, οι άλλοι δύο αλγόριθμοι περιορίζονται στην ανίχνευση φράσεων όπου η μία είναι substring της άλλης. Για παράδειγμα, στο σενάριο επισήμανσης του Smart IHU, ο Fuzzy String Search και ο Common Words βρίσκουν εξίσου καλά την ταύτιση μεταξύ Temperature - GetRecentTem- 176

177 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα Παροχή Συστάσεων για το SmartPlugService WSDL, με τον αλγόριθμο Common Words Εικόνα Παροχή Συστάσεων για το SensorBoardService schema με Fuzzy String Search peratureresponse, Humidity - GetRecentHumidityResponse ή PowerConsumption - Get- PowerConsumptionResponse. Όμως, μόνο ο Common Words βρίσκει την ταύτιση μεταξύ SwitchAction - SwitchOn και SwitchOff. Όλοι οι αλγόριθμοι δίνουν κανονικοποιημένη βαθμολογία και είναι εξαντλητικοί (βαθμολογούν όλους τους κόμβους με όλες τις έννοιες). Τα αποτελέσματα της ταυτοποίησης εμφανίζονται σε πίνακα και μπορούν να φιλτραριστούν είτε με κατώφλι βαθμολογίας, είτε με λέξη-κλειδί. Επίσης, μπορούν να ταξινομηθούν σύμφωνα με οποιαδήποτε στήλη (έννοια, στοιχείο WSDL, είδος στοιχείου WSDL). Ο χρήστης μπορεί να μαρκάρει πόσες και ποιες προτεινόμενες επισημάνσεις θα εισάγει τελικά στην υπηρεσία. 177

178 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Επισήμανση Υπηρεσιών awesome-s στο Smart IHU Το σενάριο επισήμανσης υπηρεσιών που παρουσιάζεται εδώ χρησιμεύει τόσο ως περίπτωση χρήσης του Iridescent, όσο και ως βάση για τις σημασιολογικές εφαρμογές που παρουσιάζονται στη συνέχεια της διατριβής. Τα σενάρια επισήμανσης βρίσκονται διαθέσιμα με τη μορφή παρουσίασης στη σελίδα της εφαρμογής. Οι εν λόγω Υπηρεσίες Ιστού βρίσκονται εγκατεστημένες στο περιβάλλον του συστήματος Smart IHU μέσω του ενδιάμεσου λογισμικού awesome, όπως αυτά παρουσιάστηκαν στο Κεφάλαιο 2. Στόχος του συστήματος είναι η εξοικονόμηση ενέργειας και η παροχή ανέσεων με βάση ενεργειακούς και περιβαλλοντικούς αισθητήρες. Το ενδιάμεσο λογισμικό εκθέτει τις λειτουργίες και τα δεδομένα αυτών των συσκευών στο περιβάλλον του έξυπνου κτιρίου μέσω WSDL (Stavropoulos et al., 2013a). Όσον αφορά την προσθήκη σημασιολογίας στις υπηρεσίες πολλά υπάρχοντα συστήματα έχουν ακολουθήσει τα από πάνω προς τα κάτω μοντέλα, όπως η OWL-S (Qiu et al., 2006) (Thomson et al., 2008). Αργότερα, με την εμφάνιση του SAWSDL, αναδύθηκαν συστήματα που το υποστηρίζουν και αυτό, μεταφράζοντάς το σε εσωτερικές αναπαραστάσεις (Georgantas et al., 2010) (Eisenhauer et al., 2010). Αντίθετα, στο awesome-s χρησιμοποιείται το SAWSDL ως μόνο μέσο σημασιολογικής επισήμανσης, για να εξασφαλίζεται η μέγιστη συμβατότητα με εξωτερικούς πελάτες. Επιπλέον, το SAWSDL επαρκεί για τις δυνατότητες ταυτοποίησης, σύνθεσης και έξυπνων εφαρμογών που εφαρμόζονται στη συνέχεια. Η οντολογία BOnSAI, όπως έχει παρουσιαστεί στην προηγούμενη ενότητα, επεκτείνει υπάρχουσες οντολογίες με έννοιες έξυπνων κτιρίων, π.χ. οι Περιβαλλοντικές Συνθήκες, η Τοποθεσία κ.α. Οι έννοιες που προστέθηκαν ειδικά για το σύστημα Smart IHU ταιριάζουν απόλυτα στις συσκευές της εγκατάστασής του, δηλαδή οι Έξυπνες Μπρίζες, οι Έξυπνες Δαγκάνες, κ.α. Οι διαθέσιμες υπηρεσίες του awesome είναι ήδη ομαδοποιημένες σε πέντε υπηρεσίες ανάλογα με τις συσκευές αυτές: Υπηρεσία Έξυπνων Μπριζών, Υπηρεσία Έξυπνων Δαγκανών, Υπηρεσία Πλακετών Αισθητήρων, Υπηρεσία Z-Wave, Υπηρεσία Τεχνολογιών Πληροφορικής. Ο σκοπός των σεναρίων επισήμανσης είναι να περιγραφεί σημασιολογικά η είσοδος και η έξοδος των λειτουργιών, καθώς και ο ορισμός μετασχηματισμών. Για τους σκοπούς του παραδείγματος η BOnSAI, το SmartPlugService και το SensorBoardService ανοίγονται από URL ή τοπικά αρχεία. Οι υπηρεσίες έχουν γραφεί σε WSDL με συνοδευτικά xsd schema αρχεία τα οποία ανοίγονται αυτόματα. Οι επιθυμητές έννοιες εντοπίζονται είτε χειροκίνητα είτε με αναζήτηση και χρησιμοποιούνται για την επισήμανση των ίδιων των τύπων δεδομένων ComplexTypes των υπηρεσιών. Επιπλέον, χρησιμοποιείται και η δυνατότητα Παροχής Συστάσεων. Για παράδειγμα, η έννοια PowerConsumption ανατίθεται ως τύπος επιστροφής της GetPower, δηλαδή του ComplexType GetPowerResponse, με χρήση του αλγορίθμου Common Words, όπως φαίνεται στην Εικόνα Με τον ίδιο τρόπο, οι επιθυμητές επισημάνσεις στα GetRecentTemperatureResponse και GetRecentHumidityResponse με Temperature και Humidity αντίστοιχα, μπορούν να εντοπιστούν από Fuzzy String Search, κάτι που φαίνεται στην Εικόνα Σε όλη τη διάρκεια της διαδικασίας ο χρήστης βλέπει τις αλλαγές στον κώδικα και στο δέντρο, ενώ μπορεί να τις αναιρέσει. Το σενάριο περιλαμβάνει ενδεικτικά την εισαγωγή ενός Lifting Schema Mapping από XML σε RDF. Ο Πίνακας 5.2 δείχνει τις βασικές 178

179 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού επισημάνσεις και την πλήρη λίστα των σημασιολογικών υπηρεσιών. Ένα δείγμα των επισημάνσεων SAWSDL στα αρχεία WSDL του awesome, δίνεται στο Παράρτημα Β. Τις επισημάνσεις αυτές εκμεταλλεύεται πληθώρα εφαρμογών, με κύρια οφέλη τη δυναμικότητα και τη διαλειτουργικότητα, αφού οι υπηρεσίες μπορούν πλέον να προστίθενται, να εντοπίζονται και να αφαιρούνται δυναμικά. Δύο κύριες κατευθύνσεις είναι η αυτόματη σημασιολογική ταυτοποίηση και σύνθεση των υπηρεσιών που εξετάζεται στην επόμενη ενότητα, αλλά και έξυπνοι πράκτορες που ορίζουν σημασιολογικούς κανόνες για αυτοματισμούς Αξιολόγηση Χρηστών Ένα δείγμα είκοσι χρηστών αξιολόγησε την εφαρμογή ως προς τη χρηστικότητά της σε δύο φάσεις. Συγκεκριμένα, δεκαεπτά από αυτούς ήταν προπτυχιακοί φοιτητές πληροφορικής με δύο να έχουν προηγούμενη εμπειρία με WSDL και έναν με SAWSDL. Οι υπόλοιποι αξιολογητές ήταν: ένας υποψήφιος διδάκτωρ, ένας μεταπτυχιακός φοιτητής (αμφότεροι με εξειδίκευση στην Τεχνητή Νοημοσύνη) και ένας φοιτητής χωρίς υπόβαθρο πληροφορικής. Για την επιλογή των χρηστών, το κίνητρο ήταν η έλλειψη εξειδικευμένης εμπειρίας σε Σημασιολογικό Ιστό και περιγραφές SAWSDL, ώστε να αναδειχθεί ο φιλικός και προσιτός στη χρήση χαρακτήρας του εργαλείου, ακόμα και για μη ειδικούς χρήστες. Γραφική Αναπαράσταση Το πρώτο κομμάτι της αξιολόγησης αφορά το μοντέλο γραφικής αναπαράστασης που υιοθετήθηκε στο Iridescent, το οποίο περιλαμβάνει τα σύμβολα, τις δεντρικές δομές και την εμφάνιση του κώδικα. Για να μετρηθεί η αποδοτικότητα της αναπαράστασης, οι χρήστες κλήθηκαν να μετρήσουν διαφορετικά στοιχεία των WSDL/SAWSDL εγγράφων, αφού τους δόθηκε μία σαφής εξήγηση αυτών των εννοιών και της αναπαράστασής τους. Αυτό το μέτρο δίνει μια Πίνακας 5.2. Σημασιολογική επισήμανση των υπηρεσιών του awesome-s Υπηρεσία Λειτουργία Σημασιολογία Εξόδου Σημασιολογία Λειτουργίας SmartPlugService SwitchOn haseffect:status ActuatorOperation SmartPlugService SwitchOff haseffect:status ActuatorOperation SmartPlugService GetPower Power SensorOperation SmartPlugService GetStatus Status SensorOperation SmartClamperService GetPower Power SensorOperation SensorBoardService GetTemperature Temperature SensorOperation SensorBoardService GetHumidity Humidity SensorOperation SensorBoardService GetLuminance Luminance SensorOperation SensorBoardService GetBatteryLevel BatteryLevel SensorOperation ZWaveService GetMotion Motion SensorOperation ZWaveService GetCO2 CO 2 level SensorOperation ZWaveService GetTemperature Temperature SensorOperation ZWaveService GetHumidity Humidity SensorOperation ZWaveService GetLuminance Luminance SensorOperation ZWaveService GetSmoke Smoke Alarm SensorOperation ZWaveService GetBatteryLevel BatteryLevel SensorOperation 179

180 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη προσέγγιση του πόσο γρήγορα και ορθά μπορεί ένας χρήστης να αντιληφθεί ποσοτικά και σε ένα βαθμό ποιοτικά ένα τέτοιο έγγραφο. Τέτοια ερωτήματα τέθηκαν μία φορά με διαθέσιμη την αναπαράσταση απλού κώδικα και μία φορά με τη γραφική αναπαράσταση του εργαλείου. Ο κώδικας δόθηκε σε χρωματισμένη μορφή για να διευκολύνει τη διαδικασία. Τα πέντε ερωτήματα περιλαμβάνουν τη μέτρηση διαφόρων στοιχείων ενός WSDL/SAWSDL: A) των μηνυμάτων, B) των στοιχείων (elements), C) των Complex Types, D) όλων των SAWSDL στοιχείων και E) των Model References. Οι δύο απεικονίσεις εμφανίστηκαν με τυχαία σειρά ανά τους χρήστες για να διασφαλιστεί κάποια αμεροληψία. Επιπλέον, τυχαία WSDL ίδιου μεγέθους επιλέχθηκαν για κάθε χρήστη και για κάθε απεικόνιση ώστε να μην απομνημονεύονται οι απαντήσεις. Οι χρόνοι απάντησης για απεικόνιση κώδικα και Iridescent καταγράφηκαν και απεικονίζονται στην Εικόνα 5.14 και στην Εικόνα 5.15 αντίστοιχα. Ο άξονας y δείχνει το χρόνο απάντησης σε δευτερόλεπτα, ο άξονας x αντιστοιχεί σε κάθε χρήστη, ενώ κάθε σειρά με διαφορετικό χρώμα αντιστοιχεί σε διαφορετικό ερώτημα. Η πρώτη παρατήρηση είναι ότι όλοι οι χρήστες συμπεριφέρονται παρόμοια. Μερικές εξαιρέσεις είναι ο χρήστης 11 που απαντά γρήγορα σε κώδικα ενώ οι χρήστες 4 και 10 καθυστέρησαν σε ένα τυχαίο ερώτημα ο καθένας. Σημειώνεται, όμως, ότι αυτές οι εξαιρέσεις δεν αντιστοιχούν στους χρήστες με διαφορετικό υπόβαθρο και είναι τελείως τυχαίες. Ο γνώστης SAWSDL είναι ο χρήστης 3, που παραδόξως χρειάστηκε τον ίδιο χρόνο με τους υπόλοιπους. Το ίδιο ισχύει και για τους άλλους καταρτισμένους χρήστες 1, 2 και 9, που είναι μεταπτυχιακοί και διδακτορικοί φοιτητές. Ο χρήστης 17, χωρίς υπόβαθρο πληροφορικής, επίσης χρειάστηκε τον ίδιο ή λιγότερο χρόνο από τους υπόλοιπους. Ο μέσος χρόνος ανά ερώτημα για κάθε αναπαράσταση φαίνεται στην Εικόνα Εκεί φαίνεται καθαρότερα πως κάποια ερωτήματα (A, C και D) είναι αισθητά ποιο απαιτητικά από άλλα στην απεικόνιση κώδικα. Αυτό συμβαίνει γιατί στον κώδικα είναι δύσκολο να εκτιμηθούν ποσοτικά τα στοιχεία αυτών των ερωτημάτων, ειδικά όταν είναι πολλά (περίπου δέκα), και ο χρόνος αυξάνεται εκθετικά. Τα ερωτήματα B και E περιέχουν συγκριτικά πολύ λιγότερα (τρία έως πέντε) στοιχεία προς διάκριση (elements και Model References). Μάλιστα, τα στοιχεία του E έχουν μετρηθεί ήδη στο βήμα D (τα Model References είναι είδος SAWSDL στοιχείου μαζί με τα Schema Mappings). Αντίθετα, στην αναπαράσταση δέντρου ό- λοι οι χρόνοι μειώνονται και μάλιστα σχεδόν εξισώνονται. Ο μέσος συνολικός χρόνος είναι 15 δευτερόλεπτα σε κώδικα έναντι 7 δευτερολέπτων σε δέντρο. Η τυπική απόκλιση είναι α- ντίστοιχα 7 δευτερόλεπτα και 3 δευτερόλεπτα αντίστοιχα. Συμπερασματικά, ένα ερώτημα αναμένεται να διαρκέσει περίπου τον ίδιο χαμηλό χρόνο σε δεντρική μορφή, αλλά είναι α- βέβαιο πόσο παραπάνω θα κρατήσει σε μορφή κώδικα. Ταυτόχρονα, οι απαντήσεις σε δεντρική αναπαράσταση δεν είναι μόνο γρηγορότερες, αλλά και πιο σωστές. Η Εικόνα 5.17 δείχνει τα ποσοστά ορθών απαντήσεων ανά ερώτημα σε κάθε προβολή. Το ποσοστό στην προβολή δέντρου ξεπερνά πάντα το αντίστοιχο της προβολής κώδικα. Είναι επίσης φανερό ότι όσο περισσότερο χρόνο καταναλώνει ένας χρήστης, τόσο πιο πιθανό είναι να απαντήσει λάθος, αφού τα ερωτήματα A, C και D σε κώδικα είναι 180

181 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα Χρόνοι απάντησης χρηστών ανά ερώτημα σε προβολή κώδικα Εικόνα Χρόνοι απάντησης χρηστών ανά ερώτημα σε προβολή δέντρου του Iridescent αυτά με τον περισσότερο χρόνο και τις λιγότερες ορθές απαντήσεις. Η φάση αυτή της αξιολόγησης ολοκληρώθηκε με ένα ερωτηματολόγιο. Εκεί οι χρήστες δήλωσαν ότι προτιμούν ταυτόχρονη προβολή του δέντρου και του κώδικα (100%) αντί ενός από τα δύο. Η μορφή αναπαράστασης του εργαλείου βαθμολογήθηκε με 4.7 (30% με 4 και 70% με 5) σε κλίμακα Likert (1 έως 5). Δύο από τους χρήστες πρότειναν μια διαφορετική αναπαράσταση χωρίς τη δεντρική δομή, αλλά με την ομαδοποίηση των κόμβων ανά είδος. Λειτουργικότητα Κατά τη δεύτερη φάση, οι χρήστες αξιολόγησαν τη λειτουργικότητα του Iridescent μέσα από πέντε διεργασίες. Στη Διεργασία I οι χρήστες κλήθηκαν να ανοίξουν μία οντολογία και να αναζητήσουν μία ζητούμενη, τυχαία έννοια. Στη Διεργασία ΙΙ ζητήθηκε να εντοπιστεί μία έννοια με τη χρήση αναζήτησης με λέξη-κλειδί. Στη Διεργασία ΙΙΙ οι χρήστες κλήθηκαν να εισάγουν μία επισήμανση σε SAWSDL, μέσω Drag n Drop και στη Διεργασία IV μέσω των μενού. Οι ίδιες δύο επισημάνσεις ζητείται να εισαχθούν μέσω της Παροχής Συστάσεων, κατά τη διεργασία V. Ο Πίνακας 5.3 δείχνει τους μέσους χρόνους και την τυπική απόκλιση του χρόνου για κάθε διεργασία. Με βάση την τυπική απόκλιση φαίνεται πως οι χρόνοι είναι σταθεροί, εκτός από τη Διεργασία Ι. Πράγματι, κατά τη Διεργασία Ι, άλλοι χρήστες χρησιμοποίησαν τη λογική 181

182 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Μέσος χρόνος ανά ερώτημα σε προβολή κώδικα και δέντρου του Iridescent Εικόνα Ποσοστά ορθών απαντήσεων ανά ερώτημα, σε προβολή κώδικα και δέντρου του Iridescent ιεραρχία των εννοιών για να βρουν την επιθυμητή έννοια, ενώ άλλοι έψαξαν εξαντλητικά και τυφλά. Θεωρούμε πως για μία επισήμανση ένας χρήστης πρέπει να αναζητήσει μία έννοια (Διεργασία Ι ή ΙΙ) και να εκτελέσει Drag n Drop (Διεργασία ΙΙΙ) ή να χρησιμοποιήσει το μενού (Διεργασία IV). Θεωρώντας τον ελάχιστο χρόνο για καθένα από τα δύο βήματα, χρειάζονται τουλάχιστον 9 δευτερόλεπτα (5 + 4). Από την άλλη, μία επισήμανση από την Παροχή Συστάσεων χρειάζεται 13 δευτερόλεπτα. Η Παροχή Συστάσεων μάλιστα παρέχει ταυτόχρονα πολλές επισημάνσεις (δύο στο συγκεκριμένο σενάριο) στον ίδιο χρόνο με μία μικρή αύξηση συνολικά, ώστε ο χρήστης να επιλέξει τις επιθυμητές. Επομένως, η διαφορά των μεθόδων όσο μεγαλώνει ο αριθμός των επισημάνσεων μεγαλώνει εκθετικά, αυξάνοντας κατά πολύ την παραγωγικότητα με τις συστάσεις. Πίνακας 5.3. Μέσος χρόνος και τυπική απόκλιση ανά Διεργασία κατά την αξιολόγηση λειτουργικότητας του Iridescent Μετρική\Διεργασία I II III IV V Μέσος χρόνος (s) Τυπική απόκλιση (s)

183 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Παρόμοια με την πρώτη φάση, η αξιολόγηση ολοκληρώθηκε με ερωτηματολόγια. Οι χρήστες προτίμησαν το συνδυασμό Drag n Drop και μενού (60%) έναντι ενός από τα δύο (35% και 5% αντίστοιχα). Βαθμολόγησαν από το 1 έως 5 τις δυνατότητες διαχείρισης αρχείων με 4.75 (25% - 4, 75% - 5), τις λειτουργίες Drag n Drop και μενού με 4.55 (5% - 3, 35% - 4, 60% - 5), την Παροχή Συστάσεων με 4.85 (15% - 4, 85% - 5) και τα μενού namespace και Schema Mapping, μετά από επίδειξη, με 4.65 (25% - 4, 70% - 5). Όταν ρωτήθηκαν για τη χρησιμότητα του Iridescent για προγραμματιστές SAWSDL, ανταποκρίθηκαν θετικά με βαθμολογία 4.8 (20% - 4, 80% - 5). Τέλος, ενδιαφέρουσες προτάσεις ήταν εισαγωγή κουμπιών για ανάπτυξη/σύντμηση των δεντρικών κόμβων, συντομεύσεις πληκτρολογίου, δυνατότητα α- πόκρυψης κώδικα ή δέντρου και περισσότερες δυνατότητες επεξεργασίας κώδικα. 5.4 Αλγόριθμος Ταυτοποίησης Υπηρεσιών Ιστού Tomaco Το σύστημα και ο αλγόριθμος Tomaco (Stavropoulos et al., 2015a) αναπτύχθηκαν με στόχο τη διάδοση και την πρόοδο της ανάκτησης Υπηρεσιών Ιστού, ή αλλιώς τη διαδικασία της Επιλογής, Ανακάλυψης και ουσιαστικά Ταυτοποίησης. Αυτός ο στόχος προσεγγίζεται από δύο κατευθύνσεις. Πρώτον, προτείνεται ένας καινοτόμος, υβριδικός αλγόριθμος ταυτοποίησης για SAWSDL, ο οποίος εμπλουτίζει γνωστές τεχνικές με καινοτόμα χαρακτηριστικά, αυξάνοντας την απόδοση. Μία αποδοτική τεχνική βασισμένη στη λογική συνδυάζεται με συντακτικές μετρικές με καινοτόμο τρόπο, βελτιστοποιώντας την απόδοση σε ένα σενάριο πραγματικής εφαρμογής στον Ιστό. Ο αλγόριθμος αξιολογήθηκε μέσα από ένα ανοιχτό εργαλείο αξιολόγησης, το SME2, με αντικειμενικό τρόπο, ώστε να μπορεί να αναπαραχθεί και να συγκριθεί υπό ίσους όρους. Η αξιολόγηση κατατάσσει το Tomaco υψηλά σε σχέση με τους υπάρχοντες αλγορίθμους, ειδικά για τα πρώτα επίπεδα ανάκλησης (πρώτο σε macro-averaging precision). Δεύτερον, προτείνεται η διαδικτυακή εφαρμογή Tomaco, η οποία έχει ως στόχο την προώθηση και ευρεία διάδοση των Σημασιολογικών Υπηρεσιών Ιστού, ενώ ταυτόχρονα αντιμετωπίζει την έλλειψη φιλικών προς τον χρήστη εφαρμογών για αυτές τις τεχνολογίες. Το διαδικτυακό Tomaco ενσωματώνει τον αλγόριθμο ταυτοποίησης που προτείνεται, αλλά και έναν αλγόριθμο σύνθεσης. Λειτουργεί, επίσης, ως δυναμικό αποθετήριο υπηρεσιών, αφού οι χρήστες μπορούν να εγγράφονται και να συνεισφέρουν με δικές τους υπηρεσίες και να παραμετροποιούν και να εκτελούν άμεσα τους προτεινόμενους αλγορίθμους. Παράδειγμα τέτοιας χρήσης αποτελούν οι υπηρεσίες του συστήματος Smart IHU Υπάρχουσες Προσεγγίσεις Ταυτοποίησης, Αποθετηρίων και Σύνθεσης Αυτή η ενότητα παρουσιάζει ενδεικτικά παραδείγματα συστημάτων ταυτοποίησης, αποθετηρίων και σύνθεσης Υπηρεσιών Ιστού, που μπορούν να εντοπιστούν στη βιβλιογραφία, με έμφαση στις τεχνικές που χρησιμοποιούνται. Αρχικά για την ταυτοποίηση, η πλειοψηφία των τεχνικών μπορούν να κατηγοριοποιηθούν ως βασισμένες στη λογική και βασισμένες στην ο- μοιότητα κειμένου, ενώ οι τεχνικές δομής και μηχανικής μάθησης χρησιμοποιούνται λιγότερο συχνά. Οι βασισμένες στη λογική τεχνικές μπορούν να είναι απλοί, σύντομοι κανόνες γύρω από τη σχέση κλάσεων μέχρι εκτενείς λίστες από συνθήκες, ενώ η ομοιότητα κειμένου χρησιμοποιεί κλασικές περιπτώσεις αλγορίθμων της Ανάκτησης Πληροφορίας (Information 183

184 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Retrieval). Επίσης, παρουσιάζονται αποτελέσματα για την απόδοση και την αποτελεσματικότητα κάθε αλγορίθμου, εάν διατίθενται. 184 Σημειώνεται ότι κατά την περιγραφή των βασισμένων σε λογική τεχνικών, οι προσφερόμενες (offered) και οι ζητούμενες (requested) υπηρεσίες θα συμβολίζονται με O και R α- ντίστοιχα. Ομοίως, οι είσοδοι και οι έξοδοι των υπηρεσιών θα συμβολίζονται με κατάλληλο δείκτη (π.χ. το R i σημαίνει ζητούμενη είσοδος), ενώ οι σχέσεις της υπερκλάσης και της υποκλάσης από αριστερά προς τα δεξιά θα συμβολίζονται με > και <. Επιπλέον, για την αξιολόγηση των μεθόδων χρησιμοποιούνται οι μετρικές macro-averaging precision, F1-measure, AP (Average Precision), ndcg (normalized Discounted Cumulative Gain) και Q-measure. Όλες οι μετρικές είναι γνωστές από το πεδίο της Ανάκτησης Πληροφορίας και χρησιμοποιούνται ό- πως ορίζονται στο περιβάλλον του διαγωνισμού S3 (Klusch, 2012). SAWSDL-MX, SAWSDL-TC Η εργασία (Klusch and Kapahnke, 2008) παρουσιάζει δύο σημαντικές συνεισφορές. Αρχικά, οι συγγραφείς προσφέρουν το πρώτο και μεγαλύτερο σύνολο δεδομένων με περισσότερα από χίλια αρχεία σε SAWSDL, με το όνομα SAWSDL-TC (Test Collection). Για την κατασκευή του χρησιμοποιήθηκε το εργαλείο OWLS2WSDL, το οποίο εφάρμοσαν στο υπάρχον σύνολο ελέγχου OWLS-TC 2.2, ώστε να μετατραπούν οι περιγραφές OWL-S σε περιγραφές SAWSDL. Η μετατροπή ελέγχθηκε και διορθώθηκε με χειροκίνητο τρόπο από ειδικούς. Μια ενημερωμένη έκδοση της συλλογής, η SAWSDL-TC 3, είναι διαθέσιμη στο διαδίκτυο και περιέχει 1080 έγγραφα, που περιγράφουν υπηρεσίες, οντολογίες σε γλώσσα OWL, ερωτήματα και τις απαντήσεις τους ή αλλιώς τα σχετικά σύνολα (relevant sets). Η δεύτερη συνεισφορά είναι μια πρώτη προσέγγιση αξιοποίησης αυτού του συνόλου δεδομένων από μια τεχνική αυτόματης ταυτοποίησης των SAWSDL αρχείων. Όπως και το σύνολο ελέγχου, ο αλγόριθμος SAWSDL- MX αποτελεί προσαρμογή παλιότερων εργασιών σε σχέση με τα OWLS-MX (Klusch et al., 2006) και WSMO-MX (Kaufer and Klusch, 2006). Ο αλγόριθμος SAWSDL-MX προσφέρει όλες τις κοινές στρατηγικές ταυτοποίησης, δηλαδή τη βασισμένη στη λογική, τη βασισμένη στην ομοιότητα κειμένου και την υβριδική (με συνδυασμό της λογικής και της ομοιότητας κειμένου). Οι στρατηγικές εξετάζουν τις εισόδους και τις εξόδους των περιγραφών των υπηρεσιών και τα υποκείμενα συστατικά τους (π.χ. ComplexType) προσπαθώντας να ταυτοποιήσουν μια ζητούμενη υπηρεσία (δηλαδή το ερώτημα) με όλες τις υπηρεσίες που προσφέρονται σε μια συλλογή. Όταν υπάρχουν πολλαπλές σημασιολογικές επισημάνσεις, η στρατηγική λαμβάνει υπόψη μόνο την πρώτη. Κάθε υπηρεσία βαθμολογείται με το ελάχιστο της βαθμολογίας των operations που περιέχει. Ωστόσο, το συγκεκριμένο σύνολο ελέγχου εξετάζει υπηρεσίες, που περιλαμβάνουν μόνο ένα operation. Επομένως, η βαθμολογία για την ταυτοποίηση ενός operation είναι ίση με τη βαθμολογία για τη συνολική ταυτοποίηση της υπηρεσίας. Οι βαθμοί για τη βασισμένη στη λογική στρατηγική υπολογίζονται με φθίνουσα σειρά ως εξής: 1. Exact: απόλυτη ταυτοποίηση των εισόδων και των εξόδων (R i = O i R o = O o ) 2. Plug-in: η προσφερόμενη είσοδος είναι πιο γενική από τη ζητούμενη είσοδο και η προσφερόμενη έξοδος είναι άμεσο παιδί της ζητούμενης εξόδου (O i > R i O o < direct R o )

185 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού 3. Subsumes: οι είσοδοι όπως στο Plug-in και η προσφερόμενη έξοδος είναι οποιοδήποτε παιδί της ζητούμενης εξόδου, δηλαδή χαλαρώνονται οι περιορισμοί της εξόδου (O i > R i O o < R o ) 4. Subsumed-by: για τις εισόδους ισχύει ότι και στο Plug-in και η προσφερόμενη έξοδος είναι άμεσος γονέας της ζητούμενης εξόδου (O i > R i O o > direct R o ) 5. Fail: τίποτα από τα παραπάνω. Η στρατηγική βασισμένη στην ομοιότητα κειμένου εφαρμόζει ποικίλους αλγορίθμους ομοιότητας κειμένου με χρήση της Java βιβλιοθήκης SimPack (Bernstein et al., 2005), όπως Loss-of-information, extended Jaccard, Cosine και Jensen-Shannon, μεταξύ των ζητούμενων και των προσφερόμενων σημασιολογικών στοιχείων. Οι βαθμολογίες για την ταυτοποίηση των εισόδων και των εξόδων μετράνε ισάξια κατά τον υπολογισμό της συνολικής βαθμολογίας για μια υπηρεσία. Η υβριδική στρατηγική προσφέρει δύο παραλλαγές. Η αντισταθμιστική (compensative) παραλλαγή επιτρέπει στην ομοιότητα κειμένου να βρει κάποια ταύτιση, όταν η λογική αποτυγχάνει. Στην ενοποιητική (integrative) παραλλαγή, στα κριτήρια της βαθμίδας ταύτισης Subsumed-by προστίθεται ένα κατώφλι ομοιότητας κειμένου πέρα από τους ήδη υπάρχοντες λογικούς περιορισμούς και γίνεται πιο αυστηρή. Ο αλγόριθμος ενσωματώνεται σε ένα ολοκληρωμένο σύστημα, που περιλαμβάνει έ- ναν κατάλογο υπηρεσιών, χειριστές και κατάλογο οντολογιών για εντοπισμό των οντολογιών που αναφέρονται στις υπηρεσίες και εφαρμογή συλλογιστικής. Επίσης, αξιολογήθηκε στο SAWSDL-TC μετρώντας macro-averaging precision και F1-measure σε 20 επίπεδα ανάκλησης. Η υβριδική μέθοδος (με χρήση του Cosine για ομοιότητα κειμένου) απέδωσε καλύτερα, ενώ ακολουθούν η μέθοδος ομοιότητας κειμένου (με Cosine) και τελευταία η μέθοδος βασισμένη στη λογική. Αυτή η κατάταξη έρχεται σε απόλυτη συμφωνία με την αποτελεσματικότητα των παλιότερων αλγορίθμων OWLS-MX και WSMO-MX. Όσον αφορά τις επιδόσεις σε χρόνο, η μέθοδος ομοιότητας κειμένου είναι η γρηγορότερη (1.7s ανά ερώτημα) ακολουθούμενη από τη μέθοδο λογικής (4.7s ανά ερώτημα) και την υβριδική (6.4s ανά ερώτημα). SAWSDL-MX2 Ως επέκταση του παραπάνω αλγόριθμου, ο SAWSDL-MX2 (Matthias Klusch et al., 2009) χρησιμοποιεί τους ίδιους ακριβώς αλγορίθμους ταυτοποίησης, δηλαδή τον βασισμένο στη λογική και τον βασισμένο στην ομοιότητα κειμένου. Εισάγει, όμως, την έννοια της ομοιότητας ως προς τη δομή. Για να υπολογίσει την ομοιότητα δομής χρησιμοποιεί το WSDL-Analyzer (Zinnikus et al., 2006), ένα εργαλείο που εντοπίζει ομοιότητες στην XML δομή μεταξύ των αρχείων WSDL, ελέγχοντας τα ονόματα των στοιχείων, τους τύπους των δεδομένων και κάποιες ιδιότητες της δομής. Ο SAWSDL-MX2, επίσης, εισάγει ένα επίπεδο μάθησης πάνω από τις προαναφερθείσες μεθόδους. Η αποκαλούμενη Προσαρμοστική Ταυτοποίηση (Adaptive Matching) υπολογίζει αρχικά τη λογική ομοιότητα, την ομοιότητα κειμένου και την ομοιότητα δομής και μαζί με την τιμή της σχετικότητας συνθέτει τα διανύσματα του συνόλου εκπαίδευσης. Πιο λεπτομερώς, τα διανύσματα εκπαίδευσης για τον αλγόριθμο μάθησης SVM έχουν τη μορφή {Exact, Plug-in, Subsumes, Subsumed-by, Fail, ομοιότητα κειμένου, ομοιότητα δο- 185

186 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη μής, σχετικότητα}, όπου πεδίο τιμών είναι 0 ή 1 για τις πρώτες πέντε θέσεις (λογική ομοιότητα), 0 έως 1 για τις ομοιότητες κειμένου και δομής και 1 ή -1 για τη σχετικότητα του εγγράφου. Ομοίως, για την αποτελεσματικότητα του αλγορίθμου παρουσιάζεται macro-averaging precision σε 20 επίπεδα ανάκλησης για τις διάφορες μεθόδους. Στην πρώτη θέση κατατάσσεται ο συνδυασμός λογικής και ομοιότητας δομής, στη δεύτερη θέση η απλή λογική και στην τρίτη η απλή ομοιότητα δομής. Σε άλλο πείραμα, ο συνδυασμός λογικής και δομής, η υβριδική μέθοδος και η Προσαρμοστική Ταυτοποίηση παρέχουν την ίδια ακρίβεια (0.61, 0.66 και 0.65 αντίστοιχα), καθώς το τεστ Friedman έδειξε ότι η διαφορά τους δεν είναι στατιστικά σημαντική. Παρόλα αυτά, οι χρόνοι απόκρισής τους ανά ερώτημα (15.48s, 8.17s και 18.8s αντίστοιχα) υποδεικνύουν ότι ο υπολογισμός της ομοιότητας της δομής και η μάθηση απαιτούν πολύ περισσότερο (τουλάχιστον διπλάσιο) χρόνο για την ίδια (ή και λίγο χειρότερη) α- κρίβεια, εξαιτίας της υψηλής πολυπλοκότητας. isem Ο αλγόριθμος isem (Klusch and Kapahnke, 2010) είναι η εξέλιξη των MX αλγορίθμων. Εφαρμόζει μάθηση μέσω SVM θέτοντας βάρη στις βαθμολογίες των βασικών τεχνικών. Τα διανύσματα μάθησης είναι εκτεταμένες μορφές των αντίστοιχων στο MX2. Περιέχουν βαθμολογίες της τεχνικής λογικής, δομής και ομοιότητας κειμένου. Ωστόσο, προστίθεται η κατά προσέγγιση λογική τεχνική, η οποία είναι πιο αποτελεσματική και θέτει χαλαρότερα κριτήρια για την περίπτωση subsumption. Ο αλγόριθμος είναι εξαιρετικά αποτελεσματικός στο SAWSDL-TC πετυχαίνοντας την υψηλότερη AP στο διαγωνισμό S και 2012, με το αναμενόμενο αντίκτυπο στην ταχύτητα. LOG4SWS, COV4SWS Το κοινό πλαίσιο XAM4SWS υποστηρίζει δύο αλγορίθμους, τον LOG4SWS και τον COV4SWS (Lampe and Schulte, 2012). Και οι δύο εκτελούν ταυτοποίηση ανά operation υπηρεσίας, βαθμολογώντας τα interfaces, operations και input/output. Ο LOG4SWS εκτελεί στρατηγική βασισμένη στη λογική, με τα κριτήρια του SAWSDL-MΧ, μεταφράζοντας της βαθμίδες βαθμολογίας σε αριθμητικές τιμές για να εφαρμοστεί γραμμική παρεμβολή. Ο COV4SWS εφαρμόζει μετρικές από το πεδίο της σημασιολογικής σχετικότητας (semantic relatedness). Στη συνέχεια, εφαρμόζει παρεμβολή για να βρει τα βάρη των συνδυαστικών βαθμολογιών από τα στοιχεία της υπηρεσίας, ώστε να αναχθούν σε μία συνολική βαθμολογία υπηρεσίας. Και οι δύο αλγόριθμοι υποστηρίζονται από ομοιότητα στο WordNet (αντίστροφη απόσταση εννοιών), σε περίπτωση που δεν υπάρχουν επισημάνσεις. Είναι εξαιρετικά αποτελεσματικές και κατατάσσονται πρώτες στον S σε ndcg και Q-Measure, ενώ ο χρόνος απόκρισης παραμένει χαμηλός (Klusch, 2012) S3 Contest -

187 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού imatcher Ο imatcher (Wei et al., 2011) ενσωματώνει ενδιαφέρουσες παραλλαγές γνωστών στρατηγικών. Η πρώτη στρατηγική του περιλαμβάνει τρεις υπο-στρατηγικές. Η πρώτη εφαρμόζει ο- μοιότητα κειμένου (με την Java βιβλιοθήκη Simpack) στοχεύοντας είτε (α) το πεδίο του ονόματος της WSDL υπηρεσίας, (β) το πεδίο της περιγραφής της υπηρεσίας ή (γ) τις σημασιολογικές επισημάνσεις. Η δεύτερη στρατηγική επιλέγει τη μέγιστη βαθμολογία μεταξύ δύο υποστρατηγικών. Η πρώτη είναι μια υβριδική παραλλαγή, όπου το κομμάτι που βασίζεται στη λογική βαθμολογεί τις εισόδους και τις εξόδους των operations με 1, εάν το ζητούμενο είναι γονέας του προσφερόμενου (R > O). Παρατηρούμε ότι η λογική του imatcher διαφέρει ουσιαστικά από αυτή του SAWSDL-MX, η οποία απαιτούσε την αντίστροφη σχέση για την είσοδο σε όλες τις περιπτώσεις (Exact, Plug-in κλπ.) και για την έξοδο στην περίπτωση Subsumed-by. Αν η λογική αποτύχει, εφαρμόζεται ομοιότητα κειμένου (όπως στην αντισταθμιστική παραλλαγή). Εάν οι συγκρινόμενες σημασιολογικές έννοιες προέρχονται από διαφορετικές οντολογίες, τότε η δεύτερη υπο-στρατηγική εξετάζει την απόστασή τους χρησιμοποιώντας την ομοιότητα alignment, που μπορεί να δώσει το εργαλείο Lily (Wang and Xu, 2007). Η τρίτη στρατηγική εκτελεί και πάλι μια μέθοδο Προσαρμοστικής Ταυτοποίησης. Ο χρήστης μπορεί να επιλέξει μια ποικιλία στρατηγικών, με τα αποτελέσματα των οποίων κατασκευάζεται ένα σύνολο εκπαίδευσης από διανύσματα. Σε αυτό εφαρμόζονται αλγόριθμοι μάθησης από τη βιβλιοθήκη Weka (Witten et al., 1999). Μία προηγούμενη έκδοση, ο imatcher3/1, βρέθηκε χαμηλά στην κατάταξη του S3 (M. Klusch et al., 2009). Στο διαγωνισμό χρησιμοποιήθηκαν τα σύνολα SAWSDL-TC 2 (όπου ο imatcher3/1 σημείωσε ακρίβεια 0.635) και Jena Geography Dataset ή JGD (ακρίβεια 0.53). Ο Overlap αποδείχθηκε ο καλύτερος μεταξύ των αλγορίθμων ομοιότητας κειμένου, τόσο στα ονόματα των operations, όσο και στα ονόματα των στοιχείων (στο JGD). Η δεύτερη στρατηγική (υβριδική και alignment) βγήκε τελευταία μεταξύ έξι μεθόδων ομοιότητας κειμένου στις σημασιολογικές επισημάνσεις και στα δύο σύνολα. Ο Logistic ξεπέρασε τέσσερις (Adaboost J48, J48, SVR, SLinear Regression) αλγορίθμους μάθησης κατά την Προσαρμοστική Μάθηση στο SAWSDL-TC 2, ενώ ο SVR βγήκε πρώτος στο JGD. Ο Logistic, επίσης, ξεπέρασε τη δεύτερη στρατηγική και την ομοιότητα κειμένου (Euclidean και Dice) στο SAWSDL-TC 2. Ομοίως, ο SVR ήταν καλύτερος από τον Logistic, την ομοιότητα κειμένου (Overlap, Pearson, Dice) και τη δεύτερη στρατηγική. Συνολικά, οι καλύτερες στρατηγικές του imatcher είναι ο Logistic και ο ε- SVR, που πετυχαίνουν ακρίβεια και αντίστοιχα. Skyline Ο αλγόριθμος Skyline (Skoutas et al., 2008) εφαρμόζει ταυτοποίηση σε περιγραφές OWL-S αντί για SAWSDL, αλλά προτείνει μια ενδιαφέρουσα στρατηγική, που αξίζει να αναφερθεί. Τα στοιχεία που στοχεύει είναι τα IOPEs, δηλαδή οι είσοδοι με τις προϋποθέσεις (Inputs και Preconditions) και οι έξοδοι με τα αποτελέσματα (Outputs και Effects). Η στρατηγική βασίζεται στη λογική και κατηγοριοποιεί στις βαθμίδες Exact, Direct_Subclass (άμεση υποκλάση), Subclass (υποκλάση), Direct_Superclass (άμεση υπερκλάση), Superclass (υπερκλάση), Sibling 187

188 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη (αδέρφια) και Fail, επιλέγοντας την καλύτερη. Για να βρεθεί η βέλτιστη εξισορρόπηση ανάμεσα στη σημασία των εισόδων και των εξόδων χρησιμοποιείται ο ομώνυμος αλγόριθμος Skyline, γνωστός από την Ανάκτηση Πληροφορίας. Με αυτόν τον τρόπο, επιστρέφονται ως αποτέλεσμα υπηρεσίες με έναν βέλτιστο συνδυασμό ταυτοποιημένων εισόδων και εξόδων. Για παράδειγμα, αν υπάρχει μια υπηρεσία με Exact είσοδο και Fail έξοδο και μια άλλη υπηρεσία με Subclass είσοδο και Direct_Superclass έξοδο, τότε θα επιστραφούν και οι δύο σαν αποτέλεσμα, ενώ μια τρίτη με Direct_Subclass είσοδο και Fail έξοδο θα αγνοηθεί. Οι χρήστες μπορούν να ζητήσουν από τον αλγόριθμο το επόμενο επίπεδο απαντήσεων (skylayer) για να πάρουν περισσότερες υπηρεσίες. Το Skyline με ακρίβεια 0.83 κατατάσσεται αρκετά πάνω από τον OWLS-MX (Klusch et al., 2006) με 0.71 στο σύνολο δεδομένων OWLS-TC 2. Four Level Matching Model Το Four Level Matching Model (FLMM) (Guo et al., 2010) προτείνει ένα μοντέλο ταυτοποίησης τεσσάρων επιπέδων για OWLSQ, μια προσαρμοσμένη παραλλαγή της OWL-S, που περιλαμβάνει πληροφορίες για QoS (Quality of Service), όπως ακρίβεια, αξιοπιστία κλπ. Το αρχικό και πιο γενικό επίπεδο υπολογίζει την ομοιότητα μεταξύ των τομέων εφαρμογής (application domain) χρησιμοποιώντας πρότυπα κατηγοριοποίησης. Το δεύτερο εφαρμόζει σύγκριση ομοιότητας κειμένου με TF-IDF Cosine στις περιγραφές των υπηρεσιών. Το τρίτο επίπεδο ορίζει έναν διμερή γράφο για να ταυτοποιήσει με χρήση του αλγορίθμου KM λειτουργίες μεταξύ προσφερόμενων και ζητούμενων υπηρεσιών. Το τέταρτο και τελευταίο επίπεδο ταυτοποιεί χαρακτηριστικά QoS, βασιζόμενο σε ένα προκαθορισμένο σύνολο χαρακτηριστικών QoS. Υβριδική Στρατηγική με WordNet Ο αλγόριθμος ταυτοποίησης SAWSDL που περιγράφεται στην (Tran et al., 2009) προτείνει έναν πολύπλοκο αλγόριθμο βασισμένο στη λογική για να ταξινομεί την είσοδο και την έξοδο ως Precise (ακριβής), Over, Partial (μερικός) και Mismatch (μη ταυτοποίηση), σύμφωνα με διάφορα πηλίκα από προσφερόμενες, ζητούμενες και ταυτοποιημένες εισόδους και εξόδους. Ο αλγόριθμος περιέχει μια εκτενή σειρά από κανόνες για την ταξινόμηση, σε τέτοιο μάλιστα μήκος που χάνεται το πρακτικό νόημα των κατηγοριών. Στην περίπτωση που απουσιάζει η σημασιολογία από δύο συγκρινόμενα στοιχεία, αλλά ταυτοποιούνται σημασιολογικά οι γονείς τους, τότε αυτά βαθμολογούνται με την ομοιότητα κειμένου και την απόσταση σύμφωνα με το WordNet (Fellbaum, 2010). Δυστυχώς, δεν έχει πραγματοποιηθεί κάποια αξιολόγηση του συστήματος, ώστε να εκτιμήσουμε την αποτελεσματικότητά του. OWLS-SLR και OOM Η εργασία (Meditskos and Bassiliades, 2007) προτείνει αντικειμενοστραφή μέτρα ομοιότητας (Object-Oriented Measures OOM) για ταυτοποίηση σημασιολογικών Υπηρεσιών Ιστού. Ο αλγόριθμος μετατρέπει την OWL-S στην αντικειμενοστραφή γλώσσα COOL (CLIPS Object Oriented Language). Αρχικά, εισάγει την ομοιότητα απλής ιδιότητας, που ελέγχει την ομοιότητα μεταξύ των τύπων δεδομένων των εισόδων και των εξόδων. Ορίζονται τρεις κατηγορίες: exact match (ακριβής ταυτοποίηση), numerical-type match (ταυτοποίηση αριθμητικού τύπου, π.χ. xsd:int και xsd:float) και mismatch (μη ταυτοποίηση). Στη συνέχεια, υπολογίζει το πηλίκο 188

189 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού του σταθμισμένου αθροίσματος των exact match και των numerical-type match προς το συνολικό πλήθος των εισόδων και των εξόδων. Η τελική ομοιότητα απλής ιδιότητας ισούται με το γινόμενο του πηλίκου για τις εισόδους επί του πηλίκου για τις εξόδους. Η παραλλαγή που βασίζεται στη λογική ονομάζεται σε αυτή την εργασία ομοιότητα σχεσιακής ιδιότητας και ισούται με την απόσταση μεταξύ δύο κλάσεων, όταν έχουν μια ιεραρχική σχέση. Ειδάλλως, εάν έχουν κάποια κοινή κλάση-πρόγονο, η ομοιότητα είναι ίση με το άθροισμα των αποστάσεών τους από αυτή την κοινή υπερκλάση. Εάν δεν υπάρχει κοινός πρόγονος ή οι κλάσεις είναι ξένες, η απόστασή τους είναι άπειρη και επομένως η ομοιότητά τους μηδέν. Πάλι η συνολική ομοιότητα σχεσιακής ιδιότητας ισούται με το γινόμενο των παραπάνω υπολογισμών για εισόδους και εξόδους. Εν τέλει, η συνολική ομοιότητα είναι το γινόμενο της ομοιότητας απλής ιδιότητας επί της ομοιότητας σχεσιακής ιδιότητας. Μια εξέλιξη των αντικειμενοστραφών μέτρων ομοιότητας είναι ο αλγόριθμος OWLS- SLR (Meditskos and Bassiliades, 2010), ο οποίος λαμβάνει υπόψιν σημασιολογικές σχέσεις επαλληλίας (subsumption) και αδερφών (siblings). Ο αλγόριθμος στοχεύει τις Ι/Ο υπογραφές του OWL-S προφίλ αναζητώντας τις ιδιότητες και τις κλάσεις της οντολογίας. Ένα προτέρημα του OWLS-SLR είναι ο χαμηλός χρόνος απόκρισης, αφού επικεντρώνεται στη γρήγορη εύρεση ενός αρχικού συνόλου από υποψήφιες περιγραφές. IRS-III Το IRS-III (Domingue et al., 2008) είναι ένα ολοκληρωμένο σύστημα για δημιουργία, εκτέλεση και ταυτοποίηση WSMO και OWL-S, μέσω ενός μηχανισμού μετάφρασης σε μια προσαρμοσμένη αναπαράσταση οντολογιών, την OCML, που χρησιμοποιείται για την κωδικοποίηση των περιγραφών των υπηρεσιών. Το υποσύστημα που αφορά την ταυτοποίηση και ονομάζεται Goal Mediator (μεσολαβητής στόχων) επιλέγει υπηρεσίες οι οποίες ανταποκρίνονται στις ζητούμενες δυνατότητες, όπως τύπους εισόδου, προϋποθέσεις, παραδοχές ή μη λειτουργικές ιδιότητες. Η υπηρεσία κρίνεται ακατάλληλη, όταν ο τύπος της προσφερόμενης εισόδου και της ζητούμενης δεν ταυτοποιούνται ή όταν οι προσφερόμενες είσοδοι είναι περισσότερες από τις ζητούμενες. Στον S3 2009, σημείωσε χαμηλή αποτελεσματικότητα στο σύνολο JDG με μέση ακρίβεια 0.41, αλλά και χαμηλή απόδοση με 2.826s ανά ερώτημα. Themis-S Ο αλγόριθμος που παρουσιάζεται στην (Becker et al., 2010) επικεντρώνεται στην ομοιότητα κειμένου και δεν εφαρμόζει καμία μέθοδο ταυτοποίησης που να βασίζεται στη λογική. Από τις περιγραφές των WSDL αρχείων προκύπτει ένα εμπλουτισμένο μοντέλο διανυσματικού χώρου βασισμένο στο θέμα (enhanced Topic-Based Vector Space Model ή etvsm), μια παραλλαγή του κλασικού TVSM. Αυτή η παραλλαγή χρησιμοποιεί το WordNet (ή όποια άλλη ταξινομία) για να εκτιμήσει γλωσσολογικές σχέσεις μεταξύ όρων φυσικής γλώσσας και να κατηγοριοποιήσει ταυτοποιήσεις ως synonymy, homonymy, hyponymy και hypernymy. Για την αξιολόγηση κατασκευάστηκε ένα σύνολο εκατό περιγραφών υπηρεσιών σχετικά με γεωγραφικές υπηρεσίες. Οι περιγραφές των υπηρεσιών είναι γραμμένες στην αγγλική γλώσσα, 189

190 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη το μήκος τους κυμαίνεται από 74 έως 1271 λέξεις η καθεμία και συλλέχθηκαν από τους ιστότοπους programmableweb 59 και seekda 60. Ειδικοί ως προς το πεδίο κατασκεύασαν κατάλληλα ερωτήματα και σχετικά σύνολα για δύο διαφορετικά σενάρια των τριάντα ερωτημάτων έκαστο. Ο προτεινόμενος αλγόριθμος, etvsm, κατατάχθηκε με R-Precision και μέση ακρίβεια ψηλότερα από τον κλασικό VSM και από το σχεσιακό μοντέλο πιθανοτήτων OKAPI. WSColab Το WSColab (Gawinecki et al., 2010) αξιοποιεί τη συνεργατικότητα και τις αρχές του Κοινωνικού Ιστού μέσω ετικετών (tags) για την επισήμανση και ανάκτηση τους. Μια διαδικτυακή πύλη επιτρέπει στους χρήστες να επισημάνουν μεμονωμένες υπηρεσίες δίνοντας χειροκίνητα ετικέτες. Αυτές οι ετικέτες μπορούν να προσδιορίζουν είτε τη συμπεριφορά της υπηρεσίας, π.χ. μια κατηγοριοποίηση ως προς τη λειτουργία της, είτε την περιγραφή των εισόδων και των εξόδων της υπηρεσίας ή κάποια πρόσθετα χαρακτηριστικά. Τα ερωτήματα σχηματίζονται επίσης χειροκίνητα από ειδικούς, μέσω της διαδικτυακής πύλης. Το σύστημα προσφέρει συστάσεις με πρόβλεψη μια λέξης ή φράσης που ο χρήστης θέλει να πληκτρολογήσει, χωρίς να τη γράψει ολόκληρη, από τις ήδη γνωστές ετικέτες υπηρεσιών. Τελικά, η ταυτοποίηση υλοποιείται με ένα μοντέλο SVM, με τις ετικέτες της συμπεριφοράς, της εισόδου και της εξόδου. Το σύστημα συμμετείχε στο S και ξεπέρασε όλους τους αλγόριθμους στο σύνολο JGD με μέση ακρίβεια 0.54 και απόδοση 0s ανά ερώτημα. URBE Το σύστημα (Plebani and Pernici, 2009) URBE/URBE-S ενσωματώνει έναν υβριδικό αλγόριθμο ταυτοποίησης SAWSDL. Η βασισμένη στη λογική στρατηγική, που ονομάζεται URBE-S, υπολογίζει την ομοιότητα των σημασιολογικών επισημάνσεων (annsim) ως την απόσταση δύο εννοιών στην ίδια οντολογία, όπως και στο OOM (Meditskos and Bassiliades, 2007). Εάν η σημασιολογία απουσιάζει, ο απλός αλγόριθμος URBE υπολογίζει την ομοιότητα namesim ως τη γλωσσολογική ομοιότητα μεταξύ των ονομάτων των υπηρεσιών, των operation, των εισόδων και των εξόδων, χρησιμοποιώντας μια οντολογία συγκεκριμένου domain, όπως π.χ. το WordNet. Επιπλέον, υπολογίζει την ομοιότητα datatypesim, η οποία ορίζεται ως η ομοιότητα των τύπων των δεδομένων μεταξύ των simpletypes των εγγράφων WSDL, σύμφωνα με έναν προκαθορισμένο πίνακα ομοιότητας. Η αξιολόγηση του συστήματος πραγματοποιήθηκε σε συνθετικό σύνολο δεδομένων SAWSDL από το OWLS-TC. Επιλέγοντας διαφορετικά βάρη μεταξύ της ομοιότητας ως προς τα ονόματα των υπηρεσιών και της ομοιότητας ως προς τα ονόματα των operations, δεν παρατηρήθηκε κάποια διαφορά. Σε άλλο πείραμα, το σύστημα URBE είχε την χαμηλότερη κατά

191 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού ταξη σε σύγκριση με τα VSM και R-SVM με ακρίβεια R-Precision 0.651, 0.67 και αντίστοιχα. Η ίδια κατάταξη προέκυψε και ως προς την Mean Average Precision (MAP) με 0.703, και Η μέση ακρίβεια των καλύτερων πέντε και δέκα αποτελεσμάτων ανά ερώτημα έφερε το URBE πρώτο, άρα τα καλύτερα αποτελέσματά του είναι τα πιο σχετικά. Σύμφωνα με την ακρίβεια macro-averaging μεταξύ διαφόρων αλγορίθμων προέκυψε η εξής κατάταξη: Woogle, URBE, Stroulia, WSXplorer. Με την προσθήκη της σημασιολογίας, το σύστημα URBE-S έρχεται πρώτο σε σχέση με τα Woogle, απλό URBE, Syeda και OWLS-MX. Σύγκριση Tomaco και Υπαρχόντων Αλγορίθμων Ακολουθούν δύο συγκριτικοί πίνακες όλων των αλγορίθμων ταυτοποίησης που παρουσιάστηκαν σε αυτή την ενότητα. Ο Πίνακας 5.4 παρουσιάζει το έτος δημοσίευσης του κάθε συστήματος και τη γλώσσα που χειρίζεται, ενώ ο Πίνακας 5.5 συγκρίνει τα είδη των στρατηγικών που υλοποιεί. Ακολουθεί μία εκτενής σύγκριση των επιμέρους χαρακτηριστικών των αλγορίθμων, με τον προτεινόμενο αλγόριθμο, Tomaco. Ο αλγόριθμος SAWSDL-MX (Klusch and Kapahnke, 2008) προσφέρει, όπως και το Tomaco, μία στρατηγική βασισμένη στη λογική, μία βασισμένη στην ομοιότητα κειμένου και μία υβριδική. Η στρατηγική, όμως, της ομοιότητας κειμένου ελέγχει μόνο τις προσφερόμενες σημασιολογικές επισημάνσεις και όχι τα ονόματα των στοιχείων, όπως το Tomaco. Ακόμη, το SAWSDL-MX απαιτεί την ταυτοποίηση πολλαπλών operations για να επιστραφεί μια υπηρεσία ως αποτέλεσμα, ενώ το Tomaco θεωρεί κάθε operation ξεχωριστό αποτέλεσμα, επιστρέφοντας περισσότερες επιλογές. Όπως δείχνει το τεστ Friedman στο SAWSDL-MX, οι μέθοδοι που λαμβάνουν υπόψιν τη δομή και οι τεχνικές μάθησης δεν προσφέρουν ουσιαστική βελτίωση στο καθιερωμένο υβριδικό μοντέλο. Αυτός είναι ένας επιπλέον λόγος που στον προτεινόμενο αλγόριθμο δεν υιοθετείται τεχνική σχετικά με τη δομή ή με μάθηση. Συγκεκριμένα, η Προσαρμοστική μέθοδος του SAWSDL-MX2 δε βελτίωσε τις άλλες μεθόδους του, επειδή το μοντέλο κατασκευής είναι πολύ απλό: τα χαρακτηριστικά ομοιότητας έχουν ευθέως ανάλογη σχέση με τη σχετικότητα. Επίσης, η μάθηση πάνω σε ένα σύνολο από υποκειμενικά ζευγάρια ερωτήματος-σχετικότητας οδηγεί σε ένα μοντέλο υπερπροσαρμογής, το οποίο δεν εγγυάται την προσαρμογή στο ανοιχτό περιβάλλον του Ιστού, χωρίς α- ντίστοιχα σχετικά σύνολα. Ομοίως με το SAWSDL-MX, οι αλγόριθμοι imatcher, isem, LOG4SWS, COV4SWS χρησιμοποιούν μάθηση, που αποφεύχθηκε στην προτεινόμενη υλοποίηση, καθώς δεν μπορούν να γενικευθούν στον Ιστό χωρίς σχετικά σύνολα. Επιπλέον, κάποιοι από αυτούς υιοθετούν αυστηρές στρατηγικές βασισμένες στη λογική, που αποφέρουν χαμηλές βαθμολογίες. Πίνακας 5.4: Σύγκριση αλγορίθμων ως προς έτος και γλώσσα Αλγόριθμος Έτος Γλώσσα SAWSDL-MX (Klusch and Kapahnke, 2008) 2008 SAWSDL SAWSDL-MX 2 (Matthias Klusch et al., 2009) 2009 SAWSDL isem (Klusch and Kapahnke, 2010) 2010 OWSL-S, SAWSDL LOG/COM4SWS (Lampe and Schulte, 2012) 2010 SAWSDL 191

192 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη imatcher (Wei et al., 2011) 2011 SAWSDL Skyline (Skoutas et al., 2008) 2008 OWL-S FLMM (Guo et al., 2010) 2010 OWL-SQ/ QoS Υβριδική Στρατηγική με WordNet (Tran et al., 2009) 2009 SAWSDL OOM (Meditskos and Bassiliades, 2007) 2007 OWL-S OWLS-SLR (Meditskos and Bassiliades, 2010) 2010 OWL-S IRS-III (Domingue et al., 2008) 2008 WSMO/ OWL-S Themis-S (Becker et al., 2010) 2010 WSDL WSColab (Gawinecki et al., 2010) 2010 WSDL URBE (Plebani and Pernici, 2009) 2009 SAWSDL Tomaco (Stavropoulos et al., 2015a) 2015 SAWSDL Πίνακας 5.5: Σύγκριση αλγορίθμων ως προς τη στρατηγική Αλγόριθμος Λογική Κείμενο Υβρίδιο Δομή Μάθηση Άλλο SAWSDL-MX SAWSDL-MX 2 isem LOG/COM4SWS imatcher Skyline FLMM Υβριδική Στρατηγική WordNet με WordNet OOM OWLS-SLR IRS-III Themis-S WordNet WSColab Tags URBE WordNet Tomaco Ο αλγόριθμος Skyline (Skoutas et al., 2008) παρότι προτείνει μια πολύ ενδιαφέρουσα προσέγγιση για τη στάθμιση των αποτελεσμάτων ανάμεσα στις εισόδους και στις εξόδους, θεωρεί τις σημασιολογικές σχέσεις σαν τακτικές τιμές, δηλαδή μια υπερκλάση είναι χειρότερη από μια υποκλάση. Η δική μας προσέγγιση δεν θεωρεί ότι κάποιες σχέσεις υπερτερούν άλλων. Η εργασία (Guo et al., 2010) δεν ξεκαθαρίζει το τρίτο και το τέταρτο επίπεδο του Μοντέλου Ταυτοποίησης Τεσσάρων Επιπέδων, δυσκολεύοντας τη σύγκρισή του με το προτεινόμενο μοντέλο. Μια μόνο εμφανής διαφορά είναι ότι στον αλγόριθμο Tomaco δεν εκτιμάται η ομοιότητα μεταξύ των domain των υπηρεσιών, καθώς θεωρείται ότι αναπόφευκτα περιλαμβάνεται κατά τη λογική ταυτοποίηση, ως μέρος των οντολογιών. Παρόλο που το WordNet αποτελεί μία από τις δημοφιλέστερες επιλογές όταν πρόκειται για μέτρα ομοιότητας, ο αλγόριθμος της (Tran et al., 2009) αποτυγχάνει να προσφέρει 192

193 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού έναν ισορροπημένο συνδυασμό. Η βασισμένη στη λογική στρατηγική κατακλύζεται από μια πολύπλοκη σειρά συνθηκών, ενώ η ομοιότητα κειμένου και το WordNet δε μπορούν να βελτιώσουν τα αποτελέσματα. Αντιθέτως, η προτεινόμενη στο Tomaco υβριδική μέθοδος είναι πραγματικά αντισταθμιστική, καθώς προσφέρει δύο ειδών ομοιότητες κειμένου, όταν η σημασιολογία δεν ταυτοποιείται. Θεωρείται, επίσης, ότι το WordNet αποτελεί απλώς ένα λεξικό, ενώ οι ζητούμενες υπηρεσίες συνοδεύονται από το δικό τους λεξικό, που είναι οι ίδιες οι οντολογίες και δεν ταιριάζουν απαραίτητα με το WordNet. Η μέθοδος της ομοιότητας απλής ιδιότητας που προτείνεται στο ΟΟΜ (Meditskos and Bassiliades, 2007) έχει κάποιο ενδιαφέρον, αλλά καταλήγει να εντοπίζει μόνο αριθμητικές ομοιότητες μεταξύ των τύπων, που είναι πρακτικά σπάνιο. Η απόσταση κοινού πρόγονου στην ομοιότητα σχεσιακής ιδιότητας είναι, επίσης, ελκυστική ιδέα για να επιστραφούν περισσότερα αποτελέσματα, αλλά υπάρχει κόστος σε ακρίβεια και διάρκεια συλλογισμού. Επιπλέον, ο αλγόριθμος δεν υποστηρίζει την απουσία της σημασιολογίας. Όσον αφορά το OWLS-SLR, το Tomaco δεν επιστρατεύει τόσο σύνθετη συλλογιστική, αλλά βελτιώνει τα αποτελέσματα με χαμηλή πολυπλοκότητα. Η βασισμένη στη λογική στρατηγική του IRS-III (Domingue et al., 2008), δε δύναται να συγκριθεί ποιοτικά λόγω πολυπλοκότητας και ο αλγόριθμος Themis-S (Becker et al., 2010) δεν υποστηρίζει κάποια λογική μέθοδο ταυτοποίησης, ούτε χειρίζεται τη σημασιολογία. Τέλος, παρόλο που η συνεργατική μέθοδος ετικετών του WSColab (Gawinecki et al., 2010) μοιάζει πολλά υποσχόμενη για την ταυτοποίηση υπηρεσιών, προκύπτουν ορισμένα ζητήματα. Η επισήμανση των υπηρεσιών με ετικέτες απλά μετατρέπει τις σημασιολογικές επισημάνσεις σε ένα άλλο πεπερασμένο σετ εκφράσεων (ετικέτες). Τόσο οι σημασιολογικές επισημάνσεις, όσο και οι ετικέτες ορίζονται χειροκίνητα, άρα ετικέτες και επισημάνσεις μπορούν να θεωρηθούν ισοδύναμες. Παρόλα αυτά, το βασικό πρόβλημα του αλγορίθμου είναι οι προδιαγραφές των ερωτημάτων. Οι συγγραφείς εξέτασαν αναλυτικά τη δυνατότητα μετατροπής ερωτήματος από φυσική γλώσσα σε ετικέτες του συστήματος, εισάγοντας έτσι υποκειμενικότητα και αδυναμία αυτόματης δυναμικής ταυτοποίησης. Επιπλέον, το σύστημα προτείνει ετικέτες από αρχειοθετημένες υπηρεσίες για τη δημιουργία ερωτημάτων, πράγμα που περιπλέκει τη διαδικασία ταυτοποίησης με τη συγγραφή ερωτημάτων. Δηλαδή, ενώ οι χρήστες έχουν τη δυνατότητα να αναζητήσουν γρήγορα αρχειοθετημένες υπηρεσίες, οι υπηρεσίες δεν μπορούν να περιγραφούν και να αρχειοθετηθούν δυναμικά. Αποθετήρια Υπηρεσιών Ιστού Ένα μεγάλο πρόβλημα που εντοπίζεται κατά την αξιολόγηση τεχνολογιών ταυτοποίησης Υ- πηρεσιών Ιστού είναι η έλλειψη επαρκών συνόλων ελέγχου/δεδομένων. Σπανίζουν, δηλαδή, οι διαθέσιμες Υπηρεσίες Ιστού με κατάλληλη σημασιολογική επισήμανση. Δυστυχώς, δεν είναι εφικτό να κατασκευαστούν μεγάλες και διαφορετικές συλλογές ελέγχου από μία μεμονωμένη ομάδα χρηστών. Απαιτείται η παρουσία ενός εργαλείου, το οποίο θα υποστηρίζει τη συλλογή, τον διαμοιρασμό και τη βελτίωση περιγραφών σημασιολογικών Υπηρεσιών Ιστού μέσα σε ένα συνεργατικό περιβάλλον. Το ρόλο αυτού του εργαλείου παίζουν προς το παρόν 193

194 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη τα Αποθετήρια Υπηρεσιών Ιστού (Web Services Registries). Τα πιο διαδεδομένα αποθετήρια με σημασιολογικό περιεχόμενο εξετάζονται παρακάτω. Το OPOSSum (Online Portal for Semantic Services) είναι μια διαδικτυακή αποθήκη υ- πηρεσιών που προσφέρει υποδομή για τη συλλογή, τον διαμοιρασμό, την επεξεργασία και τη σύγκριση σημασιολογικών Υπηρεσιών Ιστού μέσω μιας δημόσιας δομημένης βάσης δεδομένων από περιγραφές υπηρεσιών (Küster et al., 2008). Αποτελεί μια διαδικτυακή πλατφόρμα και είναι διαθέσιμη στο διαδίκτυο 61. Περιλαμβάνει περισσότερες από 1300 περιγραφές υπηρεσιών για πάνω από 1250 υπηρεσίες, ανάμεσα σε αυτές και τα σύνολα, που έχουν ήδη αναφερθεί, JGD και OWLS-TC. Οι χρήστες μπορούν να αναζητούν υπηρεσίες σύμφωνα με ένα πεδίο (π.χ. ταξίδι) ή με τις γλώσσες οντολογιών, που χρησιμοποιούνται κατά την επισήμανση, και να τις κατεβάσουν σε ένα συμπιεσμένο αρχείο. Αν εντοπιστεί κάποιο σφάλμα, ο χρήστης μπορεί να διορθώσει το αρχείο της υπηρεσίας ή της οντολογίας και στη συνέχεια οι υπόλοιποι χρήστες θα έχουν πρόσβαση σε αυτή τη νέα έκδοση. Πέρα από την αναζήτηση και τη διόρθωση, ο χρήστης μπορεί να ανεβάσει δικές του υπηρεσίες και να τους προσάψει ετικέτες, ώστε να είναι ευκολότερος ο εντοπισμός τους από άλλους χρήστες. Τεχνικά, ω- στόσο, το OPOSSUM δε βασίζεται σε σημασιολογία ή άλλου είδους ευριστική ταυτοποίηση, αφού η αναζήτηση και η ανάκτηση σχετικών υπηρεσιών υλοποιείται με ερωτήματα SQL στη βάση δεδομένων, που περιέχει τις περιγραφές των υπηρεσιών. Το BioCatalogue είναι ένα εκτενές αποθετήριο υπηρεσιών, που σχετίζονται με την επιστήμη της ζωής (Bhagat et al., 2010). Η εφαρμογή είναι διαθέσιμη διαδικτυακά 62 από το 2009 και επιτρέπει την εγγραφή υπηρεσιών σχετικών με το αντικείμενο (π.χ. υπηρεσίες για ακολουθίες πρωτεϊνών ή για μοριακές δομές), αλλά και πιο γενικών που βρίσκουν εφαρμογή στη βιοπληροφορική (π.χ. υπηρεσίες εξόρυξης κειμένου ή ανάλυσης εικόνας). Ο κατάλογος δε φιλοξένει ο ίδιος τις υπηρεσίες, αλλά παρέχει έναν μηχανισμό για να τις εντοπίζει και να τις επισημαίνει. Έχει πάνω από 300 εγγεγραμμένα μέλη και περιγράφει 1627 Υπηρεσίες Ιστού από 158 διαφορετικούς παρόχους 25 χωρών. Τα προτερήματά του είναι η σύνδεση με εξωτερικά αποθετήρια και η δυνατότητα προσθήκης μεταδεδομένων που διευκολύνουν την ε- πέκταση, διόρθωση και διάθεση των υπηρεσιών στην κοινότητα. Όπως το OPOSSum, το Bio- Catalogue δεν υποστηρίζει ερωτήματα με σημασιολογία, αλλά πραγματοποιεί αναζήτηση με λέξεις-κλειδιά, χρησιμοποιώντας μεταδεδομένα και ετικέτες. Το αποθετήριο WESS (Hatzi et al., 2012) βασίζεται στην ανακάλυψη WSDL/SAWSDL και OWL-S υπηρεσιών με λέξεις-κλειδιά, μέσα από crawling στον Ιστό. Το σύστημα iserve (Pedrinaci et al., 2010) ακολουθεί μια διαφορετική τεχνική περιγραφής, με χρήση Διασυνδεδεμένων Δεδομένων RDF/Linked Data, ώστε να δημοσιεύει, να αναλύει και να ανακαλύπτει υπηρεσίες. Σε σχέση με τις παραπάνω προσεγγίσεις, το Tomaco παρέχει ένα πιο συμπαγές αποθετήριο, χωρίς crawling, αλλά εστιάζει στην παροχή σημασιολογικής αναζήτησης και ταυτοποίησης. Συγκεκριμένα, το διαδικτυακό σύστημα ενσωματώνει εξειδικευμένους και

195 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού παραμετροποιήσιμους αλγορίθμους, χρήσιμους για το επιστημονικό κοινό, αλλά και για τους κοινούς χρήστες, οι οποίοι μπορούν να ανεβάζουν, να διαθέτουν και να πειραματίζονται με τις συλλογές τους. Σύνθεση Υπηρεσιών Ιστού στη Βιβλιογραφία Μία Υπηρεσία Ιστού μπορεί να εμπεριέχει άλλες Υπηρεσίες Ιστού, που πιθανώς θα παρέχονται από διαφορετικές εταιρίες. Για παράδειγμα, ένας πωλητής προσωπικών υπολογιστών μπορεί να προσφέρει μια υπηρεσία, η οποία επιτρέπει στους πελάτες να ζητούν προσφορές και να παραγγέλνουν υπολογιστές. Παρόλα αυτά, η εφαρμογή του operation requestquote (ζητώ προσφορά) μπορεί να απαιτεί την εμπλοκή διαφόρων άλλων υπηρεσιών, για παράδειγμα αυτές που παρέχονται από τους κατασκευαστές των υπολογιστών για τις πιο πρόσφατες τιμές. Μια Υπηρεσία Ιστού η οποία υλοποιείται καλώντας άλλες ονομάζεται σύνθετη υ- πηρεσία, ενώ μια υπηρεσία η οποία απαιτεί απλή πρόσβαση στο τοπικό σύστημα ονομάζεται βασική υπηρεσία (Alonso et al., 2004). Ο πελάτης δε χρειάζεται να γνωρίζει εάν μια Υπηρεσία Ιστού είναι βασική ή σύνθετη, αφού τον αφορά μόνο το τελικό αποτέλεσμα. Όσο ο αριθμός των διαθέσιμων Υπηρεσιών Ιστού συνεχίζει να αυξάνεται και το επιχειρησιακό περιβάλλον απαιτεί ακόμη πιο εξελιγμένες εφαρμογές, προκύπτει η ευκαιρία και η ανάγκη για τεχνολογίες σύνθεσης υπηρεσιών. Αυτές οι τεχνολογίες παρουσιάζουν ομοιότητες με τα συστήματα ροής εργασιών (workflow) και επιτρέπουν τη γρήγορη ανάπτυξη, συντήρηση και εξέλιξη περίπλοκων υπηρεσιών. Μία εκτενής βιβλιογραφική αναφορά στη σύνθεση υπηρεσιών, ειδικά σε διάχυτα περιβάλλοντα, κατηγοριοποιεί τις υπάρχουσες προσεγγίσεις σε τεχνικές απλής ταυτοποίησης και σε τεχνικές Σχεδιασμού Ενεργειών (Planning) από τον τομέα της Τεχνητής Νοημοσύνης (Stavropoulos et al., 2013c). Άλλες μέθοδοι που χρησιμοποιούνται σπανιότερα είναι τα πολυπρακτορικά συστήματα. Ο Σχεδιασμός Ενεργειών ταιριάζει εκ φύσεως με το πρόβλημα της σύνθεσης υπηρεσιών, καθώς στοχεύει στην εύρεση μιας ακολουθίας ενεργειών, ώστε να μετατρέψει μια αρχική κατάσταση σε μία κατάσταση η οποία θα περιλαμβάνει κάποιους στόχους. Ειδικά οι περιγραφές σε γλώσσα OWL-S είναι ιδανικές για την εφαρμογή τεχνικών του Σχεδιασμού Ενεργειών, επειδή οι είσοδοι, οι έξοδοι, οι προϋποθέσεις και τα αποτελέσματα (IOPEs) της OWL-S μπορούν να εξυπηρετήσουν απευθείας τον Σχεδιασμό συσχετίζοντας τις υπηρεσίες με τις ενέργειες (actions). Με άλλα λόγια, το πρόβλημα εύρεσης μιας ακολουθίας υπηρεσιών με σαφώς ορισμένα IOPEs για μια σύνθετη υπηρεσία μετατρέπεται στο πρόβλημα εύρεσης μιας ακολουθίας ενεργειών με τα ίδια IOPEs για να φτάσει σε μια κατάσταση-στόχο. Το πλεονέκτημα αυτής της μεθόδου είναι η δυνατότητα επαναχρησιμοποίησης βιβλιοθηκών των γνωστών αλγορίθμων Σχεδιασμού Ενεργειών. Η ταυτοποίηση απλών υπηρεσιών είναι μια προσέγγιση ωμής βίας, που αναφέρεται στον επαναληπτικό έλεγχο κάθε υπηρεσίας προσπαθώντας να την ταυτοποιήσει με την ζητούμενη λειτουργικότητα. Ο εντοπισμός μιας ακολουθίας υπηρεσιών για τη σύνθεση περιλαμβάνει την ταυτοποίηση ατομικών υπηρεσιών σε κάθε βήμα. Η ταυτοποίηση σύμφωνα με το κείμενο των περιγραφών των υπηρεσιών είναι ένα συχνό κριτήριο ταυτοποίησης και οδη- 195

196 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη γεί σε πολλαπλές σύνθετες υπηρεσίες χωρίς νόημα. Από την άλλη, οι περιγραφές με σημασιολογικές επισημάνσεις επιτρέπουν τη λογική ταυτοποίηση, σύμφωνα με τις δυνατότητες μίας υπηρεσίας, η οποία βελτιώνει και αυτοματοποιεί τη διαδικασία. Ο Πίνακας 5.6 παρουσιάζει μια ενδεικτική επιλογή των συστημάτων της βιβλιογραφίας που ασχολούνται με τη σύνθεση Υπηρεσιών Ιστού και τα αναλύει ως προς το έτος δημοσίευσης, τη μέθοδο σύνθεσης και την ειδικότερη τεχνική που χρησιμοποιούν. Αναλυτικότερα, οι Ranganathan και Campbell (Ranganathan and Campbell, 2004) εφαρμόζουν το σύστημα Σχεδιασμού Ενεργειών Blackbox σε STRIPS, που μάλιστα υποστηρίζει την επανεκτέλεση των ενεργειών. Γενικά, η υλοποίηση του συστήματος ευνοεί τη μεθοδολογία του Σχεδιασμού Ενεργειών, καθώς πολλά κοινά χαρακτηριστικά του βρίσκουν εφαρμογή, όπως για παράδειγμα η αναπαράσταση του κόσμου με τη μορφή κατηγορημάτων. Το υποσύστημα σχεδιασμού στην εργασία (Davidyuk et al., 2011) δέχεται μια ακολουθία από αφαιρετικούς υποστόχους του χρήστη, που πρέπει να μετατρέψει σε πραγματικές υλοποιήσεις/συσκευές. Η τεχνική που ενσωματώνεται βασίζεται σε εξελικτική και γενετική υπολογιστική βελτιστοποίηση, ενώ λαμβάνει επίσης υπόψιν πολλαπλά κριτήρια του χρήστη (πλησιέστερη, ταχύτερη ή φθηνότερη λύση) και προτιμήσεις του (πιστότητα και QoS). Ακόμη, πολλές φορές χρησιμοποιείται μια συνάρτηση ωφέλειας για να βαθμολογηθούν οι υποψήφιες υπηρεσίες. Για παράδειγμα, στην εργασία (Iacob et al., 2008) εφαρμόζεται μια προσέγγιση ταυτοποίησης, όπου οι υπηρεσίες-στόχοι αποσυντίθενται επαναληπτικά, μέχρι να βρεθεί μια λύση ταυτοποίησης για κάθε στοιχείο. Κάθε ταυτοποίηση αξιολογείται σύμφωνα με ένα μέτρο σημασιολογικής ομοιότητας. Τα πολυπρακτορικά συστήματα ως αυτόνομες οντότητες μπορούν να ενισχύσουν ένα σύστημα Διάχυτης Νοημοσύνης με διάφορους τρόπους. Οι πιο δημοφιλείς προσεγγίσεις ανταλλάσσουν δεδομένα για τα συμφραζόμενα ή παίζουν ενεργό ρόλο στη σύνθεση εφαρμόζοντας ταυτοποίηση ή σχεδιασμό ενεργειών. Μπορούν, επίσης, απλά να καλέσουν αυτόματα το υποσύστημα σύνθεσης, απαλλάσσοντας τους χρήστες από την ευθύνη να το κάνουν μόνοι τους. Οι συγγραφείς της εργασίας (Vallée et al., 2005) εφαρμόζουν μια προσέγγιση πολυπρακτορικού συστήματος, που συνδυάζει διαχείριση συμφραζομένων και ταυτοποίηση υπηρεσιών. Υπάρχουν τρεις τύποι πρακτόρων: οι βοηθητικοί πράκτορες, οι πράκτορες σύνθεσης και οι πράκτορες υπηρεσίας. Οι βοηθητικοί πράκτορες δέχονται την κατάσταση-στόχο είτε απευθείας από τον χρήστη είτε την συμπεραίνουν από κανόνες βασισμένους στο context. Οι πράκτορες σύνθεσης συνενώνουν πιθανές λύσεις, που περιλαμβάνουν ένα σύνολο από α- παιτήσεις για υπηρεσίες και τις σχέσεις τους. Οι πράκτορες υπηρεσίας ικανοποιούν αυτές τις απαιτήσεις ταυτοποιώντας υπηρεσίες βασιζόμενοι σε περιγραφές με σημασιολογικές επισημάνσεις και τις αξιολογούν σύμφωνα με τα συμφραζόμενα. Οι πράκτορες και των τριών τύπων έχουν την ικανότητα να διαπραγματεύονται μεταξύ τους. Στο τέλος, ο χρήστης μπορεί να αποφασίσει από διάφορα εναλλακτικά αποτελέσματα. Μία άλλη εργασία (Maamar et al., 2005) προτείνει πάλι αυτόνομους πράκτορες, οι οποίοι εφαρμόζουν συλλογικά τη σύνθεση υπηρεσιών. Οι διαφορετικοί τύποι των πρακτό- 196

197 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού ρων σχετίζονται με τις σύνθετες υπηρεσίες, τις ατομικές υπηρεσίες και τα στιγμιότυπα υπηρεσιών και διαπραγματεύονται σύμφωνα με τη γνώση τους για την τωρινή κατάσταση της υπηρεσίας. Τέλος, οι πράκτορες BDI (Belief-Desire-Intention δηλαδή Πεποίθηση-Επιθυμία- Σκοπός) της εργασίας (Santofimia et al., 2011) αλληλοεπιδρούν μεταξύ τους ανταλλάσσοντας πληροφορία και τελικά καλούν πλάνα (με τον αλγόριθμο σχεδιασμού HTN) για να εκπληρώσουν τους στόχους τους. Πίνακας 5.6: Σύγκριση Tomaco και υπαρχόντων συστημάτων σύνθεσης Σύστημα Έτος Μέθοδος Τεχνική (Mazzola Paluska et al., 2008) 2008 Σχεδ. Ενερ. HTN (Sousa et al., 2006) 2006 Ταυτοποίηση Knapsack (Mokhtar, 2007) 2007 Ταυτοποίηση Ταυτ. Δυνατοτήτων (Thomson et al., 2008) 2008 Ταυτοποίηση Ταυτ. Δυνατοτήτων (Ranganathan and Campbell, 2004) 2004 Σχεδ. Ενερ BLACKBOX (Beauche and Poizat, 2008) 2008 Σχεδ. Ενερ GraphHTN (Messer et al., 2006) 2006 Ταυτοποίηση Κατάταξη (Preuveneers and Berbers, 2005) 2005 Ταυτοποίηση CSP (Bottaro et al., 2007) 2007 Ταυτοποίηση Κατάταξη (Iacob et al., 2008) 2008 Ταυτοποίηση Κατάταξη (Yokohata et al., 2006) 2006 Ταυτοποίηση Ταυτ. Δυνατοτήτων (Nakazawa et al., 2004) 2004 Ταυτοποίηση Ταυτ. Δυνατοτήτων (Lagesse et al., 2010) 2010 Ταυτοποίηση CSP (Davidyuk et al., 2011) 2010 Σχεδ. Ενερ Γενετικός Αλγόριθμος (Wisner and Kalofonos, 2007) 2007 Σχεδ. Ενερ State Space Search (Vuković et al., 2007) 2007 Σχεδ. Ενερ TLPLAN (Qiu et al., 2006) 2006 Σχεδ. Ενερ HTN (Qasem et al., 2004) 2004 Σχεδ. Ενερ HTN (Maamar et al., 2005) 2005 Πράκτορες Διαπραγμάτευση (Sheshagiri et al., 2004) 2004 Σχεδ. Ενερ STRIPS (Mabrouk et al., 2009) 2009 Ταυτοποίηση Κατάταξη (Masuoka et al., 2003) 2003 Ταυτοποίηση Χειροκίνητη (Ni and Sloman, 2005) 2005 Σχεδ. Ενερ State Space Search (Vallée et al., 2005) 2005 Πράκτορες Σημ. Ταυτοποίηση (Bertoli et al., 2009) 2009 Σχεδ. Ενερ BDD (Salomie et al., 2008) 2008 Λογισμός Fluent calculus (Ibrahim et al., 2009) 2009 Ταυτοποίηση Ταυτ. ανά ζεύγη (Robinson et al., 2004) 2004 Ταυτοποίηση Ταυτ. Δυνατοτήτων (Santofimia et al., 2011) 2011 Σχεδ. Ενερ HTN Tomaco 2015 Σχεδ. Ενερ Blackbox STRIPS 197

198 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Στρατηγική Βασισμένη στη Λογική Η προτεινόμενη στρατηγική ταυτοποίησης Βασισμένη στη Λογική (Logic-Based Strategy) στο Tomaco, όπως φανερώνει το όνομα της, είναι αυτή που εμπεριέχει αμιγώς σημασιολογικά κριτήρια και τεχνικές συλλογισμού. Πρώτα από όλα, συλλέγει όλες τις σημασιολογικές επισημάνσεις από τα XML δέντρα των αρχείων SAWSDL/WSDL. Η Εικόνα 5.18 απεικονίζει την αναδρομική πορεία DFS (Depth First Search Κατά Βάθος Αναζήτηση) αναζήτησης στην τυπική WSDL δομή και την ίδια στιγμή συλλέγονται τα sawsdl:modelreferences, όταν υπάρχουν. Ο αλγόριθμος ξεκινάει από το interface και προχωράει μέχρι τα φύλλα του δένδρου, που είναι συνήθως τα simpletypes. Ειδικότερα, το interface, μοναδικό ανά υπηρεσία, μπορεί να έχει ένα ή περισσότερα operations, τα οποία έχουν input και output. Τα input και output μέσω του message έχουν parts ή elements. Κάθε part μπορεί να περιέχει ένα type ή ξανά ένα element. Τα types μπορούν να είναι είτε simpletypes, είτε complextypes. Το τελευταίο μπορεί να περιέχει μια ακολουθία (xsd:sequence) από elements και έτσι μπορεί να συνεχίσει να αποσυντίθεται επ άπειρον σε απλούστερα types. Στον προτεινόμενο αλγόριθμο, το βάθος των επισημάνσεων δε λαμβάνεται υπόψιν. Με άλλα λόγια, μία επισήμανση για παράδειγμα σε ένα part που είναι άμεσο παιδί του input και μία άλλη σε ένα βαθύτερα εμφωλευμένο simpletype έχει πρακτικά την ίδια σημασία και βάρος. Αυτό απλοποιεί και χαλαρώνει τα κριτήρια ταυτοποίησης. Η προσμέτρηση του βάθους ώστε να βελτιωθεί η ακρίβεια, απαιτεί ειδικότερη έρευνα ως μελλοντική εργασία. 198 Εικόνα 5.18: Κατά Βάθος Αναζήτηση του WSDL δέντρου για εξαγωγή της σημασιολογίας

199 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα 5.19: Η συνάρτηση ταυτοποίησης του Tomaco εξάγει με DFS τη σημασιολογία, βαθμολογεί βασισμένη στη λογική και εφαρμόζει βάρη Η Εικόνα 5.19 δείχνει τον συνολικό αλγόριθμο της στρατηγικής εξερεύνησης και βαθμολόγησης με βάση τη λογική. Τα Βασισμένα στη Λογική χαρακτηριστικά παίζουν κυρίως ρόλο στη βαθμολόγηση. Ο αλγόριθμος βαθμολόγησης με κριτήρια λογικής αντιμετωπίζει τα χαρακτηριστικά των εισόδων και των εξόδων διαφορετικά. Πιο συγκεκριμένα, βασίζεται στην πρακτική παραδοχή πως οι χρήστες κατέχουν ορισμένες πληροφορίες εισόδου και επιθυμούν ορισμένες πληροφορίες εξόδου. Επομένως, μπορούν να ικανοποιηθούν με πιο γενικά δεδομένα εισόδου, δηλαδή η προσφερόμενη είσοδος να είναι υπερκλάση της ζητούμενης (O i > R i ). Σε αντίθετη περίπτωση, που προσφέρονται υπηρεσίες με πιο συγκεκριμένα δεδομένα εισόδου (O i < R i ), οι χρήστες δε μπορούν να τα παρέχουν και άρα οι υπηρεσίες αυτές είναι λιγότερο επιθυμητές. Το αντίθετο ισχύει για τις εξόδους της υπηρεσίας. Οι χρήστες ε- πιθυμούν να αποκτήσουν συγκεκριμένη έξοδο από μια υπηρεσία. Εάν αυτή η πληροφορία είναι πιο γενική (O o > R o ), είναι λιγότερο χρήσιμη στους χρήστες, ενώ πιο συγκεκριμένη πληροφορία (O o < R o ) περισσότερο χρήσιμη. 199

200 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 200 Εικόνα 5.20: Βαθμολόγηση στη στρατηγική Βασισμένη στη Λογική του Tomaco Συνολικά, ο αλγόριθμος βασίζεται στα παραπάνω προσπαθώντας να προσεγγίσει τις επιθυμίες του χρήστη. Θεωρούνται τέσσερις περιπτώσεις ή αλλιώς βαθμίδες ταυτοποίησης: Exact (Ακριβής), Desired (Επιθυμητή), LessDesired (Λιγότερο Επιθυμητή) και Fail (Αποτυχία), ενώ ο αλγόριθμος βαθμολόγησης δίνεται στην Εικόνα Η Exact ταυτοποίηση είναι η πιο επιθυμητή, τόσο στην περίπτωση της εισόδου, όσο και της εξόδου και θα πρέπει να βαθμολογείται με τον μέγιστο βαθμό ομοιότητας. Για τη βαθμολογία των επόμενων δύο περιπτώσεων, ορίζονται οι παράμετροι UpperRate (Υψηλός Βαθμός) και LowerRate (Χαμηλός Βαθμός) αντίστοιχα. Σημειώνεται ότι για λόγους γενίκευσης και απλότητας, η απόσταση από την επιθυμητή κλάση δεν υπολογίζεται. Όταν προσφέρεται μια Desired κλάση, δηλαδή μια υπερκλάση της εισόδου ή υποκλάση της εξόδου, η ομοιότητα της λογικής τίθεται ίση με τον UpperRate. Αντίστοιχα, όταν εντοπίζεται μια LessDesired κλάση, υποκλάση της εισόδου ή υπερκλάση της εξόδου, η βαθμολογία είναι ίση με τον LowerRate. Εάν δεν υπάρχει σημασιολογία ή οι κλάσεις δεν παρουσιάζουν καμία ιεραρχική σχέση, τότε η ταυτοποίηση θεωρείται ως Fail. Η προτεινόμενη μέθοδος χειρίζεται πάντα την ομοιότητα ως μια αριθμητική τιμή στο διάστημα [0, 1], ώστε να επιτρέπει συνεχείς τιμές βαθμολογιών και να διευκολύνει τους συνδυασμούς με άλλες μεθόδους (π.χ. στην Υβριδική στρατηγική). Μέσα από πειραματικές διαδικασίες, οι τιμές έχουν τεθεί ως εξής: Exact: 1 Desired: UpperRate = 0.75

201 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού LessDesired: LowerRate = 0.25 Fail: 0 Η ταυτοποίηση εφαρμόζεται βαθμολογώντας κάθε προσφερόμενο operation. Σχηματίζονται δύο διανύσματα, ένα για τις ζητούμενες εισόδους και ένα για τις ζητούμενες εξόδους. Κάθε τιμή του διανύσματος είναι η μέγιστη βαθμολογία μεταξύ ζητούμενης εισόδου/εξόδου και όλων των προσφερόμενων. Η συνολική βαθμολογία για τις εισόδους και η συνολική για τις εξόδους προκύπτουν από τον μέσο όρο των τιμών των διανυσμάτων (για εξισορρόπηση). Άλλοι αλγόριθμοι της βιβλιογραφίας επιλέγουν τη μέγιστη βαθμολογία αντί για τον μέσο όρο των διανυσμάτων, αλλά αυτό είναι διαισθητικά αυστηρότερο και, όπως φάνηκε στα πειράματα με το SAWSDL-TC 3, δίνει χειρότερα αποτελέσματα. Η τελική βαθμολογία του προσφερόμενου operation είναι το σταθμισμένο άθροισμα των δύο βαθμολογιών (εισόδου και εξόδου) ανάλογα με το πού επιθυμεί ο χρήστης να δώσει βαρύτητα. Όλη αυτή η διαδικασία της επιλογής των καλύτερων τιμών, του μέσου όρου των διανυσμάτων και της εφαρμογής των βαρών μεταξύ των εισόδων και των εξόδων φαίνεται στην Εικόνα 5.19, που παρουσιάζει τη γενική ραχοκοκαλιά του συστήματος ταυτοποίησης. Σημειώνεται εδώ ότι ο διαφορετικός χειρισμός των εισόδων και των εξόδων κατά τη λογική βαθμολόγηση δε μεταφράζεται σε διαφορετική βαρύτητα μεταξύ τους. Η σημαντικότητα των εισόδων σε σχέση με των εξόδων αποτελεί μια ξεχωριστή παράμετρο με τη μορφή βάρους. Συνήθως, το βάρος ορίζεται σε 0.5, εκτός και αν ο χρήστης επιθυμεί διαφορετικά. Επιπλέον, ο αλγόριθμος δεν εφαρμόζει βάρη όταν δεν υπάρχουν ζητούμενες είσοδοι ή όταν δεν υπάρχουν ζητούμενες έξοδοι. Στην περίπτωση, όμως, που υπάρχουν και δεν ταυτοποιηθούν (Fail), τότε η συνολική βαθμολογία μειώνεται κατά αναλογία. Εν τέλει, ο αλγόριθμος δεν ανάγει τη βαθμολογία του operation σε βαθμολογία της υπηρεσίας για να επιστρέψει την υπηρεσία ως αποτέλεσμα, αλλά επιστρέφει το κάθε operation ξεχωριστά. Αυτή η προσέγγιση βασίζεται στην παραδοχή ότι τα operations των υπηρεσιών αποτελούν αυτοτελείς μεθόδους με συγκεκριμένες εισόδους και εξόδους, ενώ οι υπηρεσίες όχι. Με άλλα λόγια, ο αλγόριθμος κατ ουσία εφαρμόζει ταυτοποίηση των operations και είναι ικανός να τα χειριστεί ανεξάρτητα. Ένα κατώφλι βαθμολογίας μπορεί να οριστεί σαν φίλτρο για να βελτιωθεί η ποιότητα σε σχέση με την ποσότητα των ανακτηθέντων υπηρεσιών. Αυτό το κατώφλι δε χρησιμοποιήθηκε κατά τη διάρκεια της αξιολόγησης για λόγους πληρότητας, αλλά είναι κατάλληλο για τη διαδικτυακή εφαρμογή Tomaco. Η στρατηγική αυτή, όπως και όλες όσες ακολουθούν, υλοποιήθηκε σε Java. Για την DFS εξαγωγή των χαρακτηριστικών χρησιμοποιήθηκε η βιβλιοθήκη easywsdl (Boissel-Dallier et al., 2009), ενώ κάποια χαρακτηριστικά εξάγονται χειροκίνητα όπου αυτό δεν υποστηρίζεται (modelreferences από wsdl:operation και wsdl:type από wsdl:part). Ειδικά για αυτή τη στρατηγική, χρησιμοποιήθηκε το OWL-API (Horridge and Bechhofer, 2011) για τον χειρισμό οντολογιών και η δική του μηχανή συλλογιστικής, Hermit (Shearer et al., 2008). Έγιναν, επίσης, βελτιστοποιήσεις για τις χρονικές επιδόσεις του αλγορίθμου. Συγκεκριμένα, όλα τα στιγμιότυπα που απαιτούνται για τη συλλογιστική δημιουργούνται στην αρχή, ώστε να μπορούν να απαντήσουν στη συνέχεια όλα τα λογικά ερωτήματα. Η μεγαλύτερη καθυστέρηση αντιστοιχεί στην εξαγωγή των χαρακτηριστικών από τα αρχεία, όποτε 201

202 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη αυτή η διαδικασία γίνεται μία φορά και αποθηκεύεται σε κατάλληλη δομή (πίνακα κατακερματισμού). Οι τελικές επιδόσεις είναι πολύ ικανοποιητικές, όπως φαίνεται στην ενότητα των πειραμάτων Στρατηγική Συντακτικής Ομοιότητας της Σημασιολογίας Ο σκοπός της μεθόδου Συντακτικής Ομοιότητας της Σημασιολογίας (Syntactic-On-Semantics Syn-On-Sem) είναι να συμπληρώσει και να αντισταθμίσει τις αναντιστοιχίες της Βασισμένης στη Λογική μεθόδου. Σε κάποιες περιπτώσεις, η στρατηγική της λογικής μπορεί να καταστεί ακατάλληλη για κάποια ερωτήματα, για παράδειγμα όταν δεν υπάρχει ιεραρχική αντιστοιχία, ακόμα και μετά από συλλογιστική. Η ιδέα πίσω από τη στρατηγική Syn-On-Sem έγκειται στο ότι οι σημασιολογικές επισημάνσεις είναι κατ ουσία εκφράσεις κειμένου, στις οποίες μπορούν να εφαρμοστούν μέτρα ομοιότητας κειμένου. Με άλλα λόγια, η στρατηγική υπολογίζει την ομοιότητα κειμένου μεταξύ της ζητούμενης σημασιολογίας και των προσφερόμενων σημασιολογικών επισημάνσεων. Πρώτα από όλα, ο αλγόριθμος συλλέγει τις σημασιολογικές επισημάνσεις με την ίδια DFS διάσχιση, που περιγράφηκε στην προηγούμενη μέθοδο. Όμως, αυτή τη φορά, γίνεται εξαγωγή των ονομάτων της σημασιολογίας, δηλαδή η συμβολοσειρά URI των επισημάνσεων κλαδεύεται πριν τον χαρακτήρα «#» για να παραμείνει μόνο το όνομα της κλάσης. Στη συνέχεια, τα R i, R o και O i, O o ταυτοποιούνται για να υπολογιστεί μια βαθμολογία του operation για τις ζητούμενες εισόδους και μία για τις ζητούμενες εξόδους. Η ομοιότητα κειμένου υλοποιείται μέσω μιας βιβλιοθήκης με κλασικούς αλγορίθμους. Ενώ ο αλγόριθμος βαθμολόγησης αλλάζει όπως αναφέρθηκε, ο κορμός της στρατηγικής παραμένει ίδιος για τη διάσχιση του δέντρου της υπηρεσίας. Μετά από πειραματισμό και ανάλυση διαφορετικών κλασικών μεθόδων ομοιότητας κειμένου, βρέθηκαν οι δύο βέλτιστες μέθοδοι για τις εφαρμογές ταυτοποίησης υπηρεσιών. Τα σημασιολογικά ονόματα, όπως τα ονόματα των μεταβλητών στον προγραμματισμό, ακολουθούν διάφορες συμβάσεις για να συμμορφώνονται με την απαγόρευση των κενών χαρακτήρων. Για αυτό τον λόγο, ακολουθούνται πάντα καλές πρακτικές όπως το CamelCase και το snake_case. Στην πρώτη πρακτική, το αρχικό γράμμα κάθε λέξης είναι στα κεφαλαία, ενώ στη δεύτερη μια κάτω παύλα μπαίνει ανάμεσα σε κάθε λέξη της φράσης. Στις περισσότερες περιπτώσεις, το CamelCase είναι η κυρίαρχη σύμβαση, όπως και στο SAWSDL-TC. Σαν αποτέλεσμα, οι λέξεις που αναζητούμε στο κείμενο είναι στην ουσία τμήματα τέτοιων συμβολοσειρών. Εντοπίστηκαν δύο αλγόριθμοι που καταφέρνουν να βρουν μεγάλη ομοιότητα μεταξύ λέξεων κρυμμένων σε τέτοιες φράσεις, ο Monge-Elkan (Monge and Elkan, 1996) και ο Jaro (Jaro, 1989), ενώ οι υπόλοιποι κρίθηκαν ανεπαρκείς, για παράδειγμα οι Cosine, Dice, Euclidean Distance, Jaccard και Levenshtein. Η υψηλή καταλληλόλητά τους δικαιολογείται, καθώς ο Monge-Elkan σχεδιάστηκε ειδικά για να ταυτοποιεί συμβολοσειρές των οποίων οι λέξεις οριοθετούνται από ειδικούς χαρακτήρες και ο Jaro για να εντοπίζει σύντομες συμβολοσειρές, όπως ονόματα. Μετά από μια σειρά πειραμάτων, βρέθηκε πως ο Monge-Elkan βαθμολογεί τις όμοιες λέξεις με 1, ενώ ο Jaro από 0.7 μέχρι 1. Για αυτό τον λόγο, τέθηκαν οι αντίστοιχες 202

203 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού τιμές κατωφλίου (1 και 0.7) για την ομοιότητα κειμένου στον αλγόριθμο. Στην υλοποίηση, οι αλγόριθμοι παρέχονται από τη βιβλιοθήκη Java, Simmertics Στρατηγική Συντακτικής Ομοιότητας Ονομάτων Η στρατηγική Συντακτικής Ομοιότητας Ονομάτων εφαρμόζεται σε συντακτικά χαρακτηριστικά (Syntactic-On-Syntactics Syn-On-Syn). Παραβλέπει τελείως τη σημασιολογία των προσφερόμενων εισόδων και εξόδων και εφαρμόζει ομοιότητα κειμένου στα (συντακτικά) ονόματα των στοιχείων WSDL. Επομένως, είναι η μόνη καρποφόρα στρατηγική, όταν οι σημασιολογικές επισημάνσεις είναι λίγες ή εντελώς απούσες (απλά αρχεία WSDL, χωρίς SAWSDL). Ο αλγόριθμος είναι ίδιος με τις προηγούμενες στρατηγικές μόνο που αντί για τη συλλογή σημασιολογικών επισημάνσεων, το δέντρο διασχίζεται και συλλέγονται όλα τα ονόματα κάθε στοιχείου. Αυτά τα ονόματα συγκρίνονται στη συνέχεια με κάθε r i και r o σχηματίζοντας μια γενική βαθμολογία και μια κατάταξη των operations. Οι αλγόριθμοι ομοιότητας κειμένου είναι και πάλι οι Monge-Elkan και Jaro, καθώς η περιγραφή των ονομάτων των στοιχείων εκφράζεται και πάλι με παρόμοιες συμβάσεις, όπως οι CamelCase και snake_case Υβριδική Στρατηγική Η τελευταία στρατηγική είναι υβριδικής φύσεως (Hybrid) και χρησιμοποιεί τις άλλες τρεις στρατηγικές σχεδόν κατά σειρά αποτελεσματικότητας. Καθώς όλες οι προαναφερθείσες στρατηγικές εξετάζουν διαφορετικά στοιχεία με διαφορετικούς ευριστικούς μηχανισμούς, μπορούν να συμπληρώσουν η μία την άλλη. Η αποτελεσματικότητα της κάθε μεθόδου εξαρτάται πολύ από τον υποκειμενικό ορισμό των σχετικών αποτελεσμάτων ανά ερώτημα. Η προτεινόμενη υβριδική στρατηγική σχεδιάστηκε σύμφωνά με τις απαιτήσεις των χρηστών από ένα τέτοιο σύστημα και στη συνέχεια αναπροσαρμόστηκε με βάση τα πειραματικά αποτελέσματα που παρουσιάζονται σε επόμενη ενότητα. Σύμφωνα με τα παραπάνω, η μέθοδος βασισμένη στη λογική κατέχει τη μεγαλύτερη προτεραιότητα, επιτρέποντας στις συντακτικές μεθόδους να βελτιώσουν την ακρίβεια. Οι περισσότερες υπάρχουσες υβριδικές μέθοδοι εξαντλούν τη λογική μέθοδο μέχρι την περίπτωση Fail πριν εξετάσουν τις μεθόδους κειμένου ή αλλιώς εκτελούν όλες τις μεθόδους συνδυάζοντάς τες αριθμητικά, όπως στην εργασία (Klusch and Kapahnke, 2008). Αντίθετα η υβριδική στρατηγική στο Tomaco δεν εκτελεί και συνδυάζει πάντα όλες τις μεθόδους, αλλά, αντίθετα, εξετάζει τις μετρικές κειμένου μόνο εφόσον δε βρεθεί ένα Exact ταίριασμα της λογικής μεθόδου. Συγκεκριμένα, η στρατηγική προσομοιάζει την παρακάτω συνάρτηση αξιολόγησης f(o x ), για κάθε προσφερόμενο στοιχείο o x : 1, o x r x o x ~ t r x name(o x ) ~ t r x 0.75, (x = i o f(o x ) = { x > r x ) (x = o o x < r x ) 0.25, (x = i o x < r x ) (x = o o x > r x ) 0, otherwise 63 SimMetrics: 203

204 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη όπου η συντακτική ομοιότητα συμβολίζεται ως ~ t, το όνομα του WSDL στοιχείου x ως name(x), η είσοδος ως i και η έξοδος ως o. Οι παραπάνω περιπτώσεις εξετάζονται με τη σειρά. Αν δε βρεθεί ταίριασμα Exact, δηλαδή η ίδια ή ισοδύναμη κλάση, εξετάζονται με τη σειρά οι μετρικές Syn-On-Sem (o x ~ t r x ) και Syn-On-Syn (name(o x ) ~ t r x ). Κάθε μετρική κειμένου επιστρέφει μία δυαδική τιμή που συμβολίζει την ταύτιση ή μη ταύτιση, αναλόγως αν ξεπερνά το κατώφλι που έχει οριστεί σε κάθε αλγόριθμο ομοιότητας κειμένου (1.0 για τον Monge-Elkan και 0.7 για τον Jaro, όπως εξηγήθηκε προηγουμένως). Ειδάλλως, αν η τιμή ομοιότητας κειμένου είναι χαμηλότερη του κατωφλίου, εξετάζονται οι υπόλοιπες περιπτώσεις της λογικής μεθόδου, Desired και LessDesired, που βαθμολογούνται χαμηλότερα, με 0.75 και 0.25 αντίστοιχα. Επομένως, ένα σημασιολογικό ισοδύναμο Exact και ένα συντακτικό ταίριασμα θεωρούνται ισοδύναμα με βαθμολογία ίση με 1. Αυτή η επιλογή έγινε, διότι διαισθητικά ένα συντακτικό ταίριασμα σημαίνει ότι το προσφερόμενο στοιχείο είναι ακριβώς το ζητούμενο και όχι κάποιο υποδεέστερο (όπως μία κλάση παιδί, αδερφός ή πατέρας). Σε πειράματα που έγιναν εσωτερικά αυτή η υπόθεση επιβεβαιώθηκε δίνοντας κατώτερες βαθμολογίες στα συντακτικά ταιριάσματα μεταξύ 0 και 1. Η μεγαλύτερη απόδοση επιτυγχάνεται με τη βαθμολογία 1 σε όλες τις μετρικές αξιολόγησης. Λόγω περιορισμού χώρου, τα εσωτερικά πειράματα δεν παρουσιάζονται, αλλά μόνο οι τελικές, προτεινόμενες μέθοδοι, όπου η συντακτική ομοιότητα, αν και φτωχή από μόνη της, καταφέρνει να βελτιώσει τη λογική στα πλαίσια της υβριδικής μεθόδου. Μπορεί να θεωρηθεί πως ο προτεινόμενος αλγόριθμος δίνει περισσότερες ευκαιρίες στη συντακτική ομοιότητα να αντισταθμίσει τις περιπτώσεις όπου η Λογική δεν μπόρεσε να ταυτοποιήσει ως ορθές. Αυτός ο ισχυρισμός επιβεβαιώνεται στην πειραματική αξιολόγηση, αφού ο αλγόριθμος Tomaco δίνει καλύτερα αποτελέσματα από οποιαδήποτε υβριδική μέθοδο. Εναλλακτικά, θα μπορούσε να εφαρμοστεί μάθηση για να επιλέγεται δυναμικά η κατάλληλη μέθοδος ανά περίπτωση ή για τον αριθμητικό συνδυασμό τους, όπως σε άλλες υ- πάρχουσες δουλειές που παρουσιάστηκαν στην ενότητα Ωστόσο, στα πλαίσια της διατριβής, ακολουθήθηκε μία διαφορετική θεώρηση που δε συνδυάζει όλες τις μεθόδους κάθε φορά Εφαρμογή Ταυτοποίησης και Σύνθεσης Tomaco Η διαδικτυακή εφαρμογή Tomaco 64 ενσωματώνει όλους τους προαναφερθέντες αλγορίθμους ταυτοποίησης υπηρεσιών, αλλά και έναν αλγόριθμο σύνθεσης υπηρεσιών σε γραφικό περιβάλλον χρήστη. Σκοπός της είναι 1) να παρέχει Υπηρεσίες Ιστού σε προγραμματιστές, ερευνητές και καταναλωτές Υπηρεσιών Ιστού με ένα εύχρηστο εργαλείο για ταυτοποίηση και σύνθεση με γραφικό και φιλικό τρόπο και 2) να προάγει τη χρήση των Σημασιολογικών Υπηρεσιών Ιστού, ειδικά των τεχνολογιών SAWSDL/WSDL, αντιμετωπίζοντας την έλλειψη εργαλείων για αυτές τις τεχνολογίες, όπως αναγνωρίζεται στην έρευνα (Della Valle et al., 2011) Διαδικτυακή εφαρμογή Tomaco:

205 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Η αρχιτεκτονική της εφαρμογής φαίνεται στην Εικόνα Οι χρήστες έχουν πρόσβαση στο γραφική περιβάλλον (GUI) μέσω του οποίου μπορούν να εισέλθουν (login), να εγγραφούν (register) και να προσθέσουν αρχεία στα αποθετήρια Οντολογιών και Υπηρεσιών (Ontology and Service Repositories). Επιπλέον, μπορούν να σχηματίζουν σημασιολογικά ερωτήματα τα οποία απαντώνται από τη Μηχανή Ταυτοποίησης (Matching Engine), η οποία χρησιμοποιεί μία μηχανή συλλογιστικής (Reasoner) και μία βιβλιοθήκη ομοιότητας κειμένου (text-similarity), ανάλογα με την επιλεγμένη μέθοδο. Όσον αφορά στη λειτουργικότητα, μία πτυχή της εφαρμογής είναι το Αποθετήριο Υ- πηρεσιών. Οι Υπηρεσίες οργανώνονται σε συλλογές (collections) ανάλογα με την προέλευση ή το είδος τους. Ενδεικτικά, οι υπηρεσίες του Smart IHU και το σύνολο SAWSDL-TC3 αποτελούν δύο παραδείγματα συλλογών. Κάθε χρήστης μπορεί να δημιουργεί συλλογές και να α- νεβάζει υπηρεσίες και οντολογίες ή να συνδέει υπάρχουσες στον Ιστό και έτσι να τρέχει τα δικά του πειράματα. Κάθε συλλογή έχει μεταδεδομένα, δηλαδή τον χρήστη που την ανέβασε, την ημερομηνία προσθήκης και μια περιγραφή της. Όλες οι υπηρεσίες και οντολογίες έχουν επίσης περιγραφές, μπορούν να αναζητηθούν και να προβληθούν σε δενδρική δομή. Σκοπός των συλλογών είναι η χρήση τους ως μέτωπο αναζήτησης για αλγορίθμους ταυτοποίησης ή σύνθεσης. Το επόμενο τμήμα της εφαρμογής επιτρέπει την εκτέλεση αλγορίθμων ταυτοποίησης και σύνθεσης. Για την ταυτοποίηση, ο χρήστης επιλέγει οποιονδήποτε από τους αλγορίθμους που προτάθηκαν παραπάνω, με παραμέτρους όπως το βάρος εισόδου και εξόδου και το κατώφλι βαθμολογίας. Κατά την ταυτοποίηση επιλέγονται τα ζητούμενα R i ή/και R o με χρήση Εικόνα Η αρχιτεκτονική της διαδικτυακής εφαρμογής Tomaco 205

206 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη οντολογιών και το μέτωπο αναζήτησης (συλλογή), όπως φαίνεται στην Εικόνα Τα αποτελέσματα προβάλλονται σε πίνακα, ενώ μπορεί να ανακτηθεί και ο λόγος της βαθμολογίας (κριτήρια που ταυτοποιήθηκαν). Για τη σύνθεση, επιλέγεται ομοίως ένα μέτωπο αναζήτησης, R i και R o, ενώ ο αλγόριθμος Σχεδιασμού Ενεργειών που χρησιμοποιείται είναι ο Blackbox STRIPS. Τα αποτελέσματα, εάν υπάρχουν, επιστρέφονται σε έναν νέο πίνακα, όπου εμφανίζεται για κάθε απλή υπηρεσία της σύνθετης, η σειρά κλήσης της, το όνομα αρχείου της, το όνομα του operation, οι είσοδοι και οι έξοδοι. Για παράδειγμα, στην Εικόνα 5.23, έχει επιλεχθεί η κλάση Title ως είσοδος και η κλάση Review ως έξοδος, από την οντολογία books.owl. Η προτεινόμενη σύνθεση περιλαμβάνει το operation get_price_book της υπηρεσίας title_pricebook_service.wsdl (με την επιθυμητή είσοδο Title) και το get_review_price της υπηρεσίας book_reviewprice_service.wsdl (με είσοδο την έξοδο του προηγούμενου, Book, και την επιθυμητή έ- ξοδο, Review). Όσον αφορά στην υλοποίηση, η εφαρμογή φιλοξενείται σε Apache Tomcat και χρησιμοποιήθηκε HTML, CSS, JavaScript και jquery για το γραφικό περιβάλλον, JSP για την ανάκτηση τοπικών αρχείων και AJAX για την κλήση των servlets ως backend. Το backend ανακτά δεδομένα από τη MySQL βάση, χειρίζεται αρχεία του server και καλεί τη Μηχανή Ταυτοποίησης. Η Μηχανή Ταυτοποίησης και πάλι χρησιμοποιεί OWL-API για τον χειρισμό των οντολογιών, Hermit ως μηχανή συλλογιστικής και Simmetrics για ομοιότητα κειμένου. Για βελτιστοποίηση των επιδόσεων, τα αρχεία WSDL διαβάζονται με DFS (με easywsdl) και αποθηκεύονται δεικτοδοτημένα κατά το ανέβασμα (στη βάση και όχι στη μνήμη όπως στα πειράματα), όπως επίσης και οι επισημάνσεις τους, για τις οποίες αρχικοποιούνται οι reasoners στη Εικόνα Ταυτοποίηση Υπηρεσιών Ιστού στο γραφικό περιβάλλον του Tomaco 206

207 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα 5.23: Σύνθεση Υπηρεσιών Ιστού στο Tomaco μνήμη. Οι επιδόσεις είναι βέλτιστες και αποδεκτές για μια Web εφαρμογή, με χρόνο απόκρισης της τάξεως των δευτερολέπτων. Για τη σύνθεση χρησιμοποιήθηκε η βιβλιοθήκη Planning4J Πειραματική Αξιολόγηση Για την πειραματική αξιολόγηση του αλγορίθμου επιλέχθηκε το πιο διαδεδομένο σύνολο δεδομένων σε SAWSDL, το SAWSDL-TC3 (Klusch and Kapahnke, 2008). Επιπλέον, για το σύνολο αυτό, διατίθεται μία πλατφόρμα αξιολόγησης, η SME2 66, η οποία χρησιμοποιείται στον διαγωνισμό S3. Παρότι ο αλγόριθμος Tomaco δε σχεδιάστηκε με γνώμονα το συγκεκριμένο σύνολο, η πλατφόρμα αυτή προσφέρεται για την αντικειμενική αξιολόγησή του, με ίδιες υλοποιήσεις μετρικών για όλους τους υπάρχοντες αλγορίθμους. Επομένως, αναπτύχθηκε το Tomaco plugin για το SME2, το οποίο χρησιμοποιήθηκε σε όλα τα πειράματα που παρουσιάζονται εδώ και βρίσκεται διαθέσιμο online 67. Το plugin περιέχει όλες τις στρατηγικές που προτάθηκαν παραπάνω, καθώς και μία επιπλέον στρατηγική που ονομάστηκε Tomaco-S3 και α- ντιμετωπίζει ιδιαίτερα χαρακτηριστικά του διαγωνισμού και του συνόλου δεδομένων. Συγκεκριμένα, η Tomaco-S3 εξετάζει την ομοιότητα κειμένου των ονομάτων των ερωτημάτων, δίνοντας τη μέγιστη βαθμολογία σε περίπτωση ταύτισης και στη συνέχεια εκτελεί την υβριδική στρατηγική. Αυτή η μέθοδος παρέχει τη μεγαλύτερη βελτίωση σε αυτά τα δεδομένα, αλλά φυσικά δε διατίθεται στη διαδικτυακή εφαρμογή όπου δεν ορίζονται ονόματα ερωτημάτων, Εργαλείο SME2: 67 Tomaco plugin και διορθωμένο σύνολο TC3: 207

208 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη καθώς αυτά δημιουργούνται από τους χρήστες. Το plugin έχει αποσταλεί στον διαγωνισμό S3 για την επόμενη διεξαγωγή του. Ακόμα, έγινε μία συντακτική διόρθωση στο ίδιο το σύνολο TC3, ώστε να επιτρέπεται η φόρτωσή των οντολογιών του από δημοφιλή εργαλεία που χρησιμοποιούνται στο Tomaco. Οι αλλαγές φυσικά δεν επεμβαίνουν στο περιεχόμενο του συνόλου, αλλά μόνο σε συντακτικά λάθη. Τρεις οντολογίες (από τις τριάντα οκτώ) εισάγουν η μία την άλλη προκαλώντας προβλήματα σε βιβλιοθήκες όπως το OWL-API. Σημειώνεται ότι ελάχιστοι από τους υπάρχοντες αλγορίθμους βρίσκονται διαθέσιμοι για να αναπαραχθούν με το διορθωμένο σύνολο, ούτε γνωρίζουμε αν τα δικά τους εργαλεία επηρεάζονται από τη διόρθωση. Δεδομένης της πολύ μικρής έκτασης της διόρθωσης, θεωρούμε ότι οι συγκρίσεις είναι έγκυρες, τουλάχιστον μέχρι την επόμενη διεξαγωγή του διαγωνισμού σε κοινό περιβάλλον. Για την προσαρμογή του Tomaco στον διαγωνισμό, το κατώφλι βαθμολογίας τέθηκε στο μηδέν για να ανακτηθούν όλα τα αποτελέσματα. Το βάρος εισόδου-εξόδου τέθηκε στο 0.5, αφού στο σύνολο δηλώνεται ότι είσοδος και έξοδος έχουν την ίδια αξία. Τα κατώφλια για τη συντακτική ομοιότητα χρησιμοποιούνται και τα δύο με τιμές 1 για τον Monge-Elkan και 0.7 για τον Jaro. Το σύνολο TC3 είναι αρκετά συμβατό με τις διαδικασίες του Tomaco. Περιέχει 1080 έγγραφα SAWSDL, από εννέα πεδία: εκπαίδευση, ιατρική περίθαλψη, φαγητό, ταξίδια, επικοινωνίες, οικονομία, όπλα, γεωγραφία και προσομοίωση. Κάθε υπηρεσία έχει ένα μοναδικό interface με ένα μοναδικό operation, κάτι που ταιριάζει με την αναζήτηση με βάση τα operations που γίνεται στο Tomaco. Οι επισημάνσεις ModelReference σε OWL2-DL οντολογίες έχουν γίνει σε wsdl:parts και σε κατώτερα στοιχεία. Το σύνολο περιέχει 42 ερωτήματα για τον διαγωνισμό, σε μορφή SAWSDL, και τα αντίστοιχα σχετικά σύνολα σε XML μορφή. 38 οντολογίες χρησιμοποιούνται τόσο στα ερωτήματα, όσο και στις υπηρεσίες. Προτού παρουσιαστούν τα πειράματα σε όλο το σύνολο, εξετάζονται δύο μελέτες περιπτώσεων, ώστε να γίνει πιο κατανοητή η απόδοση του Tomaco. αλλά και οι ιδιότητες του συνόλου δεδομένων. Η πρώτη μελέτη συγκρίνει ιδιότητες κειμένου στο σύνολο σε σχέση με τις μεθόδους SynOnSyn και SynOnSem (Monge-Elkan). Αντίθετα με το σενάριο ανοιχτού κόσμου, οι δύο μέθοδοι είναι σχεδόν ισοδύναμες σε μεγάλο μέρος του TC3, αφού οι περισσότερες επισημάνσεις έχουν ακριβώς τα ίδια ονόματα με τα στοιχεία στα οποία έχουν γίνει. Αυτό είναι ιδιαίτερα εμφανές στο ερώτημα #26, όπου οι δύο μέθοδοι έχουν την ίδια ακρίβεια, ίση με Όμως, και οι δύο είναι απαραίτητες στη γενική περίπτωση, ώστε να συμπληρώσουν η μία την άλλη. Για παράδειγμα, στα ερωτήματα #40 και #11, τα ονόματα δεν έχουν κανένα νόημα, αχρηστεύοντας τη μέθοδο SynOnSyn (ακρίβεια και αντίστοιχα), ενώ η SynOnSem παραμένει αποτελεσματική (ακρίβεια και αντίστοιχα). Η δεύτερη μελέτη εξετάζει τα πλεονεκτήματα των επιλεγμένων μετρικών ομοιότητας κειμένου. Συγκεκριμένα, η ομοιότητα κειμένου στην υβριδική μέθοδο αυξάνει σημαντικά την ακρίβεια σε σχέση με την απλή λογική μέθοδο σε περιπτώσεις όπως στα ερωτήματα #6 (ακρίβεια από 0.504) και #9 (ακρίβεια από 0.681). Για παράδειγμα, στο ερώτημα #6, το επιθυμητό στοιχείο είναι το mid-level-ontology.owl#preparefood, ενώ το SUMO.owl#Food είναι σχετικό. Παρότι οι δύο οντολογίες δε συνδέονται, η ομοιότητα κειμένου βρίσκει το συγκεκριμένο επιθυμητό αποτέλεσμα ακόμα και χωρίς σημασιολογία. 208

209 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Εικόνα Macro-averaging precision των μεθόδων του Tomaco Εικόνα Μετρική F1 για τις μεθόδους του Tomaco Η συνολική αξιολόγηση αρχικά εξετάζει όλες τις παραλλαγές του προτεινόμενου αλγορίθμου Tomaco. Τόσο η μετρική macro-averaging precision σε είκοσι επίπεδα ανάκλησης (Εικόνα 5.24), όσο και η μετρική F1 σε είκοσι επίπεδα lambda (Εικόνα 5.25) δείχνουν την υ- περοχή των μεθόδων S3 και Hybrid. Η πρώτη είναι συνολικά καλύτερη, ιδιαίτερα στα πρώτα επίπεδα, ενώ η δεύτερη υπερέχει στα μεσαία επίπεδα. Ο Πίνακας 5.7 δείχνει την ίδια κατάταξη για μέση ακρίβεια (AP), ενώ οι μετρικές ndcg και Q ανεβάζουν τη λογική μέθοδο στη 209

210 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Macro-averaging precision των Tomaco Hybrid, S3 και αλγορίθμων του S δεύτερη θέση, μεταξύ S3 και Hybrid. Όλες οι μετρικές δείχνουν πως παρότι οι απλές μέθοδοι ομοιότητας κειμένου έχουν πολύ χειρότερη απόδοση από τη λογική, καταφέρνουν να τη βελτιώσουν όταν συνδυάζονται στα πλαίσια των υβριδικών μεθόδων. Επιπλέον, η S3 βελτιώνει τη Hybrid δείχνοντας πως πράγματι τα ονόματα των ερωτημάτων παίζουν σημαντικό ρόλο στο παρόν σύνολο. Εσωτερικά, πειραματιστήκαμε και με την επίδραση της συλλογιστικής για την εύρεση ισοδύναμων κλάσεων και βαθμολόγηση ως Exact, κάτι που πράγματι βελτίωσε τη λογική και Hybrid μέθοδο (κατά 2% και 1% AP αντίστοιχα). Τα πειράματα επίσης καταδεικνύουν τη σημαντικότητα επιλογής μετρικών ομοιότητας κειμένου, με καταλληλότερο τον Monge-Elkan. Περισσότεροι αλγόριθμοι δοκιμάστηκαν εσωτερικά και έδωσαν πολύ χαμηλότερη AP (π.χ. ο Levenshtein δίνει 53% λιγότερη AP για Syn-On-Syn). Όσον αφορά τις επιδόσεις, η μετρική Jaro είναι πολύ γρηγορότερη από τη Monge- Elkan, με κόστος σε ακρίβεια. Παράλληλα, οι πιο ακριβείς μέθοδοι S3 και Hybrid καταφέρνουν να διατηρήσουν αποδεκτό μέσο χρόνο απόκρισης ανά ερώτημα (AQRT) και συνολικό χρόνο περίπου μισό λεπτό. Επιπλέον πειράματα έγιναν για να αποδομήσουν τον χρόνο, εκτός πλατφόρμας SME2 (η οποία αλλάζει ελαφρώς τους χρόνους). Ο Πίνακας 5.9 δείχνει την κατανομή του χρόνου σε συλλογιστική (αν υπάρχει), εξαγωγή στοιχείων με DFS, βαθμολόγηση για τα 42 ερωτήματα και μέσο χρόνο απόκρισης ανά ερώτημα. Ο συνολικός χρόνος για τη Syn-On-Sem είναι σημαντικά υψηλότερος από τη Syn-On-Syn λόγω της εξαγωγής ονομάτων από τα URIs. Όλα τα πειράματα εκτελέστηκαν σε έναν Intel 8.00GB RAM. Ο Πίνακας 5.8 παρουσιάζει τις δύο αποτελεσματικότερες μεθόδους, S3 και Hybrid, σε σχέση με υπάρχοντες αλγορίθμους, όπως αυτοί παρουσιάστηκαν στον διαγωνισμό S3 του (Klusch, 2012), χρησιμοποιώντας την ίδια πλατφόρμα και το ίδιο σύνολο δεδομένων. Το Tomaco κατατάσσεται μετά τους isem, LOG4SWS, COV4SWS και Nuwa σε AP, αλλά πάνω από τους imatcher, URBE και SAWSDL-MX1. Στις μετρικές ndcg και Q-measure, μόνο οι 210

211 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού Πίνακας 5.9. Χρονική κατανομή των διαδικασιών στις μεθόδους Tomaco Logicbased Syn-On- Syn Syn-On- Sem Hybrid Total time s s s s Init. Reasoners s 0.000s 0.000s s DFS extraction s s s s All queries 8.440s 2.652s 9.002s s Per query avg s 0.063s 0.214s 0.486s Πίνακας 5.7. Μετρικές και επιδόσεις των μεθόδων Tomaco στο SME2 Syn-On- Syn-On- Logicbased Syn Sem (Jaro) S3 Syn-On- Syn-On- Hybrid Tomaco- Syn Sem Hybrid (Jaro) (Jaro) AP ndcg Q AQRT (s) Total (m) Πίνακας 5.8. Μετρικές και επιδόσεις των Tomaco S3, Hybdrid και αλγορίθμων του S Tomaco- Tomaco isem SAWSDL- LOG4SWS COV4SWS Nuwa imatcher URBE S3 Hybrid 1.1 MX1 AP ndcg Q AQRT (s) LOG4SWS, COV4SWS και Nuwa ξεπερνούν το Tomaco-S3. Ωστόσο, οι μέθοδοι του Tomaco έχουν πολύ καλύτερη απόδοση στη μετρική macro-averaging precision, όπως φαίνεται στην Εικόνα Η μέθοδος Tomaco S3 κατατάσσεται πάνω από τους άλλους αλγορίθμους, ειδικά μέχρι 0.7 της ανάκλησης. Επομένως, συμπεραίνουμε ότι ο αλγόριθμος είναι ιδιαίτερα αποτελεσματικός, ειδικά όταν ζητούνται top-k σχετικά αποτελέσματα και όχι όλα από αυτά (σημειώνεται ότι μετρικές top-k όπως AP δεν είναι διαθέσιμες στην πλατφόρμα SME2, ούτε στη βιβλιογραφία για τους υπάρχοντες αλγορίθμους). Επιπρόσθετα, οι δημοσιευμένοι μέσοι χρόνοι απόκρισης ανά ερώτημα κατατάσσουν το Tomaco μόλις μετά τους LOG4SWS και COV4SWS, δείχνοντας πως το Tomaco συνδυάζει απόδοση και χαμηλό χρόνο απόκρισης. Σημειώνεται ότι οι αλγόριθμοι δεν αξιολογήθηκαν τοπικά και δε γνωρίζουμε τους διαθέσιμους πόρους στον διαγωνισμό του Επομένως, οι επιδόσεις δε συγκρίνονται αυστηρά, αλλά παρατίθενται μόνο χάριν πληρότητας. Φυσικά, οι χρόνοι των αλγορίθμων μάθησης χρειάζονται εμφανώς περισσότερο χρόνο, με εξαίρεση τους πρώτους και τον imatcher. Επίσης, εικάζεται ότι οι αλγόριθμοι μάθησης χρειάζονται σημαντικό χρόνο για να εκπαιδευτούν (οι συνολικοί χρόνοι του διαγωνισμού δε διατίθενται). 211

212 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Συνολικά, το Tomaco δεν κατατάσσεται πρώτο στις περισσότερες μετρικές, αλλά είναι το καλύτερο όσον αφορά macro-averaging precision. Είναι, επίσης, εμφανές ότι έχει εξαιρετική απόδοση στο μεγαλύτερο μέρος των επιπέδων ανάκλησης. Άρα, μπορεί να είναι χρήσιμο για περιπτώσεις ανάκτησης των περισσότερων, αλλά όχι όλων των σχετικών εγγράφων, διατηρώντας ικανοποιητικό χρόνο απόκρισης. Ενώ η αξιολόγηση εξετάζει τις καλύτερες υβριδικές μεθόδους, κάποιες απλές μέθοδοι επίσης εμφανίζουν βελτίωση σε σχέση με αντίστοιχές υπάρχουσες, όπως για παράδειγμα η λογική μέθοδος του Tomaco υπερισχύει της αντίστοιχης του SAWSDL-MX0. Τέτοιες λεπτομερείς συγκρίσεις μπορούν να γίνουν εξετάζοντας τη βιβλιογραφία (Klusch and Kapahnke, 2008). 5.5 Συμπεράσματα Στο κεφάλαιο αυτό παρουσιάστηκαν οι συμβολές της διατριβής στο σημασιολογικό επίπεδο ενός συστήματος Διάχυτης Νοημοσύνης. Συγκεκριμένα, η οντολογία BOnSAI για έξυπνα κτίρια, το εργαλείο σημασιολογικής επισήμανσης υπηρεσιών Iridescent και ο αλγόριθμος σημασιολογικής ταυτοποίησης υπηρεσιών Tomaco. Οι τεχνολογίες του Σημασιολογικού Ιστού έχουν εξελιχθεί αρκετά, ώστε να εμπλουτίσουν τον υπάρχον Ιστό. Τα δεδομένα μπορούν να επισημανθούν και να ερμηνευτούν από μηχανές στα πλαίσια της σημασιολογικής αναζήτησης. Ωστόσο, οι χρήστες ενδιαφέρονται πλέον για την εκτέλεση ενεργειών και όχι μόνο για την αναζήτηση δεδομένων. Η εμφάνιση των Υπηρεσιών Ιστού έχουν ήδη προτυποποιηθεί, εμφανίζοντας την ανάγκη για Σημασιολογικές Υπηρεσίες Ιστού. Έτσι, αναπτύχθηκαν οι πρότυπες ανώτερες οντολογίες όπως η OWL-S αλλά και τα ελαφριά μοντέλα όπως το SAWSDL. Η Διάχυτη Νοημοσύνη, μία ακόμη ανερχόμενη εξέλιξη των υπολογιστικών συστημάτων είναι άμεσα συσχετισμένη με τις υπηρεσίες και επωφελείται από τα σημασιολογικά πρότυπα. Στα πλαίσια της διατριβής, αναπτύχθηκε η οντολογία BOnSAI για έξυπνα κτίρια και Διάχυτη Νοημοσύνη. Η οντολογία περιέχει έννοιες που περιγράφουν τις υπηρεσίες, τη λειτουργικότητα του συστήματος, το υπάρχον υλικό και τη γνώση για τα συμφραζόμενα. Εισάγει και επεκτείνει υπάρχουσες δουλειές, όπως η OWL-S για την περιγραφή υπηρεσιών μέσω αυτής και η οντολογία CoDAMoS. H BOnSAI επεκτάθηκε,επιπλέον, για να περιγράψει έννοιες του συστήματος Smart IHU, αποδεικνύοντας την καταλληλότητά της για τέτοια συστήματα. Στη συνέχεια, αναπτύχθηκε το εργαλείο Iridescent, για τη σημασιολογική επισήμανση Υπηρεσιών Ιστού σύμφωνα με το πρότυπο SAWSDL. Τα μέχρι τώρα εργαλεία για αυτό τον σκοπό παρουσιάζουν σημαντικές ελλείψεις όσον αφορά τη λειτουργικότητα και την ευχρηστία. Το Iridescent σχεδιάστηκε για να καλύψει σημαντικές απαιτήσεις όπως διαθεσιμότητα, ευχρηστία και λειτουργικότητα τόσο για ειδήμονες, όσο και για απλούς χρήστες. Επιπλέον, προτείνει έναν καινοτόμο τρόπο ημι-αυτόματης και μαζικής επισήμανσης με χρήση τεχνικών ομοιότητας κειμένου, ώστε να παρέχονται στον χρήστη προτεινόμενες επισημάνσεις. Σκοπός του εργαλείου είναι να προάγει τη χρήση των πολλά υποσχόμενων τεχνολογιών των Σημασιολογικών Υπηρεσιών Ιστού και της πρακτικής εφαρμογής τους. Αν και το εργαλείο είναι γενικού σκοπού, εφαρμόστηκε στο σύστημα Smart IHU για την επισήμανση των υπηρε- 212

213 Κεφάλαιο 5 Σημασιολογική Επισήμανση και Ταυτοποίηση Υπηρεσιών Ιστού σιών awesome (βλ. Κεφάλαιο 4) με έννοιες της οντολογίας BOnSAI. Το Iridescent αξιολογήθηκε από περίπου είκοσι χρήστες με θετικά αποτελέσματα. Οι χρήστες έδειξαν να κατανοούν καλύτερα και γρηγορότερα τα δεδομένα με την απεικόνιση του Iridescent, ενώ εκτέλεσαν γρήγορα και με επιτυχία τις διεργασίες που τους ανατέθηκαν. Στη συνέχεια, βαθμολόγησαν θετικά το εργαλείο, ενώ παρείχαν συστάσεις όπως την επέκταση του εργαλείου για συγγραφή μετασχηματισμών XSLT και SPARQL. Ενώ οι υπηρεσίες περιγράφονται πλέον σημασιολογικά, απαιτείται ένας κατάλληλος, αποτελεσματικός αλγόριθμος αναζήτησής τους με σημασιολογικά κριτήρια. Ο αλγόριθμος Tomaco που αναπτύχθηκε περιλαμβάνει τρεις θεμελιώδεις στρατηγικές για σημασιολογική ταυτοποίηση SAWSDL υπηρεσιών: η στρατηγική βασισμένη στη λογική, η στρατηγική ομοιότητας κειμένου ανάμεσα στα ονόματα Syn-On-Syn και η στρατηγική ομοιότητας κειμένου α- νάμεσα στις έννοιες Syn-On-Sem. Οι στρατηγικές αυτές εμφανίζουν καινοτόμα σημασιολογικά κριτήρια, αλλά και καταλληλότερα μέτρα ομοιότητας κειμένου σε σχέση με υπάρχοντες αλγορίθμους. Τέλος, συνδυάζονται με καινοτόμο τρόπο σε μία ευριστική υβριδική στρατηγική. Όλες οι στρατηγικές ενσωματώνονται σε μία διαδικτυακή πλατφόρμα, μαζί με ένα αποθετήριο υπηρεσιών και οντολογιών και έναν αλγόριθμο σύνθεσης υπηρεσιών. Σκοπός της διαδικτυακής πλατφόρμας Tomaco είναι η ανοιχτή και εύχρηστη ταυτοποίηση και σύνθεση υπηρεσιών οποιουδήποτε πεδίου, συμπεριλαμβανομένου του έξυπνου κτιρίου Smart IHU. Ο αλγόριθμος αξιολογήθηκε στην ανοιχτή πλατφόρμα SME2 του διαγωνισμού S3 με το δημοφιλές σύνολο δεδομένων SAWSDL-TC3 και διατίθεται online. Κατά την αξιολόγηση, η υβριδική μέθοδος κατατάσσεται υψηλά σε όλες τις μετρικές, αλλά έρχεται κυρίως πρώτη σε macro-averaging precision, διατηρώντας χαμηλό χρόνο απόκρισης. Ειδικότερα, η πολύ υ- ψηλή απόδοση στο 70% της ανάκλησης φανερώνει ότι μπορεί να προτιμηθεί σε περιπτώσεις όπου ο χρήστης αποζητά σχετικά έγγραφα στα πρώτα αποτελέσματα χωρίς να απαιτεί την ανάκτηση όλων των εγγράφων. 213

214

215 Κεφάλαιο 6 Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο

216

217 6 Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Στο κεφάλαιο αυτό παρουσιάζονται οι εφαρμογές υψηλότερου επιπέδου, όπως λογισμικό παρακολούθησης και ευφυείς αυτόνομοι πράκτορες, που λειτουργούν σε ένα σύστημα Έξυπνου Κτιρίου Διάχυτης Νοημοσύνης. Το επίπεδο εφαρμογών του συστήματος βασίζεται στο προτυποποιημένο ενδιάμεσο λογισμικό υπηρεσιών ιστού awesome, όπως αυτό παρουσιάστηκε στο Κεφάλαιο 4, το οποίο προσφέρει ομοιόμορφη πρόσβαση στις συσκευές. Επιπρόσθετα, η σημασιολογική επισήμανση των υπηρεσιών, όπως αυτή παρουσιάστηκε στο Κεφάλαιο 5, προσδίδει σημασιολογική διαλειτουργικότητα στις εφαρμογές και τους πράκτορες που χρησιμοποιούν το awesome. Οι εφαρμογές που πλαισιώνουν την παραπάνω υποδομή χωρίζονται σε δύο κατηγορίες. Συγκεκριμένα, το σύστημα ενσωματώνει πληθώρα εφαρμογών για την αλληλεπίδραση με τον χρήστη, την παρακολούθηση και διαχείριση του συστήματος, αλλά και ευφυείς πράκτορες βασισμένους σε κανόνες, οι οποίοι πετυχαίνουν αυτόνομα την εξοικονόμηση ενέργειας. Αρχικά, οι εφαρμογές παρακολούθησης δίνουν τη δυνατότητα οπτικοποίησης με τη μορφή γραφημάτων των δεδομένων ενέργειας και περιβαλλοντικών συνθηκών. Η εκτενής αυτή παρακολούθηση επιτρέπει στους χρήστες να προβούν σε άμεσες ενέργειες ή να σχεδιάσουν μακροχρόνια πολιτικές εξοικονόμησης ενέργειας. Αυτές οι πολιτικές εφαρμόζονται στη συνέχεια με αυτόνομο τρόπο, από ευφυείς πράκτορες βασισμένους στη λογική. Στα πλαίσια του συστήματος, σχεδιάστηκαν τρία είδη πρακτόρων ανάλογα με την αμεσότητα των ε- νεργειών που εφαρμόζουν ή αλλιώς το είδος λογικής που υπακούν. Τα πειραματικά αποτελέσματα του κεφαλαίου αφορούν δύο διαφορετικές εφαρμογές πρακτόρων στο σύστημα Smart IHU. Συγκεκριμένα, ο συνδυασμός παραγωγικής και α- ναιρέσιμης λογικής εφαρμόστηκε πιλοτικά σε όλο το κτίριο πετυχαίνοντας 4% εξοικονόμηση (Stavropoulos et al., 2014a). Το δεύτερο πείραμα έγινε με πιο στοχευμένο και μεθοδικό τρόπο, με αποτέλεσμα ο υβριδικός πράκτορας αναιρέσιμης λογικής να πετύχει 16% ημερήσια εξοικονόμηση στο περιβάλλον ενός γραφείου, που αν επεκταθεί στο κτίριο αγγίζει το 6% (Stavropoulos et al., 2015b). Η πρώτη ενότητα αποτελεί μία εισαγωγή στις έννοιες των ευφυών συστημάτων με κανόνες και πράκτορες στη Διάχυτη Νοημοσύνη. Η δεύτερη ενότητα παρουσιάζει τις διαδικτυακές, desktop και mobile εφαρμογές παρακολούθησης και διαχείρισης. Η τρίτη ενότητα παρουσιάζει τους ευφυείς πράκτορες που διακρίνονται σε αντιδραστικούς, συλλογιστικούς και υβριδικούς. Η τέταρτη ενότητα εξετάζει τα αποτελέσματα από δύο πιλοτικές εφαρμογές των πρακτόρων. Τέλος, η πέμπτη ενότητα αναφέρεται στα συμπεράσματα από τις παραπάνω εφαρμογές.

218 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη 6.1 Εισαγωγή Το Έξυπνο Πλέγμα (Smart Grid) είναι το δίκτυο ηλεκτροδότησης νέας γενιάς, με δυναμική τιμολόγηση, διαχείριση ενέργειας και κατανομή πόρων. Το πεδίο έρευνάς του είναι στενά συνυφασμένο με τον τομέα της Πληροφορικής και των Τηλεπικοινωνιών. Στην ουσία, ένα επίπεδο τεχνολογιών πληροφορικής χτίζεται πάνω από την υπάρχουσα υποδομή παροχής ενέργειας. Εφόσον ο κύριος καταναλωτής ενέργειας είναι στην παρούσα φάση τα κτίρια, είναι σημαντικό αυτά να μετατραπούν και να ενσωματωθούν ως έξυπνες οντότητες, ικανές να διαχειριστούν τέτοιες υπηρεσίες. Ταυτόχρονα, η Διάχυτη Νοημοσύνη ασχολείται με τους Έ- ξυπνους Χώρους εσωτερικά των κτιρίων. Οι τεχνικές αυτές μπορούν να αναχθούν σε επίπεδο κτιρίου και με γνώμονα την ενέργεια να συνδέσουν τα δύο πεδία έρευνας. Μέχρι στιγμής, λίγες εφαρμογές Διάχυτης Νοημοσύνης στοχεύουν στην εξοικονόμηση ενέργειας και μάλιστα σε κλίμακα Έξυπνου Κτιρίου. Υπάρχουσες εργασίες στο πεδίο της Διάχυτης Νοημοσύνης περικλείουν πολλά πεδία εφαρμογών όπως την υγεία, την υποβοηθούμενη διαβίωση (Ambient Assisted Living AAL), την αγρογεωργία, τα πολυμέσα και τα έξυπνα γραφεία. Οι περισσότερες από αυτές τις προσεγγίσεις επιστρατεύουν, επίσης, την τεχνολογία των Υπηρεσιών Ιστού και του Σημασιολογικού Ιστού, αλλά ακολουθούν τις πιο περίπλοκες από πάνω προς τα κάτω προσεγγίσεις για την περιγραφή των Σημασιολογικών Υπηρεσιών Ιστού, όπως η WSMO 68, η OWL-S 69 (Thomson et al., 2008) (Iacob et al., 2008) ή εσωτερικές, προσαρμοσμένες οντολογίες, όπως στις εργασίες (Issarny et al., 2007) (Paz-Lopez et al., 2013). Αντίθετα, οι εφαρμογές που παρουσιάζονται στη διατριβή χρησιμοποιούν την από κάτω προς τα πάνω, ελαφριά προσέγγιση SAWSDL 70, που συστήνεται από το W3C για την επισήμανση και χρήση των υπηρεσιών. Εκτός του ότι είναι πιο πρόσφατο, το πρότυπο SAWSDL επιτρέπει στο σύστημα να αλληλοεπιδράσει στενότερα με τις υλοποιήσεις των υπηρεσιών, δηλαδή τα bindings. Επίσης, χρησιμοποιώντας το SAWSDL, οι εφαρμογές μπορούν να μεταφερθούν θεωρητικά και σε άλλα περιβάλλοντα, επομένως δεν περιορίζονται μόνο στο σύστημα και το τοπικό περιβάλλον για το οποίο έχουν αρχικά κατασκευαστεί. Σε συνολικό επίπεδο συστήματος, οι υπάρχουσες προσεγγίσεις στοχεύουν σε διαφορετικά περιβάλλοντα και υλικό. Το σύστημα στην εργασία (Capone et al., 2009) ενοποιεί διάφορα πρωτόκολλα, όπως το X10, το UPnP και το Lonworks. Άλλα συστήματα (De Paola et al., 2012) εμπεριέχουν υπηρεσίες υψηλότερου επιπέδου, όπως συγκερασμό πληροφοριών (fusion) και εξατομίκευση (profiling) χρηστών. Οι υπηρεσίες νέφους (cloud) παίζουν, επίσης, σημαντικό ρόλο σε κάποια τέτοια συστήματα. Κάποιες εργασίες χρησιμοποιούν το cloud για τη διευκόλυνση της επικοινωνίας μεταξύ συσκευών (Yeh et al., 2011) ή για πρόσβαση σε α- πομακρυσμένους υπολογιστικούς πόρους (Yang, 2013). Αντίθετα, στο σύστημα που αναπτύχθηκε στα πλαίσια της διατριβής είναι ειδικά φτιαγμένο για να υποστηρίζει συσκευές που 68 WSMO W3C Submission: 69 OWL-S W3C Submission: 70 SAWSDL W3C Recommendation: 218

219 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο δεν προσφέρονται από άλλα. Επιπλέον, κάνει χρήση μόνο τοπικών υπολογιστικών πόρων και υλικού καθώς η εύρεση περισσότερων πόρων μέσω cloud δεν απαιτείται. Τέλος, οι προσφερόμενες λειτουργίες είναι σχετικά πιο θεμελιώδεις και δεν απαιτούν περαιτέρω ανάλυση (post-processing) σε επίπεδο ενδιάμεσου λογισμικού. Η σημασιολογική ερμηνεία των λειτουργιών αυτών γίνεται στο επίπεδο εφαρμογών, εντός των ευφυών πρακτόρων, όταν αυτό είναι απαραίτητο. Οι κανόνες παρουσιάζουν πολλά πλεονεκτήματα ως μέσο συλλογιστικών διεργασιών στη Διάχυτη Νοημοσύνη, όπως η ευελιξία, η αφαιρετικότητα, η εκφραστικότητα κ.α. (Bikakis and Antoniou, 2010a). Έτσι, έχουν ήδη εφαρμοστεί σε έξυπνα περιβάλλοντα με διαφορετικούς τρόπους. Η εργασία (Daniele et al., 2007) ορίζει μία μεταγλώσσα, ως επέκταση της γλώσσας JESS, προσφέροντας μία δομή για τη συγγραφή κανόνων σε εφαρμογές Διάχυτης Νοημοσύνης. Ωστόσο, αυτό το επιπλέον επίπεδο, ή αλλιώς το μοντέλο Event-Control-Action (ECA), όπως ονομάζεται, είναι πολύ λιγότερο ευέλικτο και επεκτάσιμο, ειδικά σε σχέση με την αναιρέσιμη λογική που χρησιμοποιείται εκτενώς στη διατριβή. Άλλες παρόμοιες προσεγγίσεις είναι το SESAME-S (Fensel et al., 2013), το οποίο υλοποιεί ένα ολοκληρωμένο σύστημα μέσα σε ένα κουτί, χρησιμοποιώντας οντολογίες, συλλογιστική και κανόνες JESS για εξοικονόμηση ενέργειας. Η εργασία (Wang et al., 2010), επίσης, χρησιμοποιεί πράκτορες, Υπηρεσίες Ιστού και οντολογίες για να αποθηκεύσει και να αναλύσει δεδομένα ενέργειας. Το μειονέκτημα των παραπάνω εργασιών είναι η έλλειψη μηχανισμού επίλυσης συγκρούσεων, α- φού αναγκαστικά εκτελούνται όλοι οι κανόνες με τη σειρά προκαλώντας προβλήματα κλιμάκωσης τους συστήματος. Από την άλλη, το σύστημα Smart IHU προσφέρει έναν ευέλικτο και ιδιαίτερα διαισθητικό μηχανισμό επίλυσης συγκρούσεων για την εκτέλεση κανόνων, ο οποίος βασίζεται στη μη-μονότονη, αναιρέσιμη λογική. Το σύστημα δεν αποθηκεύει τις περισσότερες πληροφορίες σε οντολογικές δομές, αλλά αντ αυτού βασίζεται στις σημασιολογικές επισημάνσεις σε SAWSDL, παρέχοντας δυνατότητα κλιμάκωσης, ευελιξία και επεκτασιμότητα σε περισσότερους πελάτες ταυτόχρονα. Ακόμη, επιστρατεύει αντιδραστική και συλλογιστική συμπεριφορά βασιζόμενη σε παραγωγική και αναιρέσιμη λογική. Σε αυτό το κεφάλαιο παρουσιάζονται τέτοιες εφαρμογές παρακολούθησης και διαχείρισης, που υλοποιούνται ως εφαρμογές πελάτη του ενδιάμεσου λογισμικού awesome, όπως αυτό παρουσιάστηκε στο κεφάλαιο 4. Το awesome αλληλοεπιδρά με το ανώτερο επίπεδο εφαρμογών (application layer) μέσω προτυποποιημένων και σαφώς ορισμένων Υπηρεσιών Ιστού, που έχουν περιγραφεί σε WSDL. Συμπληρωματικά με τις υπηρεσίες, ένα σύστημα διαφήμισης των υπηρεσιών δηλαδή ο Service Broker, αφενός δημοσιεύει και αφετέρου εντοπίζει τις υπηρεσίες στους κατανεμημένους servers για λογαριασμό του πελάτη. Επίσης, εγγυάται την ενημερότητα των διαθέσιμων υπηρεσιών, αφού νέες υπηρεσίες προστίθενται δυναμικά ενώ όσες δεν είναι πλέον έγκυρες αφαιρούνται. Η προτεινόμενη αρχιτεκτονική του συστήματος ειδικότερα για το επίπεδο εφαρμογών βασίζεται στη ροή πληροφοριών για διαφορετικά σενάρια χρήσης, που φαίνεται στην Εικόνα 6.1. Μία εφαρμογή πελάτης, για παράδειγμα ένας ευφυής πράκτορας (Intelligent 219

220 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Agent) ή μία mobile εφαρμογή (Android Application), πρώτα ανακτά τις κατάλληλες υπηρεσίες που την ενδιαφέρουν, όπως αυτές διαφημίζονται στον Μεσολαβητή Υπηρεσιών (Service Broker). Στη συνέχεια, καλεί τις επιθυμητές λειτουργίες απευθείας από τον αντίστοιχο Web Server, ο οποίος με τη σειρά του χειρίζεται τα ασύρματα δίκτυα αισθητήρων και οργάνων δράσης, για παράδειγμα μέσω του Οδηγού Έξυπνων Μπριζών (Smart Plug Driver), όπως παρουσιάστηκε στο Κεφάλαιο 4. Τα αιτήματα στον server ενθυλακώνονται σε SOAP και έπειτα μεταφράζονται σε ασύρματα πρωτόκολλα, όπως ZigBee και Z-Wave, ενώ στις αποκρίσεις α- κολουθούν την αντίστροφη πορεία. Το ολοκληρωμένο οικοσύστημα και η αρχιτεκτονική των εφαρμογών που πλαισιώνουν το ενδιάμεσο λογισμικό στο σύστημα Smart IHU φαίνεται στην Εικόνα 6.2. Ανάλογα με τον σκοπό χρήσης τους, οι διαφορετικές εφαρμογές που έχουν αναπτυχθεί μπορούν να κατηγοριοποιηθούν σε εφαρμογές παρακολούθησης, διαχείρισης, αυτοματισμού και ενσωμάτωσης με εξωτερικές εφαρμογές. Οι εφαρμογές παρακολούθησης παρέχουν εκτενείς πληροφορίες για την κατανάλωση του κτιρίου και την κατανομή της σε επιμέρους ηλεκτρικές συσκευές. Έτσι, οι ειδήμονες (μηχανικοί και ηλεκτρολόγοι) του κτιρίου μπορούν να σχεδιάσουν προσαρμοσμένες πολιτικές εξοικονόμησης ενέργειας, ώστε να μειωθεί η κατανάλωση αυτόνομα. Στο μεταξύ, οι εφαρμογές διαχείρισης επιτρέπουν την άμεση παρέμβαση από εξουσιο- Εικόνα 6.1. Ροή πληροφοριών στο επίπεδο εφαρμογών του συστήματος Smart IHU δια μέσου των κατωτέρων στρωμάτων 220

221 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα 6.2. Αρχιτεκτονική desktop, mobile, διαδικτυακών εφαρμογών και ευφυών πρακτόρων στο σύστημα Smart IHU δοτημένο προσωπικό σε εξαιρετικές ή επείγουσες περιπτώσεις. Η εφαρμογή παρακολούθησης του Data Center του κτιρίου μετρά και συσχετίζει την κατανάλωση με την αποδοτικότητά του. Κανόνες και αυτοματισμοί έχουν ενσωματωθεί σε ευφυείς πράκτορες, που εκτελούν τις πολιτικές εξοικονόμησης. Η επικοινωνία με εξωτερικούς παρόχους ενέργειας στα πλαίσια του Έξυπνου Πλέγματος προσφέρεται μέσω του πρωτοκόλλου OpenADR. Οι επόμενες ενότητες εξετάζουν καθεμία από αυτές τις εφαρμογές ξεχωριστά. 6.2 Εφαρμογές Παρακολούθησης και Διαχείρισης Παρότι στο Έξυπνο Κτίριο υπάρχουν ήδη αυτοματισμοί και ευφυείς πράκτορες που χειρίζονται τις υποδομές χωρίς ανθρώπινη παρέμβαση, οι εφαρμογές παρακολούθησης και διαχείρισης διατηρούν σημαντικό ρόλο. Ο σκοπός ύπαρξής τους είναι διπλός. Πρώτον, επιτρέπουν στους ανθρώπους, διαχειριστές τους συστήματος, να ελέγχουν χειροκίνητα τις συσκευές. Χάριν σε αυτές τις εφαρμογές, μπορούν να παρακολουθούν διάφορες πτυχές της κατάστασης του κτιρίου. Με βάση τις παρατηρήσεις τους, οι διαχειριστές βρίσκονται σε θέση να λάβουν αποφάσεις και να συνθέσουν νέες πολιτικές εξοικονόμησης και βελτιστοποίησης της χρήσης των συσκευών. Δεύτερον, οι εφαρμογές παρακολούθησης επιτρέπουν στους απλούς χρήστες, δηλαδή το προσωπικό, τους φοιτητές και τους επισκέπτες του Πανεπιστημίου, να παρατηρούν συνολικά την κατάσταση του κτιρίου. Οι τρεις εφαρμογές που παρουσιάζονται σε αυτή την ενότητα είναι η desktop εφαρμογή διαχείρισης idealism, η mobile εφαρμογή πιο περιορισμένης διαχείρισης και παρακολούθησης PlugDroid και η web εφαρμογή παρακολούθησης Smart IHU Portal. Η πρώτη εφαρμογή πελάτης, idealism, είναι μία desktop εφαρμογή με μία γραφική διεπαφή για όλες τις 221

222 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη υπηρεσίες και λειτουργίες του awesome. Η δεύτερη εφαρμογή, PlugDroid, προσφέρει πιο περιορισμένες δυνατότητες διαχείρισης για την πλατφόρμα smartphone Android, ενώ η τρίτη εφαρμογή, Smart IHU Portal, υποστηρίζει την προβολή στατιστικών και δεδομένων μέσω του διαδικτύου. Ο Πίνακας 6.1 συνοψίζει τα χαρακτηριστικά και τις διαφορετικές δυνατότητες ως προς τη λειτουργικότητα που υποστηρίζει η καθεμία από αυτές τις εφαρμογές. Τα χαρακτηριστικά αυτά είναι η πλατφόρμα ανάπτυξης και λειτουργίας, η δυνατότητα αποθήκευσης υ- πηρεσιών τοπικά σε κάθε πελάτη, η έκταση του καταλόγου διαθέσιμων υπηρεσιών, η δυνατότητα προβολής συσκευών ανά είδος ή δωμάτιο, δημιουργίας ομάδων συσκευών, χειροκίνητης εκτέλεσης υπηρεσιών (διαχειριστική δυνατότητα), προβολής γραφημάτων ιστορικών δεδομένων, διαχείρισης τοπικών συσκευών (στον πελάτη και όχι στον server) και σάρωσης QRCodes για την ταυτοποίηση συσκευών. Επίσης, αναφέρονται οι υπηρεσίες που υποστηρίζει κάθε εφαρμογή. Σε επίπεδο συστήματος, οι διαδικασίες της παρακολούθησης μέσα από τη συνδυαστική χρήση των idealism, PlugDroid και Smart IHU Portal, ανάλογα με τον σκοπό και την περίσταση, προσφέρουν εκτενείς πληροφορίες για την ενεργειακή κατανάλωση και τις περιβαλλοντικές συνθήκες του κτιρίου και των χώρων του. Με βάση αυτή τη γνώση, επιτρέπεται στους ειδήμονες χρήστες να κατασκευάσουν προσαρμοσμένες και επομένως πιο αποτελεσματικές πολιτικές εξοικονόμησης ενέργειας. Οι εφαρμογές, επίσης, τους επιτρέπουν να ε- κτιμήσουν ποσοτικά την αποτελεσματικότητα αυτών των μέτρων εξοικονόμησης που βρίσκονται σε λειτουργία, είτε με τη μορφή ανθρώπινων, χειροκίνητων παρεμβάσεων, είτε μέσω των αυτόνομων πρακτόρων που παρουσιάζονται στην ενότητα 6.3. Αποτελέσματα αντίστοιχης εξοικονόμησης παρουσιάζονται στην ενότητα 6.4. Πίνακας 6.1. Χαρακτηριστικά των εφαρμογών παρακολούθησης και διαχείρισης idealism PlugDroid Smart IHU Portal Πλατφόρμα Java Java, Android PHP Αποθήκευση Υπηρεσιών Τοπικά Τοπικά Καθολικά Κατάλογος Υπηρεσιών Επιλεκτικός Επιλεκτικός Πλήρης Προβολή ανά Είδος Προβολή ανά Δωμάτιο Δημιουργία Ομάδων Χειροκίνητη Εκτέλεση Υπηρεσιών Γραφήματα ιστορικού δεδομένων Λειτουργία τοπικών συσκευών Σάρωση QRCode Υπηρεσία Έξυπνων Μπριζών Μόνο ανάγνωση αισθητήρων Υπηρεσία Πλακετών Αισθητήρων Υπηρεσία Έξυπνων Δαγκανών Υπηρεσία Συσκευών Z-Wave 222

223 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Η Εφαρμογή Διαχειριστή idealism Οι εφαρμογές παρακολούθησης στοχεύουν κάθε διαφορετική πλατφόρμα, ώστε να διασφαλίζεται προσβασιμότητα από όλους τους χρήστες. Το idealism (DEsktop AppLIcation for Smart Management) είναι μία desktop εφαρμογή για παρακολούθηση και διαχείριση, που έχει αναπτυχθεί σε Java (Stavropoulos et al., 2011). Η συγκεκριμένη εφαρμογή προορίζεται για χρήση από διαχειριστές του συστήματος, όπως το προσωπικό διαχείρισης δικτύου και ασφαλείας, επιτρέποντάς τους να παρακολουθήσουν όλο το ιστορικό δεδομένων, αλλά και τα δεδομένα σε πραγματικό χρόνο, πριν προβούν σε κάποια ενέργεια. Επιπλέον, η εφαρμογή τους επιτρέπει να δημιουργήσουν ομάδες συσκευών και τα δωμάτια στα οποία βρίσκονται οι συσκευές. Κατόπιν, μπορούν να ανακτήσουν συνολικά δεδομένα για μία ομάδα ή ένα δωμάτιο, ώστε να κατανοήσουν καλύτερα την πραγματική κατάσταση στο κτίριο και να τις διαχειριστούν ταυτόχρονα. Όπως αναφέρθηκε παραπάνω, το idealism διαχειρίζεται όλες τις υπηρεσίες του awesome για αυτό τον σκοπό. Τεχνικά, η εφαρμογή idealism είναι ένας απλός WSDL πελάτης του ενδιάμεσου λογισμικού awesome, με συντακτική και σημασιολογική διαλειτουργικότητα. Αυτό σημαίνει ότι είναι απόλυτα επεκτάσιμο και συμβατό με πιθανές μελλοντικές προσθήκες (plug-ins) στο awesome, που προσφέρουν τις ίδιες, σε συντακτικό επίπεδο, υπηρεσίες. Για να οργανωθούν και να διαχειριστούν σωστά, όμως, απαιτείται η ανάγνωση επισημάνσεων SAWSDL. Έτσι, σύμφωνα με όσα έχουν αναφερθεί, η εφαρμογή διαχειρίζεται ξεχωριστά τις λειτουργίες αισθητήρων (bonsai.owl#sensoroperation) και οργάνων δράσης (bonsai.owl#actuatoroperation) του awesome-s. Ο σκοπός του idealism και το κίνητρο πίσω από το σχεδιασμό του είναι η εξοικονόμηση ενέργειας μέσα από διαχειριστικές ενέργειες από δύο ρόλους. Πρώτον, παρουσιάζει μία γραφική διεπαφή για όλες τις υπηρεσίες του awesome και δεύτερον, η διάταξη και οι δυνατότητές του προωθούν την εξοικονόμηση ενέργειας στο Έξυπνο Κτίριο. Είναι φανερό ότι οι Υπηρεσίες από μόνες τους δεν παρέχουν γραφική διεπαφή, φιλική στον χρήστη, ώστε να κληθούν, παρά μόνο τις WSDL περιγραφές και τα SOAP μηνύματα που ανταλλάσσουν (σε μορφή XML). Το idealism διαχειρίζεται στο backend αυτή την ανταλλαγή μηνυμάτων, αλλά χειρίζεται κατάλληλα και τα δεδομένα εισόδου και εξόδου ώστε να παρουσιάζονται με κατανοητό τρόπο. Οι υπηρεσίες στο idealism είναι «κρυμμένες» πίσω από κάθε συσκευή και μπορούν να οργανώνονται και να καλούνται περιοδικά, αν πρόκειται για αισθητήρες, ή κατά απαίτηση, αν πρόκειται για όργανα δράσης (με βάση τη σημασιολογία). Ο χρήστης μπορεί να επιλέξει ποιες συσκευές-υπηρεσίες θα διαχειρίζεται, οπότε και η εφαρμογή προσαρμόζεται στις ανάγκες του. Η πληροφορία στο idealism οργανώνεται και προβάλλεται με τέτοιο τρόπο ώστε να προάγει την εξοικονόμηση ενέργειας. Η δυνατότητα οπτικοποίησης ιστορικών δεδομένων είτε σε επίπεδο συσκευής, είτε ομαδοποιημένα και παρακολούθησης σε πραγματικό χρόνο επιτρέπει την σε βάθος και με ακρίβεια κατανόηση της κατάστασης των περιβαλλοντικών συνθηκών σε συνδυασμό με την ενεργειακή του συμπεριφορά μέσα στον χρόνο. Επομένως, οι χρήστες βρίσκονται σε θέση να διαχειριστούν τις συσκευές στον φυσικό χώρο ή με την ίδια την εφαρμογή πιο αποδοτικά. 223

224 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 6.3. Προβολή ιστορικών δεδομένων κατανάλωσης και μέτρησης σε πραγματικό χρόνο μίας Έξυπνης Δαγκάνας, στην εφαρμογή idealism Τα οφέλη της εφαρμογής γίνονται πιο ξεκάθαρα μέσα από τη λειτουργικότητά της. Η Εικόνα 6.3 δείχνει την κύρια γραφική διεπαφή της εφαρμογής. Στα αριστερά προβάλλεται μία λίστα των διαθέσιμων συσκευών. Η λίστα αυτή έχει δενδρική δομή και τις ομαδοποιεί κατά επιλογή του χρήστη ανά είδος, δωμάτιο ή ομάδα. Διαλέγοντας μία συσκευή το δεξί μέρος του παραθύρου γεμίζει με τις πληροφορίες και τις λειτουργίες που την αφορούν. Η κύρια προβολή είναι η Data & Functions, η οποία παρουσιάζει ένα γράφημα με τα ιστορικά δεδομένα της συσκευής, αν πρόκειται για αισθητήρα, για το χρονικό διάστημα και την ανάλυση που επιλέγει ο χρήστης. Κάτω από το διάγραμμα παρουσιάζεται η πρόσφατη μέτρηση της συσκευής. Αν πρόκειται για όργανο δράσης, εμφανίζονται κουμπιά για τις λειτουργίες του στο κάτω μέρος του παραθύρου. Ακόμη, η κατάσταση της συσκευής φαίνεται στη δενδρική δομή και στον διακόπτη, με πράσινο ή κόκκινο χρώμα που σημαίνει ότι είναι ενεργοποιημένη ή απενεργοποιημένη αντίστοιχα. Για παράδειγμα, στην Εικόνα 6.4 φαίνονται οι μετρήσεις κατανάλωσης μίας Έξυπνης Μπρίζας εγκατεστημένης στον φωτισμό. Το ιστορικό δείχνει την κατανάλωση ανά λεπτό για την επιλεγμένη ώρα και μέρα (12/05/ :00), η τρέχουσα κατανάλωση είναι 0 W, ενώ η Έξυπνη Μπρίζα επιτρέπει την ενεργοποίηση ή απενεργοποίηση της συσκευής με διακόπτη. Επίσης, η συσκευή μπορεί να κλειδωθεί για να αποφεύγονται ακούσιες λειτουργίες. Στην Εικόνα 6.3 έχει επιλεγεί μία Έξυπνη Δαγκάνα, συνδεδεμένη με ολόκληρο το κτίριο Α και δείχνει το ιστορικό κατανάλωσης για την επιλεγμένη ώρα και μέρα (12/05/ :00) και την τρέχουσα κατανάλωση, που είναι περίπου 14kW, ενώ δεν υπάρχουν διαθέσιμες λειτουργίες, αφού η συσκευή είναι αποκλειστικά αισθητήρας. 224

225 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα 6.4. Προβολή ιστορικού και λειτουργιών Έξυπνης Μπρίζας στην εφαρμογή idealism Οι υπόλοιπες προβολές αφορούν τα χρονοδιαγράμματα και τη λίστα κόμβων. Επιλέγοντας τα χρονοδιαγράμματα (Schedules), που είναι διαθέσιμα μόνο για τις Έξυπνες Μπρίζες, ο χρήστης μπορεί να ορίσει εβδομαδιαία προγράμματα ενεργοποίησης για την επιλεγμένη συσκευή, ενώ μπορούν να ορισθούν διαστήματα χρόνου με την εκπνοή των οποίων απενεργοποιείται η συσκευή. Αυτές οι λειτουργίες έχουν σκοπό την εξοικονόμηση ενέργειας μέσα από τέτοιες διαχειριστικές κινήσεις και μπορούν να γλιτώσουν το κτίριο ακόμα και από ενεργοβόρα stand-by φορτία (κατανάλωση απενεργοποιημένης ηλεκτρικής συσκευής), για παράδειγμα το βράδυ. Η προβολή λίστας κόμβων είναι διαθέσιμη όταν επιλέγεται ένα δωμάτιο ή μια ομάδα και προβάλλει έναν πίνακα με όλες τις συσκευές που εμπεριέχονται στον επιλεγμένο κόμβο μαζί με τις ιδιότητές τους και τις πρόσφατες μετρήσεις τους. Οι ιδιότητες μπορούν να επεξεργαστούν για μεγαλύτερη ευκολία, ενώ οι πρόσφατες μετρήσεις δίνουν μια γρήγορη εικόνα για το τι συμβαίνει σε πραγματικό χρόνο στην ομάδα ή το δωμάτιο. Η χρήση των ομάδων και των δωματίων βοηθά στην οργανωμένη προβολή και διαχείριση των συσκευών. Κάθε συσκευή μπορεί να ανήκει μόνο σε ένα δωμάτιο και σε μία ή περισσότερες ομάδες. Διαλέγοντας ένα δωμάτιο ή μια ομάδα, προβάλλεται το γράφημα της συνολικής κατανάλωσης ως άθροισμα της κατανάλωσης των επιμέρους συσκευών. Οι υπόλοιποι αισθητήρες αγνοούνται, καθώς το άθροισμα έχει πρακτικό νόημα μόνο για την κατανάλωση και όχι για άλλες μετρήσεις, όπως π.χ. η θερμοκρασία. Επιπλέον, στην προβολή λειτουργιών ο διακόπτης ενεργοποίησης και απενεργοποίησης αναφέρεται πλέον σε όσες Έξυπνες Μπρίζες περιέχονται στον επιλεγμένο κόμβο. Συνολικά, η εφαρμογή idealism επιτρέπει στους διαχειριστές του συστήματος πλήρη, απομακρυσμένο έλεγχο και παρακολούθηση όλων των πτυχών του κτιρίου. Από τη 225

226 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη μία, προβάλλονται και οργανώνονται όλες οι πληροφορίες αισθητήρων μεμονωμένα ή συνολικά ανά δωμάτιο ή ομάδα. Από την άλλη, δίνεται η δυνατότητα χειροκίνητων δράσεων ε- νεργοποίησης και απενεργοποίησης, αλλά και ορισμού χρονοδιαγραμμάτων, που μπορεί εύκολα να εξοικονομήσει ενέργεια. Σε βάθος χρόνου, η παρατήρηση μπορεί να οδηγήσει σε συμπεράσματα για ριζικές αλλαγές στη δομή του κτιρίου (ενεργειακή κατασκευή ανάλογα με τις απώλειες) και σε σύνθεση πολιτικών εξοικονόμησης Εφαρμογή Έξυπνου Τηλεφώνου PlugDroid Τα smartphones (έξυπνα κινητά τηλέφωνα) έχουν διεισδύσει πλήρως στην καθημερινότητα και την αγορά. Χρησιμοποιούνται πλέον σε πολλές ερευνητικές εφαρμογές συμπεριλαμβανομένου της Διάχυτης Νοημοσύνης, λόγω της υπολογιστικής τους ισχύς, της φορητότητας και της ποικιλίας αισθητήρων. Συγκεκριμένα, στο Έξυπνο Κτίριο μπορούν να εξυπηρετήσουν ως συσκευές εισόδου μέσα από χειρισμούς του χρήστη ή μέσω των αισθητήρων. Επιπλέον, η πλατφόρμα Android 71 διευκολύνει την ανάπτυξη εφαρμογών για τηλέφωνα χαμηλού κόστους, στοχεύοντας στο ευρύ κοινό, μέσα από το ανοιχτό Android SDK 72. Η εφαρμογή PlugDroid (Stavropoulos et al., 2013a), που αναπτύχθηκε σε αυτή την πλατφόρμα, πλαισιώνει και αυτή το σύστημα Έξυπνου Κτιρίου που παρουσιάζεται στη διατριβή. Έχει βασιστεί πάλι στο ενδιάμεσο λογισμικό awesome και παρουσιάζει αρκετές ομοιότητες με την αντίστοιχη desktop εφαρμογή, idealism, προσαρμόζοντας τη λειτουργικότητα στο σενάριο χρήσης κινητού τηλεφώνου. Συγκεκριμένα, η εφαρμογή δεν προορίζεται για διαχειριστές του συστήματος, αλλά για το προσωπικό, τους επισκέπτες και τους φοιτητές του Πανεπιστημίου. Επομένως, περιορίζεται τόσο η έκταση των δεδομένων που παρουσιάζονται, για λόγους ιδιωτικότητας, όσο και η εξουσιοδοτημένη χρήση όλων των υπηρεσιών. Ενδεικτικά, το PlugDroid, σε σχέση με το idealism, δε δίνει τη δυνατότητα προβολής του ιστορικού δεδομένων, παρά μόνο της τρέχουσας μέτρησης σε πραγματικό χρόνο. Η λίστα των διαθέσιμων συσκευών και η εξουσιοδότηση για διαχείρισή τους είναι επίσης περιορισμένες από τον κεντρικό διαμεσολαβητή (Service Broker). Αντίθετα, η πλατφόρμα Android προσφέρεται για εφαρμογές που αλληλοεπιδρούν με τον φυσικό κόσμο, οπότε προστέθηκε μια τέτοια δυνατότητα μέσω της σάρωσης κωδικών QRCodes. Τεχνικά, η εφαρμογή είναι πελάτης των WSDL υπηρεσιών του awesome και εκμεταλλεύεται τις SAWSDL σημασιολογικές επισημάνσεις για να αναγνωρίσει τις δυνατότητες της κάθε συσκευής ως αισθητήρα και όργανο δράσης. Για κάθε χρήστη της εφαρμογής, διατηρείται τοπικά μία προσωπική λίστα συσκευών που πάλι αντιστοιχούν σε υπηρεσίες. Οι ίδιοι οι χρήστες εισάγουν τις συσκευές που τους ενδιαφέρουν και αυτές αποθηκεύονται και οργανώνονται για μελλοντική χρήση. Ξανά, η λίστα συσκευών μπορεί να προβληθεί ανά είδος, δωμάτιο ή ομάδα. Για να εισαχθεί μία συσκευή πρέπει είτε ο χρήστης να γνωρίζει τον μοναδικό κωδικό της είτε να τον σαρώσει από Android homepage: 72 Android SDK:

227 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα 6.5. Προβολή στο PlugDroid των καταχωρημένων δωματίων (αριστερά), συσκευών (κέντρο) και επιλεγμένης συσκευής με την τρέχουσα μέτρηση και τις λειτουργίες της (δεξιά) QRCode. Τα QRCodes βρίσκονται τυπωμένα πάνω στις ηλεκτρικές συσκευές στις οποίες αντιστοιχούν, μέσα στο Έξυπνο Κτίριο. Σαν αποτέλεσμα, δίνεται στους χρήστες ένα είδος διεπαφής με το σύστημα μέσω του φυσικού κόσμου. Η Εικόνα 6.5 δείχνει τρεις από τις προβολές του PlugDroid. Αριστερά φαίνεται η λίστα με τα διαθέσιμα δωμάτια, ανάλογα με τις αντίστοιχες συσκευές που έχουν καταχωρηθεί. Στο κέντρο φαίνεται η λίστα όλων των συσκευών, που ξεχωρίζουν από το όνομα και το εικονίδιό τους. Στο κάτω μέρος έχει ανοίξει το μενού που προσφέρει τις επιλογές προσθήκης συσκευής μέσω αναγνωστικού ή σάρωσης, αλλαγής προβολής ανά δωμάτιο, ομάδα ή είδος και ρυθμίσεων. Τέλος, στα δεξιά παρουσιάζεται η οθόνη προβολής μίας συσκευής εφόσον αυτή έχει επιλεγεί. Ανάλογα με τις δυνατότητες της συσκευής δημιουργούνται δυναμικά τα κουμπιά που καλούν τις λειτουργίες οργάνων δράσης, όπως Switch On και Switch Off για τις Έξυπνες Μπρίζες, και αισθητήρων όπως Update Status και Update Info. Επιπλέον, για τους αισθητήρες εμφανίζεται η τελευταία μέτρηση, όπως φαίνεται και στην εικόνα για την ηλεκτρική συσκευή Reading Lights, στα 50 W Διαδικτυακή Εφαρμογή Smart IHU Portal Η διαδικτυακή εφαρμογή Smart IHU Portal (Εικόνα 6.6) προορίζεται τόσο για τους χρήστες εντός, όσο και εκτός του Έξυπνου Κτιρίου. Συγκεκριμένα, προβάλει ιστορικό μετρήσεων προσαρμοσμένο στους εργαζόμενους, τους φοιτητές και τους εξωτερικούς επισκέπτες του Έξυπνου Κτιρίου από όλο τον κόσμο. Η εφαρμογή έχει αναπτυχθεί πάνω από ένα γενικό υποσύστημα διαδικτυακών εφαρμογών παρακολούθησης στο Έξυπνο Κτίριο, όπως για παράδειγμα η Smart TV, σύμφωνα με την Εικόνα 6.2. Το Smart IHU Portal προσφέρει ανοιχτή πρόσβαση σε όλους τους χρήστες του Ιστού παρέχοντάς τους γραφήματα του ιστορικού μετρήσεων συνδυασμένων δεδομένων αισθητήρων, όπως η συνολική κατανάλωση του Data Center, των γραφείων, της κεντρικής ψύξης και μετρικών σπατάλης. Στην ενότητα εξετάζονται και άλλες δύο εφαρμογές, η Smart TV και το Smart IHU Google Earth Model. Το υποσύστημα παρακολούθησης και συγκερασμού δεδομένων (Monitoring & Fusion subsystem) λειτουργεί ως κοινό backend για πολλές διαδικτυακές εφαρμογές, όπως το 227

228 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 6.6. Η γραφική διεπαφή Smart IHU Portal και η απεικόνιση ενός γραφήματος της κατανομής κατανάλωσης ενέργειας ανά είδος συσκευών μέσα σε ένα γραφείο Smart IHU Portal και η Smart TV. Ο σκοπός του είναι η επαναχρησιμοποίηση ρουτινών και η κοινή συλλογή δεδομένων που βελτιστοποιούν τη χρήση πόρων στο διάχυτο σύστημα, του οποίου οι εφαρμογές πελάτες είναι, άλλωστε, απεριόριστες. Έτσι, το υποσύστημα παρακολούθησης έχει έναν μόνο πελάτη των υπηρεσιών για τη συλλογή δεδομένων όλων των διαδικτυακών εφαρμογών. Μία ακόμα εφαρμογή μέσα στο υποσύστημα είναι υπεύθυνη για τον συγκερασμό των δεδομένων διαφόρων πηγών/συσκευών, όπως για παράδειγμα τον συνδυασμό δύο Έξυπνων Δαγκάνων για το σύνολο του κτιρίου Α ή μίας Έξυπνης Δαγκάνας και πολλών Έξυπνων Μπριζών για τα εργαστήρια υπολογιστών. Επίσης, το υποσύστημα παρέχει ομοιόμορφη α- ναγωγή των δεδομένων σε χαμηλότερη ανάλυση, αφού τα δεδομένα των αισθητήρων που συλλέγονται ανά κάποια δευτερόλεπτα συνήθως ανάγονται σε μέσο όρο ανά ώρα ή ημέρα. Πολύ συχνά οι εφαρμογές απαιτούν τον συγκερασμό δεδομένων Έξυπνων Δαγκάνων και Έξυπνων Μπριζών. Και οι δύο αισθητήρες μετρούν κατανάλωση ενέργειας, αλλά με διαφορετική συχνότητα δειγματοληψίας και σε διαφορετική τάξη μεγέθους. Το υποσύστημα συγκερασμού παρέχει κοινά ερωτήματα για τη διάσπαση της συνολικής κατανάλωσης του κτιρίου σε Data Center, Coffee Shop (κυλικείο), κεντρική ψύξη (Cooling Unit), αμφιθέατρο (Auditorium), που μετριούνται από δαγκάνες, και ηλεκτρικές συσκευές (Devices), που μετριούνται από μπρίζες. Το αποτέλεσμα αυτού του συγκερασμού είναι η κατανομή της συνολικής ενέργειας σε ποσοστά. Η Εικόνα 6.7 δείχνει την κατανομή αυτή για τον Ιούλιο του 2014, όπως ακριβώς δημιουργείται δυναμικά και αναπαρίσταται στη γραφική διεπαφή του Smart IHU Portal. Στη συνέχεια, το ποσοστό των συσκευών κατανέμεται περαιτέρω σε είδη συσκευών (υπολογιστές, ψύξη/θέρμανση, εκτυπωτές και φωτισμό) ανά γραφείο, μέσω του συγκερασμού πολ- 228

229 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα 6.7. Κατανομή κατανάλωσης ενέργειας του κτιρίου για τον Ιούλιο 2014, με τον συγκερασμό δεδομένων Έξυπνων Δαγκανών και Έξυπνων Μπριζών λών δικτύων Έξυπνων Μπριζών. Σαν μελλοντική εργασία, ο συγκερασμός μπορεί να γενικευτεί παραπάνω, ώστε με ερμηνεία σημασιολογικών περιγραφών να μπορεί να καλύψει περισσότερες συσκευές και εγκαταστάσεις. Πρόσθετα, υπάρχει η επιλογή εμφάνισης της εξοικονόμησης ανά σχολή (Per School Savings), όπως φαίνεται στην Εικόνα 6.8. Σε αυτή τη λειτουργία, έγινε μία προσπάθεια για μετατροπή της εξοικονόμησης ενέργειας σε παιχνίδι για τους εργαζόμενους στο κτίριο, μία τεχνική γνωστή και ως gamification. Κάθε γραφείο ανήκει σε μία εκ των τριών σχολών των πανεπιστημίου. Η εφαρμογή δείχνει το σύνολο της κατανάλωσης ενέργειας την προηγούμενη εβδομάδα (από 14 μέχρι 7 ημέρες πριν) και την τρέχουσα εβδομάδα (από 7 ημέρες πριν μέχρι σήμερα) σε ραβδόγραμμα ανά σχολή, συμπεριλαμβανομένων των εργαστηρίων υπολογιστών ως μέσο σύγκρισης. Το ποσό εξοικονόμησης ανά σχολή την τελευταία εβδομάδα ισούται με τη διαφορά τους. Έτσι, οι υπάλληλοι γνωρίζουν κάθε στιγμή την κατάσταση και την κατάταξή τους και στο μέλλον μπορούν να τους δίδονται έπαθλα ως επιπλέον κίνητρο εξοικονόμησης. Η Smart TV έχει αναπτυχθεί με τις ίδιες τεχνολογίες και πάνω από το ίδιο υποσύστημα παρακολούθησης που λειτουργεί ως backend. Στο front-end έχει δημιουργηθεί μία προσαρμοσμένη προβολή που παρουσιάζει τις πιο κρίσιμες μετρικές σε μικρή έκταση. Η προβολή αυτή παρατίθεται στην ήδη υπάρχουσα Smart TV του κτιρίου και δείχνει πληροφορίες όπως το πρόγραμμα και τον καιρό. Πιο λεπτομερώς, περιλαμβάνει την τρέχουσα και την η- μερήσια κατανάλωση των τελευταίων επτά ημερών, ένα μικρό γράφημα της κατανάλωσης των τριών τελευταίων ημερών και τα επίπεδα CO 2 σε δύο εργαστήρια υπολογιστών, όπως φαίνεται στην Εικόνα 6.9. Μία ακόμα εφαρμογή που βασίζεται στη διαδικτυακή πλατφόρμα είναι το μοντέλο Google Earth του Smart IHU. Σκοπός του είναι η ολοκλήρωση του συστήματος με την πλατφόρμα Google Earth. Αρχικά, για αυτό τον σκοπό αναπτύχθηκε το τρισδιάστατο μοντέλο του ισογείου του κτιρίου του Διεθνούς Πανεπιστημίου Ελλάδος (με χρήση Google SketchUp), ό- 229

230 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα 6.8. Εμφάνιση κατανάλωσης και εξοικονόμησης με τη μορφή ανταγωνιστικού παιχνιδιού μεταξύ των τριών σχολών του Πανεπιστημίου πως αυτό φαίνεται στην Εικόνα 6.10 (πάνω μέρος). Στη συνέχεια, αναπτύχθηκαν με τεχνολογίες διαδικτύου (HTML, PHP, JavaScript) διαφορετικά παράθυρα, τα οποία προβάλλουν γραφήματα κατανάλωσης. Τα παράθυρα συνδέονται με το μοντέλο μέσω «καρφιτσών» (pins) της πλατφόρμας Google Earth. Κατεβάζοντας το πακέτο 73 που περιέχει το μοντέλο και τις καρφίτσες, οι χρήστες της πλατφόρμας Google Earth μπορούν να επιλέξουν τοποθεσίες στο κτίριο και να προβάλλουν γραφήματα κατανάλωσης σε πραγματικό χρόνο, όπως δείχνει η Εικόνα 6.10 (κάτω μέρος). Η συνολική παρακολούθηση του κτιρίου, κυρίως μέσα από το Smart IHU Portal, αλλά και από τις άλλες εφαρμογές περιστασιακά, έχει οδηγήσει σε σημαντικά συμπεράσματα. Το Εικόνα 6.9. Προβολή της Smart TV στην υποδοχή του κτιρίου με ενδείξεις κατανάλωσης σε πραγματικό χρόνο, γράφημα τελευταίων ημερών και επίπεδα CO2 στις αίθουσες Πακέτο Smart IHU Google Earth:

231 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα Τρισδιάστατο μοντέλο Smart IHU Google Earth Model (πάνω) και προβολή γραφήματος κατανάλωσης ενέργειας πάνω στο μοντέλο (κάτω) Data Center, δηλαδή το δωμάτιο των server ολόκληρου του κτιρίου, ευθύνεται για περίπου το 50% της κατανάλωσής του. Το ποσοστό αυτό μετρήθηκε σε βάθος ενός έτους. Η τεράστια αυτή κατανάλωση ενέργειας πηγάζει από την ψύξη των servers και προτρέπει τους υπεύθυνους του κτιρίου να σκεφτούν οικονομικά συμφέρουσες ανακατασκευές στο κτίριο και συγκεκριμένα για καλύτερο εξαερισμό και φυσική ψύξη του Data Center. Παρομοίως, το κυλικείο και η κεντρική ψύξη του κτιρίου, που ευθύνονται για περίπου 20% της συνολικής κατανάλωσης και 10% το καλοκαίρι, μπορούν να διαμορφωθούν α- νάλογα, μέσω αλλαγών στην ίδια την υποδομή. Άλλες δομικές αλλαγές θα μπορούσαν να γίνουν στον εξοπλισμό του κυλικείου, αλλά και στην κεντρική ψύξη. Άλλωστε, τα γραφήματα θερμοκρασίας δείχνουν πως κάποιοι χώροι ψύχονται υπερβολικά το καλοκαίρι, φτάνοντας τους 18 o C. Οι επιμέρους συσκευές μπορούν να βελτιστοποιηθούν μέσω της συμπεριφοράς 231

232 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη των χρηστών τους ή ακόμα και από αυτόνομους πράκτορες, όπως παρουσιάζεται στην επόμενη ενότητα. Τέλος, η προέλευση του 10% της κατανάλωσης παραμένει άγνωστη και θα πρέπει να ανακαλυφθεί μέσω της εγκατάστασης περισσότερων αισθητήρων. 6.3 Ευφυείς Πράκτορες για το Έξυπνο Κτίριο Ενώ οι απλές εφαρμογές πελάτες ελέγχουν χειροκίνητα τα όργανα δράσης και ανακτούν τα δεδομένα των αισθητήρων, οι ευφυείς εφαρμογές με τη σειρά τους επιτρέπουν την αυτόματη, έξυπνη διαχείριση της ενεργειακής κατανάλωσης. Μία προσέγγιση προς αυτή την κατεύθυνση είναι η χρήση ευφυών πρακτόρων που ενσωματώνουν γνώση, λαμβάνουν αποφάσεις και διαχειρίζονται το περιβάλλον. Αρχικά, αυτή η ενότητα παρουσιάζει δύο διαφορετικές προσεγγίσεις λογικής: την παραγωγική και την αναιρέσιμη, οι οποίες ενσωματώνονται σε δύο αντίστοιχους ευφυείς πράκτορες: τον πράκτορα Wintermute και τον πράκτορα DeL αντίστοιχα (Stavropoulos et al., 2014a). Στη συνέχεια, αυτές οι δύο προσεγγίσεις συνδυάζονται σε έναν μόνο πράκτορα με μία υβριδική αρχιτεκτονική, ο οποίος ενσωματώνεται σε μία εφαρμογή κατάλληλη για πιλοτική εφαρμογή στο Έξυπνο Κτίριο. Η εφαρμογή λειτούργησε πειραματικά στο κτίριο του Διεθνούς Πανεπιστημίου Ελλάδος, δίνοντας θετικά αποτελέσματα, όπως παρουσιάζεται στην επόμενη ενότητα Πράκτορας Παραγωγικής Λογικής Wintermute Παραδοσιακά, οι ευφυείς πράκτορες έχουν χρησιμοποιήσει διάφορες μορφές συλλογιστικής που ακολουθούν διαφορετικές θεωρίες λογικής. Ο πράκτορας παραγωγικής λογικής που α- ναπτύχθηκε στα πλαίσια της διατριβής είναι αρμόδιος και κατάλληλος για αντιδραστική (reactive) συμπεριφορά, όταν δηλαδή η κυριότερη απαίτηση είναι ο χαμηλός χρόνος απόκρισης. Η αρχιτεκτονική του πράκτορα Wintermute φαίνεται στην Εικόνα Αρχικά ο πράκτορας τοποθετείται μέσα στην πλατφόρμα JADE 74 για επικοινωνία με άλλους πράκτορες. Εσωτερικά ενσωματώνει ένα στιγμιότυπο της μηχανής εκτέλεσης κανόνων JESS. Οι χρήστες μπορούν να συνθέσουν και να διαχειριστούν πολιτικές αυτοματισμού με τη μορφή κανόνων παραγωγικής λογικής, μέσω μίας ειδικής γραφικής διεπαφής χρήστη (υλοποιημένη με JavaFx). Ένα υποσύστημα Monitor, του οποίου τη συχνότητα δειγματοληψίας ορίζει ο χρήστης, ο πράκτορας παρακολουθεί και ενημερώνει συνεχώς τη βάση γεγονότων (Facts) μέσω των Σημασιολογικών Υπηρεσιών Ιστού awesome-s. Με χρήση των κανόνων εκτελείται η συλλογιστική, πυροδοτούνται κανόνες και καλούνται οι υπηρεσίες που επιδρούν ανάλογα στο περιβάλλον. Η γραφική διεπαφή είναι εμπλουτισμένη με δυνατότητες διαχείρισης σημασιολογίας, η οποία διαβάζεται δυναμικά από τις περιγραφές των υπηρεσιών που είναι διαθέσιμες στο σύστημα Διάχυτης Νοημοσύνης κάθε στιγμή. Η διαχείριση αυτής της σημασιολογικής Java Agent Development framework JADE:

233 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο πληροφορίας βασίζεται στην υπόθεση ότι οι λειτουργίες των αισθητήρων (SensorOperations) μπορούν να χρησιμοποιηθούν ως προϋποθέσεις (conditions) των κανόνων. Ομοίως, οι λειτουργίες οργάνων δράσης (ActuatorOperations) είναι κατάλληλες για τις ενέργειες (actions) του πράκτορα. Με αυτή την υπόθεση, παρουσιάζονται στον χρήστη δυναμικές και επεκτάσιμες λίστες (dropdown box) με τις διαθέσιμες προϋποθέσεις και ενέργειες κατά τη συγγραφή κανόνων, όπως φαίνεται στην Εικόνα Ο πράκτορας Wintermute κατά τη λειτουργία του αλληλοεπιδρά περιοδικά με τις σημασιολογικές υπηρεσίες Ιστού του συστήματος για να ανακτήσει τα γεγονότα (facts) που τον ενδιαφέρουν και να ενημερώσει τη βάση γνώσης του για τον κόσμο, όπως τον αντιλαμβάνεται μέσω των αισθητήρων. Αυτά τα γεγονότα, μαζί με τις πολιτικές του χρήστη στη βάση γνώσης του πράκτορα, χρησιμοποιούνται από τη διαδικασία της συλλογιστικής. Μετά από αυτήν, οπλίζονται και πυροδοτούνται κανόνες, που με τη σειρά τους, καλούν τις σημασιολογικές υπηρεσίες Ιστού για να διαχειριστούν το περιβάλλον. Συνολικά, η λειτουργικότητα του πράκτορα, συνοψίζεται στην παρακολούθηση μετρήσεων και στην απευθείας πυροδότηση κανόνων. Το μειονέκτημα και το κόστος αυτής της τόσο άμεσης μεθόδου είναι ότι η επίλυση συγκρούσεων πρέπει να προλαμβάνεται από τον ίδιο τον ειδήμονα, κατά το στάδιο συγγραφής των κανόνων. Για παράδειγμα, ο κανόνας που παίζει τον ρόλο θερμοστάτη, r1, συντάσσεται σε JESS όπως φαίνεται παρακάτω: Εικόνα Αρχιτεκτονική του πράκτορα Wintermute (defrule r1 (call GetTemperature room1?x0) (test (<?x0 20) ) => (call SwitchOn FanCoil1) ) όπου room1 είναι το δωμάτιο λειτουργίας, FanCoil1 η αντίστοιχη συσκευή θέρμανσης, GetTemperature η λειτουργία του αισθητήρα θερμοκρασίας (Πλακέτα Αισθητήρων) και SwitchOn η λειτουργία του οργάνου δράσης (Έξυπνης Μπρίζας) για τη θέρμανση. Σε αυτό το 233

234 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Γραφική διεπαφή πράκτορα Wintermute, με δυνατότητες συγγραφής κανόνων (επάνω) και αυτόματη ανάκτηση διαθέσιμων κατηγορημάτων από τις υπηρεσίες (κάτω) παράδειγμα μπορεί να οριστεί ένας ακόμα κανόνας r2, ο οποίος να απενεργοποιεί τη θέρμανση όταν δεν ανιχνεύεται κίνηση στο δωμάτιο για κάποιο διάστημα: (defrule r2 (call GetMotion room1?x0) => (call SwitchOff FanCoil1) ) Ο δεύτερος κανόνας συγκρούεται έμμεσα με τον πρώτο, αφού τα αποτελέσματά τους είναι αντιφατικά ως προς την ενεργοποίηση της συσκευής. Έστω ότι στο συγκεκριμένο σενάριο θα ήταν επιθυμητό το r2 να υπερισχύσει του r1. Με την παραγωγική λογική, θα έπρεπε να ανασυνταχθεί ο κανόνας r1 συμπεριλαμβάνοντας το κατηγόρημα motion στις προϋποθέσεις του. Ένας τρίτος κανόνας, r3, μοντελοποιεί την έννοια της λειτουργίας εξοικονόμησης (Saving Mode), απενεργοποιώντας κάθε ευέλικτη, μη κρίσιμη συσκευή, όπως η θέρμανση, 234

235 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο όταν ξεπερνιέται ένα όριο κατανάλωσης για το δωμάτιο. Αυτός ο κανόνας θα πρέπει να υπερισχύει όλων των άλλων, r1 και r2, για να εφαρμοστεί το κατώφλι εξοικονόμησης. Με την παραγωγική λογική θα πρέπει οι r1 και r2 να συμπεριλάβουν την άρνηση των προϋποθέσεων του r3. (defrule r3 (call GetPower room1?x0) (test (<?x0 2000) ) => (call SwitchOff FanCoil1) ) Γίνεται, επομένως, φανερό ότι όσο μεγαλώνει το σύνολο κανόνων, θα πρέπει ο χρήστης να αναδιαμορφώνει αναδρομικά το αριστερό μέρος (προϋποθέσεις) όσων κανόνων συγκρούονται έμμεσα. Για παράδειγμα για έναν κανόνα ενεργοποίησης της ψύξης, όταν το δωμάτιο είναι πολύ ζεστό, θα πρέπει να εξεταστούν οι αρνήσεις όλων των συνθηκών των εμμέσως συγκρουόμενων κανόνων: temphigh(a6), motion(a6), savingmode(a6), ison(a6,cooler), alert(a6) switchon(a6,cooler) Πρώτον, αυτή η ιδιομορφία αποτελεί μεγάλο εμπόδιο για τον συγγραφέα των κανόνων, ο οποίος πρέπει προσεκτικά να εξετάζει και να συντηρεί τη βάση κανόνων. Η βάση κανόνων καταλήγει να αποκτήσει μία μορφή δυσανάγνωστη και μη διαισθητική, αφού οι προϋποθέσεις ενός κανόνα μεγαλώνουν και αναφέρονται σε άλλους κανόνες. Δεύτερον, η μέθοδος αυτή απαγορεύει την κατανομή αρμοδιοτήτων σε διαφορετικούς χρήστες, αφού προϋποθέτει πλήρη πρόσβαση σε όλη τη βάση κανόνων από τον ίδιο χρήστη, περιορίζοντας τα σενάρια που μπορούν να υλοποιηθούν. Για αυτό τον λόγο εξερευνήθηκαν διαφορετικές μορφές λογικής, που εξετάζονται στις επόμενες ενότητες Πράκτορας Αναιρέσιμης Λογικής DeL Η αναιρέσιμη λογική προσφέρει περισσότερη ευελιξία και ευκολία κατά τη συγγραφή κανόνων. Η βάση κανόνων έχει πλέον πολύ διαισθητική μορφή και συμπαγές μέγεθος, ενώ ο μηχανισμός επίλυσης συγκρούσεων, υλοποιημένος μέσω μίας λίστας δυαδικών σχέσεων υπεροχής κανόνων, είναι σημαντικά πιο ευέλικτος. Επομένως, οι κανόνες γίνονται πλέον σύντομες, κατανοητές δηλώσεις που είναι εύκολο να συντηρηθούν και να διαχειριστούν, ενώ οι συγκρούσεις επιλύονται εκφράζοντας την προτεραιότητά τους. Ο πράκτορας αναιρέσιμης λογικής DeL (Stavropoulos et al., 2014a) αναπτύχθηκε ως εναλλακτική του πράκτορα Wintermute. Ενσωματώνει τη μηχανή συλλογιστικής αναιρέσιμης λογικής SPINdle (Lam and Governatori, 2009), το οποίο προτιμήθηκε λόγω της αξιόπιστης υ- λοποίησης του και ευκολίας ενσωμάτωσης με Java. Ο χρήστης μπορεί να συγγράψει κανόνες με υπάρχοντα εργαλεία για την αναιρέσιμη λογική, όπως το SPINdle s Defeasible Logic Theory 235

236 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Editor 75 ή το πιο ευέλικτο S 2 DRREd (Syntactic-Semantic Defeasible Reasoning Rule Editor) (Kontopoulos et al., 2012). Στον πράκτορα DeL οι κανόνες ομαδοποιούνται σε τρία λογικά επίπεδα, με χρήση των δηλώσεων υπεροχής: προτιμήσεις (preferences), συντήρηση (maintenance) και έκτακτη ανάγκη (emergency). Οι τρεις ομάδες έχουν αυξανόμενη σημαντικότητα και ανατίθενται σε χρήστες διαφορετικών επιπέδων εξουσιοδότησης. Οι απλοί χρήστες έχουν δικαιώματα επεξεργασίας μόνο στο σύνολο προτιμήσεων, με τη χαμηλότερη προτεραιότητα. Οι διαχειριστές του συστήματος έχουν αντίστοιχα πρόσβαση στους κανόνες συντήρησης και έκτακτης ανάγκης. Συγκεκριμένα, ο DeL επιτρέπει στους χρήστες τον ορισμό τριών διαφορετικών συνόλων, P, M και Ε: Κανόνες Προτιμήσεων (P): Αυτοί οι κανόνες αφορούν την άνεση του χρήστη και τις προσωπικές του προτιμήσεις, όπως, για παράδειγμα, την επιθυμητή θερμοκρασία δωματίου ενεργοποιώντας την ψύξη ή τη θέρμανση. Ένα δείγμα τέτοιου κανόνα είναι ο temphigh switchoncooler. Κανόνες Συντήρησης (Μ): Σε αυτό το σύνολο ανήκουν οι κανόνες που διαμορφώνουν σε μεγάλη κλίμακα τις πολιτικές του κτιρίου, όπως την απενεργοποίηση συσκευών το βράδυ ή τον ορισμό ενός άνω ορίου ενέργειας για το δωμάτιο. Ένας τέτοιος κανόνας είναι ο highconsumption switchoffcooler. Κανόνες Έκτακτης Ανάγκης (Ε): Αυτοί είναι οι κανόνες που ενεργοποιούνται σε περίπτωση ανάγκης, όπως η ενεργοποίηση του φωτισμού έκτακτης ανάγκης σε περίπτωση φωτιάς, η οποία μπορεί να μοντελοποιηθεί ως: fire switchonlights. Το ολοκληρωμένο σύνολο D μπορεί να αναπαρασταθεί από την ένωση των τριών παραπάνω συνόλων: P Μ Ε D. Επομένως, στην προσέγγιση αυτή οι κανόνες μπορεί να ανήκουν σε οποιοδήποτε από αυτά τα σύνολα, προσφέροντας ένα διαισθητικό και αποτελεσματικό τρόπο ομαδοποίησής τους για τους ειδήμονες ενέργειας. Σε σχέση με τη δικαιοδοσία του κάθε συνόλου, το P περιορίζεται σε μεμονωμένα δωμάτια, αφού οι κανόνες του αφορούν τη διαχείριση μικροπραγμάτων για τις συνθήκες ε- νός δωματίου. Η σκοπιά των άλλων δύο συνόλων είναι ευρύτερη, αφού καλύπτει όλο το κτίριο όπου το σύστημα είναι εγκατεστημένο, συμπεριλαμβανομένων των δωματίων και άλλων περιοχών όπως οι διάδρομοι και οι αποθήκες. Τα τρία σύνολα εμφανίζουν αυξανόμενη προτεραιότητα ως εξής: p P, m M, e E p < m < e. Σημειώνεται ότι όλοι οι κανόνες και στα τρία σύνολα θα πρέπει να είναι αναιρέσιμης μορφής, ώστε να μπορούν να εφαρμοστούν οι σχέσεις υπεροχής. Τα παρακάτω παραδείγματα ανήκουν σε κανόνες όλων των επιπέδων, ενώ η πλήρης βάση κανόνων δίνεται στο Παράρτημα Γ: # preference rule p1: templow(x) => switchoff(x,cooler) # maintenance rule m1: motion(x) => switchoff(x,cooler) SPINdle Defeasible Logic Theory Editor:

237 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο # emergency rule e1: alert(x) => switchon(x,alarm) Οι κανόνες αναιρέσιμης λογικής αναπαρίστανται σε λογική πρώτης τάξεως (First- Order Logic FOL), επομένως ο κανόνας p1 διαβάζεται ως «Αν η θερμοκρασία μέσα σε ένα δωμάτιο είναι χαμηλή, απενεργοποίησε το σύστημα ψύξης (cooler) σε αυτό το δωμάτιο». Οι επόμενοι κανόνες ερμηνεύονται παρομοίως. Σύμφωνα με τα παραπάνω, κάθε επίπεδο έχει αυξανόμενη προτεραιότητα ορίζοντας σχέσεις υπεροχής μεταξύ των αναιρέσιμων κανόνων ανά δύο, για παράδειγμα m1 > p1. Μέσα από αυτό το παράδειγμα καταδεικνύεται η υπεροχή της αναιρέσιμης λογικής έναντι της παραγωγικής σε ό,τι αφορά διαισθητικότητα, έκφραση κανόνων, αλλά και ευκολότερη επίλυση συγκρούσεων. Επιπλέον, προσφέρει πρόσθετες δυνατότητες επίλυσης συγκρούσεων μέσω διαφορετικών ειδών κανόνων και συγκρουόμενων κατηγορημάτων (conflicting literals) οι οποίες, όμως, δε χρησιμοποιούνται. Όσον αφορά τη λειτουργία του πράκτορα, η αρχιτεκτονική του φαίνεται στην Εικόνα Κάθε χρήστης, ανάλογα με το ρόλο του, μπορεί να επιδράσει σε διαφορετικό κομμάτι της βάσης κανόνων. Οι κανόνες κατά την είσοδο και έξοδο από τον πράκτορα πρέπει να υποστούν προ- και μετα-επεξεργασία. Δυστυχώς, η βιβλιοθήκη SPINdle αν και έχει πολλά πλεονεκτήματα (ταχύτητα, αξιοπιστία, εύκολη ενσωμάτωση και εγκατάσταση), εμφανίζει έναν τεχνικό περιορισμό, αφού δεν υποστηρίζει μηχανισμό θεμελίωσης, δηλαδή δεν μπορούν να χρησιμοποιηθούν μεταβλητές στα ορίσματα. Κάτι τέτοιο θα βοηθούσε πολύ στην υλοποίηση του πράκτορα, όμως δεν είναι απαγορευτικό, καθώς αντικαθίσταται με έναν μηχανισμό μετατροπής των δηλώσεων από συνθετικά κατηγορήματα σε μεταβλητές και αντίστροφα. Για παράδειγμα, η δήλωση switchon(cooler) γίνεται switchon_cooler, ενώ αντίστροφα κάθε δήλωση switchon(x) αναπαρίσταται ως ένα συνθετικό κατηγόρημα που ανήκει στο σύνολο {switchon_device_1, switchon_device_2, }, όπου device_1 κ.ο.κ η κάθε εγγεγραμμένη συσκευή. Σε περίπτωση Εικόνα Αρχιτεκτονική του πράκτορα DeL 237

238 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη που το SPINDLE υποστηρίζει θεωρία πρώτης-τάξεως, αυτή η προ-επεξεργασία δε θα χρειάζεται στο μέλλον. Αφού δημιουργηθούν οι κανόνες, προωθούνται στο επίπεδο εκτέλεσης (execution layer), όπου μεταφράζονται έτσι ώστε οι συνθήκες τους να αντικατασταθούν με τιμές από την επίκληση υπηρεσιών. Για παράδειγμα, το κατηγόρημα motion αντικαθίσταται από μία κλήση της λειτουργίας ZWaveService.GetMotion(). Αυτή η προ-επεξεργασία εμπλέκει μεταξύ άλλων την οντολογία του συστήματος για τη σημασιολογική αντιστοίχιση. Οι κλήσεις αποθηκεύονται εσωτερικά για να βρίσκονται διαθέσιμες στην υπομονάδα παρακολούθησης (monitoring) σε περίπτωση που ζητηθούν την ίδια στιγμή από άλλους κανόνες. Κατόπιν εξετάζονται περιοδικά όλα τα γεγονότα προς παρακολούθηση. Επομένως, περισσότερες συνθήκες συνεπάγονται και πιο μεγάλο χρόνο απόκρισης σε ένα εξωτερικό ερέθισμα. Αφού αντικατασταθούν τα κατηγορήματα με τιμές από τις Υπηρεσίες Ιστού, διεξάγεται η συλλογιστική και πυροδοτούνται οι κανόνες, των οποίων τα αποτελέσματα οφείλουν να υποστούν μετά-επεξεργασία. Μέσα από αυτή την διαδικασία, πάλι αντικαθίστανται τα κατηγορήματα από κλήσεις υπηρεσιών. Για παράδειγμα, το κατηγόρημα switchonlight μετατρέπεται σε μία κλήση SmartPlugService.SwitchOn(Light) και εφαρμόζονται οι επιθυμητές αλλαγές στο περιβάλλον, μέσω του ενδιάμεσου λογισμικού και του δικτύου οργάνων δράσης Υβριδικός Πράκτορας, Rule App, Manager App και OpenADR Ενώ οι πράκτορες που παρουσιάστηκαν μέχρι τώρα μπορούν να λειτουργήσουν παράλληλα, δεν έχουν κάποιο μηχανισμό επικοινωνίας για να διασφαλίζεται η επίλυση συγκρούσεων ό- ταν επεμβαίνουν σε κοινούς πόρους, δηλαδή συσκευές. Και οι δύο πράκτορες παρουσιάζουν 238 Εικόνα Αρχιτεκτονική του υβριδικού πράκτορα, εντός της εφαρμογής Rule App και συνύπαρξη με την Manager App

239 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο ιδιαίτερα πλεονεκτήματα στο σενάριο του Έξυπνου Κτιρίου. Ο πράκτορας Wintermute ειδικεύεται στη γρήγορη απόκριση διατηρώντας μικρή βάση κανόνων, ενώ ο πράκτορας DeL μπορεί να λειτουργήσει με μεγάλη βάση, επομένως ενεργεί πιο μακροπρόθεσμα. Παραμένουν αμοιβαίως αποκλειόμενοι, λόγω έλλειψης κοινής βάσης γνώσης ή διαπραγμάτευσης μεταξύ τους (Stavropoulos et al., 2014a). Για αυτό τον λόγο αναπτύχθηκε ένας υβριδικός πράκτορας που συνδυάζει τα χαρακτηριστικά και τα πλεονεκτήματα των δύο πρακτόρων σε δύο διακριτά, οριζόντια επίπεδα διαφορετικής συμπεριφοράς, όπως φαίνεται στην Εικόνα Το αντιδραστικό επίπεδο (reactive layer) υλοποιεί συμπεριφορά γρήγορης απόκρισης. Περιέχει ένα σύνολο κανόνων για έκτακτη συντήρηση και ανάγκη και καλεί την υπομονάδα παρακολούθησης (Monitor) πολύ συχνά, ώστε να ανανεώνει τη βάση γνώσης του για τον κόσμο με πρόσφατα γεγονότα (Facts). Το επίπεδο διαβούλευσης (deliberative layer), από την άλλη, περιέχει πολύ περισσότερους κανόνες και ενημερώνει τη βάση γεγονότων του πολύ πιο σπάνια. Και τα δύο επίπεδα βασίζονται στην αναιρέσιμη λογική με SPINdle. Όπως και οι προηγούμενοι πράκτορες, εκμεταλλεύονται τη σημασιολογική πληροφορία, διακρίνοντας τις λειτουργίες αισθητήρων από τις λειτουργίες οργάνων δράσης. Ενώ ο πράκτορας μπορεί να δεχθεί οποιοδήποτε κανόνα από τον χρήστη (που αποθηκεύεται στη βάση Θεωρίας Theory), υπάρχει ένας προκαθορισμένος μετασχηματισμός από τις σημασιολογικές έννοιες σε αντίστοιχες υπηρεσίες, ώστε να ανακτώνται τα γεγονότα και να εφαρμόζονται οι ενέργειες. Για παράδειγμα, μία συνθήκη που έχει τύπο Temperature μεταφράζεται σε μία κλήση αισθητήρα με έξοδο Temperature. Οι μετασχηματισμοί αυτοί γίνονται κατά τις διαδικασίες της προ-επεξεργασίας και μετα-επεξεργασίας (pre- and post-processing). Ωστόσο, για τις ανάγκες μίας αποτελεσματικής πιλοτικής εφαρμογής στον πραγματικό κόσμο, δεν αρκεί ο μεμονωμένος πράκτορας. Συγκεκριμένα, εξαιτίας έκτακτων ή σπάνιων συμβάντων εκτός προγράμματος κατά τη διάρκεια συνεχούς λειτουργίας όλο το εικοσιτετράωρο για επτά μέρες την εβδομάδα, υπάρχει η ανάγκη να παρακαμφθεί το σύστημα κανόνων. Γενικά, το πιλοτικό σύστημα θα πρέπει να είναι αξιόπιστο, εύχρηστο και διαθέσιμο κάθε στιγμή όσο εφαρμόζει τις πολιτικές εξοικονόμησης. Το να προσφέρεται ένας τέτοιος μηχανισμός παράκαμψης των κανόνων βοηθά επίσης τους χρήστες που δεν είναι εξοικειωμένοι με την τεχνολογία να νιώσουν πιο σίγουροι κατά τη διάρκεια του πειράματος. Επομένως, οι χρήστες θα πρέπει να μπορούν να ρυθμίσουν και να διαχειριστούν τους κανόνες, με πολύ φιλικό τρόπο. Επίσης, θα πρέπει να μπορούν να διαχειριστούν τις συσκευές απευθείας, πιθανώς παρακάμπτοντας τους κανόνες. Σύμφωνα με τις παραπάνω απαιτήσεις, σχεδιάστηκαν δύο εφαρμογές που συνυπάρχουν στο σύστημα, με όνομα Manager App και Rule App. Κατά την πιλοτική εφαρμογή, σε κάθε στιγμιότυπο των εφαρμογών ανατίθεται ένα υποσύνολο των δωματίων του κτιρίου και ένας υπάλληλος-διαχειριστής από αυτά τα δωμάτια. Τα στιγμιότυπα δεν επεμβαίνουν σε δωμάτια εκτός της δικαιοδοσίας τους. Ωστόσο, για άλλες περιπτώσεις που χρειάζεται συνεργασία πρακτόρων π.χ. για συντονισμό κεντρικής ψύξης, ένα σενάριο συνεργασίας των πρακτόρων με έναν κεντρικό πράκτορα έχει εξεταστεί στην εργασία (Stavropoulos et al., 2014c) 239

240 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Γραφικό περιβάλλον της εφαρμογής Manager App, όπου προβάλλεται λίστα συσκευών στα αντίστοιχα δωμάτια και προσφέρονται λειτουργίες On και Off για αυτές Η εφαρμογή Manager App επιτρέπει τη χειροκίνητη διαχείριση των συσκευών παρακάμπτοντας τις πολιτικές. Το γραφικό περιβάλλον της εφαρμογής φαίνεται στην Εικόνα Αρχικά, η εφαρμογή ανακτά τα δωμάτια που της έχουν ανατεθεί και τις αντίστοιχες συσκευές από την κεντρική οντολογία του κτιρίου. Οι χρήστες μπορούν στη συνέχεια να διαλέξουν ο- ποιαδήποτε ηλεκτρική συσκευή από τη δενδρική δομή στα αριστερά και να την ενεργοποιήσουν ή να την απενεργοποιήσουν απευθείας. Στα δεξιά προβάλλεται η λίστα των τελευταίων ενεργειών και συμβάντων. Από την άλλη, η εφαρμογή Rule App είναι αισθητά πιο περίπλοκη. Σκοπός της είναι να διαχειρίζεται αυτόματα την υποδομή εφαρμόζοντας συνεχώς τις πολιτικές. Αρχικά, φορτώνονται τα σχετικά δωμάτια και οι συσκευές από την κεντρική οντολογία, αλλά και οι αισθητήρες περιβαλλοντικών συνθηκών και ενέργειας. Η Rule App ενσωματώνει ένα στιγμιότυπο του υβριδικού πράκτορα, στον οποίο προωθεί τη ροή δεδομένων αισθητήρων μετά από προ-επεξεργασία, ως γεγονότα. Ο πράκτορας εφαρμόζει συλλογιστική και ενεργεί ανάλογα με τους κανόνες που πυροδοτούνται μέσω του πελάτη Υπηρεσιών Ιστού. Το γραφικό περιβάλλον της εφαρμογής, όπως φαίνεται στην Εικόνα 6.16, επιτρέπει στους χρήστες να ρυθμίζουν τις πολιτικές κάθε στιγμή, αλλά με αφαιρετικό και φιλικό τρόπο. Δηλαδή, δεν είναι απαραίτητο να συγγράφουν κανόνες, παρά μόνο να επιλέγουν προκαθορισμένους κανόνες, να ρυθμίζουν τις τιμές κατωφλίου και τη συχνότητα ελέγχου. Στο αριστερό μέρος της εφαρμογής ο χρήστης επιλέγει το δωμάτιο που θέλει να χειριστεί και κατόπιν προβάλλονται στο κεντρικό, πάνω μέρος οι μετρήσεις για αυτό σε πραγματικό χρόνο. Στο 240

241 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα Γραφικό περιβάλλον εφαρμογής Rule App όπου προβάλλεται η λίστα των διαθέσιμων δωματίων, οι τρέχουσες μετρήσεις σε πραγματικό χρόνο, οι ενεργοί κανόνες και ρυθμίσεις, καθώς και οι τελευταίες ενέργειες. κεντρικό, κάτω μέρος προβάλλονται οι κανόνες σε ισχύ για το επιλεγμένο δωμάτιο, που μπορούν να ρυθμιστούν και να ενεργοποιηθούν ή να απενεργοποιηθούν. Στο δεξί μέρος εμφανίζονται όλα τα συμβάντα και οι ενέργειες της εφαρμογής. Έτσι, κατά την πιλοτική εφαρμογή του συστήματος, προσφέρονται στους χρήστες δύο τρόποι για να προσαρμόσουν το σύστημα στις ανάγκες τους. Πρωτίστως, μπορούν να ρυθμίσουν τις τιμές κατωφλίου ενός κανόνα ή ακόμα και να τον απενεργοποιήσουν τελείως με χρήση του Rule App. Σε περίπτωση που αυτό δεν είναι αρκετό, μπορούν να παρακάμψουν τις αποφάσεις του Rule App και του πράκτορα με χρήση της Manager App και να διαχειριστούν απευθείας το περιβάλλον. Το όφελος από τη χρήση αυτών των εφαρμογών σε σχέση με τις προηγούμενες ε- φαρμογές κανόνων Wintermute και DeL, είναι η βελτιωμένη φιλικότητα στο χρήστη και η συνύπαρξη αντιδραστικής και διαβουλευτικής συμπεριφοράς, που τις κάνουν κατάλληλες για πιο αξιόπιστη πιλοτική λειτουργία. Οι προηγούμενες εφαρμογές πρακτόρων προορίζονταν για χρήση από ειδήμονες του συστήματος με γνώση κανόνων, άρα τους επιτρέπονταν η προβολή και ο πλήρης έλεγχος του συνόλου κανόνων, τόσο στην παραγωγική όσο και στην αναιρέσιμη λογική. Αντίθετα, η Rule App είναι σχεδιασμένη για το προσωπικό του κτιρίου και περιέχει ένα προκαθορισμένο σύνολο πολιτικών και ένα φιλικό γραφικό περιβάλλον για την ελεγχόμενη παραμετροποίησή του. Στην ουσία, ενσωματώνει έναν υβριδικό πράκτορα με προκαθορισμένους κανόνες και δεδομένες μετατροπές από σημασιολογικές έννοιες. Οι χρήστες μπορούν να αλλάξουν μόνο τα αριθμητικά κατώφλια των κανόνων, αλλά όχι τους 241

242 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη τύπους των ορισμάτων συνδεδεμένων με σημασιολογία. Το τρέχον σύνολο της εφαρμογής παρουσιάζεται στην ενότητα 6.4.2, στην αξιολόγηση του πράκτορα. Πέρα από την εφαρμογή πολιτικών εσωτερικά του συστήματος, ο πράκτορας χρησιμοποιείται και ως διεπαφή του με τον εξωτερικό κόσμο και το Smart Grid (Έξυπνο Πλέγμα ηλεκτροδότησης). Αυτό γίνεται μέσω του προσφάτως ανεπτυγμένου πρωτοκόλλου OpenADR (McParland, 2011), που χρησιμεύει ως κοινή γλώσσα επικοινωνίας μεταξύ δικτύων έξυπνων οργάνων δράσης για την παροχή υπηρεσιών DR (αίτησης-απόκρισης - Demand Response). Συγκεκριμένα, στο OpenADR μεταδίδονται σήματα τιμολόγησης από έναν κεντρικό server (τον πάροχο DR) στις τερματικές συσκευές, υλοποιώντας μία αρχιτεκτονική πελάτη-εξυπηρετητή. Ο server καλείται αλλιώς VTN (Virtual Top Node), ενώ οι έξυπνες τερματικές συσκευές καλούνται VENs (Virtual End Nodes). Τα σήματα στο OpenADR ενθυλακώνουν πληροφορίες σχετικές με την ώρα έναρξης και λήξης του DR συμβάντος, αλλά και την τιμολόγηση ή εναλλακτικά το κατώφλι ενέργειας για διακριτές χρονικές στιγμές. Η επικοινωνία του πράκτορα του Έξυπνου Κτιρίου με τον εξωτερικό πάροχο μέσω OpenADR φαίνεται στην Εικόνα 6.2. Για την υλοποίησή της, αναπτύχθηκε εσωτερικά του πράκτορα μία διεπαφή OpenADR που λαμβάνει τα σήματα και ένας μεταφραστής των OpenADR σημάτων σε γεγονότα-στόχους. Σε αυτή την αρχιτεκτονική, ο πράκτορας μπορεί να λάβει υ- πόψιν τους στόχους που δέχεται και να μπει σε ανάλογη κατάσταση εξοικονόμησης, κλείνοντας τις ευέλικτες συσκευές. 6.4 Αποτελέσματα Πιλοτικών Εφαρμογών στο Έξυπνο Κτίριο Στα πλαίσια αξιολόγησης του συστήματος πραγματοποιήθηκαν πειράματα σε δύο φάσεις. Στην πρώτη, εφαρμόστηκαν πιλοτικά οι πράκτορες Wintermute και DeL χωρίς την επέμβαση χρηστών, με μη-παρεμβατικούς κανόνες και σε διαφορετικά χρονικά παράθυρα. Στη δεύτερη φάση, εφαρμόστηκαν ο υβριδικός πράκτορας και οι εφαρμογές Rule App και Manager App σε ένα πιο ρεαλιστικό σενάριο, με έλεγχο από πραγματικούς χρήστες. Οι δύο φάσεις εξετάζονται στις επόμενες δύο ενότητες Πράκτορες Wintermute και DeL Προτού εφαρμοστούν οι πολιτικές των πρακτόρων Wintermute και DeL, εξετάστηκαν τα μοτίβα κατανάλωσης του κτιρίου και έγινε μία προσπάθεια να συσχετιστούν με δεδομένες παραμέτρους, όπως ο καιρός και οι δραστηριότητες. Χρησιμοποιώντας τις εφαρμογές παρακολούθησης είναι φανερό πως η συνολική κατανάλωση προέρχεται α) κατά 50% από το Data Center και β) από τις υπόλοιπες συσκευές συμπεριλαμβανομένου του εξοπλισμού γραφείου, φωτισμού, ψύξης και θέρμανσης. Η πιο εμφανής απώλεια ενέργειας συμβαίνει, όσο και να φαίνεται παράδοξο, μεταξύ 6 π.μ. με 8 π.μ., όταν το προσωπικό δεν έχει ακόμα εισέλθει στο κτίριο. Η Εικόνα 6.17 δείχνει ένα τυπικό καθημερινό μοτίβο τουλάχιστον για το διάστημα 11 με 18 Ιουνίου Κατά τις δύο αυτές ώρες η μοναδική δραστηριότητα είναι η επίσκεψη του συνεργείου καθαρισμού και η επίβλεψη από τη φύλαξη, που προκαλούν τη μεγάλη αύξηση κατανάλωσης. Το συνεργείο συνηθίζει να αφήνει τα φώτα ανοιχτά ενόσω μπαίνει και 242

243 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα Κατανάλωση του κτιρίου, του Data Center και των συσκευών κατά την έναρξη του πειράματος. Η εγκατάσταση του συστήματος στις 15 Ιουλίου είχε σαν αποτέλεσμα την εξάλειψη της πρωινής σπατάλης ενέργειας, η οποία επισημαίνεται στο σχήμα, κατά τον χρόνο δράσης του αντιδραστικού πράκτορα. βγαίνει από τα δωμάτια. Τα φώτα, όμως, είναι αρκετά απαιτητικά ενεργειακά και οφείλουν να μένουν απενεργοποιημένα όσο το δυνατόν περισσότερο. Αυτό επιτυγχάνεται μέσω συνεχούς ανίχνευσης κίνησης στα δωμάτια. Επομένως, η αξιολόγηση που προτάθηκε, στηρίζεται σε μια σύνθετη μέθοδο. Κάθε ένας από τους δύο πράκτορες αναλαμβάνει ένα διαφορετικό, διακριτό χρονικό παράθυρο μέσα στη μέρα, σύμφωνα με τις ικανότητές του. Με αυτό τον τρόπο ο κάθε πράκτορας συμπληρώνει τον άλλο, παρότι δεν μπορούν να επικοινωνήσουν. Ο αντιδραστικός πράκτορας Wintermute εξοπλίζεται με ένα κατάλληλο, περιορισμένο σύνολο κανόνων για την πρωινή σπατάλη, ενώ ο διαβουλευτικός πράκτορας DeL αναλαμβάνει σύνθετα καθήκοντα για την υπόλοιπη διάρκεια της μέρας. Ο αντιδραστικός πράκτορας Wintermute είναι ο πλέον κατάλληλος για τη συχνή α- νάκτηση και ανταπόκριση σε περιορισμένο αριθμό μετρήσεων, όπως η ανίχνευση κίνησης στα δωμάτια. Μία τεχνική λεπτομέρεια είναι ότι το σύστημα των αισθητήρων είναι pullbased, δηλαδή απαιτεί συνεχή ανάκτηση για την ενημέρωση των πρακτόρων. Έτσι, ο πράκτορας αιτείται μόνο τις απαραίτητες ενημερώσεις, όσο πιο σπάνια γίνεται, ώστε οι πόροι του συστήματος να παραμένουν ελεύθεροι και να μπορεί να συνυπάρξει με άλλες εφαρμογές. Αυτή η μικρή καθυστέρηση είναι ανεκτή στα πλαίσια τις εξοικονόμησης ενέργειας και όχι κρίσιμων εφαρμογών ασφαλείας. Από την άλλη, ο διαβουλευτικός πράκτορας DeL, κατά τη διάρκεια του πειράματος, ανέλαβε τον έλεγχο για την υπόλοιπη ημέρα, δηλαδή από τις 12μ.μ. μέχρι 6 π.μ. και από τις 8 π.μ. μέχρι 12 μ.μ. για την ίδια χρονική περίοδο, με σκοπό να επιτύχει λιγότερη σπατάλη ενέργειας από κατάχρηση εξοπλισμού γραφείου και ψύξης. Ο DeL είναι κατάλληλος για αυτό 243

244 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Εικόνα Μέση ωριαία κατανάλωση ανά ημέρα (σε Wh) για όλο το εικοσιτετράωρο, το παράθυρο διαβούλευσης και το παράθυρο αντιδραστικότητας. τον σκοπό, αφού ο χειρισμός του φωτισμού θα πρέπει να συμβαίνει μετά από αρκετές μετρήσεις και σταθεροποίηση τιμών, για να είναι βέβαιο ότι κάποιος παραδείγματος χάρη έχει φύγει από το κτίριο. Όλο το πείραμα διήρκησε από τις 15/6/2013 μέχρι τις 26/6/2013, ενώ ένα ίσο διάστημα, αυτό των προηγούμενων 10 ημερών (5/6/2013 to 14/6/2013), χρησιμοποιήθηκε ως σημείο αναφοράς, ώστε να διασφαλιστεί η μέγιστη ομοιότητα καιρικών και άλλων συνθηκών. Κατά το διάστημα αυτό, δεν υπήρξαν σημαντικές αλλαγές στο κλίμα, ούτε στην ανατολή του ηλίου που επηρεάζει το διάστημα 6 π.μ. έως 8 π.μ. και τις ακαδημαϊκές δραστηριότητες. Όπως φαίνεται στην Εικόνα 6.17, η πρωινή κορύφωση της κατανάλωσης κατά το αντιδραστικό παράθυρο εξαλείφθηκε τελείως κατά το πείραμα, εξασφαλίζοντας 41% εξοικονόμηση κατά τις ώρες αυτές. Αυτό το ποσό ενέργειας ισούται με Wh κατά μέσο όρο ημερησίως, και αντιστοιχεί στο 4% της ημερήσιας κατανάλωσης στο παρελθόν ( Wh). Ωστόσο, τα πειραματικά αποτελέσματα είναι λιγότερο αισιόδοξα για τον πράκτορα DeL, ο οποίος δεν σημείωσε αισθητή εξοικονόμηση. Ενώ ο πράκτορας πήρε αποφάσεις και διαχειρίστηκε τις συσκευές, το συσσωρευμένο ποσό ενέργειας δεν είναι αρκετά αισθητό στο σύνολο του κτιρίου. Όπως αναφέρθηκε, δεν υπήρξαν αλλαγές στο χρονοδιάγραμμα των υ- παλλήλων, που σημαίνει ότι όλοι οι υπάλληλοι βρίσκονταν στα γραφεία τους χρησιμοποιώντας τον εξοπλισμό συνεχώς. Επομένως, δεν ήταν δυνατό να εξοικονομηθεί ενέργεια, αλλά, από την άλλη, ο πράκτορας διαβεβαίωσε πως δεν υπήρξε σπατάλη. Η Εικόνα 6.18 δείχνει την μέση ωριαία κατανάλωση ανά ημέρα, για όλο το εικοσιτετράωρο, και για κάθε χρονικό παράθυρο ξεχωριστά. Πάλι είναι φανερή η εξοικονόμηση ενός μεγάλου ποσού ενέργειας μετά τις 15/06/2013. Ενδιαφέρον παρουσιάζει το γεγονός ότι η εξοικονόμηση από το μικρό παράθυρο των δύο ωρών έχει αισθητή επίδραση στο σύνολο της ημέρας. Σημειώνεται ότι οι πράκτορες λειτούργησαν σε αμοιβαίως αποκλειόμενο τρόπο, δηλαδή σε κάθε χρονική στιγμή λειτουργεί μόνο ένας πράκτορας. 244

245 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Συνολικά, η πειραματική ενσωμάτωση των πρακτόρων στο Έξυπνο Κτίριο εγγυάται τουλάχιστον 4% ημερήσια εξοικονόμηση (σε σχέση με τις μετρήσεις ενός χρόνου) ή 2% αν συμπεριληφθεί και το Data Center. Το ποσό αυτό είναι ιδιαίτερα μεγάλο αν σκεφτεί κανείς ότι το κτίριο του πανεπιστημίου καταναλώνει περίπου 438.2kWh την ημέρα (μέσος όρος της χρονιάς ), ποσό από το οποίο το μισό ανήκει στο Data Center (221.5kWh). Το 4% αυτής της ενέργειας μπορεί να εξισωθεί με τη συνολική ημερήσια απαίτηση ενός μικρού νοικοκυριού. Ως τελευταία παρατήρηση, αναφέρεται ότι το ποσό εξοικονόμησης είναι απλώς ανάλογο του ποσού που κατασπαταλάται εξαρχής. Το σύστημα δεν εγγυάται πάντα μεγάλα ποσοστά εξοικονόμησης, αν δεν υπάρχει σπατάλη. Αντίθετα, όμως, μπορεί να εγγυηθεί την αυτόνομη εφαρμογή των πολιτικών εξοικονόμησης και την εξάλειψη σπατάλης με βάση αυτές. Κρίσιμα συμπεράσματα από αυτό το πείραμα οδήγησαν στη βελτίωσή του με τη χρήση του υβριδικού πράκτορα που παρουσιάζεται στην επόμενη ενότητα. Συγκεκριμένα: 1) Ο πράκτορας DeL διέθετε ένα μη παρεμβατικό σύνολο κανόνων, καθώς δεν ήταν δυνατή η παραμετροποίησή του από τους απλούς χρήστες. Επομένως, κάνοντας τον πράκτορα πιο παραμετροποιήσιμο και διαδραστικό, μπορεί να αυξηθεί η δικαιοδοσία του, με ασφάλεια προς τους χρήστες. Αυτό ακριβώς γίνεται μέσα από τις εφαρμογές Rule App και Manager App, οι οποίες πετυχαίνουν τελικά εξοικονόμηση ακριβώς στο παράθυρο διαβούλευσης του πράκτορα DeL 2) Η ελάχιστη εξοικονόμηση που πέτυχε ο πράκτορας είναι δύσκολο να εντοπιστεί στη μεγάλη κλίμακα παρατήρησης ολόκληρου του κτιρίου. Επίσης, είναι δύσκολο να ε- κτιμηθεί, τουλάχιστον στη φάση του πειράματος, δηλαδή να διασφαλιστεί ότι οφείλεται όντως στον πράκτορα και όχι σε κάποια συγκυρία. Για αυτό τον λόγο, το επόμενο πείραμα περιορίστηκε σε ένα μόνο δωμάτιο, ώστε να εκτιμηθούν με ασφάλεια τα αποτελέσματα Υβριδικός Πράκτορας, Rule App και Manager App Σκοπός αυτού του πειράματος ήταν η αξιολόγηση του συστήματος που περιλαμβάνει το Rule App με τον ενσωματωμένο υβριδικό πράκτορα και το Manager App ως προς την παρακολούθηση και αυτόνομη εξοικονόμηση ενέργειας, ενώ διασφαλίζεται ο βαθμός αποδοχής του από τους τελικούς χρήστες, σε συνθήκες πραγματικού κόσμου (Stavropoulos et al., 2015b). Για αυτό τον λόγο, η αξιολόγηση εστιάζει στη ρεαλιστική εφαρμογή των κανόνων που έχουν γραφεί από ειδήμονες του πεδίου και όχι σε προσομοίωση σημάτων αίτησης-απόκρισης από παρόχους, διότι δεν υπάρχουν τέτοιοι πάροχοι στην πραγματικότητα. Επομένως, η λειτουργία των OpenADR σημάτων είναι ανενεργή στη διάρκεια του πειράματος. Οι εφαρμογές Rule App και Manager App εγκαταστάθηκαν στο κτίριο του Διεθνούς Πανεπιστημίου Ελλάδος, ώστε να εφαρμόσουν πιλοτικά τις πολιτικές εξοικονόμησης. Πριν από αυτό, η συνδυαστική χρήση των εφαρμογών παρακολούθησης idealism και Smart IHU Portal επέτρεψε σε ειδήμονες αφενός να συνθέσουν τις πολιτικές εξοικονόμησης και αφετέρου να μετρήσουν την ενέργεια πριν το πείραμα και την εξοικονόμηση μετά το πείραμα. Συγκεκριμένα, το idealism προσέφερε τις μετρήσεις ανά ηλεκτρική συσκευή και τη συσχέτιση με τις περιβαλλοντικές συνθήκες, όπως η φωτεινότητα και η θερμοκρασία, ενώ το Smart IHU 245

246 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Portal χρησιμοποιήθηκε για να μετρηθούν η κατανομή της κατανάλωσης ανά είδος συσκευής και η εξοικονόμηση. Συγκεκριμένα, η κατανομή της ενέργειας μέσα στο κτίριο έχει ήδη αποκαλύψει ότι ένα μεγάλο ποσοστό της ημερήσιας κατανάλωσης αποδίδεται σε παράγοντες που δεν αντιμετωπίζονται επί της παρούσης, όπως η κεντρική ψύξη, το Data Center και το κυλικείο. Αυτοί οι παράγοντες θα μπορούσε να μην προσμετρηθούν στην προσπάθεια για εξοικονόμηση. Ε- πιπλέον, το προηγούμενο πείραμα έχει ήδη δείξει ότι η προσπάθεια εξοικονόμησης σε επίπεδο ολόκληρου του κτιρίου είναι δύσκολο να μετρηθεί και να αξιολογηθεί. Για αυτό, επιλέχθηκε να στοχευθεί το ελεγχόμενο περιβάλλον ενός δεδομένου γραφείου, για παράδειγμα του γραφείου ακαδημαϊκών βοηθών της Σχολής Επιστήμης και Τεχνολογίας. Η εγκατάσταση ηλεκτρικών συσκευών, αισθητήρων και οργάνων δράσης σε αυτό το γραφείο φαίνεται στην Εικόνα Για να εξασφαλιστεί η επεκτασιμότητα της μεθόδου σε ολόκληρο το κτίριο, αλλά και η αντιστοιχία των αποτελεσμάτων σε άλλα γραφεία, έγινε σαφές ότι το συγκεκριμένο γραφείο δεν παρουσιάζει ιδιαιτερότητες σε σχέση με τα άλλα σε ό,τι αφορά εξοπλισμό και ώρες εργασίας. Πιο λεπτομερής παρακολούθηση σε σχέση με τις περιβαλλοντικές συνθήκες αποκάλυψε πως γίνεται σπατάλη ενέργειας για φωτισμό και ψύξη/θέρμανση. Σε κάποια γραφεία, οι αισθητήρες θερμοκρασίας έχουν καταγράψει συστηματικά ακραίες τιμές, όπως 30 τον χειμώνα και 20 το καλοκαίρι, πράγμα που καταδεικνύει την κατάχρηση της ψύξης/θέρμανσης πέρα από το επίπεδο άνεσης. Επίσης, ο φωτισμός είναι συνεχώς ενεργός κατά τις ώρες εργασίας, ενώ οι αισθητήρες φωτεινότητας αναφέρουν ικανοποιητικά επίπεδα φυσικού φωτισμού κοντά στο παράθυρο. Λαμβάνοντας υπόψιν την άνεση του χρήστη, συντέθηκαν οι κανόνες θερμοκρασίας και φωτεινότητας, επιτρέποντας στον χρήστη να θέσει ένα επιθυμητό κατώφλι τιμής για κάθε μία από αυτές τις μετρήσεις. Αν το επιθυμητό επίπεδο φωτεινότητας έχει επιτευχθεί, ενδεχομένως από φυσικό φωτισμό, ο φωτισμός μένει απενεργοποιημένος. p01: luminance(x, Y), Y >= 700 -> daytime(x) p02: luminance(x, Y), Y < 700 -> daytime(x) p03: daytime(x) => switchoff(x, light) p04: daytime(x) => switchon(x, light) Όπως αναφέρθηκε στην ενότητα 6.3.2, οι κανόνες εκφράζονται σε FOL. Για παράδειγμα, ο κανόνας p01 μπορεί να ερμηνευτεί ως εξής: Όποτε η φωτεινότητα σε ένα δωμάτιο είναι πάνω από 700 cd/m2, τότε το σύστημα θα πρέπει να συμπεράνει ότι είναι μέρα στο συγκεκριμένο δωμάτιο. Ενώ χωρίς το πρακτορικό σύστημα η θέρμανση και η ψύξη υπερλειτουργούσαν λόγω κεντρικού θερμοστάτη στο κτίριο, τώρα λειτουργούν με ένα κατώφλι που θέτει ο χρήστης με τους κανόνες που ακολουθούν: p05: temp(x, Y), Y < 20 -> templow(x) p06: temp(x, Y), Y >= 20 -> templow(x) p07: templow(x) => switchon(x, heater) p08: templow(x) => switchoff(x, heater) 246

247 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Ένα ακόμα φαινόμενο που παρατηρήθηκε ήταν ότι οι εκτυπωτές, οι σαρωτές, τα fax και τα πολυμηχανήματα μπαίνουν σε διαδικασία αναμονής και συντήρησης και καταναλώνουν μεγάλα ποσά ενέργειας μέρα και νύχτα. Επιπλέον, έχουν υπάρξει περιπτώσεις όπου οι χρήστες αφήνουν τα φώτα ανοιχτά κατά τη διάρκεια της νύχτας. Τα παραπάνω οδήγησαν στη δημιουργία ενός κανόνα κίνησης, ο οποίος απενεργοποιεί φώτα και εκτυπωτές όταν δεν υ- πάρχει κίνηση σε ένα δωμάτιο για διάστημα μεγαλύτερο από το προκαθορισμένο κατώφλι, ώστε να αποφευχθούν οι απώλειες σε κατάσταση αναμονής, συντήρησης και λόγω παράλειψης από λάθος. Εικόνα Εγκατάσταση ηλεκτρικών συσκευών, αισθητήρων και οργάνων δράσης στο γραφείο ακαδημαϊκών βοηθών της Σχολής Επιστήμης και Τεχνολογίας p09: motion(x, Y), Y > 30 -> roomempty(x) p10: roomempty(x) => switchoff(x, printer) p11: roomempty(x) => switchoff(x, light) Τέλος, ένας κανόνας ο οποίος εμπνεύστηκε από τις ιδέες του Smart Grid, επιτρέπει τον ορισμό ενός συνολικού κατωφλίου ενέργειας ανά δωμάτιο. Σε περίπτωση που ξεπεραστεί το κατώφλι, απενεργοποιούνται όλες οι ευέλικτες συσκευές, που στο συγκεκριμένο κτίριο είναι ο φωτισμός και η ψύξη/θέρμανση. Αυτός ο κανόνας βοηθά να ικανοποιηθούν πιθανές αιτήσεις του παρόχου ενέργειας, για παράδειγμα μέσω του πρωτοκόλλου OpenADR, ώ- στε να μειώνεται η κατανάλωση κατά απαίτηση. p12: consumption(x, Y), Y > 370 -> saving-mode(x) p13: savingmode(x) => switchoff(x, heater) Οι τιμές κατωφλίου για όλους τους κανόνες έχουν τεθεί σε διαισθητικές τιμές για τον φωτισμό (700 cd/m2), τη θερμοκρασία (20 ο C), και τον χρόνο ανοχής για την απουσία κίνησης (30 ). Το προσωποποιημένο κατώφλι ενέργειας για το δωμάτιο έχει τεθεί σε τέτοιο επίπεδο ώστε να μπορεί να χρησιμοποιηθεί ο απαραίτητος εξοπλισμός (370W). 247

248 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Το πλήρες σύνολο κανόνων βρίσκεται διαθέσιμο στο διαδίκτυο μαζί με οδηγίες 76, σε σύνταξη SPINdle. Περιέχει προκαθορισμένες, ενδεικτικές τιμές κατωφλίου για τη φωτεινότητα, τη θερμοκρασία, την κίνηση και το σύνολο ενέργειας, όπως αυτές δίνονται παραπάνω, και ένα σύνολο από τιμές εισόδου έτσι ώστε το παράδειγμα να είναι επιδείξιμο. Το σύνολο κανόνων μπορεί να εκτελεσθεί είτε εκτός σύνδεσης, με χρήση της βιβλιοθήκης SPINdle, είτε στη διαδικτυακή έκδοση του SPINdle 77. Η διάρκεια του πειράματος ήταν δύο εβδομάδες και συγκεκριμένα από τις 8 Μαΐου 2014 μέχρι τις 21 Μαΐου Κατά τη διάρκεια αυτής της περιόδου το προσωπικό του γραφείου είχε πρόσβαση τόσο στη Manager App, όσο και στη Rule App, από ένα laptop διαθέσιμο κάθε στιγμή. Μπορούσε ελεύθερα να ρυθμίσει τις τιμές κατωφλίου και να ενεργοποιήσει ή να απενεργοποιήσει πολιτικές. Για να μετρηθεί η εξοικονόμηση, τέθηκε ένα σημείο α- ναφοράς (baseline) της μέσης ημερήσιας κατανάλωσης, όπως αυτή μετρήθηκε για χρονικό διάστημα ίσης διάρκειας (δύο εβδομάδων). Η περίοδος του σημείου αναφοράς όφειλε να προσομοιώνει τις περιβαλλοντικές συνθήκες, όπως τον καιρό και την ανθρώπινη παρουσία, όσο το δυνατόν περισσότερο. Επομένως, το σημείο αναφοράς ημερήσιας κατανάλωσης μετρήθηκε για τις δύο εβδομάδες πριν το πείραμα, δηλαδή από τις 24 Απριλίου μέχρι τις 7 Μαΐου Φυσικά, η διάρκεια του πειράματος θα μπορούσε να είναι μεγαλύτερη. Όμως, η ό- ποια παράταση της διάρκειάς του για παραπάνω από έναν μήνα, το πιθανότερο θα ήταν να υπονομεύσει τη βεβαιότητα εξαγωγής συμπερασμάτων. Αυτό συμβαίνει λόγω των πολλών, σημαντικών μεταβολών των συνθηκών που προκύπτουν σε διάστημα περίπου ενός μήνα. Τέτοιες διακυμάνσεις συμβαίνουν κυρίως α) κατά την προσέλευση στο γραφείο, λόγω αλλαγών στο χρονοδιάγραμμα διαλέξεων και κυρίως εκδηλώσεων και β) στη χρήση της κεντρικής θέρμανσης και ψύξης, λόγω των αλλαγών των καιρικών συνθηκών. Αξίζει να σημειωθεί ότι το σύστημα συνέχισε να λειτουργεί και να σώζει ενέργεια μετά το πέρας του πειράματος. Όμως, με βάση τα παραπάνω, δεν είναι ασφαλής η σύγκριση και η μέτρηση εξοικονόμησης, εφόσον οι συνθήκες έχουν αλλάξει. Με δεδομένες τις αλλαγές, θα έπρεπε να αναμετρηθεί το σημείο αναφοράς για κάθε παρόμοια περίοδο, για παράδειγμα κάθε μήνα, διακόπτοντας και επανεκκινώντας το πείραμα. Για αυτό τον λόγο, βεβαιωθήκαμε ότι κατά την επιλεγμένη περίοδο μέτρησης του σημείου αναφοράς και εξοικονόμησης δεν υπήρξαν σημαντικές μεταβολές καιρού και παρουσίας στο γραφείο. Στο μέλλον, μπορεί να στηθεί μία πιο μεθοδική και μεγαλύτερης διάρκειας μελέτη όπως στην εργασία (Kumar et al., 2013). Η Εικόνα 6.20 δείχνει τη μέση ημερήσια κατανάλωση ενέργειας ανά ώρα, μεμονωμένα για κάθε είδος συσκευής (φώτα Lights, εκτυπωτές Printers, ψύξη/θέρμανση Fan Coils και υπολογιστές PCs), τόσο πριν (σημείο αναφοράς baseline), όσο και κατά τη διάρκεια του πειράματος (experiment). Αρχικά για τα φώτα, οι κανόνες κίνησης, p09 και p11, Ruleset: 77 SPINdle demo:

249 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο Εικόνα Μέση ημερήσια κατανάλωση ενέργειας ανά ώρα για τις τέσσερις ομάδες συσκευών (φώτα, εκτυπωτές, ψύξη/θέρμανση και υπολογιστές) πριν (σημείο αναφοράς) και κατά τη διάρκεια του πειράματος κατάφεραν να εξαλείψουν την πρωινή σπατάλη ενέργειας από τις 6 π.μ. μέχρι τις 8 π.μ. Αυτή η σπατάλη οφειλόταν στο συνεργείο συντήρησης του κτιρίου, το οποίο αφήνει ανοιχτά τα φώτα ενόσω κινείται σε όλο το κτίριο και αναλογεί περίπου στο 1% της ημερήσιας κατανάλωσης του γραφείου. Πέρα από αυτό, δεν υπήρξε άλλη ουσιαστική μεταβολή στα φώτα, ό- μως με το σύστημα υπάρχει η βεβαιότητα ότι κανείς δε θα ξεχάσει τα φώτα ανοιχτά τη νύχτα, όταν το γραφείο είναι άδειο. Όσον αφορά τους εκτυπωτές, τα fax και τα πολυμηχανήματα, οι ίδιοι κανόνες κίνησης, p09 και p10, επέφεραν αξιοσημείωτη εξοικονόμηση, αφού εξαλείφουν την κατανάλωση αναμονής του εκτυπωτή κατά τη διάρκεια της νύχτας. Εφόσον οι εκτυπωτές καταναλώνουν περίπου την ίδια ενέργεια σε αναμονή, εκτός από όταν χρησιμοποιούνται ή συντηρούνται περιοδικά, η εξοικονόμηση κατά το διάστημα αδράνειας, μεταξύ 12 μ.μ. και 6 π.μ., αναλογούν στο 15% της κατανάλωσης του δωματίου. Συνολικά, η εξοικονόμηση από αυτές τις δύο συσκευές αγγίζει το 16%. Βέβαια, κάποιοι κανόνες δεν κατάφεραν να εξοικονομήσουν ενέργεια. Συγκεκριμένα, οι κανόνες φωτεινότητας, p01-p04, οι οποίοι ενεργοποιούν ή απενεργοποιούν τα 249

250 Υπηρεσίες Ιστού στη Διάχυτη Νοημοσύνη Πίνακας 6.2. Εξοικονόμηση από την πειραματική εφαρμογή του συστήματος ανά ελεγχόμενη συσκευή, σύνολο συσκευών και σύνολο δωματίου φώτα ανάλογα με την προτίμηση, δεν πυροδοτήθηκαν, αφού το φυσικό φως στο συγκεκριμένο γραφείο δεν επαρκεί. Έτσι, ο φωτισμός έμεινε συνεχώς αναμμένος κατά τις ώρες εργασίας. Σε μελλοντική εργασία, αυτός ο κανόνας μπορεί να γίνει πιο αποδοτικός με την εγκατάσταση dimmer (ροοστάτη) που εξοικονομεί ενέργεια ανάλογα με το επίπεδο φωτός. Ομοίως, οι κανόνες ψύξης/θέρμανσης, p05-p08, δεν ήταν ιδιαίτερα αποδοτικοί. Πρώτον, η ίδια η κατανάλωση της συσκευής ψύξης/θέρμανσης (fan coil) είναι σχεδόν μηδενική, αφού ευθύνεται για το 0.1% του συνόλου του δωματίου. Γενικότερα στο κτίριο, το ζήτημα της κεντρικής ψύξης και θέρμανσης χρήζει συνολικότερης αντιμετώπισης, είτε μέσω μίας κεντρικής διαχείρισης και συντονισμού, όπως αναπτύχθηκε εδώ (Stavropoulos et al., 2014c), είτε μέσω κατασκευαστικών λύσεων, αφού ευθύνεται για μεγάλο ποσοστό της κατανάλωσης του κτιρίου. Τέλος, οι υπολογιστές δε συμμετέχουν στον αυτοματισμό, λόγω της σημαντικότητας τους και της μη παρεμβατικότητας του συστήματος, αλλά παρουσιάζονται ενδεικτικά για λόγους πληρότητας. Ο Πίνακας 6.2 συνοψίζει τις αριθμητικές μετρήσεις ενέργειας από το πείραμα ανά συσκευή. Η δεύτερη στήλη εμφανίζει τη μέση μέτρηση κατανάλωσης όσο η συσκευή είναι ανοιχτή ( On Consumption) για κάθε ελεγχόμενη συσκευή. Το σημείο αναφοράς (Baseline) και η εξοικονόμηση κατά τη διάρκεια του πειράματος φαίνονται στις επόμενες στήλες. Επίσης, δίνεται το σύνολο των συσκευών, αλλά και το σύνολο του δωματίου. Σύμφωνα με την κατανάλωση του παρελθόντος, η κατανάλωση των ελεγχόμενων συσκευών μειώθηκε κατά 20.07%. Αν προσμετρηθούν όλες οι συσκευές του δωματίου, δηλαδή οι μετέχουσες στο πείραμα και οι μη (οι υπολογιστές), το ποσό αντιστοιχεί στο 17.30% του συνόλου κατανάλωσης του δωματίου. Είναι φανερό μέσα από τα παραπάνω διαγράμματα πως η εξοικονόμηση προέρχεται από τον αυτοματισμό και τη Rule App, καθώς το ποσό ενέργειας εξοικονομήθηκε τις ώρες μη-χρήσης του γραφείου. Με άλλα λόγια, η Manager App δε χρησιμοποιήθηκε για εξοικονόμηση, άρα δεν υπήρξαν έκτακτες περιστάσεις. Αποδεικνύεται έτσι και η μη παρεμβατικότητα και η αποδοχή του συστήματος στα πλαίσια ενός τέτοιου περιβάλλοντος εργασίας. Συνοψίζοντας, το σύστημα κατάφερε να εξοικονομήσει το 16% της ημερήσιας κατανάλωσης ενέργειας του κτιρίου. Η Εικόνα 6.21 δείχνει τη μέση συνολική ημερήσια κατανάλωση ανά είδος συσκευής, πριν και μετά το πείραμα. Η τρίτη στήλη δείχνει τη διαφορά των δύο προηγούμενων, η οποία αντιστοιχεί στο ποσό εξοικονόμησης. Η εξοικονόμηση που μετρήθηκε είναι αρκετά θετική, ειδικά αν επεκταθεί σε όλο το κτίριο, το οποίο αποτελείται από 250

251 Κεφάλαιο 6 - Ευφυείς Εφαρμογές στο Έξυπνο Κτίριο πολλά τέτοια παρόμοια δωμάτια. Σε μια τέτοια περίπτωση, το 16% της κατανάλωσης ηλεκτρικών συσκευών που θα μπορούσε να εξοικονομηθεί, αντιστοιχεί στο 6% όλου του κτιρίου σύμφωνα με τις μετρήσεις για το μήνα Ιούλιο (Εικόνα 6.7). 6.5 Συμπεράσματα Σε αυτό το κεφάλαιο παρουσιάστηκε το επίπεδο εφαρμογών, το οποίο ολοκληρώνει το σύστημα Έξυπνου Κτιρίου, συνδυάζοντας στοιχεία από όλα τα πεδία που εξετάζει η Διάχυτη Νοημοσύνη, όπως τον Σημασιολογικό Ιστό, τις Υπηρεσίες Ιστού, τους Ευφυείς Πράκτορες και το Smart Grid. Στο Έξυπνο Κτίριο, το επίπεδο ενσωμάτωσης εκθέτει δεδομένα διάχυτων αισθητήρων και λειτουργίες οργάνων δράσης μέσα από ένα ενδιάμεσο λογισμικό βασισμένο σε Υπηρεσίες Ιστού. Το σύστημα βασίζεται, επιπλέον, σε σημασιολογική διαλειτουργικότητα μέσω οντολογιών και Σημασιολογικών Υπηρεσιών Ιστού με SAWSDL. Οι εφαρμογές που εκμεταλλεύονται την παραπάνω υποδομή έχουν σχεδιαστεί με σκοπό να καλύψουν μία πληθώρα σεναρίων και περιπτώσεων χρήσης, όπως η διαχείριση και η εκτεταμένη εξωτερική παρακολούθηση της κατανομής ενέργειας. Αρχικά, η λεπτομερής παρακολούθηση γίνεται μέσω διαχειριστικών εφαρμογών, mobile και desktop, για κάθε χρήστη του κτιρίου, αλλά και με διαδικτυακές εφαρμογές μέσω browser, οθόνη στην υποδοχή του κτιρίου και τρισδιάστατα μοντέλα. Μετά την παρακολούθηση στατιστικών σε πραγματικό χρόνο μετρήσεων, οι διαχειριστές του κτιρίου βρίσκονται σε θέση να συνθέσουν πολιτικές εξοικονόμησης ενέργειας με τη μορφή κανόνων. Οι κανόνες αυτοί εφαρμόζονται αυτόνομα, μέσω της ενσωμάτωσής τους σε ευφυείς πράκτορες. Για τον σκοπό αυτό εξερευνήθηκαν διαφορετικές αρχιτεκτονικές ευφυών πρακτόρων. Ο πρώτος πράκτορας, Wintermute, επιτρέπει μέσω γραφικής διεπαφής τον ευέλικτο και επεκτάσιμο, μέσω σημασιολογίας, ορισμό κανόνων παραγωγικής λογικής. Λόγω αυτής της σύνταξης, η βάση κανόνων πρέπει να διατηρείται μικρή, οπότε ο πράκτορας έχει χαμηλό χρόνο απόκρισης, δηλαδή παρουσιάζει αντιδραστική συμπεριφορά, στις αλλαγές του περιβάλλοντος. Εικόνα Μέση συνολική ημερήσια κατανάλωση ανά είδος συσκευής, κατά την περίοδο μέτρησης σημείου αναφοράς, κατά την περίοδο του πειράματος και ποσό εξοικονόμησης. 251

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Μάθημα Πρώτο Εισαγωγή στις Υπηρεσίες Ιστού (Web Services) Μοντέλα WS JSON Χρήση (consume) WS μέσω python Πρόσβαση σε WS και άντληση δεδομένων Παραδείγματα

Διαβάστε περισσότερα

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture) Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture) Χρήστος Ηλιούδης Πλεονεκτήματα των Υπηρεσιών Ιστού Διαλειτουργικότητα: Η χαλαρή σύζευξή τους οδηγεί στην ανάπτυξη ευέλικτου λογισμικού

Διαβάστε περισσότερα

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS)

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS) Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS) Ελένη Καλδούδη Τμήμα Ιατρικής Δημοκρίτειο Πανεπιστήμιο Θράκης 2003 θέματα το χθές, το σήμερα και το αύριο για τα PACS απαιτήσεις από

Διαβάστε περισσότερα

ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος

ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος ΠΑΡΆΡΤΗΜΑ Β Ενδεικτική Λίστα Διδασκόντων Μελών Δ.Ε.Π. του Τμήματος 1 Βασίλειος Χρυσικόπουλος Καθηγητής Πληροφορική Δίκτυα Ασφάλεια Πληροφοριών Ερευνητικά Ενδιαφέροντα Ασφάλεια Δίκτυα Η/Υ http://di.ionio.gr/staff-2/faculty-staff/vassilischrissikopoulos/

Διαβάστε περισσότερα

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Μεταπτυχιακό Δίπλωμα Ειδίκευσης Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές Δρ. Κακαρόντζας Γεώργιος Επίκουρος Καθηγητής Τμ. Μηχανικών Πληροφορικής Τ.Ε. Μηχανική Λογισμικού για Διαδικτυακές

Διαβάστε περισσότερα

Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος

Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΤΜΗΜΑΤΟΣ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Παπασταθοπούλου Αλεξάνδρα Επιβλέπων Καθηγητής: Ψάννης Κωνσταντίνος Ορισμός «Το Διαδίκτυο των πραγμάτων (IoT) είναι

Διαβάστε περισσότερα

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009 ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009 4o Συνέδριο InfoCom Green ICT 2012 ΕΥΡΩΠΑΪΚΗ ΕΝΩΣΗ ΠΛΑΤΩΝΑΣ ΠΛΑΤφόρμα έξυπνου διαλογισμικού για συλλογή, ανάλυση, επεξεργασία δεδομένων από συστήματα πολλαπλών ετερογενών ΑισθητήρΩΝ

Διαβάστε περισσότερα

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 E Lab Π Τ Υ Χ Ι

Διαβάστε περισσότερα

Οντολογία για την περιγραφή των προσωπικοτήτων της Σάμου, την κατηγοριοποίηση και τις σχέσεις τους

Οντολογία για την περιγραφή των προσωπικοτήτων της Σάμου, την κατηγοριοποίηση και τις σχέσεις τους Οντολογία για την περιγραφή των προσωπικοτήτων της Σάμου, την κατηγοριοποίηση και τις σχέσεις τους Επιμέλεια: Καρανικολάου Θεοδώρα Επιβλέπων καθηγητής: Δενδρινός Μάρκος Αθήνα, 2017 Σκοπός Στόχος της πτυχιακής

Διαβάστε περισσότερα

Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών

Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών Σημασιολογική Ολοκλήρωση Δεδομένων με τη χρήση Οντολογιών Λίνα Μπουντούρη - Μανόλης Γεργατσούλης Ιόνιο Πανεπιστήμιο 15ο Πανελλήνιο Συνέδριο Ακαδημαϊκών Βιβλιοθηκών Διαδίκτυο και Επίπεδα ετερογένειας δεδομένων

Διαβάστε περισσότερα

SMART BUILDING. Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων

SMART BUILDING. Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων SMART BUILDING Ενεργειακή Αναβάθμιση Κτιριακών Εγκαταστάσεων με Χρήση Νέων Τεχνολογικών Λύσεων Ολοκληρωμένο Σύστημα Διαχείρισης Ενέργειας Απαιτήσεις 1. Δυνατότητα συλλογής δεδομένων από κάθε διαθέσιμη

Διαβάστε περισσότερα

2018 / 19 ΜΕΤΑΠΤΥΧΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

2018 / 19 ΜΕΤΑΠΤΥΧΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 2018 / 19 ΜΕΤΑΠΤΥΧΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 2 ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ: ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Διαβάστε περισσότερα

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι)

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι) Εισαγωγή Το Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών του Πανεπιστημίου Κύπρου προσφέρει ολοκληρωμένα προπτυχιακά και μεταπτυχιακά προγράμματα σπουδών στους κλάδους του Ηλεκτρολόγου Μηχανικού

Διαβάστε περισσότερα

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

Διαβάστε περισσότερα

Ερευνητικό Κέντρο Ευφυών Συστημάτων και Δικτύων Κοίος

Ερευνητικό Κέντρο Ευφυών Συστημάτων και Δικτύων Κοίος Ερευνητικό Κέντρο Ευφυών Συστημάτων και Δικτύων Κοίος Μάριος Μ. Πολυκάρπου, PhD Διευθυντής, Ερευνητικό Κέντρο Κοίος Πρόεδρος, Κοίνότητα Υπολογιστικής Νοημοσύνης, IEEE Καθηγητής, Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ. ΚΕΦΑΛΑΙΟ 9 Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ. Το 1966 αρχίζει ο σχεδιασμός του ARPANET, του πρώτου

Διαβάστε περισσότερα

Εφαρμογές για τη Θεσσαλονίκη

Εφαρμογές για τη Θεσσαλονίκη Εφαρμογές για τη Θεσσαλονίκη http://thessaloniki.appsforgreece.eu Γενικά Ο διαγωνισμός «Εφαρμογές για τη Θεσσαλονίκη» στοχεύει στην ενεργοποίηση του δυναμικού της πόλης για τη δημιουργία εφαρμογών web

Διαβάστε περισσότερα

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: ΣΥΓΓΡΑΦΕΑΣ:

ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: ΣΥΓΓΡΑΦΕΑΣ: ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: Υπολογιστικά Συστήµατα & Τεχνολογίες Πληροφορικής ΣΥΓΓΡΑΦΕΑΣ: Γιώργος Γιαννόπουλος, διδακτορικός φοιτητής

Διαβάστε περισσότερα

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 E Lab Π Τ Υ Χ Ι

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗ ΔΙΕΝΕΡΓΕΙΑ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΜΕΛΕΤΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗ ΔΙΕΝΕΡΓΕΙΑ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΜΕΛΕΤΩΝ ΠΛΟΣΚΑΣ ΝΙΚΟΛΑΟΣ Α.Μ. 123/04 ΕΠΙΒΛΕΠΩΝ: ΣΑΜΑΡΑΣ ΝΙΚΟΛΑΟΣ ΘΕΣΣΑΛΟΝΙΚΗ, ΙΟΥΝΙΟΣ 2007 Περιεχόμενα

Διαβάστε περισσότερα

Θεωρητική προσέγγιση του Σημασιολογικού Ιστού στο χώρο της πολιτισμικής πληροφορίας: μία πρότυπη εφαρμογή στη βιβλιοθηκονομία

Θεωρητική προσέγγιση του Σημασιολογικού Ιστού στο χώρο της πολιτισμικής πληροφορίας: μία πρότυπη εφαρμογή στη βιβλιοθηκονομία Θεωρητική προσέγγιση του Σημασιολογικού Ιστού στο χώρο της πολιτισμικής πληροφορίας: μία πρότυπη εφαρμογή στη βιβλιοθηκονομία Σοφία Ζαπουνίδου, Αρχειονόμος Βιβλιοθηκονόμος, Πανεπιστήμιο Θεσσαλίας Κεντρική

Διαβάστε περισσότερα

Σχεδίαση και Ανάπτυξη Ιστότοπων

Σχεδίαση και Ανάπτυξη Ιστότοπων Σχεδίαση και Ανάπτυξη Ιστότοπων Ιστορική Εξέλιξη του Παγκόσμιου Ιστού Παρουσίαση 1 η 1 Βελώνης Γεώργιος Καθηγητής Περιεχόμενα Τι είναι το Διαδίκτυο Βασικές Υπηρεσίες Διαδικτύου Προηγμένες Υπηρεσίες Διαδικτύου

Διαβάστε περισσότερα

Σχεδιαστικά Προγράμματα Επίπλου

Σχεδιαστικά Προγράμματα Επίπλου Σχεδιαστικά Προγράμματα Επίπλου Καθηγήτρια ΦΕΡΦΥΡΗ ΣΩΤΗΡΙΑ Τμήμα ΣΧΕΔΙΑΣΜΟΥ & ΤΕΧΝΟΛΟΓΙΑΣ ΞΥΛΟΥ - ΕΠΙΠΛΟΥ Σχεδιαστικά Προγράμματα Επίπλου Η σχεδίαση με τον παραδοσιακό τρόπο απαιτεί αυξημένο χρόνο, ενώ

Διαβάστε περισσότερα

Πρότυπα και Τεχνολογίες Semantic Web και Web 2.0 και η εφαρμογή τους στην Ηλεκτρονική Διακυβέρνηση

Πρότυπα και Τεχνολογίες Semantic Web και Web 2.0 και η εφαρμογή τους στην Ηλεκτρονική Διακυβέρνηση Πρότυπα και Τεχνολογίες Semantic Web και Web 2.0 και η εφαρμογή τους στην Ηλεκτρονική Διακυβέρνηση Νίκος Λούτας (nlout@uom.gr) http://nikosloutas.com Υποψήφιος Διδάκτορας, Εργαστήριο Πληροφοριακών Συστημάτων,

Διαβάστε περισσότερα

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων Έργο: Τίτλος Υποέργου: «ΘΑΛΗΣ: Ενίσχυση της Διεπιστημονικής ή και Διιδρυματικής έρευνας και καινοτομίας με δυνατότητα προσέλκυσης ερευνητών υψηλού επιπέδου από το εξωτερικό μέσω της διενέργειας βασικής

Διαβάστε περισσότερα

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου:

Διαβάστε περισσότερα

Οι Τομείς (κατευθύνσεις ειδικότητας) του Τμήματος Πληροφορικής & Επικοινωνιών είναι:

Οι Τομείς (κατευθύνσεις ειδικότητας) του Τμήματος Πληροφορικής & Επικοινωνιών είναι: Ακαδημαϊκή οργάνωση του Τμήματος Το Τμήμα Πληροφορικής και Επικοινωνιών είναι οργανωμένο ακαδημαϊκά σε τρεις Τομείς (κατευθύνσεις) με στόχο την εξειδίκευση των σπουδαστών σε ειδικότητες ανάλογες με τις

Διαβάστε περισσότερα

Εργαστήριο Σημασιολογικού Ιστού

Εργαστήριο Σημασιολογικού Ιστού Εργαστήριο Σημασιολογικού Ιστού Ενότητα 1: Σημασιολογία και Μεταδεδομένα Μ.Στεφανιδάκης 5-2-2016. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα.

Διαβάστε περισσότερα

ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ

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

Διαβάστε περισσότερα

Πτυχιακή Εργασία ηµιουργία Εκπαιδευτικού Παιχνιδιού σε Tablets Καλλιγάς ηµήτρης Παναγιώτης Α.Μ.: 1195 Επιβλέπων καθηγητής: ρ. Συρµακέσης Σπύρος ΑΝΤΙΡΡΙΟ 2015 Ευχαριστίες Σ αυτό το σηµείο θα ήθελα να

Διαβάστε περισσότερα

Υπηρεσίες Υποστήριξης, Δικτύωσης, Προδιαγραφών & Πιστοποίησης Ιδρυματικών Αποθετηρίων

Υπηρεσίες Υποστήριξης, Δικτύωσης, Προδιαγραφών & Πιστοποίησης Ιδρυματικών Αποθετηρίων Υπηρεσίες Υποστήριξης, Δικτύωσης, Προδιαγραφών & Πιστοποίησης Ιδρυματικών Αποθετηρίων Δημήτρης Σπανός Εθνικό Μετσόβιο Πολυτεχνείο Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών Στόχοι 1. Λειτουργικές και

Διαβάστε περισσότερα

ΔΙΑΔΙΚΤΥΑΚΟ ΣΥΣΤΗΜΑ ΒΕΛΤΙΣΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΝΕΡΓΕΙΑΚΩΝ ΠΟΡΩΝ E.M.I.R. - Energy Management & Intelligent Reporting

ΔΙΑΔΙΚΤΥΑΚΟ ΣΥΣΤΗΜΑ ΒΕΛΤΙΣΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΝΕΡΓΕΙΑΚΩΝ ΠΟΡΩΝ E.M.I.R. - Energy Management & Intelligent Reporting ΔΙΑΔΙΚΤΥΑΚΟ ΣΥΣΤΗΜΑ ΒΕΛΤΙΣΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΝΕΡΓΕΙΑΚΩΝ ΠΟΡΩΝ E.M.I.R. - Energy Management & Intelligent Reporting Διαδικτυακό OLAP Σύστημα Λήψης Αποφάσεων και δημιουργίας έξυπνων προσαρμοστικών γραφημάτων

Διαβάστε περισσότερα

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Μάθημα 1 ο : Εισαγωγή στην γλωσσική τεχνολογία. Γεώργιος Πετάσης. Ακαδημαϊκό Έτος: 2012 2013

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Μάθημα 1 ο : Εισαγωγή στην γλωσσική τεχνολογία. Γεώργιος Πετάσης. Ακαδημαϊκό Έτος: 2012 2013 ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Μάθημα 1 ο : Εισαγωγή στην γλωσσική τεχνολογία Γεώργιος Πετάσης Ακαδημαϊκό Έτος: 2012 2013 ΤMHMA MHXANIKΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ, Πανεπιστήμιο Πατρών, 2012 2013 Τι είναι η γλωσσική τεχνολογία;

Διαβάστε περισσότερα

Εργαστήριο Σημασιολογικού Ιστού

Εργαστήριο Σημασιολογικού Ιστού Εργαστήριο Σημασιολογικού Ιστού Ενότητα 1: Σημασιολογία και Μεταδεδομένα Μ.Στεφανιδάκης 10-2-2017 Η αρχή: Το όραμα του Σημασιολογικού Ιστού Tim Berners-Lee, James Hendler and Ora Lassila, The Semantic

Διαβάστε περισσότερα

Το Πλαίσιο Διαλειτουργικότητας & Υπηρεσιών. Ενημέρωση σχετικά με τις γενικές αρχές και τη. Ενημέρωση σχετικά με τα τεχνολογικά πρότυπα βάσει

Το Πλαίσιο Διαλειτουργικότητας & Υπηρεσιών. Ενημέρωση σχετικά με τις γενικές αρχές και τη. Ενημέρωση σχετικά με τα τεχνολογικά πρότυπα βάσει Το Πλαίσιο Διαλειτουργικότητας & Υπηρεσιών Ηλεκτρονικών Συναλλαγών (ΠΔ&ΥΗΣ) στοχεύει στην: Ενημέρωση σχετικά με τις γενικές αρχές και τη στρατηγική ανάπτυξης πληροφοριακών συστημάτων Ενημέρωση σχετικά

Διαβάστε περισσότερα

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται: Μάθημα 10 Συστήματα Διάχυσης και Διαχείρισης Γνώσης Chapter 10 Knowledge Transfer In The E-world Chapter 13 Knowledge Management Tools and Knowledge Portals Συστήματα Διάχυσης και Διαχείρισης Γνώσης Λογισμικό

Διαβάστε περισσότερα

Οντολογία Ψηφιακής Βιβλιοθήκης

Οντολογία Ψηφιακής Βιβλιοθήκης Οντολογία Ψηφιακής Βιβλιοθήκης Αντωνάκης Δημήτρης Μητρέλης Άγγελος Παπουτσής Κωνσταντίνος Θεόδωρος Σιώχος Βασίλειος Νοέμβριος 2006 Πάτρα Χρήση Οντολογιών Οι ψηφιακές βιβλιοθήκες με τη βοήθεια των οντολογιών

Διαβάστε περισσότερα

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή διατριβή

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή διατριβή ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή διατριβή ΚΙΝΗΤΙΚΗ ΜΕΛΕΤΗ ΤΗΣ ΑΝΤΙΔΡΑΣΗΣ ΚΑΤΑΛΥΤΙΚΗΣ ΑΝΑΓΩΓΗΣ ΤΩΝ ΟΞΕΙΔΙΩΝ ΤΟΥ ΑΖΩΤΟΥ (NO X

Διαβάστε περισσότερα

RobotArmy Περίληψη έργου

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

Διαβάστε περισσότερα

Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης

Πειραιάς S 2 Ε Lab Ιούνιος 2012. Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πειραιάς S 2 Ε Lab Ιούνιος 2012 Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης Πνευµατικά δικαιώµατα Τα πνευµατικά δικαιώµατα χρησιµοποίησης του µη πρωτότυπου υλικού της εργασίας ανήκουν στο/στη φοιτητή/-τρια

Διαβάστε περισσότερα

Η Πληροφορική ως γνώση και εργαλείο για τον σύγχρονο μηχανικό. Νικόλαος Μήτρου Καθηγητής, ΕΜΠ

Η Πληροφορική ως γνώση και εργαλείο για τον σύγχρονο μηχανικό. Νικόλαος Μήτρου Καθηγητής, ΕΜΠ Η Πληροφορική ως γνώση και εργαλείο για τον σύγχρονο μηχανικό Νικόλαος Μήτρου (mitrou@softlab.ntua.gr) Καθηγητής, ΕΜΠ ΗΜΕΡΙΔΑ Η ΠΛΗΡΟΦΟΡΙΚΗ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ ΤΟΥ ΜΗΧΑΝΙΚΟΥ 8 Ιουλίου 2008 Περιεχόμενα Ο ρόλος

Διαβάστε περισσότερα

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Eυφυή Πληροφοριακά Συστήματα. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Eυφυή Πληροφοριακά Συστήματα. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας Eυφυή Πληροφοριακά Συστήματα Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Ανάγκη για Ευφυή Πληροφοριακά Συστήματα Η συσσώρευση ολοένα και μεγαλύτερου

Διαβάστε περισσότερα

Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing)

Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing) Το Διαδίκτυο των Αντικειμένων και η Δύναμη του Πλήθους (Internet of Things and Crowdsourcing) Καθ. Σωτήρης Νικολετσέας 1,2 1 Τμήμα Μηχανικών Η/Υ και Πληροφορικής, Πανεπιστήμιο Πατρών 2 Ινστιτούτο Τεχνολογίας

Διαβάστε περισσότερα

Ραγδαία τεχνολογική εξέλιξη

Ραγδαία τεχνολογική εξέλιξη ΣΦΑΙΡΕΣ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ Αχιλλέας Καμέας Ελληνικό Ανοικτό Πανεπιστήμιο & Ινστιτούτο Τεχνολογίας Υπολογιστών Ραγδαία τεχνολογική εξέλιξη 2 1 Mobile devices / tablets 3 Μικρές, φορητές συσκευές

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΑΝΑΠΤΥΞΗ ΕΙΚΟΝΙΚΗΣ ΠΛΑΤΦΟΡΜΑΣ ΠΡΟΣΟΜΟΙΩΣΗΣ ΤΗΣ ΠΑΡΑΜΟΡΦΩΣΗΣ ΑΝΘΡΩΠΙΝΟΥ ΗΠΑΤΟΣ ΜΕ ΤΗ ΧΡΗΣΗ ΑΠΤΙΚΟΥ ΜΕΣΟΥ Δηµήτρης Δούνας

Διαβάστε περισσότερα

Σχεδιασµός Ανάπτυξη Οντολογίας

Σχεδιασµός Ανάπτυξη Οντολογίας Σχεδιασµός Ανάπτυξη Οντολογίας ΈλεναΜάντζαρη, Γλωσσολόγος, Ms.C. ΙΑΤΡΟΛΕΞΗ: Ανάπτυξη Υποδοµής Γλωσσικής Τεχνολογίας για το Βιοϊατρικό Τοµέα Τι είναι η οντολογία; Μιαοντολογίαείναιέναλεξικόόρωνπου διατυπώνονται

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη Παπαδόπουλου Κυριάκου Αρ. Μητρώου: 093507 Επιβλέπων καθηγητής: Ηλιούδης Χρήστος Εισαγωγή - Σκοπός Εργασίας Καινοτόμες

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ. Διεύθυνση Σπουδών ΩΡΕΣ ΑΙΘΟΥΣΕΣ ΕΞ.-ΤΥΠΟΣ ΜΑΘΗΜΑ ΤΜΗΜΑ ΚΩΔΙΚΟΣ. Πέμπτη, 01/09/2016

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ. Διεύθυνση Σπουδών  ΩΡΕΣ ΑΙΘΟΥΣΕΣ ΕΞ.-ΤΥΠΟΣ ΜΑΘΗΜΑ ΤΜΗΜΑ ΚΩΔΙΚΟΣ. Πέμπτη, 01/09/2016 Διεύθυνση Σπουδών http://www.unipi.gr ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ 2015-2016 ΕΞΕΤΑΣΕΙΣ ΣΕΠΤΕΜΒΡΙΟΥ 2016 ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Πειραιάς:12/7/2016

Διαβάστε περισσότερα

Εισαγωγή στο KNX. Ανακαλύψτε το KNX

Εισαγωγή στο KNX. Ανακαλύψτε το KNX Εισαγωγή στο KNX Ανακαλύψτε το KNX Συμβατική εγκατάσταση Κάθε λειτουργία απαιτεί ένα ή περισσότερα καλώδια για να πραγματοποιηθεί Πολλές λειτουργίες = πολλά καλώδια Κάθε λειτουργία πρέπει να έχει μελετηθεί

Διαβάστε περισσότερα

Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0. Εφαρμογές Πληροφορικής Κεφ. 9 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0. Εφαρμογές Πληροφορικής Κεφ. 9 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0 Καραμαούνας Πολύκαρπος 1 9.1 Ιστορικά Στοιχεία Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο και ήταν απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ. Το 1966

Διαβάστε περισσότερα

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα

Πτυχιακή διατριβή. Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN) στην ατμόσφαιρα ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή διατριβή Η επίδραση της τασιενεργής ουσίας Ακεταλδεΰδης στη δημιουργία πυρήνων συμπύκνωσης νεφών (CCN)

Διαβάστε περισσότερα

Speed-0 WMP: Web and Mobile Platform Software Requirements Specification

Speed-0 WMP: Web and Mobile Platform Software Requirements Specification Speed-0 Web and Mobile Platform Speed-0 WMP: Web and Mobile Platform Software Requirements Specification Version Revision History Date Version Description People 5/4/2012 Αρχικές Προδιαγραφές

Διαβάστε περισσότερα

Smart Buildings. the Smart International Hellenic University project. Το όραμα του Smart Grid

Smart Buildings. the Smart International Hellenic University project. Το όραμα του Smart Grid Smart Buildings the Smart International Hellenic University project Το όραμα του Smart Grid Θάνοσ Σταυρόπουλοσ, MSc Research Assistant, Smart IHU project ACM Student Chapter Auth, Chair Επιςκόπθςθ Σκοπόσ

Διαβάστε περισσότερα

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή διατριβή

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή διατριβή Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή διατριβή ΠΕΙΡΑΜΑΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ ΜΕΡΟΥΣ ΤΟΥ ΚΑΥΣΙΜΟΥ ΠΟΥ ΚΑΤΑΝΑΛΩΝΕΙ ΒΕΝΖΙΝΟΚΙΝΗΤΗΡΑΣ ΜΕ ΥΔΡΟΓΟΝΟ ΤΟ ΟΠΟΙΟ ΘΑ ΠΑΡΑΓΕΤΑΙ ΜΕ ΑΝΑΚΤΗΣΗ ΕΝΕΡΓΕΙΑΣ ΚΑΤΑ

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας)

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας) Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016 Γεωργία Καπιτσάκη (Λέκτορας) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα συλλογής

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος... 13. Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 13 Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15 1.1 Εισαγωγή... 16 1.2 Διαδίκτυο και Παγκόσμιος Ιστός Ιστορική αναδρομή... 17 1.3 Αρχές πληροφοριακών συστημάτων

Διαβάστε περισσότερα

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας. Η Πυξίδα Απασχόλησης είναι ένα πλήρως παραμετροποιήσιμο portal που απευθύνεται σε Κέντρα Επαγγελματικής Κατάρτισης, Δήμους, Εκπαιδευτικούς Οργανισμούς και Εταιρίες Εύρεσης Εργασίας, με στόχο τόσο την μηχανογράφηση

Διαβάστε περισσότερα

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ Αριθμ. Πρωτ.: 129334/2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ ΤΟΥ ΑΡΙΣΤΟΤΕΛΕΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΑΚΟΙΝΩΝΕΙ Τη διενέργεια διαδικασίας ΑΠΕΥΘΕΙΑΣ

Διαβάστε περισσότερα

Μεταπτυχιακή διατριβή

Μεταπτυχιακή διατριβή ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Μεταπτυχιακή διατριβή ΜΕΛΕΤΗ ΤΗΣ ΕΚΛΕΚΤΙΚΗΣ ΚΑΤΑΛΥΤΙΚΗΣ ΟΞΕΙΔΩΣΗΣ ΤΟΥ ΜΕΘΑΝΙΟΥ ΠΡΟΣ ΔΙΟΞΕΙΔΙΟ ΤΟΥ ΑΝΘΡΑΚΑ Βασιλική

Διαβάστε περισσότερα

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή εργασία

Σχολή Μηχανικής και Τεχνολογίας. Πτυχιακή εργασία Σχολή Μηχανικής και Τεχνολογίας Πτυχιακή εργασία Ευφυής επεξεργασία και ανάλυση δεδομένων μεγάλου όγκου: Συλλογή και επεξεργασία δεδομένων μεγάλης συχνότητας και εύρους σε πραγματικό χρόνο για τον εντοπισμό

Διαβάστε περισσότερα

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Σχολή Επικοινωνίας και Μέσων Ενημέρωσης Πτυχιακή εργασία Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα Εύρος Χριστοδούλου Λεμεσός, Μάιος 2018 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΚΟΙΝΩΝΙΑΣ

Διαβάστε περισσότερα

Διαδίκτυο είναι ένα σύστημα διασυνδεδεμένων δικτύων και υπολογιστών που απλώνεται σε όλο τον κόσμο και έχουν πρόσβαση σε αυτό εκατομμύρια χρήστες.

Διαδίκτυο είναι ένα σύστημα διασυνδεδεμένων δικτύων και υπολογιστών που απλώνεται σε όλο τον κόσμο και έχουν πρόσβαση σε αυτό εκατομμύρια χρήστες. Διαδίκτυο είναι ένα σύστημα διασυνδεδεμένων δικτύων και υπολογιστών που απλώνεται σε όλο τον κόσμο και έχουν πρόσβαση σε αυτό εκατομμύρια χρήστες. Για να επιτευχθεί αυτό όλοι οι υπολογιστές και τα επιμέρους

Διαβάστε περισσότερα

Ηλεκτρονικός οδηγός για τους φοιτητές ενός Α.Ε.Ι.

Ηλεκτρονικός οδηγός για τους φοιτητές ενός Α.Ε.Ι. Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε. Ηλεκτρονικός οδηγός για τους φοιτητές ενός Α.Ε.Ι. Πτυχιιακή Εργασίία Φοιτητής: Δημήτριος Παπαοικονόμου ΑΜ: 36712

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Στόχος Θεματικής Ενότητας Οι μαθητές να περιγράφουν τους βασικούς τομείς της Επιστήμης των Υπολογιστών και να μπορούν

Διαβάστε περισσότερα

Αν σας ενδιαφέρει κάποιο θέμα, δείτε τη σχετική βιβλιογραφία και στείλτε μου για να συναντηθούμε και να το συζητήσουμε.

Αν σας ενδιαφέρει κάποιο θέμα, δείτε τη σχετική βιβλιογραφία και στείλτε μου  για να συναντηθούμε και να το συζητήσουμε. Πτυχιακές και Διπλωματικές Εργασίες για τους προπτυχιακούς και μεταπτυχιακούς φοιτητές του Τμήματος Πληροφορικής και Τηλεπικοινωνιών Ακαδημαϊκό Έτος 2008-2009 Αναπληρωτής Καθηγητής Μανόλης Κουμπαράκης

Διαβάστε περισσότερα

Διασύνδεση και Άνοιγμα Δεδομένων του Α.Π.Θ. Καραογλάνογλου Κωνσταντίνος Μονάδα Σημασιολογικού Ιστού Α.Π.Θ 18/3/2014

Διασύνδεση και Άνοιγμα Δεδομένων του Α.Π.Θ. Καραογλάνογλου Κωνσταντίνος Μονάδα Σημασιολογικού Ιστού Α.Π.Θ 18/3/2014 Διασύνδεση και Άνοιγμα Δεδομένων του Α.Π.Θ. Καραογλάνογλου Κωνσταντίνος Μονάδα Σημασιολογικού Ιστού Α.Π.Θ 18/3/2014 Ανοικτά και Συνδεδεμένα Δεδομένα Ανοικτά Δεδομένα Πληροφορίες, δημόσιες ή άλλες, στις

Διαβάστε περισσότερα

Εθνικό Μετσόβιο Πολυτεχνείο

Εθνικό Μετσόβιο Πολυτεχνείο Εθνικό Μετσόβιο Πολυτεχνείο Θεοδώρα Α. Βαρβαρίγου Αν. Καθηγήτρια Ηλεκτρολόγων Μηχ. & Μηχ. Υπολογιστών ΕΜΠ Διαδικτυακές Υπηρεσίες Επόμενης Γενιάς Περιεχόμενα Επιστημονική Εξέλιξη Εξέλιξη Επιχειρηματικής

Διαβάστε περισσότερα

Ιχνηλασιμότητα η τροφίμων φμ με ανοικτό διαδικτυακό σύστημα:

Ιχνηλασιμότητα η τροφίμων φμ με ανοικτό διαδικτυακό σύστημα: Ιχνηλασιμότητα η τροφίμων φμ με ανοικτό διαδικτυακό σύστημα: οφέλη για επιχειρήσεις και καταναλωτές Μιχάλης Σαλαμπάσης αναπληρωτής καθηγητής Τμήμα Πληροφορικής Αλεξάνδρειο ΤΕΙ Θεσσαλονίκης Εναλλακτικός

Διαβάστε περισσότερα

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S.

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S. Στρατηγική Επιλογή Το ταχύτατα μεταβαλλόμενο περιβάλλον στο οποίο δραστηριοποιούνται οι επιχειρήσεις σήμερα, καθιστά επιτακτική -όσο ποτέ άλλοτε- την ανάπτυξη ολοκληρωμένων λύσεων που θα διασφαλίζουν,

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική»

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Ανάπτυξη Πλατφόρμας Διαδικτυακής Δημοσίευσης Χαρτογραφικών Δεδομένων Developing

Διαβάστε περισσότερα

1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ

1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ 1. ΓΕΝΙΚΟΙ ΚΑΝΟΝΕΣ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΛΗΨΗΣ ΠΤΥΧΙΟΥ Ισχύει ένα πρόγραμμα σπουδών από τον Οκτώβριο του 2013. Για να πάρει κάποιος πτυχίο από το 2014 κι έπειτα απαιτείται να πληροί όλους τους παρακάτω όρους:

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή διατριβή

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή διατριβή ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή διατριβή Η ΣΥΓΚΕΝΤΡΩΣΗ ΤΩΝ ΒΑΡΕΩΝ ΜΕΤΑΛΛΩΝ ΣΤΟ ΕΔΑΦΟΣ ΚΑΙ ΜΕΘΟΔΟΙ ΠΡΟΣΔΙΟΡΙΣΜΟΥ ΤΟΥΣ Μιχαήλ

Διαβάστε περισσότερα

Πρόγραμμα Σπουδών Ακαδημαϊκού Έτους

Πρόγραμμα Σπουδών Ακαδημαϊκού Έτους 1 ο Ε ξ ά μ η ν ο ( 6 Μαθήματα) Έ τ ο ς Σ π ο υ δ ώ ν Α 1. Λογισμός μιας Μεταβλητής - Γραμμική Άλγεβρα 5 5 2-2. Τεχνικό Σχέδιο 5 4 2 -. Δομημένος Προγραμματισμός 6 4 2 1 2 Φυσική 5 4 2 1 2 5. Ηλεκτρικές

Διαβάστε περισσότερα

web mobile multimedia ανάπτυξη εφαρμογών

web mobile multimedia ανάπτυξη εφαρμογών ανάπτυξη εφαρμογών web mobile multimedia 1 η εταιρία ιστορικό Η διάδρασις ιδρύθηκε το 2006, στην Αθήνα, από το Γιάννη Λαδά, Ηλεκτρολόγο Μηχανικό και Μηχανικό Η/Υ και Πέτρο Βασιλόπουλο, Οικονομολόγο με

Διαβάστε περισσότερα

Στοιχεία παρουσίασης. Εισαγωγή Θεωρητικό υπόβαθρο Υλοποίηση λογισμικού μέρους συστήματος Συμπεράσματα Μελλοντικές Επεκτάσεις

Στοιχεία παρουσίασης. Εισαγωγή Θεωρητικό υπόβαθρο Υλοποίηση λογισμικού μέρους συστήματος Συμπεράσματα Μελλοντικές Επεκτάσεις ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Σχεδιασμός Πληροφοριακού Συστήματος Καταγραφής μετρήσεων κοινής ωφελείας Υποβοηθούμενο από οπτική αναγνώριση μέσω Κινητού τηλεφώνου Μπούντας Δημήτρης Επιβλέπων Καθηγητής : Δασυγένης

Διαβάστε περισσότερα

ΕΙΔΙΚΟ ΕΝΤΥΠΟ ΠΕΡΙΓΡΑΦΗΣ ΜΑΘΗΜΑΤΩΝ. Υποχρεωτικής επιλογής (Κατεύθυνσης)

ΕΙΔΙΚΟ ΕΝΤΥΠΟ ΠΕΡΙΓΡΑΦΗΣ ΜΑΘΗΜΑΤΩΝ. Υποχρεωτικής επιλογής (Κατεύθυνσης) ΕΙΔΙΚΟ ΕΝΤΥΠΟ ΠΕΡΙΓΡΑΦΗΣ ΜΑΘΗΜΑΤΩΝ Ακαδημαϊκή Μονάδα: Τομέας: Εργαστήριο/Σπουδαστήριο/Κλινική: Τίτλος Μαθήματος / Θέμα Εργασίας: Κωδικός Μαθήματος: Τύπος Μαθήματος: ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Πληροφοριακά Περιβάλλοντα

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΠΟΛΥΜΕΣΑ- ΔΙΚΤΥΑ ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΠΟΛΥΜΕΣΑ- ΔΙΚΤΥΑ ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ Μάρτιος 1998 ΕΙΣΑΓΩΓΗ Το

Διαβάστε περισσότερα

Δ Ι Π Λ Ω Μ ΑΤ Ι Κ Η Ε Ρ ΓΑ Σ Ι Α

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

Διαβάστε περισσότερα

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

Διαβάστε περισσότερα

Μεταπτυχιακή διατριβή. Ανδρέας Παπαευσταθίου

Μεταπτυχιακή διατριβή. Ανδρέας Παπαευσταθίου Σχολή Γεωτεχνικών Επιστημών και Διαχείρισης Περιβάλλοντος Μεταπτυχιακή διατριβή Κτίρια σχεδόν μηδενικής ενεργειακής κατανάλωσης :Αξιολόγηση συστημάτων θέρμανσης -ψύξης και ΑΠΕ σε οικιστικά κτίρια στην

Διαβάστε περισσότερα

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018 Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια) ΠΕΡΙΟΧΗ Α: ΕΦΑΡΜΟΓΕΣ ΜΕ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ΕΠΙΓΝΩΣΗ ΣΥΓΚΕΙΜΕΝΟΥ Οι αισθητήρες μας δίνουν τη δυνατότητα

Διαβάστε περισσότερα

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

ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΠΟΡΩΝ ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΠΟΡΩΝ BUSINESS INNOVATION TECHNOLOGY Αυτοματοποιημένες διαδικασίες, αποδοτικότερη διαχείριση πόρων, απαράμιλλη ασφάλεια δεδομένων, ευέλικτα & αναλυτικά reports αυξάνουν

Διαβάστε περισσότερα

Τεχνικές Προδιαγραφές ιαλειτουργικότητας

Τεχνικές Προδιαγραφές ιαλειτουργικότητας ΤΕΧΝΙΚΕΣ ΠΡΟ ΙΑΓΡΑΦΕΣ ΕΙΓΜΑ ΠΑΡΑΡΤΗΜΑΤΟΣ ΙΑΓΩΝΙΣΜΟΥ ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ 2000-2006 ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «Κοινωνία της Πληροφορίας» http://www.infosociety.gr Μάιος 2003 Τεχνικές Προδιαγραφές ιαλειτουργικότητας

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) Ηλ. Αμφ. 1, 2, 3. Ηλεκτρομαγνητικά Πεδία Β. Ηλ. Αμφ.

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) Ηλ. Αμφ. 1, 2, 3. Ηλεκτρομαγνητικά Πεδία Β. Ηλ. Αμφ. ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ Ακαδημαϊκό Έτος 2018-19 Περίοδος Ιουνίου 2019 'Εκδοση 20/05/2019 03/06/2019 04/06/2019 05/06/2019 06/06/2019

Διαβάστε περισσότερα

Α. Βαγγελάτος 2, Γ. Ορφανός 2, Χ. Τσαλίδης 2, Χ. Καλαμαρά 3

Α. Βαγγελάτος 2, Γ. Ορφανός 2, Χ. Τσαλίδης 2, Χ. Καλαμαρά 3 Ανάπτυξη Οντολογίας Βιοϊατρικών Όρων Α. Βαγγελάτος 2, Γ. Ορφανός 2, Χ. Τσαλίδης 2, Χ. Καλαμαρά 3 www.iatrolexi.cti.gr 1 Ερευνητικό Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών (ΕΑΙΤΥ) Σελίδα 1 Ημερομηνία:

Διαβάστε περισσότερα

Αναπαράσταση Γνώσης και Αναζήτηση στον Σηµασιολογικό Ιστό

Αναπαράσταση Γνώσης και Αναζήτηση στον Σηµασιολογικό Ιστό Αναπαράσταση Γνώσης και Αναζήτηση στον Σηµασιολογικό Ιστό Αλέξανδρος Βαλαράκος (alexv@iit.demokritos.gr) (alexv@aegean.gr) Υποψήφιος ιδάκτορας Τµήµα Μηχανικών Υπολογιστικών και Πληροφοριακών Συστηµάτων.

Διαβάστε περισσότερα

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 E Lab Π Τ Υ Χ Ι

Διαβάστε περισσότερα

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Κωστής Αϊβαλής Μηχανικός Πληροφορικής TU-Berlin 2/5/2008 ΕΑΠ-ΓΤΠ61-Κωστής Αϊβαλής 1 Εισαγωγή Η ταχύτητα επεξεργασίας των εφαρµογών διαδικτυακών υπηρεσιών

Διαβάστε περισσότερα

Integrated Project. Ambient Intelligence System of Agents for Knowledgebased and Integrated Services for Mobility Impaired users

Integrated Project. Ambient Intelligence System of Agents for Knowledgebased and Integrated Services for Mobility Impaired users Integrated Project Ambient Intelligence System of Agents for Knowledgebased and Integrated Services for Mobility Impaired users Κλήµης Νταλιάνης Έµπειρος Ερευνητής Εργαστήριο ΨΕΕΒΠ - Ε.Μ.Π. 1 Περίγραµµα

Διαβάστε περισσότερα

Μεταπτυχιακή Διατριβή

Μεταπτυχιακή Διατριβή Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Υπηρεσία Αυτόματης Ανάκτησης Συνδεδεμένης Δομής Θεματικών Επικεφαλίδων μέσω

Διαβάστε περισσότερα

Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas

Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas Αποστολή της Retail@Link & Πολιτική Ασφαλείας 12 χρόνια εμπειρίας Στη διασύνδεση επιχειρήσεων με >11.500.000 Ηλεκτρονικά

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) (επί πτυχίω) Ηλ. Αμφ. 1, 2, 3

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) (επί πτυχίω) Ηλ. Αμφ. 1, 2, 3 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ Ακαδημαϊκό Έτος 2018-19 Περίοδος Ιουνίου 2019 Έκδοση 24/05/2019 03/06/2019 04/06/2019 05/06/2019 06/06/2019

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) (επί πτυχίω) Ηλ. Αμφ. 1, 2, 3

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ. Εισαγωγή στα Συστήματα Ηλεκτρικής Ενέργειας (ΣΗΕ) (επί πτυχίω) Ηλ. Αμφ. 1, 2, 3 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ Ακαδημαϊκό Έτος 2018-19 Περίοδος Ιουνίου 2019 Έκδοση 21/05/2019 03/06/2019 04/06/2019 05/06/2019 06/06/2019

Διαβάστε περισσότερα

3 βήματα για την ένταξη των ΤΠΕ: 1. Εμπλουτισμός 2. Δραστηριότητα 3. Σενάριο Πέτρος Κλιάπης-Όλγα Κασσώτη Επιμόρφωση εκπαιδευτικών

3 βήματα για την ένταξη των ΤΠΕ: 1. Εμπλουτισμός 2. Δραστηριότητα 3. Σενάριο Πέτρος Κλιάπης-Όλγα Κασσώτη Επιμόρφωση εκπαιδευτικών 3 βήματα για την ένταξη των ΤΠΕ: 1. Εμπλουτισμός 2. Δραστηριότητα 3. Σενάριο Πέτρος Κλιάπης-Όλγα Κασσώτη Επιμόρφωση εκπαιδευτικών Παρουσίαση βασισμένη στο κείμενο: «Προδιαγραφές ψηφιακής διαμόρφωσης των

Διαβάστε περισσότερα

Ανάπτυξη Οντολογικής Γνώσης για Τεκμηρίωση Οπτικοακουστικού Περιεχομένου ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Ανάπτυξη Οντολογικής Γνώσης για Τεκμηρίωση Οπτικοακουστικού Περιεχομένου ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη Οντολογικής Γνώσης για Τεκμηρίωση Οπτικοακουστικού Περιεχομένου

Διαβάστε περισσότερα

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Το Oracle Analytics Cloud αποτελεί ένα ολοκληρωμένο σύνολο δυνατοτήτων που περιλαμβάνει έτοιμο περιεχόμενο, εξειδικευμένα

Διαβάστε περισσότερα

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Ορισμός των Web Services

Διαβάστε περισσότερα

υπηρεσιες προστιθέμενης αξίας Υπηρεσίες προστιθέμενης αξίας

υπηρεσιες προστιθέμενης αξίας Υπηρεσίες προστιθέμενης αξίας υπηρεσιες προστιθέμενης αξίας Η σημασία των υπηρεσιών προστιθέμενης αξίας η ανταγωνιστικότητα της οικονομίας, εφευρετική, να καινοτομεί περισσότερο και να αντιδρά καλύτερα στις ανάγκες και τις προτιμήσεις

Διαβάστε περισσότερα