PSMB_Seqan_2015_p3

Einleitung

Eines der bekanntesten und meist-genutzten Programme im Kontext der Bioinformatik ist NCBI Blast. Blast ist ein heuristisches Tool zum Finden von bedeutenden lokalen Alignments zwischen Eingabesequenzen und einer Datenbank. Mehrere, z.T. deutlich schnellere Programme als Blast existieren bereits, doch diese haben oft eine niedrigere Sensitivität, da sie andere Algorithmen und Heuristiken verwenden.

Aufgabe dieses Software-Projekts ist es den Blast-Algorithmus in seiner häufiggenutzen BlastX-Variante (Suchen von DNA-Sequenzen in Protein-Datenbanken) möglichst genau nach zu entwickeln. Für wesentliche Schritte des Algorithmus und des "Drumherum" kann dabei auf bestehende Funktionalität in SeqAn zurückgegriffen werden, nicht jedoch für alle. Am Ende sollte ein vollständiges Programm entstehen, das dieselben Ergebnisse produziert wie NCBI BlastX. Es wäre zu hoffen, dass eine effiziente Implementierung auf Basis von SeqAn außerdem schneller wäre als NCBI BlastX.

Programmschritte

  • Einlesen der Daten [sequence_IO-Modul]
  • Übersetzen von DNA in Proteinsequenzen [translation-Modul]
  • Seeding-Phase [könnte mit dem find-Modul gemacht werden]
  • Verification-Phase [hier können erstmal das align-Modul und das align_extend-Modul und/oder das seed-Modul verwendet werden]
  • scoring, Berechnen von e-Werten [blast-Modul]
  • Schreiben der Ausgabe-Dateien [blast-Modul]

Zusatzpunkte gibt es für das einfache Verwenden von Parallelisierung! Bei ausreichender Zeit ließen sich in der Verification-Phase auch noch Algorithmen anpassen bzw. hinzufügen.

Ergebnisse für die/den Studierende/n

  • Lesen und verstehen von wichtigen Algorithmen
  • Arbeiten mit existierendem Code und Dokumentation
  • Eigenes Umsetzen von algorithmischen Ideen in Code
  • Entwickeln einer voll funktionierenden SeqAn-Anwendung

Literatur

Da die Primärquellen zu Blast nicht sehr eingängig sind empfehle ich zu erst mit den kurzen Zusammenfassungen in meiner Master-Arbeit anzufangen: http://www.mi.fu-berlin.de/en/inf/groups/abi/theses/master_dipl/hauswedell/msc_thesis_hauswedell.pdf

Inbesondere Section 2.2.1 zum Algorithmus der Seeding-Phase und Section 2.3.1 zum Algorithmus des Verification-Phase.

Original Paper:

Comments

 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback