universidade presbiteriana mackenzie engenharia...

66
UNIVERSIDADE PRESBITERIANA MACKENZIE ESCOLA DE ENGENHARIA ENGENHARIA ELÉTRICA DANILO TEMERLOGLOU DE ABREU ESTIMAÇÃO DE SINAIS CAÓTICOS UTILIZANDO O ALGORITMO DE VITERBI São Paulo 2007

Upload: vanthuy

Post on 30-Dec-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDADE PRESBITERIANA MACKENZIE ESCOLA DE ENGENHARIA ENGENHARIA ELÉTRICA

DANILO TEMERLOGLOU DE ABREU

ESTIMAÇÃO DE SINAIS CAÓTICOS UTILIZANDO O ALGORITMO DE VITERBI

São Paulo 2007

1

DANILO TEMERLOGLOU DE ABREU

ESTIMAÇÃO DE SINAIS CAÓTICOS UTILIZANDO O ALGORITMO DE VITERBI

ORIENTADOR: PROF. DR. MARCIO EISENCRAFT

São Paulo

2007

Trabalho de Graduação Interdisciplinar apresentado a Escola de Engenharia Elétrica da Universidade Presbiteriana Mackenzie, como requisito parcial à obtenção do grau de Bacharel em Engenharia.

2

AGRADECIMENTOS

A Deus, que me concedeu inteligência e disposição para a realização desse trabalho. Ao orientador Dr. Marcio Eisencraft pelo incentivo e constante disposição em me ajudar e orientar ao longo desta pesquisa. A meus pais, Maria Helena e Dionísio, e ao meu irmão, Thales, pelo apoio durante a realização deste trabalho. À minha namorada Martha pelo incentivo e paciência para que eu pudesse desenvolver uma boa pesquisa.

3

RESUMO Sinais caóticos têm sido estudados visando-se possíveis aplicações em Telecomunicações. Porém, os sistemas propostos na literatura apresentam baixo desempenho comparado aos sistemas convencionais quando o canal de comunicação é ruidoso. Neste trabalho, é analisada uma alternativa para melhorar esse desempenho. Ela se baseia na teoria da estimação, que por meio de métodos estatísticos, busca recuperar o sinal transmitido. O trabalho se propõe a discutir um dos métodos de estimação de sinais caóticos chamado algoritmo de Viterbi. Tentando tornar este trabalho mais acessível, preocupa-se em fazer uma revisão bibliográfica sobre a teoria dos sistemas dinâmicos não-lineares e sobre o processamento estatístico de sinais. Utilizam-se sinais e sistemas de tempo discreto para facilitar a análise das técnicas propostas por meio de simulações computacionais. Palavras-chave: Sinais caóticos. Estimação de sinais. Algoritmo de Viterbi.

4

ABSTRACT

The possible applications of chaotic signals in Telecommunications have been largely investigated. However, the systems proposed until now present low performance when the communication channel is noisy. In this work, we study an alternative to improve their results. It is based on the estimation theory, which by statistical methods, seeking to recover the transmitted signal. The work intends to discuss one of the methods of estimation of chaotic signals called Viterbi algorithm. To make this work accessible to a larger public, we include a review on the theory of nonlinear dynamical systems and on the statistical processing of signals. The algorithms’ performance are accessed via computer simulations. Key-words: Chaotic signals. Estimation of signals. Viterbi algorithm.

5

LISTA DE ILUSTRAÇÕES Gráfico 1 - Exemplo de órbita do mapa logístico com condição inicial ( )0 0,01y = ............. 10

Gráfico 2 - Exemplo de órbita com um ponto fixo ................................................................ 18 Gráfico 3 - Exemplo de órbita com dois pontos fixos ........................................................... 19 Gráfico 4 - Diagrama de bifurcação ..................................................................................... 23 Gráfico 5 - Diagrama de bifurcação ampliado entre os pontos 3,82 e 3,86 ............................ 24 Gráfico 6 - (a) Iteração do mapa logístico com condição inicial ( )0 0,2y = e (b) com

condição inicial ( )0 0,201y = ............................................................................................... 25

Gráfico 7 - Exemplo de órbita de período 2 .......................................................................... 26 Gráfico 8 - (a) Mapa tenda inclinada com 0,4α = ; (b) exemplo de órbita deste mapa ......... 28 Gráfico 9 - (a) Mapa tenda; (b) exemplo de órbita do mapa tenda ........................................ 29 Gráfico 10 - (a) Mapa quadrático; (b) exemplo de órbita do mapa quadrático ....................... 30 Gráfico 11 - Expoente de Lyapunov em função do parâmetro a para o mapa logístico ........ 32 Gráfico 12 - (a) Densidade invariante x pontos da órbita; (b) Histograma de um mapa logístico ............................................................................................................................... 32 Gráfico 13 - (a) Densidade invariante x pontos da órbita; (b) Histograma de um mapa tenda inclinada .............................................................................................................................. 33 Gráfico 14 - (a) Densidade invariante x pontos da órbita; (b) Histograma de um mapa quadrático ............................................................................................................................ 34 Gráfico 15 - (a) Sinal original; (b) sinal corrompido por ruído; (c) sinal estimado ................ 46 Gráfico 16 - (a) Erro sem utilizar o algoritmo de Viterbi; (b) erro após utilizar o algoritmo .. 46 Gráfico 17 - inSNR x outSNR ................................................................................................. 47

Gráfico 18 - inSNR x outSNR do mapa tenda inclinada com variações do parâmetro α ......... 50

Gráfico 19 - inSNR x outSNR do mapa tenda inclinada com variações do número de intervalos ............................................................................................................................................ 51 Gráfico 20 - inSNR x outSNR do mapa quadrático com variações do número de intervalos ..... 52

6

LISTA DE ABREVIATURAS, SIGLAS E SÍMBOLOS

jC Centro de cada subintervalo do domínio

( ).rp

Densidade de probabilidade de ruído

( )' .f

Derivada de f

U Domínio

ija Elemento da matriz de transição de estados

( )nf x Enésima iteração de um mapa genérico

( )q n j= Estado

( ).h Expoente de Lyapunov

( )1y n + Mapa específico

( )f x Mapa genérico

A Matriz de transição de estados

( ),n jϕ Matriz que indica o estado anterior mais provável

N Número de pontos da órbita

IN Número de intervalos

( ).L Número de Lyapunov

α Parâmetro do mapa tenda inclinada

p Ponto fixo

rP Potência do ruído

( ),n jδ Probabilidade da amostra n estar no estado j

inSNR

Relação sinal-ruído de entrada

outSNR

Relação sinal-ruído de saída

r Ruído

sɶ Sinal distorcido

s Sinal estimado

s Sinal original

jU Subintervalos do domínio

n Variável discreta independente (tempo)

q Vetor contendo a seqüência de estados estimada

q Vetor genérico contendo uma seqüência de estados

7

SUMÁRIO 1 INTRODUÇÃO......................................................................................... 8 1.1 SINAIS CAÓTICOS E SISTEMAS DE COMUNICAÇÃO..................................... 9 1.2 ESTRUTURA DO TRABALHO............................................................................... 12 2 SINAIS CAÓTICOS................................................................................................ 14 2.1 HISTÓRICO DE SINAIS CAÓTICOS EM SISTEMAS DE COMUNICAÇÃO..... 14 2.2 SISTEMAS DINÂMICOS NÃO LINEARES........................................................... 16 2.3 DEFINIÇÕES BÁSICAS........................................................................................... 17 2.4 EXEMPLOS DE MAPAS QUE GERAM SINAIS CAÓTICOS.............................. 21 2.4.1 Mapa Logístico.......................................................................................................... 21 2.4.2 Mapa Tenda Inclinada............................................................................................. 28 2.4.3 Mapa Tenda.............................................................................................................. 29 2.4.4 Mapa Quadrático...................................................................................................... 30 2.5 CAOS E NÚMERO DE LYAPUNOV...................................................................... 31 2.6 DENSIDADE INVARIANTE.................................................................................... 33 3 ESTIMAÇÃO DE ÓRBITAS POR MEIO DO ALGORITMO DE VITERBI.. 36 3.1 REPARTIÇÃO DO DOMÍNIO ................................................................................ 37 3.2 ESTIMAÇÃO DE UM SINAL CORROMPIDO PELO RUÍDO.............................. 39 3.2.1 Exemplo numérico do algoritmo de Viterbi........................................................... 44 3.2.2 Exemplo gráfico do algoritmo de Viterbi............................................................... 46 4 SIMULAÇÕES......................................................................................................... 50 5 CONCLUSÕES......................................................................................................... 55 APÊNDICE A – ROTINAS COMPUTACIONAIS NO MATLAB......................... 57 REFERÊNCIAS....................................................................................................... 64

8 1 INTRODUÇÃO

A comunicação é cada dia mais importante na vida humana. Telefonia celular,

televisão de alta definição, transmissão via satélite, comunicação óptica e comunicação sem

fio são alguns exemplos de como o mundo está envolvido com as tecnologias de sistemas de

comunicação.

Um sistema de comunicação genérico pode ser representado pelo Diagrama 1

(HAYKIN, 2001).

Diagrama 1- Sistema de comunicação Fonte: Haykin (2001)

Estimativa da

mensagem do sinal

Sinal de mensagem

Codificador da fonte

Demodulador

Modulador

Codificador

de canal

Decodificador

de canal

Decodificador

da fonte

Receptor

Fonte de informação

Canal

Transmissor

Usuário da informação

9

A fonte de informação é o ente que envia um sinal de mensagem para o

transmissor. Muitas vezes, para facilitar a transmissão de dados, uma modulação é feita no

transmissor. “Modulação é o processo de converter o sinal da mensagem para uma forma que

seja compatível com as características de transmissão do sinal” (HAYKIN, 2001, p.23).

O canal, que é o meio de comunicação, pode ser um fio, cabo coaxial, fibra

óptica ou ar, dentre outras possibilidades. Ao longo do canal surgem interferências e

distorções que afetam o sinal transmitido.

Ao chegar ao receptor, o sinal é novamente convertido para sua forma original.

Devido às características do canal, o sinal recuperado quase nunca é exatamente igual ao

transmitido.

A comunicação pode ser feita através de sinais analógicos ou digitais

(HAYKIN, 2001). Sinais analógicos podem assumir uma quantidade não-enumerável de

