© Rausley A. A.

de Souza-2011
Introdução à Teoria da Informação:
Codificação de Fonte
PÓS-GRADUAÇÃO EM ENGENHARIA
DE REDES E SISTEMAS DE
TELECOMUNICAÇÕES
Prof. Rausley Adriano Amaral de Souza
rausley@inatel.br
2
© Rausley A. A. de Souza-2011
Conteúdo
• A Entropia como uma medida básica de
informação.
• O Teorema da Codificação de Fonte e
algoritmos de compactação de dados.
• Informação Mútua e sua relação com a
capacidade do canal de informação para a
transmissão de informação.
• Teorema da Codificação de Canal como base
para comunicações confiáveis.
• Teorema da Capacidade de Informação como a
base para a solução de compromisso entre a
largura de faixa do canal e a relação sinal-ruído.
3
© Rausley A. A. de Souza-2011
Format
Source
encode
Encrypt
Channel
encode
Multiplex
Pulse
modulate
Bandpass
modulate
Frequency
spread
Multiple
Access
X
M
T
C
h
a
n
n
e
l
Format
Source
decode
Decrypt
Channel
decode
Demulti-
plex
Detect
Demod-
ulate &
Sample
Frequency
despread
Multiple
Access
R
C
V
Synch-
ronization
Information
source
Information
sink
Digital
input
Digital
output
h
c
(t)
Channel
impulse
response
Optional
Essential
Bit stream
Digital
baseband
waveform
Digital
bandpass
waveform
From other
sources
To other
destinations
Block diagram of a typical digital communication system
4
© Rausley A. A. de Souza-2011
Referências Bibliográficas
• Este material está baseado nas seguinte referências:
– Notas de Aulas do prof. Geraldo Gil. Limites Fundamentais na Teoria da
Informação.
– Sistemas de Comunicação. Analógicos e Digitais. Simon Haykin. 4ª Edição.
Bookman
– Digital Communications – Fundamentals and Applications. Bernard Sklar.
Second Edition. Prentice Hall.
• A Universal Algorithm for Sequential Data Compression. Lempel-Ziv Paper:
IEEE Transactions on Information Theory, 23(3), pp. 337–343, May 1977.
http://www.cs.duke.edu/courses/spring03/cps296.5/papers/ziv_lempel_1977
_universal_algorithm.pdf
• Shannon Paper: http://www.stanford.edu/class/ee104/shannonpaper.pdf
• A Mathematical Theory of Communication. C. E. SHANNON:
http://cm.bell-labs.com/cm/ms/what/shannonday/shannon1948.pdf
• Huffman's original article: D.A. Huffman, "A Method for the Construction of
Minimum-Redundancy Codes", Proceedings of the I.R.E., September 1952,
pp 1098–1102
http://compression.ru/download/articles/huff/huffman_1952_minimum-
redundancy-codes.pdf
• Proof of the Kraft-McMillan Inequality:
http://www.cl.cam.ac.uk/teaching/2004/InfoTheory/proofKraftMcMillan.pdf
5
© Rausley A. A. de Souza-2011
Duas questões fundamentais
• Qual é a complexidade irredutível abaixo
da qual um sinal não pode ser
comprimido?
• Qual é a máxima taxa de transmissão
para uma comunicação confiável em um
canal ruidoso?
• Resposta: codificação de fonte
(comunicação eficiente) e codificação de
canal (comunicação confiável).
6
© Rausley A. A. de Souza-2011
Incerteza, Informação e Entropia
• Seja um experimento probabilístico que envolva
a observação da saída de uma fonte de eventos
discretos em unidades de intervalo de tempo
(intervalo de sinalização).
• Estes eventos podem ser modelados como
variáveis discretas aleatórias (s
k
) que fazem
parte de um conjunto ou alfabeto (S).
– S = {s
0
, s
1
, ... , s
K-1
}
– probabilidades P(S = s
k
) = p
k
, para k = 0, 1, ... , K-1.
1
1
0
=


=
K
k
k
p
7
© Rausley A. A. de Souza-2011
Incerteza, Informação e Entropia
• Símbolos emitidos pela fonte sejam
estatisticamente independentes
• Fonte discreta sem memória (tem o
sentido de que o símbolo emitido a
qualquer tempo é independente de uma
escolha prévia).
• Um sistema com realimentação não é
uma fonte discreta sem memória
8
© Rausley A. A. de Souza-2011
Incerteza, Informação e Entropia
• Antes de o evento S = s
k
ocorrer, há incerteza.
Quando o evento S = s
k
ocorre, há surpresa.
Depois da ocorrência do evento S = s
k
, há
ganho na quantidade de informação, cuja
essência pode ser vista como a resolução da
incerteza.
• Incerteza ou surpresa: Se não há surpresa não
há informação.
• A quantidade de informação, I(s
k
), obtida por um
evento, s
k
( ) bits
1
log
2
|
|
¹
|

\
|
=
k
k
p
s I
9
© Rausley A. A. de Souza-2011
Propriedades da Quantidade de
Informação
– Evidentemente, se estivermos absolutamente certos
do resultado de um evento, mesmo antes de ele
ocorrer, nenhuma informação será ganha.
– Isto equivale a dizer que a ocorrência de um evento
S = s
k
fornece alguma informação ou não fornece
qualquer informação, jamais provoca perda de
informação
( ) 1 para 0 . 1 = =
k k
p s I
( ) 1 0 para 0 . 2 ≤ ≤ ≥
k k
p s I
10
© Rausley A. A. de Souza-2011
Propriedades da Quantidade de
Informação
– Ou seja, quanto menos provável um evento
for, mais informação ganharemos quando ele
ocorrer.
– Se s
k
e s
l
forem estatisticamente
independentes.
( ) ( )
l k l k
p p s I s I < > então . 3
( ) ( ) ( )
l k l k
s I s I s s I + = . 4
11
© Rausley A. A. de Souza-2011
Exemplo
• Admitamos que p indique a probabilidade de algum
evento. Represente graficamente a quantidade de
informação obtida pela ocorrência deste evento para
0 ≤ p ≤ 1.
12
© Rausley A. A. de Souza-2011
Entropia
• A média da quantidade de informação I(s
k
)
de uma fonte de alfabeto (S) é dada por
• H(S) é definida como entropia.
• A entropia determina a quantidade média
de informação por símbolo (evento) da
fonte.
( ) ( ) [ ]
( )


=
|
|
¹
|

