About

PyMSS is a program for the multiple superposition of proteins. It uses a genetic algorithm to optimize the rigid-body transformation paramters.

The problem of multiple structure alignment can be divided into two sub-problems. The first is to identify multiply corresponding structural elements. The second is to calculate the appropriate rigid-body transformation for each structure to create an optimal superposition. As the 6n-dimensional conformational space is huge and highly nonlinear, heuristics are employed to find the optimal superposition. Traditionally, multiple structure alignment algorithms have focused computational power on the former sub-problem, that of the NP-hard largest common subsequence (Maier, 1978), relying on suboptimal pairwise rigid-body transformations to achieve the superposition. In contrast, PyMSS (Python Multiple Structure Superposition) relies on the conservation of functionally important structural elements and the efficiency of multiple sequence alignment algorithms to identify these elements to solve the first sub-problem. PyMSS is then free to expend computational resources on a more rigorous multiply optimal superposition.

PyMSS is implemented in the Python programming language. Python is an object-oriented scripting language with bindings to compiled libraries. This allows for rapid application development with good performance. The core genetic algorithm is found in the Genetic library, and is written in Python. All the matrix operations are performed using the Numerical Python library.

Availablility

The program is available here: PyMSS v0.8.4

Under the terms of the GNU General Public License this program is free to use, modify, and redistribute. In order to maintain compliance with the GPL, which grants the permission for redistribution, any changes made in the redistributed product shall be submitted to the original author. Additionally, the redistributed product must be licensed under the GNU GPL.

Execution

Four example superpositions have been performed using pymss. The four examples are listed individually below, or in one bundle here:

PyMSS is invoked using the following command:

pymss.py [-iter i] [-gen g] [-child c] [-org o] [-mutampl fm] [-initdev fi] [-decrease fd] [-debug] [-noinitial] [-timing] [-psinit] [-njinit] file.param

Where:

Supplementary

In order to run PyMSS, the following programs must also be installed:

Documentation

Available here: User Manual for PyMSS v0.8