# Soft output Viterbi algorithm

The **soft output Viterbi algorithm** (**SOVA**) is a variant of the classical Viterbi algorithm.

SOVA differs from the classical Viterbi algorithm in that it uses a modified path metric which takes into account the *a priori probabilities* of the input symbols, and produces a *soft* output indicating the *reliability* of the decision.

The first step in the SOVA is the selection of the survivor path, passing through one unique node at each time instant, *t*. Since each node has 2 branches converging at it (with one branch being chosen to form the *Survivor Path*, and the other being discarded), the difference in the branch metrics (or *cost*) between the chosen and discarded branches indicate the *amount of error* in the choice.

This *cost* is accumulated over the entire sliding window (usually equals *at least* five constraint lengths), to indicate the *soft output* measure of reliability of the *hard bit decision* of the Viterbi algorithm.

## See Also on BitcoinWiki[edit]

## Source[edit]