\
|
=
=
1
0
2
1
log
K
k
k
k
k
p
p H
s I E H
S
S
13
© Rausley A. A. de Souza-2011
Propriedades da Entropia
– onde K é o número de símbolos do alfabeto da
fonte
• H(S) = 0, se e somente se a probabilidade
p
k
= 1 para um dado valor de k e todas as
outras probabilidades são iguais a zero. Neste
caso não há incerteza.
• H(S) = log
2
K, se e somente se p
k
= 1/K, ou
seja, todos os símbolos são equiprováveis.
Neste caso a incerteza é máxima.
( ) K H
2
log 0 ≤ ≤ S
14
© Rausley A. A. de Souza-2011
Exemplo
• Considere uma fonte
discreta sem memória
que emite os
símbolos
s
0
= 0 e s
1
= 1, com
probabilidades p
0
e
p
1
, respectivamente.
– Dica:
0 quando 0 log → → x x x
( ) ( ) ( ) bits 1 log 1 log
0 2 0 0 2 0
p p p p S H − − − − =
15
© Rausley A. A. de Souza-2011
Exemplo
• Uma fonte emite um de quatro símbolos possíveis
durante cada intervalo de sinalização. Os símbolos
ocorrem com probabilidades p
0
=0.4, p
1
=0.3, p
2
=0.2 e
p
3
=0.1. Encontre a quantidade de informação obtida
observando-se a emissão desses símbolos pela fonte.
16
© Rausley A. A. de Souza-2011
Exemplo
• Uma fonte emite um de quatro símbolos s
0
, s
1
, s
2
e s
3
com probabilidades 1/3, 1/6, 1/4 e 1/4, respectivamente.
Os símbolos sucessivos emitidos pela fonte são
estatisticamente independentes. Calcule a entropia da
fonte.
17
© Rausley A. A. de Souza-2011
Exemplo
• Calcule a média de informação, em bits/caractere, para
o idioma inglês, assumindo que cada um dos 26
caracteres no alfabeto ocorrem com igual probabilidade.
Não considere os espaços e pontuações.
• Como é sabido, os caracteres no alfabeto não aparecem
com igual frequência no idioma inglês (ou em qualquer
outro idioma), a resposta anterior representará um
limitante superior na quantidade média de informação
por caractere. Refaça os cálculos assumindo que os
caracteres ocorrem com as seguintes probabilidades:
– p = 0.10: para as letras a, e , o, t
– p = 0.07: para as letras h, i, n, r, s
– p = 0.02: para as letras c, d, f, l, m, p, u, y
– p = 0.01: para as letras b, g, j, k, q, v, w, x,z
18
© Rausley A. A. de Souza-2011
Teorema da Codificação de Fonte
• Transmissão eficiente
• Necessidade de conhecimento da estatística da
fonte
• Código Morse (código de tamanho variável)
– e representada por um “⋅ ⋅⋅ ⋅”
– q representada pela sequência “- ⋅ ⋅⋅ ⋅ - -”.
19
© Rausley A. A. de Souza-2011
Codificador de fonte
• Objetivo: retirar redundância
• Eficiência: De maneira geral, quanto menor o
número de dígitos para a representação da
mensagem melhor o sistema
• Classificação dos códigos de fonte
– Comprimento fixo
– Comprimento variável
• Se alguns símbolos são mais prováveis que
outros, os códigos de comprimento variável são
mais eficientes
20
© Rausley A. A. de Souza-2011
Código ASCII
• b
1
,b
2
,b
3
,b
4
,b
5
,b
6
,b
7
Souce: Wikipedia: http://en.wikipedia.org/wiki/ASCII
21
© Rausley A. A. de Souza-2011
Comprimento médio
– onde l
k
é o número de bits médio da palavra
código correspondente ao símbolo k.
– Admitamos que L
min
seja o valor mínimo
possível de . Definimos, então, a eficiência
de codificação como


=
=
1
0
K
k
k k
l p L
L
L
min
= η
L
22
© Rausley A. A. de Souza-2011
Exemplo
• Um arquivo com 10k símbolos é transmitido. Quantos
bits, em média, são transmitidos com os códigos I e II.
111 11 0,125 S
3
110 10 0,125 S
2
10 01 0,250 S
1
0 00 0,500 S
0
Código II Código I Probabilidade Símbolo
23
© Rausley A. A. de Souza-2011
Primeiro Teorema de Shannon
• Teorema da Codificação de Fonte: Dada uma
fonte discreta sem memória de entropia H(S), o
comprimento médio das palavras códigos para
um esquema de codificação livre de distorção é
limitado como
– A entropia H(S) representa um limite fundamental ao
número médio de bits por símbolo da fonte
necessário para representar uma fonte discreta sem
memória no sentido de que ele pode ser tão pequeno
quanto a entropia H(S), mas não menor do que ela.
( ) S H L ≥
24
© Rausley A. A. de Souza-2011
Eficiência de codificação
• Uma vez que o Teorema da Codificação
de Fonte admite que , então o maior
valor possível para a eficiência de
codificação de fonte é igual a unidade.
( )
L
H S
= η
( ) S H L =
25
© Rausley A. A. de Souza-2011
Compactação de Dados
• Transmissão eficiente: informações redundantes
devem ser removidas do sinal que será
transmitido.
• Compactação: não há perda de informação
(compressão sem perdas),
• Compressão: admite-se perda de informação.
• Na compactação de dados, o processo de
codificação de fonte é limitado,
necessariamente, pela entropia da fonte.
• A compactação de dados é obtida atribuindo-se
descrições breves aos resultados mais
frequentes da saída de fonte e descrições mais
longas aos menos frequentes.
26
© Rausley A. A. de Souza-2011
Codificação de Prefixo
• Um código prefixo é aquele que nenhuma
palavra código é prefixo para qualquer outra
palavra código (singularmente decodificável).
• Exemplos de códigos de fonte
0111 111 11 0,125 S
3
011 110 00 0,125 S
2
01 10 1 0,25 S
1
0 0 0 0,5 S
0
Código III Código II Código I Probabilidade Símbolo
27
© Rausley A. A. de Souza-2011
Decodificação de um
Código de Prefixo
• Árvore de decodificação para o Código II.
• Decodificação é inequívoca e instantânea.
• Decodifique 1011111000
28
© Rausley A. A. de Souza-2011
Desigualdade de Kraft-McMillan
• Uma condição necessária, mas não
suficiente, para que um código possa ser
um código prefixo
• Exemplo para os códigos I, II e III
1 2
1
0



=

K
k
l
k
29
© Rausley A. A. de Souza-2011
Propriedades adicionais
• Se a probabilidade de um evento é igual ao inverso da
base numérica da codificação elevado ao comprimento
da palavra código correspondente a este evento, ou seja
então
Entretanto, isso é uma casualidade uma vez que é
necessário que a correspondência estabelecida ocorra
para todas as probabilidades e suas respectivas
palavras códigos. Para esta condição particular, diz-se
que o código prefixo está casado com a fonte.
k
l
k
p

= 2
( ) S H L =
30
© Rausley A. A. de Souza-2011
Exemplo
• Analise os quatro códigos relacionados abaixo.
a) Dois desses quatro códigos são códigos-prefixo.
Identifique-os e construa suas árvores de decisão
individuais.
b) Aplique a desigualdade de Kraft-McMillan aos
códigos. Discuta os resultados.
111 111 0011 1111 S
4
110 110 0010 1110 S
3
10 011 001 110 S
2
01 01 01 10 S
1
00 0 0 0 S
0
Código IV Código III Código II Código I Símbolo
31
© Rausley A. A. de Souza-2011
Algoritmo de Huffman
• Exemplo de Código de Prefixo
• Os símbolos da fonte são listados em ordem decrescente de
probabilidade. Aos dois símbolos de menor probabilidade,
localizados no pé da coluna, são atribuídos os 0 e 1.
• Os dois símbolos de menor probabilidade são agrupados em um
único símbolo, cuja probabilidade é a soma das probabilidades. As
probabilidades são novamente listadas em ordem decrescente de
probabilidade em uma segunda coluna. Na reordenação dos
símbolos por ordem decrescente de probabilidade o novo símbolo,
resultado do agrupamento, é colocado na posição mais alta
possível, sem violar a ordem decrescente de probabilidade.
• O procedimento é repetido até que restem apenas dois símbolos,
aos quais são atribuídos novamente os bits 0 e 1.
• As palavras códigos binárias são obtidas fazendo o caminho
inverso, a partir da última coluna, em direção a primeira coluna,
anotando-se os bits encontrados em cada percurso, até cada
símbolo listado na primeira coluna
32
© Rausley A. A. de Souza-2011
Exemplo
• Suponha uma fonte discreta sem memória
S = {s
0
, s
1
, s
2
, s
3
, s
4
} com probabilidades
P(S = s
k
) = {0,4; 0,2; 0,2; 0,1; 0,1}.
– Palavras códigos, Comprimento médio das palavras
códigos, Entropia, Eficiência, Árvore de decisão
33
© Rausley A. A. de Souza-2011
Algoritmo de Huffman
• O processo de codificação de Huffman
não é único
– No agrupamento dos símbolos, o rótulo 0 e
1 para cada símbolo é arbitrário, poderia ser
1 e 0. Entretanto, a mesma convenção deve
ser mantida do início ao fim.
– A colocação de símbolos combinados com
mesma probabilidade que outro(s), na
posição mais alta da coluna, também é
arbitrário, poderia ser na posição mais
baixa.
34
© Rausley A. A. de Souza-2011
Exemplo
• Refaça o exemplo anterior, adotando como padrão a
colocação de símbolos combinados com mesma
probabilidade que outro(s) na posição mais baixa da
coluna.
35
© Rausley A. A. de Souza-2011
Variância do comprimento das
palavras códigos
– Calcule a variância para os dois exemplos
anteriores.
( )


