1 - Universidade de São Paulo

advertisement
Alinhamento de Seqüências
Genéticas
Fevereiro-2011
Daniel Guariz Pinheiro, PhD.
Laboratório de Genética Molecular e Bioinformática
Departamento de Genética
Faculdade de Medicina de Ribeirão Preto
Universidade de São Paulo
Introdução
SEQÜÊNCIAS GENÉTICAS
Seqüenciamento de DNA
Leroy Hood
Roche/454 FLX ABI SOLiD ION Torrent
- Seqüenciador
semi-automático
1986
Gilbert &
Sanger
1977
-Métodos para o
seqüenciamento de DNA
2002
1986 Applied Biosystems
-Seqüenciador
automático
comercial
2005
2007
2006 2008
Illumina/Solexa
Genome Analyzer
2010
2010
Helicos
Pacific
HeliScope Biosciences
Nova Geração de
Seqüenciadores de DNA
Roche/454 FLX
Illumina/Solexa GA
ABI SOLiD
ABI 3730xl
Roche/454 FLX
Illumina/Solexa GA
ABI SOLiD
Método
Sanger
Piroseqüenciamento
Seqüenciamento
por Síntese
Seqüenciamento
por Ligação
Dados/run
290 Kb
~300 Mb
~7 Gb
> 15 Gb
Tempo/run
1 hora
5 horas
3-7 dias
10 dias
Tamanho
~500 - 800 pb
~200 - 500 pb
~35-100 pb
~25 - 35 pb
Custo/run
$48
$6.800
$9.300
$11.000
Runs
Genoma 3Gb
312.500
($15.000.000)
360
($2.448.000)
59
($548.700)
30
($330.000)
Adapted from Richard Wilson, School of Medicine, Washington University, “Sequencing the
Cancer Genome”
ABI 3730xl
2008
Pares de base
Seqüências
99.116.431.942
98.868.465
Sequence Read Archive
“(…) In mid-September
2010, the
SRA contained >500 billion reads
consisting of 60 trillion base pairs
available for download (…) Almost 80% of the
sequencing data are derived from the Illumina
GA platform. The SOLiD™ and Roche/454
platforms account for 15% and 5% of
“We’re growing by about 1 Tb/month.”
submitted base pairs, respectively.(…)”
NCBI’s staff scientist Martin Shumway
(Leinonen R et. al., 2011)
Formato Fasta
sequence.fa
sequence.qual
>SEQUENCE_1
cagtcagcatactcagtcagtcatgcatgctga
gtcacttgcatgacgtcatgactgcatgactgc
>SEQUENCE_1
1 9 7 15 20 21 16 26 31 37 38 ...
31 13 23 29 31 33 35 30 29 34 ...
Extensões: .fa, .fasta, .fna
Qualidade
O que queremos dizer com qualidade ?
>SEQUENCE_1
1 9 7 15 20 21 16 26 31 37 38 ...
31 13 23 29 31 33 35 30 29 34 ...
Score Perro
Qphred  10log10 (Perror )
10
0.1
20
0.01
30
0.001
Formato fastq
Formato fastq
Qualidade codificada como um único caracter da tabela ASCII.
sequence.fastq
@SOLEXA01:1:1:27:1992#0/1
AGTACAAGAGACAGACATTCTTTTTTTTGACACAAG
+SOLEXA01:1:1:27:1992#0/1
\FFFMXPYDDHJSUMVUJLPSNFRXZEDLNLHKHIT
Extensões: .fastq
SOLEXA01
the unique instrument name
1
flowcell lane
1
tile number within the flowcell lane
27
'x'-coordinate of the cluster within the tile
1992
'y'-coordinate of the cluster within the tile
#0
index number for a multiplexed sample (0 for
no indexing)
/1
the member of a pair, /1 or /2 (paired-end or
mate-pair reads only)
P
Qsolexa  10log10 ( error )
1  Perror
Qphred  10log10 (Perror )
Introdução
ATRIBUINDO SIGNIFICADO ÀS
SEQÜÊNCIAS
Há uma referência?
• Reseqüenciamento
– Existem seqüências produzidas a partir de um
genoma/transcriptoma da mesma espécie da amostra
ou de uma espécie relacionada que podem ser usadas
como referências. Alinhamento com a referência.
• Seqüenciamento de novo
– Não há seqüências que podem ser usadas como
referências. Este tipo de seqüenciamento exigirá uma
montagem (assembly) das seqüências, utilizando
apenas os dados obtidos desse seqüenciamento.
Alinhamento entre as seqüencias geradas, que
permitirá a obtenção de um consenso.
Seqüenciamento em pares
•
Seqüenciamento em pares
mate-pair
paired-ends
(Korbel et al. , 2007)
–
–
36 bp
Referência:
>SOLEXA01:1:1:27:1992#0/1
>SOLEXA02:1:1:11:1992#0/1
36 bp
~ ~1928
128bp
bpaa4928
~428bp
bp
paired-ends
mate-pair
>SOLEXA01:1:1:27:1992#0/2
>SOLEXA02:1:1:11:1992#0/2
Alinhamento de Seqüências
Em Bioinformática, alinhamento de seqüências é
uma forma de dispor as seqüências de DNA,
RNA, ou proteínas para identificar regiões de
similaridade que podem ser conseqüência de
relacionamentos funcionais, estruturais ou
relações evolutivas entre elas.
Significado Biológico do
Alinhamento de Seqüências
• Definição de 3 termos importantes:
– identidade: refere-se à fração de aminoácidos ou
nucleotídeos idênticos entre pares de seqüências
após um alinhamento dessas seqüências;
– similaridade: refere-se à fração de aminoácidos ou
nucleotídeos similares (com propriedades físicoquímicas semelhantes – aminoácidos conservados)
entre pares de seqüências após um alinhamento
dessas seqüências;
– homologia: representa uma relação evolutiva entre
as seqüências;
Identificação das seqüências
• Reseqüenciamento
– Alinhamento: Conjunto de Seqüências X Seqüências
Referências (Ex.: Genoma)
>seq1
gcagtcagtcacacatgtca...
>seq2
cgcgcatgcgcgtactctat...
>seq3
tcgagcatcatcagtcgtca...
>seq4
tatgctttatagcgagtcat...
.....
>chrX
atcacacatgtcacatggtcag
ggcatcagtcagtcagtcatgc
gcgcgcatgcgcgtactctatc
tcatgcgtcagtcatgcatgcg
agcagtcatgcatgcatcgcac
tgcatcatacgtcatgcatgaa
.....
Objetivos:
- Eliminar as sequência sem hit
- Eliminar as sequência com hits múltiplos (ambiguous)
- Guardar as sequência com hit único (unambiguous)
Montagem de seqüências
• Seqüenciamento de novo
– Alinhamento: Conjunto de Seqüências X Conjunto de
Seqüências
Consensus :
Seq A
Seq B
Seq C
Seq D
Seq E
Seq F
Seq G
ACAGTACGACAGTACGACCAGTACGATAGCAGTACGATACGACCGA
TCCAGTACGATAGCAGTACGATCAG
GCACAGTACGACCAGTACGATACAGGAAC
CAGGTACGATACGACGGACGGGG
ACAGTACGACAGTACGAAAC
GTACGACCAGTACGATACACT
AACGACAGTACGAAACGGG
TATAGGTACGATACGACGGAC
Introdução
ALGORITMOS PARA ALINHAMENTO
DE SEQÜÊNCIAS
Alinhamentos de Seqüências
•
Alinhamento Global (e.g. Algoritmo de Needleman-Wunsch)
• As seqüências envolvidas devem ser alinhadas de um extremo ao outro.
Adequado quando as seqüências possuem aproximadamente o mesmo
tamanho.
Seq X : C A T T A G C A G C C T
| . | |
| | |
Seq Y : - A G T A – - A G C - -
•
Alinhamento Local (e.g. Algoritmo de Smith–Waterman)
• Procura-se alinhar apenas as regiões mais similares, independente da
localização relativa de cada região.
Seq X [4,10]: T A G C A G C
| |
| | |
Seq Y [3,7]: T A - - A G C
Alinhamentos (Global/Local) (DNA/Protein)
• FASTA (http://fasta.bioch.virginia.edu/fasta_www2/fasta_list2.shtml)
• EMBOSS Align (http://www.ebi.ac.uk/Tools/emboss/align/)
Problema
• Transformar uma seqüência de caracteres em outra:
– Operações:
• inserção
• deleção
• substituição
– Custo de operação:
• Score de substituição
• Penalidade para Gaps (inserção/deleção)
– Qual é a quantidade de operações mínima ?
– Como achar a séries de operações que vai garantir que usamos
a quantidade de operações mínima ?
Exemplo:
Scores:
Match: 2
Mismatch (S): -1
Gap(I): -2
Gap(D): -2
ACGT
||
G-GT
Score (4-2-1): 1
2 matches: 4
1 gap: -2
1 mismatch: -1
Soluções
• Método força bruta (busca exaustiva)
– Praticamente inviável
• Algoritmos de Programação Dinâmica
– Smith-Waterman; Needleman-Wunsch;
• SW é um algoritmo para achar o alinhamento mais provável
com uma estrutura certa;
• Por razões de tempo e espaço, não pode ser usado para
alinhamento de sequências de larga escala;
• Utilizações de aproximações (heurísticas);
• Geralmente, quanto mais rápida for a aproximação, mais
distante estará a resposta da solução “correta”;
Matriz de Programação
Dinâmica
GG
A
> Score (-2-1): -3
1 gap: -2
1 mismatch: -1
GG
A
> Score(-1-2): -3
1 mismatch: -1
1 gap: -2
GG
> Score(-4-2): -6
2 gaps: -4
1 gap: -2
A
D(i, j) = max
D(i-1, j-1) + s(xi, yj) (diagonal -> match/mismatch)
D(i -1, j) + g (acima -> gap acima)
D(i, j -1) + g (esquerda -> gap esquerda)
Exemplo:
Scores:
Match: 2
Mismatch (S): -1
Gap(I): -2
Gap(D): -2
ACGT
||
G-GT
D(i-1,j-1)
D(i-1,j)
D(i,j-1)
D(i,j)
traceback
Score (4-2-1): 1
2 matches: 4
1 gap: -2
1 mismatch: -1
BLAST
• Basic Local Alignment Search Tool
• http://blast.ncbi.nlm.nih.gov/
• Heurística: dicionário de palavras
E-value (S): número de diferentes alinhamentos com scores equivalentes ou
melhores que S que são esperados ocorrer ao acaso em buscas em um banco
de dados aleatório, do mesmo tamanho, com a mesma composição de bases;
QUANTO MENOR... MELHOR!!!
NÃO CONFUNDIR COM P-value (probabilidade)
BLAT
• BLAT—The BLAST-Like Alignment Tool
• http://genome.ucsc.edu/
• Estruturalmente diferente (BLAST)
– Além de outros pontos, o Blat constrói um índice do banco de dado de seqüências
(database) (k-mers) e faz as buscas na seqüência a qual se deseja consultar (query);
•
•
•
•
Blat é mais rápido, porém menos sensível;
Possui código especialmente para lidar com intros em alinhamentos RNA/DNA;
Comumente utilizado para localizar uma determinada seqüência no genoma ou
determinar a estrutura de exons de um RNA;
Pode ser utilizado para alinhar seqüências de Roche/454;
Alinhamento de seqüências
curtas
• BLAST/BLAT são lentos demais para alinhar
milhões de sequências (Illumina: 35bp100bp/SOLiD: )
• Premissas:
– Não precisamos de um alinhamento sofisticado
como SW;
– Não precisamos de estatísticas com e-value;
– Normalmente, sabemos a quantidade de
mismatches máximas que queremos;
Alinhamentos baseados em
Hashing table
• Idéia dos algoritmos de alinhamentos
baseados em hashing tables:
read:
agtcgtat
| ||| ||
genoma: acggcacgaggaactcgaatctgacgcatgcagtacta
Se admitirmos 2 mismatches entre a minha sequência e o genoma.
Se separados em 4 fragmentos, vão existir pelo menos 2 fragmentos
sem mismatches !
seeds
• 6 possibilidades de seeds, com no mínimo 2
fragmentos de match perfeito
read:
agtcgtat
1
agtc----
2
--tcgt--
3
----gtat
4
ag--gt--
5
--tc--at
6
ag----at
Busca nas tabelas hash
• São construídas 6 listas das palavras achadas nas
leituras;
• Para cada 6 possibilidades de palavra no genoma,
procurar na lista determinada para ver se existe
uma possibilidade de matching;
• Como buscar sequências das palavras nas listas de
palavras?
• Algoritmo de hashing
• Possui uma função capaz de transformar uma
cadeia de caracteres (string) em valores
(índices);
Alinhamento de Seqüências com
hashing
• Softwares
– ELAND (Anthony. J. Cox, 2006, unpublished data),
– MAQ (Li H et al., 2008)
– SOAP (Li R et al., 2008)
• Características:
– Para detectar mais mismatch, precisamos de mais seeds:
• Mais mismatch => mais tempo
– Algoritmo mais sofisticado para o alinhamento vai requerer
mais tempo:
• Indels/gaps => mais tempo
• Problemas com hashing:
– Memória e tempo
• Precisa de CPUs múltiplos com muita memória.
– Necessidade de métodos menos “glutões”
Burrows–Wheeler
Inverse Transformation BWT(T) => T
•
•
Algoritmo usado normalmente em softwares
de compressão (.bzip2)
Em alinhadores de seqüências:
– Bowtie (Langmead B et al., 2009)
– BWA
•
•
BWA-SHORT (Li H. and Durbin R., 2009)
BWA-SW (Li H. and Durbin R., 2010)
Transformation T => BWT(T)
Input
^BANANA@
All
Rotations
Sort the
Rows
^BANANA@
@^BANANA
A@^BANAN
NA@^BANA
ANA@^BAN
NANA@^BA
ANANA@^B
BANANA@^
ANANA@^B
ANA@^BAN
A@^BANAN
BANANA@^
NANA@^BA
NA@^BANA
^BANANA@
@^BANANA
Output
BNN^AA@A
Input
BNN^AA@A
Add 1
Sort 1
Add 2
Sort 2
B
N
N
^
A
A
@
A
A
A
A
B
N
N
^
@
BA
NA
NA
^B
AN
AN
@^
A@
AN
AN
A@
BA
NA
NA
^B
@^
Add 3
Sort 3
Add 4
Sort 4
BAN
NAN
NA@
^BA
ANA
ANA
@^B
A@^
ANA
ANA
A@^
BAN
NAN
NA@
^BA
@^B
BANA
NANA
NA@^
^BAN
ANAN
ANA@
@^BA
A@^B
ANAN
ANA@
A@^B
BANA
NANA
NA@^
^BAN
@^BA
Add 5
Sort 5
Add 6
Sort 6
BANAN
NANA@
NA@^B
^BANA
ANANA
ANA@^
@^BAN
A@^BA
ANANA
ANA@^
A@^BA
BANAN
NANA@
NA@^B
^BANA
@^BAN
BANANA
NANA@^
NA@^BA
^BANAN
ANANA@
ANA@^B
@^BANA
A@^BAN
ANANA@
ANA@^B
A@^BAN
BANANA
NANA@^
NA@^BA
^BANAN
@^BANA
Add 7
Sort 7
Add 8
Sort 8
BANANA@
NANA@^B
NA@^BAN
^BANANA
ANANA@^
ANA@^BA
@^BANAN
A@^BANA
ANANA@^
ANA@^BA
A@^BANA
BANANA@
NANA@^B
NA@^BAN
^BANANA
@^BANAN
BANANA@^
NANA@^BA
NA@^BANA
^BANANA@
ANANA@^B
ANA@^BAN
@^BANANA
A@^BANAN
ANANA@^B
ANA@^BAN
A@^BANAN
BANANA@^
NANA@^BA
NA@^BANA
^BANANA@
@^BANANA
Output
^BANANA@
Bowtie
• http://bowtie-bio.sourceforge.net
– Burrows-Wheeler;
• Reduz a quantidade de memória e de tempo para
alinhar sequências curtas;
• Podem ser usadas seqüências Illumina e SOLiD
– Deficiências:
• Não tem garantia de retornar todos os hits com
mismatches (exceto com opção --best)
• Limite de 3 mismatches (demora mais)
• Reads longos reduz a velocidade
• Não tem indels
LF mapping
Inexact Matching
Introdução
BOWTIE
Bowtie Index Builder:
bowtie-build
Usage: bowtie-build [options]* <reference_in> <ebwt_outfile_base>
reference_in
comma-separated list of files with ref sequences
ebwt_outfile_base
write Ebwt data to files with this dir/basename
Options:
-f
reference files are Fasta (default)
-c
reference sequences given on cmd line (as <seq_in>)
-C/--color
build a colorspace index
-a/--noauto
disable automatic -p/--bmax/--dcv memory-fitting
-p/--packed
use packed strings internally; slower, uses less mem
-B
build both letter- and colorspace indexes
--bmax <int>
max bucket sz for blockwise suffix-array builder
--bmaxdivn <int>
max bucket sz as divisor of ref len (default: 4)
--dcv <int>
diff-cover period for blockwise (default: 1024)
--nodc
disable diff-cover (algorithm becomes quadratic)
-r/--noref
don't build .3/.4.ebwt (packed reference) portion
-3/--justref
just build .3/.4.ebwt (packed reference) portion
-o/--offrate <int>
SA is sampled every 2^offRate BWT chars (default: 5)
-t/--ftabchars <int>
# of chars consumed in initial lookup (default: 10)
--ntoa
convert Ns in reference to As
--seed <int>
seed for random number generator
-q/--quiet
verbose output (for debugging)
-h/--help
print detailed description of tool and its options
--usage
print this usage message
--version
print version information and quit
[/data/indexes]$ bowtie-build
$BOWTIE_INDEXES=“/data/indexes”
/data/hg18.fa
hg18
hg18.1.ebwt
hg18.2.ebwt
hg18.3.ebwt
hg18.4.ebwt
hg18.rev.1.ebwt
hg18.rev.2.ebwt
Bowtie Index Inspector:
bowtie-inspect
Usage: bowtie-inspect [options]* <ebwt_base>
<ebwt_base>
ebwt filename minus trailing .1.ebwt/.2.ebwt
By default, prints FASTA records of the indexed nucleotide sequences to
standard out. With -n, just prints names. With -s, just prints a summary of
the index parameters and sequences. With -e, preserves colors if applicable.
Options:
-a/--across <int>
-n/--names
-s/--summary
-e/--ebwt-ref
-v/--verbose
-h/--help
--help
Number of characters across in FASTA output (default: 60)
Print reference sequence names only
Print summary incl. ref names, lengths, index properties
Reconstruct reference from ebwt (slow, preserves colors)
Verbose output (for debugging)
print detailed description of tool and its options
print this usage message
[/data/indexes]$ bowtie-inspect
-s
hg18
Bowtie Aligner: bowtie
Usage:
bowtie [options]* <ebwt> {-1 <m1> -2 <m2> | --12 <r> | <s>} [<hit>]
<m1>
<m2>
<r>
<s>
Comma-separated list of files containing upstream mates (or the
sequences themselves, if -c is set) paired with mates in <m2>
Comma-separated list of files containing downstream mates (or the
sequences themselves if -c is set) paired with mates in <m1>
Comma-separated list of files containing Crossbow-style reads. Can be
a mixture of paired and unpaired. Specify "-" for stdin.
Comma-separated list of files containing unpaired reads, or the
sequences themselves, if -c is set. Specify "-" for stdin.
File to write hits to (default: stdout)
<hit>
Input:
-q
-f
-r
-c
-C
-Q/--quals <file>
--Q1/--Q2 <file>
-s/--skip <int>
-u/--qupto <int>
-5/--trim5 <int>
-3/--trim3 <int>
--phred33-quals
--phred64-quals
--solexa-quals
--solexa1.3-quals
--integer-quals
Alignment:
-v <int>
or
-n/--seedmms <int>
-e/--maqerr <int>
-l/--seedlen <int>
--nomaqround
-I/--minins <int>
-X/--maxins <int>
--fr/--rf/--ff
--nofw/--norc
--maxbts <int>
--pairtries <int>
-y/--tryhard
--chunkmbs <int>
query input files are FASTQ .fq/.fastq (default)
query input files are (multi-)FASTA .fa/.mfa
query input files are raw one-sequence-per-line
query sequences given on cmd line (as <mates>, <singles>)
reads and index are in colorspace
QV file(s) corresponding to CSFASTA inputs; use with -f -C
same as -Q, but for mate files 1 and 2 respectively
skip the first <int> reads/pairs in the input
stop after first <int> reads/pairs (excl. skipped reads)
trim <int> bases from 5' (left) end of reads
trim <int> bases from 3' (right) end of reads
input quals are Phred+33 (default)
input quals are Phred+64 (same as --solexa1.3-quals)
input quals are from GA Pipeline ver. < 1.3
input quals are from GA Pipeline ver. >= 1.3
qualities are given as space-separated integers (not ASCII)
report end-to-end hits w/ <=v mismatches; ignore qualities
max mismatches in seed (can be 0-3, default: -n 2)
max sum of mismatch quals across alignment for -n (def: 70)
seed length for -n (default: 28)
disable Maq-like quality rounding for -n (nearest 10 <= 30)
minimum insert size for paired-end alignment (default: 0)
maximum insert size for paired-end alignment (default: 250)
-1, -2 mates align fw/rev, rev/fw, fw/fw (default: --fr)
do not align to forward/reverse-complement reference strand
max # backtracks for -n 2/3 (default: 125, 800 for --best)
max # attempts to find mate for anchor hit (default: 100)
try hard to find valid alignments, at the expense of speed
max megabytes of RAM for best-first search frames (def: 64)
Reporting:
-k <int>
-a/--all
-m <int>
-M <int>
--best
--strata
Output:
-t/--time
-B/--offbase <int>
--quiet
--refout
--refidx
--al <fname>
--un <fname>
--max <fname>
--suppress <cols>
--fullref
Colorspace:
--snpphred <int>
or
--snpfrac <dec>
--col-cseq
--col-cqual
--col-keepends
SAM:
-S/--sam
--mapq <int>
--sam-nohead
--sam-nosq
--sam-RG <text>
Performance:
-o/--offrate <int>
-p/--threads <int>
--mm
--shmem
Other:
--seed <int>
--verbose
--version
-h/--help
report up to <int> good alignments per read (default: 1)
report all alignments per read (much slower than low -k)
suppress all alignments if > <int> exist (def: no limit)
like -m, but reports 1 random hit (MAPQ=0); requires --best
hits guaranteed best stratum; ties broken by quality
hits in sub-optimal strata aren't reported (requires --best)
print wall-clock time taken by search phases
leftmost ref offset = <int> in bowtie output (default: 0)
print nothing but the alignments
write alignments to files refXXXXX.map, 1 map per reference
refer to ref. seqs by 0-based index rather than name
write aligned reads/pairs to file(s) <fname>
write unaligned reads/pairs to file(s) <fname>
write reads/pairs over -m limit to file(s) <fname>
suppresses given columns (comma-delim'ed) in default output
write entire ref name (default: only up to 1st space)
Phred penalty for SNP when decoding colorspace (def: 30)
approx. fraction of SNP bases (e.g. 0.001); sets --snpphred
print aligned colorspace seqs as colors, not decoded bases
print original colorspace quals, not decoded quals
keep nucleotides at extreme ends of decoded alignment
write hits in SAM format
default mapping quality (MAPQ) to print for SAM alignments
supppress header lines (starting with @) for SAM output
supppress @SQ header lines for SAM output
add <text> (usually "lab=value") to @RG line of SAM header
override offrate of index; must be >= index's offrate
number of alignment threads to launch (default: 1)
use memory-mapped I/O for index; many 'bowtie's can share
use shared mem for index; many 'bowtie's can share
seed for random number generator
verbose output (for debugging)
print version information and quit
print this usage message
[/data]$ bowtie hg18
> -c "AGGAATTGCGGGAGGAAAATGGGTAGTTAGCTATTT,AGGGCCCATAGCAACAGATTTCTAGCCCCCTGAAGA"
> --best --strata --tryhard -m 1
Conclusão
CONSIDERAÇÕES FINAIS
Conclusão
• Alinhamento global: Alinhamento de 2 sequências
com mesmo tamanho:
– Algoritmo de Needleman-Wunsch
• Alinhamento local: Alinhamento de 2 seqüências,
uma curta e a outra muito mas longa:
– Algoritmo de Smith-Waterman
• Encontram o alinhamento mais provável;
• Lentos para alinhamentos contra o genoma inteiro;
• Baseados em um modelo matemático, os outros, são
baseados em heurísticas, sem prova formal de
obtenção da solução ótima;
Conclusão
• BLAST: Utiliza heurísticas (k-tuples);
– Maior sensibilidade;
– Possui estatísticas, o E-value além do Score;
– Pode ser usado para Sanger (megablast), mas é muito
lento com seqüências Roche/454;
• BLAT: Utiliza heurísticas (semelhante ao BLAST - índice
do banco de dados na memória)
– Blat é mais rápido, porém menos sensível;
– Lida melhor com intros em alinhamentos RNA/DNA, bom
para determinar estrutura de exons de RNAs;
– Pode ser utilizado para alinhar seqüências de Roche/454;
Conclusão
• Next-Generation Sequence Alignments
– Primeiros programas: Hashing
• Illumina e SOLiD;
– ELAND (Anthony. J. Cox, 2006, unpublished data),
– MAQ (Li H et al., 2008)
– SOAP (Li R et al., 2008)
• Requerem muita memória;
• O nível de sensibilidade depende do programa e das opções;
– A partir de 2009: Burrows-Wheeler
• Illumina e SOLiD;
– Bowtie (Langmead B et al., 2009)
– BWA (Li H. and Durbin R., 2009)
• Requerem menos memória e são mais rápidos;
Conclusão
rapidez
(tempo/memória)
sensibilidade
• Novas plataformas de seqüenciamento irão surgir
exigindo novos programas de alinhamento;
• Não há um programa perfeito para todas as situações;
• É importante entender como os programas funcionam e
como a configuração pode influenciar os resultados;
– Heurística utilizada;
– Argumentos;
Visualização
• IGV (Genome Browser)
– http://www.broadinstitute.org/software/igv/home
– Formatos de arquivos:
• BAM, BED, Birdsuite Files, CBS, CN, Cytoband, FASTA, GCT,
genePred, GFF, GISTIC, HDF5, IGV, LOH, MAF, PSL, MUT, RES, SAM,
Sample Information, SEG, SNP, TAB, TDF, Track Line, Type Line, WIG
Daniel Guariz Pinheiro
dgpinheiro@gmail.com
Fim
EXERCÍCIO
Bowtie
• http://lgmb.fmrp.usp.br/~daniel/downloads/cvbioinfo2011/
– cvbioinfo2011_p1.fa
– cvbioinfo2011_p2.fa
Download