2015 Wattiezm Memoire
Total Page:16
File Type:pdf, Size:1020Kb
Institutional Repository - Research Portal Dépôt Institutionnel - Portail de la Recherche University of Namurresearchportal.unamur.be THESIS / THÈSE MASTER IN COMPUTER SCIENCE Design of a support system for modelling gene regulatory networks Author(s) - Auteur(s) : Wattiez, Morgan Award date: 2015 Awarding institution: University of Namur Supervisor - Co-Supervisor / Promoteur - Co-Promoteur : Link to publication Publication date - Date de publication : Permanent link - Permalien : Rights / License - Licence de droit d’auteur : General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal ? Take down policy If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim. BibliothèqueDownload date: Universitaire 04. oct.. 2021 Moretus Plantin University of Namur Faculty of Computer Science Academic Year 2014{2015 Design of a support system for modelling gene regulatory networks Morgan WATTIEZ Supervisor: (Signed for Release Approval Jean-Marie JACQUET Study Rules art. 40) Thesis submitted in partial fulfillment of the requirements for the degree of Master in Computer Science at the University of Namur Abstract The understanding of gene regulatory networks depends upon the solving of ques- tions related to the interactions in those networks. This study shows how a promising programming paradigm, constraint logic programming, can be used to design a support tool for modelling biological networks, with the emphasis on gene regulatory networks. We describe the most important elements of those complex regulatory networks, as well as popular formal methods and tools designed for their modelling. Then we introduce to the constraint logic programming paradigm and its advantages for solving real world as biological problems. Our approach is to use this paradigm to design a simple support tool with the aiming to help in modelling gene regulatory networks. For instance we set the emphasis on the understanding of the nature of interactions in those networks. To illustrate our approach, we designed BioNet, and present its interesting capabilities. Finally, we illustrate some of its features with the modelling of the regulation in the lac operon. Keywords Gene regulatory networks, biological networks, network inference, Prolog, constraint logic programming. ii Acknowledgements I wish to express my gratitude to my supervisor, Professor Jean-Marie Jacquet, for his continuous encouragement as well as for providing me with all the necessary support for the research, his time, criticism, advices, and correction to this master thesis from the beginning. I take this opportunity to express gratitude to all the faculty members for their help and support during the three last years of study at this university. I would like to thank my friends and colleagues at work for their cheerfulness, un- ceasing support and encouragement. I am also grateful to Fr´ed´eriquewho supported me through this venture, for her great patience and attention during the last three years devoted to courses and this master thesis. In addition, thanks to one and all, who directly or indirectly, have let their hand in this unforgettable venture . iv Contents 1 Introduction1 2 Genetics and Gene regulatory networks5 2.1 Introduction...................................5 2.2 From atoms to complex organisms......................5 2.3 DNAs and RNAs................................7 2.3.1 Role...................................7 2.3.2 Structure................................8 2.4 Proteins.....................................9 2.5 Ribosomes and the genetic code........................ 10 2.6 Genome, chromosomes and genes....................... 12 2.7 Genes...................................... 14 2.8 DNA Sequencing................................ 15 2.9 Gene expression................................. 16 2.10 Data and analysis of Gene expression..................... 17 2.11 Gene regulation................................. 18 2.11.1 Transcriptional regulation....................... 20 2.11.2 Gene regulatory networks....................... 21 2.11.3 Gene regulation in the lac operon................... 24 2.12 Databases of biological information...................... 26 2.13 Conclusion................................... 27 3 Formal methods for studying gene regulatory networks 29 3.1 Introduction................................... 29 3.2 Gene networks modelling........................... 29 3.2.1 Techniques and limits......................... 31 3.2.2 Exploring organisational aspects of gene networks......... 33 3.2.3 From data to modelling........................ 34 3.3 Models overview................................ 36 3.3.1 Classification.............................. 36 3.3.2 Graph (theoretical) models...................... 38 3.3.3 Boolean networks............................ 40 3.3.4 General logical method........................ 43 3.3.5 Probabilistic Boolean networks.................... 45 3.3.6 Kinetic logic models.......................... 46 3.3.7 Bayesian networks........................... 47 3.3.8 Differential-equations-based Models................. 48 vi Contents vii 3.3.9 Comparison............................... 48 3.4 Existing modelling and simulation tools................... 49 3.4.1 Model checking tools.......................... 49 3.4.2 Data exchange formats......................... 51 3.5 Conclusion................................... 52 4 Constraint logic programming for analyzing GRNs 55 4.1 Introduction................................... 55 4.2 Problems solving approaches with constraint solvers............ 55 4.3 Constraint logic programming......................... 57 4.3.1 Solving of constraint satisfaction problems.............. 61 4.3.2 Solving techniques........................... 61 4.3.3 Node and arc consistency....................... 63 4.3.4 Syntax of a constraint programming language............ 64 4.3.5 Simplification and optimization.................... 65 4.3.6 Usages and benefits.......................... 66 4.3.7 Complexity............................... 67 4.4 Prolog...................................... 68 4.4.1 Usages.................................. 68 4.4.2 CLP(FD)................................ 69 4.5 From problem description to the solution.................. 70 4.5.1 Modelling with constraints...................... 70 4.5.2 Translation and resolution in Prolog................. 71 4.6 Application to modelling gene regulatory networks............. 72 4.7 Conclusion................................... 74 5 Design of a support tool for gene regulatory networks 75 5.1 Introduction................................... 75 5.2 User requirements............................... 75 5.2.1 Model.................................. 76 5.2.2 User interface.............................. 77 5.3 Modelling process in BioNet.......................... 77 5.3.1 Gene expression data.......................... 78 5.3.2 User hypotheses............................ 80 5.3.3 Regulation rules............................ 80 5.3.4 Resolution with CLP(FD)....................... 81 5.3.5 Configuration.............................. 82 5.4 Modelling of the lac operon in BioNet.................... 84 5.5 Architecture................................... 86 5.5.1 Prolog.................................. 87 5.5.2 Java................................... 88 5.5.3 Server.................................. 89 5.5.4 User interface.............................. 91 5.5.5 Messages................................ 92 5.6 Implementation................................. 94 5.6.1 Prolog Implementation......................... 94 5.6.2 Server and user interface........................ 94 Contents viii 5.6.3 Dependencies.............................. 94 5.7 Limits and perspectives............................ 95 5.8 Conclusion................................... 97 6 Conclusion 99 List of Tables 100 List of Figures 102 A Implementation description 105 A.1 Sample user input............................... 105 A.2 Execution of BioNet in SWI-Prolog...................... 105 A.3 Configuration.................................. 107 A.4 BioNet Prolog source code........................... 108 A.5 Lac Operon parameters............................ 119 A.6 BioNet - Java source code........................... 120 A.6.1 REST Provider to serve BioNet configuration files......... 120 A.6.2 SWI-Prolog initializer......................... 123 A.7 BioNet - Java dependencies.......................... 126 A.8 BioNet - JavaScript source code........................ 127 A.8.1 Configuration editor.......................... 127 A.8.2 Network visualizer........................... 128 Bibliography 129 Acronyms AA amino acid. ACM Association for Computing Machinery. API Application programming interface. BDD Binary Decision Diagram. BioPAX Biological Pathway Exchange. BN Bayesian Network. cAMP cyclic adenosine monophosphate, or cyclic AMP. CAP catabolite activator protein. CLP constraint logic