=
− =
1
0
2
2
K
k
k k
L l p σ
36
© Rausley A. A. de Souza-2011
Exemplo
• Decodifique sequência 00010110111000 usando a
árvore do exemplo no slide 32.
• O algoritmo de Huffman produz um código prefixo com
comprimento médio próximo da entropia e
inequivocamente decodificável.
37
© Rausley A. A. de Souza-2011
Exemplo
• A Figura exibe uma
árvore de Huffman.
Qual é a palavra
código para os
símbolos A, B, C, D,
E, F e G
representados por
ela? Quais são seus
tamanhos de palavra-
código individuais?
38
© Rausley A. A. de Souza-2011
Extensão de uma Fonte Discreta
sem Memória
• Considere com
– P(S = s
k
) = {p
0
; p
1
; p
2
}.
• Extensão da fonte S em S
2
.
{ }
2 1 0
, , s s s = S
p
2
. p
2
p
2
. p
1
p
2
. p
0
p
1
. p
2
p
1
. p
1
p
1
. p
0
p
0
. p
2
p
0
. p
1
p
0
. p
0
Probabilidades
σ
8
σ
7
σ
6
σ
5
σ
4
σ
3
σ
2
σ
1
σ
0
Símbolos
s
2
s
2
s
2
s
1
s
2
s
0
s
1
s
2
s
1
s
1
s
1
s
0
s
0
s
2
s
0
s
1
s
0
s
0
Blocos
{ {{ { } }} }
8 1 0
2
, , , σ σ σ K = == = S
) ( ) ( S S nH H
n
= == =
39
© Rausley A. A. de Souza-2011
Exemplo
• Suponha uma fonte discreta sem memória
S = {s
0
, s
1
, s
2
} com probabilidades P(S = s
k
) = {0,6; 0,3;
0,1}. Admita que essa fonte deva ser codificada com
um código prefixo com eficiência igual ou maior do
que 0,95.
a) Codificação da fonte S
b) Codificação da fonte S
2
40
© Rausley A. A. de Souza-2011
Codificação de Lempel-Ziv
• O algoritmo de Huffman pressupõe o conhecimento prévio da
estatística da fonte.
• Para aplicações tais como compactações de textos existem códigos
que se adaptam à estatística da fonte.
• O algoritmo de Lempel-Ziv é adaptativo e não necessita do
conhecimento prévio da estatística da fonte.
• Usa palavras de comprimento fixo para representar um número
variável de símbolos da fonte.
• Basicamente, a codificação no algoritmo de Lempel-Ziv é realizada
analisando-se o fluxo de dados da fonte em segmentos que sejam
as subsequências mais breves não encontradas anteriormente (no
dicionário).
41
© Rausley A. A. de Souza-2011
Exemplo
• Codificação da sequência
000101110010100101. . .
– Inicialmente os bits 0 e 1 são previamente
armazenados nas posições numéricas 0 e
1, conforme apresentado a seguir. Tais
posições numéricas compõem o livro de
códigos (codebook).
- - Blocos codificados
1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
42
© Rausley A. A. de Souza-2011
Exemplo
• Codificação da sequência
000101110010100101. . .
– Em seguida, a subsequência mais curta, ainda não
armazenada em nenhuma posição binária, é armazenada na
posição 2 pelo codificador. Esta subsequência é 00. O
processo de codificação consiste em transmitir a posi transmitir a posiç ção de ão de
mem memó ória ria onde se encontra a parte da subsequência 00 já
armazenada anteriormente, na forma binária, e o que é
novidade simplesmente é repetido. Ou seja, da subsequência
00, o primeiro 0 se encontra na posição numérica 0 (000 em
binário) e o segundo 0 simplesmente é repetido.
000 0 - - Blocos codificados
00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
43
© Rausley A. A. de Souza-2011
Exemplo
• Codificação da sequência
000101110010100101. . .
– Novamente a próxima subsequência mais curta ainda não
armazenada em nenhuma posição binária, que é a
subsequência 01, é armazenada na posição 3. A posição de
memória onde se encontra a parte da subsequência 01 já
armazenada é a posição 0 (000 em binário) e a parte
novidade, ou seja 1, é repetida. Logo, o bloco codificado
agora é 0001.
000 1 0000 - - Blocos codificados
01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
44
© Rausley A. A. de Souza-2011
Exemplo
• Codificação da sequência
000101110010100101. . .
• Este procedimento é repetido conforme
apresentado na sequência a seguir.
011 1 0001 0000 - - Blocos codificados
011 01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
001 0 0111 0001 0000 - - Blocos codificados
10 011 01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
011 0 0010 0111 0001 0000 - - Blocos codificados
010 10 011 01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
45
© Rausley A. A. de Souza-2011
Exemplo
• Codificação da sequência
000101110010100101. . .
101 0 0110 0010 0111 0001 0000 - - Blocos codificados
100 010 10 011 01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
101 1 1010 0110 0010 0111 0001 0000 - - Blocos codificados
101 100 010 10 011 01 00 1 0 Subsequências
8 7 6 5 4 3 2 1 0 Posição numérica
46
© Rausley A. A. de Souza-2011
Codificação de Lempel-Ziv
• O codificador e o decodificador possuem o mesmo número
de memórias no livro de códigos e, portanto, o
decodificador conhece o tamanho do bloco codificado.
• O decodificador também inicia o processo de decodificação
com os bits 0 e 1 armazenados nas posições numéricas 0
e 1.
• O decodificador compõe o seu próprio livro de código
usando as memórias na mesma sequência que o
codificador.
• Em comparação com a codificação de Huffman, o
algoritmo de Lempel-Ziv usa códigos com tamanho fixo
para representar um número variável de símbolos da fonte.
47
© Rausley A. A. de Souza-2011
Codificação de Lempel-Ziv
• Em uma primeira análise, podemos chegar à conclusão
que este algoritmo não compacta nada, pelo contrário.
Essa é uma idéia falsa uma vez que a sequência
utilizada é muito curta para o algoritmo reconhecer
padrões de repetição. Conforme mencionado no livro
texto, na prática, são utilizados blocos com 12 bits, o
que resulta em 4096 posições no livro código. Além
disso, o algoritmo de Lempel-Ziv reconhece redundância
entre caracteres, o que não ocorre com o algoritmo de
Huffman. Particularmente eficiente para compactação de
textos, o algoritmo de Lempel-Ziv pode atingir uma taxa
de compactação de 55% contra 43% do algoritmo de
Huffman, para textos em inglês
48
© Rausley A. A. de Souza-2011
Exemplo
• Considere a seguinte sequência binária
111010011000101101001011010001...Use o algoritmo
de Lempel-Ziv para codificar essa sequência. Suponha
que os símbolos 0 e 1 já estejam no codebook.
49
© Rausley A. A. de Souza-2011
Canais Discretos sem Memória
• Discreto: os dois alfabetos possuem tamanhos finitos e o termo
• Sem memória: o símbolo corrente presente na saída depende
apenas do símbolo corrente presente na entrada e de nenhum outro
anterior.
• p(y
k
|x
j
) representa o conjunto das probabilidades de transição
( ) ( )
j k j k
x X y Y P x y p = = = | |
50
© Rausley A. A. de Souza-2011
Matriz de canal ou
matriz de transição
• Cada linha de P corresponde a um símbolo fixo
de entrada e cada coluna a um símbolo fixo de
saída.
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
(
(
(
(
¸
(

¸

=
− − − −


1 1 1 1 1 0
1 1 1 1 1 0
0 1 0 1 0 0
| | |
| | |
| | |
J K J J
K
K
x y p x y p x y p
x y p x y p x y p
x y p x y p x y p
L
M M M
L
L
P
( )


=
=
1
0
1 |
K
k
j k
x y p
( ) ( ) ( )
j j k k j
x p x y p y x p | , =
( ) ( ) ( )


=
=
1
0
|
J
j
j j k k
x p x y p y p
51
© Rausley A. A. de Souza-2011
Exemplo
• Canal binário
simétrico (BSC)
• J = K = 2
• Alfabeto de entrada:
x
0
= 0, x
1
= 1
• Alfabeto de saída:
y
0
= 0, y
1
= 1
( )
( )
p p p
x y P p
x y P p
= =
= = =
= = =
01 10
01
10
1 | 0
0 | 1
52
© Rausley A. A. de Souza-2011
Exemplo
a) Seja o canal BSC do slide anterior. Considere que os símbolos 0
e 1 têm a mesma probabilidade de ocorrer. Encontre a
probabilidade de os símbolos binários 0 e 1 aparecerem na saída
do canal.
b) Repita o cálculo anterior, supondo que os símbolos binários de
entrada 0 e 1 tenham probabilidades ¼ e ¾ de ocorrer,
respectivamente.
53
© Rausley A. A. de Souza-2011
Teorema da Codificação de Canal
• Será que existe um esquema de codificação
de canal eficiente o suficiente para tornar a
probabilidade de erro de bit arbitrariamente
baixa sem que a quantidade de redundância
introduzida seja demasiadamente alta?
54
© Rausley A. A. de Souza-2011
Terceiro Teorema de Shannon
• Teorema da Capacidade de Informação ou Teorema da
Capacidade de Canal
• A capacidade de informação de um canal contínuo com largura de
faixa de B hertz, perturbado por ruído Gaussiano branco aditivo de
densidade espectral N
0
/2, é dada por
dada em bits por segundo, onde P é a potência média do sinal
transmitido.
Se um canal discreto sem memória tem uma capacidade C e uma
fonte gera informações a uma taxa menor que C, então existe uma
técnica de codificação tal que a saída da fonte pode ser transmitida
ao longo do canal com uma probabilidade arbitrariamente baixa de
erro de símbolo
1
.
|
|
¹
|

\
|
+ =
B
S
B C
0
2
1 log
1
Simon Haykin, Michael Moher. “Sistemas Modernos de Comunicações Wireless” Bookman, 2008.
55
© Rausley A. A. de Souza-2011
Terceiro Teorema de Shannon
• Para um sistema ideal R
b
= C.
• Então S = E
b
/T
b
= E
b
R
b
= E
b
C.
• =
0
B
|
¹
|

\
|
+ =
|
|
¹
|

\
|
+ =
|
|
¹
|

\
|
+ =

S
B
C

E
B
S
B
C
b
1 log 1 log 1 log
2
0
2
0
2
B
C

E
B
C
b
1 2
0
− −− −
= == =
56
© Rausley A. A. de Souza-2011
Diagrama de Eficiência de Largura
de Banda
• O limite é representado
por uma fronteira entre a
região em que é possível
uma transmissão livre de
erros (R
b
< C) e a região
em que isso não é
possível (R
b
> C) em um
plano da eficiência de
largura de faixa em
função da relação entre
a energia de bit e a
densidade espectral de
ruído.
1
57
© Rausley A. A. de Souza-2011
Observações
• Limite de Shannon para um canal AWGN
(Largura de Banda Infinita): The ratio of energy
per data bit E
b
to one-sided noise power spectral
density
0
in an AWG channel above which
errorless transmission is possible when bandwidth
limitations are not placed on the signal and
transmission is at channel capacity
1
.
• Compensações entre E
b
/
0
, R
b
/B e a
probabilidade de Erro de símbolo P
e
.
dB 6 . 1 693 . 0 2 log
1 2
lim lim
0
− = = =
|
|
¹
|

\
|

=
|
|
¹
|

\
|
∞ → ∞ →
B
C

E
B
C
B
b
B
1
Bhargava, V.K. “Forward Error Correction Coding” Mobile Communications Handbook Ed. Suthan S. Suthersan
Boca Raton: CRC Press LLC, 1999
58
© Rausley A. A. de Souza-2011
Exemplo
• Um canal de faixa de voz da rede telefônica tem uma largura de
banda de 3.4 kHz.
a) Calcule a capacidade de informação do canal telefônico
correspondente a uma relação sinal-ruído de 30 dB.
b) Calcule a relação sinal-ruído mínima necessária para suportar
transmissão de informação através do canal telefônico a uma
taxa de 9600 bps.
59
© Rausley A. A. de Souza-2011
PSK M-ário e FSK M-ário
(a) Comparison of M-ary PSK against the ideal system for P
e
= 10
−5
and increasing M.
(b) Comparison of M-ary FSK against the ideal system for P
e
= 10
−5
and increasing M.
60
© Rausley A. A. de Souza-2011
Exemplo
• Considere a necessidade de transmissão a uma taxa de 100 kbps
em um sistema de voz (com largura de banda de 3 kHz). É possível
a transmissão nesta taxa (livre de erros) com um SNR de 10 dB?
Justifique sua resposta. Se não for possível, quais as possíveis
modificações no sistema?
61
© Rausley A. A. de Souza-2011
Exemplo
• Uma imagem de televisão em preto e branco pode ser vista como
uma imagem que consiste em aproximadamente 3×10
5
elementos,
em que cada um tem a mesma probabilidade de ocupar um dos 10
níveis de brilhos distintos. Suponha que (1) a taxa de transmissão
seja de 30 quadros de imagem por segundo e que (2) a relação
sinal-ruído seja de 30 dB. Usando o teorema da capacidade de
informação, calcule a largura de banda mínima necessária para
suportar a transmissão do sinal de vídeo resultante.
62
© Rausley A. A. de Souza-2011
Futuro
• “When determining the best area on which to focus future
technology enhancements, it is interesting to note that HSDPA,
1xEV-DO, and IEEE 802.16e-2005 all have highly optimized links—
that is, physical layers. In fact, as shown in Figure 16, the link layer
performance of these technologies is approaching the theoretical
limits as defined by the Shannon bound. (The Shannon bound is a
theoretical limit to the information transfer rate [per unit bandwidth]
that can be supported by any communications link. The bound is a
function of the Signal to Noise Ratio [SNR] of the communications
link.) Figure 16 also shows that HSDPA, 1xEV-DO, and IEEE
802.16e-2005 are all within 2 to 3 decibels (dB) of the Shannon
bound, indicating that there is not much room for improvement from
a link layer perspective. Note that differences do exist in the design
of the MAC layer (layer 2) and this may result in lower than expected
performance in some cases as described previously”. From:
http://www.3gamericas.org/documents/EDGE_HSPA_and_LTE_Bro
adband_Innovation_Rysavy_Sept_2008.pdf
63
© Rausley A. A. de Souza-2011
64
© Rausley A. A. de Souza-2011
Exercício Adicional
• O alfabeto de uma fonte discreta sem memória é
composto por 5 símbolos. Os símbolos emitidos pela
fonte devem ser codificados por meio de um código
prefixo a partir do histograma da frequência de
emissão apresentado abaixo. O número total de
símbolos do histograma foi emitido em 1 ms. Pede-se:
a) A entropia da fonte.
b) As palavras códigos de um
código prefixo para esta fonte.
c) A eficiência de codificação.
d) Determine qual é a taxa
de bit na saída do codificador
de fonte.
0
50
100
150
200
250
300
350
400
450
S0 S1 S2 S3 S4
Símbolos
N
ú
m
e
r
o

