Una variante de búsqueda eficiente del método de programación dinámica, conocida como algoritmo de Viterbi, se usa generalmente para alinear sucesivamente el MSA en crecimiento con la siguiente secuencia del conjunto problema para generar un nuevo MSA.