mac5743 - computac¸ao m˜...

17
Departamento de Ciˆ encia da Computac ¸˜ ao IME/USP MAC5743 - Computac ¸˜ ao M ´ ovel Luiz Carlos Vieira {[email protected]} Ciˆ encia do Contexto em Aplicac ¸˜ oes M ´ oveis de Entretenimento 1 Resumo O contexto s˜ ao informac ¸˜ oes obtidas do mundo real, dos objetos e pessoas, que podem ser utilizadas para caracterizar a situac ¸˜ ao de uso de uma aplicac ¸˜ ao computacional. Devido ` a mobilidade dos dispositivos e sensores as alterac ¸˜ oes no contexto de uso s˜ ao muito comuns, incluindo n˜ ao apenas mudanc ¸as no local de uso como tamb´ em em outros dispositivos ou pessoas pr´ oximos, por exemplo. Por isso h´ a uma ´ area da computac ¸˜ ao m´ ovel chamada computac ¸˜ ao ciente do contexto que procura criar aplicac ¸˜ oes capazes de se adaptar a essas mudanc ¸as como forma de prover servic ¸os mais relevantes aos usu´ arios. O entretenimento m ´ ovel ´ e uma ´ area de interesse crescente devido ` a sua popularidade entre os jovens e ` a demanda por conte´ udo interessante e novo. Na ´ ultima d´ ecada, in´ umeras aplicac ¸˜ oes de entretenimento cientes do contexto tˆ em sido produzidas, utilizando informac ¸˜ oes de localizac ¸˜ ao interna ou externa, marcas virtuais no mundo, dados fisiol´ ogicos dos usu´ arios como press˜ ao, temperatura, transpirac ¸˜ ao e movimentac ¸˜ ao corp´ orea, entre outras. Os exemplos incluem jogos eletrˆ onicos, sistemas de apoio ` a divers˜ ao em clubes noturnos e diminuic ¸˜ ao de estresse em viagens a´ ereas, e sistemas de troca de m ´ usica em estac ¸˜ oes do metr ˆ o. Este trabalho faz uma breve revis˜ ao sobre o que ´ e a computac ¸˜ ao ciente do contexto, como o contexto ´ e comumente descrito e como ele tem sido utilizado na produc ¸˜ ao de aplicac ¸˜ oes para o entretenimento ovel digital. 2 Introduc ¸˜ ao ´ E inquestion´ avel a importˆ ancia da computac ¸˜ ao m´ ovel no mundo moderno. A telefonia m´ ovel j´ a alcanc ¸a mais de 80% da populac ¸˜ ao mundial [8, 16], e ´ e muito prov´ avel que os smartphones e tablets (hoje com mais capacidade computacional do que um notebook h´ a 10 anos) superem a venda de desktops e notebooks nos pr´ oximos 3 anos [24, 22, 9]. Al´ em disso, opicos como redes ad hoc e redes de sensores s˜ ao interesses de pesquisa atuais e bastante populares, apresentando cada um mais de 20 milh˜ oes de resultados nas buscas por artigos cient´ ıficos em associac ¸˜ oes como o Institute of Electrical and

Upload: vothuan

Post on 06-Dec-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Departamento de Ciencia da Computacao IME/USP

MAC5743 - Computacao Movel

Luiz Carlos Vieira {[email protected]}

Ciencia do Contexto em Aplicacoes Moveis de Entretenimento

1 Resumo

O contexto sao informacoes obtidas do mundo real, dos objetos e pessoas, que podem ser utilizadas para caracterizar

a situacao de uso de uma aplicacao computacional. Devido a mobilidade dos dispositivos e sensores as alteracoes no

contexto de uso sao muito comuns, incluindo nao apenas mudancas no local de uso como tambem em outros dispositivos

ou pessoas proximos, por exemplo. Por isso ha uma area da computacao movel chamada computacao ciente do contexto

que procura criar aplicacoes capazes de se adaptar a essas mudancas como forma de prover servicos mais relevantes aos

usuarios. O entretenimento movel e uma area de interesse crescente devido a sua popularidade entre os jovens e a demanda

por conteudo interessante e novo. Na ultima decada, inumeras aplicacoes de entretenimento cientes do contexto tem sido

produzidas, utilizando informacoes de localizacao interna ou externa, marcas virtuais no mundo, dados fisiologicos dos

usuarios como pressao, temperatura, transpiracao e movimentacao corporea, entre outras. Os exemplos incluem jogos

eletronicos, sistemas de apoio a diversao em clubes noturnos e diminuicao de estresse em viagens aereas, e sistemas de

troca de musica em estacoes do metro. Este trabalho faz uma breve revisao sobre o que e a computacao ciente do contexto,

como o contexto e comumente descrito e como ele tem sido utilizado na producao de aplicacoes para o entretenimento

movel digital.

2 Introducao

E inquestionavel a importancia da computacao movel no mundo moderno. A telefonia movel ja alcanca mais de 80% da

populacao mundial [8, 16], e e muito provavel que os smartphones e tablets (hoje com mais capacidade computacional do

que um notebook ha 10 anos) superem a venda de desktops e notebooks nos proximos 3 anos [24, 22, 9]. Alem disso,

topicos como redes ad hoc e redes de sensores sao interesses de pesquisa atuais e bastante populares, apresentando cada

um mais de 20 milhoes de resultados nas buscas por artigos cientıficos em associacoes como o Institute of Electrical and

Figura 1: Novas demandas por multimıdia. Traduzido de [17].

Electronics Engineers (IEEE) e a Association for Computing Machinery (ACM). Esta se tornando tao comum que cameras,

TVs, refrigeradores, cafeteiras e outros dispositivos se comuniquem por meio da Internet que se estima que em 2020 a

“Internet das Coisas” tera por volta de 50 mil milhoes de objetos conectados e produzindo dados [7]. E, portanto, natural

esperar que a computacao movel faca cada vez mais parte da vida das pessoas.

Dentre as diversas aplicacoes desse potencial computacional distribuıdo, o entretenimento digital parece ser um dos prin-