d
e

S
í
m
b
o
l
o
s
65
© Rausley A. A. de Souza-2011
Exemplo
a) Encontre a capacidade média, em bps, que seria
necessária para transmitir um sinal de TV em preto e
branco de alta-resolução à taxa de 32 quadros
(imagens) por segundo. Cada imagem é composta de
até 2×10
6
elementos e 16 diferentes níveis de brilho.
Todos os elementos são independentes e tem a
mesma probabilidade de ocorrência.
b) Para um TV em cores, este sistema adicionalmente
fornece 64 diferentes combinações de cores. Quanto
será o adicional de capacidade necessária comparada
com o sistema em preto e branco?
c) Encontre a capacidade necessária se, das
combinações cor - níveis de brilho, 100 elementos
ocorrem com probabilidade 0.003, 300 das
combinações ocorrem com probabilidade 0.001 e 624
das combinações ocorrem com probabilidade 0.00064.

Information source

From other sources

Format

Source encode

Encrypt

Channel encode

Multiplex

Pulse modulate

Bandpass modulate

Frequency spread

Multiple Access

X M T

Digital input Synchronization Digital baseband waveform Digital bandpass waveform hc(t) Channel impulse response

Bit stream Digital output

C h a n n e l

Format

Source decode

Decrypt

Channel decode

