Bowtie (sequence analysis)

{{Short description|Sequence alignment and analysis software}}

{{Infobox software

| name = Bowtie

| logo =

| logo alt =

| logo caption =

| screenshot =

| screenshot alt =

| caption =

| collapsible =

| author = Ben Langmead
Cole Trapnell
Mihai Pop
Steven Salzberg

| developer = Ben Langmead et al.,

| released =

| discontinued =

| ver layout =

| latest release version = {{multiple releases

| branch1 = Bowtie

| version1 = 1.3.0

| date1 = {{Start date and age|2020|07|22}}{{cite web

| url = http://bowtie-bio.sourceforge.net/index.shtml

| title = Bowtie: An ultrafast, memory-efficient short read aligner

| website = bowtie-bio.sourceforge.net

| access-date = 2021-03-28

}}

| branch2 = Bowtie 2

| version2 = 2.4.2

| date2 = {{Start date and age|2020|10|05}}{{cite web

| url = http://bowtie-bio.sourceforge.net/bowtie2/index.shtml

| title = Bowtie 2: fast and sensitive read alignment

| website = bowtie-bio.sourceforge.net

| access-date = 2021-03-28

}}

}}

| latest release date =

| latest preview version =

| latest preview date =

| repo = Bowtie: {{url|https://github.com/BenLangmead/bowtie}}
Bowtie 2: {{url|https://github.com/BenLangmead/bowtie2}}

| programming language = C++

| operating system = Linux
macOS
Windows

| platform =

| size =

| language =

| language count =

| language footnote =

| genre = Bioinformatics

| license =

| website ={{URL|http://www.bowtie-bio.sourceforge.net}}

| standard =

| AsOf =

}}

Bowtie is a software package commonly used for sequence alignment and sequence analysis in bioinformatics.{{cite journal|last=Langmead|first=Ben|author2=Cole Trapnell|author3=Mihai Pop|author4=Steven L Salzberg|title=Ultrafast and memory-efficient alignment of short DNA sequences to the human genome|journal=Genome Biology|date=4 March 2009|volume=10|issue=3|page=10:R25|doi=10.1186/gb-2009-10-3-r25|pmid=19261174|pmc=2690996|doi-access=free }} The source code for the package is distributed freely and compiled binaries are available for Linux, macOS and Windows platforms. As of 2017, the Genome Biology paper describing the original Bowtie method has been cited more than 11,000 times. Bowtie is open-source software and is currently maintained by Johns Hopkins University.

History

The Bowtie sequence aligner was originally developed by Ben Langmead et al. at the University of Maryland in 2009. The aligner is typically used with short reads and a large reference genome, or for whole genome analysis. Bowtie is promoted as "an ultrafast, memory-efficient short aligner for short DNA sequences." The speed increase of Bowtie is partly due to implementing the Burrows–Wheeler transform for aligning,{{cite journal|last1=Ferragina|first1=Paolo|last2=Manzini|first2=Giovanni|title=Indexing compressed text|journal=Journal of the ACM|date=2005 |volume=52|issue=4|pages=552–581|doi=10.1145/1082036.1082039|s2cid=6200428 }} which reduces the memory footprint (typically to around 2.2GB for the human genome);{{cite web|title=Bowtie: An ultrafast, memory-efficient short read aligner - SourceForge|url=http://bowtie-bio.sourceforge.net/index.shtml|accessdate=29 November 2013}} a similar method is used by the BWA{{cite journal|last1=Li|first1=H.|last2=Durbin|first2=R.|title=Fast and accurate short read alignment with Burrows-Wheeler transform|journal=Bioinformatics|date=18 May 2009|volume=25|issue=14|pages=1754–1760|doi=10.1093/bioinformatics/btp324|pmid=19451168|pmc=2705234}} and SOAP2{{cite journal|last1=Li|first1=R.|last2=Yu|first2=C.|last3=Li|first3=Y.|last4=Lam|first4=T.-W.|last5=Yiu|first5=S.-M.|last6=Kristiansen|first6=K.|last7=Wang|first7=J.|title=SOAP2: an improved ultrafast tool for short read alignment|journal=Bioinformatics|date=3 June 2009|volume=25|issue=15|pages=1966–1967|doi=10.1093/bioinformatics/btp336|pmid=19497933|doi-access=free}} alignment methods.

Bowtie conducts a quality-aware, greedy, randomized, depth-first search through the space of possible alignments. Because the search is greedy, the first valid alignment encountered by Bowtie will not necessarily be the 'best' in terms of the number of mismatches or in terms of quality.

Bowtie is used as a sequence aligner by a number of other related bioinformatics algorithms, including TopHat,{{cite journal|last1=Trapnell|first1=C.|last2=Pachter|first2=L.|author2-link= Lior Pachter |last3=Salzberg|first3=S. L.|title=TopHat: discovering splice junctions with RNA-Seq|journal=Bioinformatics|date=16 March 2009|volume=25|issue=9|pages=1105–1111|doi=10.1093/bioinformatics/btp120|pmid=19289445|pmc=2672628}} Cufflinks{{cite journal|last1=Trapnell|first1=Cole|last2=Roberts|first2=Adam|last3=Goff|first3=Loyal|last4=Pertea|first4=Geo|last5=Kim|first5=Daehwan|last6=Kelley|first6=David R|last7=Pimentel|first7=Harold|last8=Salzberg|first8=Steven L|last9=Rinn|first9=John L|last10=Pachter|first10=Lior|author2-link= Lior Pachter |title=Differential gene and transcript expression analysis of RNA-seq experiments with TopHat and Cufflinks|journal=Nature Protocols|date=1 March 2012|volume=7|issue=3|pages=562–578|doi=10.1038/nprot.2012.016|pmid=22383036|pmc=3334321}} and the CummeRbund Bioconductor package.{{cite web|title=CummeRbund - An R package for persistent storage, analysis, and visualization of RNA-Seq from cufflinks output|url=http://compbio.mit.edu/cummeRbund/|accessdate=11 August 2015}}

Bowtie 2

On 16 October 2011, the developers released a beta fork of the project called Bowtie 2.{{cite journal|last1=Langmead|first1=Ben|last2=Salzberg|first2=Steven L|title=Fast gapped-read alignment with Bowtie 2|journal=Nature Methods|date=4 March 2012|volume=9|issue=4|pages=357–359|doi=10.1038/nmeth.1923|pmid=22388286|pmc=3322381}} In addition to the Burrows-Wheeler transform, Bowtie 2 also uses an FM-index (similar to a suffix array) to keep its memory footprint small. Due to its implementation, Bowtie 2 is more suited to finding longer, gapped alignments in comparison with the original Bowtie method. There is no upper limit on read length in Bowtie 2 and it allows alignments to overlap ambiguous characters in the reference.

References

{{reflist|2}}