You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _wikis/Google_Summer_of_Code_2013.mediawiki
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,6 +23,22 @@ Please send your proposals to the BioJava dev mailing list early, so we can disc
23
23
24
24
P.S. Actually you are not limited to the old versions of BioJava, there are plenty of small little known Java projects in the Bioinformatics field which can be of interest to a wider user community. You can integrate them as a whole or cannibalize them and extract something useful on its own. You are more than welcome to optimize and improve the code while porting it to BioJava as you see fit.
25
25
26
+
==== Improve structural alignment datastructures to support topology-independent alignments ====
27
+
28
+
BioJava contains a number of algorithms for aligning protein structures. In the most general case, an alignment consists of a mapping between residues of two (or more) proteins. However, for historical and performance reasons alignments are stored as linear, sorted arrays. This makes it difficult to express cases where the order of aligned residues differs between the two proteins. For instance, storing the following alignment requires some creative work-arounds:
29
+
30
+
123456
31
+
456123
32
+
33
+
Additionally, the class to store structural alignments (AFPChain) contains a number of unneccessary, poorly documented, or algorithm-specific parameters which should be removed or refactored.
34
+
35
+
Your challenge is to propose and implement a data structure for storing structure alignments which
36
+
* Is flexible enough to store topology-independent alignments
37
+
* Efficiently utilizes memory
38
+
* Has good performance for common tasks
39
+
40
+
This project requires an understanding of basic data structures and performance considerations. A successful proposal should consider not only the new data structure, but also suggest a plan for integrating it into existing methods, particularly in the biojava3-structure and biojava3-structure-gui modules.
0 commit comments