Demultiplex

Detect

Demodulate & Sample

Frequency despread

Multiple Access

R C V

Information sink

Optional
To other destinations

Essential

3

Block diagram of a typical digital communication system

© Rausley A. A. de Souza-2011

Referências Bibliográficas
• Este material está baseado nas seguinte referências:
– Notas de Aulas do prof. Geraldo Gil. Limites Fundamentais na Teoria da Informação. – Sistemas de Comunicação. Analógicos e Digitais. Simon Haykin. 4ª Edição. Bookman – Digital Communications – Fundamentals and Applications. Bernard Sklar. Second Edition. Prentice Hall.

• • •


4

A Universal Algorithm for Sequential Data Compression. Lempel-Ziv Paper: IEEE Transactions on Information Theory, 23(3), pp. 337–343, May 1977. http://www.cs.duke.edu/courses/spring03/cps296.5/papers/ziv_lempel_1977 _universal_algorithm.pdf Shannon Paper: http://www.stanford.edu/class/ee104/shannonpaper.pdf A Mathematical Theory of Communication. C. E. SHANNON: http://cm.bell-labs.com/cm/ms/what/shannonday/shannon1948.pdf Huffman's original article: D.A. Huffman, "A Method for the Construction of Minimum-Redundancy Codes", Proceedings of the I.R.E., September 1952, pp 1098–1102 http://compression.ru/download/articles/huff/huffman_1952_minimumredundancy-codes.pdf Proof of the Kraft-McMillan Inequality: http://www.cl.cam.ac.uk/teaching/2004/InfoTheory/proofKraftMcMillan.pdf
© Rausley A. A. de Souza-2011

Duas questões fundamentais
• Qual é a complexidade irredutível abaixo da qual um sinal não pode ser comprimido? Qual é a máxima taxa de transmissão para uma comunicação confiável em um canal ruidoso? Resposta: codificação de fonte (comunicação eficiente) e codificação de canal (comunicação confiável).
© Rausley A. A. de Souza-2011

5

Incerteza, Informação e Entropia
• Seja um experimento probabilístico que envolva a observação da saída de uma fonte de eventos discretos em unidades de intervalo de tempo (intervalo de sinalização). • Estes eventos podem ser modelados como variáveis discretas aleatórias (sk) que fazem parte de um conjunto ou alfabeto (S).
– S = {s0, s1, ... , sK-1} – probabilidades P(S = sk) = pk, para k = 0, 1, ... , K-1.

∑p
6

K −1 k =0

k

=1
© Rausley A. A. de Souza-2011

Incerteza. Informação e Entropia • Símbolos emitidos pela fonte sejam estatisticamente independentes • Fonte discreta sem memória (tem o sentido de que o símbolo emitido a qualquer tempo é independente de uma escolha prévia). há incerteza. há ganho na quantidade de informação. • Um sistema com realimentação não é uma fonte discreta sem memória 7 © Rausley A. de Souza-2011 8 . há surpresa. Depois da ocorrência do evento S = sk . de Souza-2011 Incerteza. I(sk). • Incerteza ou surpresa: Se não há surpresa não há informação. Informação e Entropia • Antes de o evento S = sk ocorrer. A. sk  1  I (sk ) = log 2   bits p   k © Rausley A. obtida por um evento. cuja essência pode ser vista como a resolução da incerteza. Quando o evento S = sk ocorre. • A quantidade de informação. A.

I (sk ) > I (sl ) então pk < pl – Ou seja. A. A. de Souza-2011 . de Souza-2011 Propriedades da Quantidade de Informação 3. 2. jamais provoca perda de informação 9 © Rausley A. se estivermos absolutamente certos do resultado de um evento. nenhuma informação será ganha. quanto menos provável um evento for. I (sk ) ≥ 0 para 0 ≤ pk ≤ 1 – Isto equivale a dizer que a ocorrência de um evento S = sk fornece alguma informação ou não fornece qualquer informação. mesmo antes de ele ocorrer. 4. I (sk sl ) = I (sk ) + I (sl ) – Se sk e sl forem estatisticamente independentes. 10 © Rausley A.Propriedades da Quantidade de Informação 1. mais informação ganharemos quando ele ocorrer. I (sk ) = 0 para pk = 1 – Evidentemente.

Exemplo • Admitamos que p indique a probabilidade de algum evento. A. Represente graficamente a quantidade de informação obtida pela ocorrência deste evento para 0 ≤ p ≤ 1. • A entropia determina a quantidade média de informação por símbolo (evento) da fonte. 12 © Rausley A. de Souza-2011 . A. 11 © Rausley A. de Souza-2011 Entropia • A média da quantidade de informação I(sk) de uma fonte de alfabeto (S) é dada por H (S ) = E [I (s k )]  1  H (S ) = ∑ p k log 2   p  k =0  k K −1 • H(S) é definida como entropia.

com probabilidades p0 e p1. se e somente se a probabilidade pk = 1 para um dado valor de k e todas as outras probabilidades são iguais a zero. – Dica: x log x → 0 quando x → 0 H (S ) = − p0 log 2 p0 − (1 − p0 ) log 2 (1 − p0 ) bits 14 © Rausley A. se e somente se pk = 1/K. de Souza-2011 Exemplo • Considere uma fonte discreta sem memória que emite os símbolos s0 = 0 e s1 = 1. respectivamente. Neste caso não há incerteza. H(S) = log 2 K. Neste caso a incerteza é máxima. A. ou seja. A. todos os símbolos são equiprováveis.Propriedades da Entropia 0 ≤ H (S ) ≤ log 2 K – onde K é o número de símbolos do alfabeto da fonte • • 13 H(S) = 0. de Souza-2011 . © Rausley A.

p1=0. 1/6.3. s1. A. Encontre a quantidade de informação obtida observando-se a emissão desses símbolos pela fonte. Os símbolos sucessivos emitidos pela fonte são estatisticamente independentes. 15 © Rausley A. A. s2 e s3 com probabilidades 1/3.2 e p3=0. respectivamente.1. 1/4 e 1/4. 16 © Rausley A.Exemplo • Uma fonte emite um de quatro símbolos possíveis durante cada intervalo de sinalização. Os símbolos ocorrem com probabilidades p0=0. Calcule a entropia da fonte. de Souza-2011 Exemplo • Uma fonte emite um de quatro símbolos s0.4. p2=0. de Souza-2011 .

