Agregando a la respuesta de Jesse / Sridhar, y buscando las aplicaciones CDMA en particular, parece que Viterbi es un algoritmo especialmente eficiente para enviar transmisiones de manera algo robusta sobre canales ruidosos, esencialmente, un tipo útil de código convolucional de corrección de errores.
Ningún canal de comunicación es perfecto, por lo que cada forma estandarizada de comunicación electrónica tiene algún tipo de forma de detectar y resolver errores en los mensajes que provienen de ese canal. En realidad, hay una manera de calcular cuánta información “clara” puede enviar a través de un canal “ruidoso” (el límite de Shannon en la capacidad del canal).
Debido a que las diferentes aplicaciones tendrán una potencia computacional variable disponible (desde su teléfono celular hasta su tarjeta de red, etc.), así como diferentes perfiles de ‘ruido’ del canal, existen algoritmos especializados para cada contexto.
Lo que dice Jesse sobre los diagramas de trellis es especialmente relevante aquí: cuando un objeto físico recibe la comunicación (posiblemente ruidosa), puede determinar si la comunicación se corrompió de alguna manera al ver si la secuencia de salida es incluso posible en el esquema de codificación convolucional. Luego puede usar el algoritmo de Viterbi para resolver rápidamente desde la señal del canal codificado hasta la señal original decodificada, buscando la comunicación válida ‘más cercana’ (en el sentido de máxima probabilidad) que podría haberse enviado.
- Dado un gráfico, ¿existe un enfoque bien conocido para determinar si el gráfico es bipartito? Si es así, ¿hay alguna forma de particionar el gráfico? Cuales son las formas?
- ¿Existe un algoritmo óptimo para jugar Bejeweled?
- ¿Por qué las computadoras pueden completar algunas tareas excepcionalmente bien y otras terriblemente?
- ¿Cuál es el algoritmo matemático para el reflejo del equilibrio humano?
- ¿Por qué la gente habla de algoritmos como si pudieran resolver todos los problemas?
Para ciertas aplicaciones (códigos de restricción cortos y la disponibilidad de hardware paralelo), Viterbi es la solución más barata / más rápida.
Más información aquí:
http://en.wikipedia.org/wiki/Con…