Το πρόβλημα συλλογιστικής της απάντησης συζευκτικών ερωτημάτων πάνω από
βάσεις γνώσης Περιγραφικών Λογικών, μέσω της επανεγγραφής ερωτημάτων, έχει
παρουσιάσει ιδιαίτερη άνθιση τα τελευταία χρόνια. Δεδομένου ενός συζευκτικού
ερωτήματος και μιας βάσης γνώσης (TBox και ABox) μια διαδικασία επανεγγραφής
ερωτημάτων παράγει ένα νέο ερώτημα που ενσωματώνει τους περιορισμούς της βάσης
γνώσης που περιέχονται στο TBox, έτσι ώστε για οποιοδήποτε ABox (σύνολο
δεδομένων) η αποτίμηση του αρχικού ερωτήματος πάνω στο TBox και το ABox να
μπορεί να υπολογιστεί με την αποτίμηση μόνο του νέου ερωτήματος πάνω στο ABox.
Επειδή η πολυπλοκότητα απάντησης ερωτημάτων σε εκφραστικές Περιγραφικές
Λογικές είναι απαγορευτική έχουν αναπτυχθεί γλώσσες Περιγραφικών Λογικών που
είναι βατές, όπως η οικογένεια γλωσσών DL-Lite, η EL και η οικογένεια της
Datalog+- για τις οποίες έχει παρουσιαστεί πληθώρα αλγορίθμων/συστημάτων
επανεγγραφής ερωτημάτων. Όμως, όλοι οι αλγόριθμοι που γνωρίζουμε εκτελούνται
κάθε φορά από την αρχή χωρίς να λαμβάνουν υπ' όψιν και να εκμεταλλεύονται
προηγούμενες εκτελέσεις, ακόμα και εάν διαδοχικά ερωτήματα έχουν πολύ μικρές
διαφορές, κάτι το οποίο είναι ιδιαίτερα συχνό στο διαδίκτυο.
Στην παρούσα διατριβή μελετάμε το πρόβλημα της επανεγγραφής ερωτημάτων τα οποία
έχουν τροποποιηθεί με διάφορους τρόπους. Οι τρόποι αυτοί αφορούν στην προσθήκη
ή αφαίρεση διακεκριμένων μεταβλητών ή ατόμων. Πιο συγκεκριμένα, μελετάμε το
πρόβλημα υπολογισμού της επανεγγραφής ενός τροποποιημένου ερωτήματος
εκμεταλλευόμενοι την επανεγγραφή που έχει υπολογιστεί για το αρχικό ερώτημα,
αποφεύγοντας έτσι να την υπολογίσουμε εξαρχής. Στη συνέχεια παρουσιάζουμε
βελτιστοποιήσεις οι οποίες αυξάνουν σημαντικά την απόδοση των αλγορίθμων μας.
Ακολούθως, μειώνουμε την εκφραστικότητα των οντολογιών που μελετάμε στη γλώσσα
DL-LiteR έτσι ώστε να βελτιστοποιήσουμε περαιτέρω το πρόβλημα του υπολογισμού
της επανεγγραφής ενός ερωτήματος στο οποίο έχει προστεθεί ένα άτομο. Αυτό που
παρουσιάζει ιδιαίτερο ενδιαφέρον είναι πως οι τεχνικές μας θέτουν τις βάσεις
για έναν πρωτότυπο επαυξητικό αλγόριθμο επανεγγραφής σταθερών ερωτημάτων για
οντολογίες DL-LiteR. Πιο συγκεκριμένα, το ερώτημα μπορεί να «αναλυθεί» στα
άτομα του και στη συνέχεια να επεξεργαστούμε κάθε άτομο επαυξητικά.
Παρουσιάζουμε αναλυτικούς αλγόριθμους καθώς και ένα σύνολο από βελτιστοποιήσεις
οι οποίες όπως φαίνεται και από την πειραματική μας αξιολόγηση βελτιώνουν την
απόδοση του συστήματος μας και το καθιστούν ταχύτερο από όλα τα γνωστά
συστήματα.
Τέλος, στη διατριβή αυτή μελετάμε το πρόβλημα απάντησης ερωτημάτων πάνω από ένα
δίκτυο οντολογιών. Ειδικότερα, μελετάμε πως η Ασαφής Συνολοθεωρία και η Ασαφής
Λογική μπορούν να χρησιμοποιηθούν για την απόδοση σημασιολογίας και την
επικύρωση των αντιστοιχίσεων ανάμεσα σε δύο οντολογίες ώστε να μπορέσουμε να
επιλύσουμε ασυνέπειες που μπορεί να προκύψουν από την αντιστοίχιση τους. Αφού
λοιπόν επιλύσουμε τις ασυνέπειες αυτές χρησιμοποιούμε τις δύο αυτές οντολογίες
για να κατασκευάσουμε μια νέα (ασαφή) οντολογία η οποία είναι συνεπής και το
ABox της οποίας περιέχει αναθέσεις που έχουν προκύψει από την ερμηνεία των
ασαφών αντιστοιχίσεων και από τις δύο αρχικές οντολογιές κάνοντας έτσι εφικτή
την απάντηση ερωτημάτων.
The reasoning problem of answering conjunctive queries over
Description Logic knowledge bases via query rewriting has gained a lot of
attention in the last few years. Given a conjunctive query and a knowledge base
(TBox and ABox) a query rewriting procedure computes a new query that
incorporates the constraints of the knowledge base that are described in its
TBox, such that for any ABox (dataset) the evaluation of the initial query over
the TBox and the ABox can be computed by evaluating only the new query over the
ABox. Because the computational complexity in expressive Description Logics is
prohibitive tractable Description Logics languages have been developed, such as
the DL-Lite family, EL and the Datalog+- family for which there have been
presented many rewriting algorithms/systems. However, all these algorithms run
from scratch without taking into consideration previous runs, even if successive
queries are pretty similar, which is a very common scenario in the Web.
In this thesis we study the problem of query rewriting for queries that have
been refined in various ways. These are the addition and removal of
distinguished variables or atoms. More precisely, we study the problem of
computing the rewriting of a query that has been refined taking into account the
initial query without having to recompute it from scratch. In the following we
present various optimisations that drastically increase the performance of our
algorithms. Moreover, we limit the ontology language expressivity to
DL-LiteR in order to further optimise the problem of query rewriting for
queries that have been refined by the addition of an atom. Interestingly, our
approach implies a novel incremental algorithm for computing the rewriting of a
fixed query. More precisely, the query can be `decomposed' into its atoms and
then incrementally process each atom. We present detailed algorithms as well as
several optimisations that as depicted by our experimental evaluation improve
the performance of our system and show that it is faster than all the other
systems.
Finally in this thesis we study the problem of query answering over an ontology
network. Namely, given two ontologies and a set of mappings among them we study
how Fuzzy Sets and Fuzzy Logic can be used to provide semantics for the
mappings so that we can resolve inconsistencies that might arise from them.
After resolving these inconsistencies a new (fuzzy) ontology that is consistent
is created with an ABox that contains assertions, interpreted using the fuzzy
mappings, from both the initial ontologies.