de Souza-2011 p = 0. v. em bits/caractere.01: para as letras b. r. A.Exemplo • Calcule a média de informação. y p = 0. assumindo que cada um dos 26 caracteres no alfabeto ocorrem com igual probabilidade.z Teorema da Codificação de Fonte • Transmissão eficiente • Necessidade de conhecimento da estatística da fonte • Código Morse (código de tamanho variável) – e representada por um “⋅” ⋅ – q representada pela sequência “. de Souza-2011 . para o idioma inglês.10: para as letras a. k.-”. m.02: para as letras c. e . n. x. w. Refaça os cálculos assumindo que os caracteres ocorrem com as seguintes probabilidades: – – – – 17 © Rausley A. 18 © Rausley A. a resposta anterior representará um limitante superior na quantidade média de informação por caractere. g. q. os caracteres no alfabeto não aparecem com igual frequência no idioma inglês (ou em qualquer outro idioma). l. u. • Como é sabido.⋅ . j. o.07: para as letras h. Não considere os espaços e pontuações. t p = 0. f. i. A. p. s p = 0. d.

A. de Souza-2011 .b6. A.org/wiki/ASCII © Rausley A.b2.Codificador de fonte • Objetivo: retirar redundância • Eficiência: De maneira geral. os códigos de comprimento variável são mais eficientes 19 © Rausley A.b3.b5.wikipedia. quanto menor o número de dígitos para a representação da mensagem melhor o sistema • Classificação dos códigos de fonte – Comprimento fixo – Comprimento variável • Se alguns símbolos são mais prováveis que outros.b4. de Souza-2011 Código ASCII • b1.b7 20 Souce: Wikipedia: http://en.

então. Quantos bits. a eficiência de codificação como η= 21 Lmin L © Rausley A.125 0.250 0. – Admitamos que Lmin seja o valor mínimo possível de L . Símbolo S0 S1 S2 S3 Probabilidade 0. A. de Souza-2011 .Comprimento médio L = ∑ pk lk k =0 K −1 – onde lk é o número de bits médio da palavra código correspondente ao símbolo k. Definimos. em média.500 0.125 Código I 00 01 10 11 Código II 0 10 110 111 22 © Rausley A. são transmitidos com os códigos I e II. de Souza-2011 Exemplo • Um arquivo com 10k símbolos é transmitido. A.

A. A. 23 © Rausley A. 24 © Rausley A.Primeiro Teorema de Shannon • Teorema da Codificação de Fonte: Dada uma fonte discreta sem memória de entropia H(S). mas não menor do que ela. de Souza-2011 . então o maior valor possível para a eficiência de codificação de fonte é igual a unidade. de Souza-2011 Eficiência de codificação η= H (S ) L • Uma vez que o Teorema da Codificação de Fonte admite que L = H (S ) . o comprimento médio das palavras códigos para um esquema de codificação livre de distorção é limitado como L ≥ H (S ) – A entropia H(S) representa um limite fundamental ao número médio de bits por símbolo da fonte necessário para representar uma fonte discreta sem memória no sentido de que ele pode ser tão pequeno quanto a entropia H(S).

A. de Souza-2011 . de Souza-2011 Codificação de Prefixo • Um código prefixo é aquele que nenhuma palavra código é prefixo para qualquer outra palavra código (singularmente decodificável).125 Código I 0 1 00 11 Código II 0 10 110 111 Código III 0 01 011 0111 26 © Rausley A. necessariamente. • A compactação de dados é obtida atribuindo-se descrições breves aos resultados mais frequentes da saída de fonte e descrições mais longas aos menos frequentes. A.5 0.Compactação de Dados • Transmissão eficiente: informações redundantes devem ser removidas do sinal que será transmitido. 25 © Rausley A.125 0.25 0. • Exemplos de códigos de fonte Símbolo S0 S1 S2 S3 Probabilidade 0. o processo de codificação de fonte é limitado. • Na compactação de dados. pela entropia da fonte. • Compressão: admite-se perda de informação. • Compactação: não há perda de informação (compressão sem perdas).

A. de Souza-2011 . • Decodifique 1011111000 27 © Rausley A.Decodificação de um Código de Prefixo • Árvore de decodificação para o Código II. II e III 28 © Rausley A. • Decodificação é inequívoca e instantânea. A. de Souza-2011 Desigualdade de Kraft-McMillan • Uma condição necessária. para que um código possa ser um código prefixo ∑2 k =0 K −1 −lk ≤1 • Exemplo para os códigos I. mas não suficiente.

A. de Souza-2011 Código I 0 10 110 1110 1111 Código II 0 01 001 0010 0011 Código III 0 01 011 110 111 Código IV 00 01 10 110 111 . ou seja p k = 2 − lk então L = H (S ) Entretanto. Para esta condição particular. 29 © Rausley A. A. diz-se que o código prefixo está casado com a fonte. Identifique-os e construa suas árvores de decisão individuais. Símbolo S0 S1 S2 S3 S4 30 © Rausley A. Discuta os resultados. de Souza-2011 Exemplo • Analise os quatro códigos relacionados abaixo. isso é uma casualidade uma vez que é necessário que a correspondência estabelecida ocorra para todas as probabilidades e suas respectivas palavras códigos. b) Aplique a desigualdade de Kraft-McMillan aos códigos.Propriedades adicionais • Se a probabilidade de um evento é igual ao inverso da base numérica da codificação elevado ao comprimento da palavra código correspondente a este evento. a) Dois desses quatro códigos são códigos-prefixo.

