This work concerns the study of combinatorial search problems from Bioinformatics and
their solution through constraint programming. Its purpose is to present the methods and
tools of constraint programming and propose various implementations on problems from
Bioinformatics. A reference is initially made to algorithms of constraints theory and a
number of known problems are addressed through them. Two programming approaches for
solving constraint satisfaction problems reviewed in chapter 4, ECLiPSe, a logic
programming system, and Java programming language with comparative use of three
popular constraint programming libraries, JaCoP, Cream and Choco. We propose a solution
for the problem of N-Queens, using previous options to develop two different applications
(Prolog and Java). While presenting the applications we also present the main classes and
functions each of these approaches provide. In Chapter 5, a review of the literature on the
coupling of the two regions (bioinformatics and constraints) is made and three problems
from the field of bioinformatics are presented together with a model and a solution of each of
them using constraints. These problems are i) the sequence alignment of macromolecules, ii)
protein structure prediction and iii) feature selection of biological data. In Chapter 6, we
present a solution for the third problem using Java's constraints library Choco. Finally, the
entire code of the tools created for the needs of this work is made available at the appendix.
Η παρούσα εργασία αφορά την μελέτη προβλημάτων συνδυαστικής αναζήτησης από τη
Βιοπληροφορική και την αντιμετώπισή τους μέσω της τεχνικής του προγραμματισμού με
περιορισμούς. Σκοπός της είναι να παρουσιάσει τις μεθόδους και τα εργαλεία του
προγραμματισμού με περιορισμούς και να προτείνει τρόπους εφαρμογής τους πάνω σε
προβλήματα της Βιοπληροφορικής. Για τον σκοπό αυτό γίνεται αρχικά αναφορά στους
αλγόριθμους της θεωρίας των περιορισμών και μοντελοποιείται ένας αριθμός γνωστών
προβλημάτων, ενώ διερευνώνται δύο προγραμματιστικές προσεγγίσεις για την επίλυση
προβλημάτων περιορισμών, ένα σύστημα λογικού προγραμματισμού, η ECLiPSe και η
γλώσσα προγραμματισμού Java με συγκριτική χρήση των τριών από τις δημοφιλέστερες
βιβλιοθήκες περιορισμών, της JaCoP, της Cream και της Choco, με την επίλυση του
προβλήματος των Ν-Βασιλισσών. Για τον σκοπό αυτό αναπτύσσονται δύο εφαρμογές
(Prolog και Java), ενώ ταυτόχρονα γίνεται μελέτη και παρουσίαση των κυριοτέρων κλάσεων
και λειτουργιών που προσφέρουν οι εν λόγω πλατφόρμες. Στη συνέχεια γίνεται ανασκόπηση
της βιβλιογραφίας επάνω στη σύζευξη των δύο περιοχών (βιοπληροφορική και περιορισμοί)
και παρουσιάζονται τρία προβλήματα από το χώρο της Βιοπληροφορικής για τα οποία
δίνεται ένα μοντέλο επίλυσης τους με χρήση περιορισμών. Συγκεκριμένα παρουσιάζονται η
στοίχιση ακολουθιών μακρομορίων, η πρόβλεψη δομής πρωτεϊνών και το πρόβλημα της
επιλογής χαρακτηριστικών βιολογικών δεδομένων για το οποίο δημιουργήθηκε και παρουσιάζεται μια προγραμματιστική προσέγγιση επίλυσης του. Τέλος διατίθεται,
κατάλληλα σχολιασμένος, ολόκληρος ο κώδικας των εργαλείων που δημιουργήθηκαν για τις
ανάγκες της παρούσας εργασίας.
Hellenic Open University
Items in Apothesis are protected by copyright, with all rights reserved, unless otherwise indicated.
Μελέτη Προβλημάτων Συνδυαστικής Αναζήτησης από τη Βιοπληροφορική, Μοντελοποίηση και Επίλυσή τους μέσω Προγραμματισμού με Περιορισμούς - Identifier: 143197
Internal display of the 143197 entity interconnections (Node labels correspond to identifiers)