I'm a high school student whose interested in bioinformatics. Therefore I chose a project which I study Sequence Assembly. My main goal is to compare different paradigms (Greedy, OLC, De Bruijn).

I have done my initial research but I don't know which assembler to use for comparing paradigms. Most of them are designed for real world usage, where there are many different factors to consider, but in my case the problem is more like a Computer Science problem: Reconstructing an array of symbols from it's fragments.

If there is no hope, I will try to implement them myself but I want to avoid that since it will very likely to be error-prone and slower than real world implementations.


  • 1
    $\begingroup$ Well, if I understand correctly, you would need at least three assemblers, one for each of the "paradigms" you wish to evaluate. Do you have a dataset of DNA reads to use as input? What exactly do you hope to determine? Off the top of my head people usually want to minimize the length of time that it takes and maximize the accuracy. Additional variables include the number of compute cores and amount of RAM required. Of course the estimated dollar cost may also be germane. There are very likely several review articles out there that have already made side-by-side comparisons like this. $\endgroup$ – mdperry Apr 20 '15 at 21:30
  • 1
    $\begingroup$ Velvet is a De Bruijn graph based assembler, the original Staden package usues the OLC method as far as I know, an I think you can write a greedy one for yourself, as I don't know any software that uses that approach. $\endgroup$ – Nandor Poka Apr 21 '15 at 9:53
  • 1
    $\begingroup$ an article on comparison of OLC and De Bruijn assemblers: bfg.oxfordjournals.org/content/11/1/25.full $\endgroup$ – Nandor Poka Apr 21 '15 at 13:19
  • 1
    $\begingroup$ sciencedirect.com/science/article/pii/S0888754310000492 this paper may also help. It reviews different algorithms. $\endgroup$ – Nandor Poka Apr 21 '15 at 13:58
  • $\begingroup$ @mdperry: Yes, you understand correctly. I initially thought using Human Genome at gutenberg and creating random sequences, then I will cut them into reads. I hope to measure the lengths of the contigs and calculate their distance to initial sequence. Also I want to measure implementations resource (time, processing power, memory) usage. At the end, I want to repeat these tests as coverage and count of repetitive sequences changes. $\endgroup$ – Bora M. Alper Apr 21 '15 at 18:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.