A. localizados no pé da coluna. 0. de Souza-2011 . As palavras códigos binárias são obtidas fazendo o caminho inverso. são atribuídos os 0 e 1. s2. s3.4.1}. 0. s1. 0. – Palavras códigos. Eficiência.Algoritmo de Huffman • • • Exemplo de Código de Prefixo Os símbolos da fonte são listados em ordem decrescente de probabilidade. O procedimento é repetido até que restem apenas dois símbolos.2. Aos dois símbolos de menor probabilidade. Os dois símbolos de menor probabilidade são agrupados em um único símbolo. As probabilidades são novamente listadas em ordem decrescente de probabilidade em uma segunda coluna. é colocado na posição mais alta possível. Comprimento médio das palavras códigos. a partir da última coluna.2. em direção a primeira coluna. até cada símbolo listado na primeira coluna • • 31 © Rausley A. 0. Árvore de decisão 32 © Rausley A. Na reordenação dos símbolos por ordem decrescente de probabilidade o novo símbolo.1. de Souza-2011 Exemplo • Suponha uma fonte discreta sem memória S = {s0. s4} com probabilidades P(S = sk) = {0. A. aos quais são atribuídos novamente os bits 0 e 1. sem violar a ordem decrescente de probabilidade. cuja probabilidade é a soma das probabilidades. resultado do agrupamento. anotando-se os bits encontrados em cada percurso. Entropia.

A. 34 © Rausley A. Entretanto. A.Algoritmo de Huffman • O processo de codificação de Huffman não é único – No agrupamento dos símbolos. também é arbitrário. – A colocação de símbolos combinados com mesma probabilidade que outro(s). a mesma convenção deve ser mantida do início ao fim. de Souza-2011 Exemplo • Refaça o exemplo anterior. poderia ser 1 e 0. na posição mais alta da coluna. de Souza-2011 . o rótulo 0 e 1 para cada símbolo é arbitrário. adotando como padrão a colocação de símbolos combinados com mesma probabilidade que outro(s) na posição mais baixa da coluna. poderia ser na posição mais baixa. 33 © Rausley A.

A. de Souza-2011 . 36 © Rausley A. de Souza-2011 Exemplo • Decodifique sequência 00010110111000 usando a árvore do exemplo no slide 32. 35 © Rausley A. • O algoritmo de Huffman produz um código prefixo com comprimento médio próximo da entropia e inequivocamente decodificável. A.Variância do comprimento das palavras códigos σ = ∑ pk lk − L 2 k =0 K −1 ( ) 2 – Calcule a variância para os dois exemplos anteriores.

E. p2}. p2 S 2 = {σ 0 . C. D. p0 s 0 s1 σ1 p0.K. σ 8 } H (S n ) = nH (S ) 38 © Rausley A. p1.Exemplo • A Figura exibe uma árvore de Huffman. s2 } com – P(S = sk) = {p0. p1 s 2 s2 σ8 p2. • Extensão da fonte S em S2. p0 s2 s 1 σ7 p2. σ 1 . de Souza-2011 Extensão de uma Fonte Discreta sem Memória • Considere S = {s0 . B. p1 s0 s2 σ2 p0. p2 s1 s 0 σ3 p1. A. Qual é a palavra código para os símbolos A. p1 s1 s 2 σ5 p1. p0 s1 s 1 σ4 p1. Blocos Símbolos Probabilidades s0 s0 σ0 p0. F e G representados por ela? Quais são seus tamanhos de palavracódigo individuais? 37 © Rausley A. p2 s2 s0 σ6 p2. A. de Souza-2011 . s1 .

de Souza-2011 . Para aplicações tais como compactações de textos existem códigos que se adaptam à estatística da fonte. de Souza-2011 Codificação de Lempel-Ziv • • • • • O algoritmo de Huffman pressupõe o conhecimento prévio da estatística da fonte. 40 © Rausley A. 0. a) b) Codificação da fonte S Codificação da fonte S2 39 © Rausley A. s2} com probabilidades P(S = sk) = {0. Basicamente. O algoritmo de Lempel-Ziv é adaptativo e não necessita do conhecimento prévio da estatística da fonte. Admita que essa fonte deva ser codificada com um código prefixo com eficiência igual ou maior do que 0.3. s1. a codificação no algoritmo de Lempel-Ziv é realizada analisando-se o fluxo de dados da fonte em segmentos que sejam as subsequências mais breves não encontradas anteriormente (no dicionário). Usa palavras de comprimento fixo para representar um número variável de símbolos da fonte.Exemplo • Suponha uma fonte discreta sem memória S = {s0.95.1}. A.6. 0. A.

na forma binária. . Posição numérica Subsequências Blocos codificados 0 0 1 1 2 00 000 0 3 4 5 6 7 8 42 © Rausley A. . a subsequência mais curta. A. o primeiro 0 se encontra na posição numérica 0 (000 em binário) e o segundo 0 simplesmente é repetido. O processo de codificação consiste em transmitir a posição de memória onde se encontra a parte da subsequência 00 já armazenada anteriormente. Em seguida. é armazenada na posição 2 pelo codificador. de Souza-2011 . Esta subsequência é 00. ainda não armazenada em nenhuma posição binária. – Inicialmente os bits 0 e 1 são previamente armazenados nas posições numéricas 0 e 1. conforme apresentado a seguir. Ou seja. Tais posições numéricas compõem o livro de códigos (codebook). .Exemplo • Codificação da sequência 000101110010100101. e o que é novidade simplesmente é repetido. da subsequência 00. . A. de Souza-2011 Exemplo • – Codificação da sequência 000101110010100101. Posição numérica Subsequências Blocos codificados 0 0 1 1 2 3 4 5 6 7 8 41 © Rausley A.

de Souza-2011 Exemplo • • Codificação da sequência 000101110010100101. Logo. . que é a subsequência 01. Novamente a próxima subsequência mais curta ainda não armazenada em nenhuma posição binária. Posição numérica Subsequências Blocos codificados 0 0 1 1 2 00 0000 3 01 000 1 4 5 6 7 8 43 © Rausley A. o bloco codificado agora é 0001. ou seja 1. . Posição numérica Subsequências Blocos codificados Posição numérica Subsequências Blocos codificados Posição numérica Subsequências Blocos codificados 44 © Rausley A. é armazenada na posição 3. A posição de memória onde se encontra a parte da subsequência 01 já armazenada é a posição 0 (000 em binário) e a parte novidade.Exemplo • – Codificação da sequência 000101110010100101. é repetida. A. . de Souza-2011 0 0 0 0 0 0 - 1 1 1 1 1 1 - 2 00 0000 2 00 0000 2 00 0000 3 01 0001 3 01 0001 3 01 0001 4 011 011 1 4 011 0111 4 011 0111 5 6 7 8 5 10 001 0 5 10 0010 6 7 8 6 010 011 0 7 8 . . A. Este procedimento é repetido conforme apresentado na sequência a seguir.

• O decodificador compõe o seu próprio livro de código usando as memórias na mesma sequência que o codificador. de Souza-2011 Codificação de Lempel-Ziv • O codificador e o decodificador possuem o mesmo número de memórias no livro de códigos e. o algoritmo de Lempel-Ziv usa códigos com tamanho fixo para representar um número variável de símbolos da fonte. portanto.Exemplo • Codificação da sequência 000101110010100101. . de Souza-2011 . • O decodificador também inicia o processo de decodificação com os bits 0 e 1 armazenados nas posições numéricas 0 e 1. o decodificador conhece o tamanho do bloco codificado. A. 46 © Rausley A. A. Posição numérica Subsequências Blocos codificados 0 0 1 1 2 00 0000 3 01 0001 4 011 0111 5 10 0010 6 010 0110 7 100 101 0 8 Posição numérica Subsequências Blocos codificados 0 0 - 1 1 - 2 00 0000 3 01 0001 4 011 0111 5 10 0010 6 010 0110 7 100 1010 8 101 101 1 45 © Rausley A. . • Em comparação com a codificação de Huffman.

Conforme mencionado no livro texto. de Souza-2011 Exemplo • Considere a seguinte sequência binária 111010011000101101001011010001. Além disso. A. Particularmente eficiente para compactação de textos. de Souza-2011 . o que resulta em 4096 posições no livro código. o algoritmo de Lempel-Ziv pode atingir uma taxa de compactação de 55% contra 43% do algoritmo de Huffman.. A. Essa é uma idéia falsa uma vez que a sequência utilizada é muito curta para o algoritmo reconhecer padrões de repetição. são utilizados blocos com 12 bits. podemos chegar à conclusão que este algoritmo não compacta nada.Codificação de Lempel-Ziv • Em uma primeira análise.Use o algoritmo de Lempel-Ziv para codificar essa sequência. 48 © Rausley A. pelo contrário.. Suponha que os símbolos 0 e 1 já estejam no codebook. para textos em inglês 47 © Rausley A. o que não ocorre com o algoritmo de Huffman. na prática. o algoritmo de Lempel-Ziv reconhece redundância entre caracteres.

Canais Discretos sem Memória p ( yk | x j ) = P (Y = yk | X = x j ) • • • 49 © Rausley A. 50 © Rausley A. de Souza-2011 Discreto: os dois alfabetos possuem tamanhos finitos e o termo Sem memória: o símbolo corrente presente na saída depende apenas do símbolo corrente presente na entrada e de nenhum outro anterior. A. A. de Souza-2011 . yk ) = p( yk | x j ) p(x j ) p ( y k ) = ∑ p ( y k | x j ) p (x j ) j =0 J −1 • Cada linha de P corresponde a um símbolo fixo de entrada e cada coluna a um símbolo fixo de saída. p(yk|xj) representa o conjunto das probabilidades de transição Matriz de canal ou matriz de transição  p( y 0 | x 0 )  p( y | x ) 0 1 P=  M   p ( y 0 | x J −1 ) p ( y1 | x 0 ) L p ( y 1 | x1 ) L M p ( y1 | x J −1 ) L p ( y K −1 | x 0 )  p ( y K −1 | x1 )    M  p ( y K −1 | x J −1 ) ∑ p(y k =0 K −1 k | xj )=1 p(x j .

supondo que os símbolos binários de entrada 0 e 1 tenham probabilidades ¼ e ¾ de ocorrer. x1 = 1 • Alfabeto de saída: y0 = 0. y1 = 1 p10 = P ( y = 1 | x = 0 ) p 01 = P ( y = 0 | x = 1) p10 = p 01 = p 51 © Rausley A. respectivamente. Encontre a probabilidade de os símbolos binários 0 e 1 aparecerem na saída do canal. b) 52 © Rausley A. A. de Souza-2011 . A. Repita o cálculo anterior. Considere que os símbolos 0 e 1 têm a mesma probabilidade de ocorrer. de Souza-2011 Exemplo a) Seja o canal BSC do slide anterior.Exemplo • Canal binário simétrico (BSC) • J=K=2 • Alfabeto de entrada: x0 = 0.