cipais motivadores da utilizacao de dispositivos moveis. Estudos como o realizado pela Oracle [17] (figura 1) observam

que ha grande demanda por conteudo de entretenimento em telefones celulares, principalmente entre a populacao mais

jovem. Essa demanda e estimulada nao apenas pelo desejo natural dos seres humanos em serem entretidos, mas tambem

pelas possibilidades providas pelas novas tecnologias. Os exemplos mais obvios sao os jogos eletronicos, que utilizam as

melhorias na capacidade de processamento e de comunicacao para oferecer conteudo mais esteticamente complexo, formas

de interacao mais atraentes (pelo uso do toque, da fala e de gestos) e modos de cooperacao ou competicao entre jogadores

fisicamente proximos.

O entretenimento movel se encontra na interseccao de duas industrias: a do entretenimento e a da telecomunicacao. Ele trata,

porem, de muito mais do que apenas jogos eletronicos utilizados em dispositivos portateis, pois inclui qualquer atividade

de lazer que e realizada por meio de uma tecnologia pessoal [26]. Nessa interseccao sao duas as questoes principais

estudadas: a experiencia subjetiva relacionada a busca por diversao, prazer, desafio, reflexao ou mera passagem de tempo, e

o acesso facilitado e onipresente ao conteudo relacionado as tecnologias de comunicacao sem fio. Por isso as aplicacoes de

entretenimento movel geralmente incluem caracterısticas de casualidade (curto perıodo de utilizacao), novidade (conteudo

recente e atualizado), credibilidade (disponibilidade contınua e confiavel) e interesse (culturalmente desejavel) [26].

Mas ha uma outra questao que e igualmente relevante. Devido a mobilidade dos dispositios ocorrem alteracoes na situacao

de seu uso, incluindo nao apenas a mudanca do local fısico em que se encontram como tambem variacoes na luminosidade

e no ruıdo do ambiente, na condicao social do utilizador ou na quantidade e caracterizacao dos indivıduos presentes, por

exemplo. Ou seja, a mobilidade implica em alteracoes no contexto em que um sistema e utilizado.

Desde que trabalhos seminais como o de Schilit, Adams e Want [21] introduziram o conceito de Computacao Ciente

2

do Contexto, ja se acredita que a exploracao da informacao que caracteriza o contexto de utilizacao pode ser util para

tornar sistemas mais flexıveis e adaptaveis as necessidades funcionais das pessoas. Essa exploracao parece ser igualmente

importante para as necessidades nao funcionais dos sistemas de entretenimento, uma vez essas necessidades sao mais

relacionadas a experiencia produzida pelo uso. Afinal, questoes como apelo, desafio e diversao sao naturalmente subjetivas,

variando nao somente com o estado interno dos indivıduos como tambem com o contexto em que eles se encontram.

Este trabalho explora o que e o contexto e a computacao ciente do contexto, tentando identificar as formas como esses

topicos tem sido utilizados na producao de aplicacoes de entretenimento movel. Ele esta organizado da seguinte forma: em

Computacao Ciente do Contexto sao apresentadas as definicoes de contexto, suas formas de uso e os tipos de aplicacoes

cientes do contexto produzidas; em Sistemas de Entretenimento Cientes do Contexto sao apresentadas as abordagens de

construcao de aplicacoes de entretenimento cientes do contexto e alguns exemplos interessantes em que o contexto foi

utilizado no entretenimento movel; por fim, na Conclusao sao apresentados alguns possıveis direcionamentos futuros e

consideracoes finais.

3 Computacao Ciente do Contexto

A ideia que talvez seja a mais comum ao se mencionar a mobilidade na computacao e a de indivıduos carregando dispositivos

pessoais suficientemente pequenos para serem portateis, tais como notebooks, palmtops e smartphones. Porem, uma outra

forma de se enxergar a mobilidade e a da computacao pessoal disponıvel em qualquer lugar, utilizando dispositivos fixos

ou que se movam de forma independente dos usuarios. Essa segunda abordagem tem duas decadas de estudo e mesmo

assim envolve conceitos muitas vezes bastante similares a ponto de causarem confusoes, tais como computacao pervasiva e

ubıqua. Ainda assim, ela tem como aspecto principal o contexto de uso.

Schilit, Adams e Want [21] chamaram a “colecao de dispositivos moveis e estacionarios que se comunicam e cooperam

em prol dos usuarios para lhes fornecer acesso ubıquo a informacao, comunicacao e computacao” de computacao movel

distribuıda. Na computacao movel distribuıda a mudanca das condicoes de uso e muito mais relevante do que no mero trans-

porte de um telefone celular portatil, pois alem da variacao na localidade do indivıduo tambem podem ocorrer alteracoes nos

recursos computacionais disponıveis, quando, por exemplo, ha a perda de conectividade, um novo dispositivo de entrada ou

saıda e incluido no ambiente ou o custo da comunicacao muda. Alem disso, como os recursos podem ser compartilhados

ha tambem que se considerar a mudanca na condicao social. A classe de aplicacoes que sao capazes de explorar essas

alteracoes sao ditas cientes do contexto, e dao origem ao termo computacao ciente do contexto.

O aprimoramento tecnologico de objetos comuns para que tenham propositos computacionais distribuıdos objetiva criar

oportunidades para “capitalizar familiaridades, habilidades e experiencias ao lidar com o mundo, e tornar o mundo uma

interface para a computacao assim como a computacao um complemento da interacao do dia-a-dia” [10]. Assim, sistemas

cientes do contexto sao aqueles que se adaptam de acordo com o local de uso, a colecao de pessoas proximas, os servidores

e dispositivos disponıveis, e tambem a todas essas mudancas quando ocorrem ao longo do tempo [21]. A adaptacao tem

3

por objetivo prover informacoes e servicos mais relevantes aos usuarios, sendo que a relevancia depende das tarefas em

execucao ou dos interesses envolvidos [1].

3.1 O que e Contexto

O contexto e algo que os seres humanos compreendem naturalmente e utilizam amplamente em suas interacoes. Por