valores diferentes. Já os sinais digitais podem assumir apenas um número enumerável de

valores.

A seguir define-se de forma intuitiva o que é um sinal caótico e mostra-se um

exemplo. Além disso, resumem-se as possíveis aplicações destes sinais em sistemas de

comunicação, inserindo este trabalho no contexto de pesquisa atual.

1.1 SINAIS CAÓTICOS E SISTEMAS DE COMUNICAÇÃO

O termo sinal caótico tem várias definições na literatura. Nesta pesquisa é

adotada a definição de Alligood, Sauer e Yorke (1996) segundo a qual um sinal caótico é

determinístico, aperiódico e sensível às condições iniciais, ou seja, condições iniciais muito

próximas geram seqüências com valores completamente diferentes depois de algumas

iterações.

10

A seqüência formada pelos pontos obtidos após sucessivas iterações é chamada

de órbita (ALIGOOD; SAUER; YORKE, 1996).

Como exemplo de sistema que gera órbitas caóticas, considere a equação de

diferenças

( ) ( ) ( )( )1 4 1y n y n y n+ = − (1)

conhecida como mapa logístico.

Para exemplificar, no Gráfico 1, são apresentadas as 101N = primeiras

iterações deste mapa com condição inicial igual a ( )0 0,01y = utilizando a Equação (1).

Gráfico 1 – Exemplo de uma órbita do mapa logístico com condição inicial ( )0 0,01y =

Os sinais caóticos têm características que podem ser interessantes para sistemas

de comunicação. Algumas delas são: possuem banda larga, são aperiódicos e tem

impossibilidade de predição após pouco tempo de simulação (ABEL; SCHWARZ, 2002).

A idéia da aplicação do caos em sistemas de comunicação surgiu no início da

década de 1990 (PECORA; CARROLL, 1990). Nos últimos anos, vários artigos têm proposto

11 sistemas de modulação que utilizam sinais caóticos ao invés dos sinais senoidais (ABEL,

2002; CORRON, 1997; DRAKE, 1998; LAU; TSE, 2003).

Duas das áreas de comunicação que podem vir a aplicar sinais e sistemas

caóticos são a comunicação por espalhamento espectral (spread spectrum) e a criptografia

(ABEL; SCHWARZ, 2002; CORRON; HAHS, 1997).

A comunicação por espalhamento espectral pode aumentar a robustez contra

interferências causadas por sinais de banda estreita (ABEL; SCHWARZ, 2002). Ela é

utilizada na terceira geração de comunicações móveis, em alguns satélites para comunicações

e no Sistema de Posicionamento Global (GPS - Global Positioning System) (LAU; TSE,

2003). No caso da criptografia, a mensagem é codificada antes da transmissão dificultando a

captura da informação ao longo do canal.

A característica aperiódica dos sinais caóticos pode ser usada para gerar vários

códigos em sistemas CDMA. Essa propriedade dificulta o entendimento de como esses sinais

se comportam ao longo do tempo para um receptor não-autorizado (ABEL; SCHWARZ,

2002).

O uso de sinais caóticos nessas aplicações se justifica por três fatores: (i) baixo

custo, (ii) dificuldade de detecção da informação e (iii) facilidade para gerar diferentes formas

de onda devido à sensibilidade às condições iniciais (ABEL; SCHWARZ, 2002).

Um problema de sistemas de comunicação baseados em sinais caóticos é que

seu desempenho em canais com ruído é ruim (DRAKE, 1998; EISENCRAFT, 2001). O

objetivo deste trabalho é estudar uma alternativa para tentar melhorar este desempenho. Esta

consiste em obter estimativas desses sinais usando o algoritmo de Viterbi (DEDIEU; KISEL,

1999; EISENCRAFT, 2006).

12

Para tornar o trabalho acessível a um público mais amplo, é feita uma revisão

bibliográfica sobre sinais caóticos em sistemas unidimensionais e sobre o processamento

estatístico de sinais.

Para facilitar a análise da técnica proposta por meio de simulações

computacionais, utilizam-se sinais e sistemas de tempo discreto. As simulações são feitas com

o programa Matlab®.

1.2 ESTRUTURA DO TRABALHO

Este trabalho é dividido em 5 capítulos.

No Capítulo 2 faz-se uma revisão bibliográfica sobre caos em sistemas

dinâmicos unidimensionais. Ele começa com um breve histórico a respeito de sinais caóticos.

Logo a seguir é feita uma abordagem rápida envolvendo algumas aplicações de sinais caóticos

na área de comunicações e apresenta-se o problema debatido nesta pesquisa. Além disso,

conceitos a respeito de sistemas dinâmicos unidimensionais são abordados. Esses conceitos

englobam: órbitas caóticas, periodicidade, sensibilidade às condições iniciais, número de

Lyapunov e densidade invariante. Alguns mapas também são discutidos. Nesse capítulo, as

principais referências utilizadas são (ALIGOOD; SAUER; YORKE, 1996; MONTEIRO,

2006; STROGATZ, 1993).

No Capítulo 3, o algoritmo de Viterbi é analisado tanto conceitualmente quanto

matematicamente. Ele contém um resumo histórico da teoria da estimação. Depois é

explicado como é feita a estimação e como é implementado o algoritmo de Viterbi. As

principais fontes de pesquisa foram (DEDIEU; KISEL, 1999; EISENCRAFT, 2006).

O Capítulo 4 contém simulações e as respectivas análises da estimação por

meio do algoritmo de Viterbi.

13 Finalmente, no Capítulo 5, são apresentadas as principais conclusões desta

monografia e indicadas propostas de trabalhos futuros.

14 2 SINAIS CAÓTICOS

O início desse capítulo descreve um resumo histórico da evolução do conceito

matemático de caos e os fatores que desencadearam o interesse por ele em diversas áreas, em

especial em Telecomunicações. Logo a seguir, as definições básicas a respeito do estudo de

sistemas dinâmicos não-lineares são apresentadas. Alguns mapas que geram órbitas caóticas

são analisados. Rapidamente é mostrado o que é o expoente de Lyapunov e sua relação com o

caos. Por fim, o conceito de densidade invariante ajuda a entender a estimação de sinais

conforme é visto a partir do Capítulo 3.

Existem muitos livros e artigos que retratam esses assuntos aos quais o leitor

interessado pode recorrer. Por exemplo, Alligood, Sauer e Yorke (1996), Monteiro (2006),

Strogatz (2000) e Devaney (1992). Sendo assim, limita-se aqui a discussão ao essencial

necessário nos capítulos subseqüentes.

2.1 HISTÓRICO SOBRE SINAIS CAÓTICOS EM SISTEMAS DE COMUNICAÇÃO

O estudo de sistemas dinâmicos e conseqüentemente do caos começa no século

XVII. Na época, Newton formulou os princípios da Física clássica (NEWTON, 1999). Estas

leis foram usadas para explicar a atração gravitacional entre dois corpos. Depois de Newton,

outros cientistas e matemáticos buscaram estender estes resultados ao Problema dos Três

Corpos (STROGATZ, 2000). Porém, muitas dificuldades foram encontradas.

Poincaré, no fim do século XIX, propôs uma nova forma de pensar a respeito

dessa questão (POINCARÉ, 1890). Poincaré queria saber se um sistema convergiria para um

ponto fixo ou para uma órbita periódica ao invés de tentar descobrir como ele funcionava em

15 cada momento. Portanto, ele estava preocupado com a solução qualitativa das equações

diferenciais que descreviam o problema (STROGATZ, 2000).

No início do século passado, técnicas não-lineares começaram a ser estudadas

por matemáticos e físicos que observavam, modelavam e analisavam os fenômenos naturais.

As novas descobertas que foram feitas encontraram aplicações na área de Engenharia

(SILVA; YOUNG, 2000). Por exemplo, os osciladores não-lineares foram importantes no

desenvolvimento de tecnologias, tais como: radar, rádio, laser e Phase-Locked-Loop (PLL)

(STROGATZ, 2000).

Até a década de 1960, pensava-se que a solução de uma equação de diferenças

poderia gerar dois tipos de resultados: a tendência de chegar a um valor fixo ou a uma órbita

periódica (ALIGOOD; SAUER; YORKE, 1996).

Por meio das suas experiências, Lorenz estudou modelos para estimar previsão

do tempo (LORENZ, 1963). A partir da resolução das equações obtidas por Lorenz,

obtiveram-se duas conclusões: essas equações nunca tendem a um equilíbrio ou estado

periódico e que partindo de condições iniciais próximas, rapidamente os resultados ficam

completamente diferentes (STROGATZ, 2000). Essa dependência sensível das equações da

circulação atmosférica ficou conhecida como efeito borboleta (MONTEIRO, 2006).

O termo “caos” no sentido usado neste trabalho foi utilizado pela primeira vez

num artigo publicado por Li e Yorke (1975). Eles mostraram que para qualquer mapa que

originasse uma órbita de período 3, existiriam órbitas com qualquer período inteiro e todas

elas seriam instáveis.

Para um sinal ser caótico ele deve ser aperiódico, ou seja, não tender a

nenhuma órbita periódica e ser sensível às condições iniciais, isto é, órbitas com condições

iniciais muito próximas logo serão totalmente diferentes ao longo das iterações. (ALIGOOD;

16 SAUER; YORKE, 1996). Um exemplo de sinal caótico é mostrado no Gráfico 1 da página

10.

Com a evolução da tecnologia, o desempenho dos computadores melhorou e

estes ficaram mais acessíveis. A facilidade para verificar experimentalmente as teorias na área

de sistemas dinâmicos não-lineares permitiu que muitos pesquisadores viessem a se interessar

em utilizá-las em suas respectivas áreas (EISENCRAFT, 2006).

O estudo dos sinais caóticos surgiu da análise de problemas em tempo

contínuo. Entretanto, durante a década de 1970, May achou exemplos de caos por meio da

iteração de equações de diferenças no estudo de população biológica. (MAY, 1974;

STROGATZ, 2000).

A análise de sistemas não-lineares em tempo discreto tem algumas vantagens:

as equações de diferenças são fáceis de serem simuladas em computador, as equações de

tempo contínuo podem ser analisadas por meio de equações de diferenças e os

comportamentos caóticos podem ocorrer em casos mais simples em tempo discreto

(MONTEIRO, 2006).