então existe uma técnica de codificação tal que a saída da fonte pode ser transmitida ao longo do canal com uma probabilidade arbitrariamente baixa de erro de símbolo1. “Sistemas Modernos de Comunicações Wireless” Bookman. Se um canal discreto sem memória tem uma capacidade C e uma fonte gera informações a uma taxa menor que C. de Souza-2011 Terceiro Teorema de Shannon • • Teorema da Capacidade de Informação ou Teorema da Capacidade de Canal A capacidade de informação de um canal contínuo com largura de faixa de B hertz. A. 54 1Simon Haykin. Michael Moher. é dada por  S   C = B log 2 1 +   0B   dada em bits por segundo. A.Teorema da Codificação de Canal • Será que existe um esquema de codificação de canal eficiente o suficiente para tornar a probabilidade de erro de bit arbitrariamente baixa sem que a quantidade de redundância introduzida seja demasiadamente alta? 53 © Rausley A. perturbado por ruído Gaussiano branco aditivo de densidade espectral N0/2. 2008. © Rausley A. de Souza-2011 . onde P é a potência média do sinal transmitido.

A. • Então S = Eb/Tb = EbRb = EbC. de Souza-2011 Diagrama de Eficiência de Largura de Banda • O limite é representado por uma fronteira entre a região em que é possível uma transmissão livre de erros (Rb < C) e a região em que isso não é possível (Rb > C) em um plano da eficiência de largura de faixa em função da relação entre a energia de bit e a densidade espectral de ruído. 1 56 © Rausley A.   E C C S  S  = log 2 1 + b  = log 2 1 +  = log 2 1 +       B B B   0 0   C Eb 0 = 2 B −1 B C • 55 = 0B © Rausley A. A. de Souza-2011 .Terceiro Teorema de Shannon • Para um sistema ideal Rb = C.

V. b) Calcule a relação sinal-ruído mínima necessária para suportar transmissão de informação através do canal telefônico a uma taxa de 9600 bps.4 kHz. 57 1Bhargava. de Souza-2011 Exemplo • Um canal de faixa de voz da rede telefônica tem uma largura de banda de 3. Suthan S. Suthersan Boca Raton: CRC Press LLC. “Forward Error Correction Coding” Mobile Communications Handbook Ed. Rb/B e a probabilidade de Erro de símbolo Pe. 58 © Rausley A. 1999 © Rausley A. a) Calcule a capacidade de informação do canal telefônico correspondente a uma relação sinal-ruído de 30 dB.6 dB  = lim B →∞  lim B →∞      C  0 B   • Compensações entre Eb/ 0. A.Observações • Limite de Shannon para um canal AWGN (Largura de Banda Infinita): The ratio of energy per data bit Eb to one-sided noise power spectral density 0 in an AWG channel above which errorless transmission is possible when bandwidth limitations are not placed on the signal and transmission is at channel capacity1.  2C B − 1   Eb   = log 2 = 0. A.K. de Souza-2011 .693 = −1.

(b) Comparison of M-ary FSK against the ideal system for Pe = 10 −5 and increasing M. A. É possível a transmissão nesta taxa (livre de erros) com um SNR de 10 dB? Justifique sua resposta.PSK M-ário e FSK M-ário (a) Comparison of M-ary PSK against the ideal system for Pe = 10−5 and increasing M. quais as possíveis modificações no sistema? 60 © Rausley A. 59 © Rausley A. A. de Souza-2011 . Se não for possível. de Souza-2011 Exemplo • Considere a necessidade de transmissão a uma taxa de 100 kbps em um sistema de voz (com largura de banda de 3 kHz).

Suponha que (1) a taxa de transmissão seja de 30 quadros de imagem por segundo e que (2) a relação sinal-ruído seja de 30 dB. de Souza-2011 . as shown in Figure 16. (The Shannon bound is a theoretical limit to the information transfer rate [per unit bandwidth] that can be supported by any communications link. 1xEV-DO. A.pdf 62 © Rausley A. From: http://www. Note that differences do exist in the design of the MAC layer (layer 2) and this may result in lower than expected performance in some cases as described previously”. em que cada um tem a mesma probabilidade de ocupar um dos 10 níveis de brilhos distintos. A. 1xEV-DO. and IEEE 802. calcule a largura de banda mínima necessária para suportar a transmissão do sinal de vídeo resultante. The bound is a function of the Signal to Noise Ratio [SNR] of the communications link. In fact. de Souza-2011 Futuro • “When determining the best area on which to focus future technology enhancements.16e-2005 all have highly optimized links— that is.org/documents/EDGE_HSPA_and_LTE_Bro adband_Innovation_Rysavy_Sept_2008.3gamericas. and IEEE 802.Exemplo • Uma imagem de televisão em preto e branco pode ser vista como uma imagem que consiste em aproximadamente 3×105 elementos. indicating that there is not much room for improvement from a link layer perspective.) Figure 16 also shows that HSDPA.16e-2005 are all within 2 to 3 decibels (dB) of the Shannon bound. it is interesting to note that HSDPA. 61 © Rausley A. the link layer performance of these technologies is approaching the theoretical limits as defined by the Shannon bound. Usando o teorema da capacidade de informação. physical layers.

63 © Rausley A. Determine qual é a taxa de bit na saída do codificador de fonte. de Souza-2011 Exercício Adicional • O alfabeto de uma fonte discreta sem memória é composto por 5 símbolos. A. Os símbolos emitidos pela fonte devem ser codificados por meio de um código prefixo a partir do histograma da frequência de emissão apresentado abaixo. O número total de símbolos do histograma foi emitido em 1 ms. A. As palavras códigos de um código prefixo para esta fonte. de Souza-2011 . A eficiência de codificação. 450 400 350 Número de Símbolos 300 250 200 150 100 50 0 S0 S1 S2 Símbolos S3 S4 64 © Rausley A. Pede-se: a) b) c) d) A entropia da fonte.

em bps.001 e 624 das combinações ocorrem com probabilidade 0. Todos os elementos são independentes e tem a mesma probabilidade de ocorrência. das combinações cor . 300 das combinações ocorrem com probabilidade 0. Quanto será o adicional de capacidade necessária comparada com o sistema em preto e branco? c) Encontre a capacidade necessária se. 65 © Rausley A.003. Cada imagem é composta de até 2×106 elementos e 16 diferentes níveis de brilho. este sistema adicionalmente fornece 64 diferentes combinações de cores. que seria necessária para transmitir um sinal de TV em preto e branco de alta-resolução à taxa de 32 quadros (imagens) por segundo. b) Para um TV em cores.Exemplo a) Encontre a capacidade média.níveis de brilho. A.00064. 100 elementos ocorrem com probabilidade 0. de Souza-2011 .