CMSC 423, Fall 2011: Bioinformatic Algorithms, Databases, and Tools
Project
-
Global multiple sequence alignment with affine gaps
- Call your class containing
public static void main(String [] argv) "Main".
- Parse
score.matrix, in.fasta.
- Find global alignments (with affine gaps) for every pair of sequences.
- For each sequence, calculate the sum of its alignment scores (from above). Pick the one for which the sum is minimal (S_c).
- Starting with S_c, progressively align it with other sequences.
- To submit the project,
export it as a
.jar. Make sure that java msa.jar score.matrix in.fasta out.fasta
works.
-
Coming
Programming advice
Before you write any code for your projects, come up with a few test cases: think about the output you
would expect to see; think of corner cases; come up with examples where your algorithm may generate multiple
optimal solutions.
On dynamic programming:
(examples, techniques, and why it is not always the same as the recursion)
S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani.
Algorithms,
chapter 6.
July 18, 2006. Online.