Em tempo contínuo, um sinal caótico só pode ser gerado para sistemas de

ordem maior ou igual a três, ou seja, com três equações diferenciais, enquanto em tempo

discreto é possível que ele ocorra em sistemas de primeira ordem (MONTEIRO, 2006).

2.2 SISTEMAS DINÂMICOS NÃO-LINEARES

Todo o estudo é feito usando análise de modelos. Modelos “sugerem como os

processos do mundo real se comportam” (ALIGOOD; SAUER; YORKE, 1996, p.3).

17

A maioria dos fenômenos físicos é não-linear. Os sistemas que geram sinais

caóticos também são não-lineares e, logo, são muito importantes para a compreensão de

grande parte dos fenômenos.

Sistemas dinâmicos podem ser estudados de duas formas: em tempo contínuo e

em tempo discreto. Em tempo contínuo a abordagem é feita através de equações diferenciais.

No caso da análise no tempo discreto, equações de diferenças são utilizadas para representar o

sistema. Nessa pesquisa todas as considerações são feitas em tempo discreto.

Sistema dinâmico é “uma variedade de estados possíveis que segue uma regra

que determina o estado presente em termos de estados passados” (ALIGOOD; SAUER;

YORKE, 1996, p.1).

Inicialmente trata-se apenas de sistemas unidimensionais definidos no intervalo

[ ]0,1 . Além disso, os sistemas não devem mudar com o tempo e devem ser não-lineares.

Conseqüentemente, apenas com a condição inicial é possível obter todos os demais pontos da

órbita.

2.3 DEFINIÇÕES BÁSICAS

Para o estudo de recuperação de sinais caóticos imersos em ruído, são

necessários conceitos sobre dois tópicos: sinais caóticos e métodos de estimação. A seguir são

apresentadas definições fundamentais de sinais caóticos.

Mapa é uma equação de diferenças usada para representar um modelo.

Uma órbita ou sinal com condição inicial x de um mapa ( )f x é o conjunto de

pontos ( ) ( ) ( ){ }2 3, , , ,...x f x f x f x . Entende-se que ( )2f x é a segunda iteração da função

( )f x . Outra maneira de simbolizar seria ( ) ( )( )2f x f f x= .

18

O domínio U contém todos os pontos possíveis de uma órbita.

Algumas considerações podem ser feitas a partir do gráfico chamado teia de

aranha (ALIGOOD; SAUER; YORKE, 1996).

Considerando o eixo de coordenadas cartesianas, a representação de um gráfico

teia de aranha segue os seguintes passos: esboçar os gráficos do mapa e de ( )f x x= , adotar

uma condição inicial, calcular a saída, fazer um tracejado vertical ligando a condição inicial

até o ponto obtido atingir o gráfico ( )f x x= , fazer o tracejado horizontal até a intersecção

com o mapa. Depois, deve-se manter o procedimento e verificar o que ocorre ao longo das

iterações.

Os pontos de intersecção dos gráficos são chamados de pontos fixos.

Observe os Gráficos 2 e 3 dos mapas ( ) 3f x x= e ( ) ( )1 2 1f x x x+ = − .

Gráfico 2 – Exemplo de mapa com um ponto fixo

19

Gráfico 3 – Exemplo de mapa com dois pontos fixos

No Gráfico 2, o ponto fixo é 0p = . Observe que para condições iniciais longe

de zero os valores afastados de zero tenderão a ir para ∞ . No Gráfico 3, temos os pontos fixos

0p = e 1

2p = . Note que para a condição inicial de 0,1 a órbita tende a 0,5 que é um dos

pontos fixos dessa órbita.

A análise da estabilidade de pontos fixos é importante “porque os sistemas do

mundo real são constantemente sujeitos a pequenas perturbações” (ALIGOOD; SAUER;

YORKE, 1996, p.9).

Suponha que numa órbita exista um ponto fixo p e uma vizinhança ( )V p em

torno desse ponto. Considere também que a distância entre p e ( )V p seja ε . Supondo ε um

número pequeno e, que todos os pontos próximos do ponto fixo p , tendam a se afastar dele

20 (ao longo das iterações), então p é um ponto fixo instável. Ele também é chamado de fonte

ou ponto fixo repulsivo. O ponto fixo 0p = do Gráfico 2 é um exemplo de fonte .

Por outro lado, se os pontos próximos ao ponto fixo p tenderem ao próprio p ,

ele será um ponto fixo estável. Ele também é chamado de sorvedouro ou ponto fixo atrativo.

O ponto fixo 0,5p = do Gráfico 3 é um exemplo de ponto fixo atrativo.

Matematicamente a definição de ponto fixo atrativo é essa:

( )lim k

kf x p

→∞= (2)

Na Equação 2, k é o número de iterações e ( )f x representa o mapa analisado.

O conjunto das condições iniciais que têm órbitas que convirjam para um

atrator é chamado de bacia do ponto fixo atrator.

Para classificar analiticamente a estabilidade dos pontos fixos deve-se calcular

o módulo da derivada no ponto fixo. Caso o módulo seja menor que 1, o ponto fixo é estável.

Matematicamente define-se que se ( )' 1f p < o ponto fixo p é estável. Porém, se ( )' 1f p >

o ponto fixo p é instável. Quando ( )' 1f p = não é possível determinar analiticamente a

estabilidade do ponto fixo. Esses resultados podem ser demonstrados conforme (ALIGOOD;

SAUER; YORKE, 1996), página 10.

Assim, a estabilidade está ligada à derivada no ponto estudado. Logo, a análise

gráfica está ligada à reta tangente ao ponto. Se a reta tangente ao ponto fixo apresentar uma

inclinação que esteja no intervalo 4 4

π πθ

−< < ou

3 5

4 4

π πθ< < , o ponto fixo será estável

(MONTEIRO, 2006).

Existem casos em que após certo número de iterações a órbita varia sempre

entre os mesmos pontos. Por exemplo, uma órbita que após muitas iterações oscile entre 0,5 e

0,8 apresenta uma órbita de período 2.

21

Portanto, se p é um ponto periódico de período 2 para um mapa ( )f x , então

p é um ponto fixo do mapa ( ) ( )2g x f x= . Um exemplo de órbita periódica é mostrado no

Gráfico 7 na página 26.

Pode-se estender o conceito de estabilidade para órbitas periódicas. Considere

que os pontos dessas órbitas sejam 1 2, ,p p ... , kp sendo k o período da órbita. Para determinar

sua estabilidade calcula-se o módulo do produto das derivadas nos pontos fixos da órbita.

Caso esse valor seja menor que 1, a órbita periódica é estável. Então, se

( ) ( ) ( )2 1' ... ' ' 1kf p f p f p < , a órbita é estável e caso ( ) ( ) ( )2 1' ... ' ' 1kf p f p f p > , a órbita é

instável.

2.4 EXEMPLOS DE MAPAS QUE GERAM ÓRBITAS CAÓTICAS

Nessa seção, analisam-se as características de alguns mapas. O mapa logístico

é analisado com mais detalhes. Os outros mapas são abordados de maneira sucinta.

2.4.1 ESTUDO DO MAPA LOGÍSTICO

O mapa logístico surgiu da pesquisa sobre o número de habitantes numa

região. Primeiramente foi elaborado um modelo em que ( ) ( )1 2y n y n+ = . Mas esse modelo

não é satisfatório porque existem fatores limitantes, tais como: falta de alimento, guerras e

falta de espaço físico. Sem essas considerações, a população tenderia ao infinito. Depois disso

foi proposto o seguinte modelo ( ) ( ) ( )( )1 2 1y n y n y n+ = − . Esse já é um modelo bem melhor

porque leva em conta as limitações referidas acima. Genericamente, a equação é

22

( ) ( ) ( )( )1 1y n ay n y n+ = − (3)

(MONTEIRO, 2006).

Esta é a família de mapas logísticos. Um dos mapas mais estudados dessa

família é aquele em que 4a = .

Considere as condições iniciais no intervalo [ ]0,1 . A análise do valor de a

pode ser resumida assim: para 0 1a< < , o mapa tem um ponto fixo atrativo em 0x = ;

para 1 3a< < , temos um ponto fixo atrativo em 1a

xa

−= ; para 3 3,45a< < , o mapa tem

uma órbita periódica de período 2; para 3,45 4a< < , ocorre um comportamento que será

analisado pouco adiante e para 4a > , a análise deixa de ser interessante porque não há

atração de órbitas. No último caso, a tendência é que após várias iterações as órbitas tendam

a −∞ .

A compreensão do estudo do comportamento do mapa logístico pode ser

facilitada pelo diagrama de bifurcação. Por meio dele é possível analisar mudanças

significativas num conjunto de pontos fixos ou órbitas periódicas (ALIGOOD; SAUER;

YORKE, 1996).

O procedimento para obtê-lo através de simulação computacional é: escolher

um valor inicial do parâmetro a , escolher um valor aleatório y no intervalo [ ]0,1 , calcular a

órbita de y segundo a Equação 3, ignorar as 100 primeiras iterações e plotar o gráfico a partir

da iteração de número 101 (ALIGOOD; SAUER; YORKE, 1996). As primeiras iterações

devem ser rejeitadas porque deve se esperar que a órbita convirja para um ponto fixo ou órbita

periódica ou não convirja. O número de iterações que deve ser descartado não é fixo. Por

exemplo, no Gráfico 7 da página 26, somente 7 iterações não devem ser consideradas.

23

Usando o computador, pode-se gerar um diagrama de bifurcação, conforme

mostra o Gráfico 4.

Gráfico 4 – Diagrama de bifurcação

O diagrama mostra o início, a evolução e o fim dos atratores. Por exemplo,

para 3,3a = , se for passada uma reta vertical, verifica-se que dois pontos são cortados. Eles

representam uma órbita de período 2.

Por esse diagrama fica fácil observar que para a em torno de 3,5 começam a

ocorrer órbitas de período 4. Depois passamos a ter órbitas de período 8, depois 16 e assim

sucessivamente.

Aproximadamente a partir de 3,57a ≅ , observe que existem órbitas de todos

os períodos.

24

Por meio do Gráfico 5, percebe-se também que existe um trecho interessante

de 3,82 a 3,86.

Gráfico 5 – Diagrama de bifurcação ampliado entre os pontos 3,82 e 3,86

