A Survey on Real-time Constraints for Ambient Intelligence

Transcrição

A Survey on Real-time Constraints for Ambient Intelligence
A Survey on Real-time Constraints for
Ambient Intelligence
Ivan Luiz Salvadori and Patricia Della Méa Plentz
Pós-Graduação em Ciência da Computação - PPGCC
Departamento de Informática e Estatística - INE
Universidade Federal de Santa Catarina - UFSC
Florianópolis, Santa Catarina, Brasil
[email protected],[email protected]
Resumo Através de tecnologias e serviços, Ambient Assisted Living
busca proporcionar maior qualidade de vida para pessoas idosas ou pessoas que dependem de algum tipo de assistência. Esse artigo apresenta
uma resenha de artigos que utilizam diferentes tipos de abordagens e
aplicações, que são apresentadas, comparadas e avaliadas.
1
Introdução
O objetivo desse artigo é fazer uma revisão de trabalhos que abordam
sistemas para ambientes inteligentes com foco em AAL, sob a perspectiva
de sistemas de tempo real. Os trabalhos são organizados em três categorias: Human Behavior Analysis and Recognition, Plataforms, Models,
Sensors and Devices e Service-Oriented Communication. O primeiro esforço é apresentar trabalhos relevantes para analise e reconhecimento de
atividades realizadas por seres humanos em um ambiente inteligente. As
atividades são capturadas por diversos tipos de sensores que constituem
uma plataforma capaz de reagir a determinados estímulos. Entretanto,
é necessário estabelecer mecanismos de comunicação, pois os sensores e
dispositivos embarcados são distribuídos pelo ambiente. Grande parte das
plataformas utiliza SOA (arquitetura orientada a serviços) para trasnformar os receptores e atuadores do ambiente em provedores e clientes de
serviços.
Sistemas AmI são fortemente influenciados pelo domínio de aplicação,
pois diferentes domínios exigem diferentes características de reconhecimento de atividades, sensores e restrições temporais. Sendo assim, são
apresentados os estudos de caso e protótipos dos trabalhos selecionados,
bem como suas restrições temporais.
2
Real-time Systems
O termo Tempo Real está sendo amplamente utilizado por uma sociedade
que busca rapidez nas comunicações, decisões e nas suas atividades cotidianas. Mesmo que esse termo não seja utilizado com a precisão conceitual
necessária, a sua utilização torna clara a importância que o tempo exerce
sobre os sistemas computacionais. Exemplos de aplicações que possuem
comportamentos diretamente ligados ao tempo são: sistemas de tráfego
aéreo e ferroviário, controle de usinas de energia, sistemas de automação
industrial, além de sistemas embarcados em aviões, carros e na robótica
em geral. Para garantir que os sistemas de tempo real respeitem as restrições temporais impostas, é necessária a utilização de técnicas adequadas,
que compreendem algoritmos e metodologias não suportados pelas abordagens tradicionais.
Sistemas de tempo real são sistemas computacionais que reagem a estímulos do ambiente em prazos definidos. Nesse tipo de sistemas, além
da integridade lógica dos resultados, é esperado que as reações ocorram
dentro de um prazo estipulado. Reações que ocorrem fora do prazo especificado podem perder a utilidade, ou em casos mais críticos, podem
representar uma ameaça. As reações podem ser vistas como serviços oferecidos a usuários humanos ou computacionais. Dessa forma, sistemas de
tempo real devem ser capazes de oferecer garantias de correção temporal
a todos os serviços que apresentam restrições temporais.
O conceito de previsibilidade é fundamental para os sistemas de tempo
real, pois permite conhecer o comportamento do sistema antes da sua
execução. Este conceito implica que somente o desempenho computacional
não é suficiente para atender os requisitos temporais das atividades. Para
alcançar a previsibilidade, deve-se considerar a pior situação de carga
computacional, juntamente com os tipos e frequências das possíveis falhas.
Hardware, sistemas operacionais e linguagens de programação específicos
para sistemas de tempo real também são fatores importantes para garantir
a previsibilidade, uma vez que as abordagens tradicionais desses elementos
são fontes de não determinismos.
Os sistemas de tempo real podem ser classificados em Sistemas de
Tempo Real Não Críticos (Soft Real Time Systems) e em Sistemas de
Tempo Real Críticos (Hard Real Time Systems). Nos sistemas não críticos
as consequências de uma falha, em razão do tempo, são da mesma ordem
de magnitude dos benefícios do sistema em operação. Nos sistemas críticos, uma falha temporal ultrapassa significativamente os benefícios do
sistema, originando uma falha catastrófica.
Aplicações de tempo real, de forma geral, estão sujeitas a prazos. Dessa
forma, as tarefas que constituem essas aplicações devem ser concluídas
antes de um determinado deadline. Outra característica importante das
tarefas em sistemas de tempo real diz respeito à regularidade de ativações (execuções). As Tarefas Periódicas são ativadas dentro de intervalos
regulares em uma sequência infinita. As Atividades Aperiódicas ou Assíncronas possuem característica aleatória, pois são ativadas por meio de
eventos.
3
Ambient Intelligence
Esta seção apresenta uma contextualização de AmI e também AAL. AAL
é um subconjunto de AmI.
[8] Ambient Intelligence and Smart Environments: A State of the Art.
[20] Policies Production System for Ambient Intelligence Environments.
[28] System of Systems.
Falar sobre AAL. [27] Relevance and perspectives of AAL in Brazil.
Um conceito chave é a coordenação dos dispositivos para formar um
ambiente inteligente.
[5] A Survey on Ambient Intelligence in Healthcare.
4
Human Behavior Analysis and Recognition
[32] A survey on ontologies for human behavior recognition.
[24] Using Temporal Logic and Model Checking in Automated Recognition of Human Activities for Ambient-Assisted Living. Segundo Magherini et al. [24], o reconhecimento automático das atividades diárias tem
um papel fundamental para melhorar a qualidade de vida das pessoas
idosas ou pessoas que necessitam de algum tipo de acompanhamento. O
reconhecimento das atividades pode ser realizado por meio de sensores
que capturam informações de ambientes monitorados. Entretanto, existe
um gap semântico entre os dados de baixo nível capturados pelos sensores, e a interpretação de auto nível necessária para a execução de um
serviço de saúde específico. Existem diferentes maneiras de classificar as
técnicas de reconhecimento de padrões. Entre elas estão: abordagens baseadas em aprendizado e baseadas em especificação, além das abordagens
estatísticas, sintáticas e baseadas em descrição. Este artigo apresenta uma
nova abordagem baseada em descrição onde o padrão de comportamento é
caracterizado, em tempo real, através de fórmulas de lógica temporal proposicional e comparado com fluxos de eventos identificados em ambientes
monitorados. O artigo apresenta um estudo de caso onde uma senhora é
monitorada por diversos tipos de sensores instalados em sua Smart Home.
Os sensores capturam as atividades executadas e um sistema auxilia na
execução, além de monitorar situações de risco, emitindo mensagens para
pessoas responsáveis em caso de irregularidades. Magherini et al. [24] utilizam uma abordagem baseada em descrição que define padrões de comportamento através de lógica temporal proposicional (Real-time Temporal
Logic). Uma ontologia é utilizada para descrever as atividades diárias realizadas por pessoas. Os autores demonstram como a lógica é capaz de
especificar padrões reais de ADLs (atividades básicas) que podem ser automaticamente identificadas em um ambiente monitorado por sensores.
Os autores propõem uma classificação para ADL, que categoriza as atividades em Atividade, Ação e Observação. Atividade é uma tarefa que busca
atingir um objetivo através de vários passos, em diferentes ordens de execução, por exemplo, fazer o café da manhã. Ação representa um passo
de uma Atividade, por exemplo, esquentar a água. Observação é o monitoramento da sequência de passos executados durante uma determinada
Ação.
[7] Human behavioural analysis with self-organizing map for ambient
assisted living. Appiah et al. [7] apresentam uma proposta para sistemas inteligentes de vigilância. Este trabalho apresenta um sistema capaz
de caracterizar diferentes comportamentos, aprender localizações, além
de detectar eventos específicos, como por exemplo queda de pessoas, em
tempo real, através de um modelo probabilístico. O sistema executa em
um hardware de baixo custo, que contém uma câmera capaz de capturar
imagens em um ângulo de 105 graus. O principal objetivo do sistema é
identificar a presença de uma pessoa, e determinar a sua localização em um
ambiente, com o menor consumo de energia. Appiah et al. [7] apresentam
uma abordagem fortemente focada no baixo consumo de energia. O principal objetivo do trabalho é ser capaz de determinar a posição de uma
pessoa em um ambiente monitorado, com o menor consumo de energia
possível. O sistema é subdivido em três subsistemas. O primeiro subsistema, denominado Detection sub-system possui as fases de identificação
dos limites do ambiente, treinamento e retreinamento, e por fim, a fase de
identificação de objetos. Quando a câmera sofre alguma movimentação ou
existem muitos objetos no ambiente monitorado, é necessário que ocorra
o treinamento ou retreinamento do sistema. Os outros dois subsistemas
são denominados Behavioural sub-system e Activity level Estimator.
[10] A Vision-Based System for Intelligent Monitoring: Human Behaviour Analysis and Privacy by Context.
[3] Dynamic sensor data segmentation for real-time knowledge-driven
activity recognition. Okeyo, Chen e Wang [29] apresentam uma abordagem híbrida que considera aspectos ontológicos e temporais para a modelagem e reconhecimento de atividades derivadas da abordagem baseada
em aprendizado. São apresentados os detalhes da modelagem da ontologia que descreve as atividades e seus relacionamentos. As atividades são
classificadas em ações, atividades simples e atividades compostas. Uma
ação é indivisível e atômica. Uma atividade simples é uma sequência ordenada de ações. Atividades complexas correspondem à uma coleção de
duas ou mais atividades simples que ocorrem em um determinado intervalo de tempo. A abordagem proposta combina o uso de ontologias e
conhecimentos temporais que representam as interdependências entre as
atividades. A combinação dos formalismos ontológicos e temporais de representação do conhecimento, proporciona uma forma mais adequada para
expressar a representação de atividades complexas. O trabalho apresenta
a validação da proposta baseada na construção de um protótipo capaz de
reconhecer atividades simples e compostas. Okeyo, Chen e Wang [3] desenvolveram um abordagem híbrida para a modelagem e reconhecimento
de atividades compostas que combina ontologias e conhecimento temporal
para criação de modelos inter-relacionados através de relações temporais.
A abordagem baseada em dados é amplamente explorada em mineração
de dados e aprendizado de máquina, além de ser capaz de manipular informações temporais de atividades e seus relacionamentos. Entretanto, a
abordagem baseada em dados necessita de uma bases de dados significativamente grande, capaz de representar todas as variações das atividades.
Por outro lado, a abordagem baseada em conhecimento apresenta todos
os formalismos necessários para desenvolver modelos de atividades, que
podem ser processados através de inteligência artificial para realização de
inferências e reconhecimentos. Os autores utilizam uma abordagem híbrida que combina as abordagens baseadas em dados e em conhecimento.
A principal vantagem da abordagem híbrida é a capacidade de modelagem
e reconhecimento de atividades enriquecidas com informações de domínio.
[33] Online recognition of human activities and adaptation to habit
changes by means of learning automata and fuzzy temporal windows.
Diversas técnicas de reconhecimento de padrões são descritas pelos
trabalhos. Dentre elas estão as técnicas baseadas em aprendizado (ou conhecimento), especificação, estatística (ou baseada em dados), sintaxe,
descrição e híbrida. A abordagem estatística apresenta bons resultados
com atividades sequenciais, além de ser capaz de representar as restrições
temporais. Entretanto, a abordagem estatística necessita de grandes quantidades de informações. A abordagem sintática representa as atividades
humanas através de cadeias de símbolos que são interpretadas por algoritmos de análise. Entretanto, a abordagem sintática exige uma definição
completa de todas as possíveis regras de formação para cada atividade,
especialmente para atividades que podem ser executadas em ordens diferentes. A abordagem baseada em descrição busca especificar as atividades
executadas por pessoas através de propriedades que devem ser satisfeitas
em diferentes execuções. A abordagem baseada em aprendizado exige que
engenheiros do conhecimento, juntamente com especialistas de um determinado domínio, especifiquem modelos de atividades utilizando técnicas
de engenharia do conhecimento. A abordagem híbrida combina a abordagem baseada em dados com a abordagem baseada em conhecimento. As
diferentes abordagens e aplicações utilizadas pelos trabalhos selecionados
pode ser vistas na Tabela 1.
Tabela 1. Principais abordagens e aplicações
Trabalho Selecionado
Appiah et al. [7]
Dunkel, Bruns e Stipkovic [11]
Magherini et al. [24]
Okeyo, Chen e Wang [29]
Surie, Partonia e Lindgren [35]
4.1
Abordagem
Probabilística
Processamento de eventos
Descrição (lógica temporal)
Conhecimento+dados (híbrido)
Visão Computacional
Ambiente
Smart Home
Smart Phone
Smart Home
Smart Home
Smart Kitchen
Estudos de Caso e Protótipos
Magherini et al. [24] implementam um protótipo chamado Automated Recognizer of ADLs capaz de identificar atividades de uma única pessoa. O
estudo de caso fictício monitora uma senhora idosa que mora sozinha em
uma casa que foi transformada em Smart Home por meio da instalação de
diversos sensores. Os sensores são capazes de identificar portas abertas,
presença de pessoas na casa, toque de telefone, além de situações de perigo
como forno ligado, dentre outras. Quando o sistema identifica situações de
risco que permanecem por um determinado tempo, o sistema envia mensagens de texto informando que a senhora monitorada está em perigo. A
Smart Home é capaz de monitorar se as medicações que a pessoa deve
tomar foram tomadas.
Com o objetivo de treinar o sistema, Appiah et al. [7] instalaram câmeras em quatro salas diferentes, que capturaram imagens durante duas
semanas, sem nenhuma interrupção. Para testar as características do sistema, um dos quartos utilizados possui uma ampla janela que recebe luz
solar. Durante os finais de semana, o sistema realizou seis vezes o processo de retreinamento. Este fato se deve exclusivamente por mudanças
na iluminação e por reflexos na janela, uma vez que durante esses dias
não houve registro de uso nas salas monitoradas. Durante a execução do
sistema, foi possível identificar as áreas que mais sofreram movimentações.
Falta analizar [10]
Okeyo, Chen e Wang [3] desenvolveram um protótipo para o reconhecimento de atividades simples e compostas. O protótipo é constituído de
uma ontologia ADL e também por um sistema multi-agente desenvolvido
em Java, denominado JADE. Quatro diferentes tipos de agentes foram
utilizado no experimento. O primeiro tipo de agente é responsável por
receber os dados dos sensores e segmentar os fluxos de informação. O
segundo agente é responsável por gerenciar a execução de inferências de
atividades, além de descrever e sumarizar as atividades. O terceiro agente
deve realizar a agregação das atividades simples em atividades compostas, com base nas regras previamente estabelecidas. Por fim, o quarto
agente realiza as inferências sobre as atividades. A ontologia ADL utilizada no protótipo foi desenvolvida com o padrão OWL 2 com o editor
Protégé. Para possibilitar a execução do experimento, foi gerada uma base
de informações ADL através do synthetic data generator, resultando em
dados relacionados a sete tipos de atividades, como por exemplo, MakeTea, MakeCoffee, MakeChocolate, MakePasta, WatchTelevision, HaveBath, WashHands, dentre outras. A geração dos dados resultou em oito
semanas de atividades, totalizando 104 atividades.
Falta analizar [33]
4.2
Restrição Temporal
Magherini et al. [24] desenvolveram uma linguagem para especificar que
uma determinada sequência de observações pode ser considerada como a
execução de uma Ação ou Atividade. A lógica temporal aplica formalismos
para possibilitar inferências sobre a ordenação e temporização de eventos.
Diversas formulações foram propostas para atender domínios específicos,
como sistemas metroviários e aéreos. Entretanto, segundo [24], é preciso
ampliar os modelos anteriores para atender as exigências do contexto de
ADLs. A abordagem combina operadores booleanos e temporais. Os operadores temporais podem assumir os seguintes valores: Y (Yesterday), O
(Once), H (Historically) e S (Since). A restrição de tempo real (Real-time
constraints) considera o tempo esperado entre diferentes ações, através do
uso de anotações nos operadores temporais.
Appiah et al. [7] utilizam mecanismos para verificar medidas de similaridade através de métodos de clusterização hierárquica dinâmica. Esse
mecanismo utiliza o modelo gaussiano de dispersão probabilística, que
avalia os dados capturados por um determinado período de tempo para
realizar o processo de treinamento do sistema. Os autores utilizam o termo
real-time/on-line para descrever o processo de treinamento de detecção de
atividades anormais, cujo o sistema é capaz de desempenhar.
Falta analizar [10]
Okeyo, Chen e Wang [3] citam que, de forma geral, as atividades executadas por seres humanos são caraterizadas por informações fortemente
vinculadas ao tempo, como por exemplo, intervalos entre atividades, duração, padrões de repetição, dentre outros. As atividades modeladas e
reconhecidas pela abordagem proposta é capaz de manipular diversos
tipos de informações temporais. A abordagem apresenta o conceito de
tempo de transição entre atividades, onde é possível manipular atividades que devem ser executas respeitando uma determinada precedência e
também com uma janela temporal. Por exemplo, o padrão WashHands0, MakePastaAndMakeTea-600 define que a primeira atividade deve ser
WashHands. A segunda atividade definida como MakePastaAndMakeTea600, deve ocorrer 600 segundos após a finalização da atividade WashHands.
Falta analizar [33]
5
Plataforms, Models, Sensors and Devices
[17] A Survey on Cache Management Mechanisms for Real-Time Embedded Systems.
[8] diz que é mais importante estudar o processo de integração das tecnologias existentes, que desenvolver mecanismos especificos para um único
dispositivo. Isso enfatiza a importancia das plataformas e middlewares.
Além disso as plataformas oferecem um cenário de aplicação para AmI
(eu to dizendo isso).
[6] Evaluation of AAL Platforms According to Architecture-Based
Quality Attributes. Apresenta uma avaliação das plataformas para AAL
mais utilizadas. A avaliação tem foco nas proriedades não funcionais. O
trabalho identifica e descreve um conjunto de atributos de qualidade relevantes ao contexto de AAL. Os atributos de qualidade identificados são:
Recoverability Encryption Mechanisms User Role Security Profile
Changeability Installability Adequacy for Small Devices Resource Consumption Communication Overhead Presence of Single Point of Failure: A
single point of failure corresponds to a system component that, if it fails,
will compromise the proper functioning of the system. Safety Patterns
Usage: Safety patterns are measures applied to the system architecture
that will assure that the system will always be in a safe state. Examples
of safety patterns are Homogeneous/Heterogeneous Redundancy, Watch
Dog, and Triple Modular Redundancy. A maioria das plataformas utilizam
a abordagem SOA. Dessa forma, seria importante aprofundar os estudos
em SOA Real Time. Além de SOA, algumas abordagens são baseadas em
ontologias. Ontologias são utilizadas para facilitar a interoperabilidade e
compartilhamento de conteúdo entre os diferentes serviços. A plataforma
OpenALL além de possuir uma ontologia compartilhada, utiliza descoberta de serviços semânticos. Sendo assim, seria importante pesquisar sobre os impactos de tecnologias semânticas em sistemas de tempo real.
Os atributos de qualidade que mais se aproximam de sistemas de
tempo real são os relacionados à categoria SAFETY (Os dois ultimos
atributos em destaque). Com exceção apenas da plataforma UniversAAL,
todas as outras plataformas apresentam pontos que resultam na falha de
todo o sistema (Presence of Single Point of Failure). Aponta que a utilização de safety patterns não é adequadamente considerada, mesmo conhecendo os riscos que as possíveis falhas podem resultar na integridade
física das pessoas assistidas.
[25] Ambient Assisted Living Healthcare Frameworks, Platforms, Standards, and Quality Attributes.
[38] OpenCare project: An open, flexible and easily extendible infrastructure for pervasive healthcare assisted living solutions.
[12] HYDRA: A Development Platform for Integrating Wireless Devices and Sensors into Ambient Intelligence Systems. Hydra is also a serviceoriented platform, but it intends to support the develop- ment of AAL systems that operate in environments with limited resources, such as energy,
memory, and computational processing (Hydra Project, 2011).
Hydra is a service-oriented platform built for operating in environments with limited resources, such as energy, memory, and computational
processing. It is a peer-to-peer based system that offers, among others,
mechanisms for allowing (Antonino2011).
[2] The universal Reference Model for AAL. UniversAAL includes a
middleware and a set of general-purpose components; it also includes a
runtime-support environment, development support, and community support (training and an online store of AAL services) (UniversAAL, 2011).
UniversAAL is based on a service-oriented architecture that reuses
many components of PERSONA. The platform includes three main parts:
(i) a runtime-support environment that provides core services for the execution of AAL services, (ii) a development support that provides documentation, tools, and development resources, and (iii) community support, including training and an online store, a one-stop shop for AAL
services and applications (Antonino2011).
[23] A Reactive and Proactive Approach for Ambient Intelligence. Segundo os autores, não existe suporte adequado em sistemas de AAL para
incorporar comportamentos reativos e proativos. Dessa forma, este artigo
aborda questões para o processamento de eventos para detectar e predizer
siatuações futuras. O sistema proposto é capas de tomar decisões baseadas em evidencias que demonstram a possibilidade de acontecimento de
situações futuras. O sistema utiliza dados capturados pode sensores que
são processados semanticamente para gerar entidades que caracterizam o
estado atual do ambiente. As ações executadas pelo sistema são implementadas através de Web Services implandados diretamento em dispositivos
físicos como smartphones. Este artigo analisa os estudo de caso de pessoas idosas que devem tomar uma determinada medicação. O sistema deve
ser capa de monitorar essa atividade e agir proativamente para garantir
a execução das atividades necessárias, garantindo a saúde das pessoas
monitoradas. A abordagem proposta utiliza o conceito de Situation as a
Service. Através de aplicações pervasivas, são coletadas informações sobre situações situações que são importantes que necessitam que alguma
ação seja tomada. Além disso, as sitações coletadas são associadas à informações contextuais necessárias para a tomada de decisão. O sistema é
baseado na arquitetura orientada a serviços com um complexo processamento de eventos auxiliado por um modulo proativo. O modulo preditivo
possui o conhecimento sobre as possíveis ações proativas que podem ser
tomadas diante de uma situação adversa. Após uma etapa de treinamento,
o sistema pode ser utilizado para capturar informações, processar eventos que correspondem a situações atuais do ambeinte e executar ações
proativas para evitar situações indesejadas. OBS: Os autores utilizam o
termo real time para caracterizar a coleta de informações de forma online.
Não existe nenhuma garantia que as ações serão tomadas em tempo adequado. Existe a preocupação apenas de identificação dos comportamentos
em tempo adequado. Está faltando essa premissa de atuação com deadline
definidos. O uso de cameras IP e arquitetura SOA é mais um reforço para
pesquisas em Web Real-Time.
[11] Event-based smartphone sensor processing for ambient assisted
living. Dunkel, Bruns e Stipkovic [11], apresentam uma abordagem inovadora para o processamento de dados gerados por sensores presentes em
smarphones. A abordagem realiza o processamento de eventos complexos
diretamente no smartphone. A utilização de smartphones nesse contexto se
justifica pela possibilidade de utilizar diversos tipos de sensores presentes
no dispositivo, bem como utilizar sensores externos conectados via bluetooth. A abordagem proposta realiza a combinação de diversos sensores, que
produzem um fluxo contínuo de dados, que são associados à um contexto
específico de um domínio de aplicação. O artigo apresenta um estudo de
caso onde uma pessoa idosa sofre uma queda, e como o sistema é capaz
de identificar esse evento complexo. Dunkel, Bruns e Stipkovic [11] utilizam uma abordagem que realiza o processamento de eventos complexos
(CEP). Eventos complexos realizam o processamento de grandes volumes
de informações contínuas (streams). O processamento de eventos complexos busca identificar padrões de eventos que podem ser relacionados a um
conceito de um domínio específico. Agentes de processamento de eventos
(EPA) são componentes que possuem um conjunto de regras específico que
podem ser interligados à uma rede de processamento de eventos (EPN),
que permite a comunicação entre diferentes agentes. Diversas abordagens
utilizam os sensores de dispositivos móveis para capturar eventos, porém
o processamento é realizado por um servidor. Os autores propõem uma
abordagem onde o processamento ocorre no próprio dispositivo móvel. A
abordagem manipula eventos em diferentes níveis de abstração. O nível
mais baixo de abstração é a informação originada pelo sensor. O próximo
nível é a transformação do evento do sensor para um evento de domínio,
onde o evento é enriquecido com informações externas. o nível mais alto
de abstração ocorre quando um evento de domínio é sintetizado para um
evento de comportamento. Nesse nível de abstração, é possível identificar um determinado comportamento executado pela pessoa portadora do
dispositivo móvel.
[35] Human Sensing Using Computer Vision for Personalized Smart
Spaces. Surie, Partonia e Lindgren [35] buscam melhorar a experiência na
execução de atividades cotidianas, através do reconhecimento de diferentes pessoas, bem como seus padrões de comportamento. Dessa forma, é
possível aplicar diferentes ações para diferentes pessoas, atendendo diferentes expectativas. Entretanto, para melhorar a experiência das pessoas
é preciso que as informações sejam identificadas em tempo real. Esse tra-
balho apresenta uma infraestrutura baseada em visão computacional para
o monitoramento de pessoas em ambientes Smart. O artigo apresenta um
estudo de caso, onde uma cozinha é capaz de ajudar seus ocupantes com
as suas limitações. Neste exemplo, as pessoas executam atividades que
abrangem a preparação de um café da manhã. Para identificar os ocupantes da cozinha, o sistema utiliza o Microsoft Kinect. O sistema realiza os
processos de identificação e reconhecimento de face, analisando as características físicas como olhos, nariz, lábios, etc. Surie, Partonia e Lindgren
[35] apresentam mais detalhes relacionados a identificação de pessoas que
estão em um Smart Space. O foco está nos mecanismos para identificar e
diferenciar os ocupantes, onde os autores apresentam várias abordagens,
como por exemplo, biometria, reconhecimento de voz, postura corporal,
dentre outras. O reconhecimento de pessoas necessita identificar em qual
posição do ambiente as pessoas estão. Entretanto, a abordagem que utiliza
câmeras RGB tem dificuldades em reconhecer pessoas devido as grandes
variações de posições possíveis que os ocupantes podem realizar. Desafios
maiores estão presentes quando é necessário reconhecer movimentos faciais, onde variações de iluminação, distância da câmera e posição do rosto
exercem grande impacto no processe de reconhecimento. Uma alternativa
é o reconhecimento de pessoas através da identificação de seus objetos
pessoais, uma vez que o processo de reconhecimento de objetos, em muitos casos é um processo mais simplificado. A abordagem proposta pelos
autores combina o reconhecimento facial e postural dos ocupantes. A fusão de informações foi fator fundamental para garantir bons resultados,
mesmo quando a pessoa monitorada não se encontra em posição frontal a
câmera. Mesmo com a captura de imagens em mais de um canal, quando
duas pessoas estão sendo monitoras simultaneamente, a abordagem encontrou diversas ocorrências de confusão, principalmente quando as duas
pessoas se aproximavam uma da outra. Nesta situação, o reconhecimento
facial é mais adequado para identificar e diferenciar as pessoas.
[13] CoCaMAAL: A cloud-oriented context-aware middleware in ambient assisted living. O foco deste trabalho é facilitar o fluxo de dados entre
os sensores e os locais de processamento das informações. Os autores dizem que existe uma grande desafio e complexidade em derivar informações
provenientes dos sensores em informações contextualizadas. Dessa forma
estre trabalho apresenta um modelo baseado em SOA para geração de
contextos. Apresentam como desafios a aquisição de dados em tempo real
provenientes de diversos sensores corporais, processamento de dados heterogênios, integração de tarefas em sistemas distribuídos. A justificativa
para usar coputação em núvem é para atenuar esses desafios. O artigo
apresenta uma compração com outros modelos baseados em contexto. O
artigo apresenta os detalhes do modelo. Context-aware middleware é o
componente pricipal da proposta. É responsável por manipular os dados
coletados.
[19] WhatsUpNow: urban social application with real-time peer-topeer ambient and sensory data exchanges.
[4] Predictable and reliable time triggered platform for Ambient Assisted Living.
falar sobre The BOnSAI ontology (a Smart Building Ontology for
Ambient Intelligence).
5.1
Estudos de Caso e Protótipos
[23]
[11]
[35]
[19]
[4]
5.2
Restrição Temporal
[23]
[11]
[35]
[19]
[4]
6
Real-time Service-Oriented Communication
[18] Trends and Challenges in Formal Specification and Verification of
Services Composition in Ambient Assisted Living Applications.
[34] A survey of service composition in ambient intelligence environments.
Algoritmo de escalonamento de chamadas Um WS: [14] Achieving Predictability and Service Differentiation in Web Services. Diversos WSs: [15]
com versão extendida em [16] Building Web services middleware with predictable execution times.
[26] Web services on deeply embedded devices with real-time processing. Até mesmos os dispositivos embarcados devem ter sistema soperacionais com suporte a tempo real, como é o caso do FreeRTOS.
[1] Time-constrained services: a framework for using real-time web
services in industrial automation.
[22] A smart communication architecture for ambient assisted living.
[31] Using SOA in Critical-Embedded Systems. In this paper we discuss whetherWeb services are suitable or not for embedded systems. Descoberta de serviços tem potencial para ser não determinístico, contrario
aos requisitos de sistemas de tempo real. Neste trabalho, são os sensores
que tomam a decisão, um pouco esquisito, mas válido. Sistemas criticos
devem utilizar apenas cconfiguações estáticas, pois a dinamicidade tem
potencial para não determinismos. Sendo assim, a característica de autoadaptação não pode ser usada em AmI crítico.
[39] A RESTful framework for Internet of things based on software
defined network in modern manufacturing.
[9] Event-driven modeling and testing of real-time web services. Apresenta o conceito de deadline para execução de uma função do WS, mas
não trabalha com escalnamento de tarefas.
[40] Real-time service process admission control with schedule reorganization.
[37] Autonomous Composition and Execution of REST APIs for Smart
Sensors. Sensores também podem ser Web APIs que expõem o estado dos
sensores e serviços.
[36] Managing Real-Time Web Services through Agents.
[21] Reliable Web service composition based on QoS dynamic prediction.
[30] RESTful Discovery and Eventing for Service Provisioning in Assisted Living Environments.
A questão de QoS é fundamental para AmI. QoS é estabelecido pelo
usuário, e não pelo serviço. QoS é dinámico [21], e no caso de [36] pode
ser negociado com o cliente.
A própria composição de WS deve possuir deadlines bem definidos.
Não achei propostas de composição de WS com restrições temporais. Segungo [21] as abordagens para composição de WS com base em QoS possuem complexidade exponencial. Pare reduzir essa complexidade, o uso
de algoritmos genéticos e Ant colony optimizations are used.
Um parágrafo para analisar os trabalhos com a perspectiva de tempo
real.
6.1
[14]
Estudos de Caso e Protótipos
[26]
[1]
[22]
[31]
[39]
[9]
[40]
[37]
[36]
[21]
[30]
6.2
Restrição Temporal
[14]
[26]
[1]
[22]
[31]
[39]
[9]
[40]
[37]
[36]
[21]
[30]
7
Discussão
Uma discussão geral sobre os três aspectos estudados.
Falar sobre o conflito entre imprevisibilidade dos Sistemas de sistemas
com a necessidade de previsibilidade de sistemas de tempo real.
Ambientes inteligentes destinados ao cuidado de pessoas doentes e
idosas devem ser projetadas de forma diferente de ambientes com outros
propósitos. Atividades de monitoramento e resposta as possíveis emergências devem ser executadas dentro de um tempo adequado e previamente
especificado, atendendo assim à restrições de sistemas de tempo real.
Smart Spaces enhance user capabilities and comfort by providing new
services and automated service execution based on sensed user activity.
Though, when becoming really “smart”, such spaces should not only provide some service automation, but further learn and adapt their behavior
during use [8].
O processo de aprendizado ao longo da execução em uma plataforma de
AmI é dito como requisito para um ambiente ser considerado inteligente.
Entretanto, técnicas de aprendizado, especialmente redes neurais, tornam
o processo imprevisível, pois não é possível saber como o aprendizado
ocorreu, apenas os resultados são tangíveis.
Deve-se separar sistemas AmI em partes criticas e não criticas. Sistemas criticos devem utilizar apenas cconfiguações estáticas, pois a dinamicidade tem potencial para não determinismos. Sendo assim, a característica de autoadaptação não pode ser usada em AmI crítico [31].
Os fatores criticos de AmI podem ser modelados de acordo com missions, descrito por [31].
Ao mesmo tempo que sistemas AmI precisam ser dinâmicos, assumindo um comportamento auto-evolutivo e admitindo novos componentes
em tempo de execução, é necessário garantir determinadas restrições temporais, que exigem comportamento previsível. Esta situação representa
claramente um conflito, que pode ser solucionado através da separação
das funcionalidades críticas das demais funcionalidades do sistema. Na
parte crítica devem ser adotadas todas as medidas para garantir a execução dentro dos deadlines especificados, enquanto na parte não crítica
podem ser execucatdas as funcionalidades que exigem aprendizado, análise dos dados coletados pelos sensores, ajustes de sensorens e padrões de
comportamento.
Um desafio é organizar estes dois módulos (critico e não crítico) de
modo que a interação entre eles alcance os objetivos dos sistemas de AmI
com a segurança e confiabilidade necessárias. As partes não críticas dos
sistemas AmI, que envolvem o aprendizado, análise, auto-adaptação e evolução, devem auxiliar e traçar diretrizes para as partes críticas. Uma questão em aberto é como utilizar os resultados não criticos nas partes que
exigem restrições temporais.
As plataformas são as responsaveis por definir so módulos críticos e
não críticos que compõem o sistema. A plataforma tem o conhecimento
necessário para atingir os objetivos de um determinado domínio.
Um parágrafo sobre tendências e caminhos para futuras pesquisas.
8
Conclusão
Referências
1. Time-constrained services: a framework for using real-time web services in industrial automation. Service Oriented Computing and Applications 3(4), 239–262 (dec
2009), http://dx.doi.org/10.1007/s11761-009-0050-y
2. The universal Reference Model for AAL. In: Juan Carlos Augusto, Michael Huch,
Achilles Kameas, Julie Maitland, Paul McCullagh, Jean Roberts, Andrew Sixsmith, R.W. (ed.) Handbook of Ambient Assisted Living, vol. 11, pp. 610 – 625.
IOS Press (2012)
3. Dynamic sensor data segmentation for real-time knowledge-driven activity recognition. Pervasive and Mobile Computing 10(PART B), 155–172 (feb 2014),
http://dx.doi.org/10.1016/j.pmcj.2012.11.004
4. Predictable and reliable time triggered platform for Ambient Assisted Living. In:
2014 8th International Symposium on Medical Information and Communication
Technology (ISMICT). pp. 1–5. No. Vl, IEEE (apr 2014), http://ieeexplore.
ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6825212
5. Acampora, G., Cook, D.J., Rashidi, P., Vasilakos, A.V.: A Survey on Ambient Intelligence in Healthcare. Proceedings of the IEEE 101(12), 2470–
2494
(dec
2013),
http://www.pubmedcentral.nih.gov/articlerender.
fcgi?artid=3890262{\&}tool=pmcentrez{\&}rendertype=abstracthttp:
//ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6579688
6. Antonino, P.O., Schneider, D., Hofmann, C., Nakagawa, E.Y.: Evaluation of AAL
Platforms According to Architecture-Based Quality Attributes. In: Lecture Notes
in Computer Science (including subseries Lecture Notes in Artificial Intelligence
and Lecture Notes in Bioinformatics), vol. 7040 LNCS, pp. 264–274 (2011)
7. Appiah, K., Hunter, A., Lotfi, A., Waltham, C., Dickinson, P.: Human behavioural
analysis with self-organizing map for ambient assisted living. In: Fuzzy Systems
(FUZZ-IEEE), 2014 IEEE International Conference on. pp. 2430–2437 (July 2014),
http://dx.doi.org/10.1109/FUZZ-IEEE.2014.6891833
8. Augusto, J.C., Nakashima, H., Aghajan, H.: Ambient Intelligence and Smart
Environments: A State of the Art. In: Nakashima, H., Aghajan, H., Augusto,
J.C. (eds.) Handbook of Ambient Intelligence and Smart Environments, pp.
3–31. Springer US, Boston, MA (2010), http://link.springer.com/10.1007/
978-0-387-93808-0
9. Belli, F., Linschulte, M.: Event-driven modeling and testing of real-time web
services. Service Oriented Computing and Applications 4(1), 3–15 (mar 2010),
http://dx.doi.org/10.1007/s11761-010-0056-5
10. Chaaraoui, A., Padilla-López, J., Ferrández-Pastor, F., Nieto-Hidalgo, M., FlórezRevuelta, F.: A Vision-Based System for Intelligent Monitoring: Human Behaviour
Analysis and Privacy by Context. Sensors 14(5), 8895–8925 (may 2014), http:
//www.mdpi.com/1424-8220/14/5/8895/
11. Dunkel, J., Bruns, R., Stipkovic, S.: Event-based smartphone sensor processing
for ambient assisted living. In: Autonomous Decentralized Systems (ISADS), 2013
IEEE Eleventh International Symposium on. pp. 1–6 (March 2013), http://dx.
doi.org/10.1109/ISADS.2013.6513422
12. Eisenhauer, M., Rosengren, P., Antolin, P.: HYDRA: A Development Platform for
Integrating Wireless Devices and Sensors into Ambient Intelligence Systems. In:
The Internet of Things, pp. 367–373. Springer New York, New York, NY (2010)
13. Forkan, A., Khalil, I., Tari, Z.: CoCaMAAL: A cloud-oriented context-aware middleware in ambient assisted living. Future Generation Computer Systems 35,
114–127 (jun 2014), http://dx.doi.org/10.1016/j.future.2013.07.009http:
//linkinghub.elsevier.com/retrieve/pii/S0167739X13001544
14. Gamini Abhaya, V., Tari, Z., Bertok, P.: Achieving Predictability and Service
Differentiation in Web Services. In: Differentiation, pp. 364–372 (2009)
15. Gamini Abhaya, V., Tari, Z., Bertok, P.: Using Real-Time Scheduling Principles in
Web Service Clusters to Achieve Predictability of Service Execution. pp. 197–212
(2010)
16. Gamini Abhaya, V., Tari, Z., Bertok, P.: Building Web services middleware with
predictable execution times. World Wide Web 15(5-6), 685–744 (sep 2012)
17. Gracioli, G., Alhammad, A., Mancuso, R., Fröhlich, A.A., Pellizzoni, R.: A Survey on Cache Management Mechanisms for Real-Time Embedded Systems. ACM
Computing Surveys 48(2), 1–36 (nov 2015), http://dl.acm.org/citation.cfm?
doid=2830539.2830555
18. Hilia, M., Chibani, A., Djouani, K.: Trends and Challenges in Formal Specification
and Verification of Services Composition in Ambient Assisted Living Applications.
Procedia Computer Science 19, 540–547 (2013), http://www.sciencedirect.com/
science/article/pii/S1877050913006807
19. Karam, M., Safa, H., Masud, M.: WhatsUpNow: urban social application with
real-time peer-to-peer ambient and sensory data exchanges. Multimedia Tools and
Applications (aug 2015)
20. Kotsiopoulos, N.P., Vrakas, D.: Policies Production System for Ambient Intelligence Environments. In: Artificial Intelligence: Methods and Applications, pp.
251–263. Springer International Publishing (2014)
21. Liu, Z.Z., Jia, Z.P., Xue, X., An, J.Y.: Reliable Web service composition based
on QoS dynamic prediction. Soft Computing 19(5), 1409–1425 (may 2015), http:
//link.springer.com/10.1007/s00500-014-1351-4
22. Lloret, J., Canovas, A., Sendra, S., Parra, L.: A smart communication architecture for ambient assisted living. IEEE Communications Magazine 53(1),
26–33 (jan 2015), http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?
arnumber=7010512
23. Machado, A., Lichtnow, D., Pernas, A.M., Wives, L.K.: A Reactive and Proactive Approach for Ambient Intelligence. In: Proceedings of the 16th International Conference on Enterprise Information Systems. pp. 501–512. SCITEPRESS Science and and Technology Publications (2014), http://www.scitepress.org/
DigitalLibrary/Link.aspx?doi=10.5220/0004884205010512
24. Magherini, T., Fantechi, A., Nugent, C., Vicario, E.: Using temporal logic and
model checking in automated recognition of human activities for ambient-assisted
living. Human-Machine Systems, IEEE Transactions on 43(6), 509–521 (Nov 2013),
http://dx.doi.org/10.1109/TSMC.2013.2283661
25. Memon, M., Wagner, S., Pedersen, C., Beevi, F., Hansen, F.: Ambient Assisted
Living Healthcare Frameworks, Platforms, Standards, and Quality Attributes. Sensors 14(3), 4312–4341 (mar 2014), http://www.mdpi.com/1424-8220/14/3/4312/
26. Moritz, G., Pruter, S., Timmermann, D., Golatowski, F.: Web services on deeply embedded devices with real-time processing. In: 2008 IEEE International
Conference on Emerging Technologies and Factory Automation. pp. 432–435.
IEEE (sep 2008), http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?
arnumber=4638429
27. Nakagawa, E.Y., Antonino, P.O., Becker, M., Maldonado, J.C., Storf, H., Villela,
K.B., Rombach, D.: Relevance and perspectives of AAL in Brazil. Journal of Systems and Software 86(4), 985–996 (apr 2013), http://dx.doi.org/10.1016/j.
jss.2012.10.013
28. Nielsen, C.B., Larsen, P.G., Fitzgerald, J., Woodcock, J., Peleska, J.: Systems
of Systems Engineering. ACM Computing Surveys 48(2), 1–41 (sep 2015), http:
//dl.acm.org/citation.cfm?doid=2830539.2794381
29. Okeyo, G., Chen, L., Wang, H.: Combining ontological and temporal formalisms
for composite activity modelling and recognition in smart homes. Future Generation Computer Systems 39(0), 29 – 43 (2014), http://www.sciencedirect.com/
science/article/pii/S0167739X14000399
30. Parra, J., Hossain, M., Uribarren, A., Jacob, E.: RESTful Discovery and Eventing
for Service Provisioning in Assisted Living Environments. Sensors 14(5), 9227–9246
(may 2014), http://www.mdpi.com/1424-8220/14/5/9227/
31. Rodrigues, D., Pires, R.d.M., Estrella, J.C., Marconato, E.A., Junior, O.T.,
Branco, K.R.L.J.C.: Using SOA in Critical-Embedded Systems. In: 2011 International Conference on Internet of Things and 4th International Conference on
Cyber, Physical and Social Computing. pp. 733–738. IEEE (oct 2011), http:
//ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6142164
32. Rodríguez, N.D., Cuéllar, M.P., Lilius, J., Calvo-Flores, M.D.: A survey on ontologies for human behavior recognition. ACM Computing Surveys 46(4), 1–33 (mar
2014), http://dl.acm.org/citation.cfm?doid=2597757.2523819
33. Ros, M., Cuéllar, M., Delgado, M., Vila, A.: Online recognition of human activities
and adaptation to habit changes by means of learning automata and fuzzy temporal
windows. Information Sciences 220, 86–101 (jan 2013), http://dx.doi.org/10.
1016/j.ins.2011.10.005
34. Stavropoulos, T.G., Vrakas, D., Vlahavas, I.: A survey of service composition in
ambient intelligence environments. Artificial Intelligence Review 40(3), 247–270
(oct 2013), http://link.springer.com/10.1007/s10462-011-9283-1
35. Surie, D., Partonia, S., Lindgren, H.: Human sensing using computer vision for
personalized smart spaces. In: Ubiquitous Intelligence and Computing, 2013 IEEE
10th International Conference on and 10th International Conference on Autonomic
and Trusted Computing (UIC/ATC). pp. 487–494 (Dec 2013), http://dx.doi.
org/10.1109/UIC-ATC.2013.24
36. del Val, E., Navarro, M., Julián, V., Rebollo, M.: Managing Real-Time Web Services through Agents. In: Trends in Practical Applications of Agents and Multiagent
Systems, vol. 71, pp. 61–68 (2010)
37. Ventura, D., Verborgh, R., Catania, V., Mannens, E.: Autonomous Composition
and Execution of REST APIs for Smart Sensors. Joint Proceedings of the 1st Joint
International Workshop on Semantic Sensor Networks and Terra Cognita and the
4th International Workshop on Ordering and Reasoning (2015)
38. Wagner, S., Nielsen, C.: OpenCare project: An open, flexible and easily extendible infrastructure for pervasive healthcare assisted living solutions. In: Proceedings of the 3d International ICST Conference on Pervasive Computing
Technologies for Healthcare. ICST (2009), http://eudl.eu/doi/10.4108/ICST.
PERVASIVEHEALTH2009.5992
39. Wen, Z., Liu, X., Xu, Y., Zou, J.: A RESTful framework for Internet of things based
on software defined network in modern manufacturing. The International Journal
of Advanced Manufacturing Technology (dec 2015), http://link.springer.com/
10.1007/s00170-015-8231-7
40. Zhou, S., Lin, K.J.: Real-time service process admission control with schedule reorganization. Service Oriented Computing and Applications 7(1), 3–14 (mar 2013),
http://link.springer.com/10.1007/s11761-012-0123-1