exemplo, uma pessoa e capaz de perceber o humor de outra e alterar sua entonacao de voz ao lhe fazer uma pergunta, de

agir de forma diferente em uma festa ou uma reuniao de negocios e de mudar de assunto em uma conversa ao notar que

alguem possa ter se ofendido com um comentario. Os humanos tomam suas decisoes com base na percepcao de atributos nos

outros humanos e no ambiente, incluindo localidade fısica, tempo e temperatura, historico pessoal, relacionamentos, estados

psicologico, fisiologico e emocional, entre tantos outros. O contexto e formado por esses atributos, que sao continuamente

captados e utilizados nas tarefas e acoes realizadas. Por ser bastante rico e dependente de percepcoes sensoriais, a obtencao

e representacao computacional do contexto sao os grandes desafios na computacao ciente do contexto [20].

Existem inumeras definicoes formais sobre o que e o contexto, mas uma que parece sintetizar bem o seu significado no

escopo computacional e a proposta por Abowd et al. [1]:

“Contexto e qualquer informacao que pode ser utilizada para caracterizar a situacao de uma entidade. Uma

entidade e uma pessoa, lugar ou objeto que e considerado relevante para a interacao entre um usuario e uma

aplicacao, incluindo eles proprios.”

Sao tres as palavras-chave dessa definicao: informacao, interacao e relevancia.

A informacao indica que o contexto inclui valores descritivos daquilo que representa, e que por isso pode ser codificado,

ou seja, representado computacionalmente. Possivelmente qualquer coisa pode ser incluida no contexto de uso de uma

aplicacao, e por isso e interessante tentar utilizar alguma classificacao em que essas informacoes possam ser agrupadas. Em

seus trabalhos, Schilit, Adams e Want [21] e Abowd et al. [1] identificaram que o contexto tem cinco aspectos importantes,

relacionados as expressoes onde (onde se esta), quem (com quem se esta), o que (o que esta disponıvel e o que se esta

fazendo) e quando (em que momento ocorre), da seguinte forma:

• Ambiente Fısico. Inclui atributos como nıvel de ruido e luminosidade, temperatura, altitude, etc. Sao informacoes

descritivas do “onde”.

• Ambiente do Usuario. Inclui atributos como perfil e localidade das pessoas proximas, situacao social, seus estados

emocionais e fisiologicos, etc. Sao informacoes descritivas do “quem”.

• Ambiente Computacional. Inclui atributos como processadores e dispositivos nas proximidades, suas disponibilida-

des e capacidades, etc. Sao parte das informacoes descritivas do “que”.

4

• Ambiente de Atividade. Inclui atributos como objetivo, resultados esperados, conteudo fısico ou sensorial manipu-

lado, etc. Sao tambem parte das informacoes descritivas do “que”.

• Temporarilidade. Inclui atributos como duracao, data e hora, estacao do ano, etc. Sao informacoes descritivas do

“quando”.

A interacao e a relevancia sao intimamente relacionadas, indicando que o contexto e dependente das relacoes formadas

entre entidades (pessoas, lugares e objetos) e das atividades em execucao ou de interesse para alguem. Para significar

contexto, um conjunto de informacao precisa caracterizar a situacao dos participantes em uma interacao [1], ou seja, precisa

haver algum contato entre as entidades que crie a situacao de uso propriamente dita. A relacao existente afeta o proposito

de uma ou mais entidades, que por sua vez e decorrente da atividade (que pode ja estar em execucao ou ser apenas de

interesse potencial). Por isso Dourish [10] defende que o contexto nao deve ser apenas considerado como um problema

representacional mas tambem como um problema de interacao, uma vez que qualquer pedaco de informacao que pode ser

representado tem sua relevancia alterada dinamicamente com as alteracoes do estado das atividades sendo realizadas:

“Sob uma perspectiva positivista, o contexto e uma caracterıstica estavel do mundo, independente das acoes

dos indivıduos. Sob uma perspectiva fenomenologica, o contexto surge apenas quando e mutuamente reco-

nhecido pelas partes de alguma interacao, desenhado pelo entendimento da natureza comum e cultural do

mundo social. Assim, nesse modelo o contexto nao e algo que descreve uma configuracao, mas algo que as

pessoas fazem. E um resultado, ao inves de uma observacao; uma saıda, ao inves de uma premissa”.

Em verdade, definir de uma forma unica o que e contexto e uma tarefa difıcil. Ha muitos argumentos distintos, principal-

mente devido ao carater subjetivo das motivacoes humanas e do que e ou nao relevante para cada um em cada situacao. Mas

de forma geral as definicoes existentes se fundamentam no que foi discutido anteriormente, e por isso se acredita que os

detalhes apresentados sao suficientes para o entendimento no escopo deste trabalho.

No que se refere a representacao computacional do contexto, tambem sao muitas as abordagens existentes. Ainda assim, a

maioria delas procura modelar as informacoes contextuais que os projetistas julgam importantes em domınios especıficos

de problema, utilizando representacoes hierarquicas - como as classes de entidades compostas por widgets de contexto de

Abowd et al. [1] e as descricoes logicas formais dos sensores e das informacoes por eles coletadas - ou como o programa

de calculo situacional de Loke [15]. Mais recentemente, formas de representacao gerais tem sido baseadas em ontologias e

inferencia semantica, como o arcabouco de Cadenas et al. [3].

3.2 Formas de Uso do Contexto

As aplicacoes que utilizam contexto podem ser classificadas segundo dois eixos relacionados a forma como o contexto e

usado na execucao das tarefas, conforme ilustra a figura 2. O primeiro eixo indica se o contexto e utilizado para facilitar a

5

Figura 2: Categorias de aplicacoes cientes do contexto. Baseado em [21] e [1].

busca de informacao ou a execucao de comandos. Aplicacoes mais proximas da extremidade da obtencao de informacao uti-

lizam o contexto codificado com outro conteudo para facilitar sua indexacao e utiliza-lo como filtros de busca, e aplicacoes

mais proximas da extremidade da execucao de comandos utilizam o contexto para adaptar o comportamento do sistema ou