Analisando esse gráfico, pode-se dizer que para 3,84a = existe uma órbita de

período 3.

Uma característica marcante que ocorre em sinais caóticos é a sensibilidade às

condições iniciais. Isso significa que quando condições iniciais muito próximas são iteradas

várias vezes, no começo elas estarão bem próximas, porém os valores das órbitas logo

começarão a ficar totalmente diferentes uns dos outros. Essa característica é também chamada

de dependência sensível com relação às condições iniciais.

Como exemplo observe o Gráfico 6 no qual foram utilizados 4a = e 41n = .

25

Gráfico 6 – (a) Iteração do mapa logístico com condição inicial ( )0 0,2y = e (b) com condição

inicial de ( )0 0,201y =

A Tabela 1 mostra alguns pontos das órbitas acima.

Tabela 1 - Valores das órbitas obtidas de um mapa logístico com pequena variação da condição inicial

Número de iterações Condição inicial igual a 0,2 Condição inicial igual a 0,201 0 0,2 0,201 1 0,64 0,6424 2 0,9216 0,9189 3 0,289 0,2981 5 0,5854 0,5458 6 0,9708 0,9916 15 0,0039 0,0205 20 0,82 0,9877 25 0,9864 0,1627 30 0,3203 0,4324 Perceba que, bem no início, os pontos das órbitas são quase iguais e que logo

eles ficam totalmente diferentes. A análise numérica também ajuda a verificar essa

característica dos sinais caóticos.

26

Considerando N com um inteiro positivo, define-se que um ponto x é

eventualmente periódico quando ( ) ( )n p nf x f x+ = , para qualquer n N≥ e p o menor inteiro

possível. Isso significa que após certo número de iterações a órbita passa a ser periódica.

Observe a órbita obtida para a família do mapa logístico feito com 50 iterações,

com 3,3a = e ( )0 0,35y = no Gráfico 7.

Gráfico 7 – Exemplo de órbita de período 2.

Nota-se que a partir da sétima iteração, inicia-se uma órbita periódica de

período 2 que oscila entre os valores 0,4794 e 0,8236.

O número de órbitas do mapa para cada período pode ser feita por meio de uma

tabela periódica de mapas.

A tabela 2 mostra o início da tabela periódica do mapa logístico:

Tabela 2 - Pontos fixos e periodicidade no mapa logístico

27

Período k

Número de pontos

fixos de ky

Número de pontos

fixos de ky de

órbitas periódicas

menores

Órbitas de período

k

1 2 0 2 2 4 2 1 3 8 2 2 4 16 4 3 5 32 2 6 6 64 14 8 7 128 2 18 8 256 16 30 9 512 8 56 10 1024 34 99 11 2048 2 186 12 4096 64 336 13 8192 2 630

Sendo y o mapa logístico e k o período da órbita, o número de pontos fixos

de ky é 2k .

Para o preenchimento da terceira coluna basta observar que os pontos fixos de

órbitas de período 2 também são pontos fixos de órbitas de período 4. Da mesma forma, os

pontos fixos de órbitas de período 3 também são pontos fixos de órbitas de período 6.

Para a obtenção da última coluna faz-se a segunda coluna menos a terceira e

divide-se pela primeira. Assim na terceira linha temos8 2

23

−= .

Quando o sistema possui órbitas de todos os períodos ele gera sinais caóticos.

2.4.2 MAPA TENDA INCLINADA

28

O mapa tenda inclinada é definido pelas seguintes expressões:

( )

( )( )

( )( )

2 1, 1

1 11

2 1, 1

1 1

y ny n

y ny n

y n

αα

α α

αα

α α

− + − ≤ ≤

+ + + =

+ + ≤ ≤ − −

(4)

O Programa 2 do Apêndice faz o Gráfico 8 (b) correspondente a uma órbita

gerada pelo mapa tenda inclinada.

Observe abaixo o mapa tenda inclinada e uma órbita gerada por ele para 81n =

iterações, condição inicial ( )0 0,2y = − e o parâmetro 0,4α = .

Gráfico 8 – (a) Mapa tenda inclinada com 0,4α = ; (b) exemplo de órbita deste mapa

2.4.3 MAPA TENDA

29

O mapa tenda é definido pela seguinte equação de diferenças:

( ) ( )1 1 2*y n y n+ = − (5)

Quando o parâmetro α do mapa tenda inclinada é zero, é obtido o mapa tenda.

Logo, o mapa tenda é um caso particular do mapa tenda inclinada.

No Gráfico 9, é mostrado o mapa tenda e a órbita gerada por ele para

( )0 0,026y = com 71n = iterações.

Para condições iniciais com números racionais, a órbita tende ao ponto fixo

1− , ou seja, não é caótica (EISENCRAFT, 2006). Para gerar o Gráfico 9, foi necessário fazer

a conjugação do mapa quadrático (EISENCRAFT, 2006). Essa adaptação está explicada nas

páginas 30 e 31.

Gráfico 9 – (a) Mapa tenda; (b) Exemplo de órbita do mapa tenda

2.4.4 MAPA QUADRÁTICO

30

O mapa quadrático é definido pela seguinte equação de diferenças:

( ) ( )21 2 1y n y n+ = − + (6)

A seguir o mapa quadrático e uma órbita gerada por esse mapa com 61n =

iterações e condição inicial ( )0 0,845y = .

Gráfico 10 – (a) Mapa quadrático; (b) Exemplo de órbita do mapa quadrático

O problema de gerar órbitas para o mapa tenda pode ser resolvido por meio da

relação entre os mapas quadrático e tenda. Pode se mostrar que se pode obter uma órbita do

mapa tenda a partir do quadrático pela seguinte relação (ALLIGOD; SAUER; YORKE,

1996):

( )1

cos2TQ

xC

π += − (7)

31

Na Equação 7, x é o vetor contendo os valores dos pontos da órbita em cada

iteração do mapa quadrático e TQC corresponde ao vetor contendo os valores dos pontos da

órbita do mapa tenda.

2.5 CAOS E NÚMERO DE LYAPUNOV

O número de Lyapunov serve para quantificar a taxa média de separação dos

pontos que estão perto de um ponto fixo. O expoente de Lyapunov é o logaritmo natural do

número de Lyapunov.

Considere um mapa genérico ( )f x que possui uma órbita constituída pelos

pontos{ }1, 2, 3,...x x x . Então, o número de Lyapunov, matematicamente, é dado por:

( ) ( ) ( ) ( )( )1

1 1 2lim ' ' ... ' nn

nL x f x f x f x

→∞= (8)

O expoente de Lyapunov, matematicamente, é dado por:

( ) ( ) ( ) ( )1 1 21

lim ln ' ln ' ... ln ' nn

h x f x f x f xn→∞

= + + + (9)

Note que ln L h= .

Deve-se ressaltar que existem algumas órbitas com número de Lyapunov

indefinido. Um desses casos ocorre quando ( ) 0´ =ixf .

Toda órbita que é atraída para um ponto fixo atrativo é assintoticamente

periódica.

Se a órbita não for assintoticamente periódica e o expoente de Lyapunov ( )1h x

for maior que zero, a órbita é caótica.

32

No Gráfico 11, é mostrado como varia o expoente de Lyapunov em função do

parâmetro a do mapa logístico.

Gráfico 11 – Expoente de Lyapunov em função do parâmetro a para o mapa logístico

A partir do Gráfico 11, algumas observações interessantes podem ser feitas.

Note que até 3,57a ≅ , não existe caos porque o expoente de Lyapunov é negativo. Após esse

valor existem finos traços negativos que são aquelas órbitas periódicas analisadas no

diagrama de bifurcação.

Essa análise do expoente de Lyapunov é outra maneira de visualizar que o caos

para a família de mapas logísticos ( ) ( ) ( )( )1 1y n ay n y n+ = − começa a partir de 3,57a ≅ .

33 2.6 DENSIDADE INVARIANTE

Um histograma geralmente pode indicar a quantidade de pontos de uma órbita

que estão em cada região dentro de cada subintervalo num domínio. (DEVANEY, 1992).

A estatística de sinais digitais pode começar a ser analisada a partir de um

histograma, em que é mostrada a freqüência com que cada valor iterado aparece. Para a

geração de um histograma prático, primeiro divide-se o intervalo do domínio em intervalos

uniformes. Depois, itera-se o mapa em questão.

Suponha que [ ]0,1U = e que i seja o número de intervalos. Considerando que

in é o número de pontos num determinado intervalo e que N é o número total de pontos

analisados, calcula-se a freqüência com a equação:

ii

nf

N= (10)

Para o mapa logístico com 4a = , 100000n = iterações e condição inicial

( )010

= , obteve-se o histograma do Gráfico 12.

Gráfico 12 – (a) Densidade invariante x pontos da órbita ; (b) Histograma de um mapa logístico

34

Observe agora um histograma do mapa quadrático com 100000n = iterações e

condição inicial ( )0 0,845y = .

Gráfico 13 – (a) Densidade invariante x pontos da órbita; (b) Histograma de um mapa quadrático

As funções densidade evoluem de acordo com o operador de Perron –

Frobenius. Pode ser demonstrado que para o mapa quadrático, o gráfico teórico da densidade

invariante é dada pela fórmula (LASOTA, A; MACKEY, M, 1985).

( )( )

1

1f x

x xπ=

− (11)

Note que no Gráfico 13, referente ao mapa quadrático, há um número maior de

pontos nos extremos do intervalo [ ]1,1− e que há poucos pontos perto de zero. Em outras

palavras, o mapa quadrático possui uma densidade invariante não-uniforme. Existe uma maior

probabilidade de um ponto da órbita desse mapa estar nos extremos do domínio do que nas

demais partes.

35

A seguir um histograma do mapa tenda inclinada com 100000n = iterações e

condição inicial ( )0 0,2y = − .

Gráfico 14 – (a) Densidade invariante x pontos da órbita; (b) Histograma de um mapa tenda inclinada

No gráfico acima, nota-se uma distribuição quase constante ao longo de todos

os intervalos, dificultando a previsão das próximas iterações de uma órbita do mapa tenda

inclinada. Nesse caso, a densidade invariante é uniforme com qualquer ponto da órbita tendo

igual chance de estar em cada lugar do domínio.

O intuito deste capítulo é explicar os assuntos e conceitos mais relevantes sobre

