ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Εξαγωγή γεωγραφικής πληροφορίας από δεδομένα παρεχόμενα από χρήστες του διαδικτύου Περίληψη ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ του ΣΑΒΒΑ ΓΕΩΡΓΙΟΥ Επιβλέπων : Τιμολέων Σελλής Καθηγητής Ε.Μ.Π. Σύμβουλος : Dieter Pfoser Ερευνητής Ι.Π.ΣΥ.Π. Αθήνα, Ιούλιος 2010
Εισαγωγή Τα γεωχωρικά δεδομένα (geospatial data), είναι σήμερα μια πολύ σημαντική πηγή πληροφορίας για τις διαδικτυακές εφαρμογές, τόσο ως περιεχόμενο για αυτές, όσο και ως μετα-δεδομένα. Παρά την αναμφισβήτητη χρησιμότητά τους, υπάρχουν ακόμα ενδιαφέροντα ζητήματα που πρέπει να εξετασθούν, όσον αφορά τη διαθεσιμότητα, την ακρίβεια και το κόστος πρόσβασής τους. Συνήθως τα γεωχωρικά δεδομένα, έχουν δημιουργηθεί από επαγγελματίες (μεγάλες εταιρείες, χαρτογραφικοί οργανισμοί) οι οποίοι στην συνέχεια αναλαμβάνουν την επιμέλεια και την διάθεση τους. Η εμφάνιση και η εξέλιξη της δεύτερης γενιάς διαδικτύου, web 2.0, δημιούργησε πληθώρα γεωχωρικών δεδομένων, με πνευματικά δικαιώματα που επιτρέπουν την δημιουργική εκμετάλλευσή τους. Επιπλέον, αμέτρητες εφαρμογές κινητών τηλεφώνων, συνεισφέρουν τα τελευταία χρόνια στην δημιουργία βάσεων δεδομένων με σημεία ενδιαφέροντος (points of interest). Στην παρούσα εργασία, δείχνουμε πώς μπορούμε να εκμεταλλευτούμε αυτά τα παραγόμενα από χρήστες γεωχωρικά δεδομένα, με σκοπό να αντλήσουμε υποσύνολά τους, που περιγράφουν συγκεκριμένες θέσεις. Θα δώσουμε μεθόδους πρόσβασης στα διαθέσιμα δεδομένα και εξαγωγής πληροφορίας από αυτά χρησιμοποιώντας τόσο την γεωγραφική όσο και την λεκτική πληροφορία που περιέχουν. Τέλος, με μία πειραματική αξιολόγηση, θα επιχειρήσουμε να εκτιμήσουμε την εφαρμοσιμότητα και την ποιότητα της προσέγγισης που ακολουθήσαμε. Το πρόβλημα Ψάχνουμε με λέξεις κλειδιά, για μια θέση (ένα σημείο ενδιαφέροντος) στον κόσμο. Στην διάθεσή μας, έχουμε τα δεδομένα της υπηρεσίας flickr. Οι χρήστες τις εφαρμογής flickr, ανεβάζουν φωτογραφίες στην υπηρεσία, καταχωρώντας εκτός από το αρχείο της φωτογραφίας, λεκτική πληροφορία με την μορφή τίτλου, περιγραφής και ετικετών (tags). Επιπλέον, ένα μεγάλο ποσοστό καταχωρήσεων, έχουν γεωγραφική πληροφορία με την μορφή ζεύγους γεωγραφικού μήκους και πλάτους.[1] Η πληροφορία αυτή προέρχεται είτε από την ίδια την συσκευή λήψης της φωτογραφίας, είτε από χειροκίνητη τοποθέτησή της στον χάρτη από τον χρήστη που την ανέβασε. Την περίοδο συγγραφής αυτής της εργασίας, υπολογίζεται ότι το flickr διαθέτει περισσότερες από 100 εκατομμύρια καταχωρήσεις φωτογραφιών, με ταυτόχρονα λεκτικό και γεωγραφικό περιεχόμενο. [2]
Ο στόχος Στόχος της εφαρμογής, είναι να εντοπίσει με ακρίβεια την αναζητούμενη θέση και να αναγνωρίσει με επιτυχία τα βασικά χαρακτηριστικά της. Σημαντικό ρόλο θα παίξει η δυνατότητα της εφαρμογής να ξεχωρίσει αν η αναζητούμενη θέση αποτελεί σημείο ή περιοχή. Ως σημείο, θεωρούμε μια θέση με διαστάσεις τέτοιες, ώστε να μπορούν άνετα να παρασταθούν χρησιμοποιώντας μονάχα ένα σημάδι στον χάρτη. Για παράδειγμα ως σημείο μπορεί να θεωρηθεί ένα μνημείο, ένα κτήριο ή μια μικρή πλατεία. Σε αυτή την περίπτωση, στόχος της εφαρμογής είναι να τοποθετήσει ένα σημείο σε ψηφιακό χάρτη που θα δείχνει με ακρίβεια την αναζητούμενη θέση. Ως περιοχή, θεωρούμε μια θέση που περιγράφεται γενικώς από ένα κλειστό πολύγωνο πάνω στον χάρτη και έχει διαστάσεις που δεν μπορούν να αγνοηθούν. Χαρακτηριστικό παράδειγμα είναι ένα πάρκο, μια μεγάλη πλατεία, ένας αρχαιολογικός χώρος κτλ. Αν αναζητηθεί τέτοιου είδους θέση, το σύστημα πρέπει να είναι σε θέση να προβάλει ένα πολύγωνο στον ψηφιακό χάρτη που περικλείει με ακρίβεια την αναζητούμενη περιοχή. Η εφαρμογή πρέπει επίσης να έχει τον τρόπο, να αναγνωρίζει την αδυναμία της να εντοπίσει μία θέση που αναζητείται και να ενημερώνει αντίστοιχα τον χρήστη. Η λύση Για να επιτύχουμε τον παραπάνω στόχο, πρέπει αρχικά να αποκτήσουμε πρόσβαση στα δεδομένα του flickr. Αυτό πραγματοποιείται με χρήση του διαθέσιμου από το flickr συνόλου εντολών με την μορφή restful api [3]. Έχοντας ως είσοδο τις λέξεις κλειδιά που περιγράφουν την αναζητούμενη θέση, επιχειρούμε αναζήτηση πλήρους κειμένου (full text search) στα λεκτικά πεδία που έχει μια καταχωρημένη φωτογραφία στο flickr. Περιορίζουμε ακόμα την αναζήτησή μας σε καταχωρήσεις που περιέχουν και γεωγραφική πληροφορία. Ως απάντηση στην παραπάνω αναζήτηση, παίρνουμε ουσιαστικά ένα σύνολο από γεωγραφικά σημεία (νέφος σημείων) που το καθένα αναπαριστά μια διαφορετική ορθή εκδοχή για την αναζητούμενη θέση. Αναλύοντας στο πεδίο του χώρου, τα σημεία του νέφους, επιχειρούμε να απομακρύνουμε όσα είναι χωρικά ασύνδετα ή απομονωμένα από το νέφος. Παράλληλα, ορίζουμε ένα μέτρο υπολογισμού της βαρύτητας του κάθε σημείου στην εύρεση της τελικής θέσης. Σε αυτό το σημείο, υπολογίζουμε κάποια συνολικά μεγέθη για το νέφος σημείων και αποφασίζουμε για το αν η θέση που ψάχνουμε είναι σημείο ή περιοχή. Στο ίδιο στάδιο μπορεί να κριθεί και η πιθανή αδυναμία του συστήματος να καταλήξει σε αποτέλεσμα εξετάζοντας τα διαθέσιμα δεδομένα. Αν κριθεί ότι βρέθηκε το είδος της θέσης τότε ανάλογα με την περίπτωση προχωράμε σε ψηφιακή απεικόνιση του αποτελέσματος σε χάρτη. Όλο το σύστημα, έχει υλοποιηθεί ως μια εφαρμογή διαδικτύου (web application) στην οποία ο επισκέπτης μπορεί να εισάγει σε μία φόρμα τις λέξεις
κλειδιά που περιγράφουν την αναζητούμενη θέση και να δει το αποτέλεσμα σε ψηφιακό χάρτη τεχνολογίας google maps [4]. Συμπεράσματα & Συνεισφορά Η εφαρμογή δοκιμάστηκε για πολλά παραδείγματα θέσεων σε ολόκληρο τον κόσμο. Αναζητήσαμε τόσο θέσεις που αναπαριστούν σημείο όσο και άλλες που αναπαριστούν περιοχή. Η ακρίβεια των ευρημάτων, είναι αυτή που κρίνει την αποτελεσματικότητα των αλγορίθμων που χρησιμοποιήθηκαν, οι οποίοι σε μεγάλο βαθμό, αποτελούν πρωτότυπο αποτέλεσμα αυτής της εργασίας. Συμπεράναμε, ότι για αναζητήσεις θέσεων με πλούσια πληροφορία, η ακρίβεια των αποτελεσμάτων είναι πολύ υψηλή. Το σύστημα εντοπίζει με χαρακτηριστική ακρίβεια, όλα τα τουριστικά σημεία ενδιαφέροντος του πλανήτη, αφού υπάρχει πληθώρα φωτογραφικών καταχωρήσεων για αυτά. Στις υπόλοιπες περιπτώσεις, τα αποτελέσματα της αναζήτησης είναι ευθέως ανάλογα του πλήθους των διαθέσιμων καταχωρήσεων στην βάση της πηγής πληροφοριών μας, δηλαδή στην υπηρεσία flickr. Η πρωταρχική συνεισφορά της εργασίας, έγκειται στην εξαγωγή ακριβούς και περιγραφικής γεωγραφικής πληροφορίας, από υπάρχοντα δεδομένα. Θυμίζουμε ότι τα δεδομένα αυτά είναι προιόν αυθόρμητης συνεισφοράς των χρηστών μιας διαδικτυακής υπηρεσίας και τα πνευματικά τους δικαιώματα μας επιτρέπουν την χρήστη τους για δημιουργικούς σκοπούς. Επιπλέον, αξιοσημείωτη είναι δυνατότητα της εφαρμογής να διακρίνει αν η αναζητούμενη θέση είναι περιοχή και στην συνέχεια να περιγράφει αυτήν, δίνοντας με ακρίβεια τις διαστάσεις της και σχεδιάζοντας αντίστοιχη πολυγωνική περιοχή στον χάρτη. Σήμερα, πολλές υπηρεσίες αναζήτησης γεωγραφικών θέσεων, αδυνατούν να περιγράψουν περιοχές και συχνά επιστρέφουν ως απάντηση, ένα σημείο που βρίσκεται στο κέντρο της αναζητούμενης περιοχής. Το σύστημά μας λοιπόν, επιτυγχάνει να δώσει σημασιολογικά ορθότερες απαντήσεις στην αναζήτηση θέσεων με μη αγνοούμενες διαστάσεις. Η εργασία αυτή, έχει επεκταθεί και στην αντίστροφη εφαρμογή, δηλαδή στην εξαγωγή θέσεων σημείων ενδιαφέροντος, παρέχοντας ως είσοδο όλα τα δεδομένα του flickr που εντοπίζονται σε μια ευρεία γεωγραφική περιοχή. Εν συντομία, επιχειρούμε να εξάγουμε ένα σύνολο από σημεία ενδιαφέροντος σε ένα κομμάτι μιας πόλης. Φέρνουμε από το flickr όλες τις καταχωρήσεις που εντοπίζει εντός των συνόρων της δοσμένης περιοχής της πόλης και στην συνέχεια επιχειρούμε διαδοχική ομαδοποίηση των αποτελεσμάτων (clustering) τόσο ως προς το λεκτικό τους πεδίο όσο και ως προς την γεωγραφική τους θέση. Καταλήγουμε έτσι σε ομάδες σημείων, που παριστάνουν θέσεις με ξεχωριστό ενδιαφέρον εντός της δοσμένης περιοχής.
Συνοπτική σχηματική αναπαράσταση της εφαρμογής [1] http://microformats.org/wiki/geo [2] http://code.flickr.com/blog/2009/02/04/100000000-geotagged-photos-plus/ [3] http://www.flickr.com/services/api/flickr.photos.search.html [4] http://code.google.com/apis/maps/documentation/javascript/v2/index.html