Computational Protein Design: trying an Answer Set Programming approach to solve the problem
Résumé
Proteins are macromolecules made of a chain of amino-acids. The combinatorial nature of the space of possible protein conformations makes computer-aided protein study a major research field in bioinformatics. The problem of \textit{computational protein design} aims at finding the best protein conformation to perform a given task. This problem can be reduced to an optimization problem, looking for the minimum of an energy function depending on the amino-acid interactions in the protein. We have designed a model based on Answer Set Programming. The CPD problem may be easily modeled as an ASP program but a practical implementation able to work on real-sized instances has never been published. We have raised the main source of difficulty for current ASP solvers and ran a series of benchmarks highlighting the importance of finding a good upper bound estimation of the target minimum energy to reduce the amount of combinatorial search. Our solution clearly outperforms a direct ASP implementation without this estimation and has comparable performances with respect to SAT-based approaches. It remains less efficient that the recent approach by cost function networks of D. Allouche & al., showing there exists still some place for improving the optimization component in ASP with more dynamical strategies.
Les protéines sont des macromolécules constituées d'une chaîne d'acides aminés. La nature combinatoire de l'espace des conformations possibles de ces protéines fait de l'étude assistée par ordinateur des protéines un thème de recherche majeur en bioinformatique. Le problème de la conception assistée de protéines (Computational Protein Design) consiste à trouver la meilleure conformation de protéine capable d'effectuer une certaine tâche. Ce problème peut être réduit à un problème d'optimisation où l'on recherche le minimum atteint par une fonction d'énergie dépendant des interactions entre acides aminés de la protéine. Nous avons conçu un modèle dans le cadre de la Programmation par Ensembles Réponses ( Answer Set Programming) pour la résolution de ce problème. Le codage du problème CPD en ASP est aisé mais une implémentation pratique capable de travailler sur des instances de taille réelle n'a jamais été publiée. Nous avons élucidé la principale difficulté à laquelle sont confrontés les solveurs actuels et effectué une série d'expérimentations sur des benchmarks montrant l'importance de trouver une bonne estimation de borne supérieure pour le minimum d'énergie recherché, afin de réduire le volume de recherche combinatoire nécessaire. Notre solution surpasse nettement une implémentation directe du problème en ASP sans cette estimation et a des performances comparable aux approches SAT. Elle reste cependant moins efficace que l'approche récente par réseaux de fonctions de coût ( cost function networks) développée par D. Allouche & col., ce qui montre qu'il reste encore des améliorations à apporter au composant d'optimisation des solveurs ASP en incluant des stratégies plus dynamiques.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...