Skip to content

brunoV/evolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Evolver

Profile-constrained protein sequence optimization using evolutionary algorithms

Introduction

Evolver is a module that makes it easy to optimize protein sequences using any arbitrary function but retaining its similarity with a given protein family.

It uses a fast, memory efficient and highly configurable Genetic Algorithms engine suitable for long sequence inputs and both high population and generation numbers.

Similarity with the input profile/alignment is calculated using any of the currently available plugins. Chief among these is Hmmer, which uses Hidden Markov Models to describe the protein family and emit an e-value based score for each individual in the population. However, the user can also choose simpler methods, incluiding a pure perl implementation of the Needleman sequence alignment algorithm. The pluggable architecture of the profile score module makes it easy to modify, extend or turn off completely.

Dependencies

This module is dependency-heavy. The most important, and their uses, are:

  • BioPerl and third-party executables.

    This module makes heavy use of BioPerl, specially the Bio::Tools::Run, Bio::SeqIO, Bio::Seq, Bio::AlignIO and Bio::SimpleAlign namespaces. Aditionally, the user should have installed standalone Clustalw and Hmmer, both of which can be obtained freely from their respective websites.

  • AI::Genetic::Pro::Macromolecule

    The GA engine, based on Lukaz's AI::Genetic::Pro.

  • Moose and friends

    Finally, this module uses Moose, a postmodern OO system for Perl. It also makes deliberate use of some MooseX extensions, notably MooseX::Object::Pluggable.

INSTALLATION

To install this module, run the following commands:

perl Makefile.PL
make
make test
make install

SUPPORT AND DOCUMENTATION

After installing, you can find documentation for this module with the perldoc command.

perldoc Evolver

COPYRIGHT AND LICENCE

Copyright (C) 2009 Bruno Vecchi

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

About

Profile-constrained sequence optimization using evolutionary algorithms

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published