Escolar Documentos
Profissional Documentos
Cultura Documentos
1 Incerteza
O mundo em que o agente est atuando sofre mudanas em cada instante de
tempo, dessa forma utiliza-se de uma varivel aleatria para cada aspecto do estado, ou
seja, uma varivel que vai assumir um determinado valor para cada instante de tempo.
O raciocnio probabilstico era conhecido at o momento para mundos estticos,
onde cada varivel possui um valor fixo. Agora a ideia utilizar-se de variveis que tem
o seus valores alterados de acordo que o tempo evolui. Esse processo de mudana
visualizado como uma sequncia de instantneos que descrevem o estado do mundo em
um instante especfico.
Cada fatia no tempo ir conter um conjunto de variveis, onde estas podem ser
observveis ou no. Como notao para as variveis adota-se que as variveis
, o
conjunto das variveis no observveis no tempo t. J as variveis
, formam o
conjunto das variveis observveis e as variveis
) (
) (1)
As leis que determinam o modelo de transio de um processo de Markov de
primeira ordem so definidas pela distribuio condicional (
), por definirem
como o estado evolui ao longo do tempo. Para os processos de Markov de segunda
ordem a forma como os estados evoluem no tempo so representados pela seguinte
distribuio condicional (
) (Russel).
A forma como as variveis de evidncia se comportam esto diretamente
relacionadas ao comportamento das variveis de estado, dessa forma, como as variveis
de estados tiveram os seus pais restringidos, as variveis de evidncia tambm passaro
pelo mesmo processo, fazendo com que as variveis de evidncia dependam apenas do
estado atual.
(
) (
) (2)
2 Inferncia em modelos temporais
A inferncia pode ser dividida em tarefas diferentes, sendo estas, Filtragem,
Previso e Suavizao.
Filtragem trata-se da tarefa de poder calcular a distribuio posterior sobre o
estado atual, utilizando-se de o histrico de evidncia existente at o momento,
(
).
Previso a tarefa de calcular uma distribuio posterior sobre um estado
futuro usando-se de todas as evidencias existentes at o momento, (
).
Suavizao tarefa responsvel por calcular a distribuio posterior sobre um
estado j passado, usando-se de todas evidencias disponveis, (
)
O trabalho desenvolvido at o momento utiliza-se da tarefa de previso, por isso
ser dado um enfoque maior para essa tarefa.
Filtragem e Previso
A previso pode ser feita de forma simples, uma vez que se tem uma filtragem
dos dados at o tempo t. Com os resultados obtidos na filtragem calcula-se de forma
fcil o resultado para o tempo t+1 a partir da nova evidncia,
. Podemos representar
esse conceito na forma algbrica da seguinte forma,
(
) (
)) (3)
onde f uma funo de avaliao recursiva. O clculo do valor futuro composto de
duas partes. A primeira parte a distribuio de estado atual projetado do tempo t para
o tempo t + 1, e em seguida o valor obtido atualizado utilizando-se da nova evidncia
.
O procedimento utilizando-se das duas fazes pode melhor visualizados nas
representaes algbricas a seguir:
(
) (
)(
)(
),
representa uma previso para o prximo estado, enquanto o primeiro termo,
(
, podemos
chegar a seguinte expresso:
(
) (
) (
)(
) (
)(
(4)
Sendo que no somatrio temos a representao do modelo de transio (primeiro fator)
e a distribuio do estado atual (segundo fator).
Exemplo
O exemplo escolhido par melhor ilustrar o processo de previso foi o do guarda de
segurana de uma instalao subterrnea abordado em Russel. Nele o guarda tem como
a nica forma de saber se est chovendo ou no a presena do guarda-chuva trazido pelo
seu chefe. Assim o guarda-chuva a nica varivel de evidncia (
) (
)(
agora ao atualizar o resultado de (
) (
)(
)
Para o dia 3,
) (
)(
agora ao atualizar o resultado de (
) (
)(
)
Pode-se observar que do dia 2 para o dia 3 a probabilidade de chover aumentou,
isso de deve ao fato da chuva continuar.
Implementao dos Algoritmos
Uma vez realizado os estudos da teoria, foram implementados dois algoritmos
para fazer o calculo de previso, sendo um usando dados discretos e outro usando dados
booleanos.
Primeiramente programou-se um algoritmo para trabalhar com variveis
booleanas. O algoritmo consistiu em aplicar os passos explicados nas equaes 3 e 4,
responsvel por fazer o calculo da previso.
O algoritmo teve o seu desenvolvimento da seguinte forma, primeiramente
criou-se uma estrutura responsvel por guardar os resultados obtidos aps o calculo de
cada previso. Aps isso se implementou uma estrutura responsvel por armazenar os
valores de transio de cada estado, e os valores de transio das evidncias.
Com todas as estruturas j criadas, foram implementadas as expresses
responsveis por fazer o calculo dos valores futuros (equao 4). Inicialmente pensava-
se em utilizar uma condio de parada para o algoritmo, porm como o tempo era curto
para fazer novos estudos, utilizou-se um lao para executar o algoritmo por um
determinado numero de vezes, simulando assim uma determinada quantidade de tempo.
Para evitar que as evidencias usadas em cada instante t fossem inseridas
manualmente, algo desgastante, utilizou-se do principio de Monte Carlo para simular
em qual estado a varivel de evidncia encontra-se em cada tempo t (verdadeira ou
falsa).
Os resultados encontrados com algoritmos so extensos, dessa forma sero
apresentados aqui apenas os resultados obtidos para os primeiro dias. Assumindo-se os
critrios adotados pela literatura, em que no primeiro dia no ocorre evidencia, tem-se
uma probabilidade de 0.5 para chover e 0.5 para no chover. A partir do segundo dia,
com a apario da evidncia, os valores previstos pelo algoritmo foram os seguintes:
- Probabilidade de chuva no dia 0 = 0.5
- Probabilidade de chuva no dia 1 = 0.11111111111111108, dado que a evidncia
Falsa.
- Probabilidade de chuva no dia 2 = 0.7027707808564232, dado que a evidncia
Verdadeira.
- Probabilidade de chuva no dia 3 = 0.14778041124847857, dado que a evidncia
Falsa.
- Probabilidade de chuva no dia 4 = 0.7160308636806798, dado que a evidncia
Verdadeira.
- Probabilidade de chuva no dia 5 = 0.15055076910420265, dado que a evidncia
Falsa.
- Probabilidade de chuva no dia 6 = 0.7170081929395491, dado que a evidncia
Verdadeira.
Para esse primeiro exemplo implementado, a aleatoriedade usada, foi para que a
evidncia fosse falsa em um dia e positiva no outro, para poder observar se o algoritmo
convergia para algum valor, ou apresentava valores de previses distintos. Nota-se que
os valores encontrados, para os dias verdadeiros so parecidos, ento como trabalho
futuro, pretende-se usar esse critrios das previses apresentarem valores prximos
como um critrio de parada para o algoritmo.
Para trabalhar com variveis discretas o algoritmo passou por algumas
transformaes. Isso se deve ao fato de que ao trabalhar com variveis discretas as
tabelas de transio de estados e de evidencias vo ser diferentes, em relao as tabelas
usadas no algoritmo de variveis booleanas.
As variveis discretas podem assumir mais de dois valores, diferentemente das
booleanas. Como exemplo de varivel discreta pode citar a varivel Tempo, que pode
assumir o seguinte domnio, <ensolarado, nublado, chuvoso>. A soma dos valores
apresentados por essas variveis pertencentes ao domnio de tempo tem que resultar 1.
As tabelas usadas para representar a transio das variveis de estados e
variveis de evidencia para dados discretos assumi a seguinte forma.
Tabela 1 - Tabela de transio para a varivel de estado
T-1 Tempo = Chuvoso Tempo = Nublado Tempo = Ensolarado
Tempo = Chuvoso A1 B1 C1
Tempo = Nublado A2 B2 C2
Tempo = Ensolarado A3 B3 C3
T P(U) P(U)
Tempo = Chuvoso A1 B1
Tempo = Nublado A2 B2
Tempo = Ensolarado A3 B3
Uma observao que deve ser feita, ao observar a tabela, a soma de todos os
elementos presente em cada linha de ambas as tabelas deve retornar como valor 1,
garantindo assim a procedncia dos dados.
Com as tabelas j detalhadas, ajustou-se as equaes do algoritmo implementado
anteriormente, para que fosse feito o calculo usando-se agora das variveis discretas e
no mais booleanas.
OBS: Os dados usados para fazer os experimentos com variveis discretas, foram dados
criados, ento no estou seguro para apresentar os resultados obtidos.
Suavizao
O processo de suavizao trata-se do processo de calcular a distribuio de
probabilidade sobre os estados anteriores, levando-se em consideraes as evidencias
at o presente momento, (
) (
)(
)(
(5)
onde temos duas funes, que calculam os valores suavizados, a primeira
faz o
calculo para frente, da mesma forma como feito no processo de filtragem, dessa forma
para essa parte pode-se usar o processo de filtragem estudado anteriormente. A segunda
parte (
, ento obtemos a
seguinte relao:
(
) (
)(
= (
)(
)(
= (
)(
)(
(6)
Da relao final obtida temos que o primeiro e o terceiro termo segue o modelo, ou seja,
(
) trata-se do modelo
de transio de estados. O termo do meio trata-se do modelo de recurso, ou seja,
responsvel por fazer as chamadas recursivas.
Modelos Ocultos de Markov
O Modelo Oculto de Markov um modelo probabilstico temporal no qual o
estado do processo descrito por uma nica varivel aleatria. A observao da
evoluo do sistema ocorre de forma indireta, como funo probabilstica da transio
entre os estados definidos num espao de estados discreto e finito. Por mais que
conheamos todos os parmetros do modelo, continua oculta a evoluo do processo de
Markov. Em outras palavras, no se sabe qual o caminho ou sequncia de passos exatos
que levaram a uma determinada observao.
Para um modelo ser Oculto de Markov ele deve apresentar as seguintes
caractersticas:
1. Um espao de estados S =
2. Um conjunto de observveis Y =
3. Uma varivel estocstica Q a assumir valores do espao de estados S em diferentes
instantes de tempo
4. Uma varivel estocstica O a assumir valores do conjunto de observveis Y em
diferentes instantes de tempo
5. Uma distribuio de probabilidade inicial para cada estado *
+, tal que
)
. Uma distribuio de probabilidade de transio entre estados *
+, tal que
)
7. Uma distribuio de probabilidade de observao *
()
(
para o estado
.
Algoritmos Matriciais simplificados
Quando o sistema usado apresenta uma nica varivel de estado
, composta
por valores inteiros que variam de 1,..,S, onde S o nmero de estados disponveis,
obtemos a seguinte relao para o modelo de transio (
), utilizando-se do
conceito de matrizes.
)
onde
, precisa-se apenas
fazer com que as probabilidades que denotam
)e as
demais entradas so 0.
Com o modelo de transio e de sensores j definidos, pode-se a partir de vetores
colunas fazer uma representao das mensagens para frente e para trs, responsveis por
fazerem o clculo dos valores futuros. Com isso a equao para frente tem o seguinte
formato:
(7)
E a equao para trs definida por:
(8)
O algoritmo de suavizao tambm pode utilizar-se do conceito de matrizes em seu
funcionamento. Para isso executa-se primeiro uma passagem da mensagem para frente
para calcular
. E depois executa-se a para trs para b e f de uma nica vez. Com isso
obtm-se os valores das estimativas suavizadas para cada passo.
Filtros de Kalman
O filtro de Kalman um conjunto de equaes matemticas que oferece uma
eficiente soluo computacional para estimar os estados de um sistema linear dinmico
perturbado por rudo gaussiano branco. O filtro age de forma a minimizar o erro mdio
quadrado, que a diferena entre o estado predito e o atual. Dado um valor inicial, o
filtro prediz o prximo estado e, baseado na leitura do estado, atualiza a predio e
minimiza o erro em cada atualizao.
Para a utilizao do filtro de Kalman necessrio que se tenha densidades
condicionais adequadas, a fim de obter-se uma boa representao dos modelos de
sensores e de transio. Para isso so usadas as distribuies gaussianas lineares, que
possuem como caracterstica principal a distribuio gaussiana multivariada. Onde
est, possui media para um conjunto de d variveis e uma matriz de covarincia d x d
.
Atualizao das distribuies gaussianas
As distribuies gaussianas lineares so operaes que estro diretamente
ligadas as operaes padres das redes bayesianas. Com essas informaes pode-se
aferir uma relao entre as distribuies gaussianas com o contexto de filtragem para
um modelo temporal. Como base so utilizadas as os dois passos apresentados na
equao (4).
Para uma distribuio atual (
) (
)(
(9)
que tambm ser uma distribuio gaussiana.
Assumindo que (
) (
)(
) (10)
que tambm distribuio gaussiana.
Caso Geral
Quando usados distribuio multivariada o filtro de Kalman assume a seguinte
relao:
( )()
(()
())
onde temos uma funo quadrtica que tem o seu funcionamento de acordo
com as variveis aleatrias
em x.
Uma vez que j sabe-se a forma geral do modelo de Kalman deve-se
agora estimar a forma geral para os modelos de sensores e transio usados na
filtragem de Kalman. Para isso assumimos que estes so uma transformao
linear possuindo rudo gaussiano aditivo. Com isso tem-se as seguintes
relaes:
(
) (
)(
)
(
) (
)(
) (11)
onde F e