Localização de Pessoas e Objetos ( Projeto Location Stack) Francisco Eduardo Moura PUC-Rio 2003.2 [email protected] Localização de Pessoas e Objetos • Introdução • Sistemas de localização • Location Stack Sistemas de Localização • Motivação – Avanço da Tecnologia • Componentes mais baratos • Avanço das tecnologias sem fio – Surgimento de aplicações que demandam saber sobre a localização de pessoas e objetos (principalmente computação ubíqua) Sistemas de Localização • Tecnicas – Triangulação • GPS – Proximidade • Infravermelho , Ultrasom – Analise de cena/ambiente • Cameras digitais Sistemas de Localização • Descrição da Localização – Coordenadas • Simbólica – Ex: dentro de um quarto • Física – Ex : 74º15’ N e 65º23’W Sistemas de Localização • Descrição da Localização – Referência • Relativa :Cada objeto têm seu próprio framework/referência – Ex: A 10 metros do prédio Cardeal Leme • Absoluta : Objetos compartilham uma mesma referência – Ex: Sala 246 , 2º andar Sistemas de Localização • Computação da Localização – No objeto a ser Localizado • Infraestrutura não sabe onde o objeto está, depende dele divulgar a sua posição • Privacidade garantida – Pela infraestrutura • Infraestrutura sabe onde o objeto se localiza • Privacidade depende de controle de acesso • Necessária quando o objeto não tem poder computacional Sistemas de Localização • Precisão e Certeza – Sensor Fusion • Junção de várias tecnologias – Adaptative Fidelity • Variação da precisão de acordo com falhas ou recursos de energia por exemplo • Redes de sensores Ad Hoc Sistemas de Localização • Escalabilidade – Área de cobertura por unidade de infraestrutura – Numero de objetos que podem ser localizados por item de infraestrutura por intervalo de tempo Sistemas de Localização • Identificação de objetos – Mais usual – GUID – Global Unique Ids – Alguns sistemas não têm essa capacidade • Ex : GPS Sistemas de Localização • Custo – Tempo • Instalação • Administração – Espaço • Tamanho da infraestrutura • Tamanho do Hardware – Capital Sistemas de Localização • Limitações – Não funcionam em todos os lugares – Não funcionam em todas as condições do ambiente/climáticas – Dependem da Tecnologia Location Stack • • • • Abstrações de design Vocabulário comum Framework Comparativo Implementação emprega técnicas probabilísticas que possibilitam a fusão de dados de vários sensores , provendo uma interface comum as aplicações Location Stack • Motivação – Computação Ubíqua • Ex: A casa responder a atividades de seus moradores • Ex: Interação com dispositivos a nossa volta • Ex: Log de procedimentos experimentais Location Stack • Motivações – Sistemas normalmente fechados • Sistema normalmente construído em um único bloco • Previne contra erros de precisão e de tempo – Maior difusão de software reusável – Sensor Fusion – Hardware mais barato Location Stack • Modelo em camadas – Modelo deriva das seguintes questões: • Há tipos de medidas fundamentais – – – – Distancia Ângulo Proximidade Todos apresentam incertezas e precisão Location Stack • Modelo em camadas – Modelo deriva das seguintes questões: • Há modos padrões de combinar medidas – Ex: distância e proximidade, localização e ângulo • Há modos padrões de relacionar objetos – Proximidade – Contido em uma região – Formação geométrica Location Stack • Modelo em camadas – Modelo deriva das seguintes questões: • Incerteza tem que ser preservada – A aplicação deve ser responsável por decidir o que fazer • Aplicações normalmente estão relacionadas a atividades – Informações de localização – Informações de contexto – Machine Learning Location Stack Location Stack • Sensores – Sensors – Hardware e drivers – Detecção de fenômenos físicos – Exporta dados em uma variedade de formatos Location Stack • Medições – Measurements – Transcreve os dados recebidos pela camada de sensores em medidas : angulos, distancia, proximidade – Cada medida apresenta uma incerteza – Exporta um stream de medidas e suas incertezas Location Stack • Fusão – Fusion – Funde continuamente as medidas recebidas da camada abaixo, utilizando uma representação probabilistica da localização dos objetos – Normalmente é responsável por tratar a resolução da identidade dos objetos – Não há uma representação particular de coordenadas adotada – Exporta uma interface para eventos e/ou queries sobre a localização dos objetos e sua incerteza. Location Stack • Relações Espaciais – Arrangements – Prove operadores para relacionar dois ou mais objetos – Exporta uma interface para queries e/ou enventos para inferir o relacionamento entre dois ou mais objetos Location Stack • Fusão Contextual – Contextual Fusion – Combina informação sobre localização ou relacionamento espacial com outras informações contextuais não ligadas a localização: Temperatura Lista de tarefas Exporta uma interface para que a plicação reconheça atividades. Location Stack • Atividades – Activities – Categoriza informações de contexto em estados semânticos definindo a interpretação da aplicação sobre o mundo – Machine Learning Location Stack • Intenções – Intentions – Desejo dos usuários do sistema • O que pretende os usuários quando utilizam o sistema? Location Stack • Implementação de referência – Sensores utilizados: • Infravermelho (Versustech) • Crickets de ultra som e badges (MIT) • Lasers (Sick) Location Stack • Implementação de referência – Medidas: • Infravermelho e Ultrasom mediam localização, mas de forma esparsa, e identificam objetos • Laser mede localização com uma maior precisão, mas não infere identidade Location Stack • Implementação de referência – Fusão • Maior contribuição da implementação de referência • Representação probabilística da localização permite a fusão de diferentes tecnologias de sensores • Inspiração veio da robótica que usa tal abordagem, com robôs que utilizam vários sensores diferentes. Location Stack • Implementação de referência – Fusão • Utilizaram Bayesian Filters – Particle Filters • Multi-hypotetic tracking • Voronoi Tracking • Provê testes para proximidade de objetos e containment Location Stack • Implementação de Referência – Java – Sistema distribuído • Mensagens assíncronas utilizando XML • Chamadas de processo remotas • Estendem classes do projeto Intel RAIN Location Stack • Implementação de Referência – Um único serviço de fusão sendo executado em um PC de 1.8 GHz e 512MB de memoria: • Fez tracking de multiplos objetos (mais de 40) • Taxa de duas medidas por segundo por objeto – Maior performance pode ser alcançada utilizando múltiplos serviços de fusão Location Stack • Implementação de Referência Location Stack • Exemplo de separação em camadas – Microsoft’s Easy Leaving Location Stack • Easy Living – Sensores • • • • Cameras Sensores de pressão Leitor de impressão digital Teclado para login Location Stack Easy Leaving – Medidas • Cameras provem localização espacial de vultos com forma humana • Sensores de pressão indicam seu estado binariamente, se á algo em cima deles • Teclado e leitor de impressão digital são usados para a identificação da pessoa Location Stack • Easy Leaving – Fusão • Percebe onde há pessoas no ambiente, guarda apenas um histórico recente da posição das pessoas • Infere a identidade da pessoa pelo login e pelos sensores de pressão • Indica a localização da pessoa em um plano 2-D Location Stack • Easy Leaving – Arrangements • Utiliza um banco de dados SQL • Entidades são descritas por posições relativas • Faz apenas um tracking instantâneo, que é atualizado pelas informações vindas da camada abaixo Location Stack • Easy Leaving – Fusão contextual • Outras informações poderiam ser associadas ao ID da pessoa ou entidade Location Stack • Easy Living – Atividades • Behavior Engine – verifica o banco de dados que representa o mundo (Camada de Arrengemens e Fusão Contextual) e envia comandos aos dispositivos presentes nos ambientes. Location Stack • Perguntas???? Muito Obrigado!!!