sua resposta aos padroes de uso [10]. O segundo eixo indica se essa utilizacao e manual ou automatica, ou seja, dependente

da atuacao direta do usuario ou ativada dinamicamente pelo sistema na forma de eventos, gatilhos ou agendamentos.

Considere os quadrantes na figura 2 em sentido horario a partir da parte superior esquerda. No primeiro quadrante (execucao

manual - obtencao de informacao) sao classificadas as aplicacoes chamadas de Selecao por Proximidade e de Rotulacao.

Aplicacoes do primeiro tipo utilizam o contexto como uma forma de melhorar a interacao com o conteudo e facilitar a

escolha de recursos ou acoes, como, por exemplo, dar enfase na interface para impressoras fisicamente mais proximas.

Aplicacoes do segundo tipo utilizam o contexto para associar dados digitais no mundo fısico, rotulando ou produzindo

identificacoes para objetos, locais e pessoas, como, por exemplo, permitir a adicao de comentarios a secoes de produtos em

um supermercado.

No segundo quadrante (execucao automatica - obtencao de informacao), sao classificadas as aplicacoes chamadas de

Reconfiguracao Contextual Automatica. Tratam-se de aplicacoes que tambem utilizam o contexto para escolher os me-

lhores recursos para o usuario, mas de forma automatica e imperceptıvel a sua atencao. Um exemplo seria uma aplicacao

que automatica e continuamente exibe o conteudo de uma aula nos projetores das salas de um museu quando um grupo de

estudantes se move.

No terceiro quadrante (execucao automatica - execucao de comandos) sao classificadas as aplicacoes chamadas de Acoes

Contextuais Automaticas. Tratam-se talvez das abordagens mais utilizadas na computacao ciente de contexto, em que os

sistemas executam automaticamente comandos e servicos disponıveis com base nas alteracoes de contexto. Um exemplo

bastante simples e de celulares que diminuem ou aumentam o volume das chamadas ao se entrar e sair de sala de aula.

Finalmente, no quarto quadrante (execucao manual - execucao de comandos) sao classificadas as aplicacoes chamadas

de Comandos Contextuais. Tratam-se de aplicacoes que adicionam ou removem servicos e recursos (habilitando ou

6

desabilitando-os) ou que modificam seu comportamento (alteram a forma como funcionam) com base no contexto do

usuario. Assim, o sistema auxilia em adaptar as possibilidades de escolha do usuario as atividades e condicoes atuais.

Um exemplo seria uma aplicacao de compras que se mostre disponıvel ao se entrar em uma loja.

Ainda que essa classificacao seja bastante conhecida, e atualmente mais comum que as aplicacoes utilizem uma combinacao

de funcoes que recaiam em mais de uma dessas categorias, principalmente porque um mesmo problema pode ser abordado

de diferentes formas dependendo do projetista e das necessidades enxergadas. A categorizacao nao existe para servir como

diretrizes de engenharia, mas para auxiliar na compreensao do que pode ser produzido ao se utilizar o contexto para tornar

sistemas mais adaptaveis.

4 Sistemas de Entretenimento Cientes do Contexto

As aplicacoes cientes do contexto utilizadas no entretenimento sao as mais recentes. O uso do contexto com esse proposito

tem menos de uma decada e foi inicialmente utilizado na producao de jogos que alteravam seu comportamento com base na

localidade do jogador - informacao que pode ser obtida a partir da liberacao do uso civil da tecnologia de posicionamento

global (GPS), por volta do ano 2000 [23].

Atualmente, a localidade tambem pode ser obtida com a triangulacao dos sinais de antenas dos provedores de servicos ou

dos sinais de redes sem fio (WiFi). Ha tambem muitas outras tecnologias que sao utilizadas na modelagem do contexto,

nao apenas em jogos, mas em aplicacoes musicais, de vıdeo, esportes, entre outras. Por exemplo, sinais de radio frequencia

(RFID) sao utilizados na localizacao de ambientes internos e tambem na identificacao de jogadores e objetos. Sensores

como acelerometros, giroscopios, infravermelho, e tambem as cameras fotograficas que acompanham os telefones mais

modernos tem sido utilizadas para auxiliar na identificacao de informacoes contextuais como posicionamento, gestos e

expressoes. Auto-falantes e microfones tambem tem sido utilizados para auxiliar na localizacao em ambientes internos,

alem da medicao de condicoes fisiologicas como estresse. Nesse aspecto, muitas propostas tambem utilizam termometros,

monitores cardıacos, sensores de pressao e transpiracao. Definitivamente os limites sao apenas delineados pela criatividade

dos projetistas.

A caracterıstica mais importante das aplicacoes de entretenimento digital cientes do contexto e relacionada ao volume de

dados que precisam processar e distribuir. Esse volume e muito grande devido nao apenas ao tipo de conteudo manipulado

(efeitos sonoros e musicas, vıdeos e graficos) mas tambem ao numero de usuarios. A participacao de outras pessoas

e essencial nas aplicacoes de entretenimento cientes do contexto, pois as ideias e interpretacoes de outros indivıduos e

tambem o compartilhamento de suas intencoes, desejos e recompensas e parte fundamental da diversao proporcionada

nesses ambientes interativos [23]. E como as pessoas presentes fazem parte do contexto de interesse para essas aplicacoes,

quanto mais usuarios existirem maior sera contexto a ser representado, comunicado e utilizado. Por isso se acredita que o

servico de distribuicao de conteudo multimıdia se tornara cada vez mais um dos servicos mais importantes na industria de

comunicacao e redes [25].

7

4.1 Arquitetura e Comunicacao

Em grande parte devido ao volume do conteudo, as solucoes propostas para a criacao de aplicacoes de entretenimento

cientes do contexto utilizam em geral uma arquitetura fundamentada na distribuicao do conteudo e na previsao de demanda.

Muitas solucoes utilizam sensores dos proprios dispositivos para a determinacao de parte do contexto e a comunicacao ad

hoc entre os aparelhos portados por utilizadores humanos. Mas e tambem comum a utilizacao de gateways distribuıdos

