Widać, że metoda Fano ma znacznie większą sprawność niż metoda Shannona dla tego samego źródła wiadomości.
Czy metoda Fano jest zawsze jednoznaczna i czy zawsze dostarcza kodów o największej sprawności?
Kod o takich własnościach będziemy nazywać kodem zwięzłym.
Kod jednoznacznie dekodowalny będziemy nazywać zwięzłym, jeśli średnia długość jego wyrazów kodowych jest mniejsza lub równa średniej długości wyrazów kodowych wszystkich innych jednoznacznie dekodowalnych kodów dla tego samego źródła informacji i tego samego alfabetu kodowego.
Xi |
P(*i) |
Ki |
k2 |
Kb | ||||||||
X1 |
15/72 |
0 |
0 |
0 |
0 |
0 |
0 | |||||
*2 |
15/72 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 | |||
*3 |
12/72 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 | ||
*4 |
10/72 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
0 | |||
*5 |
10/72 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 | ||
*6 |
5/72 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
*7 |
5/72 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Dla rozpatrzenia powyższego pytania rozważmy przykład:
Mamy tu źródło generujące 7 wiadomości elementarnych o różnych prawdopodobieństwach i 3 różne kody otrzymane metodą Fano. Kody te różnią się długością wyrazów kodowych, zatem są istotnie różne. Wszystkie sąjednoznacznie dekodowalne.
Policzmy dla każdego z kodów średnią długość:
/ - 196
LK± 72
Lk2=LKs = ^
Kod Ki ma mniejszą średnią długość, więc jego sprawność jest większa. Widać jednak, że metoda Fano jest wieloznaczna. Wynika to z możliwości różnych podziałów, które mimo to zachowują prawdopodobieństwa wewnątrz grup bliskie rozkładowi równomiernemu.
Przy metodzie Fano nie jesteśmy w stanie stwierdzić z cała pewnością, czy otrzymany kod jest zwięzły._
Wady tej jest pozbawiona ostatnia z metod kodowania dla kanałów bez zakłóceń, jakie będą tu omawiane. Jest to metoda Huffmana. Pozwala ona, w odróżnieniu od pozostałych znaleźć — dla danego źródła i danego alfabetu kodowego — kod zwięzły.