sinais caóticos e estimação de sinais de tal forma que o entendimento do algoritmo de Viterbi

fique mais claro no Capítulo 3.

36 3 ESTIMAÇÃO DE ÓRBITAS POR MEIO DO ALGORITMO DE VITERBI

Neste capítulo, trata-se da aplicação do algoritmo de Viterbi à estimação de

órbitas, tema central deste trabalho. Antes disso, comenta-se de forma resumida a respeito da

teoria da estimação.

A teoria da estimação tem importância em diversas áreas de processamento de

sinais, tais como: radar, voz, análise de imagens, biomedicina, comunicações, controle e

sismologia (KAY, 1993). Esse trabalho visa aplicá-la em sistemas de Telecomunicações.

O comportamento intrincado de sinais caóticos pode ser tratado quando

observado de uma perspectiva estatística (SETTI et al., 2002). A análise individual de sinais

caóticos é difícil. Por esta razão, eles são estudados conjuntamente, por meio de um estudo

estatístico.

Qualitativamente, os métodos desenvolvidos para recuperar sinais caóticos em

meio ruidoso, em geral, têm desempenho igual: todos funcionam quando há pouco ruído junto

com o sinal e dificilmente apresentam bons resultados para ruído elevado. A dificuldade

fundamental de desenvolver um bom modelo de estimador para sinal caótico é a própria

natureza do sinal (DRAKE, 1998, p.2). O problema é que esses sinais são analisados apenas

com funções não-lineares, tornando difícil encontrar um modelo adequado de estimador.

A principal razão pela qual as aplicações da modulação caótica ainda estão em

seus estágios iniciais é a grande sensibilidade do processo de demodulação, ou seja, o ruído

dificulta o estabelecimento da comunicação (DEDIEU; KISEL, 1999).

As maneiras de reduzir os efeitos do ruído podem ser divididas em 4

abordagens: (i) auto-sincronismo, (ii) teoria de controle, (iii) redução de ruído e (iv) teoria da

estimação (DRAKE, 1998).

37

O auto-sincronismo é a capacidade de sistemas caóticos se sincronizarem sem

a necessidade de intervenção externa. Esses sistemas podem ser separados em estáveis e

instáveis. O subsistema instável é usado para copiar o sistema. Quando há ruído, o subsistema

estável permite uma menor distorção do sinal devido ao ruído (DRAKE, 1998).

A teoria de controle pode ser feita de duas formas: utilizar técnicas que

estimam valores de estados imediatamente anteriores e técnicas de identificação de sistemas

que mudam os parâmetros do modelo conforme o comportamento do sistema. Esse método se

utiliza de sistemas dinâmicos lineares (DRAKE, 1998).

A redução de ruído busca separar o comportamento caótico de flutuações

aleatórias. Ao contrário da teoria de controle, a redução de ruído utiliza propriedades

específicas de sistemas dinâmicos caóticos (DRAKE, 1998).

A primeira conexão entre caos e a teoria da estimação foi elaborada por

(MYERS ; TAPLEY, 1976). A teoria da estimação pode ser dividida basicamente em dois

grupos: clássico e bayesiano. Os estimadores clássicos modelam o valor a ser pesquisado

como desconhecido, mas considerando o sinal sendo determinístico. Já os bayesianos o

caracterizam como uma quantidade aleatória caracterizada pela função densidade de

probabilidade. (DRAKE, 1998). O algoritmo de Viterbi se enquadra no grupo bayesiano.

3.1 REPARTIÇÃO DO DOMÍNIO

O algoritmo de Viterbi funciona bem para mapas com densidade invariante

uniforme. A seguir é analisado como é feita a repartição do domínio para os casos com

densidade uniforme e não-uniforme.

38

Uma das decisões importantes para que o algoritmo de Viterbi funcione bem é

a partição do domínio. Conforme visto no Capítulo 2, o domínio diz respeito a todos os

valores possíveis de uma órbita. Nos casos que são estudados neste capítulo, o domínio é

[ ]1,1U = − . A divisão do domínio é simbolizada por subintervalos ,1j IU j N≤ ≤ sendo IN o

número total de subintervalos do domínio.

Cada subintervalo define um estado. Define-se que o sistema está no estado

( )q n j= se o ponto da órbita ( )s n estiver no subintervalo jU no instante n . O centro de

cada subintervalo jU é representado por ( )C j .

Até hoje foram propostos dois modos de divisão do domínio em intervalos.

A primeira maneira foi proposta por Dedieu e Kisel (1999). A partição é feita

com intervalos uniformes. Nos casos analisados, o domínio [ ]1,1U = − tem comprimento 2.

Logo, cada intervalo tem comprimento 2

IN∆ = .

Por exemplo, para 5IN = , têm-se os seguintes subintervalos:

[ ] [ ] [ ]

[ ] [ ]1 2 3

4 5

1; 0,6 , 0,6; 0,2 , 0,2;0,2 ,

0,2;0,6 , 0,6;1 .

U U U

U U

= − − = − − = −

= = (12)

A Equação 13 expressa o subintervalo jU em função do ∆ .

( )

[ ]

1 1; 1 , 1,2,..., 1

1 ;1 ,

I

I

j j j N

j N

− ∆ − ∆ − = −

− ∆ =

(13)

Estudos e simulações mostraram que, utilizando esta escolha de partição, o

algoritmo de Viterbi produz bons resultados somente em órbitas geradas por mapas que têm

densidade invariante uniforme (DEDIEU; KISEL, 1999; EISENCRAFT, 2006).

Para os casos de mapas com densidade invariante não-uniforme, surgiu a idéia

de dividir o domínio em subintervalos de tal forma que a probabilidade de cada ponto da

39 órbita estar em um subintervalo seja igual em cada um deles. O estudo dessa implementação

está em (EISENCRAFT, 2006). Para o mapa quadrático, da Equação 6, por exemplo, com

5IN = , os subintervalos são

[ ] [ ] [ ]

[ ] [ ]1 2 3

4 5

1; 0,8081 , 0,8081; 0,3111 , 0,3111;0,2992 ,

0,2992;0,8115 , 0,8115;1 .

U U U

U U

= − − = − − = −

= = (14)

Utilizando o Programa 3 do Apêndice podem-se obter esses valores.

Para o desenvolvimento da idéia proposta, calcula-se a área total TA

compreendida entre o mapa e o eixo horizontal. Depois divide-se a área total em IN

intervalos de tal forma que cada área seja igual. A Equação (15) fornece o cálculo de cada

área IA .

TI

I

AA

N= (15)

Conhecendo-se IA , obtém-se os pontos nos quais divide-se o domínio.

A seguir, é apresentado como se chega à equação do problema de estimação e a

sua solução pelo algoritmo de Viterbi.

3.2 ESTIMAÇÃO DE UM SINAL CORROMPIDO PELO RUÍDO

O objetivo do algoritmo de Viterbi é obter um sinal ( )s n contendo os valores

mais próximos de um sinal original ( )s n que foi corrompido por ruído ( )nr a partir de

( ) ( ) ( )s n s n r n= +ɶ . Neste trabalho, o ruído que modifica o sinal é o ruído branco gaussiano

aditivo.

40

Define-se q como sendo o vetor que contém a seqüência de estados estimada.

A partir de q , o vetor contendo os pontos da órbita estimado s é obtido pelo centro ( )C j dos

intervalos definidos por estes estados.

Para 1n + amostras de s , o vetor corrompido pelo ruído é

( ) ( ) ( )0 , 1 ,...,s s s n= sɶ ɶ ɶ ɶ , a seqüência estimada é ( ) ( ) ( )ˆ ˆ ˆ ˆ0 , 1 ,...,q q q n= q e o vetor estimado

é:

( )( ) ( )( ) ( )( )ˆ ˆ ˆ ˆ0 , 1 ,..., .C q C q C q n = s (16)

Antes do estudo do algoritmo faz-se necessário a obtenção das funções

densidade de probabilidade envolvidas.

Considere q como sendo um vetor genérico contendo uma seqüência de 1n +

estados, ( ) ( ) ( )0 , 1 ,...,q q q n= q .

O problema da estimação pode ser resumido em encontrar q tal que

( ) ( )ˆ max .P P| = |q

q s q sɶ ɶ (17)

A seqüência estimada q dado o sinal distorcido sɶ é a que possui maior

probabilidade entre as seqüências de estado q possíveis dado o sinal distorcido. Em outras

palavras, a seqüência estimada q será a de maior probabilidade dada as amostras corrompidas

por ruído sɶ .

O teorema de Bayes afirma que

( )( ) ( )

( )p s P q

P sp s

|| =

qq

ɶɶ

ɶ (18)

41 sendo ( )p sɶ a função densidade de probabilidade dos possíveis vetores sɶ e ( )p |s qɶ a função

densidade de probabilidade levando em conta que o vetor de estados original é q . A

probabilidade ( )P q diz respeito à chance de obter o vetor q quando o mapa for iterado.

Como ( )p sɶ não depende de q , o vetor estimado q é:

( ) ( ) ( )ˆ arg max arg maxq q

P q s p s q P q= | = |q ɶ ɶ (19)

O vetor estimado q é o vetor q que tem a maior probabilidade de ocorrer.

Enquanto na Equação 17, faz-se referência à probabilidade, a Equação 19 mostra quem é o

vetor contendo a seqüência mais provável de estados.

Considere somente os primeiros 1p + estados de um vetor genérico pq e de

um vetor observado psɶ . Pela notação que está sendo utilizada, tem-se que:

( ) ( ) ( ) ( )0 , 1 ,..., 1 ,p q q q p q p= − q (20)

e

( ) ( ) ( ) ( )0 , 1 ,..., 1 , .p s s s p s p= − sɶ ɶ ɶ ɶ ɶ (21)

A probabilidade de obter a seqüência de estados pq quando o mapa é iterado é:

( ) ( ) ( )( ) ( )11p pP P q p q p P −= | −q q (22)

A probabilidade de obter a seqüência pq é a probabilidade de que a seqüência

1p−q tenha ocorrido vezes a chance de estando no estado ( )1q p − ele mude para o estado

( )q p .

42

As amostras de ruído são independentes. Por esta razão, pode-se equacionar a

probabilidade do vetor de amostras do sinal distorcido sabendo que a seqüência estimada é

pq como:

( ) ( ) ( )( ) ( ) ( )( )

( ) ( )( )( )

0 0

0

p p

p p r

n n

p

r

n

p p s n q n p s n s n

p s n C q n

= =

=

| = | = −

≈ −

∏ ∏

s qɶ ɶ ɶ

ɶ

(23)

sendo ( ).rp a função densidade probabilidade do ruído ( )r n . A aproximação na Equação 23

é devido à repartição do domínio. Para um IN pequeno, ( )s n e ( )( )C q n estarão

possivelmente afastados. Porém, se for utilizado um elevado IN , a aproximação torna-se

próxima de uma igualdade.

Supondo que o mapa em questão possui densidade invariante uniforme, pode-

se dizer que a probabilidade de estar em qualquer dos subintervalos no instante 0n = é igual.

A partir dessa consideração e combinando as Equações 19, 22 e 23 chega-se a

( ) ( )( ) ( ) ( )( )1

1

ˆ arg max 1N

qn

P q n q n p s n q n−

=

= | − |∏q ɶ (24)

Uma forma de implementar a Equação 24 é dada pelo algoritmo de Viterbi,

que é descrito a seguir.

Considere ( ),n jδ simbolizando a probabilidade da seqüência de estados mais

provável que no instante n esteja no estado j dado o vetor sɶ . Matematicamente,

( ) ( )( )1, max ,n

nn j P q n j sδ −= = |q

q ɶ (25)

Assim, a Equação 24 pode ser reescrita dessa maneira:

( ) ( ) ( ), max 1, ij ji

n j n i a bδ δ = − sɶ (26)

em que

43

( ) ( )( )1ija P q n j q n i= = | − = (27)

e ( )( ) ( ) ( )( )jb n P n q n j= | =s sɶ ɶ (28)

Os valores de ija correspondem às probabilidades de uma amostra ( )ns estar

no subintervalo jU quando em ( )1n −s ela estiver em iU . Os valores de jb são as

probabilidades que dependem da função densidade de probabilidade de ruído rP .

O Diagrama 2 ajuda a esclarecer o algoritmo de Viterbi.

Diagrama 2 – Exemplo do funcionamento do algoritmo de Viterbi.

Estão representadas possíveis seqüências até 5n = de um sinal.

O símbolo ( )5,4δ é a probabilidade da seqüência de estados mais provável

que no instante 5n = está no estado ( )5 4q = .

1 2 3 4 5 0

1

2

3

4

5

n

j

( )5,2 3ϕ =

( )3,5 3ϕ =

( )5,4δ

44

Primeiramente, numa fase chamada de avanço, a Equação 25 é utilizada para

obter ( ),n jδ no instante n para os IN intervalos. Sempre é escolhido o caminho mais

provável na continuidade de cada seqüência.

Ao final dessa fase, seleciona-se a opção que fornece a mais alta probabilidade.

Depois, inicia-se a fase de retrocesso, que permite obter a seqüência de estados

mais provável ( )q n . Através da matriz ( ),n jϕ é guardado o estado anterior 1n − que

contém a maior probabilidade de ter ocorrido.

Sendo iπ a probabilidade a priori de ( )0sɶ estar no estado i , pode-se resumir o

algoritmo de Viterbi através das equações a seguir:

Início do algoritmo

( ) ( )( )( )

0, 0 ,1

0, 0

i i Ii b i N

i

δ

ϕ

= Π ≤ ≤

=

sɶ (29)

Fase de avanço

( ) ( ) ( )( )

( ) ( ) ( )( )1

1

, max 1, ,1 1,1

, max 1, ,1 1,1

I

I

j Ii N

ij j Ii N

n j n i b n i N j N

n j n j a b n i N j N

δ δ

ϕ δ

≤ ≤

≤ ≤

= − ≤ ≤ − ≤ ≤

= − ≤ ≤ − ≤ ≤

s

s

ɶ

ɶ

(30)

Término do avanço

( ) ( )1

ˆ 1 arg max 1,Ii N

q N N iδ≤ ≤

− = − (31)

Fase de retrocesso ( ) ( )( )ˆ ˆ1, 1 , 2,...,1,0q n n q n n Nϕ= + + = − (32)

3.2.1 EXEMPLO NUMÉRICO DO ALGORITMO DE VITERBI

O intuito desse tópico é facilitar o entendimento do algoritmo através de um

exemplo.

45

Considere um sinal [ ]0,75; 0,25;0,25; 0,75;0,3= − −s . Existem 5 amostras indo

de 0n = até 4n = . Suponha que após o sinal ter sido corrompido, tem-se

[ ]0,82; 0,6;0,1; 0,4; 0,1= − − −sɶ .

O caso de análise será do mapa tenda que possui densidade invariante

uniforme. Logo, cada intervalo tem 2 2

0,54IN

∆ = = = . O domínio U é dividido nos seguintes

subintervalos: [ ]1 1; 0,5U = − − , [ ]2 0,5;0U = − , [ ]3 0;0,5U = e [ ]4 0,5;1U = .

Com os dados fornecidos a seqüência original é [ ]4;2;3;1;3=q . Na amostra

0n = , o valor de 0,75 se enquadra em 4U . Sendo assim, ( )0 4q j= = .

Neste exemplo utiliza-se uma matriz de transição ( ) ,1 , 4ija i j= ≤ ≤A que

pode ser obtida de maneira similar à do Programa 3 do Apêndice e é:

0,5 0,5 0 0

0 0 0,5 0,5

0 0 0,5 0,5

0,5 0,5 0 0

=

A (33)

O elemento 34a indica que a probabilidade de que se o ponto da órbita estiver

em 3U no instante n e ele estar em 4U no instante 1n + é 0,5 .

Suponha que a seqüência mais provável até o instante 4n = terminando no

estado 3j = seja [ ]4,1,3,5,3=q . Supondo que dentre todas as outras seqüências que

terminam em 4n = , o vetor q do estado 3j = seja o mais provável, pode-se dizer que ˆ=q q .

A probabilidade de q ocorrer é ( )4,3δ . Ao final da fase de avanço, além das probabilidades,

têm-se as os estados anteriores mais prováveis. Assim, ( )4,3 5ϕ = , ( )3,5 3ϕ = , ( )2,3 1ϕ = ,

( )1,1 4ϕ = e ( )0,4 0ϕ = .

46

Para obter a seqüência, parte-se da Equação 31. Depois, é necessário somente

substituir na Equação 32. Assim:

( )ˆ 4 3q = (34)

( ) ( )( ) ( )ˆ ˆ3 4, 4 4,3 5q qϕ ϕ= = = (35)

( ) ( )( ) ( )ˆ ˆ2 3, 3 3,5 3q qϕ ϕ= = = (36)

( ) ( )( ) ( )ˆ ˆ1 2, 2 2,3 1q qϕ ϕ= = = (37)

( ) ( )( ) ( )ˆ ˆ0 1, 1 1,1 4q qϕ ϕ= = = (38)

3.2.2 EXEMPLO GRÁFICO DO ALGORITMO DE VITERBI

Os gráficos desse tópico foram gerados a partir do mapa tenda inclinada com

0,2α = , 21n = iterações e 10IN = subintervalos.

O Gráfico 15 mostra um exemplo de como o algoritmo de Viterbi melhora um

sinal original distorcido pelo ruído. No item (a), temos sinal original s . No item (b), é

mostrado o sinal corrompido por um ruído branco sɶ e no item (c) , o sinal estimado s obtido.

47

Gráfico 15 – (a) Sinal original; (b) sinal corrompido por ruído; (c) sinal estimado

O Gráfico 16 mostra o erro dos sinais distorcido e estimado, respectivamente.

Gráfico 16 – (a) Erro sem utilizar o algoritmo de Viterbi; (b) erro após utilizar o algoritmo

48

Na simulação também foi calculada a média dos erros sem utilizar e utilizando

o algoritmo. A média de erro com ruído foi de 0,3538 enquanto que a média de erro com a

estimação foi de 0,1091. Com esses valores, percebe-se que o algoritmo de Viterbi foi muito

eficiente neste caso.

O Gráfico 17 mostra a relação sinal ruído da entrada inSNR pela relação sinal

ruído na saída outSNR .

Gráfico 17 - inSNR x outSNR

Esse gráfico foi obtido a partir do Programa 5 do Apêndice. Após a escolha do

vetor de inSNR , calculou-se o sinal estimado e a variância entre este sinal e o sinal original

para cada amostra do sinal original. Cada amostra do sinal original foi elevada ao quadrado e

dividida pela variância. Depois foi feita a conversão desse vetor para decibéis. Por fim, foi

feita uma média do desvio quadrático, obtendo outSNR .

49

O desempenho é bom enquanto out inSNR SNR> . Percebe-se que até cerca de

20 dB o algoritmo consegue uma boa estimação do sinal. Caso venha um sinal com uma

inSNR maior que esse valor, o algoritmo estima um sinal pior do que o corrompido.

Para que esse método seja utilizado, deve-se ter um número elevado de

subintervalos do domínio e , além disso, o método não pode estimar um sinal com pouco

ruído.

50 4 SIMULAÇÕES E RESULTADOS

Utilizando toda a teoria vista nos Capítulos 2 e 3, foram desenvolvidos

programas para simular o comportamento do algoritmo de Viterbi ao variar-se alguns

parâmetros (EISENCRAFT, 2006).

A partir da divisão do domínio em subintervalos, o mapa é iterado diversas

vezes e depois é calculada a chance do próximo ponto estar em cada um dos intervalos.

Obtêm-se dessa forma a matriz de transição A que é quadrada e do tipo I IN N× em que IN

é o número de subintervalos. O sinal de entrada é uma órbita gerada pelo mapa em questão.

As informações necessárias para a simulação da estimação são: o sinal original

( )s n , o sinal corrompido ( )s nɶ , a potência do ruído no canal rP , o número de intervalos IN ,

o mapa, e a matriz de transição A .

Os mapas utilizados para as simulações são: mapa tenda (Eq. 5), mapa tenda

inclinada (Eq. 4) e mapa quadrático (Eq. 6).

A fim de minimizar o erro do algoritmo, antes de simular o algoritmo de

Viterbi, força-se a condição do intervalo definido no domínio. Assim, se um ponto do sinal

ruidoso for maior que 1, é aproximado para 1 e se for menor que 1− , é aproximado para 1− .