em casas, veıculos ou lugares publicos para tratar questoes relacionadas ao streaming do conteudo multimıdia e tambem da

identificacao do contexto local. Uma vez que parte do contexto de interesse de uma aplicacao e do Ambiente Computacional

e do Ambiente Fısico, esta se tornando bastante comum que esses gateways tenham seus proprios sensores compartilhados

por multiplos utilizadores. Essa abordagem facilita em nao requerer que os dispositivos portados (smartphones e tablets,

por exemplo) tenham muitos sensores especıficos e permite a construcao de contextos mais complexos a partir de inumeras

fontes locais ou o seu processamento previo em servidores remotos.

Um exemplo de arquitetura bastante interessante e o PIGS (Portable Intelligent Gateway System) [25], ilustrado na figura 3.

Essa proposta tem por objetivo facilitar o monitoramento da mobilidade, gerenciar o “handover” do contexto de uso, es-

calonar o conteudo de acordo com as caracterısticas dos dispositivos disponıveis e convergir diferentes tecnologias (entre

sensores, dispositivos moveis, protocolos de comunicacao e provedores de servico) para torna-las o mais imperceptıveis

possıvel ao usuario.

O PIGS e um dispositivo movel (gateway) que e capaz de capturar dados de sensores do ambiente em que esta imerso,

como por exemplo a temperatura de uma casa, e prover esses dados para aplicacoes a ele conectadas, dentre os dispositivos

localmente proximos ou um provedor de servico que fornece o conteudo multimıdia. Sua mobilidade e independente da

mobilidade do usuario, de forma que ele e capaz de armazenar o historico do contexto dos perfis das pessoas que ja o

utilizaram e contribuir na atualizacao dessas informacoes com outras unidades PIGS proximas. Outra de suas capacidades

projetadas e relacionada com a adaptacao do conteudo ao ambiente do usuario, por exemplo diminuindo intencionamente

a qualidade de vıdeos para exibicao em dispositivos pequenos como celulares e tablets para reduzir o consumo de trafego

comunicacao. As acoes do usuario, como por exemplo pausar uma partida de futebol em andamento, sao utilizadas como

forma de predicao quando duas ou mais unidades do PIGS estao conectadas, para que o usuario em transito de casa para o

trabalho possa, por exemplo, reiniciar a transmissao do conteudo da partida do ponto em que havia parado ao entrar em seu

carro ou chegar no trabalho no centro da cidade.

As unidades do PIGS sao compostas de diversos modulos, dentre eles o principal e uma base de conhecimento com os dados

do contexto mantido e ontologias para definir esses dados, e um motor de regras que atende de forma automatica ou manual

as requisicoes dos usuarios. Esse modulo e tambem o responsavel por agregar o conteudo de diferentes fontes conforme os

interesses configurados para cada contexto dos usuarios (por exemplo, exibindo informacoes do mercado de acoes quando

em casa, e informacoes do trafego quando no carro). Outros modulos importantes sao o gerenciador de conteudo e o modulo

de convergencia de rede. O primeiro faz as conversoes do conteudo original recebido dos provedores de servico para os

formatos apropriados para os dispositivos proximos, e o segundo converte os diversos protocolos de comunicacao entre

8

Figura 3: Visao geral do funcionamento do PIGS. Traduzido de [25].

provedores de servico, dispositivos moveis e sensores, para tornar mais facil e rapida a conexao durante a mobilidade das

unidades.

Alem do PIGS existem outras plataformas de apoio ao desenvolvimento de aplicacoes cientes de contexto para o entre-

tenimento. Dentre as mais conhecidas pode-se citar a plataforma de interacao pervasiva de Papakonstantinou e Brujic-

Okretic [18] e a plataforma de jogos pervasivos beseados em sensores chamada Fun in Numbers, de Chatzigiannakis [5].

Ambas proveem infra-estrutura reutilizavel na criacao de aplicacoes de entretenimento, especialmente jogos, utilizando

comunicacao ad hoc entre os dispositivos e facilitando a captura e representacao dos sensores e dos dados por eles produzi-

dos.

4.2 Exemplos de Aplicacoes

Os jogos eletronicos parecem ser um tema bastante utilizado na criacao de aplicacoes cientes de contexto para o entreteni-

mento. Duas das primeiras aplicacoes criadas sao os jogos Mogi [4] e Human Pacman [6]. O primeiro envolve a coleta e

a troca itens virtuais mapeados no mundo real, e o segundo e uma reproducao do jogo Pacman utilizando pessoas como os

personagens, tambem no mundo real (figura 4).

O objetivo desses jogos e estimular o contato social e a pratica de atividades fısicas. A informacao principal do contexto em

ambas as aplicacoes e a localidade, obtida por meio de sensores GPS carregados com os jogadores. Posicoes geograficas

do mundo real sao mapeadas para indicar os itens ou as pılulas a serem coletados ou tambem o posicionamento de outros

jogadores proximos. No caso do Human Pacman, o posicionamento das outras pessoas e o seu perfil sao fundamentais, ja

que fazem parte das regras do jogo: os jogadores sao identificados como fantasmas ou como o pacman e sua proximidade e

indicada na interface; coletes sensıveis ao toque nos ombros sao utilizados para permitir identificar a acao fısica da captura

do pacman pelo fantasma ou vice-versa, e emissores de sinais de radio em objetos reais, como lixeiras e hidrantes, sao

utilizados para fazer o papel das pılulas especiais de poder temporario do Pacman.

9

Interfaces web e celular do Mogi. Interface e dispositivos do Human Pacman.

Figura 4: Dois exemplos de jogos baseados em localizacao: Mogi e Human Pacman. Reproduzidos de [4] e [6].

Um exemplo diferente de um jogo eletronico e o UbiClub [12], um sistema de apoio ao entretenimento em clubes noturnos

e boates (figura 5). O UbiClub tem por objetivo ajustar a “atmosfera” do ambiente de entretenimento para maximizar a

diversao dos usuarios e engaja-los com a sensacao de uma experiencia unica e pessoal. Os clientes podem registrar seus

