A short note on dynamic programming in a band
Abstract Background Third generation sequencing technologies generate long reads that exhibit high error rates, in particular for insertions and deletions which are usually the most difficult errors to cope with. The only exact algorithm capable of aligning sequences with insertions and deletions is...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
BMC
2018-06-01
|
Series: | BMC Bioinformatics |
Subjects: | |
Online Access: | http://link.springer.com/article/10.1186/s12859-018-2228-9 |
id |
doaj-c5bf69f1fd334726b44b984487a3f112 |
---|---|
record_format |
Article |
spelling |
doaj-c5bf69f1fd334726b44b984487a3f1122020-11-24T22:17:20ZengBMCBMC Bioinformatics1471-21052018-06-011911510.1186/s12859-018-2228-9A short note on dynamic programming in a bandJean-François Gibrat0MaIAGE, INRA, Université Paris-SaclayAbstract Background Third generation sequencing technologies generate long reads that exhibit high error rates, in particular for insertions and deletions which are usually the most difficult errors to cope with. The only exact algorithm capable of aligning sequences with insertions and deletions is a dynamic programming algorithm. Results In this note, for the sake of efficiency, we consider dynamic programming in a band. We show how to choose the band width in function of the long reads’ error rates, thus obtaining an O(N32) $O(N^{\frac {3}{2}})$ algorithm in space and time. We also propose a procedure to decide whether this algorithm, when applied to semi-global alignments, provides the optimal score. Conclusions We suggest that dynamic programming in a band is well suited to the problem of aligning long reads between themselves and can be used as a core component of methods for obtaining a consensus sequence from the long reads alone. The function implementing the dynamic programming algorithm in a band is available, as a standalone program, at: https://forgemia.inra.fr/jean-francois.gibrat/BAND_DYN_PROG.githttp://link.springer.com/article/10.1186/s12859-018-2228-9NGSRead correctionSemi-global alignment |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Jean-François Gibrat |
spellingShingle |
Jean-François Gibrat A short note on dynamic programming in a band BMC Bioinformatics NGS Read correction Semi-global alignment |
author_facet |
Jean-François Gibrat |
author_sort |
Jean-François Gibrat |
title |
A short note on dynamic programming in a band |
title_short |
A short note on dynamic programming in a band |
title_full |
A short note on dynamic programming in a band |
title_fullStr |
A short note on dynamic programming in a band |
title_full_unstemmed |
A short note on dynamic programming in a band |
title_sort |
short note on dynamic programming in a band |
publisher |
BMC |
series |
BMC Bioinformatics |
issn |
1471-2105 |
publishDate |
2018-06-01 |
description |
Abstract Background Third generation sequencing technologies generate long reads that exhibit high error rates, in particular for insertions and deletions which are usually the most difficult errors to cope with. The only exact algorithm capable of aligning sequences with insertions and deletions is a dynamic programming algorithm. Results In this note, for the sake of efficiency, we consider dynamic programming in a band. We show how to choose the band width in function of the long reads’ error rates, thus obtaining an O(N32) $O(N^{\frac {3}{2}})$ algorithm in space and time. We also propose a procedure to decide whether this algorithm, when applied to semi-global alignments, provides the optimal score. Conclusions We suggest that dynamic programming in a band is well suited to the problem of aligning long reads between themselves and can be used as a core component of methods for obtaining a consensus sequence from the long reads alone. The function implementing the dynamic programming algorithm in a band is available, as a standalone program, at: https://forgemia.inra.fr/jean-francois.gibrat/BAND_DYN_PROG.git |
topic |
NGS Read correction Semi-global alignment |
url |
http://link.springer.com/article/10.1186/s12859-018-2228-9 |
work_keys_str_mv |
AT jeanfrancoisgibrat ashortnoteondynamicprogramminginaband AT jeanfrancoisgibrat shortnoteondynamicprogramminginaband |
_version_ |
1725785378286206976 |