No Gráfico 18, foi feita a variação do parâmetro α do mapa tenda inclinada.

Utilizaram-se 10IN = intervalos, com 1000 repetições para cada valor de inSNR e 21N =

pontos iterados do mapa.

O inSNR e o outSNR foram obtidos da mesma forma que foi explicado no

Gráfico 17. O programa 7 do Apêndice foi utilizado para gerar o Gráfico 18.

51

Gráfico 18 - inSNR x outSNR para o mapa tenda inclinada com variações do parâmetro α . Foram

usados 10IN = subintervalos e 21N = pontos da órbita.

Observe que para o mapa tenda inclinada com 0α = , o resultado obtido foi

melhor. Os piores resultados foram obtidos para valores de α próximos dos extremos (-1 e

1). Perto de 20 dB, o algoritmo deixa de ser interessante para o mapa tenda inclinada com

0,8α = . Note que a partir desse valor, a outSNR passa a ser menor que a inSNR . Este

resultado significa que o sinal estimado estará mais longe do sinal original comparado com o

sinal corrompido. Nesse caso, para melhorar o desempenho deve-se aumentar o número de

intervalos uniformes.

52

No Gráfico 19, a simulação foi feita também com o mapa tenda inclinada só

que a variação foi com o número de subintervalos utilizados. Foi utilizado 0,2α = .

Mantiveram-se as 1000 repetições por valor de inSNR e órbitas com 21N = iterações.

Gráfico 19 - inSNR x outSNR do mapa tenda inclinada com variações do número de intervalos

Note que quanto maior o número de intervalos, melhor é o resultado da

estimação. Por volta de 32,5inSNR = dB, para 10 intervalos, o algoritmo de Viterbi acaba não

sendo interessante para a estimação.

No Gráfico 20, a variação do tamanho da matriz de transição foi feita com o

mapa quadrático, caso em que é necessária uma partição não-uniforme. Novamente foram

feitas 1000 repetições por valor de inSNR e as órbitas foram obtidas com 21N = iterações.

53

Gráfico 20 - inSNR x outSNR do mapa quadrático com variações do número de intervalos

As mesmas observações feitas anteriormente podem ser vista no mapa

quadrático. O número de intervalos tem uma influência muito grande no desempenho do

algoritmo de Viterbi.

Comparando o desempenho do algoritmo de Viterbi nos mapas quadrático e

tenda inclinada com variação do número de intervalos, pode-se observar que para o mapa

tenda inclinada com 0,2α = , ele apresenta resultados ligeiramente melhores. Por exemplo,

para 10 intervalos, no quadrático, o algoritmo é satisfatório até quase 35 dB enquanto que no

tenda inclinada, com 0,2α = , é de 32,5 dB.

Os resultados obtidos não são parecidos com os obtidos na tese de Eisencraft

(2006). Os valores de inSNR e outSNR não são os mesmos. É necessário um estudo mais

aprofundado para verificar os possíveis motivos das diferenças de resultados.

54

Para as simulações feitas neste capítulo, foram utilizados intervalos não-

uniformes no mapa quadrático e uniformes no mapa tenda inclinada.

Apesar de terem sido mostradas poucas simulações, deve-se ressaltar que para

cada uma delas o tempo gasto foi de aproximadamente 7 horas. Esse tempo foi obtido a partir

de um computador com processador Pentium D de 2,8 GHz.

55 5 CONCLUSÕES

Este trabalho teve como propósito analisar uma forma de estimar um sinal

caótico transmitido em meio ruidoso de forma a obter um sinal mais próximo do transmitido

originalmente. O método estudado foi o algoritmo de Viterbi.

Para que o trabalho atingisse um público mais amplo, fez-se primeiramente

uma introdução aos sinais caóticos e sistemas de comunicações nos Capítulos 1 e 2. Além

disso, também foi revisada a teoria da estimação de sinais na primeira parte do Capítulo 3.

A partir desses conceitos fundamentais, iniciou-se o estudo do algoritmo de

Viterbi aplicado à estimação de sinais caóticos. Nas simulações realizadas no Capítulo 3,

mostrou-se o caso de apenas um sinal sendo transmitido, um ruído aleatório que foi

adicionado a ele, e o sinal estimado pelo método. Os resultados foram satisfatórios. Para as

condições propostas naquele exemplo, se 20inSNR > dB, o algoritmo deixa de ser

interessante.

Nas simulações do Capítulo 4, dois parâmetros foram variados a fim de se

analisar qual era a influência deles no resultado da estimação. No Gráfico 18, na análise do

mapa tenda inclinada com variação de α , verificou-se que para 0α = , têm-se um maior

conjunto de valores de inSNR para os quais a outSNR é maior. Portanto, nesse caso obtém-se

o melhor resultado, com esse parâmetro.

O parâmetro que mais altera os resultados do algoritmo é o número de divisões

do intervalo IN . Quanto maior for o número de intervalos, ocorre um número maior de casos

em que outSNR é maior que inSNR , como mostrado nos Gráficos 19 e 20.

Por meio dos resultados obtidos, pode-se concluir que o algoritmo de Viterbi

tem um bom desempenho para mapas com densidade invariante uniforme, como o mapa tenda

56 inclinada. Para os casos com outros tipos de mapa se faz necessária uma modificação nas

divisões que deve ser feita no domínio estudado. A divisão é feita de tal forma que as áreas

obtidas entre o mapa e o eixo horizontal devem possuir o mesmo valor, ou seja, a

probabilidade de que um ponto esteja num subintervalo é a mesma de que ele esteja em

qualquer outro subintervalo.

Deve-se também considerar as limitações do método. Para casos nos quais há

pouco ruído, o algoritmo acaba diminuindo a outSNR em relação ao inSNR . Um fator

importante para explicar essa limitação são as aproximações pelos pontos centrais dos

intervalos. Como os pontos do sinal ruidoso estão próximos do original, essa estimação acaba

por obter pontos mais distantes do mesmo.

Os assuntos abordados neste trabalho, em geral, não são vistos num curso de

graduação. Houve a necessidade de muito estudo para escrever os capítulos iniciais e também

com a parte de simulação.

Algumas sugestões para trabalhos futuros resultantes desta pesquisa são: como

aplicar o algoritmo de Viterbi em sistemas de comunicação como ML-CSK (Maximum

Likelihood Chaos Shift Keying – Chaveamento Caótico com máxima verossimilhança) e ML-

DCSK (Maximum Likelihood Differential Chãos Shift Keying – Chaveamento caótico

diferencial com máxima verossimilhança) (EISENCRAFT, 2006), comparação do algoritmo

de Viterbi com outros métodos de estimação e análise de resultados do algoritmo de Viterbi

considerando outros tipos de distorção além do ruído branco gaussiano. Um dos professores

da banca, após a apresentação desse trabalho, também sugeriu um estudo a respeito do ponto

ótimo dentro de um subintervalo não-uniforme.

57

APÊNDICE

Rotinas computacionais em MATLAB

58 1 SKEW – Obtém o mapa tenda inclinada %[s] = skew(alfa,s0)

%Itera mapa skew uma vez

% alfa = parametro do mapa

% s0 = vetor de pontos a ser iterado

function s = skew(alfa,s0)

indicesmenores = (find(s0<=alfa));

indicesmaiores = (find(s0>alfa));

c11 = 2/(alfa+1);

c12 = (1-alfa)/(1+alfa);

c21 = 2/(alfa-1);

c22 = -(1+alfa)/(alfa-1);

s(indicesmenores) = c11*s0(indicesmenores)+c12;

s(indicesmaiores) = c21*s0(indicesmaiores)+c22;

2 ORBITATI – Obtém órbitas do mapa tenda inclinada % nit = numero de iteracoes

% x0 = condicao inicial

% alfa = parametro do mapa tenda inclinada

function y=orbitati(nit,x0,alfa)

y(1)=x0;

for i=2:nit

if y(i-1)<=alfa

y(i)=((2*(y(i-1)+1))/(alfa+1))-1;

else

y(i)=((-2*(y(i-1)-alfa))/(1-alfa))+1;

end

end

3 QUASEVITERBI – Obtém os intervalos de um mapa tenda inclinada % nint = numero de intervalos

% nbins = numero de bins

function I=quaseviterbi(nint,nbins,alfa)

y=orbitati(10000,-0.8,alfa);

%obtém pontos da órbita

[N,X]=hist(y,nbins);

%obtém valores do histograma

soma=sum(N);

%soma

acumulado=0;

b=[0 0 0 0];

parte=soma/nint;

for j=1:nbins

acumulado=acumulado+N(j);

vetoracumulado(j)=[acumulado];

end

for i=1:nint-1

a=find(vetoracumulado<i*parte);

%procura onde área igual a parte

b(i)=length(a);

59 end

I=[-1 X(b) 1]

%devolve intervalos para algoritmo

4 TENTIVA – Obtém a matriz de transição para o mapa tenda inclinada

function matrizdetransicao=tentativa(nintervalos)

close all;

alfa=0.2;

I=quaseviterbi(nintervalos,50000,alfa);

%obtem intervalos obtidos no programa 3

variavel=length(I);

for i=1:variavel-1

x=linspace(I(i),I(i+1),1000);

for j=1:length(x)

if x(j)<=alfa

y(j)=((2*(x(j)+1))/(alfa+1))-1;

else

y(j)=((-2*(x(j)-alfa))/(1-alfa))+1;

end

%obtem órbita

for n=2:variavel

a=find (y<I(n));

b(n)=length(a);

end

b(1)=0;

parcial=b;

for n=2:variavel

valor(n-1)=parcial(n)-parcial(n-1);

matriz(i,n-1)=[valor(n-1)]./length(x);

end

end

matrizdetransicao=[matriz] ;

end

matrizdetransicao

5 VITERBI – Obtém o sinal estimado %xchapeu = viterbi(y,varruido,Nb,a,mapa)

%Estima o sinal caotico transmitido usando Viterbi.

% y = sinal na entrada do receptor

% varruido = variancia (potencia) do ruido no canal

% Nb = numero de bolas a serem utilizadas na estimacao

% a = matriz de transicao de estados

% mapa = mapa utilizado

function xchapeu = viterbi(y,varruido,Nb,a,mapa)

%alfa = 0;

%y = rand(1,5)-0.5;

