From WCB 2014, Lyon, France.
The focus of this work is the use of constraint-based technology in the investigation of protein structures. We developed a system composed of two main parts: (1) a Graphical User Interface, to help the user, in particular users coming from Biology, in modeling protein structure studies with CP, and (2) a constraint solver targeted at protein structure analysis. Parts of the system have been presented in four previous works. Our current work provides a comprehensive constraint system for modeling generic structural protein properties and investigating different types of problems (e.g., structure prediction, studies of flexibility). Moreover the solver makes use, in some parts, of GPU computation following the ideas presented in, as explained below.
- The Graphical User Interface. The user interface is developed in Java and allows the user to impose constraints on protein structures as well as to visualize the results of the solver’s execution. The interface allows the user to select the primary structure of a target protein as input and to launch the solver. In turn, the solver computes a preliminary protein’s structure using default constraints, according to the sequence of amino acids given in input. The structure is displayed to the user, who can choose to add new constraints (e.g., distance constraints between secondary structure elements) and re-run the solver. This process can be iterated until a desired solution is found.
- The Solver. The constraint solver is composed by two sub-systems: (a) a parallel Multi-Agents System, and (b) the FIASCO constraint solver.
(a) applies a multi-agents system (MAS) perspective, where concurrent agents explore the folding of different parts of a protein. The strength of the approach lies in the agents’ ability to apply different types of knowledge, expressed in the form of declarative constraints, to prune the search space of folding alternatives. Distinct agents are in charge of retrieving, filtering, and coordinating local information about parts of a protein, aiming to reach a global consensus. This system is further enhanced by the use of a General-Purpose Graphical Processing Unit (GPGPU) to implement the MAS infrastructure, with significant performance improvements over the sequential implementation—available if the tool is not run on a suitable GPU. The multi-agents system is used to predict the preliminary protein’s structure on which the user will impose additional constraints to be satisfied by FIASCO. GPGPUs have been recently used in the implementation of a generic constraint solver.
(b) is an efficient C++-based resolution engine that can be used to model and solve a class of problems derived from loop modeling instances. FIASCO provides a uniform and efficient modeling platform for studying different structural properties—that have been, so far, addressed only using significantly distinct methods and tools. The declarative nature of constraint-based methods supports a level of elaboration tolerance that is not offered by other frameworks for protein structure prediction, facilitating the integration of additional knowledge in guiding the studies (e.g., availability of information on secondary structure).