Apresentação da Dissertação

261 visualizações

Publicada em

Apresentação para defesa de mestrado em computação aplicada da UEPG.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
261
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
2
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Apresentação da Dissertação

  1. 1. RASTREAMENTO DE AGROBOTS EM ESTUFAS AGRÍCOLAS USANDO MODELOS OCULTOS DE MARKOV: Comparação do desempenho e da correção dos algoritmos de Viterbi e Viterbi com janela de observações deslizante Mestrando: Roberson Junior Fernandes Alves Orientador: Prof. Dr. José Carlos Ferreira da Rocha SETEMBRO/2015 Universidade Estadual de Ponta Grossa - UEPG Mestrado em Computação Aplicada Computação para Tecnologias em Agricultura
  2. 2. INTRODUÇÃO AGROBOTS • Na agricultura, são dispositivos capazes de realizar tarefas que são, normalmente, cansativas ou arriscadas para os seres humanos; • Devem ter a capacidade de comunicar-se com sensores remotos de forma a se transformarem em “agricultores autônomos”; • Sua autonomia esta associada a capacidade de perceberem, modelarem, planejarem e atuarem sem a intervenção humana. 2
  3. 3. Estufas Agrícolas • Técnica muito utilizada na agricultura para cultivo de plantas; • Diversas tarefas podem ser automatizadas; • Agrobots para realizar tarefas repetitivas e que exijam seu deslocamento na estufa agrícola. Necessidade: implementação de procedimentos de navegação e localização autônoma(autolocalização); Autolocalização: • Capacidade do robô se localizar no ambiente dadas as leituras sensoriais disponíveis, sem considerar sua orientação; • Informações do ambiente e de sensores disponíveis; • Rastreamento como forma de determinação. 3 INTRODUÇÃO
  4. 4. Geral: Avaliar o desempenho computacional e a correção dos algoritmos de Viterbi, Viterbi-JD e Viterbi-JD-MTE no rastreamento de agrobots em estufas agrícolas. Objetivos específicos: a) Especificar um procedimento para rastreamento e autolocalização de robôs em estufas agrícolas por meio do processamento de dados de RSSI provenientes de pontos de acesso de redes sem fio com modelos ocultos de Markov; b) Aplicar o teste t de Student para determinar se existe uma diferença significativa, do ponto de vista estatístico, no desempenho dos algoritmos de Viterbi, Viterbi-JD e Viterbi-JD-MTE em termos de tempo de processamento e memória consumida; e c) Comparar os resultados referentes as taxas de erro das hipóteses de rastreamento calculadas pelas implementações do algoritmo de Viterbi e Viterbi-JD. 4 OBJETIVOS
  5. 5. Estufas agrícolas: • Ambiente apropriado para abrigar culturas especiais, como hortaliças, flores e certas frutas, entre outras; • Grande quantidade de trabalho manual, repetitivo e as condições climáticas podem ser prejudiciais a saúde humana; Agrobots: • Pode ser utilizado em atividades como colheita de frutos, inspeção de plantas, irrigação, transporte, enxerto, entre outras; • 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. 5 RASTREAMENTO DE AGROBOTS: ESTUFAS AGRÍCOLAS
  6. 6. Grades de ocupação: • Representam o ambiente por meio de seu particionamento em regiões quadrangulares, chamadas de células; • Aplicam-se em problemas de autolocalização por: • Permitirem explorar modelos baseados em multisensores para determinar células que estão ou não ocupadas; • Poderem ser combinadas à abordagens probabilísticas. • O rastreamento do agrobot pode ser inferido a partir do histórico de células visitadas. Exemplo de uma grade denotada por G: • De 3 X 3 células; • Cada célula possui uma área definida; • Células com X em vermelho estão ocupadas. 6 RASTREAMENTO DE AGROBOTS: GRADES DE OCUPAÇÃO
  7. 7. O modelo de sensores utilizado pode utilizar informações provenientes de pontos de acesso(PAs) em redes WiFi; • A informação mais explorada é o RSSI(Received Signal Strength Indicator); A partir do RSSI pode ser gerada uma Assinatura de RSSI ou Fingerprinting; Abordagem de assinatura de RSSI tem duas etapas: on-line e off-line; Utilizando a representação em grade cada célula tem sua assinatura: 7 RASTREAMENTO DE AGROBOTS: ASSINATURA DE RSSI OU FINGERPRINTING Célula S1 Célula S2
  8. 8. Modelos ocultos de Markov(MOMs): • São uma 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: ; • Complexidade de espaço: . 8 RASTREAMENTO DE AGROBOTS: MODELOS OCULTOS DE MARKOV E ALGORITMO DE VITERBI
  9. 9. • Um MOM associado a grade G: 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 • Para esse MOM, o rastreamento com o algoritmo de Viterbi, pode ser visto como o problema de determinar a sequência de células ocupadas pelo robô ao longo do tempo. 9 RASTREAMENTO DE AGROBOTS: EXEMPLO DE RASTREAMENTO COM MOM
  10. 10. Uma vez que o processo de rastreamento é ligado são coletadas observações e armazenadas na variável ; A coleta de cada observação e o processamento da sequência completa é apresentado no algoritmo a seguir: 10 RASTREAMENTO DE AGROBOTS: ALGORITMO DE RASTREAMENTO VITERBI
  11. 11. Dadas as complexidades de tempo e espaço 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 e espaço 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 de tamanho ; Quando o rastreamento está ligado, o algoritmo de Viterbi-JD, executa o Viterbi sobre esta subsequência de observações. 11 RASTREAMENTO DE AGROBOTS: ALGORITMO DE VITERBI-JD
  12. 12. É uma extensão do algoritmo Viterbi-JD que considera o uso de matriz de transição esparsa, onde valores iguais a 0 são suprimidos; Uso da modelagem matricial Compressed Row Storage(CRS). 12 RASTREAMENTO DE AGROBOTS: ALGORITMO DE VITERBI-JD-MTE
  13. 13. Para realizar os experimentos de desempenho: 1) Definição de 02 grades(ref. estufa agrícola de 315 m2): • GD1 com 315 células de 1m2; • GD2 com 875 células de 0,36m2; 2) Definição de velocidades(v) de deslocamento: 30 cm/s, 60 cm/s e 90 cm/s; 3) Para as velocidades de 30 cm/s e 60 cm/s uma banda de tamanho 3. Para 90 cm/s banda 5. 4) Janelas(w) para as versões JD: 90, 120, 150 e 180. 13 METODOLODIA: EXPERIMENTOS DE DESEMPENHO Fonte: Gaspareto(2013).
  14. 14. 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, Viterbi-JD e Viterbi-JD-MTE executados sobre cada sequência; •A cada execução foram armazenados o tempo de processamento(em segundos) e a memória consumida(em MegaBytes). 14 METODOLODIA: EXPERIMENTOS DE DESEMPENHO
  15. 15. Foram definidos os seguintes testes estatísticos para avaliar o desempenho em termos de memória dos algoritmos: 1. A memória consumida pelo Viterbi-JD é igual a consumida pelo Viterbi; 2. A memória consumida pelo Viterbi-JD-MTE é igual a consumida pelo Viterbi. 15 RESULTADOS: TESTES ESTATÍSTICOS SOBRE A MEMÓRIA
  16. 16. Para o algoritmo de Viterbi a estatística descritiva apresentou os seguintes resultados: O aumento no número de células fez crescer os requisitos de memória e isso é demonstrado pelas razões da média de memória consumida de GD2/GD1: 2,05, 2,05 e 1,84 para as velocidades testadas; O consumo máximo(mínimo) GD1 em cada v: 110,84(110,83), 110.84(110,83) e 188.96(107,85); O consumo máximo(mínimo) GD2 em cada v: 231,32(226,80), 231,32(226,80) e 295,05(111,18); Diferença máxima, considerando a velocidade de 90 cm/s foi de: 183,87 MB. 16 RESULTADOS: MEMÓRIA
  17. 17. As médias de consumo de memória dos algoritmos de Viterbi- JD e Viterbi-JD-MTE foram menores que do algoritmo de Viterbi. Isso pode ser observado pelas razões das médias JD/V : GD1: 0,07; 0,14; 0.29 e 0,55 GD2: 0,03; 0,06; 0,14 e 0,30 Ainda se comparados os algoritmos de Viterbi-JD e Viterbi-JD- MTE existem situações em que há redução e situações em que há um acréscimo do consumo de memória; Um aspecto importante no algoritmo de Viterbi-JD-MTE foi a redução de memória do MOM obtida com a matriz de transição esparsa que ficou em: 90% na grade GD1 e 97% na grade GD2. 17 RESULTADOS: MEMÓRIA
  18. 18. Gráficos comparativos de memória(GD1 e GD2) entre os valores de w do algoritmo de Viterbi-JD X Viterbi: 18 GD1GD2 RESULTADOS: MEMÓRIA
  19. 19. Análise Estatística: O teste t de Student mostrou, que quando comparados os algoritmos de Viterbi-JD e Viterbi, para todas as grades, v e w, a hipótese alternativa foi aceita, ou seja, ; O mesmo ocorreu para a comparação de Viterbi-JD-MTE e Viterbi: ; Ainda testou-se estatisticamente as diferenças entre os algoritmos de Viterbi-JD e Viterbi-JD-MTE e a hipótese nula foi aceita nos seguintes casos: GD1: w=90 e v em (30, 60); GD2: w=90 e v=90. De forma geral o algoritmo de Viterbi-JD apresentou o menor consumo de memória. 19 RESULTADOS: MEMÓRIA
  20. 20. Os testes estatísticos para avaliar o desempenho em termos de tempo utilizados foram: 1. O tempo de processamento do Viterbi-JD é igual ao tempo do Viterbi; 2. O tempo de processamento do Viterbi-JD-MTE é igual ao tempo do Viterbi. 20 RESULTADOS: TESTES ESTATÍSTICOS SOBRE O TEMPO
  21. 21. 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; Na grade GD2, o algoritmo de Viterbi, utilizou 8,11s em média para processar uma observação; Outro aspecto importante foi a proporção de aumento no tempo de processamento da grade GD1 para a grade GD2 que chegou a aproximadamente 7,7; Esse aumento no tempo impossibilita o uso do Viterbi para localização mais precisa, ou seja, aumentar as células e reduzir sua área. 21 RESULTADOS: TEMPO
  22. 22. Em média os algoritmos de Viterbi-JD e Viterbi-JD-MTE se mostraram mais rápidos que o algoritmo de Viterbi; Mesmo nos tempos mais altos(máximos) os algoritmos JD são mais rápidos; Considerando as variações de tempo que houveram para o algoritmo Viterbi-JD, a maior diferença de tempo na grade GD1 foi de 32s na velocidade de 60 cm/s. Na grade GD2 a diferença ficou 242,87s na mesma velocidade; O algoritmo de Viterbi-JD-MTE apresentou melhor tempo que o algoritmo de Viterbi. Contudo se comparado com o algoritmo de Viterbi-JD apresentou um aumento de 49,74% de tempo. 22 RESULTADOS: TEMPO
  23. 23. Os gráficos a seguir apresentam um comparativo do tempo de processamento(GD1 e GD2) entre os valores de w do algoritmo de Viterbi-JD X Viterbi: 23 GD1GD2 RESULTADOS: TEMPO
  24. 24. Análise Estatística: O teste t de Student, quando comparados os algoritmos de Viterbi-JD e Viterbi, aceitou-se a hipótese alternativa para todas as velocidades, janelas e grades, ou seja, ; O mesmo ocorreu para a comparação dos algoritmos de Viterbi- JD-MTE e Viterbi: ; O uso de matrizes esparsas provocou um pequeno acréscimo de tempo no rastreamento utilizando o algoritmo de Viterbi-JD-MTE. No entanto, do ponto de vista estatístico esse acréscimo não causou perda no desempenho. A hipótese nula foi aceita em todas as grades, v e w; O ganho de tempo no processamento com as versões JD do algoritmo é significativo para o rastreamento de robôs. 24 RESULTADOS: TEMPO
  25. 25. Adotado modelo One-Slope Model(OSM) de Narzullaev e Park(2013): O modelo sugere: • Seleção de M pontos de referência (PRs) distribuídos no ambiente; • Realização de R leituras de RSSI para cada PR; • Definição de N pontos de predição (PPs) em cada célula com informações como: coordenadas (x,y) no plano cartesiano e o valor médio de RSSI do PR mais próximo; • Definição do valor de perda de sinal representado por γ; e • Aplicação da equação para cada PP; 25 METODOLODIA: EXPERIMENTOS DE CORREÇÃO
  26. 26. Foram configurados: a) R = 500 leituras de RSSI em cada PR; b) N = 500 pontos de predição (PPs); c) γ = 3 e γ = 5(SABRI et al., 2013). Somou-se ainda à equação o ruído aditivo que é amostrado da distribuição gaussiana N(0,σ); O valor adotado para U foi de 1,09 e a equação ajustada(XU et al., 2010): 26 METODOLODIA: EXPERIMENTOS DE CORREÇÃO
  27. 27. Laboratório com uma área total de 52,05m2 onde foram configuradas duas grades: • G1 com 28 células de 1m2; • G2 com 64 células de 0,36m2; 27 METODOLODIA: EXPERIMENTOS DE CORREÇÃO
  28. 28. 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; • 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: 28 METODOLODIA: EXPERIMENTOS DE CORREÇÃO
  29. 29. Para avaliar a correção dos algoritmos foram definidos os testes estatísticos a seguir(taxas de erro em %): 1. A taxa de erro, sem ruído, do Viterbi-JD é igual a taxa do Viterbi; 2. A taxa de erro, com ruído, do Viterbi-JD é igual a taxa do Viterbi; 3. A taxa de erro para o Viterbi, sem ruído, é igual a sua taxa com ruído; 4. A taxa de erro para Viterbi-JD, sem ruído, é igual a sua taxa com ruído. 29 RESULTADOS: TESTES ESTATÍSTICOS SOBRE A CORREÇÃO
  30. 30. Quanto a correção, a menor taxa de erro apresentada para o algoritmo de Viterbi foi de 0,85% na grade G1 para γ = 3 e v = 60 cm/s. A maior taxa de erro foi de 5,83% na grade G2 para γ = 3 e v = 90 cm/s; Já para o algoritmo de Viterbi-JD a menor taxa de erro foi de 1,46% na grade G1 para γ = 3, v = 60 cm/s e w = 180. A maior taxa de erro atingiu 6,23% na grade G2 para γ = 3, v = 90 cm/s e w = 90. 30 RESULTADOS: CORREÇÃO SEM RUÍDO
  31. 31. Gráficos comparativos, das taxas de erro, do Viterbi-JD na grade G1 e G2 sem ruído: w x Er 31 G1(γ = 3) G1(γ = 5) G2(γ = 3) G2(γ = 5) RESULTADOS: CORREÇÃO SEM RUÍDO
  32. 32. A menor taxa de erro apresentada pelo algoritmo de Viterbi foi de 3,12% na grade G1 para γ = 5 e v = 60 cm/s. O maior erro foi de 21,02% na grade G2 para γ = 3 e v = 90 cm/s; Para o algoritmo de Viterbi-JD a menor taxa de erro foi de 5,34% na grade G1 para γ = 3, v = 60 cm/s e w = 180. A maior taxa de erro atingiu 23,08% na grade G2 para γ = 3, v = 90 cm/s e w = 90. 32 RESULTADOS: CORREÇÃO COM RUÍDO
  33. 33. Gráficos comparativos, das taxas de erro, do Viterbi-JD na grade G1 e G2 com ruído: w x Er 33 G1(γ = 3) G1(γ = 5) G2(γ = 3) G2(γ = 5) RESULTADOS: CORREÇÃO COM RUÍDO
  34. 34. Análise Estatística: No teste t de Student, com ou sem presença de ruído, foi aceita a hipótese alternativa, ou seja, ; O que se percebe é que a taxa de erro no rastreamento com o algoritmo de Viterbi-JD foi efetivamente superior; As diferenças em termos de valores absolutos menor(maior) foram de: Sem ruído: menor de 0,25 na grade G2 para w = 180, v = 90 cm/s e γ = 5. A maior foi de 1,44 na grade G1 para w = 90, v = 60 cm/s e γ = 5; Com ruído: menor de 0,90 na grade G2 para w = 180, v = 90 cm/s e γ = 5. A maior foi de 3,94 na grade G2 para w = 90, v = 60 e γ = 3. O fato dessas diferenças serem pequenas em termos absolutos mostra que o incremento na taxa de erro foi muito menor do que o ganho observado no tempo e na memória. 34 RESULTADOS: CORREÇÃO
  35. 35. Os algoritmos de Viterbi-JD e Viterbi-JD-MTE promoveram uma redução significativa em termos de tempo e memória; A economia de memória dos algoritmos baseados em janela ficou na faixa de 40% e 90% para uma redução de 70% a 85% no tamanho da janela. A economia de tempo ficou na faixa de 70% a 90% para a mesma redução no tamanho da janela; No entanto, na grade GD2, o tempo mínimo para processar uma observação é superior a 2 segundos para os algoritmos de Viterbi-JD e Viterbi-JD-MTE, dificultando seu uso em uma situação de rastreamento real; Um fator que influencia o tempo e a memória é o tamanho da janela: w. Isso é apoiado pela forte correlação linear entre o w e as demais variáveis: mínimo de 0,945; Realizando um regressão linear nos dados de tempo da grade GD2 para a v = 30 cm/s determina a expressão: t = 11,6w + 264. A partir disso é possível mostrar que para produzir respostas a cada 0,90s basta usar w = 30. 35 SÍNTESE DOS RESULTADOS
  36. 36. 36  A correlação linear também é forte entre os valores de w e a taxa de erro: mínimo de -0,940;  Uma análise de regressão em ambas as grades e para todo v e w, o maior valor absoluto da inclinação da função linear E = aw + b não u ltrapassa 0,008. Assim, o erro cresce 8 milésimos quando w decresc e em uma unidade;  Também é possível perceber que a presença do ruído influencia neg ativamente a correção das hipóteses de rastreamento; • Isto fica evidente quando se nota que o teste t de Student aceitou a hipótese alternativa, de que o erro era maior na presença de ruído. SÍNTESE DOS RESULTADOS
  37. 37. 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; Ambos os algoritmos baseados em janelas deslizantes apresentaram um erro um pouco maior do que aquele produzido pelo algoritmo de Viterbi; Contudo, em todos os casos, o emprego dos algoritmos Viterbi-JD e Viterbi- JD-MTE não levou a um incremento substancial do erro na determinação do rastro;  A metodologia experimental utilizada pode ser reproduzida em outros trabalhos. 37 CONCLUSÕES
  38. 38. Verificar a possibilidade de integrar informações coletadas em diversos tipos de sensores no procedimento proposto com o objetivo de melhorar a precisão do rastreamento; Abordar alguns aspectos práticos do rastreamento de agrobots em ambientes reais, nos quais há presença de ruído nos dados de RSSI e a variabilidade do sinal em decorrência do crescimento das plantas; Estudar o desempenho e a correção de implementações paralelas do Viterbi-JD combinadas com o aumento do número de pontos de acesso; 38 TRABALHOS FUTUROS
  39. 39. 39 OBRIGADO!

×