Στη διατριβή αυτή έχουν αναπτυχθεί τεχνικές βελτιστοποίησης για την απάντηση συζευκτικών ερωτημάτων που τίθενται σε βάσεις γνώσης περιγραφικής λογικής. Με βάση το σύστημα συνεπαγωγής άμεσης σημασιολογίας OWL της SPARQL δημιουργήθηκε μια γλώσσα συζευκτικών ερωτημάτων, η οποία επιτρέπει τη χρήση μεταβλητών στη θέση εννοιών και ρόλων εκτός από τη θέση στιγμιοτύπων, και αναπτύχθηκε ένας αλγόριθμος απάντησης ερωτημάτων στη γλώσσα αυτή.
Στη συνέχεια αναπτύχθηκε μια τεχνική για την εύρεση μιας όσο το δυνατόν πιο αποδοτικής σειράς εκτέλεσης των ατόμων ενός (συζευκτικού) ερωτήματος. Σύμφωνα με την τεχνική αυτή τα άτομα ενός ερωτήματος ταξινομούνται με βάση το κόστος εκτέλεσής τους. Ο υπολογισμός του κόστους ενός ατόμου στηρίζεται σε πληροφορία σχετική με τα στιγμιότυπα των εννοιών και ρόλων της υπό εξέταση οντολογίας η οποία εξάγεται από ένα αρχικό μοντέλο που κατασκευάζεται από μια OWL μηχανή συλλογιστικής. Παρουσιάζεται ένας στατικός και ένας δυναμικός αλγόριθμος ταξινόμησης που χρησιμοποιούν αυτά τα κόστη για να βρουν βέλτιστες ή σχεδόν βέλτιστες σειρές εκτέλεσης των ατόμων των ερωτημάτων. Στην περίπτωση του δυναμικού αλγορίθμου, χρησιμοποιείται μια τεχνική συσταδοποίησης στιγμιοτύπων και υπολογίζονται οι συναρτήσεις κόστους με βάση το πολύ ένα στιγμιότυπο από καθεμιά από τις συστάδες. Στη συνέχεια προτείνονται τεχνικές επανεγγραφής ερωτημάτων και αναλύεται πως μπορούν να χρησιμοποιηθούν ειδικές λειτουργίες των OWL μηχανών συλλογιστικής και η ιεραρχία εννοιών και ρόλων της υπό εξέταση οντολογίας για τη μείωση του χρόνου απάντησης ερωτημάτων. Οι τεχνικές αυτές είναι ιδιαίτερα χρήσιμες για την αξιολόγηση ατόμων ερωτημάτων που περιέχουν μεταβλητές στη θέση εννοιών και ρόλων.
Η αποτελεσματικότητα των προτεινόμενων τεχνικών αξιολογείται χρησιμοποιώντας πρότυπα σύνολα ελέγχου. Από την πειραματική αυτή μελέτη προκύπτει ότι ο στατικός αλγόριθμος ταξινόμησης συνήθως υπερτερεί του δυναμικού όταν χρησιμοποιείται για ερωτήματα για τα οποία έχουμε ακριβείς πληροφορίες/στατιστικές από την αρχή. Για ερωτήματα που τίθενται σε μη ντετερμινιστικές οντολογίες (οντολογίες με διαζευκτική πληροφορία) και περιέχουν πολλά άτομα για τα οποία δεν είναι δυνατή η εξαγωγή ακριβών στατιστικών εκ των προτέρων, ο δυναμικός αλγόριθμος είναι πιο αποδοτικός. Η χρήση τεχνικών συσταδοποίησης οδηγεί σε βελτίωση της απόδοσης για ερωτήματα με μεγάλο πλήθος αποτελεσμάτων. Για τέτοια σύνθετα ερωτήματα οι τεχνικές αυτές μπορούν να οδηγήσουν σε βελτίωση μέχρι και τρεις τάξεις μεγέθους. Στο τέλος ακολουθεί μια περιγραφή του τρόπου που μπορούν να χρησιμοποιηθούν οι προτεινόμενες τεχνικές και το αναπτυγμένο σύστημα σε μια πραγματική εφαρμογή σημασιολογικής αναζήτησης πολιτιστικών αντικειμένων.
Query answering over ontologies, i.e., the computation of answers to user queries
based not only on explicitly stated information but also on implicit knowledge is an
important task in the context of the Semantic Web. In this direction, the SPARQL
query language has recently been extended by the World Wide Web Consortium
(W3C) with so-called entailment regimes. An entailment regime defines how queries
are evaluated under more expressive semantics than SPARQL's standard simple
entailment, which is based on subgraph matching.
In this thesis we describe a sound and complete algorithm for the OWL Direct Semantics entailment regime of SPARQL (SPARQL-OWL). The proposed SPARQL-OWL queries are very expressive since variables can occur within complex concepts
and can also bind to concept or role names apart from individuals. Initially, we
present a cost-based query planning strategy for SPARQL queries issued over an
OWL ontology. The costs of the model are based on information about the instances
of concepts and roles that are extracted from a model abstraction built by
an OWL reasoner. A static and a dynamic algorithm are presented which use these
costs to find optimal or near optimal execution orders for the templates of a query.
For the dynamic case, we improve the performance by exploiting an individual clustering approach that allows for computing the cost functions based on one individual sample per cluster. Afterwards, we propose optimizations that target particularly the complex queries that are allowed in SPARQL-OWL. These optimizations exploit query rewriting techniques and the concept and role hierarchies to efficiently answer such queries.
The proposed algorithm and optimizations have been implemented in a system
called OWL-BGP. Our experimental study, using this system, shows that the
static ordering usually outperforms the dynamic one when accurate statistics are
available. This changes, however, when the statistics are less accurate, e.g., due
to non-deterministic reasoning decisions. For complex SPARQL-OWL queries we
observe an improvement of up to three orders of magnitude due to the proposed
optimizations. Finally, we show that the implemented system works well in a real
world application about cultural heritage data.