1. Análise do desempenho do algoritmo de Viterbi
com janela deslizante no rastreamento de robôs
em estufas agrícolas
Roberson Junior Fernandes Alves
Curso de Ciência da Computação, Universidade do Oeste de Santa Catarina(UNOESC)
89900-000 – São Miguel do Oeste – SC – Brasil – roberson.alves@unoesc.edu.br
José Carlos Ferreira da Rocha
Departamento de Informática, Universidade Estadual de Ponta Grossa(UEPG)
84030-900 – Ponta Grossa – PR – Brasil – jrocha@uepg.br
2. Estufas agrícolas oferecem um ambiente apropriado para abrigar
culturas especiais, como hortaliças, flores e certas frutas, entre
outras;
Contudo, há uma grande quantidade de trabalho manual, repetitivo
e as condições climáticas podem ser prejudiciais a saúde humana;
Introdução de Agrobots:
• Vantagens:
• Um robô pode trabalhar durante 24 horas sem parar;
• Em tarefas repetitivas é possível adicionar melhorias tecnológicas de
forma a qualificar o processo; e
• Incremento da eficiência e produtividade.
• Demandam de capacidade para perceber, planejar e atuar no
ambiente, sem a intervenção humana.
2
INTRODUÇÃO
3. Avaliar o desempenho em termos de tempo e
correção dos algoritmos de Viterbi e Viterbi-JD no
rastreamento de agrobots em estufas agrícolas.
3
OBJETIVO
4. Grades de ocupação:
• Representam o ambiente por meio de seu particionamento em
regiões quadrangulares, chamadas de células;
• O rastreamento do agrobot pode ser inferido a partir do histórico
de células visitadas.
Exemplo de uma grade:
• De 3 X 3 células;
• Cada célula possui uma área definida;
• Células com X em vermelho estão ocupadas.
4
RASTREAMENTO DE AGROBOTS:
GRADES DE OCUPAÇÃO
5. O processo de inferir a célula ocupada da grade pode utilizar
informações provenientes de pontos de acesso(PAs) em redes WiFi
explorando o RSSI(Received Signal Strength Indicator);
A partir do RSSI pode ser gerada uma assinatura ou fingerprinting.
5
RASTREAMENTO DE AGROBOTS:
ASSINATURA DE RSSI OU FINGERPRINTING
Célula S1 Célula S2
6. Modelos ocultos de Markov(MOMs):
• Ferramenta de modelagem probabilística;
• Modelo é representado por: ;
• Outras variáveis: S, N e M;
• Problema da decodificação(algoritmo de Viterbi);
• O algoritmo de Viterbi, para um dado MOM e um conjunto
de observações , encontra a máxima ;
• Complexidade de tempo: ;
•No rastreamento com o algoritmo de Viterbi é reentrado
todo conjunto de observações.
6
RASTREAMENTO DE AGROBOTS:
MODELOS OCULTOS DE MARKOV E O ALGORITMO DE
VITERBI
7. •Exemplo de MOM para a grade ao lado:
• Seis estados(células) denotados por ;
• Cada si equivale a uma localização do robô;
• Mat. de probabilidades inicial(π) =>
• Mat. de transição(A) => matriz de banda 3
• Mat. de emissão(B) => dist. gaussiana ;
• M => 2 e N => 6.
7
RASTREAMENTO DE AGROBOTS:
EXEMPLO DE RASTREAMENTO COM MOM
8. Dadas as complexidades de tempo do algoritmo de Viterbi, ele pode se tornar
inviável para o rastreamento em tempo real de agrobots;
Uma alternativa para contornar as limitações de tempo do algoritmo de
Viberbi é o algoritmo de Viterbi com Janela Deslizante ou Viterbi-JD;
No Viterbi-JD é utilizada uma subsequência(janela) de observações O’ de
tamanho w.
8
RASTREAMENTO DE AGROBOTS:
ALGORITMO DE VITERBI-JD
9. Para realizar os experimentos de desempenho:
1) Definição de 01 grade(ref. estufa agrícola de 315 m2):
•Grade de 21m x 15m com células de 1m2;
2) Definição de velocidades(v) de deslocamento: 30 cm/s,
60 cm/s e 90 cm/s;
3) Janelas(w) para o Viterbi-JD JD: 90, 120, 150 e 180.
9
METODOLODIA:
EXPERIMENTOS DE TEMPO
10. Em cada grade foram executados os seguintes passos:
• Para cada velocidade v e janela w
• Gerado um MOM;
• Parâmetros do MOM inicializados aleatoriamente;
• Geradas 30 sequências de RSSI com 600 observações cada;
• Os algoritmos Viterbi e Viterbi-JD executados sobre cada
sequência;
• A cada execução foi o tempo de processamento(em segundos).
10
METODOLODIA:
EXPERIMENTOS DE TEMPO
11. O que se observou foi que o algoritmo de Viterbi utilizou mais de 600
segundos para processar 10 minutos de observações, no melhor caso;
Em média o algoritmo de Viterbi-JD se mostrou mais rápido que o
algoritmo de Viterbi, mesmo no pior caso(tempo máximo);
O crescimento do tempo no Viterbi-JD mostrou-se proporcional ao
tamanho da janela w. Isso é reforçado pela forte correlação linear entre
μd e w de 0,99;
A economia de tempo utilizando o Viterbi-JD ficou entre 50% e 83%;
Na análise estatística definiram-se as variáveis μv e μd onde H0 ≡ μv – μd
= 0 e H1 = μv > μd ;
Para o teste t de Student, com α = 0,05, quando comparados os
algoritmos de Viterbi-JD e Viterbi, aceitou-se a hipótese alternativa para
todas as velocidades e janelas.
11
RESULTADOS:
TEMPO
12. Gráfico comparando as médias de tempo de processamento do
Viterbi-JD considerando todos os valores de w e v:
12
RESULTADOS:
TEMPO
13. 1) Definição de velocidades(v) de deslocamento: 30 cm/s, 60 cm/s e 90
cm/s; e janelas(w) de: 90, 120, 150 e 180;
2) Para geração da fingerprinting foi adotado o modelo One-Slope
Model(OSM) de Narzullaev e Park(2013);
3) O coeficiente de perda do sinal(path loss) configurado com os valores
extremos de γ = 3 e γ = 5 (SABRI et al., 2013);
4) Simulação de caminhamentos;
13
METODOLODIA:
EXPERIMENTOS DE CORREÇÃO
14. Em cada grade foram executados os seguintes passos:
• Para cada velocidade v e janela w
• Gerado um MOM;
• Os parâmetros das distribuição de emissão foram treinados a
partir dos dados de RSSI gerados (fingerprinting);
• Foram simuladas 30 sequências de caminhamento de um robô,
por um período de 10 min. (600 observações), em cada sequência;
• Os algoritmos Viterbi e Viterbi-JD executados sobre cada
sequência;
• A cada execução foram armazenados os valores de erro (E)
calculados de acordo com:
14
METODOLODIA:
EXPERIMENTOS DE CORREÇÃO
15. Quanto a correção, a menor taxa de erro apresentada para o algoritmo de Viterbi
foi de 0,85% para γ = 3 e v = 60 cm/s. A maior taxa de erro foi de 4,08% para γ = 5 e
v = 90 cm/s.
Já para o algoritmo de Viterbi-JD a menor taxa de erro foi de 1,46% para γ = 3, v =
60 cm/s e w = 180. A maior taxa de erro atingiu 4,65% para γ = 5, v = 90 cm/s e w =
90;
Para a análise estatística definiram-se as variáveis μv e μd onde H0 ≡ μv – μd = 0 e H1
= μd > μv ;
O teste t de Student, com α = 0,05, quando comparados os algoritmos de Viterbi-JD
e Viterbi, aceitou-se a hipótese alternativa para todos os valores de v, w e γ.
15
RESULTADOS:
CORREÇÃO SEM RUÍDO
16. γ = 5
Gráficos comparativos, das taxas de erro, do Viterbi-JD: w x Er
16
γ = 3
RESULTADOS:
CORREÇÃO
17. O algoritmo Viterbi-JD teve um desempenho computacional significativamente
superior ao do algoritmo de Viterbi no processamento do rastreamento;
A correlação entre o desempenho computacional e o tamanho da janela
permite a criação de um mecanismo para ajustar o esforço computacional
dedicado à tarefa de rastreamento de agrobots;
O erro do Viterbi-JD é um pouco maior do que aquele produzido pelo
algoritmo de Viterbi;
Contudo, em todos os casos, o emprego do algoritmo Viterbi-JD não levou a
um incremento substancial do erro na determinação do rastro;
A metodologia experimental utilizada pode ser reproduzida em outros
trabalhos;
Futuramente pretende-se avaliar a presença de ruído no ambiente e sua
influência nos dados de RSSI.
17
CONCLUSÕES