dispositivos moveis previamente para que sejam mais facilmente encontrados quando dentro do clube. O registro do cliente

permite a criacao de perfis e a integracao com redes sociais, para que o sistema possa indicar que amigos estao em outras

localidades do espaco.

Sensores no ambiente, portados pelos clientes (tais como medidores de transpiracao e frequencia cardıaca) e sensores de

movimento nos dispositivos moveis (celulares) sao utilizados para medir o humor e a diversao, e essa informacao contextual

permite produzir indicativos aos DJs sobre a apreciacao da musica pelas pessoas na pista de danca, por exemplo. Com essas

mesmas informacoes do contexto, o sistema tambem pode operar dispositivos no ambiente, como cameras, projetores,

terminais de informacao e iluminacao para criar condicoes ambientais mais agradaveis aos clientes segundo seus estados

fısicos e psicologicos e os locais em que se encontram.

O contexto utilizado nessa aplicacao e bastante rico, incluindo localidade interna, perfil (preferencias e padrao de movimentacao),

humor, condicao fısica, movimentos corporais, pessoas proximas e a relacao de amizade entre elas, e ainda assim ha muitas

outras informacoes que sao possıveis de serem capturadas e utilizadas como contexto de interesse. Em seu artigo, os autores

apresentam uma enorme sugestao de sensores e informacoes que podem ser utilizados, e apresentam uma classificacao dos

tipos de contexto mais interessentas para diferentes servicos (vıdeos personalizados, propaganda direcionada, pagamento

eletronico, pedido remoto, etc).

O projeto Undersound [2] e uma aplicacao ciente de contexto para o compartilhamento de musica diretamente entre os

utilizadores do sistema metroviario de transporte de Londres. A ideia e que arquivos de audio possam ser literalmente

deixados em locais especıficos das estacoes do metro, como proximo a uma maquina de venda de bebidas, um banco de

espera ou um telefone publico. Um indivıduo pode escolher deixar um arquivo em determinado local, permitindo que ele

seja acessado publica e anonimamente por outros indivıduos que se aproximem. Os arquivos sao hospedados em servidores

proprios de cada estacao, e sua existencia e notificada aos dispositivos por uma comunicacao WiFi para os dispositivos

10

Figura 5: Visao geral do UbiClub. Traduzido de [12].

proximos da localidade de cada arquivo. Se um outro usuario deixar um novo arquivo no mesmo local de um anterior, o

anterior e suprimido para limitar o espaco de armazenamento necessario e tornar simples o metodo de acesso as musicas.

O sistema tambem permite que os usuarios escolham permitir que seus dispositivos sejam emissores de sinais de comparti-

lhamento de musicas, de forma que ao se encontrarem em um mesmo vagao do metro dois usuarios possam trocar arquivos

em um modelo P2P (peer to peer) sem sequer se conhecerem. O contexto utilizado contem informacoes de localizacao

interna, marcacoes de conteudo e de pessoas proximas.

Seguindo tambem um direcionamento de prover formas gerais de entretenimento adaptado com base no contexto, ha tambem

o sistema AIRSF [14] (figura 6). Esse sistema tem o objetivo de oferecer musicas ou jogos aos passageiros de transporte

aereo como forma de diminuir o estresse e auxiliar na reducao do medo de voar. Com base em um perfil previamente regis-

trado, o sistema prepara modelos iniciais de estados fısico e psicologico que sao utilizados como metas a serem alcancadas

ou mantidas.

Tanto os estados-meta como os estados atuais sao vetores de valores contextuais fısicos ou pscologicos, tais como batimentos

cardıacos, taxa de respiracao ou agitacao corporal. Um motor de inferencia baseado em processos de decisao Markoviana

faz a adaptacao dos modelos construıdos utilizando as transicoes possıveis conhecidas e as probabilidades ajustadas com

o aprendizado das caracterısticas de cada passageiro, sendo capaz de aprender suas preferencias e de prover conteudo de

forma automatica ou manual (direcionando a escolha) para diminuir uma condicao de estresse ou manter uma sensacao de

tranquilidade ja existente.

Em seu artigo os autores nao se preocupam muito em listar os tipos de contexto que podem ser utilizados, ja que seu modelo

permite utilizar qualquer informacao que possa ser capturada. Mas mencionam que o perfil deve incluir nacionalidade, sexo

e idade, entre outras informacoes, e que as informacoes contextuais do estado fisiologico dos passageiros sao importantes

para descrever seu estado atual fısico e psicologico.

11

Figura 6: Esquema de funcionamento do AIRSF. Traduzido de [14].

Um projeto mais recente e um sistema de entretenimento que busca estimular a experiencia social na utilizacao do transporte

publico nas grandes cidades [11] utilizando o contexto da proximidade de pessoas e da relacao ja existente nas redes sociais.

Esse sistema utiliza dispositivos moveis e telas de exibicao publica disponıveis nos veıculos e nas estacoes para demonstrar

a presenca de outras pessoas ao redor dos usuarios e estimular a sua interacao no mundo real. Um sinal emitido pelos

dispositivos proximos, como bluetooth, por exemplo, e capturado pelo sistema e os usuarios sao representadas como peixes

se movendo no mar. Conforme os usuarios se movem, as suas representacoes animadas tambem se movem nas telas em que

sao exibidas, mantendo a mesma direcao e velocidade.

O sistema considera a privacidade dos usuarios muito importante, e por isso nao exibe informacoes pessoais - as animacoes

sao representadas apenas por codigos aleatoriamente gerados. Porem, se existir alguma relacao entre usuarios proximos,

talvez definida por conexoes em redes sociais existentes ou proximidades (amigos em comum, por exemplo), seus avatares

(peixes) sao exibidos com os mesmos padroes e cores para identificar que ha um potencial para interacao no mundo real

(figura 7). Como argumentado pelos autores, o sistema apenas aponta a possibilidade de interacao, cabendo aos usuarios

decidir como reagir a elas.

O contexto utilizado nesse sistema inclui os perfis dos usuarios e tambem uma localizacao espacial de proximidade. Apesar

