CAPÍTULO 1 INTRODUÇÃO
1.4 Justificativa
Os melhoramentos introduzidos no algoritmo de PD básico proporcionam
requerimentos de memória da ordem de O(n) ou O( n×n), que em termos práticos
apresentam pouca ou nenhuma queda no desempenho quando comparados ao algoritmo
de PD padrão. Apesar destes melhoramentos, os requerimentos de espaço em conjunto
com os requerimentos de tempo continuam sendo um gargalo na avaliação de
seqüências de aminoácidos ou de nucleotídeos em biologia molecular, pois as
seqüências, freqüentemente, podem atingir a casa dos milhões e a memória disponível é
sempre limitada.
É bom lembrar que os recursos de memória são sempre limitados e constituem um
gargalo nos sistemas computacionais. O desenvolvimento tecnológico e a conseqüente
redução de custos e aumento da capacidade dos recursos computacionais, possibilitam a
superação de limitações com relação a solução computacional de instâncias de
determinados problemas, mas, por outro lado, possibilitam o tratamento computacional
de outros problemas, novas fronteiras, que estavam fora do alcance do poder
computacional imediatamente anterior, possivelmente tornando esses novos recursos
computacionais novamente limitados. Adicionalmente, deve ser considerado, também,
que nas máquinas atuais o acesso: à memória cache requer 1 ciclo de clock, à memória
principal de 10 a 20 ciclos, e ao disco rígido cerca de um milhão de ciclos (Tarnas e
Hughey, 1998). Desta forma execuções com requerimentos de memória maiores do que
o tamanho da memória principal, podem tornar o custo de paginação da memória virtual
muito alto, tornando a computação, efetivamente, inviável.
Esses fatos por si só já são bastante significativos para realçar a necessidade de
investimentos em pesquisas para melhorar o desempenho destes algoritmos ou buscar
outros algoritmos alternativos. Desta forma, o estudo se concentra, a princípio, nos
algoritmos que adotam a estratégia de checkpoints com requerimentos reduzidos de
memória.
Os algoritmos alternativos baseados na estratégia D&C e no algoritmo rápido de
Ukkonen apresentados em Powell et al. (1999), que requerem espaço linear sem causar
queda de desempenho nos algoritmos de PD, podem ser acelerados aumentando os
recursos de memória. Entretanto eles somente são apropriados para determinar melhor o
alinhamento entre seqüências, que requer apenas o retrocedimento parcial sobre a matriz
de PD, mas não são apropriados para utilização no treinamento de HMMs ou qualquer
uso em conjunto com o algoritmo forward-backward requerendo todos os caminhos,
que exigem procedimentos de retrocedimento completo sobre a matriz de PD. Isto acaba
se tornando uma grande desvantagem quando o interesse reside justamente em
desenvolver um pacote de ferramentas de modelagem de HMMs, pois não poderíamos
ter um algoritmo base que fosse o núcleo de todo o processamento de PD.
Deve-se considerar, também, que as funções de custo freqüentemente usadas nos
HMMs em biologia molecular não geram matrizes de PD com diagonais
não-decrescentes, pois essas funções usam atribuição de escores em log-probabilidades (
log-odds scoring), impedindo a utilização de algoritmos que exploram essa característica
para acelerar o desempenho computacional. Muitas vezes, ao invés de se usar os escores
em log-probabilidades (log-odds score) relativos ao modelo aleatório, o logaritmo da
probabilidade da seqüência dado o modelo é usado diretamente, que é denominado
escore LL (de log likelihood score), entretanto o LL score é fortemente dependente do
tamanho das seqüências, apresentando uma dependência não linear.
O método de PD com checkpoints apresenta alguns méritos: a sua forte independência
do algoritmo subjacente; a redução do requerimento de espaço da ordem de O(nm) para
( )m
Ln
O ; e a possibilidade de se aumentar o desempenho em troca de um aumento na
constante de espaço. Além disso eles são a única alternativa de economia de espaço
apropriada para o treinamento de HMMs ou para qualquer outro uso em conjunto com o
algoritmo forward-backward requerendo todos os caminhos.
Dessa família de algoritmos de PD com checkpoints, aquele por diagonais com o
processo de retrocedimento restrito, que alia a técnica (ou paradigma) de checkpoints
com o princípio D&C, é o que, segundo Tarnas e Hughey (1998), apresentou melhor
desempenho no alinhamento de seqüências. Entretanto foi observado, com base nos
experimentos realizados e na experiência anterior com esses algoritmos, que a
complexidade das condições de contorno, adicionadas quando se processa diagonais,
não proporcionou um retorno equivalente no ganho de performance. Desta forma, com
base nos resultados obtidos eles planejaram reimplementar o loop interno do pacote
SAM (Hughey, 2003) com checkpoints por linhas. É importante salientar que a
complexidade das condições de contorno foi agravada pelo uso da técnica de
retrocedimento restrito. Com base nestas conclusões o grupo de pesquisadores
responsáveis pelo pacote SAM buscou alternativas para melhorar o desempenho destes
algoritmos com checkpoints por linhas.
Wheeler e Hughey (2000) apresentaram um algoritmo melhorado de (1,2)-níveis de
checkpoints por linhas que, assintoticamente, efetua até 50% menos cálculos quando
comparado ao original com checkpoints por linhas. Entretanto na prática os resultados
mostraram que o algoritmo melhorado, na avaliação de todos os caminhos, é 3 a 12%
mais rápido que o de 2-níveis original, independente do tamanho do HMM. É
importante lembrar que o algoritmo de PD de 2-níveis original, com checkpoints por
linhas, tem requerimentos de memória da ordem de O( )m n , ao custo de uma queda de
desempenho por um fator de 2 com relação ao algoritmo de PD padrão. Nesse ponto
deve ser salientado que esses melhoramentos relatados por Wheeler e Hughey (2000)
podem ser utilizados, quando for conveniente, juntamente com outros melhoramentos
nos diversos algoritmos membros desta família de algoritmos com checkpoints.
Deve-se salientar também que, talvez, o mais importante a ser considerado nessas
técnicas de uso de espaço de armazenamento restrito seja o comportamento assintótico
da redução dos requerimentos de memória, pois elas são, a princípio, úteis justamente
para seqüências longas, ou seja, quando os requerimentos de memória crescem com o
tamanho destas seqüências. Desta forma, a redução dos requerimentos de memória da
ordem de O(mn) para O( )m n e para O(m) possuem um comportamentos assintóticos
bastante semelhante, para m e n suficientemente grandes.
Considerando-se, portanto, o tradeoff entre a redução dos requerimentos de espaço e a
performance dos algoritmos de PD de L-níveis com checkpoints e o comportamento
assintótico com relação à complexidade de tempo, da ordem de O(mn), do algoritmo de
PD de 2-níveis com checkpoints por colunas ou linhas, quando determinando um
alinhamento entre duas seqüências ou calculando o melhor caminho simples de estados
através de um HMM, verifica-se que ainda há necessidade de investimento em pesquisa
para explorar alternativas que melhorem o desempenho destes algoritmos.
Portanto, ainda existe necessidade de se explorar alterações nessa família de algoritmos
de PD que usam checkpoints e reavaliação, que tiram vantagem do uso de espaço linear
através da armazenagem de checkpoints, mas ao custo de uma queda no desempenho,
devido à reavaliação, quando comparados com o algoritmo PD tradicional. É necessário
explorar novos algoritmos que mantenham a complexidade de espaço linear e cause um
impacto menor na queda de desempenho.
Esse trabalho contribui para o campo de Bioinformática investigando e propondo novos
algoritmos alternativos que utilizam a estratégia (ou paradigma) de checkpoints em
conjunto com o princípio D&C como solução para o problema de complexidade de
espaço dos algoritmos de PD usados nos HMMs, levando-se em consideração o
aumento dos requerimentos de tempo para execução, provocado pela necessidade de
reavaliação de partes da matriz de PD.
Até onde se tem conhecimento não existe nenhuma investigação relatada na literatura
pertinente, que trate da hipótese levantada nesse trabalho.
CAPÍTULO 2
No documento
ALGORITMOS DE PROGRAMAÇÃO DINÂMICA USADOS EM MODELOS MARKOVIANOS OCULTOS (HMMs)
(páginas 43-49)