Npontos = length(y);

%varruido = .001;

60 %Nb = 10;

%Limitacao hard de y

y(find(abs(y)>1))=sign(y(find(abs(y)>1))); %limitacao hard

%Pontos centrais dos intervalos

deltab = 2/Nb;

k = 1:Nb;

Bc = ((2*k-Nb-1)/Nb)';

if strcmp(mapa,'quadratico'),

Bc = -cos(pi*(Bc+1)/2);

end

% Inicializacao

delta(:,1) = dist(y(1),Bc,varruido)/Nb;

fi(:,1) = zeros(Nb,1);

% Forward Pass

for t = 2:Npontos,

for j = 1:Nb,

for i = 1:Nb,

calc(i) = delta(i,t-1)*a(i,j);

end

calcmax = max(calc);

indmax = find(calc == calcmax);

delta(j,t) = max(calc)*dist(y(t),Bc(j), varruido);

fi(j,t) = indmax(1);

end

end

%Termino

termino = find(delta(:,Npontos) == max(delta(:,Npontos)));

s(Npontos) = termino(1);

%Backward Pass

for t = Npontos-1:-1:1,

s(t) = fi(s(t+1),t+1);

end

xchapeu = Bc(s)';

5 ALGORITMO DE VITERBI – Obtém Gráficos dos sinais originais, com ruído e estimado, erro e relação sinal ruído %scriptfinal

e=0:50;

f=0:50;

close all;

tamanho=21;

Nb=10;

mapa='skew'

61 a=tentativa(10);

SNRindB=linspace(0,60,60);

for i=1:length(SNRindB)

for b=1:10

x0=2*rand(1,1)-1;

sinaloriginal=orbitati(tamanho,x0,0.2);

N=0:length(sinaloriginal)-1;

l=length(N);

r=0.4*randn(1,tamanho);

sinalcorrompido=sinaloriginal+r;

y=sinalcorrompido;

varruido=0.4;

xchapeu = viterbi(y,varruido,Nb,a,mapa);

sinaloriginalaoquad=sum(sinaloriginal.^2);

potenciasinal=sinaloriginalaoquad/tamanho;

varianciaruido=var(sinalcorrompido-sinaloriginal);

varianciaestimada=var(xchapeu-sinaloriginal);

SNRin(i)=potenciasinal/varianciaruido;

SNRinput(i)=10.^(SNRin(i)/10);

sigma(i)=potenciasinal/SNRin(i);

SNRout=sinaloriginalaoquad/varianciaestimada;

SNRoutdB(i)=10*log10(SNRout);

SNRoutput(i)=[SNRoutdB(i)];

erro=sinaloriginal-xchapeu;

errocomruido=sinaloriginal-sinalcorrompido;

mediaSNRinput(i)=[mean(SNRinput)];

end

mediaSNRoutput(i)=[mean(SNRoutput)];

end

mediaerro=mean(erro.^2)

mediaerrocomruido=mean(errocomruido.^2)

figure(1)

subplot(3,1,1)

plot(N,sinaloriginal)

grid on

ylabel('Sinal original')

axis([0 20 -1.2 1.2]);

subplot(3,1,2)

plot(N,sinalcorrompido)

grid on

ylabel('Sinal corrompido por ruido')

axis([0 20 -1.2 1.2]);

subplot(3,1,3)

plot(N,xchapeu)

grid on

xlabel('n')

ylabel('Sinal estimado')

62 axis([0 20 -1.2 1.2])

figure(2)

subplot(2,1,1)

plot(N,errocomruido)

grid on

ylabel('Erro sem utilizar o algoritmo')

axis([0 20 -1.2 1.2]);

subplot(2,1,2)

plot(N,erro)

grid on

xlabel('n')

ylabel('Erro utilizando o algoritmo')

axis([0 20 -1.2 1.2]);

figure(3)

plot(SNRindB,mediaSNRoutput)

grid on

hold on

plot(e,f,'c')

grid on

xlabel('SNRin')

ylabel('SNRout')

axis([0 30 0 30])

6 SCRIPTFINALGRAFICOVITERBI – Obtém as relações sinal ruído da entrada pela relação sinal ruído na saída ao variar o parâmetro alfa do mapa tenda inclinada %scriptfinalgraficoviterbi

%Nb=numero de intervalos

%SNRindB=relacao sinal ruido de entrada

%xchapeu=sinal estimado

%alfa=0.2;

%numrepete=numero de repetiç

function [SNRindB, mediaSNRoutput] =

scriptfinalgraficoviterbitialfa(alfa,a);

tamanho=21;

Nb=10;

mapa='skew'

SNRindB=linspace(0,40,60);

SNR=10.^(SNRindB/10);

numrepete=10;

n = 0:tamanho-1;

for i=1:length(SNRindB)

for b=1:numrepete

[SNRindB(i) b alfa]

x0=2*rand(1,1)-1;

sinaloriginal=orbitati(tamanho,x0,alfa);

sinaloriginalaoquad=sum(sinaloriginal.^2);

potenciasinal=sinaloriginalaoquad/tamanho;

potenciaruido=potenciasinal/SNR(i);

r=sqrt(potenciaruido)*randn(1,tamanho);

sinalcorrompido=sinaloriginal+r;

63 xchapeu=viterbi(sinalcorrompido,potenciaruido,Nb,a,mapa);

denSNRout=var(xchapeu-sinaloriginal)

SNRout=sinaloriginalaoquad/denSNRout;

SNRoutdB(b)=10*log10(SNRout);

erro=sinaloriginal-xchapeu;

errocomruido=sinaloriginal-sinalcorrompido;

end

mediaSNRoutput(i)=[mean(SNRoutdB)];

end

end

7 GRAFICVITERBITIALFA – Obtém o Gráfico de relação sinal ruído da entrada pela relação sinal ruído na saída ao variar o parâmetro alfa do mapa tenda inclinada %function [SNRin,mediaSNRoutput] = graficviterbi(alfa)

close all;

alfa = -0.8:.4:0.8;

a=tentativa(10)

e=0:50;

f=0:50;

for indalfa=1:length(alfa)

[SNRindB(indalfa,:), mediaSNRoutput(indalfa,:)]

=scriptfinalgraficoviterbitialfa(alfa(indalfa));

end

figure(1)

plot(SNRindB(1,:),mediaSNRoutput(1,:),'r')

hold on

plot(SNRindB(2,:),mediaSNRoutput(2,:),'b')

hold on

plot(SNRindB(3,:),mediaSNRoutput(3,:),'k')

hold on

plot(SNRindB(4,:),mediaSNRoutput(4,:),'g')

hold on

plot(SNRindB(5,:),mediaSNRoutput(5,:),'m')

hold on

plot(e,f,'c')

hold on

xlabel('SNRin')

ylabel('SNRout')

64 REFERÊNCIAS ABEL, A.; SCHWARZ, W. Chaos communications-principles, schemes, and system analysis; Proceedings of the IEEE, v. 90, n. 5, p.691 – 710, may. 2002. ALLIGOOD, K. T.; SAUER, T. D.; YORKE, J. A. Chaos - An Introduction to Dynamical

Systems, New York: Springer, 1996. CORRON, N.J.; HAHS, D. W. A new approach to Communications using Chaotic Signals, IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications, v. 44, n. 5, p.373-382, 1997. DEDIEU, H.; KISEL, A. Communications with chaotic time series: probabilistic methods for noise reduction. International Journal of Circuit Theory and Applications, v. 27, p. 577-587, 1999. DEVANEY, R. L. A first course in chaotic dynamical systems: Theory and experiment, Westview Press, 1992. DRAKE, D. F. Information´s Role in the Estimation of Chaotic Signals. 1998. Thesis (Doctor in Philosophy in Electrical Engineering) - Georgia Institute of Technology, 1998. EISENCRAFT, M. Sistemas de comunicação utilizando sinais caóticos. 2001. 115 p. Dissertação (Mestrado em Engenharia) - Escola Politécnica da Universidade de São Paulo, São Paulo, 2001. EISENCRAFT, M. Contribuições da teoria da estimação para modulações digitais que

utilizam sinais caóticos. Tese (Doutorado em Engenharia) - Escola Politécnica da Universidade de São Paulo, São Paulo, 2006.

HAYKIN, S. Communication systems, New York: John Wiley, 2001. KAY, S. M. Fundamentals of Statistical Signal Processing: Estimation Theory. Upper Saddle River, New Jersey: Prentice-Hall Inc., 1993. LASOTA, A.; MACKEY, M. Probabilistic properties of deterministic systems Cambridge: Cambridge University, 1985. LAU, F. C. M.; TSE, C. K. Chaos-based digital communication systems, Berlim: Springer, 2003. LI, T. Y.; YORKE, J. A. Period three implies chaos. American Mathematics Monthly, v. 82, p. 985-992, 1975. LORENZ, E. Deterministic non-periodic flows. Journal of the Atmospheric Sciences, v. 20, p. 130, 1963.

65 MAY, R. M. Biological populations with nonoverlapping generations: stable points, stable cycles, and chaos. Science, v. 186, p. 645-647, 1974. MONTEIRO, L. H. A. Sistemas Dinâmicos, São Paulo: Livraria da Física, 2006. MYERS, K.; TAPLEY, B. Adaptive sequential estimation with unknown noise statistics. Proceedings of the IEEE Automatic Control, v.21, n.4, p. 520-523, 1976. NEWTON, I. The Principia : mathematical principles of natural philosophy. Berkeley: University of California, 1999. PECORA, L. M.; CARROLL, T. L. Synchronization in chaotic systems. Physical Review Letters, v. 64, n. 8, p. 821-824, 1990. POINCARÉ, H. Sur les equations de la dynamique et le probléme de trois corps. Acta Mathematica, v. 13, p. 1-270, 1890. SETTI, G.; MAZZINI, G.; ROVATTI, R.; CALLEGARI, S. Statistical Modeling of Discrete- Time Chaotic Process - Basic Finite-Dimensional Tools and Applications. Proceedings

of the IEEE, v. 90, n. 5, 2002. SILVA, C. P.; YOUNG, A. M. Introduction to chaos-based communications and signal processing, Proceedings of the IEEE Aerospace Conf, 2000. STROGATZ, S. H. Nonlinear Dynamics and Chaos. Massachusets: Persus Publishing, 2000.