de bastante simples, o resultado produzido e inovador e bastante interessante.

Outra das aplicacoes mais recentes e um jogo. Chamado PhotoShoot [13], o jogo e um duelo no estilo dos filmes de

faroeste em que os jogadores utilizam os seus smartphones como armas (figura 8). Ao iniciar uma partida, os jogadores se

posicionam de costas um para o outro, dao tres passos, viram-se a “atiram”. Atirar significa capturar uma foto do rosto do

jogador adversario. Vence o primeiro jogador conseguir essa foto com um numero maximo de 6 tiros (fotos). O sistema

utiliza a camera dos aparelhos para reconhecer as faces e tambem utiliza o acelerometro e o giroscopio para realizar a

contagem dos passos e impedir que algum dos jogadores seja desonesto na contagem. Ele faz isso liberando o inıcio do

jogo apenas no momento em que os dois jogadores estejam na distancia relativa correta.

12

Figura 7: Representacao de pessoas proximas e da relacao entre elas por meio de peixes coloridos. Reproduzido

de [11].

Figura 8: Sessao de jogo do PhotoShoot. Reproduzido de [13].

A comunicacao entre os dispositivos e ad hoc, e os autores utilizam uma plataforma propria de desenvolvimento de jogos

no estilo de comunicacao fone-a-fone. A descricao dessa plataforma e o principal foco de seu artigo, mas o jogo utiliza

informacoes contextuais importantes, como a posicao relativa dos jogadores e a identificacao de suas faces. Por ser um jogo

que depende da existencia de outro jogador, acredita-se que pode ser considerado uma aplicacao de entretenimento ciente

do contexto.

Por fim, um outro exemplo interessante e a Camera Descritiva [19]. Trata-se de uma camera fotografica (figura 9) que

produz descricoes textuais de uma cena capturada ao inves de uma foto analogica ou digital. O sistema utiliza uma conexao

a Internet por meio da qual a camera submete a imagem digital da cena a um servico de micro-tarefas (como o servico

da Amazon chamado Mechanical Turk). Um humano disposto a receber alguns centavos de dolar pela realizacao dessa

micro-tarefa descreve a cena vista da imagem capturada pela camera e essa descricao e recebida pela mesma conexao com

a Internet para que a camera produza uma impressao local com a descricao da cena. O processo leva naturalmente alguns

13

Figura 9: A camera descritiva produzindo a descricao de uma cena. Reproduzido de [19].

minutos, similarmente a uma revelacao em cameras polaroide tradicionais.

Essa nao e uma aplicacao ciente do contexto propriamente dita, mas o motivo pelo qual se acredita ser valido incluı-la

neste trabalho e que a descricao de uma cena seguramente inclui muita informacao sobre o contexto local, que com alguma

codificacao apropriada poderia ser utilizada em muitas das aplicacoes cientes do contexto descritas anteriormente. Alem

disso, com a evolucao dessa tecnologia, talvez seja possıvel criar aplicacoes com que as pessoas possam obter dicas de

entretenimento em uma viagem, ou ate criar jogos baseados em brincadeiras tradicionais como esconde-esconde. De fato,

grande parte dos aparelhos celulares de hoje ja tem cameras fotograficas e conexao com a Internet, e por isso talvez o

desenvolvimento desse tipo de aplicacao nao careca de tecnologia, apenas de oportunidade e motivacao.

5 Conclusao

O mundo e um lugar cheio de oportunidades de interacao, seja com objetos, animais ou pessoas. A diminuicao no tamanho

dos dispositivos computacionais facilita com que sejam facilmente transportados, mas e a comunicacao sem fio que torna

esse transporte significativo e justificado ao permitir que a computacao ocorra em qualquer lugar. O uso de sistemas

computacionais com o objetivo de entretenimento e bastante popular e essa popularidade so tende a crescer, principalmente

ao surgirem novas formas de interacao ubıqua com os objetos e pessoas do mundo real. Afinal de contas, a curiosidade e

o entretenimento sao urgencias do carater humano, assim como alimentacao, habrigo e reproducao. Nada mais natural do

que utilizarmos a nossa propria evolucao tecnologica tambem com esse objetivo.

Apesar de ja ter 6 anos, o relatorio de Tester [23] indica algumas possibilidas futuras que nos ainda nao alcancamos. Por

exemplo, espera-se que lugares com muitos objetos, como supermercados, bibliotecas e museus, sejam um campo fertil

para jogos cientes do contexto, em que cada livro ou produto possa incluir informacoes especıficas a respeito de um quebra-

cabeca, seja com motivos publicitarios privados ou meramente ludicos e naturalmente incluidos pela populacao de forma

14

aberta e publicamente disponıvel. Nessa segunda forma, acredita-se que muitos sistemas cientes do contexto fomentarao a

criacao de comunidades mais dinamicas - ainda que de curta duracao, talvez se tornando as redes sociais do futuro. Seja

como for, essas aplicacoes deverao ser criadas de forma bottom-up, partindo-se dos objetos e das pessoas para apenas por

fim se escolher a melhor tecnologia a ser utilizada.

O que parece ser um fato incontestavel e que e cada vez maior a quantidade de informacao disponıvel no mundo. O

contexto inclui as informacoes disponıveis nesse mundo e que podem ser relevantes aos desejos e necessidades humanas.

Ele deve ser utilizado para se construir aplicacoes computacionais adaptaveis, principalmente porque e cada vez mais facil

obte-las dos inumeros sensores disponıveis nos dispositivos existentes. O entretenimento movel e fortemente influenciado

pela casualidade e pela curiosidade, mas principalmente pela existencia de outras pessoas com quem se divertir. Parece

tambem que a adaptacao ao contexto tem potencial para auxiliar nessa interacao, produzindo aplicacoes mais divertidas

com a criacao de condicoes interessantes em situacoes triviais do cotidiano.

Referencias

[1] Abowd, G. et al. Towards a Better Understanding of Context and Context-Awareness. In Proceedings of the 1st

international symposium on Handheld and Ubiquitous Computing (HUC ’99). Springer-Verlag, 1999.

