Podemos considerar três passos para a montagem:
A comparação por Sim(X, Y) é bastante cara em termos de tempo de processamento, pois o algoritmo é O(mn). Se os 500 fragmentos tiverem comprimento em torno de 600 bases cada um, o custo da comparação dois a dois seria
!
Torna-se necessário um meio mais barato de comparação, tendo como objetivo indicar para os algoritmos da próxima fase quais são os fragmentos que valem a pena serem analisados por Sim(X, Y), isto é, os fragmentos que têm uma semelhança mínima entre si de modo a valer a pena compará-los por programação dinâmica.
O objetivo desta fase será, portanto, gerar um grafo G=(V, E) onde cada vértive
representa um fragmento de entrada e só existe uma aresta
se e somente há uma semelhança mínima entre os fragmentos representados por u e v.
Após o refinamento, um algoritmo para cálculo de árvores geradoras máximas é utilizado no grafo G, gerando uma árvore A=(VA, EA). A idéia é manter um conjunto minimal de arestas que resultam na maior similaridade total.
![]()
e
![]()
sendo:e
![]()
Repetimos este processo até restar um único vértice r na árvore A. A seqüência s[r] será nosso consenso geral, ou seja, a molécula original.
Nas próximas seções detalharemos melhor cada uma destas fases.