Algorytm w przód Algorytm w przód służy do obliczania prawdopodobieństwa obserwowanej sekwencji Definiuje się zmienne

czyli prawdopodobieństwo wygenerowania prefiksu obserwacji i zakończenia w stanie w chwili

Inicjalizacja ma postać

Rekurencja:

Na końcu

Algorytm działa w czasie gdzie jest długością sekwencji, a liczbą stanów.

Algorytm wstecz Algorytm wstecz jest komplementarny do algorytmu w przód. Definiuje się zmienne

czyli prawdopodobieństwo wygenerowania sufiksu obserwacji przy założeniu, że w chwili model znajduje się w stanie

Inicjalizacja:

Rekurencja:

Algorytmy w przód i wstecz są używane wspólnie w procedurze Bauma-Welcha oraz do obliczania prawdopodobieństw posteriori stanów ukrytych.

Algorytm Viterbiego Algorytm Viterbiego służy do znalezienia najbardziej prawdopodobnej ścieżki stanów ukrytych dla danej sekwencji obserwacji. Szuka się więc

Definiuje się

Rekurencja ma postać

Aby odtworzyć całą ścieżkę, przechowuje się także wskaźniki stanów, dla których maksimum zostało osiągnięte.

Algorytm Viterbiego został wprowadzony przez Andrew Viterbiego w kontekście dekodowania kodów splotowych, a następnie stał się podstawowym narzędziem dekodowania w ukrytych modelach Markowa.