[2] Bassoli, A. et al. Undersound and the Above Ground. In Proceedings the 5th International Mobile Music Workshop

(poster). MMW, 2008.

[3] Cadenas, A. et al. Context management in mobile environments: a semantic approach. In Proceedings of the 1st

Workshop on Context, Information and Ontologies (CIAO ’09). ACM, 2009.

[4] Castelli, M. Mogi: Socially Connected GPS Gaming. Newtgames, 2003.

[5] Chatzigiannakis, I. et al. Brief Announcement: Fun In Numbers - A Platform for Sensor-based Multiplayer Pervasive

Games. In Proceedings of the 22nd ACM symposium on Parallelism in algorithms and architectures (SPAA ’10).

ACM, 2010.

[6] Cheok, A. et al. Human Pacman: a sensing-based mobile entertainment system with ubiquitous computing and

tangible interaction. In Proceedings of the 2nd workshop on Network and system support for games (NetGames ’03).

ACM, 2003.

[7] Cisco Systems Inc. The Internet of Things [INFOGRAPHIC]. Cisco Blog, 2011. Disponıvel em:

http://blogs.cisco.com/news/the-internet-of-things-infographic/. Acesso em: 16 de maio de 2012.

[8] CNET News. 2011 ends with almost 6 billion mobile phone subscriptions. CNET News - Internet & Me-

dia. CNET, 2012. Disponıvel em: http://news.cnet.com/8301-1023 3-57352095-93/2011-ends-with-almost-6-billion-

mobile-phone-subscriptions/. Acesso em: 04 de julho de 2012.

15

[9] Dediu, H. When will tablets outsell traditional PCs?. Asymco blog, 2012. Disponıvel em:

http://tabtimes.com/news/ittech-stats-research/2012/07/03/displaysearch-tablets-set-outsell-notebooks-2016. Acesso

em: 04 de julho de 2012.

[10] Dourish, P. What We Talk About When We Talk About Context. Personal and Ubiquitous Computing. vol. 8, is. 1,

2004.

[11] Foth, M. e Schroeter, R. Enhancing the experience of public transport users with urban screens and mobile ap-

plications. In Proceedings of the 14th International Academic MindTrek Conference: Envisioning Future Media

Environments (MindTrek ’10). ACM, 2010.

[12] Gluhak, A. et al. UbiClub - A context Aware Environment for Nightclub Entertainment and management. In Procee-

dings of the 15th IST Mobile Communications Summit. e-SENSE, 2006.

[13] Kemp, R. et al. Opportunistic communication for multiplayer mobile gaming: lessons learned from PhotoShoot. In

Proceedings of the Second International Workshop on Mobile Opportunistic Networking (MobiOpp ’10). ACM, 2010.

[14] Liu, H., Hu, J. e Rauterberg, M. AIRSF: a new entertainment adaptive framework for stress free air travels. In

Proceedings of the 2008 International Conference on Advances in Computer Entertainment Technology (ACE ’08).

ACM, 2008.

[15] Loke, S. On representing situations for context-aware pervasive computing: six ways to tell if you are in a mee-

ting. In Proceedings of the 4th annual IEEE international conference on Pervasive Computing and Communications

Workshops (PERCOMW ’06). IEEE Computer Society, 2006.

[16] mobThinking. Global mobile statistics 2012 Part A: Mobile subscribers; handset market share; mobile ope-

rators. mobThinking, 2012. Disponıvel em: http://mobithinking.com/mobile-marketing-tools/latest-mobile-

stats/a#subscribers. Acesso em: 04 de julho de 2012.

[17] Oracle. Opportunity Calling: The Future of Mobile Communications. Oracle Communications, 2010. Disponıvel em:

http://www.oracle.com/us/industries/communications/oracle-communications-mobile-report-170802.pdf. Acesso em:

16 de maio de 2012.

[18] Papakonstantinou, S. e Brujic-Okretic, V. Prototyping a Context-Aware Framework for Pervasive Entertainment

Applications. In Proceedings of the 2009 Conference in Games and Virtual Worlds for Serious Applications (VS-

GAMES ’09). IEEE Computer Society, 2009.

[19] Richardson, M. The Descriptive Camera. mattrichardson.com, 2012 Disponıvel em:

http://mattrichardson.com/Descriptive-Camera/. Acesso em: 16 de maio de 2012.

[20] Satyanarayanan, M. Challenges in Implementing a Context-Aware System. In IEEE Pervasive Computing, vol. 1, no.

3, pp. 2-. IEEE Computer Society, 2002.

[21] Schilit, B., Adams, N. e Want, R. Context-Aware Computing Applications. In Proceedings of the 1994 First Workshop

on Mobile Computing Systems and Applications (WMCSA ’94). IEEE Computer Society, 1994.

16

[22] TabTimes. DisplaySearch: Tablets set to outsell notebooks by 2016. Tablet News, Trends and Solutions. Tab-

Times, 2012. Disponıvel em: http://tabtimes.com/news/ittech-stats-research/2012/07/03/displaysearch-tablets-set-

outsell-notebooks-2016. Acesso em: 04 de julho de 2012.

[23] Tester, J. All the World’s a Game: the future of context-aware gaming. Horizons Program. Institute for the Future,

2006. Disponıvel em: http://www.iftf.org/node/748. Acesso em: 22 de maio de 2012.

[24] The Guardian News. How the smartphone is killing the PC. News - Technology. The Guardian, 2011. Disponıvel

em: http://www.guardian.co.uk/technology/2011/jun/05/smartphones-killing-pc. Acesso em: 04 de julho de 2012.

[25] Uhm, Y. et al. Development of portable intelligent gateway system for ubiquitous entertainment and location-aware

push services. In IEEE Trans. on Consum. Electron., vol. 56, no. 1, pp. 70-78. IEEE Computer Society, 2010.

[26] Wong, C. e Hiew, P. Mobile Entertainment: Review and Redefine. In Proceedings of the International Conference on

Mobile Business (ICMB ’05). IEEE Computer Society, 2005.

JULHO/2012

17