Prévia do material em texto
COMPUTAÇÃO UBÍQUA
COMPUTAÇÃO UBÍQUA
Copyright © UVA 2020
Nenhuma parte desta publicação pode ser reproduzida por qualquer
meio sem a prévia autorização desta instituição.
Texto de acordo com as normas do Novo Acordo Ortográfico
da Língua Portuguesa.
AUTORIA DO CONTEÚDO
Thiago Alberto Ramos Gabriel
REVISÃO
Janaina Senna
Janaina Vieira
Lydianna Lima
PROJETO GRÁFICO
UVA
DIAGRAMAÇÃO
UVA
G118
Gabriel, Thiago Alberto Ramos
Computação ubíqua [livro eletrônico] / Thiago Alberto
Ramos Gabriel. – Rio de Janeiro: UVA, 2020.
5,40 MB : PDF.
ISBN 978-65-5700-076-2.
1. Computação em nuvem. 2. Tecnologia da informação.
3. Arquitetura da informação. I. Universidade Veiga de
Almeida. II. Título.
CDD – 004
Bibliotecária Alexandra Delgado de Campos CRB 7 - 6626
Ficha Catalográfica elaborada pelo Sistema de Bibliotecas da UVA
SUMÁRIO
Apresentação
Autor
6
7
Ciência do Contexto 48
• Especificação de contexto, mecanismos para monitoramento e arqui-
teturas de sistemas
• Integração, sumarização e análise de contexto
• Aplicações sensíveis à localização
UNIDADE 2
8
• Redes de comunicação
• Redes infraestruturadas
• Redes de comunicação sem fio
Ambientes de Computação Pervasiva
UNIDADE 1
SUMÁRIO
Serviços e aplicações de Computação Pervasiva 127
• Funções associadas
• Tipos de ambientes físicos
• Questões de projeto
UNIDADE 4
85
• Plataformas para usuários e/ou dispositivos móveis
• Plataformas para processamento em nuvem
• Interface
Plataformas computacionais
UNIDADE 3
6
O avanço tecnológico auxiliou na questão do custo/benefício e na disseminação de vá-
rios dispositivos computacionais, como macbooks, smartphones e sensores, e também
uma diversidade tecnológica na comunicação. Tais avanços proporcionaram a concep-
ção e a forte adoção de benefícios computacionais em muitos domínios, como transpor-
te, agricultura, medicina, educação e indústria.
Conforme John Krumm, a computação ubíqua caracteriza-se por ser um campo vasto
de conhecimento interdisciplinar, o qual envolve a integração de conjuntos diversificados
de tecnologias utilizadas para a solução de um desafio específico. Ela é um protótipo que
envolve várias áreas da computação, abarcando sistemas distribuídos, heterogêneos,
voláteis e centrados no usuário. Existe uma interação natural do usuário em perceber a
quantidade de computadores, sensores e atuadores espalhados pelo ambiente, do mes-
mo modo que não se percebe a interação/integração entre esses componentes, já que a
tecnologia está tão incorporada ao dia a dia, de maneira calma e invisível
A Computação Ubíqua tem um enorme potencial tecnológico e de pesquisa, visto que
mundialmente as universidades têm estudado conceitos da área, a saber: captura de
experiências e intenções, adaptabilidade, descentralização, descoberta de serviços, he-
terogeneidade e onipresença. Sua finalidade é ter esses conceitos assimilados pelos es-
tudantes e que os modernos sistemas sejam capazes de atuar nas tarefas diárias, de tal
maneira que se dissolvam na percepção de quem os utiliza.
APRESENTAÇÃO
7
THIAGO ALBERTO RAMOS GABRIEL
Graduado em Engenharia de Controle e Automação pelo Instituto de Estudos Superiores
da Amazônia – IESAm-PA, com mestrado em Engenharia Mecânica pelo Instituto Militar
de Engenharia – IME-RJ, é um apaixonado por novas tecnologias e inovação.
Professor de graduação, possui mais de 10 anos de experiência em Computação Ubíqua,
Robótica, Automação e Visão Computacional. Coordenador do curso de Operação com o
uso de Drones, com implementações atendendo às necessidades do dia a dia da sociedade.
AUTOR
Ambientes de Computação
Pervasiva
UNIDADE 1
9
A Computação Pervasiva é uma área recente de pesquisa, que pretende fornecer uma
abordagem por meio da qual se pretende, quando se pretende, o que se pretende e como
se pretende a partir da virtualização de informações, serviços e aplicações. O ambiente
computacional está fundamentado em uma grande multiplicidade de dispositivos de vá-
rios tipos, móveis ou fixos, aplicações e serviços interconectados.
Conceituando a Computação Pervasiva, vemos que os meios de computação encon-
tram-se distribuídos no ambiente de maneira perceptível e imperceptível ao usuário.
Compartilhado no ambiente, o computador tem a capacidade de extrair informações
bem detalhadas de cada trecho no ambiente. Diante disso, é possível utilizá-la de manei-
ra dinâmica para a construção de modelos computacionais, ou seja, controlar, configurar
e ajustar aplicações para melhor atender às demandas de um dispositivo ou de um usuá-
rio. É possível que cada integrante seja capaz de detectar a existência de outro e interagir
com ele com o objetivo de construir um contexto inteligente, posto que o ambiente está
preparado por sensores, computadores e aplicações.
INTRODUÇÃO
Nesta unidade você será capaz de:
• Produzir alternativas para oferecer uma nova abordagem, inspirada nos con-
ceitos da orientação a objetos, que visa à criação desses ambientes pervasivos
independentes de tecnologia.
OBJETIVO
10
Redes de comunicação
As comunicações e as redes de comunicação transformaram a maneira como realiza-
mos negócios e como vivemos. As decisões de negócios necessitam ser tomadas cada
vez mais rapidamente e os tomadores de decisão exigem acesso imediato a informa-
ções precisas.
Por que esperar uma semana para que o relatório da Europa chegue pelo correio quando
ele pode aparecer quase instantaneamente por meio de redes de comunicação? Hoje, as
empresas dependem de redes de computadores e redes internas.
A comunicação e a rede de dados encontraram seu caminho não apenas por intermédio
de comunicação comercial e pessoal, mas também de muitas aplicações em questões
políticas e sociais. As pessoas descobriram como se comunicar com outras para expres-
sar suas opiniões e problemas sociais e políticos. As comunidades do mundo não estão
mais isoladas.
Contudo, antes de questionarmos com que rapidez podemos nos conectar, faz-se neces-
sário saber como as redes operam, quais tipos de tecnologias estão disponíveis e que
projeto atende melhor a qual conjunto de necessidades.
Quando nos comunicamos, estamos compartilhando informações. Esse compartilha-
mento pode ser local ou remoto. Entre os indivíduos, a comunicação local geralmente
ocorre cara a cara, enquanto a comunicação remota ocorre a distância.
O termo telecomunicações, que inclui telefonia, telegrafia e televisão, significa “comu-
nicação a distância” (tele vem do grego e significa “distante”). A palavra dados refere-se
às informações apresentadas de forma acordada entre as partes que criam e usam os
dados.
A transmissão de dados é a conversa entre dois equipamentos por intermédio de um
determinado meio de transmissão, como um fio de cobre. Para que se tenha a comuni-
cação de dados, os dispositivos devem fazer parte de um sistema de comunicação que
é formado pelos elementos de hardware (equipamento físico) e software (programas). A
eficiência de uma técnica de comunicação de dados consiste em quatro fatores funda-
mentais: entrega, precisão, pontualidade e instabilidade. Vamos conhecê-las!
11
Entrega
Os dados precisam ser entregues ao sistema de forma confiá-
vel. Eles devem ser recebidos pelo equipamento cogitado e so-
mente por esse equipamento ou usuário.
Precisão
A precisão na entrega dos dadostem que acontecer pelo sistema.
Não há utilidade em dados que, ao serem transmitidos, sofreram
alterações na transmissão e foram declinados sem correção.
Pontualidade
O sistema deve fornecer dados em tempo hábil. Os dados en-
tregues com atraso são inúteis. No caso de vídeo e áudio, en-
trega pontual significa entregar dados à medida que são produ-
zidos, na mesma ordem em que são produzidos e sem demora
significativa. Esse tipo de entrega é chamada de transmissão
em tempo real.
Instabilidade
Refere-se à variação no horário de chegada dos pacotes. É a
falta de conformidade e sintonia na delegação de pacotes de
áudio ou vídeo. Por exemplo, vamos supor que os pacotes de
vídeo sejam endereçados a cada 30 ms. Se alguns pacotes
chegarem com atraso de 30 ms e outros com atraso de 40 ms,
o resultado será uma qualidade desigual .
Em uma rede de comunicação é importante salientar cinco componentes. Antes de sa-
ber mais sobre cada um, observe a figura a seguir.
Transmissor Receptor
Mensagem
Regra 1
Regra 2
...
Regra n
Protocolo
Regra 1
Regra 2
...
Regra n
Protocolo
Transmissão média
Figura 1: Componentes da comunicação de dados.
Fonte: Elaborada pelo autor (2020).
12
1. Mensagem: a mensagem é o elemento fundamental da comunicação, e é trans-
mitida por algum meio. Os modos populares de informação englobam texto, núme-
ros, imagens, áudio e vídeo.
2. Transmissor: o transmissor é o equipamento que encaminha a mensagem de da-
dos. Por exemplo: computador pessoal, câmera de vídeo, smartphone, workstation
e assim por diante.
3. Receptor: o receptor é o equipamento que adquire a mensagem. Pode ser qual-
quer equipamento eletrônico (computador, smartphone, Raspberry Pi).
4. Meio de transmissão: a maneira por meio da qual haverá a transmissão é o traje-
to físico em que uma mensagem viaja do transmissor para o destinatário. Podemos
citar os meios de transmissão o cabo coaxial, o fio de par trançado (CAT5e, CAT 6),
o cabo de fibra óptica e as ondas eletromagnéticas.
5. Protocolo: um protocolo é um conjunto de procedimentos de informações em que
se conduzirá a comunicação entre os equipamentos envolvidos. Representa um acor-
do entre os equipamentos de comunicação. Na ausência de um protocolo, dois equi-
pamentos podem ser conectados, mas não se comunicam, é como uma tentativa de
diálogo entre um chileno e um russo, com ambos falando apenas a língua nativa.
Em uma representação da comunicação de dados a informação é fornecida de diferen-
tes formas, como texto, números, imagens, áudio e vídeo. No sistema de comunicação
de dados, o texto é caracterizado por um padrão de bits, uma sucessão de 1s e 0s. Uma
diversidade de conjuntos de padrões de bits foram projetados para constituir símbolos
de texto. Cada conjunto é chamado de código e a representatividade de símbolos é cha-
mada de codificação.
Atualmente, o Unicode é o sistema de codificação predominante, que faz uso de 32 bits
para compor um símbolo ou caractere usado em qualquer idioma do mundo. O ASCII
(American Standard Code for Information Interchange), desenvolvido há algumas déca-
das nos Estados Unidos, agora constitui os primeiros 127 caracteres em Unicode e tam-
bém é conhecido como latim básico.
Os bits, de forma padronizada, têm sua representação por meio de números. E um có-
digo como ASCII não é usado para espelhar números; existe a conversão do número de
forma direta em número binário, simplificando assim as operações matemáticas. Exis-
tem alguns sistemas de numeração, cada um com sua finalidade e aplicação.
Fazendo uso dos padrões de bits, surgem as imagens com as suas representações. Par-
ticularmente, uma imagem é elaborada por uma matriz de pixels (elementos de imagem),
na qual cada pixel é um ponto pequeno. A dimensão do pixel depende da resolução. Uma
13
imagem, por exemplo, pode ser dividida em 3.000 pixels ou 30.000 pixels. No segundo
caso, há melhor representação da imagem (melhor resolução), mas é necessário mais
memória para armazená-la.
Depois que uma imagem é dividida em pixels, cada pixel recebe um padrão de bits. A
magnitude e a resolução do padrão dependem da imagem. Para uma imagem projetada
com, simplesmente, pontos em preto e branco (por exemplo, um tabuleiro de xadrez), um
modelo de 1 bit é o necessário para simbolizar um pixel.
Caso uma imagem não seja projetada de pixels pretos e brancos genuínos, o acréscimo
do tamanho do modelo de bits para a inserção da escala de cinza é plausível.
Uma escala de cinza para exibição em quatro níveis é capaz do uso de modelos
de 2 bits. Pode-se simbolizar um pixel preto por 00, um pixel cinza-escuro por 01,
um pixel cinza-claro sendo representado 10 e um pixel branco representando 11.
Exemplo
Existem diversos métodos para representar imagens coloridas, como:
• RGB: tem essa nomenclatura por causa de cada cor em sua composição, uma
combinação de três cores principais: vermelho, verde e azul. A intensidade de cada
cor é quantificada e um padrão de bits é atribuído a ela.
• YCM: neste método, uma cor é feita de uma combinação de três outras cores
primárias: amarelo, ciano e magenta.
O áudio vem a ser uma técnica de transmissão de som ou música, ou refere-se à grava-
ção. É possível ter a percepção do som devido à capacidade auditiva. A natureza do áu-
dio é totalmente diferente de texto, números ou imagens, tendo um sinal contínuo e não
discreto. Esse sinal contínuo é perceptível quando é utilizado um microfone que muda a
voz ou a música para um sinal elétrico.
O vídeo diz respeito a uma tecnologia de tratamento de sinais analógicos, digitais ou ele-
trônicos, cujo objetivo é de obter, armazenar e manifestar ou apresentar uma sucessão
de imagens com impressão de movimento. Ele pode ser construído como uma entida-
de sequencial (podemos citar, como exemplo, uma câmera de televisão) ou pode ser
uma conformidade de imagens, cada uma sendo uma entidade discreta, organizada para
transmitir a ideia de movimento.
14
A principal finalidade da webcam era de vigiar o café. Em 1991 surgiu a webcam,
sendo instalada no laboratório de computação da Universidade de Cambridge,
no Reino Unido. O equipamento transmitia as imagens na rede interna para que
as pessoas soubessem se ainda tinha café na jarra sem precisarem sair do lugar.
Ampliando o foco
Conforme o conhecimento torna-se mais valioso, as plataformas digitais e eletrônicas
evoluem tecnologicamente com o objetivo de atender à sociedade em sua necessidade
rápida de acesso à informação, facultando que vários indivíduos, em várias partes do
mundo, obtenham um espaço virtual em que possam se expressar e se conectar nos
mais diversos contextos. Logo, esses espaços virtuais sofreram modificações gradativa-
mente, formatando um novo cenário conectivo, que é a mobilidade. A comunicação entre
dispositivos pode ser simplex, half-duplex ou full-duplex, como mostra a figura a seguir.
Figura 2: Comunicação entre dispositivos.
Direção dos dados no tempo 1
Direção dos dados no tempo 2
Direção dos dados simultaneamente
Direção dos dados
Mainframe Monitor
Direção dos dados no tempo 1
Direção dos dados no tempo 2
Direção dos dados simultaneamente
Direção dos dados
Mainframe Monitor
Direção dos dados no tempo 1
Direção dos dados no tempo 2
Direção dos dados simultaneamente
Direção dos dados
Mainframe Monitor
a. Simplex
b. Half-duplex
c. Full-duplex
15
Modo simplex
O seu fluxo de dados da comunicação ocorre em um único sentido, ou seja, unidirecional,
com dados circulando em uma única mão. Somente um dos dois equipamentos em um
link pode transmitir; o outro só pode receber; aí temos o típico exemplo de TV e rádio
(conforme a imagem a, na Figura 2).
Os teclados e monitores são outros exemplos de equipamentos simplex. O
teclado pode apenas inserir entrada; o monitor pode aceitar apenas saída. No
modo simplex, o comportamento de dados pode fazer uso de toda a capacida-
de do canal para enviar dados em uma direção.
Exemplo
Modo half-duplex
É umamaneira de transmissão em duplo sentido em virtude do tempo, mas não instan-
taneamente. Com esse comportamento de dados, cada ponta da ligação emite um por
vez (conforme imagem b).
Essa forma de transmissão é bem visualizada nas comunicações entre computadores
nas quais um envia a mensagem e o outro recebe e escuta. Half-duplex é uma espécie de
ligação de uma cidade a outra via ponte, mas uma ponte que só permite a passagem de
um veículo por vez, devido à sua capacidade. Quando os veículos estão viajando em uma
direção, o veículo que está indo para o outro lado deve esperar. Toda a capacidade de um
canal, na transmissão half-duplex, é adquirida por qualquer um dos dois dispositivos que
estão transmitindo naquele momento.
Os rádios walkie-talkies e CB (banda do cidadão) são sistemas half-duplex.
Exemplo
Geralmente o uso do half-duplex acontece em situações em que não há necessidade de
comunicação nas duas direções ao mesmo tempo; toda a capacidade do canal pode ser
utilizada para cada direção.
16
Modo full-duplex
Também denominado de duplex, nesse modo ambos os equipamentos podem transmitir
e receber simultaneamente (conforme a imagem c).
Pensando em uma estrada, é como uma via de mão dupla com o movimento fluindo
em ambas as direções simultaneamente. No formato full-duplex, os sinais em uma di-
reção comutam informações com os sinais em outra direção. Essa distribuição de in-
formações pode acontecer de duas formas: os dados devem conter dois caminhos de
transmissão fisicamente separados, sendo um para envio e outro para recebimento; ou a
faculdade do canal é dividida entre os sinais que viajam nas duas direções.
A rede telefônica: já que duas pessoas estão se comunicando por uma linha
telefônica, ambas podem falar e ouvir ao mesmo tempo.
Exemplo
O comportamento de dados full-duplex é utilizado no instante em que a comunicação
nas duas direções se faz necessária o tempo todo. A capacidade do canal, contudo, tem
sua proporcionalidade entre as duas direções.
Uma rede de comunicação (ou simples-
mente rede), ilustrada na Figura 3, tem por
embasamento uma interconexão de diver-
sos roteadores compostos por processa-
dores inteligentes; como exemplo pode-se
citar os microprocessadores. A finalidade
principal desses processadores é rotear
dados pela rede, por isso cada roteador
possui um ou mais hosts conectados a ele.
Vale lembrar que hosts são equipamentos
que conversam entre si.
A rede foi planejada para servir como um
recurso compartilhado para mover dados
trocados entre hosts de maneira eficiente
e para fornecer uma estrutura para supor-
tar novos aplicativos e serviços.
Figura 3: Rede de comunicação de dados.
Fonte: Elaborada pelo autor (2020).
Roteadores
Máquinas
Limites de
subredes
17
A rede telefônica é um exemplo de rede de comunicação na qual a comutação de circui-
tos é usada para fornecer um caminho de comunicação dedicado, ou circuito, entre dois
hosts. O circuito consiste em uma sequência conectada de links da origem ao destino.
Os links podem consistir em intervalos de tempo para os quais um canal comum está
disponível para acesso por vários usuários. O circuito, uma vez instalado, permanece inin-
terrupto durante a transmissão. A comutação de circuitos geralmente é controlada por
um mecanismo de controle hierárquico centralizado, com conhecimento da organização
da rede. Para estabelecer uma conexão comutada por circuito, um caminho disponível
pela rede é capturado e, em seguida, dedicado ao uso exclusivo dos dois hosts que de-
sejam se comunicar.
Em particular, um sinal de solicitação de chamada deve propagar-se até o destino e ser
reconhecido antes que a transmissão possa começar. Em seguida, a rede é efetivamente
transparente para os usuários. Isso significa que, durante o tempo de conexão, a largura
de banda e os recursos alocados ao circuito são essencialmente “de propriedade” dos
dois hosts até que o circuito seja desconectado.
O circuito, portanto, representa um uso eficiente de recursos somente na medida em que
a largura de banda alocada é usada corretamente. Embora a rede telefônica seja usada
para transmitir dados, a voz constitui a maior parte do tráfego da rede. De fato, a comu-
tação de circuitos é adequada para a transmissão de sinais de voz, uma vez que a voz dá
origem a um tráfego de fluxo e as conversas de voz tendem a ser de longa duração (cer-
ca de dois minutos em média) em comparação com o tempo necessário para configurar
o circuito (cerca de 0,1 a 0,5 segundos).
Além disso, na maioria das conversas por voz, existe um fluxo de informações para uma
porcentagem relativamente grande do tempo de conexão, o que torna a comutação de
circuitos ainda mais adequada para conversas por voz.
Na comutação de circuitos, um link de comunicação é compartilhado entre as diferentes
sessões usando esse link em uma base de alocação fixa. Na comutação de pacotes, por
outro lado, o compartilhamento é feito sob demanda, portanto há uma vantagem sobre
a comutação de circuitos, pois quando um link tem tráfego para enviar, ele pode ser mais
plenamente utilizado.
O princípio de rede da comutação de pacotes é “armazenar e encaminhar”. Em uma rede
comutada por pacotes, qualquer mensagem maior do que um tamanho especificando
os segmentos são comumente referidos como pacotes. A originalidade da mensagem é
18
remodelada no destino, pacote a pacote. A rede pode ser vista como um pool distribuído
de recursos de rede (isto é, buffers, largura de banda do canal e processadores de comu-
tação), cuja capacidade é compartilhada dinamicamente por uma comunidade de hosts
concorrentes que desejam se comunicar.
Por outro lado, em uma comutação de rede de circuitos, os recursos são aplicáveis a
um par de máquinas durante todo o período em que estão na sessão. Por conseguinte,
a comutação de pacotes é muito mais adequada para um universo de comunicação por
computador no qual, ocasionalmente, são trocados dados entre hosts. O uso da comu-
tação de pacotes, no entanto, exige que um controle cuidadoso seja exercido sobre as
demandas do usuário; caso contrário, a rede pode ser seriamente abusada.
O design de uma rede de dados (ou seja, uma rede na qual os hosts são todos constituí-
dos por computadores e terminais) pode prosseguir de maneira ordenada, observando a
rede em termos de uma arquitetura em camadas, considerada uma hierarquia de cama-
das aninhadas. Camada refere-se a um processo ou dispositivo dentro de um sistema de
computador, projetado para executar uma função específica.
Naturalmente, os projetistas de uma camada estarão intimamente familiarizados com
seus detalhes e operação internos. No nível do sistema, no entanto, o usuário vê a ca-
mada apenas como uma “caixa preta” descrita em termos de entrada, saída e a relação
funcional entre saídas e entradas.
Em uma arquitetura em camadas, cada camada considera a próxima camada inferior
como uma ou mais caixas pretas com alguma especificação funcional a ser usada pela
camada superior especificada. O problema de comunicação altamente complexa nas
redes de dados é resolvido como um conjunto gerenciável de funções de intertravamen-
to bem definidas. É essa linha de raciocínio que levou ao desenvolvimento do modelo
de referência OSI (Open Systems Interconnection) por um subcomitê da Organização
Internacional de Padronização. O termo aberto refere-se à capacidade de quaisquer dois
sistemas em conformidade com o modelo de referência e seus padrões associados se
interconectarem.
No modelo de referência OSI as funções de comunicação e conexão relacionadas são
organizadas como uma série de camadas, ou níveis, com interfaces bem definidas e
com cada camada construída em seu predecessor. Particularmente, cada camada exe-
cuta um subprocesso relacionado de funções primitivas e conta com a próxima camada
inferior para executar funções primitivas adicionais. Outrora, cada camada dedica certos
serviços para a camada superior seguinte e a protegedos detalhes de implementação
19
desses serviços. Entre cada par de camadas há uma interface. É a interface que define
os serviços oferecidos pela camada inferior à camada superior.
Qualquer discussão sobre redes de computadores leva naturalmente à internet. No para-
digma da internet, a tecnologia de rede subjacente é dissociada dos aplicativos em ques-
tão, adotando uma definição abstrata de serviço de rede. Em termos mais específicos,
podemos dizer o seguinte:
As aplicações são realizadas independentemente da tecnologia empregada
para construir a rede.
Da mesma forma, a tecnologia de rede pode evoluir sem afetar os aplicativos.
A arquitetura da internet, representada na figura a seguir, possui três blocos funcionais:
1. hosts: os hosts são nós da rede, onde os dados se originam ou onde são entre-
gues.
2. sub-redes: dentro de uma sub-rede, todos os hosts pertencentes a essa sub-rede
trocam dados diretamente.
3. Roteadores: os roteadores nos consagram intermediários que são usados para
cruzar os limites de sub-rede. Veja, por exemplo, as sub-redes 1 e 3 na Figura 4.
Sub-rede 2
Sub-rede 3Sub-rede 1
Figura 4: Divisão em sub-redes.
Fonte: Elaborada pelo autor (2020).
Máquinas Máquinas
RoteadoresRoteadores
20
Como outras redes de computadores, a internet possui um conjunto de protocolos em
camadas. Em particular, a troca de dados entre os hosts e roteadores é realizada por
meio do Protocolo da internet (IP), conforme ilustrado a seguir na Figura 5.
O IP é um protocolo não residencial que reside na camada de rede (ou seja, na camada 3
do OSI modelo de referência). É simples, definindo um plano de endereçamento com um
recurso interno para transportar dados na forma de pacotes de nó para nó. Ao cruzar um
limite de sub-rede, os roteadores tomam as decisões sobre como os pacotes endereça-
dos para um destino especificado devem ser roteados. Isso é feito com base nas tabelas
de roteamento desenvolvidas por meio do uso de protocolos personalizados para a troca
de informações pertinentes com outros roteadores.
O resultado líquido do uso do conjunto de protocolos em camadas é a entrega do melhor
serviço de esforço. Ou seja, a internet oferece a entrega de cada pacote de dados, mas
não há garantias sobre o tempo de trânsito experimentado na entrega ou mesmo se os
pacotes serão entregues ao destinatário pretendido.
Subrede 1 Subrede 2 Subrede 3
AP
TCP/UDP
IP
AP
TCP/UDP
IP
AP
TCP/UDP
IP
AP
TCP/UDP
IP
Figura 5: Camadas de rede.
Fonte: Elaborada pelo autor (2020).
Com a crescente demanda por novos serviços, tais como vídeo sob demanda, comunicações
multimídia e a disponibilidade das principais tecnologias facilitadoras — fibras ópticas, comuta-
dores digitais —, a rede telefônica está evoluindo para uma rede de banda larga para todos os
fins, conhecida como a rede digital de serviços integrados de banda larga (B-ISDN).
A tecnologia subjacente que possibilita o B-ISDN é um protocolo de interface de rede de
usuário chamado modo de transferência assíncrona (ATM). ATM é uma técnica de alta
largura de banda, baixo atraso e tipo pacote, usada para comutação e multiplexação; é
independente do meio de transporte físico. O recurso de baixo atraso da técnica é ne-
cessário para oferecer suporte a serviços em tempo real, como voz. Os recursos de alta
largura de banda são necessários para lidar com o vídeo sob demanda.
21
Simplificando, o ATM é uma tecnologia oculta aos usuários e um serviço
orientado à conexão que é visível para os usuários.
Como o nome indica, o caixa eletrônico não é síncrono (ou seja, vinculado a um relógio
principal). Permite o transporte de informações digitais na forma de pequenos pacotes
de tamanho fixo chamado células. O principal recurso do ATM a ser observado aqui é
que o serviço orientado à conexão preserva o sequenciamento de chamadas, o que sig-
nifica que nenhuma remontagem de células é necessária antes de apresentar o fluxo de
tráfego ao host de destino. A implantação de uma tecnologia de comutação de células
no B-ISDN é uma ruptura gigantesca com o uso tradicional da comutação de circuitos na
rede telefônica.
O objetivo principal do ATM é:
Alocar recursos de rede (ou seja, largura de banda, buffers e potência de
processamento) de maneira eficiente, de modo a garantir a qualidade de
serviço (QoS) esperada para cada conexão.
A QoS é medida em termos de três parâmetros:
A qualidade do serviço oferecido no B-ISDN deve ser contrastada com o melhor serviço
oferecido pela internet.
Taxa de perda de
células
Definida como a proporção do número de células perdidas no
transporte pela rede e o número total de células bombeadas
para a rede.
Atraso na célula
Definido como o tempo gasto para uma célula de uma conexão
específica não transitar pela rede.
Variação do atraso
celular
Definida como a dispersão ou instabilidade no atraso médio da
célula.
22
Redes infraestruturadas
Samuel B. Morse, em 1837, validou um telégrafo prático que forneceu a base para o servi-
ço de telegrama: a transmissão de mensagens de texto a longas distâncias. No Código
Morse, conforme figura a seguir, o texto foi codificado em sequência de pontos e traços.
Ao comunicar cada ponto ou traço, a transmissão se dava em pulsos curtos e longos
de corrente elétrica por meio de um fio de cobre. Com o uso de dois sinais, a telegrafia
utilizou um sistema de transmissão digital.
O Código Morse é um precursor da era do sistema de comunicação digital. Nele, toda a
transmissão ocorre em termos de sinais binários e todas as informações do usuário
devem primeiro ser convertidas para a forma binária.
Tabela 1: Código Morse.
Uma ligação por meio de cabo submarino foi estabelecida entre Londres e Paris em 1851,
ligando as redes de estações telegráficas, cobrindo continentes inteiros. Nessas redes,
uma mensagem ou telegrama chegaria a uma estação de telégrafo e um operador to-
23
maria uma decisão de roteamento com base no endereço de destino. Posteriormente, o
operador armazenaria a mensagem até que a linha de comunicação desejada estivesse
disponível e encaminharia a mensagem para a próxima estação apropriada.
O processo de armazenamento e encaminhamento se repetiria em cada
estação intermediária até que a mensagem chegasse à estação de destino.
A troca de mensagens é utilizada para apresentar a abordagem em operar uma
rede. Endereçamento, roteamento e encaminhamento são elementos primor-
diais das modernas redes de computadores.
Importante
Inicialmente a taxa de transmissão (bits/segundo) foi limitada de tal forma que um único
operador humano pudesse inserir uma sequência de símbolos. Um operador experiente
poderia transmitir a uma velocidade de 25 a 30 palavras/minuto. Atualmente, em um
primeiro experimento, foram transferidos dados de um datacenter no Brasil para Miami
(EUA), de forma satisfatória com estabilidade e por um período de 17 horas a uma taxa
de, aproximadamente, 85 Gigabits/segundo, chegando a uma capacidade de transmis-
são 8,5 mil vezes maior do que a banda larga de internet de uso doméstico no Brasil, que
é de até 10 Mbps.
Com o passar do tempo diversas invenções foram surgindo, com tentativas de aumentar
a taxa na qual a informação poderia ser transmitida por intermédio de um único circuito
telegráfico de multiplexação, ou seja, combinando símbolos de vários operadores em uma
mesma linha de comunicação. Em 1874 um sistema de multiplexação usava caracteres
reunidos em grupos de cinco símbolos binários, representando cada letra do alfabeto.
O Sistema Baudot, como ficou conhecido, poderia intercalar caracteres de di-
versos operadores de telégrafo em uma única linha de transmissão, levando à
prática moderna de representar alfanuméricos por grupos de bits, a exemplo o
código ASCII (American Standard Code for InformationInterchange), conforme
mostra a Tabela 2.
Exemplo
24
Tabela 2: Representação binária de um subconjunto do código ASCII.
Fonte: Elaborada pelo autor (2020).
Então, comopodemos conceituar as redes infraestruturadas?
Redes infraestruturadas são aquelas em que a máquina móvel está em contato direto
com uma Estação de Suporte à Mobilidade (ESM), inclusive chamadas de Ponto de
Acesso (AP) na rede fixa. Elas contam com uma infraestrutura física de suporte em que
vai conectar os dispositivos wireless à rede. Por meio de um elemento concentrador, ela
resulta em um equipamento central da rede, fazendo com que se tenha a comunicação
com diversas estações clientes e detém as configurações de segurança:
Autorização Controle de banda Filtros de pacote Criptografia, entre
outros
Fio de cobre Cabo coaxial Fibra óptica Rede sem fio
Tendo esse modelo como facilitador da interligação com redes cabeadas e/ou com a
internet, uma vez que o concentrador desempenha o papel de gateway.
Temos quatro tipos de redes a serem utilizadas para transmitir informações no mundo
das comunicações:
25
Discutiremos brevemente três das quatro opções para mostrar que a fibra óptica é a melhor
alternativa disponível quando as informações devem ser transmitidas a longas distâncias.
Fio de cobre
Antigamente, o fio de cobre era o único meio de se transmitirem informações. Tecnica-
mente conhecido como UTP (par trançado não blindado), a conexão consiste em vários
pares, tipicamente dois ou quatro, de fios de cobre. Os pares de fios são chamados de
“torcidos” porque são torcidos fisicamente. Isso ajuda a reduzir a interferência entre os
fios e a suscetibilidade ao ruído.
O cabo UTP não possui blindagem e, portanto, uma parte do sinal de alta frequência
pode “vazar”. Além disso, a torção no par de cobre pode ser bastante casual, projetado
tanto para identificar quais fios pertencem a um par quanto para lidar com problemas de
transmissão. Embora não seja perfeita, essa tecnologia de cabeamento foi por muitos
anos bastante satisfatória para fins de comunicação de voz. Consequentemente, existem
milhões de quilômetros de fios de cobre na rede telefônica pública comutada.
No entanto, o fio de cobre não apenas possuía limitações, mas também foi feito o cabea-
mento para torná-lo ainda mais inadequado para a transmissão de dados em alta velocida-
de. Essas ações assumiram várias formas, embora apenas um exemplo seja mencionado.
As bobinas de carga eram frequentemente adicionadas às malhas de cabos
com mais de alguns quilômetros. As bobinas eram essencialmente filtros de
passa-baixo, o que significava que passavam sem perder as baixas frequências
que correspondem à voz, mas bloqueavam as frequências mais altas. O blo-
queio de alta frequência é desastroso para a comunicação de dados, pois na
verdade contamos com altas frequências para atingir a velocidade desejada de
transmissão de dados.
Exemplo
Em conclusão, o que antes era um bom sistema de transmissão de voz tornou-se um
grande problema para a transmissão de dados. De fato, de todos os fios possíveis, o fio
de cobre UTP é provavelmente o menos desejado, pois possui as piores propriedades de
transmissão. No entanto, está presente em praticamente todos os lugares, menos nos
países desenvolvidos.
26
Para aplicativos de rede, o termo UTP geralmente refere-se a 100 - Ω cabos
de categoria 5, cujas características são rigorosamente especificadas nos pa-
drões de rede de dados. Técnicas foram desenvolvidas para fornecer meios
de conversar por telefone e transferir dados em alta velocidade usando o mes-
mo fio de cobre de par trançado. Essas técnicas, denominadas tecnologia DSL
(loop de assinante digital), são fornecidas em diversos sabores, sendo a DSL
assimétrica a mais popular para conectividade doméstica à internet. No en-
tanto, mesmo com o hardware mais avançado, a maior largura de banda da
conexão DSL pode chegar a um nível de 50 milhões de bits por segundo (Mb/s).
Na prática, um número mais típico seria de cerca de 1 Mb/s. Como veremos
daqui a pouco, esse é um número relativamente baixo se comparado ao da fi-
bra óptica. A diferença resulta das fracas características de transmissão de fios
de cobre não blindados em comparação com as excelentes características de
transmissão de fibras ópticas.
Ampliando o foco
A baixa largura de banda do cabeamento UTP é apenas um de seus problemas. O segun-
do problema é a atenuação do sinal, que é muito alta nesse meio.
Um sinal DSL praticamente desaparece após a transmissão por alguns quilô-
metros. Ele precisa ser recuperado, amplificado e retransmitido por sofistica-
dos equipamentos eletrônicos. Você pode imaginar que seriam necessários
muitos fios UTP e pontos de retransmissão para enviar um fluxo de 10 Gb/s de
Nova York para São Francisco. Portanto, embora o cabo UTP seja útil em casa,
claramente precisamos de algo melhor para enviar quantidades significativas
de dados a longas distâncias.
Exemplo
Cabo coaxial
O cabo coaxial consiste em um único fio de cobre percorrendo o eixo do cabo. Esse fio
é separado da blindagem externa por um isolador feito de material dielétrico. Uma blin-
dagem condutora cobre o cabo. Geralmente, uma cobertura isolante externa é aplicada
ao cabo geral.
27
Devido à construção coaxial do cabo e à blindagem externa, é possível
enviar frequências bastante altas.
Em sistemas de televisão a cabo na América do Norte, 20 canais de TV, cada
um com 6 MHz de largura de banda, podem ser transmitidos em um único
cabo coaxial.
Exemplo
O acesso ao cabo coaxial foi usado originalmente para fins de transmissão de vídeo.
Como resultado, o sistema é inerentemente bem adequado para transferência de da-
dos em alta velocidade. Técnicas foram desenvolvidas para fornecer vídeo transmitido e
acesso à internet de alta velocidade no mesmo cabo coaxial. Nós nos referimos a essas
técnicas coletivamente como tecnologia de modem a cabo de alta velocidade. No en-
tanto, este termo envolve um pouco de trapaça.
O termo “cabo coaxial” define, na prática, um sistema que é realmente um híbrido de
fibras ópticas e um cabo coaxial com a porção de fibra óptica da rede de cabos oculta
ao usuário final. A razão para essa “hibridização” da rede de cabos coaxiais é que, apesar
de coaxiais, esses cabos têm melhores propriedades de transmissão de sinal que cabos
UTP, são inferiores às fibras ópticas. Como resultado, sua empresa de cabo, que fornece
programação de TV, só precisa instalar fibras ópticas em sua infraestrutura nos últimos
quilômetros adjacentes a você ao usar cabos coaxiais.
Outro problema com o cabo coaxial é o fato de que o acesso ao cabo não está disponível
universalmente. A partir dessa breve descrição, a conclusão parece ser que, embora o
cabo coaxial seja um pouco melhor do que os fios UTP, ele ainda não é bom o suficiente
para transmitir grandes quantidades de informações a longas distâncias.
Fibra óptica
A fibra é o terceiro meio de transmissão que discutimos. Diremos imediatamente que é
inquestionavelmente o meio de transmissão preferido. Enquanto a transmissão sobre
cobre utiliza frequências na faixa de megahertz no melhor dos casos, a transmissão
sobre fibra utiliza frequências aproximadamente 1 milhão de vezes mais altas, na faixa
de terahertz. As frequências Terahertz se traduzem em terabytes por segundo (TB/s) de
largura de banda e isso é realmente muito grande.
28
A conexão à internet mais congestionada hoje em dia ainda requer largura de
banda menor de 1 TB/s. Dito de outra maneira, um único fio de fibra óptica é
atualmente suficiente para transportar todo o tráfego da internet entre a Améri-
ca do Norte e a Europa. Podemos dizer que não é ruim.
Exemplo
A tecnologia de fibra ótica, oferecendo potencial de largura de banda praticamente ilimi-
tado, é o meio de transmissão preferido para redes de longo curso. Também é am-
plamente considerada a solução definitiva para a entrega de acesso em banda larga ao
usuário final, chamado de última milha, o espaço de rede entre o escritório central da
operadora e a localização do usuário.
A parte da última milha da rede é normalmente a área em que ocorre a maio-ria dos gargalos que atrasam a entrega dos serviços de dados. No momento,
o fio UTP e o cabo coaxial ainda são usados na maioria dos casos para a
entrega de dados de última milha.
Além de sua enorme largura de banda de transmissão, a fibra óptica tem outra gran-
de vantagem:
Sua perda de atenuação muito baixa. Os sinais ópticos viajam por quilô-
metros sem perder praticamente nenhuma força. Lembre-se, para com-
paração, de que os sinais elétricos que passam por fios de cobre desapa-
recem basicamente após alguns quilômetros!
Se você pensar na fibra óptica como um pedaço de vidro, poderá ver objetos a vários qui-
lômetros de distância ao olhar para ela. Isso é tremendamente impressionante e útil. Não
há necessidade de regenerar sinais ópticos por vários quilômetros de sua transmissão
ao longo da fibra óptica.
Além da largura de banda disponível — que é enorme em comparação com o fio de cobre
ou cabo coaxial, e a perda de sinal muito baixa, que é novamente muito menor — a fibra
óptica tem outras vantagens.
29
A propagação do sinal óptico na fibra é insensível ao ruído externo. O Tópico
2 é dedicado a questões de transmissão óptica, pois elas constituem a base
para a rede óptica; portanto, adiamos uma discussão completa. Por enquanto,
vamos apenas resumir dizendo que o sinal de dados em uma fibra óptica tem
uma largura de banda muito alta, um coeficiente de atenuação muito baixo e é
muito robusto (é muito difícil perturbar).
Exemplo
Parece que terminamos as escolhas para meios de transmissão adequados: a fibra ópti-
ca tem uma grande vantagem no seu uso, mas espere um momento: e quanto à conexão
sem fio? Hoje em dia, tudo está sem fio: seu telefone celular CDMA ou GSM, sua conexão
Wi-Fi 802.11 no seu laptop e até o abridor da porta da garagem. Será que o wireless é
mais adequado do que o cabo óptico? Na verdade não, mas, por uma questão de integri-
dade, discutiremos no próximo tópico sobre wireless.
A rede de banda larga global é uma conexão de milhares de redes diferentes implementa-
das em vários países e cidades por empresas que utilizam uma variedade de tecnologias
e protocolos, conforme mostra a Figura 6.
Figura 6: Tipos de protocolos.
Fonte: Elaborada pelo autor (2020).
SONET
Metro Ring
Hub
Server Workstation
Minicomputer Disk array Disk array
Router
Router
Town City
City
Fax
Telephone
Cable
Server
Modem
Comm Tower
City
SONET
Metro Ring
SONET
Metro Ring
LAN/Enterprise
SAN Network
Access Network
DWDM CoreEthernet
30
Por várias razões históricas, a rede global de banda larga é mais complicada do que po-
deria ter sido se fosse construída hoje a partir de zero, mas essa é a natureza de muitas
tecnologias. Esperamos lançar alguma luz sobre essa complexa selva de tecnologias de
hardware de rede, explicando os conceitos básicos. Armado com esse conhecimento,
você poderá navegar na infraestrutura da internet com melhor entendimento e poderá
encontrar detalhes adicionais, se necessário, nas fontes de referência apropriadas.
Para iniciar o processo de descoberta em complexidades de rede, particionamos a rede
global em cinco classes de redes que podem ser identificadas com base em sua exten-
são geográfica e funcionalidade, a saber:
Redes de acesso
As redes de acesso são usadas para obter acesso à infraestrutura de internet de
banda larga. Em casa, podemos usar uma tecnologia de discagem telefônica conven-
cional, antiquada, uma DSL ou uma tecnologia de modem a cabo para fazer essa co-
nexão. Alguns de nós podem usar a conexão sem fio por meio de telefones celulares
avançados ou conectando o laptop, usando uma placa sem fio WiFi 802.11. Apenas
alguns sortudos têm acesso a conexões de fibra óptica dedicadas com largura de
banda praticamente ilimitada.
Uma rede de acesso é:
Definida um pouco mais precisamente como a parte de uma rede pública comutada que
conecta o equipamento do escritório central a indivíduos assinantes. Todas essas cone-
xões de acesso, provenientes de vários usuários, precisam ser preparadas e entregues a
provedores de serviços de internet (ISPs), empresas que fornecem serviços de acesso à
internet em termos de conteúdo.
Em geral, as redes de acesso fornecem conectividade de dados, vídeo e voz a todos os
locais necessários para consumidores e clientes corporativos, usando vários protocolos
e tecnologias.
Redes locais e de armazenamento
As redes do campus universitário ou redes de grandes empresas são exemplos de
redes LAN. As redes locais conectam PCs, estações de trabalho, impressoras e outros
dispositivos dentro de um prédio ou campus, geralmente usando um protocolo Ethernet.
31
Uma rede LAN começa com um usuário único em um ambiente corporativo,
mas onde termina?
Normalmente, uma rede local é conectada à rede pública por meio de um firewall. O fi-
rewall fornece proteção de dados e segurança para uma empresa. Os firewalls também
fornecem um ponto de demarcação conveniente entre a infraestrutura de LAN e WAN/
MAN. As redes LAN normalmente usam fios de cobre e conexões coaxiais, pois estão
mais prontamente disponíveis que a fibra óptica e as distâncias envolvidas são curtas,
no máximo centenas de metros. Como resultado, o uso de fibra óptica em redes LAN é
bastante baixo, inexistente na maioria dos casos.
As redes de área de armazenamento (SANs) são redes locais especializadas que lidam
exclusivamente com dispositivos de armazenamento, como unidades de fita, discos e
servidores de armazenamento (conforme mostra a figura a seguir).
As redes de armazenamento que conectam dispositivos de armazenamento back-end
por meio de interfaces de alta velocidade usam um protocolo chamado canal de fibra.
Entretanto, não discutimos muito as redes LAN ou SAN neste material, pois nosso foco
está nas principais redes de dados.
Figura 7: Formas de comunicação em rede.
Fonte: Elaborada pelo autor (2020).
PC cliente Impressoras
de rede
Servidores
de aplicativos
Servidores
de banco de dados
Servidores de arquivos
de impressão
High End
Storage Arrays
Mid-range
Arrays & JBOD
Secondary
Storage
Armazenamento
conectado à rede
Servidor
conectado à rede
Comunicação de fibra e comutadores
LAN
SAN
32
Redes de área ampla e metropolitana
As redes de área ampla podem ser divididas em:
1. Redes de área metropolitana (MANs).
2. Redes de longa distância.
As redes de longa distância fornecem serviços de transmissão a longas distâncias, ge-
ralmente ao longo de centenas de quilômetros. Consequentemente, usam grandes “ca-
nos” para transportar o tráfego e seu principal serviço é entregar do ponto A ao ponto B.
Caminhões pesados em um sistema rodoviário transcontinental é um bom
exemplo de uma rede de longa distância.
Exemplo
Pequenos caminhões de distribuição em uma cidade seriam uma boa analogia
para redes de área metropolitana.
Exemplo
Os MANs abrangem grandes áreas metropolitanas e, portanto, cobrem distâncias de
cerca de 80 a 120 km. O tamanho do “canal” de dados é menor do que em uma rede de
longa distância, e os serviços tornam-se mais variados.
O que é necessário para construir redes econômicas de área ampla?
Primeiro, uma rede deve ser flexível, o que pode ser conseguido fornecendo muitas tro-
cas para evitar o tráfego em vários pontos da rede. Segundo, meios de percorrer longas
distâncias precisam ser fornecidos. Com a transmissão óptica, isso não é um problema
sob certas condições. Por fim, se muitos “carros” pudessem usar a mesma “rodovia”, o
sistema de rede seria capaz de garantir um alto rendimento.
33
Links ópticos
Os links ópticos são implantados em cada segmento (ou seja, acesso, SAN, LAN, MAN e
WAN) da infraestrutura de rede global. Redes como as de longa distância possuem muita
fibra óptica, enquanto outras, como a LAN de uma pequena empresa, possuem pouca ou
nenhuma. Muito poucas redes serão puramente ópticas, mas, na maioria das vezes, as
redes envolverão componentes ópticos e elétricos.
Existem muitas topologias de rede em redes ópticas de dados, asaber, de ponto a ponto,
hub, anel e redes totalmente em malha.
Vamos conhecer as vantagens e desvantagens de cada rede e as repre-
sentações esquemáticas de todas essas topologias?
Topologia ponto a ponto
A topologia ponto a ponto é mais simples.
Nessa configuração, o gerenciamento da
rede é direto, mas o link tem baixa confiabili-
dade. Se a fibra for cortada entre os pontos A
e B, não há como recuperar. Às vezes, os links
ponto a ponto são usados em redes de longa
distância, como em cabos sob oceanos.
Topologia do hub
A arquitetura de rede do hub acomoda um
crescimento inesperado e muda mais fa-
cilmente do que as redes simples ponto a
ponto. Um hub concentra o tráfego em
um local central e permite o reprovisio-
namento fácil dos circuitos. Um processo
de adição de mais um nó na configuração
do hub é simples.
A configuração do hub, no entanto, ainda
tem o problema do “ponto único de falha”.
Os hubs Ethernet são frequentemente usa-
dos em LANs, conforme mostra a Figura 9.
A B
Figura 8: Topologia ponto a ponto.
Fonte: Elaborada pelo autor (2020).
Figura 9: Topologia estrela.
Fonte: Elaborada pelo autor (2020).
A
B HUB
C
D
34
Topologia em anel
A topologia em anel depende da conectivi-
dade dos nós da rede por meio de um tipo
circular de arranjo. A principal vantagem da
topologia em anel é sua capacidade de so-
brevivência: se um cabo de fibra é cortado,
os nós têm inteligência para enviar os ser-
viços afetados por um caminho alternativo.
SONET/SDH usa topologia de anel predomi-
nantemente, conforme mostra a Figura 10.
Topologia de malha
Uma rede em malha consiste em qualquer
número de sites conectados arbitrariamente
com pelo menos um loop — uma topologia to-
talmente em malha para uma rede simples de
quatro nós. Uma característica típica de uma
rede em malha é que os nós dentro da rede
podem ser alcançados a partir de outros nós
por pelo menos duas rotas distintas. Na prá-
tica, as redes em malha são geralmente cons-
truídas usando-se anéis grandes e numerosas
subposições.
A topologia em malha pode ser muito cara em termos de hardware usado. A tecnologia
WDM frequentemente possui uma infraestrutura de malha, conforme mostra a Figura 11.
Figura 10: Topologia em anel.
Fonte: Elaborada pelo autor (2020).
A
B C
D
E
Figura 11: Topologia em malha.
Fonte: Elaborada pelo autor (2020).
A B
C D
35
Redes de comunicação sem fio
A finalidade da computação pervasiva é criar um ambiente inteligente. Para que essa
visão se concretize, as redes sem fio interconectadas exercem um papel vital na coleta
de informações, equipando suporte essencial à comunicação para o fluxo de informa-
ções e no processamento em um ambiente de mudança dinâmica.
Atualmente temos diversas redes de sensores sem fio interconectados (RSSF), cujos
objetivos são:
Coletar diferentes informações ambientais e vários objetos
As RSSF são ideais em diversas aplicações, como:
Com o grande crescimento das redes sem fio, equipamentos baseados na norma IEEE
802.11 e novas tecnologias estão surgindo. São notórios atualmente, dispositivos portá-
teis como smartphones, notebooks, entre outros.
Hoje, a maioria dos aplicativos de computação móvel sem fio requer conectividade sem fio
de salto único à rede com fio. Esse é o modelo tradicional de rede celular que suporta as
necessidades atuais de computação móvel, instalando estações-base e pontos de acesso.
Nessas redes, as comunicações entre dois hosts móveis dependem com-
pletamente do backbone com fio e das estações-base fixas. Um host mó-
vel fica a apenas um salto da estação-base.
No entanto, às vezes, nenhuma infraestrutura de backbone com fio pode estar disponí-
vel para oferecer suporte a comunicações entre um grupo de hosts móveis. Além disso,
pode haver situações em que a configuração de pontos de acesso fixos não é uma solu-
ção viável devido às considerações de custo, conveniência e desempenho.
Militar Monitoramento
ambiental Controle de inteligência
Gerenciamento de
tráfego Tratamento médico Indústria de manufatura,
entre outros
36
O grupo de usuários móveis pode precisar se comunicar e compartilhar informações
entre eles. Em tais situações, uma rede ad hoc pode ser formada.
O que seria uma rede ad hoc?
Uma rede ad hoc é uma rede temporária de nós autônomos que se auto-organizam
e autogerenciam a rede sem suporte de infraestrutura. Os nós nas redes ad hoc são
dispositivos de computação e comunicação, que podem ser notebooks, smartphones,
telefones celulares ou até sensores.
Uma rede ad hoc pode ser vista como uma coleção de roteadores móveis, cada um equi-
pado com um transceptor sem fio.
A suposição básica em uma rede ad hoc é que, se dois nós dispostos a se comunicar
estiverem fora do alcance de transmissão sem fio um do outro, eles ainda poderão se co-
municar se outros nós na rede estiverem dispostos a encaminhar esses pacotes a partir
deles. As aplicações de redes ad hoc incluem:
• Comunicação tática militar.
• Operações de socorro de emergência.
• Uso comercial e educacional em áreas remotas e em reuniões.
• Outras situações em que a rede é orientada à missão ou baseada na comunidade.
Geralmente, os terminais do usuário em redes sem fio ad hoc usam antenas omnidire-
cionais. No entanto, foi demonstrado que o uso de antenas direcionais inteligentes pode
reduzir bastante a interferência de rádio, melhorando assim a utilização da mídia sem fio
e, consequentemente, a taxa de transferência da rede.
As antenas direcionais têm um ganho muito maior do que suas contrapartes
omnidirecionais, reduzindo significativamente a potência de RF necessária para
transmitir pacotes. Eles podem suprimir a interferência do canal e, portanto, po-
dem aumentar a capacidade em termos de densidade de nós (mais terminais
por unidade de área) na rede.
Importante
37
No contexto de redes ad hoc é difícil encontrar maneiras de controlar a direção dessas
antenas para transmissão e a recepção em cada terminal para obter uma comunicação
multi-hop eficaz entre qualquer fonte e destino. A dificuldade deve-se principalmente a:
• Mobilidade.
• Falta de controle centralizado nas redes ad hoc.
Logo, desenvolver um controle de acesso à mídia (MAC) adequado e protocolos de rotea-
mento em uma rede ad hoc usando antenas direcionais são tarefas desafiadoras.
Agora, vamos conhecer as características mais importantes das redes
ad hoc?
1. Operação descentralizada e sem infraestrutura
Geralmente, as redes ad hoc não contam com nenhum tipo de suporte de infraestrutura
para roteamento, gerenciamento de rede etc. Em outras palavras, as redes ad hoc são
basicamente redes auto-organizadas e autogerenciadas. A falta de controle centralizado
em redes ad hoc requer algoritmos distribuídos mais sofisticados para executar todas as
funções relacionadas à rede.
2. Mobilidade
A mobilidade causa alterações frequentes na topologia de rede. Quando novos nós in-
gressam, alguns nós saem ou alguns links quebram.
3. Roteamento de múltiplos saltos
Um nó pode querer se conectar a um nó distante que esteja fora do seu alcance de trans-
missão. Como cada nó nas redes ad hoc pode rotear o tráfego para os outros, é possível fa-
zer vários saltos. O salto múltiplo é um recurso desejável em uma rede ad hoc, porque uma
rede ad hoc de salto único não é grande, limitando assim as comunicações entre os nós.
4. Operação com restrição de energia
Como os nós podem ser móveis, eles precisam depender da energia da bateria, que é um
recurso limitado.
38
5. Heterogeneidade
Cada nó pode ter recursos diferentes. Em alguns casos, para poder conectar-se a uma
rede baseada em infraestrutura (para formar uma rede híbrida), alguns nós podem se
comunicar com mais de um tipo de rede.
6. Assimetria de link
Em um ambiente sem fio a comunicação entre dois nós pode não funcionar igualmente
bem em ambas as direções. Em outras palavras, mesmo que o nó n esteja dentro da
faixa de transmissão do nó m, o inverso pode não ser verdadeiro.7. Links de capacidade variável e com restrição de largura de banda
Os links sem fio continuarão a ter uma capacidade significativamente menor do que seus
equivalentes conectados. O rendimento realizado das comunicações sem fio geralmente
é muito menor do que o de um rádio com taxa máxima de transmissão devido aos efei-
tos de acesso múltiplo, desbotamento, ruído e condições de interferência.
Um efeito das capacidades de link relativamente baixas a moderadas é que o congestio-
namento é normalmente a norma e não a exceção.
Uma rede ad hoc complementa uma rede baseada em infraestrutura em que esta não
está disponível. Ela pode não estar disponível ou viável em qualquer lugar, principalmente
por três motivos:
Nesses casos, uma rede ad hoc pode servir como uma extensão do alcance da rede. Ela
aborda a necessidade de transportar tráfego não planejado ou inesperado, que é imper-
manente ou simplesmente ad hoc.
A seguir vamos conhecer alguns exemplos em que redes ad hoc podem ser formadas
sem a ajuda de qualquer suporte de infraestrutura centralizado.
A demanda de tráfego
e a receita prevista são
muito baixas.
A demanda de tráfego é
inconsistente com o tem-
po (ou seja, existe apenas
por um curto período).
É muito caro construir
uma infraestrutura de
rede devido a dificuldades
geográficas ou terrestres
(por exemplo, para for-
necer cobertura em uma
rodovia, em uma floresta,
em locais remotos).
39
Exemplo 1
As redes comunitárias são formadas em campus universitários, quarteirões de
cidades, bairros e conferências entre outros, satisfazendo as necessidades de co-
municação intracomunitária. As redes comunitárias permitem a formação de co-
munidades locais (que conversam e usam um quadro branco compartilhado ou
que viajam em grupos) para compartilhar recursos. As redes comunitárias tendem
a ser implantadas de maneira muito ad hoc, sempre que recursos como acesso à
internet com fio e locais de montagem de antena/rádio estejam disponíveis. O nó
do cliente pode conectar-se diretamente a um ponto de acesso (AP) ou usar rotea-
mento ad hoc para aproveitar outros nós para conectar-se a um ponto de acesso.
Exemplo 2
As redes corporativas são construídas em ambientes corporativos como métodos
de baixo custo e fácil de instalar para ajudar na mobilidade dos trabalhadores. Por
exemplo, durante uma reunião ou conferência, os apresentadores podem mandar
multicast slides e áudio para os destinatários pretendidos. A tecnologia multi-hop
sem fio pode existir entre os WLAN APs ou entre os nós clientes, ou uma rede ad
hoc híbrida pode ser formada entre uma rede WLAN AP e uma rede ad hoc cliente.
Isso serve para acomodar as alterações causadas pela mobilidade humana e per-
mitir fácil expansão e reconfiguração da topologia de rede (por exemplo, causada
pelo crescimento da equipe da empresa ou pela renovação interna).
Exemplo 3
As redes de sensores podem ser uma das seguintes: rede de sensores militares
para detectar o movimento do inimigo ou para detecção de armas químicas/
biológicas; rede de detecção ambiental; rede de sensores de tráfego para mo-
nitorar o congestionamento de tráfego em uma cidade ou rede de vigilância.
Exemplo 4
As redes de resposta a emergências podem ser usadas para operações de bus-
ca e resgate, aplicação da lei e esforços de ajuda a desastres. Como exemplo
de uma operação de busca e salvamento, cada bombeiro pode transportar um
rádio de comunicação que forma uma rede ad hoc no local. Além disso, os
“roteadores de trilha de navegação” podem fornecer conectividade quando os
bombeiros entram em chamas no prédio. Quanto à aplicação da lei, uma rede
ad hoc pode ser formada imediatamente entre os carros-patrulha e os rádios de
mão dos policiais no local do incidente. O pessoal de suporte, que mais tarde in-
Exemplos
40
gressará, poderá conectar-se imediatamente à rede ad hoc que já está formada.
Nas operações de alívio de desastre, as redes ad hoc podem substituir a rede
baseada em infraestrutura danificada. A rede ad hoc atende à necessidade de
implantar imediatamente uma rede com alta conectividade de dados em cena.
Exemplo 5
As redes de veículos são formadas entre veículos em movimento e infraestru-
tura de transporte terrestre (por exemplo, semáforos e sinais de trânsito eletrô-
nicos) e podem desviar o tráfego de áreas congestionadas, garantindo assim
um fluxo de tráfego suave. A comunicação interveicular usando redes ad hoc é
adequada em rodovias onde a cobertura da rede é muito limitada.
Existem basicamente dois tipos de antenas inteligentes usadas no contexto de redes sem fio:
• Antenas de feixe comutado (ou antenas de feixe fixo).
• Antenas de matriz adaptáveis direcionáveis.
Antena de feixe comutado
Uma antena de feixe comutado gera vários padrões de feixe direcional fixo predefinidos e
aplica um de cada vez ao receber um sinal. É a técnica mais simples e compreende ape-
nas uma função de comutação básica entre antenas diretivas separadas ou feixes prede-
finidos de uma matriz de N elementos de antena, que são implantados em setores fixos
não sobrepostos, cada um com um ângulo de 360 /N graus. Os sinais serão detectados
em todos os setores e a antena é capaz de reconhecer o setor com o ganho máximo. Ao
recebê-los, um setor que geralmente é o escolhido pelo processo de detecção coletará
os sinais.
Antena de matriz adaptável direcionável
Em uma antena de matriz adaptável direcionável, que é mais avançada que uma antena
de feixe comutado, a estrutura do feixe adapta-se ao ambiente do sinal de radiofrequência
(RF) e direciona os feixes ao sinal de interesse para maximizar o ganho da antena, pressio-
nando simultaneamente o padrão da antena (definindo nulos) na direção dos interferentes.
Nas antenas de matriz adaptativa é necessário um algoritmo para controlar a saída, isto
é, para maximizar a relação sinal-interferência e ruído (SINR).
41
A diferença entre os dois tipos de antenas inteligentes é a seguinte: as ante-
nas de feixe fixo concentram sua inteligência na detecção de feixe de sinal
de força mais forte e as antenas de matriz adaptativa se beneficiam de todas
as informações recebidas em todos os elementos da antena para otimizar a
saída SINR por meio de um vetor de peso ajustamento.
Sundaresan e Sivakumar (2012) discutiram que os recursos superiores de transmissão,
recepção e supressão de interferências de antenas inteligentes inspiraram a considera-
ção de seu uso em redes sem fio ad hoc, que são inerentemente limitadas por interferên-
cia. Entretanto, os recursos das antenas podem ser efetivamente aproveitados apenas
por meio de alterações nos protocolos de rede de camada superior. Portanto, nos últimos
anos, vários pesquisadores investigaram a seguinte pergunta:
Quais mudanças precisam ser feitas na camada MAC e acima para ala-
vancar a recursos exclusivos das tecnologias de antenas inteligentes?
Existem dois tipos de controle de acesso à mídia:
1. Aleatório: todas as estações competem por um canal de maneira descontrolada
(que se adapte ao cenário da rede ad hoc) e, portanto, a colisão não pode ser evitada.
2. Controlado: a competição por um canal é controlada (na maioria dos casos por
um nó mestre) e, portanto, a colisão pode ser evitada.
O acesso aleatório sofre de problemas terminais ocultos e expostos. A solução atual para
o problema do terminal oculto é usar a detecção de portadora virtual, que consiste em
dois quadros de controle adicionais:
1. Solicitação para enviar (RTS).
2. Limpeza para enviar (CTS).
Um terminal que deseja transmitir primeiro envia um pacote RTS. Quando um destino
responde com o CTS, todos os terminais dentro do seu alcance de transmissão rece-
bem essa mensagem e, portanto, o problema de um terminal oculto pode ser aliviado. O
problema com a detecção de portadora virtual é que muitos nós nas proximidades são
bloqueados e, estendendo-se a área em que a detecção de portadora é eficaz, embora o
fenômeno terminal oculto seja diminuído, o fenômenoterminal exposto aumenta.
42
Uma das soluções para aliviar esse problema é utilizar antenas inteligentes.
O roteamento é um dos aspectos mais importantes em redes ad hoc, porque sua topo-
logia frequentemente muda e é necessária a comunicação multi-hop. Existem dois tipos
de protocolos de roteamento:
1. Proativos: são orientados por tabela e cada nó mantém uma tabela de informa-
ções de roteamento de todos os nós que conhece. As informações de roteamento
são atualizadas periodicamente.
2. Reativos: são baseados na demanda e uma rota é formada apenas mediante so-
licitação.
A utilização de protocolos proativos de roteamento fornece basicamente atrasos de pon-
ta a ponta mais curtos, porque as informações de rota estão sempre disponíveis e atua-
lizadas em comparação aos reativos.
A desvantagem é que consome mais recursos (mais sobrecarga) na atua-
lização das informações da rota.
Os pesquisadores estão tentando descobrir o equilíbrio ideal entre mecanismos de pro-
tocolo proativos e reativos e trabalhando no roteamento com reconhecimento de energia
e roteamento escalável, para que os protocolos de roteamento ainda possam funcionar
sob tráfego intenso ou com um grande número de nós.
A qualidade do serviço (QoS) de provisionamento também está sendo considerada um
problema desafiador no roteamento ad hoc. Para tomar uma decisão de roteamento ideal, o
roteamento de QoS exige atualizações constantes nas informações do estado do link, como:
Atraso
Largura de banda
Custo
Taxa de perda
Taxa de erro para tomar decisões de política, resultando em
uma grande quantidade de sobrecarga de controle.
43
Os pontos citados anteriormente tornam-se proibitivos para ambientes ad hoc com res-
trição de largura de banda. A natureza dinâmica das redes ad hoc torna extremamente
difícil manter as informações precisas sobre o estado do link. Finalmente, mesmo após a
reserva de recursos, a QoS ainda não pode ser garantida devido às frequentes descone-
xões e alterações na topologia.
Consumo de energia
A energia é um recurso precioso em dispositivos móveis e a rede é uma das operações
que consomem mais energia. De acordo com um experimento conduzido por Kravets
e Krishnan (2000), o consumo de energia causado por atividades relacionadas à rede
é de aproximadamente 10% do consumo total de energia de um laptop. Esse número
sobe para 50% nos dispositivos portáteis. O objetivo de economizar energia em uma
rede baseada em infraestrutura é minimizar o consumo de energia nos hosts ou nós.
A tática é mover os esforços de comunicação e computação para a infraestrutura fixa,
mantendo assim a interface de rede dos dispositivos em estado de suspensão o maior
tempo possível.
Em uma rede ad hoc, cada nó deve contribuir para manter a rede de conexões. Portanto,
o objetivo de minimizar o consumo de energia de cada nó é inadequado. Um objetivo
adicional é maximizar a vida útil da rede. Existem dois cenários com relação à energia
em redes ad hoc:
Cenário (1 )
A energia é um recurso caro, mas não limitado (as baterias podem ser recarregadas ou
substituídas facilmente).
Cenário (2)
A energia é limitada ou finita.
O cenário (1) ocorre principalmente em redes comunitárias e corporativas. O objetivo das
redes pertencentes a esse cenário é minimizar a energia total consumida por pacote para
encaminhá-la da origem ao destino, sem considerar a energia residual do nó individual.
O cenário (2) de energia finita é verdadeiro em redes de sensores. O objetivo é, portanto,
maximizar a vida útil da rede, além de economizar energia para os nós individuais. A ener-
gia residual de nós individuais, portanto, precisa ser considerada.
Logo, várias características de uma rede ad hoc tornam muito mais difíceis manter sua
segurança em comparação com a rede baseada em infraestrutura, a saber:
44
Vulnerabilidade de canal título da tabela
Os canais sem fio de transmissão permitem escutar e injetar mensagens com
facilidade.
Vulnerabilidade de nó (título da tabela)
Quando os nós não residem em locais fisicamente protegidos, eles são facilmente
atacados.
Ausência de infraestrutura (título da tabela)
As autoridades de certificação/autenticação estão ausentes.
Alterando dinamicamente a topologia de rede (título da tabela)
Coloca a segurança dos protocolos de roteamento sob ameaça.
Limitações de energia e computacionais (título da tabela)
Podem impedir o uso de algoritmos de criptografia complexos.
45
Em um ambiente em que as organizações estão incorporadas é que se pre-
tende aprender a relação do desenvolvimento da Computação Ubíqua e suas
alternativas e decorrências sob a perspectiva organizacional. Uma das práticas
neste contexto é o mapeamento do campo de pesquisa sobre a Computação
Ubíqua, principalmente quando aplicada aos negócios e ao contexto organiza-
cional de forma geral. De uma maneira mais detalhada, é possível identificar
as principais publicações que tratam do tema de pesquisa, os autores indis-
pensáveis, além de temas ou focos de pesquisa mais frequentes, assim como
verificar lacunas para futuras pesquisas.
NA PRÁTICA
Para ampliar o seu conhecimento veja o material complementar da Unidade 1,
disponível na midiateca.
MIDIATECA
46
Resumo da Unidade 1
A Computação Pervasiva providencia informações, contexto, mídia e poder de processa-
mento para todos em qualquer lugar. Uma parte da tecnologia caracteriza-se por uma vas-
ta rede de microprocessadores conectados incorporados em dispositivos do dia a dia. A
tecnologia que impulsiona a Internet das Coisas (IoT), com uma aplicação mais ampla.
O impacto causado pela Computação Ubíqua deve-se ao acelerado avanço no
desenvolvimento de tecnologias móveis e ao crescimento do uso da internet, fa-
zendo assim com que chips sejam instalados em dispositivos os mais diversos,
que se interconectam por meio de uma grande rede. Com um novo cenário, é
possível imaginar que o número de dispositivos conectados dobram em compa-
ração aos computadores pessoais, tornando perceptível que a tecnologia vai de
um simples meio natural entre os homens para uma relação de muitos para um.
CONCEITO
47
Referências
CALLAWAY JUNIOR, E. H. Wireless Sensor Networks Architectures and Protocols.
Nova York: Auerbach, 2003.
VERAS, M. Computação em nuvens. Rio de Janeiro: BrasPort, 2015. Biblioteca Virtual.
Ciência do Contexto
UNIDADE 2
49
Os avanços tecnológicos cada vez mais on-line permitem que os dispositivos tornem-se
ubíquos, pervasivos e antecipados. Em 1991, Mark Weiser escreve acerca dessa conver-
gência, destacando que, como resultado natural, os usuários desistirão de observar os
equipamentos e os objetos tecnológicos que estão ao redor e passarão a concentrar-se
apenas nos objetivos que os fazem interagir com eles. Com isso, a computação ubíqua
torna-se invisível, mesmo estando presente. Elas se cruzam na malha da vida diária até
que tornam-se indiscrimináveis dela. Como qualquer nova transição tecnológica, o har-
dware normalmente é o primeiro no mercado antes do restante do ecossistema neces-
sário para impulsionar o novo mainstream da tecnologia. Nesta unidade você descobrirá
novas e diferentes experiências no campo da tecnologia de sensores inteligentes e com-
putação sensível ao contexto.
INTRODUÇÃO
Nesta unidade você será capaz de:
• Tornar os recursos computacionais onipresentes e integrados, de modo que
possibilitem a construção de sistemas de computação ubíqua quando utilizados
no desenho de interfaces inovadoras com o usuário.
OBJETIVO
50
Especificação de contexto, mecanismos
para monitoramento e arquiteturas de
sistemas
Ao observar a ubiquidade de maneira real e essencial, ela é conhecedora de como a
estrutura da comunicação da rede agrega e conecta os equipamentos, como Radio Di-
rection Finding, ZigBee, Wi-Fi, Bluetooth, World Wide Web, entre outros. Com relação a
equipamentos que intercomunicam-se nesta rede ubíqua, no que lhe diz respeito, estão
no entendimento da computação pervasiva.Ou seja, tudo que for físico e nos permita
acessar a informação em qualquer tempo, de qualquer lugar, a exemplo dos telefones
móveis, equipamentos e dispositivos vestíveis, entre outros. Somando-se a todas essas
experiências em nosso dia a dia, estamos chegando à terceira geração da internet: a ex-
periência do usuário na Web 3.0.
John Markoff, no artigo Entrepreneurs See a Web Guided by Common Sense, publicado
no jornal americano The New York Times, faz menção do termo Web 3.0, que tem por
objetivo: “[...] adicionar uma camada de significado sobre a Web existente, tornando-a me-
nos um catálogo e mais um guia – provendo, inclusive, a base para sistemas que podem
raciocinar de um modo humano” (MARKOFF, 2006).
Em sua ponderação relacionada a Web 3.0, Markoff demonstra seu entendimento sobre
a ideia já proposta pelo físico britânico e professor do MIT, Tim Berners-Lee, da Web
Semântica. Para Lee, o grande desafio da Web 3.0 seria o de adequar sua estrutura se-
mântica, os assuntos e páginas on-line, conferindo os conteúdos para que eles pudes-
sem ser lidos e entendidos por meio de sistemas inteligentes preparados para constituir
as relações entre os dados e seus significados. Sendo assim, devolve respostas mais
finalizadas e de interesse geral aos usuários. E também intensifica e potencializa a comu-
nicação entre equipamentos (dispositivo – dispositivo) para proporcionar um uso mais
espontâneo e produtivo na realização de tarefas complexas demandadas pelas pessoas
(pessoa – equipamento).
Atualmente, podemos perceber maior eficiência nos sistemas, partindo do histórico de
buscas ou localização geográfica compartilhados de maneira proativa e de informações
anteriores do usuário que o ajudam a realizar a busca de maneira preditiva.
51
Quer entender melhor como acontece? Vamos lá!
O Google, uma das três empresas mais valiosas do mundo, tem hoje um imenso re-
pertório de produtos que transcendem a busca na web, o que ainda é seu carro-chefe.
Essa busca preditiva, que deu início em 2004 ao Google Suggest, ganha uma nova no-
menclatura em 2010: Google AutoComplete. Conforme a própria sugestão, à medida que
se digitava no campo de busca, diante do ranking de buscas mais populares, tinha-se
uma sugestão de palavra, expressão e/ou frase sendo oferecida ao usuário. Também em
2010, o Google Instant chegava a resultados instantâneos ao reconhecer a digitação feita
por um usuário.
Em suma, mesmo que o usuário não finalizasse a digitação e desse o comando de bus-
ca ao pressionar a tecla enter (ou o botão buscar), resultados já eram exibidos, de forma
dinâmica, e iam se modificando a cada novo caractere digitado. É notório, hoje, que nas
buscas realizadas no Google são observadas, além de palavras e expressões populares,
o histórico do usuário. Com isso, se dois usuários realizarem a mesma busca, possivel-
mente terão um retorno de resultados diferentes devido o seu respectivo histórico, con-
forme mencionado anteriormente.
Outro recurso que podemos perceber é o Google Now. Com ele o sistema adquire conhe-
cimento a partir dos dados digitados pelo usuário, fazendo com que haja um retorno de
soluções e informações antes do tempo.
Diante do cenário apresentado, vimos que o próprio sistema que coleta e trata os dados
também detecta os padrões e retorna informações automaticamente. Isso se deve às in-
formações disponibilizadas on-line pelos usuários, somadas à contribuição dos avanços
da tecnologia juntamente com a inteligência artificial.
Temos a geolocalização, sua aplicação mapeia os itinerários e horários do
usuário. Ao identificar um determinado padrão (no caso, o horário de ir e voltar
do trabalho), a aplicação calcula a melhor rota, o tempo de trajeto e envia uma
mensagem ao usuário notificando quando estiver próximo do tempo de realizar
o percurso.
Exemplo
52
A forma mais prática de ocorrerem aplicações de Deep Learning é na ciência de con-
texto da computação, que trata de sistemas capazes de perceber um contexto de uso
em tempo real, verificando informações do ambiente, tempo, localização, usuário, entre
outros, com a finalidade de:
• Antecipar condições.
• Otimizar a interface e as argumentações do sistema para um contexto de uso
específico.
Agora, vamos expandir essa definição básica de contexto para a compu-
tação de contexto.
O Deep Learning, aprendizagem profunda, tem a capacidade de transformar
grandes volumes de dados em informação útil. Atividades tradicionalmente de-
sempenhadas pelos usuários, como reconhecimento de voz, reconhecimento
visual, tomada de decisão, tradução, e outras que superam a capacidade hu-
mana, que são a manipulação e o processamento de grandes bases de dados,
o Big Data, estão sendo trabalhadas por máquinas inteligentes. Aprendizagem
profunda fala em previsão, que ocorre em grande parte das atividades do sécu-
lo presente.
Exemplo
Contexto significa preferências, gostos, desgostos, localização e conhecimento
geral do usuário sobre o ambiente em que ele está operando, localizado ou
situado. Exemplos de conscientização do ambiente circundante podem ser in-
formações relacionadas ao clima, tráfego, hora do dia ou localização física do
usuário. Também podem ser informações relacionadas ao dispositivo de com-
putação do usuário, como nível da bateria, largura de banda de rede disponível,
infraestrutura de Wi-Fi disponível e assim por diante.
Ampliando o foco
53
A computação com reconhecimento de contexto é o ambiente de computação que co-
nhece o contexto do dispositivo de computação, infraestrutura de computação ou usuário.
Um dispositivo de computação pode ser qualquer um dos vários dispositivos, incluindo
smartphones, tablets, dispositivos vestíveis ou dispositivos tradicionais, como laptops e
desktops. A infraestrutura de computação pode incluir hardware, software, aplicativos,
largura de banda da rede, protocolos Wi-Fi e informações sobre a bateria.
Um smartphone, por exemplo, é um dispositivo de computação que conhece o contex-
to circundante. A infraestrutura de computação, como seu sistema operacional, adquire
esse contexto, armazena, processa e responde ao contexto alterando ou adaptando sua
funcionalidade ou comportamento. Também tomará certas decisões sensíveis ao con-
texto. A infraestrutura de computação pode processar e responder ao contexto com o
mínimo ou nenhum insumo do usuário.
Vamos conhecer alguns exemplos de como a infraestrutura sensível ao contexto respon-
de e responderá.
Exemplo 1
Um smartphone pode detectar que está em um local movimentado, como um
aeroporto, estação ferroviária ou shopping, e alterar automaticamente o com-
portamento do dispositivo para implementar algoritmos de cancelamento de
ruído. Isso permitiria que o dispositivo respondesse melhor aos comandos de
voz de um usuário.
Exemplo 2
Os smartphones podem detectar a localização do usuário e alterar sua fun-
cionalidade, como aumentar ou diminuir automaticamente o volume do al-
to-falante ou mudar para o modo silencioso se o usuário estiver na reunião,
alterando os toques com base em se o usuário está em casa, no escritório ou
viajando de carro.
Exemplo 3
Os smartphones podem responder automaticamente a determinadas chama-
das com mensagens se o usuário estiver no escritório ou dirigindo. Pode até
bloquear algumas com base no contexto de localização do usuário.
Exemplo
54
Um dispositivo com reconhecimento de contexto pode adquirir dados de contexto por
meio de vários mecanismos, como sensores genéricos ou específicos, pela internet, via
GPS ou por um histórico de logs, decisões passadas, locais ou ações. Hoje, os tipos e a
disponibilidade de sensores aumentaram e tornaram-se mais sofisticados. Isso permite
um grande número de casos de uso sensíveis ao contexto em dispositivos como tablets,
dispositivos vestíveis, smartphones e até mesmo em laptops e desktops tradicionais. Até
giroscópios, acelerômetros e magnetômetros básicos podem adquirir dados de direção
e orientação, resultando emcasos de uso como desligar quando uma queda acidental é
detectada ou sugerir o próximo local de jantar ou posto de gasolina com base na locali-
zação atual do usuário.
Portanto, a conscientização de contexto está se tornando uma necessidade para vários
dispositivos e infraestrutura de computação, incluindo aplicativos, para tomar decisões
inteligentes, prever ações do usuário e alterar a funcionalidade do dispositivo a fim de
reduzir a necessidade de os usuários inserirem manualmente informações relacionadas
ao contexto, como mostra a Figura 12.
Exemplo 4
Os wearables (dispositivos vestíveis) podem usar o contexto ambiental e com-
pensar automaticamente seus cálculos pelas calorias queimadas.
Exemplo 5
Um relógio inteligente pode ajustar automaticamente o horário de verão ou o
fuso horário com base no contexto do local.
Exemplo 6
Dispositivos inteligentes tradicionais ou contemporâneos podem usar serviços
baseados em localização para sugerir locais para refeições, centros de entre-
tenimento na área ou até serviços de emergência, como hospitais e centros de
atendimento de urgência.
55
Figura 12: Contexto computacional.
Fonte: Elaborada pelo autor (2020).
Interações da infraestrutura com o contexto
Existem três níveis de interatividade para computação, infraestrutura ou aplicativos com
reconhecimento de contexto, a saber:
1. Personalização: os usuários especificam suas próprias configurações/ambiente
que controlam como a infraestrutura sensível ao contexto (hardware, software, apli-
cativos e assim por diante) deve se comportar ou responder em uma determinada
situação.
2. Reconhecimento passivo do contexto: a infraestrutura sensível ao contexto for-
nece ao usuário informações dos sensores ou alterações que ocorreram no con-
texto anterior. No entanto, a infraestrutura não age ou altera o comportamento com
base nisso. O usuário decide o curso da ação com base nas informações de con-
texto atualizadas.
3. Reconhecimento de contexto ativo: a infraestrutura sensível ao contexto co-
leta, processa e executa todas as ações necessárias com base no sensor ou nas
informações de contexto. Também descarrega o trabalho do usuário, tomando
decisões ativas.
56
A tabela a seguir lista algumas categorias de aplicativos e serviços sensíveis ao contexto,
com base no nível de interação com o usuário.
Tabela 1: Serviços baseados em contexto.
Serviço Personalização Contexto Passivo Contexto Ativo
1. Perfis
de toque
O usuário define
manualmente
os perfis de
toque.
O dispositivo fornece
opções para o usuá-
rio alterar o perfil de
toque com base nos
dados do sensor no
local. Por exemplo,
perfil diferente na
reunião ou na classe
ou quando estiver no
cinema ou
restaurante.
O dispositivo altera au-
tomaticamente o perfil
de toque com base nos
dados do sensor no lo-
cal. Por exemplo, perfil
diferente na reunião ou
na classe versus quan-
do está no cinema ou
restaurante.
2. Refeições
O usuário rea-
liza a pesquisa
manual do local
apropriado para
a refeição.
O dispositivo solicita
ao usuário opções de
refeições com base
nas preferências ou
escolhas anteriores
do usuário.
O dispositivo fornece
opções de locais para
refeições quando o
usuário está perto do lo-
cal preferido no horário
preferido e corresponde
aos critérios do usuário
(revisões, custo, opções
de menu etc.).
3. Pesquisa de
documentos
O usuário rea-
liza a pesquisa
manual dos
documentos
apropriados no
dispositivo.
Com base na prefe-
rência do usuário, o
dispositivo fornece
opções para carre-
gar/baixar ou exibir o
documento.
O dispositivo carrega/
baixa automaticamente
ou exibe o documento
com base na localiza-
ção, preferências e hora
do usuário.
57
4. Localização
(como identifi-
car amigos nas
proximidades,
alterar perfis
de dispositivos,
exibir planos de
fundo, sons e
conteúdo).
Realiza pesqui-
sa/alterações
manuais nos
serviços prefe-
renciais.
Define o disposi-
tivo para exibir a
situação/locali-
zação. O usuário
pode definir
manualmente
outras preferên-
cias/serviços
com base em
localização.
O dispositivo fornece
ao usuário opções
para realizar pes-
quisas/alterações
nos serviços prefe-
renciais com base
na localização do
usuário.
O dispositivo pode
solicitar ao usuário
que exiba o status, o
local do usuário etc.
para possíveis liga-
ções ou opções para
bloquear chamadas.
O dispositivo executa
automaticamente pes-
quisas/alterações nos
serviços preferenciais
com base na localiza-
ção do usuário.
O dispositivo exibe
automaticamente o
status, a localização
etc. do usuário para
potenciais chamadores,
ou até bloqueia determi-
nadas chamadas com
base na localização do
usuário ou alerta os
usuários de pessoas ou
amigos conhecidos nas
proximidades.
Fonte: Elaborada pelo autor (2020).
Quanto maior for a quantidade de dados que o sistema venha a ter, mais eficiente será e
melhor entendível será o contexto para atender ao usuário. Schmidt et al. (1999, p. 893-
901) propõem o seguinte modelo para definir a concepção de contexto:
• Um contexto detalha uma situação e o ambiente no qual um equipamento ou um
usuário se encontram.
• Um contexto é reconhecido por um nome único.
• Para cada contexto, um conjunto de recursos é relevante.
• Para cada recurso relevante, uma gama de valores é determinada (implícita ou
explicitamente) pelo contexto.
Um sistema lida com diversos contextos e deve estar organizado para agir em todos
eles. A construção de cada contexto é permitida por um conjunto de recursos, que pode
ser concernente a um fator humano ou a um ambiente físico.
O ideal para a criação de contextos eficazes é que os dados sejam representativos e
mensuráveis. A partir do momento em que são coletados, eles devem ser comparados
com as possibilidades de contexto antevistas pelo sistema com o intuito de se obter um
58
contexto que corresponda às situações vigentes. Portanto, o desenvolvedor deve verifi-
car quais artifícios são os mais relevantes e necessários para as situações ou ambientes
em um determinado momento ou período de tempo.
59
Integração, sumarização e análise de
contexto
A palavra ubíqua significa “onipresente”, “universal”, “global” ou “sempre presente”. Logo,
computação ubíqua significa um ambiente de computação que parece estar presente
em qualquer lugar e a qualquer momento.
Ao contrário de um computador desktop tradicional, desconectado, estacionário e que
só pode ser acessado por um usuário sentado à sua frente, o conceito de computação
onipresente aponta para a disponibilidade de um poder de computação por meio do uso
de qualquer dispositivo ou infraestrutura, em qualquer local, em qualquer formato e a
qualquer momento.
Atualmente, um usuário interage com o ambiente de computação por meio de vários
dispositivos diferentes, tais como notebooks, smartphones, tablets, phablets e até ele-
trodomésticos conectados, como micro-ondas ou geladeiras. Com a disponibilidade de
dispositivos vestíveis, como relógios inteligentes e Google Glass, o acesso ao ambiente
de computação subjacente tornou-se realmente onipresente. Ou seja, temos variados
componentes essenciais da infraestrutura de computação que permitem o conceito de
computação onipresente.
A computação ubíqua fornece aos usuários duas qualidades cruciais para aprimorar a
experiência do usuário: invisibilidade e proatividade.
Quer saber como? Vamos ver um exemplo.
Internet, protocolos sem fio ou de rede, sistemas operacionais com suporte a
comportamentos onipresentes, middleware ou firmware, sensores e dispositi-
vos sensíveis ao contexto, microprocessadores e outros hardwares.
Exemplo
60
Na computação onipresente os computadores não estão mais ligados ao espaço físico,
como em uma sala de computadores ou laboratório, mas sim implantados e acessados
em locais arbitrários em todo o mundo. Com isso, os dispositivos de computação sofre-
ram mudanças, a saber:
1. Alterações no fator do hardware: alteraçõessimples no tamanho da tela, nos ta-
manhos de hardware. Suportam o movimento físico dos computadores no mundo
externo, saindo do tradicional. No entanto, esses computadores não tinham sensibi-
lidade a nenhum atributo do ambiente circundante.
2. Mudanças sensíveis ao contexto: mudanças precisam ser feitas para superar a
desvantagem da insensibilidade ao ambiente circundante. Inicialmente, a sensibili-
dade foi limitada à detecção de outros dispositivos de computação nas proximida-
des, mas posteriormente expandiu-se para parâmetros como hora e intensidade da
luz do dia/noite, nível de luz, quantidade de tráfego de celulares nas proximidades do
local físico atual, identidade ou função da pessoa usando o computador, de outras
pessoas próximas ao computador, vibração, entre outras.
A computação sensível ao contexto usa, geralmente, Quando (hora), Onde (local), Quem
(identidade), O que (atividade) e Por que (uso) como parte de seus algoritmos de tomada
de decisão.
Uma compra totalmente sensível ao contexto em que o usuário não precise
esperar nas filas de checkout tradicionais, mas sim a cesta de todas as merca-
dorias fosse digitalizada automaticamente, o dispositivo/identidade do usuá-
rio fosse verificado e o cartão de crédito relevante com base nas preferências
do usuário recebesse a cobrança. Nesse caso, o processo serial individual de
checkout é completamente invisível para o usuário e o sistema pode ser proati-
vo na identificação do usuário e do método de pagamento, melhorando assim
a experiência de compra em termos de tempo e facilidade de uso.
Exemplo
61
Os desafios da Computação Ubíqua
A questão principal dos sensores e sua rede, no entanto, é que, como os sensores são
imprecisos, eles tornam o ambiente de computação incerto e probabilístico. A seguir, veja
algumas situações:
1. Onde há incerteza: os sensores de localização relatam a probabilidade de locali-
zação “verdadeira” nos espaços X, Y e Z.
2. Quem há incerteza: o sensor de reconhecimento de rosto retorna a probabilidade
de ter acabado de ver uma pessoa em particular por intermédio da distribuição de
probabilidade.
3. Que há incerteza: um sensor de câmera que tenta reconhecer um objeto envia
um conjunto de estimativas quanto ao objeto visto (novamente uma distribuição de
probabilidade).
Agora, vamos explorar os desafios da computação ubíqua. Preste atenção!
Gerenciamento de energia
A computação onipresente requer energia onipresente. Existem três componentes principais
de fontes de consumo de energia em dispositivos de computação onipresentes: processa-
mento, armazenamento e comunicação. Vamos conhecer cada um com mais detalhe.
Exemplo 1
Em uma sala de ginástica, a computação sensível ao contexto detectará quan-
do inferir os possíveis gostos do usuário para controlar o tipo de música e con-
trolar o sistema de som de acordo.
Exemplo 2
Um algoritmo pode usar vários parâmetros ambientais, como nível de som ou luz,
para inferir se uma mensagem específica pode ser enviada ao usuário ou não.
Exemplo
62
Processamento
O processamento para plataformas de computação ubíqua é altamente cambiante, pois
pode variar de aplicativos simples a tarefas computacionalmente intensivas. Existem
muitos controles disponíveis para controlar o consumo de energia em uma única uni-
dade de processamento, como ativar determinadas unidades ou blocos no interior do
processador quando não estiverem em uso ou diminuir as tensões operacionais para
diminuir o consumo de energia.
A plataforma também pode usar várias unidades de processamento ou processadores
específicos de tarefas para executar tarefas particulares, desse modo transferindo ener-
gia para outros blocos quando não for necessária para essa determinada tarefa.
Como as unidades de processamento, a interface e o protocolo sem fio usados afe-
tam os requisitos de energia e a política de uma plataforma de computação ubíqua. Por
exemplo, Wi-Fi, Bluetooth, ZigBee e banda ultralarga são alguns dos padrões com dife-
rentes capacidades e características. Cada um dos protocolos definiu configurações de
energia e desempenho (como força de transmissão e ciclo de serviço) que podem ser
efetivamente usadas para gerenciar a energia na plataforma. Vários protocolos podem
ser usados na plataforma, dependendo dos casos de uso direcionados.
Podemos ter um processador minucioso para endereçar e manipular interrup-
ções/dados do sensor enquanto utiliza um processador de alto desempenho
para cálculos de funções completas e um processador de rede para processar
dados. O software, no caso de vários componentes de processamento, precisa
ser capaz de controlar dinamicamente e bloquear a energia de determinados
blocos, enquanto executa os componentes de processamento necessários
em tensão total ou tensão reduzida, dependendo do requisito de uma tarefa
específica.
Exemplo
63
Armazenamento
O terceiro componente que afeta o perfil de energia de um sistema ubíquo é a mídia de
armazenamento, como SRAM, DRAM, flash e unidades de disco. Cada um desses tipos
de armazenamento possui um perfil de energia diferente (energia inativa, energia ativa,
energia de vazamento etc.).
O mundo mudou da era de um computador para uma pessoa a vários dispositivos de
computação para uma pessoa. Hoje, um indivíduo possui vários dispositivos: um com-
putador de mesa, notebook, tablets, smartphones e outros dispositivos de computação
portáteis que compartilham o mesmo espaço em casa ou no escritório. Com vários
dispositivos de computação sendo associados a cada indivíduo, o gerenciamento físi-
co e virtual desses dispositivos torna-se desafiador. No futuro, também poderíamos ter
processadores incorporados em vários produtos domésticos e de escritório, tentando
identificar ou associar-se a um indivíduo. Isso complica ainda mais o gerenciamento de
dispositivos de computação associados a cada pessoa naquele espaço.
Essa coleção de pequenos dispositivos precisa ser encontrada nos arredores (casa/es-
critório), identificados cada um por seu tipo (telefone, notebook, tablet ou similar) e fun-
cionalidade, e então cada dispositivo precisa estar associado a um determinado usuário/
O Wi-Fi é usado para redes domésticas e internet enquanto o Bluetooth é usado
para comunicação hands free ou de voz em telefones celulares. O software
operacional em uma plataforma ubíqua precisa fornecer de forma transparente
ao usuário serviços que considerem diferentes características de desempenho
de energia desses protocolos, como consumo de energia por bit, energia em
espera e assim por diante.
Exemplo
A SRAM pode ter uma potência menor do que a DRAM, enquanto o FLASH
possui um melhor perfil de energia inativa. O software precisará implantar vá-
rios esquemas para gerenciar o consumo de energia e acessar essas várias
opções de armazenamento na plataforma.
Exemplo
64
sistema. Atualmente, existe algum tipo de nome/endereço IP/MAC exclusivo para identi-
ficar esses dispositivos, mas essa identificação pode nem sempre estar disponível, como
no caso de sistemas embarcados.
Também é possível que dispositivos ubíquos e/ou difusos não estejam conectados a
uma rede com fio. Esses dispositivos ubíquos que coexistem no mesmo espaço não
apenas precisam ser identificados adequadamente pelo software de gerenciamento,
mas também precisam ser conectados a outros dispositivos disponíveis com base em
sua funcionalidade, preferência do usuário e autenticidade.
Adequação da interface de usuário
A computação ubíqua possui diferentes tipos de dispositivos, que variam de pequenos
sensores, tais como tablets, notebooks e desktops, até dispositivos de computação com-
plexos. Cada um deles tem diferentes tipos e tamanhos de exibição. Um aplicativo que é
executado em uma tela menor de um smartphone deve funcionar com a mesma eficácia
em telas maiores de computadores desktop. A diferença física de monitores não deve
importar para a experiência do usuário nesses diferentes dispositivos. Ou seja, o usuáriodeve manipular os controles de toque e o pequeno menu em smartphones tão facilmente
quanto em telas maiores de notebooks ou desktops.
Um aplicativo projetado para um smartphone com uma tela menor deve adaptar-se facil-
mente a um tamanho de tela maior quando esse tamanho estiver disponível e vice-versa.
Os aplicativos de servidor projetados para uma tela maior, por sua vez, devem adaptar-
-se ao tamanho menor da tela do smartphone. Uma abordagem pragmática seria gerar
componentes da interface do usuário com base na definição básica subjacente do
usuário. Logo, mais conhecimento dos recursos de exibição de destino em movimento.
Para criar esses aplicativos são necessários quatro componentes principais:
1 Uma linguagem específica de interface com o usuário.
2 Um protocolo de controle que forneça um canal de comunicação abstraído en-
tre o aplicativo e a interface do usuário.
3 Adaptadores de dispositivo, permitindo que o protocolo de controle seja conver-
tido nos dispositivos disponíveis primários de destino.
4 A interface gráfica do usuário.
65
Como uma interface do usuário é visível para o cliente, é importante manter sua usabi-
lidade em vários destinos de exibição. Porém, os designers de interface do usuário não
saberiam como o aplicativo seria exibido em vários tamanhos de tela diferentes usados
pelos clientes. Em ambientes de computação ubíqua, a variedade de tamanhos de tela
de destino é muito maior do que a encontrada em desktops ou notebooks tradicionais.
Porém, ainda existem obstáculos significativos à engenharia de software na criação de
padrões e mecanismos básicos para gerar e exibir conteúdo para o usuário.
O reconhecimento local por meio da computação
A computação ubíqua usa a localização do dispositivo para aprimorar a experiência do
usuário e seu recurso mais importante é personalizar os serviços disponibilizados ao
usuário, como:
• Localizar automaticamente outros dispositivos próximos.
• Lembrar e oferecer serviços/dados ao usuário após o uso adequado.
• Autenticar o usuário.
O contexto da localização não se limita apenas ao conhecimento de onde o usuário está,
mas também inclui o conhecimento de quem é o usuário e de quem mais está perto dele.
Esse contexto também pode incluir o uso histórico do usuário e, assim, determinar os apli-
cativos que ele deseja acessar com base no histórico — um exemplo seria um sistema
onipresente que suporta o contexto de localização e controla automaticamente o volume
do dispositivo, ou alertas de notificação, com base no fato de o usuário estar em um lugar
lotado, como um shopping center, ou em um lugar tranquilo como uma biblioteca.
Outro exemplo seria determinar se há pessoas por perto e se é provável que o usuário
esteja em alguma reunião com elas. Também pode controlar o brilho da tela com base
na hora e no local em que está o usuário.
Existem muitos serviços baseados em localização que podem ser oferecidos por aplica-
tivos, como encontrar restaurantes próximos, postos de gasolina baratos, localizar pes-
quisas na internet, entre outros.
Os sistemas tradicionais baseados em contexto da localização têm a limitação de “es-
timativas de incerteza de localização”, não sendo possível que o sistema saiba a loca-
lização exata do dispositivo/usuário e, portanto, não podendo descrever o intervalo de
possíveis localizações. Para resolver isso, uma fusão de várias fontes de informações
66
de localização pode ser usada a fim de melhorar a precisão da localização e permitir
que os usuários/aplicativos compreendam e compensem a distribuição de erros da lo-
calização estimada.
Vamos entender melhor o conceito de contexto?
Contexto significa a ideia de “cognição situada”. Para a computação móvel, o contexto
pode ser definido como um ambiente ou situação em torno de um usuário ou dispositivo.
O contexto pode ser categorizado com base na localização do usuário ou no dispositi-
vo, em sua identidade, na atividade executada por ele ou no dispositivo e no tempo da
tarefa, aplicativo ou processo. O contexto pode ser usado para autenticar a identidade
do usuário ou do dispositivo, executar autorização de localização, função ou dados e
fornecer serviços.
Um contexto de computação é uma informação sobre uma situação, local, ambiente,
identidade, hora ou local, referente ao usuário, pessoas, local ou coisas. Essas infor-
mações são usadas por dispositivos de computação com reconhecimento de contex-
to para antecipar os requisitos do usuário e oferecer previsivelmente conteúdo, fun-
ções e experiências enriquecidas, sensíveis à situação e utilizáveis.
A figura adiante mostra exemplos de ambiente de contexto que são aplicáveis à com-
putação com reconhecimento de contexto. Estes podem ser classificados em três
áreas principais:
1. Contexto físico: iluminação, níveis de ruído, condições de tráfego e temperatura.
2. Contexto do usuário: perfil do usuário, informações biométricas, localização,
pessoas próximas, situação social atual.
3. Contexto de tempo: hora do dia, semana, mês e estação do ano.
67
Figura 13: Contexto do ambiente.
Fonte: Elaborada pelo autor (2020).
Contexto passivo x Contexto ativo
Um reconhecimento de contexto ativo refere-se ao processamento que altera seu con-
teúdo por conta própria, com base nos dados medidos do sensor. O contexto ativo tam-
bém é considerado contexto proativo.
A hora e o local mudam nos smartphones com base no local onde o usuário
está (desde que a “atualização automática” seja selecionada para esses recur-
sos nas configurações).
Exemplo
Social Network
User
Contexto social/de rede
Contexto biométrico
Contexto de iluminação
Contexto de tempo
Contexto de identidade
Contexto de localização
68
Uma conscientização do contexto passivo refere-se ao processamento em que um con-
texto atualizado (com base nos dados do sensor) é apresentado ao usuário e o usuário
precisa decidir se, como e quando o aplicativo deve ser alterado.
A tabela a seguir mostra as ações do dispositivo para entradas com base no contexto
passivo e ativo.
Tabela 2: Contexto passivo e resposta de contexto ativo a entradas.
Sensores de entrada Ação do dispositivo no
contexto passivo
Ação do dispositivo
no contexto ativo
Baseado em
localização: mudança
de hora/localização.
Oferecer ao usuário a
alteração da hora/local;
oferecer restaurantes
próximos para jantar/
almoçar: o usuário, então,
age ou ignora.
Alterar automaticamente
hora/local ou selecionar o
restaurante com base na
preferência histórica e plotar
automaticamente a rota no
GPS. Nenhuma entrada/
decisão do usuário será
necessária.
Baseado na posição:
posição ou
orientação da tela.
Solicitar ao usuário se
deseja desligar ou alterar a
orientação da tela etc.
Alterar automaticamente a
orientação da tela ou entrar no
estado de desligamento etc.
Quando o usuário estiver em um fuso horário ou local diferente e a “atualiza-
ção automática” estiver desativada nas configurações para esses recursos,
o smartphone não atualizará automaticamente a hora e o local, mas solicita-
rá ao usuário todas as informações necessárias para deixá-lo decidir sobre a
ação subsequente.
Exemplo
69
Baseado no
ambiente acústico.
Solicitar que o usuário
ajuste o volume, as
notificações e os alertas.
Ajustar automaticamente
o volume, as notificações
e os alertas.
Baseado nos dados do
sensor biométrico.
Solicitar que o usuário faça
uma estimativa de calorias
das atividades do usuário.
Fazer automaticamente a
estimativa de calorias das
atividades do usuário.
Fonte: Elaborada pelo autor (2020).
70
Aplicações sensíveis à localização
Informações de contexto podem ser usadas em aplicativos de software para aprimorar a
experiência do usuário e facilitar o uso eficaz de recursos de hardware e software. Tam-
bém pode ser usado para:
1. Personalizar a interface do usuário.
2. Adicionar ou remover drivers, aplicativos e módulos de software.
3. Apresentar informações baseadas em contexto para consultasde usuários.
4. Executar ações orientadas por contexto.
Veremos alguns casos de aplicações que usam informações de contexto. Vamos lá!
Seleção imediata
As seleções próximas referem-se à interface do usuário que destaca os objetos ou infor-
mações que estão próximas dele em uma instância específica da consulta. Essa interfa-
ce do usuário pode usar sua localização atual como padrão e oferecer a ele a conexão ou
o uso de dispositivos de entrada e saída próximos, como impressoras, alto-falantes, telas
de exibição. Também pode oferecer conexão ou compartilhamento de informações com
outros usuários dentro da proximidade predefinida, bem como fornecer informações
sobre atrações e locais próximos em que o usuário possa estar interessado em visitar/
explorar em breve, como restaurantes, postos de gasolina, estádio de esportes.
Reconfiguração contextual automática
O processo de adicionar ou remover componentes de software ou alterar a interação
entre esses componentes é chamado de reconfiguração contextual automática.
Os drivers de dispositivo podem ser carregados com base no perfil do usuário.
As informações de contexto podem, portanto, ser usadas para suportar confi-
gurações personalizadas do sistema.
Exemplo
71
Informações e comandos contextuais
Ao usar informações de contexto, como localização ou preferências do usuário, o soft-
ware pode apresentar a ele comandos filtrados ou personalizados com o contexto ou
pode alterar o usuário atual com determinadas opções de execução baseando-se no
local atual, como oferecer silenciar o dispositivo móvel enquanto estiver na biblioteca.
Ações acionadas por contexto
O software ou os aplicativos podem invocar automaticamente determinadas ações com
base nas regras de ação de condição if-then.
O reconhecimento de localização refere-se à capacidade de um dispositivo determinar
ativa ou passivamente sua localização em termos de coordenadas em relação a um
ponto de referência. Existem vários sensores ou ferramentas de navegação que podem
ser usados para determinar a localização. Algumas das aplicações de reconhecimento
de local podem ser:
• Resposta de emergência, navegação, rastreamento de ativos, levantamento de solo.
• A localização simbólica é uma ação para a atividade (por exemplo, estar em uma
mercearia implica fazer compras).
O comando send file enviará para o dispositivo conectado mais próximo
por padrão.
Exemplo
Os aplicativos podem oferecer lembretes automáticos para fazer o checkout de
certos materiais de leitura ou colocar automaticamente o dispositivo móvel no
modo silencioso quando o usuário for detectado na biblioteca. No entanto, essas
ações automáticas exigem maior grau de precisão das informações de contexto.
Exemplo
72
• Papéis e interações sociais podem ser aprendidos por meio de agrupamento.
• A mudança de coordenadas pode implicar atividade e modo de transporte (ou
seja, correr, dirigir).
Localização de telefonia móvel
Existem muitas tecnologias de localização e tipos de sensores que podem ser usados
nos dispositivos com reconhecimento de contexto de localização. Veja algumas dessas
tecnologias e sensores:
1. GNSS (Sistema Global de Navegação por Satélite)
Esse sistema é constituído por uma rede de satélites que transmite sinais utilizados para
posicionamento e navegação em todo o mundo, como sistemas GPS, GLONASS e GALI-
LEO. Cada um desses sistemas consiste em três segmentos principais:
1 Segmento espacial: refere-se a satélites ou rede de satélites.
2 Segmento de controle: refere-se ao sistema de estações de rastreamento locali-
zadas em todo o mundo e que controlam funções como determinação da órbita de
satélite, sincronização e assim por diante.
3 Segmento de usuário: refere-se aos receptores de satélite e usuários com dife-
rentes capacidades.
O GNSS é adequado para o contexto de localização ao ar livre, possui boa cobertura e
precisão em todo o mundo.
Figura 14: Segmento GNSS.
Fonte: Elaborada pelo autor (2020).
Segmento de usuário
Segmento espacial
Segmento de controle
73
2. Wireless GEO
Wireless GEO refere-se aos mecanismos sem fio usados para identificar a localização
real do dispositivo. Nesse método, a localização física real, em vez da coordenação geo-
gráfica, é fornecida pelos mecanismos de localização sem fio subjacentes.
3. Sensores
Os sensores podem ser usados para aumentar a precisão da determinação da localiza-
ção de um dispositivo.
Os sensores também podem ser usados de forma independente quando outros métodos
não estão disponíveis.
Você sabe o que significa acerto de contas morto? O cálculo morto (cálculo deduzido) é
o processo de calcular a posição atual usando a posição de referência previamente deter-
minada e avançando essa posição com base em velocidades conhecidas ou estimadas
ao longo do tempo e do curso decorridos.
O Cell ID (CID), que é um número exclusivo usado para identificar cada celular/
smartphone. O mecanismo baseado no CID usa torre de celular, CID e código de
área de localização para identifique o celular.
Exemplo
No acerto de contas morto os sensores podem ser usados para determinar o
movimento relativo a partir de um ponto de referência, como para detectar se o
sistema se move para fora de um raio de 3 m ou para determinar o posiciona-
mento relativo dos dispositivos, como no caso de colisão dos dispositivos um
contra o outro para estabelecer uma referência comum e, em seguida, poderem
rastrear suas posições relativas.
Exemplo
74
Embora forneça boas informações sobre a posição, esse método é suscetível a erros
devido a fatores como imprecisão nas estimativas de velocidade ou direção. Os erros
também serão cumulativos, uma vez que o novo valor estimado teria seus próprios erros
e também será baseado na posição anterior que apresentava erros, resultando em erros
cumulativos. Alguns dos sensores usados são acelerômetros e giroscópios para integra-
ção de aceleração/velocidade para cálculo de mortos, acelerômetros para eventos de
impacto, pressão para elevação e assim por diante.
Algoritmo de localização
A descoberta da posição pode ser realizada utilizando medições de alcance, incluindo:
força do sinal recebido (Received Signal Strength - RSS), hora de chegada (Time Of Arri-
val - TOA), diferença de horário de chegada (Time Difference of Arrival - TDOA) e ângulo
de chegada (Angle of Arrival – AoA). A seguir vamos conhecer cada mediação:
1. Ângulo de chegada (Angle of Arrival – AoA)
Ângulo de chegada é o ângulo entre uma direção de referência e a direção de propagação
de um raio incidente. A direção de referência é chamada orientação e é fixa. O ângulo de
chegada é medido em graus e no sentido horário a partir do Norte, como mostrado na
Figura 15. O ângulo de chegada é chamado absoluto se estiver apontando na direção
Norte (ângulo de chegada θ 5 0 graus).
A Figura 15 a seguir mostra que os sensores/nós A e B estão cientes de suas posições
em θa e θb, respectivamente. Os relacionamentos geométricos podem ser usados para
estimar a localização do usuário/sensor desconhecido a partir da interseção das linhas
de dois ou mais sensores/nós/usuários que estão cientes de suas respectivas posições.
O exemplo da Figura 15 determina a orientação do usuário/sensor desconhecido em um
ângulo de 59 graus em relação ao Norte. Outros métodos podem ser usados se a orien-
tação do sensor/nó desconhecido não for conhecida.
75
Figura 15: Localização.
Fonte: Elaborada pelo autor (2020).
2. Hora de chegada (Time Of Arrival - TOA)
O TOA utiliza as informações de tempo de viagem (tempo de voo) entre o sensor de ori-
gem e o sensor receptor para medir a distância entre eles. O sinal transmitido é marcado
com hora e o TOA exato é medido no receptor.
O tempo de viagem para o sinal é uma medida direta da distância de viagem. A fonte e
os sensores do receptor nesse caso devem ser sincronizados para evitar erros devido a
desvios do relógio e atrasos no hardware/circuito. Essa sincronização não seria necessá-ria se o TOA de ida e volta fosse calculado. A distância é obtida do TOA multiplicando-o
com velocidade.
Ângulo de orientação
desconhecido
Ângulo de
chegada relativo
N
Orientação
desconhecida
Local
desconhecido
∆θ = 59.0º
B
θa = 51.9º
θb = 82.7º
A
76
ΔDistância = ΔTempo x Velocidade.
ΔDistância = distância entre o sensor de origem e o sensor do receptor.
ΔTempo = diferença entre a hora de chegada ao receptor (tr) e a fonte tempo t.
Velocidade é a velocidade da luz.
Quando vários receptores em locais conhecidos recebem o mesmo sinal em momentos
diferentes (devido à distância diferente percorrida pelo sinal), o TOA medido representa
um círculo (círculo para duas dimensões e esfera para três dimensões) com o receptor
no centro e a fonte em um local na circunferência em um espaço bidimensional. Usando
trilateração e multilateração, um ponto de interseção distinto de círculos pode ser deter-
minado. Esse ponto de interseção é a localização do sensor de origem, como mostrado
nas Figuras 16 e 17.
Figura 16: Sistema de posicionamento TOA: trilateração.
Fonte: Elaborada pelo autor (2020).
Localização estimada
do sensor principal
Transmissor 1
(x1, y1)
Transmissor 3
(x3, y3)
TOA T1 TOA T3
TOA T2
Transmissor 2
(x2, y2)
77
Figura 17: Sistema de posicionamento TOA: multilateração.
Fonte: Elaborada pelo autor (2020).
3. Diferença de chegada no tempo (Time Difference of Arrival – TDOA)
O TDOA identifica um local usando a diferença nos tempos de viagem do mesmo sinal
recebido em sensores colocados em vários locais versus o tempo absoluto de viagem
do sensor de origem ao sensor receptor. Os sistemas de localização baseados em TDOA
não dependem de estimativas de distância absoluta entre os pares de sensores.
A Figura 18 a seguir mostra um esquema em que um sensor principal na posição co-
nhecida (âncora) envia vários sinais de referência e, em seguida, as medições são feitas
pelo sensor receptor R. O sincronizador garante que as fontes de sinal de referência
sejam sincronizadas.
Localização estimada
do sensor principal
Transmissor 2
Transmissor 1
Transmissor 3
Transmissor 4
78
Figura 18: Esquema TDOA.
Fonte: Elaborada pelo autor (2020).
A Figura 19 a seguir mostra um esquema em que um sensor R transmite um sinal de
referência que é, então, recebido por vários sensores receptores após um atraso τr, de-
pendendo da distância da fonte para cada receptor. Este τr não pode ser calculado. Os
receptores estimam o TOA e calculam o TDOA.
Figura 19: Esquema TDOA: broadcast.
Fonte: Elaborada pelo autor (2020).
B
B
B
R
Pulso de
sincronização
Pulso de
sincronização
Pulso de
sincronização
Sinal de
referência
Sinal de
referência
Sinal de
referência
Sensor principal com
posição conhecida
Sensor principal com
posição conhecida
Sensor principal com
posição conhecida
Sensor receptor cuja
posição a ser identificada
Sincronizador
B
C
A
R
Pulso de
sincronização
Pulso de
sincronização
Pulso de
sincronização
TDOA
TDOA
TDOA
Sinal de
referência
Sinal de
referência
Sinal de
referência
Sensor principal com
posição conhecida
Sensor principal com
posição conhecida
Sensor principal com
posição conhecida
Sensor receptor cuja
posição a ser identificada
Sincronizador
79
Se não houver erros, o pico para τ será igual ao TDOA.
As diferenças de alcance (diferenças de tempo nos tempos de chegada do sinal) de dois
receptores fornecem um conjunto de pontos que podem ser geometricamente interpre-
tados como uma hipérbole (em duas dimensões). Várias funções hiperbólicas que se
cruzam em um único ponto podem ser computadas. Esse ponto de interseção exclusivo
fornece a localização do sensor de origem.
4. Força de sinal recebida (Received Signal Strength - RSS)
RSS em um local específico é a média dos sinais recebidos por vários caminhos. O
indicador RSS indica a potência do sinal recebido e é uma função da distância entre
o transmissor e o dispositivo receptor, que é impactada devido a várias interferências
no caminho.
A Figura 20 mostra um exemplo de sistema de posicionamento interno usando RSS,
que consiste em uma fase de treinamento e uma fase de posicionamento. Na fase de
treinamento as leituras de RSS dos pontos de acesso da rede local sem fio, disponível
em locais conhecidos referidos como pontos de referência, são coletadas apontando os
dispositivos móveis em diferentes orientações (todas as quatro direções).
O algoritmo de propagação de afinidade é então usado nas amostras brutas de tempo do
RSS para identificar e ajustar ou remover valores discrepantes. Os pontos de referência
são divididos em grupos diferentes (grupos independentes para cada orientação) e mapa
de rádio (conjunto de medições de RSS) armazenado como impressões digitais.
Na fase de posicionamento o RSS em tempo real é coletado pelo dispositivo móvel em
orientações arbitrárias dos pontos de acesso em locais desconhecidos (referidos como
pontos de teste) para formar o vetor de medição do RSS. Os algoritmos de localização
aproximada podem ser usados para comparar o RSS coletado com cada um dos vetores
RSS do ponto de referência, para identificar o cluster ao qual a medição do RSS do ponto
de teste pertence. Assim, ajuda a restringir a área de interesse. A localização final do dis-
positivo móvel pode ser estimada usando localização precisa.
80
Figura 20: Sistema de posicionamento interno.
Fonte: Elaborada pelo autor (2020).
Existem quatro esquemas possíveis que podem ser usados durante a localização apro-
ximada para encontrar a semelhança entre o RSS do ponto de teste e os diferentes clus-
ters, além de reconhecer o cluster correspondente com a maior semelhança para esse
ponto de teste. São eles:
1
Utilizar a distância euclidiana entre um vetor de medição RSS do ponto de
teste e cada RSS nos clusters de pontos de referência para corresponder o
ponto de teste a um cluster específico.
2
Utilizar a distância euclidiana entre um vetor de medição de RSS do ponto de
teste e a média de todas as leituras de RSS no cluster (em vez de cada leitura
de RSS) para corresponder o ponto de teste a um cluster.
Coletar RSS nos
pontos de referência
Collect RSS at test points
Fase de posicionamento
Localização intensaVetor
RSS
RSS +
clusters
correspondentes
Cluster
correspondente
Fase de treinamento
Posição
estimada
Melhor localização
Formação de cluster
Ponto de
acesso
Ponto de
acessoPonto de
acesso
Ponto de
acesso
Ponto de
acesso
Ponto de
acesso
Ponto de
acesso
Ponto de
acesso
Ponto de
acesso
Ponto de
acesso
selecionado
Posição
estimada
Dispositivo
móvel
Dispositivo
móvel
Ponto de acesso
Algoritmo de
propagação
de afinidade
Armazenagem
de clusters de
impressões digitais
Ajuste/remoção
Compara
com
clusters
81
3
Utilizar a distância euclidiana entre um vetor de medição RSS do ponto de
teste e a média ponderada para os pontos de referência (em vez da média
simples, como no Esquema 2), para dar maior peso aos pontos de referência
com maior estabilidade.
4
Encontrar semelhança do ponto de teste com o cluster usando qualquer um
dos três esquemas acima, considerando apenas as leituras de RSS de maior
resistência.
Por fim, o próximo passo é estimar a localização precisa usando a localização precisa.
As etapas abaixo descrevem o algoritmo de localização otimizada em forma básica. Veja:
1. Elimine pontos de acesso redundantes e não confiáveis. Pode haver mais pontos
de acesso do que o necessário para estimar a posição do dispositivo móvel. Tam-
bém pode haver pontos de acesso que não são confiáveis com alta variação de RSS
e podem afetar a estabilidade do sistema de posicionamento. Para eliminar pontos
de acesso redundantes e não confiáveis, apenas os pontos de acesso (e as leituras
deles) são considerados com as maiores leituras de RSS ou satisfazendo o critério
de Fisher.
2. Compare o vetor RSS dos pontos de teste com o vetor RSS de cada membro do
cluster identificado durante o estágiode localização aproximada, e a distância eucli-
diana é calculada.
3. O ponto de referência que tem a distância euclidiana mínima com o vetor RSS
do ponto de teste é então selecionado como a estimativa da posição do disposi-
tivo móvel.
Para ampliar o seu conhecimento veja o material complementar da Unidade 2,
disponível na midiateca.
MIDIATECA
82
O acionamento de uma lâmpada a partir do smartphone; a luminosidade do
local onde se está assistindo um filme e em que uma transição de cena altera
a intensidade luminosa; a televisão, que é ativada quando o usuário chega em
sua residência e depara-se com sua programação preferida. Estima-se que até
o final de 2020 o mundo chegue a 50 bilhões de dispositivos conectados à in-
ternet, trazendo maior praticidade e um novo estilo de vida.
NA PRÁTICA
83
Resumo da Unidade 2
Vimos que a ciência do contexto é avaliada como um modelo-padrão a ser seguido, que
nos traz uma construção de sistemas de computação ubíqua de modo a ser usufruída
dentro do cenário de interfaces inovadoras com o usuário. O grande desafio é torná-la
realmente ubíqua, de modo que as mais diversas aplicações sejam desenvolvidas para a
obtenção do maior número de informações de contexto de forma automatizada.
É notório que na computação da ciência do contexto há sistemas qualificados
para identificação de um contexto de uso em tempo real. É uma região inves-
tigativa da pesquisa totalmente dependente de desenvolvimento tecnológico
e das restrições que lhe são impostas. Mobilidade, ubiquidade, pervasividade
e inteligência artificial estão sendo analisadas para uso na cultura moderna,
trazendo implementações ubíquas.
CONCEITO
84
Referências
LEA, P. Internet of Things for Architects. Birmingham: Packt Publishing, 2018. ASIN
B0751FRNF6.
MARKOFF, J. Entrepreneurs See a Web Guided by Common Sense. In: The New York
Times, 11 nov. 2006.
SCHMIDT, A. et al. (orgs.). There is More to Context Than Location. Computers and
Graphics 23(6): 893-901. Disponível em: https://www.sciencedirect.com/science/article/
abs/pii/S009784939900120X?via%3Dihub. Acesso em: 8 maio 2020.
VERAS, M. Computação em nuvens. Rio de Janeiro: BrasPort, 2015. Biblioteca Virtual.
WEISER, M. The Computer for the 21st Century. Scientific American, 1991, p. 94.
https://www.sciencedirect.com/science/article/abs/pii/S009784939900120X?via%3Dihub
https://www.sciencedirect.com/science/article/abs/pii/S009784939900120X?via%3Dihub
Plataformas computacionais
UNIDADE 3
86
Computação Pervasiva (PervComp) significa coisas diferentes para pessoas diferentes.
Para alguns, a computação difundida é sobre ter acesso a dados móveis e aos mecanis-
mos necessários para dar suporte a uma comunidade de usuários nômades. Para ou-
tros, a ênfase está nos espaços “inteligentes” ou “ativos”, na conscientização do contexto
e na maneira como as pessoas usam os dispositivos para interagir com o ambiente. E,
ainda, outros mantêm uma visão centrada no dispositivo, focando na melhor maneira de
implantar novas funções em um dispositivo, explorando suas modalidades de interface
para uma tarefa específica. Falando de verdade, o PervComp abrange todas essas áreas.
É um novo formato de pensar sobre computadores mundialmente, que leva em conta o
ambiente humano natural e permite que os próprios computadores desvaneçam em se-
gundo plano. Nesta unidade veremos as diversas plataformas e suas devidas projeções
para as respectivas implementações.
INTRODUÇÃO
Nesta unidade você será capaz de:
• Compreender os levantamentos e pesquisas computacionais, tendo como obje-
to o estudo do contexto em que serão inseridos dispositivos sensíveis à captura
de dados.
OBJETIVO
87
Plataformas para usuários e/ou dispositivos
móveis
O estudo dos dados urbanos fornecidos pelos usuários em redes de sensores participa-
tivos (Participatory Sensor Networks - PSNs) é uma área de pesquisa recente. As PSNs
permitem observações em larga escala das ações das pessoas em tempo (quase) real
durante longos períodos de tempo.
As PSNs têm o potencial de tornar-se uma ferramenta fundamental para entender
melhor a interação humana urbana no futuro.
Os dados das PSNs podem aumentar o conhecimento de diferentes aspectos de nossa
vida em cenários urbanos, o que pode ser útil no desenvolvimento de aplicações mais
sofisticadas em vários segmentos, como na área de computação urbana (SILVA et al.,
2014b).
Além disso, as PSNs têm o potencial de complementar redes tradicionais de sensores
sem fio (WSNs) (AKYLDIZ et al., 2002) em vários aspectos. Embora as WSNs sejam
projetadas para detectar áreas de tamanho limitado, como florestas e vulcões, as PSNs
podem alcançar áreas de tamanho e escala variados, como grandes cidades, países ou
até o planeta.
Um WSN está mais sujeito a falhas, pois sua operação depende de coordenação das
ações de seus nós sensores, que possuem severas restrições de energia, processamen-
to e memória. Por outro lado, as PSNs são formadas por entidades autônomas e inde-
pendentes, ou seja, seres humanos com seus dispositivos móveis. Isso torna a tarefa de
detecção altamente resistente a falhas individuais.
As PSNs contam com a ideia de sensoriamento participativo (BURKE et al., 2006) e po-
dem ser definidas como um sistema que suporta um processo distribuído de coleta de
dados sobre experiências diárias pessoais e vários aspectos da cidade. Esse processo
requer a participação ativa de pessoas que usam dispositivos portáteis para comparti-
lhar voluntariamente informações contextuais e/ou disponibilizar seus dados detectados,
ou seja, os usuários determinam manualmente como, quando, o que e onde compartilhar
os dados detectados. Logo, por meio das PSNs, podemos monitorar as diferentes condi-
ções de uma variedade de cidades, bem como o comportamento coletivo das pessoas
conectadas à internet em tempo (quase) real (SILVA et al., 2014b).
88
As PSNs tornaram-se populares graças ao crescente uso de dispositivos portáteis,
como smartphones e tablets, bem como à adoção global de serviços de mídia social.
Portanto, um elemento central de uma PSN é um usuário com um dispositivo de com-
putação portátil.
Como isso ocorre?
Nesse cenário, as pessoas participam como sensores sociais, fornecendo voluntaria-
mente dados sobre um aspecto particular de um lugar que captura implicitamente suas
experiências da vida cotidiana. Esses dados podem ser obtidos com o auxílio de apare-
lhos sensores ou sensores humanos.
As PSNs oferecem oportunidades sem precedentes para acessar dados de detecção em
escala global. Essa grande quantidade de dados facilita a coleta de informações que, de
outra forma, não estão disponíveis com o mesmo alcance global. Elas podem ser usadas
para melhorar os processos de tomada de decisão em relação a diferentes entidades,
tais como indivíduos grupos, serviços e aplicativos.
Vale ressaltar que vários termos definidos recentemente, como humanos como fontes
de dados e colaboração coletiva (do inglês crowdsourcing) ubíqua refletem a ideia de
PSNs (SRIVASTAVA et al., 2012; MASHHADI; CAPRA, 2011; GANTI et al., 2011). Também é
importante mencionar que o termo “detecção oportunista” (LANE et al., 2010), que é um
tipo de detecção que também utiliza dispositivos de computação portáteis, pode levar à
confusão com o sensoriamento participativo a termo.
A detecção participativa difere da detecção oportunista principalmente na participação
do usuário. Neste último, o estágio de coleta de dados é automatizado sem a participa-
ção do usuário (LANE et al., 2008, 2010). A detecção oportunista suporta o processo de
Aparelhos sensores: smartphones (GPS, acelerômetro, microfone entre outros).
Sensores humanos: visão.
Nos sensores humanos, os dados são observações subjetivas produzidas pe-
los usuários (SILVA et al., 2014b).
Exemplo
89
detecção de um aplicativo sem exigir esforços do usuário, determinando automatica-
mente quando os dispositivos devem ser usados para atender às demandas específicasdos aplicativos. Assim, os aplicativos podem tirar proveito das capacidades de detecção
de todos os dispositivos dos usuários do sistema sem a necessidade de intervenção
humana (LANE et al., 2008).
Vamos conhecer algumas semelhanças e diferenças entre WSNs e PSNs.
WSNs PSN PSNs WSNs
Os dados detectados em uma PSN são
enviados ao servidor, ou “nó coletor”,
onde os dados podem ser acessados.
Por exemplo: APIs, como a API do
Instagram.
As PSNs têm as seguintes características:
• Nós sensores são entidades móveis au-
tônomas, ou seja, uma pessoa com um
dispositivo móvel.
• O custo da rede é distribuído entre os
sensores, fornecendo uma escala global.
• A detecção depende da vontade das
pessoas de participar desse processo.
• E os nós sensores não têm limitações
severas de energia.
A Figura 21 ilustra a ideia da PSN consistindo de usuários com seus dispositivos mó-
veis enviando dados detectados sobre suas localizações para sistemas na internet.
Também mostra as atividades de compartilhamento (representadas por pontos na
nuvem) de quatro usuários em três momentos diferentes, rotulados como “Tempo 1”,
“Tempo 2” e “Tempo 3”.
90
Figura 21: Ilustração das Redes de Sensores Participativos.
Fonte: Silva, Vaz de Melo, Almeida e Loureiro (2014b).
Observe na figura anterior que um usuário não participa necessariamente do sistema
o tempo todo. Após certo tempo, esses dados podem ser analisados de diferentes ma-
neiras. A parte inferior direita da imagem mostra, por uma visão agregada, um gráfico
direcionado no qual os nós/vértices representam os locais em que os dados foram
compartilhados, com arestas conectando locais que foram compartilhados pelo mes-
mo usuário.
Usando esse mesmo gráfico, podemos extrair, por exemplo, os padrões de mobilida-
de dos usuários. Essas informações podem ser usadas para executar o gerenciamento
de carga com mais eficiência na infraestrutura urbana de redes móveis. De fato, o co-
nhecimento adquirido das PSNs acompanha o uso da teoria dos grafos/redes (EASLEY;
KLEINBERG, 2010; NEWMAN, 2003, 2010).
De maneira geral, podemos coletar os dados das PSNs de várias formas, mas, nesta uni-
dade, abordaremos as três maneiras principais, que são: APIs, WEB Crawler e aplicativos.
Vamos lá!
APIs (Application Programming Interface)
A web está cheia de fontes de dados, entre elas PSNs representando uma enorme opor-
tunidade para pesquisadores de diversas áreas coletarem dados em larga escala e ex-
traírem informações deles.
T1
T3
T1
T1
T1
T2, T3
T2
Time 1 (T1) Time 2 (T2) Time 3 (T3) Aggregated view
Systems/sink
Users/nodes
T2
91
Algumas PSNs fornecem APIs que podem ser usadas para coletar dados. A partir desse
processo é possível obter dados de PSNs que podem ser usados em outros aplicativos
ou em análises específicas. As PSNs populares, como Twitter, Instagram e Foursquare,
possuem APIs para acessar dados compartilhados pelos usuários. No entanto, é comum
haver regras diferentes para seu uso.
Basicamente, existem duas maneiras principais de trabalhar com APIs. Preste atenção!
1. Baseado no streaming
A API baseada no streaming permite a coleta de dados em tempo (quase) real em que
são publicados em uma PSN. A API de streaming do Twitter, por exemplo, permite coletar
tweets públicos quase em tempo real.
2. Baseado em solicitações
A API baseada em solicitações disponibiliza dados mediante solicitação, o que normal-
mente inclui demandas específicas, como todos os últimos 10 tweets de um usuário.
Ambos os métodos podem sofrer limitações quanto à quantidade de dados que po-
dem ser fornecidos. Veja um exemplo.
De fato, o uso de APIs é uma maneira popular de obter dados. Os dados coletados das
APIs, como a API do Twitter, foram usados de várias maneiras, desde a medição da
influência de um usuário em uma rede (CHA et al., 2010) até a previsão de terremotos
(SAKAKI et al., 2010a).
A Figura 22 mostra um exemplo do uso da Twitter Streaming API, escrito em (pseudo) Py-
thon e usando a biblioteca TwitterAPI, o Algoritmo 1. Esse algoritmo acessa os tweets pes-
quisando pela palavra-chave “foursquare”. E a Figura 23 mostra que em poucas linhas de
código é possível coletar dados do Twitter, e o resultado com dois tweets: tweet1 e tweet2.
A API do Flickr permite 5.000 solicitações por hora, e a API do Twitter pode
gerar aproximadamente 1% de todo o total de tweets públicos disponíveis. Isso
pode impedir algum tipo de análise que exija um grande número de amostras,
como em um período de uma hora.
Exemplo
92
Figura 22: Algoritmo 1.
Fonte: Elaborada pelo autor (2020).
Figura 23: Etapas para a coleta de dados do Foursquare a partir de tweets.
Fonte: Elaborada pelo autor (2020).
Algumas PSNs oferecem APIs, mas com acesso restrito. É o caso do Foursquare, em que
poucos dados podem ser coletados sem o consentimento do usuário. A maioria dos da-
dos disponíveis nesta API está relacionada a locais, como dicas, localização e imagens.
Essas limitações incentivam a coleta de dados usando formas alternativas. Silva et al.
(2014c) coletaram dados sobre os check-ins do Foursquare por meio de mensagens
públicas compartilhadas no Twitter. Isso é possível porque o Foursquare permite que os
usuários compartilhem check-ins no Twitter, como mostrado na Figura 23. Como vimos,
a imagem mostra um tweet que veio do Foursquare e tem um URL que representa uma
página da web com mais informações sobre o check-in anunciado. No exemplo, a página
representa um check-in realizado em um café. Para obter mais dados sobre o check-in
nesta página é usada outra técnica de coleta de dados, chamada Web Crawler, que é
apresentada no próximo item.
ALGORITMO 1 - EXEMPLO DE COLETA DE DADOS DO TWITTER
1: from TwitterAPI import TwitterAPI Library that ease the interaction with the Twitter API
3: twitter_api = TwitterAPI(consumer_key = ‘XX’,
4: consumer_secret = ‘XX’,
5: access_token_key = ‘XX’,
8: filters = {‘track’ : ‘4sq’]} Searching tweets with the keyword “foursquare”
7:
10:
9: stream = twitter_api.request(‘statuses/filter’ , filters)
11: for item in stream.get_iterator() do
13: end for
12: print item [‘text’] Display the tweet text
2:
6: access_token_secret= ‘XX’) A registration in the API website provides the credentials
needed
93
Web Crawler
Nem todas as fontes de dados disponíveis na internet fornecem acesso direto a seus
dados por meio de APIs. Por esse motivo, é necessário usar outras estratégias para ob-
tê-los. Uma delas é chamada Web Crawler, que são programas que analisam páginas
da web em busca de dados relevantes. Um rastreador da web acessa algumas páginas
predefinidas e recupera dados delas.
A coleta de dados por meio de um rastreador da web depende da estrutura de origem
dos dados que desejamos obter e da abordagem escolhida.
A estrutura da fonte de dados contém os dados que queremos na página da web. Ou
melhor, o conteúdo de algumas tags HTML. Com isso, a construção de um rastreador da
web normalmente exige texto de mineração para a extração dos dados desejados. No
entanto, outras formas não convencionais de extração de dados também são possíveis.
Os autores criaram um rastreador da web para coletar informações sobre o tráfego, cap-
turando imagens de mapas, como o Bing Maps, contendo essas informações. Um con-
junto de dados de fluxo de tráfego de Manhattan foi desenvolvido usando a seguinte
metodologia, proposta em trabalhos anteriores (TOSTES et al. 2014).
Segundo Tostes (2014), com o objetivo de obter informações de fluxo de tráfego em toda
a cidade para estabelecer inferências e análise de big data para a descoberta de padrões,
foi desenvolvida uma metodologia para a aquisição de dados de fluxo de tráfego de fon-
tes distintas. Qualquer serviço de mapa GIS pode ser uma entrada dessametodologia.
A Figura 24 representa o processo de aquisição de fluxo de tráfego. Por meio do serviço
APImap, um rastreador da web de fluxo de cidade foi desenvolvido.
Em seguida, o script abash foi projetado para coletar a imagem do fluxo de tráfego da
cidade selecionada. Utilizamos a virtualização da impressora e a salvamos no banco
de dados. Foi desenvolvido um software de processamento de imagens para extrair
cada intensidade de tráfego rodoviário, economizando a porcentagem de pixels verdes,
pixels amarelos e pixels vermelhos, que correspondem à intensidade do fluxo (o verde
é verde, se for mostrado). Cada imagem do banco de dados de imagens foi processada
e sua intensidade de fluxo foi salva em uma data e hora específicas na aquisição de
fluxo de tráfego.
94
Figura 24: Metodologia de aquisição de fluxo de tráfego por meio de um rastreador de mapa GIS.
Fonte: Tostes et al. (2014). T. do E.
Formulários
Outra maneira de coletar dados é criando aplicativos em plataformas existentes. Alguns
sites populares, como o Facebook e o Instagram, permitem a criação de aplicativos em
suas plataformas. Dessa forma, os desenvolvedores podem oferecer serviços usando
dados compartilhados nesses aplicativos.
Mas, atenção: o Facebook não permite a coleta de dados sobre seus usuários diretamen-
te por APIs ou Rastreadores da Web. No entanto, é possível criar aplicativos na platafor-
ma do Facebook para esse fim. Quando um usuário do Facebook instala um aplicativo e
o autoriza a manipular seus dados, o aplicativo pode obter diversas informações, como
o conteúdo compartilhado com seus amigos. A seguir, ilustramos algumas iniciativas
nessa direção.
Primeira iniciativa: Plataforma de Desenvolvedor do Facebook
Em Nazir et al. (2008) os autores utilizaram essa abordagem para coleta de dados. Eles
criaram um aplicativo para o Facebook especificamente para coletar dados que permi-
tem o estudo do comportamento das pessoas que usam esse tipo de aplicativo.
A Plataforma de Desenvolvedor do Facebook foi lançada em maio de 2007 com pouco
alarde e apenas cerca de oito aplicativos em sua lista. Nos meses subsequentes a pla-
taforma teve um crescimento fenomenal, apresentando mais de 35.000 aplicativos até
julho de 2008. O lançamento da plataforma também aumentou o tráfego do Facebook
em cerca de 30% na semana de abertura e, desde então, registrou um crescimento geral.
GIS Map API
Processamento
de imagem
Aquisição de
Fluxo de tráfego
GIS
Base de dados
de imagem
Rastreador da
Web City Flow
Máscaras
Street Binary
95
A Figura 25 mostra aspectos da arquitetura da plataforma do desenvolvedor do Face-
book que são relevantes para nossos aplicativos. Nessa arquitetura, um usuário interage
indiretamente com os servidores de aplicativos por meio dos servidores de API do Fa-
cebook. Isso permite que o Facebook proteja os usuários de conteúdo mal-intencionado
que possa ser incorporado nos dados de resposta pelos servidores de aplicativos, uma
vez que o Facebook pode processar e remover conteúdo indesejável das respostas do
servidor antes de encaminhá-lo aos usuários.
Devemos observar, no entanto, que o Facebook possui um método alternativo para im-
plantar aplicativos em sua plataforma que permite aos usuários interagir diretamente
com os servidores de aplicativos.
No entanto, a arquitetura mostrada na Figura 25 é a arquitetura dominante usada, princi-
palmente devido à facilidade de exibir o conteúdo aos usuários do aplicativo e à proteção
da identidade dos servidores de aplicativos dos usuários finais. Adotamos essa arquite-
tura para desenvolver nossos próprios aplicativos do Facebook para limitar os recursos
necessários a fim de renderizar conteúdo para os usuários.
Figura 25: Arquitetura da plataforma de desenvolvedores do Facebook.
Fonte: Nazir et al. (2008). T. do E.
1. Pedido
enviado.
8. Solicitação recebida
pelo usuário.
4. Solicitação
recebida do usuário.
5. Resposta à solicitação
do usuário.
2. Resposta recebida
pelo Facebook.
7. Resposta processada e
encaminhada ao usuário.
6. Resposta recebida
pelo Facebook.
3. A resposta é processada
e encaminhada ao servidor
do jogo. Servidor do
aplicativo.
Servidor(es)
do Facebook.
Internet
Internet
96
Segunda iniciativa: Perfil de personalidade
Outro exemplo foi o aplicativo usado em Youyou et al. (2015). Os autores criaram um apli-
cativo para o Facebook que obteve as últimas curtidas dadas pelo usuário para desenhar
um perfil de personalidade.
Os julgamentos de personalidade humana foram obtidos dos amigos dos participantes
do Facebook, que foram solicitados a descrever um determinado participante usando
uma versão de 10 itens da medida de personalidade do IPIP. Para calcular a concordân-
cia entre si e a validade externa, usamos uma amostra de 17.622 participantes julgados
por um amigo; para calcular a concordância entre juízes, foi utilizada uma amostra de
14.410 participantes julgados por dois amigos, como mostra a Figura 26. Observe o dia-
grama que ilustra os métodos.
Figura 26: Metodologia usada para obter julgamentos baseados em computador e estimar
o acordo entre si.
Fonte: Youyou et al. (2015). T do E.
Também é possível criar aplicativos que não dependem de plataformas. É o caso do PSN
NoiseTube (MAISONNEUVE et al., 2009). Os autores criaram um aplicativo que permitia
aos usuários relatar níveis de ruídos na cidade. Esses dados permitem identificar, por
PERSONALIDADE DOS PARTICIPANTES
Medido usando-se o IPIP de 100 itens,
Questionário do Modelo de Cinco
Fatores (para 70.520 participantes).
Obtenha pontuações de personalidade e curtidas de
90% dos participantes e construa modelos de regressão
linear para os cinco traços de personalidade usando a
Seleção LASSO de variáveis.
Obtenha as curtidas dos 10% restantes dos participantes e
use os modelos de regressão linear para prever pontuações
para os cinco traços de personalidade.
Coeficientes
de regressão
Repita 10 vezes para obter julgamentos para todos os participantes
Precisão dos seres
humanos
Obtidos a partir dos perfis
do Facebook.
Ex.: Openess = α+β,*running+β, *Obama...+e
Obtido a partir das curtidas
dos participantes.
CURTIDAS DOS PARTICIPANTES MODELOS DE REGRESSÃO LINEAR JULGAMENTOS DO COMPUTADOR
Uma fórmula de regressão com
um coeficiente para cada curtida é
gerada para cada um dos cinco
traços de personalidade.
Co
rri
da
Fo
rd
E
xp
lo
re
r
Ba
ra
ck
O
ba
m
a
(..
.)
Da
nç
a
90% dos
participantes
10% Usuário X
Usuário 1
Usuário 2
Usuário 3
(...) ...
1
0
1
1
1
1
0
-
-
1
0
...
...
0
...
...
1
...
...
-
...
...
1
...
Precisão dos
computadores
Co
rri
da
Fo
rd
E
xp
lo
re
r
Ba
ra
ck
O
ba
m
a
(..
.)
Da
nç
a
Abertura
Consciência
Extroversão
Agradabilidade
Neuroticismo
...
.1
.7
.3
.1
.2
.6
0
-
-
.7
.2
...
...
0
...
...
.1
...
...
-
...
...
.2
...
Ab
er
tu
ra
Co
ns
ci
ên
ci
a
Ex
tro
ve
rs
ão
Ag
ra
da
bi
lid
ad
e
N
eu
ro
tic
is
m
o
90% dos
participantes
10% Usuário X
Usuário 1
Usuário 2
Usuário 3
(...) ...
...
1.9
2.1
2.1
4.2
3.2
1.9
4.2
5.0
4.3
3.2
1.9
...
...
2.1
...
...
3.2
...
...
4.2
...
...
4.3
Ab
er
tu
ra
Co
ns
ci
ên
ci
a
Ex
tro
ve
rs
ão
Ag
ra
da
bi
lid
ad
e
N
eu
ro
tic
is
m
o
90% dos
participantes
10% Usuário X
Usuário 1
Usuário 2
Usuário 3
(...) ...
...
1.9
2.1
2.1
4.2
3.2
1.9
4.2
5.0
4.3
3.2
...
...
...
...
...
...
...
...
...
...
...
...
...
21
97
exemplo, áreas da cidade com níveis de ruído acima dos limites da lei. Outro exemplo é
o Colab, citado anteriormente. Além disso, existe uma plataforma chamada ohmage que
facilita a construção de aplicativos para obter dados de detecção participativa.
Com os dados das PSNs, que podem ser obtidos usando uma das abordagens mencio-
nadas, podemos obter conhecimento usando diferentes estratégias. As informações ob-
tidas das PSNs têm o poder de alterar nossos limites físicos percebidos, além de ajudar
a entender melhor a dinâmicada cidade.
Como isso pode ser feito?
O City Image é uma técnica promissora que permite melhor compreensão da dinâmica
da cidade, ajudando a visualizar as rotinas comuns de seus cidadãos. Na imagem da
cidade cada célula representa o quão favorável é a transição de uma determinada cate-
goria em um determinado local (eixo vertical) para outra categoria (eixo horizontal). As
cores vermelhas representam rejeição, as cores azuis representam favorabilidade e a cor
branca é indiferença.
Exemplificamos a técnica City Image para duas cidades: São Paulo (Fig. 27A e B); e Ku-
wait (Fig. 27C e D). Nos dois casos, consideramos o dia da semana durante o dia, que é
o período típico das rotinas, e o final de semana durante a noite, que é um período repre-
sentativo das atividades de lazer (fora da rotina).
Figura 27: Imagens produzidas com a técnica City Image para São Paulo (SP) e Kuwait (KU)
em diferentes momentos.
Fonte: Silva, Vaz de Melo, Almeida e Loureiro (2014b).
98
Primeiro, observe que as transições para o escritório (locais de trabalho) são mais pro-
váveis de ocorrer durante a semana e durante o dia nas duas cidades, conforme o es-
perado. No entanto, observe que as imagens da cidade de São Paulo e Kuwait também
apresentam diferenças significativas que refletem os contrastes culturais entre as duas
cidades. Observe, por exemplo, que a imagem que representa as transições no fim de se-
mana durante a noite (Fig. 27D) mostra a falta de transições favoráveis para a categoria
de vida noturna no Kuwait. Este não é o caso de São Paulo (Fig. 27B), em que a transição
entre comida e vida noturna é altamente favorável. Isso sugere que em São Paulo as
pessoas gostam de ir a lugares que envolvem comida (comida) antes de ir a boates (vida
noturna). Em vez disso, no Kuwait, é provável que as pessoas realizem a loja de transição
→ comida e comida → casa, à noite, no fim de semana.
Técnicas para fornecer visualizações fáceis de interpretar as rotinas dos habitantes de
uma cidade, como as mencionadas aqui, são ferramentas valiosas para ajudar os plane-
jadores urbanos a entenderem melhor a dinâmica da cidade e, portanto, tomar decisões
mais eficazes.
99
Plataformas para processamento em nuvem
A computação em nuvem está presente em todo lugar, desde o acesso à revista de tec-
nologia, até na visita de site ou blog de TI. Porém, o único problema é que nem todos
comungam do mesmo saber sobre computação em nuvem.
Se perguntarmos para alguns profissionais o conceito de computação em nuvem, será
muito provável recebermos respostas diferentes.
A computação em nuvem vale mesmo todo o exagero em marketing?
Algumas pessoas não pensam assim. Segundo Larry Ellison (referindo-se ao termo
“computação em nuvem” em seu discurso sobre o Oracle OpenWorld 2008, conforme
citado em Oracle Ellison nails nails cloud computing, na CNET, em 26 de setembro de
2008) “o setor de computadores é o único setor mais voltado para a moda do que para
a moda feminina”. O CEO da Oracle criticou toda a questão da computação em nuvem,
dizendo que o termo foi usado em excesso e aplicado a tudo no mundo da computação.
Afinal, o que é computação em nuvem?
A computação em nuvem recebe esse nome como uma metáfora da internet. Normal-
mente, a internet é representada em diagramas de rede como uma nuvem, como mostra
a Figura 28. O ícone da nuvem representa “todas essas outras coisas” que fazem a rede
funcionar. É como “etc.” para o restante do mapa da solução.
Também significa uma área do diagrama ou solução que é preocupação de outra pes-
soa. Então, por que fazer o diagrama de tudo isso? Provavelmente, essa é a noção mais
aplicável ao conceito de computação em nuvem.
100
Figura 28: Nuvem utilizada em diagramas de rede para representar a internet.
Fonte: Elaborada pelo autor (2020).
A computação em nuvem reduz os custos operacionais e de capital. E, o mais importan-
te: permite que os departamentos de TI concentrem-se em projetos estratégicos, em vez
de manter o datacenter funcionando.
Como funciona?
A computação em nuvem é uma construção que permite acessar aplicativos que real-
mente residem em um local que não seja o seu computador ou outro dispositivo conec-
tado à internet. O dispositivo, na maioria das vezes, será um datacenter distante. Pode-
mos dizer que há muitos benefícios nisso.
Quais seriam os benefícios? Vamos conhecer alguns deles.
Pense na última vez que você comprou o Microsoft Word e o instalou nos computadores
da sua organização. Você correu com um CD ou DVD-ROM, instalou em todos os com-
putadores ou configurou seus servidores de distribuição de software para instalar auto-
maticamente o aplicativo em suas máquinas. Contudo, toda vez que a Microsoft emitia
um service pack era necessário instalar e reinstalar esse pacote ou configurar seus servi-
Internet
PCs clientes Servidores
101
dores de distribuição de software para distribuí-lo. Não é isso? E não podemos deixar de
mencionar os custos de todas as licenças. Provavelmente, usamos o Word uma vez por
mês, mas sua licença custa tanto quanto a de todos os outros.
A beleza da computação em nuvem é que outra empresa hospeda seu aplicativo ou con-
junto de aplicativos. Nesse caso, como mostra a Figura 29, isso significa que eles lidam
com os custos dos servidores, gerenciam as atualizações de software e, dependendo de
como você cria seu contrato, paga menos pelo serviço.
Figura 29: Empresas hospedam seus aplicativos.
Fonte: Elaborada pelo autor (2020).
Não se esqueça do equipamento que não será preciso comprar — o que resultará em
menos gastos de capital — fazendo com que o CFO (Chief Financial Officers) realmente
sorria ao vê-lo. Por ter alguém para hospedar os aplicativos não é necessário comprar
os servidores nem pagar pela eletricidade para alimentá-los e resfriá-los. Além disso, é
conveniente para telecomutadores e trabalhadores remotos que viajam, que podem sim-
plesmente fazer login e usar seus aplicativos onde quer que estejam.
Links inoperantes
Então, tudo parece ótimo, certo? Não tão rápido. Como em tudo na TI, existem prós e
contras e a computação em nuvem não está isenta. Vamos falar sobre alguns problemas
em potencial. Veja a Figura 30, que mostra possíveis pontos de falha.
Internet
A empresa não paga por
hardware e manutenção
O provedor de serviço
paga pelo equipamento
e manutenção
102
Figura 30: Links inoperantes.
Fonte: Elaborada pelo autor (2020).
Embora uma falha na internet ou problemas com o seu provedor de serviços de internet
(ISP) sejam raros, talvez você não consiga acessar seus aplicativos para realizar um tra-
balho. Atualmente, não é todo mundo que trabalha em um escritório, mas se você possui
o aplicativo em seus próprios servidores locais e todos os que o acessam não são re-
motos, teria mais chance de que uma interrupção na internet não afetaria sua inscrição.
Não é, porém, apenas a conexão à internet que pode estar sujeita a interrupções. O site
também pode apresentar problema.
Em julho de 2008, o serviço de armazenamento em nuvem S3 da Amazon caiu
pela segunda vez naquele ano. Muitos aplicativos foram hospedados pela em-
presa e todos esses serviços não puderam ser acessados até que os técnicos
resolvessem o problema. Algumas aplicações foram desativadas por oito horas.
Fonte: https://blogbrasil.westcon.com/como-agir-quando-o-servidor-de-nuvem-cai
Exemplo
Internet
Sua empresa
Provedor
de serviço
https://blogbrasil.westcon.com/como-agir-quando-o-servidor-de-nuvem-ca
103
Além disso, pode haver simplesmente aplicativos ou dados que localizam o local. Se
você tiver informações confidenciais ou proprietárias, seu grupo de segurança de TI pode
simplesmente exigir que não as armazene nas máquinas de outras pessoas.
Problemas de integração de aplicativos
Você acha que é mais difícil integrar seus aplicativos se eles estiverem geograficamente
dispersos? É, sim, mais fácil gerenciar e acessar seus dados se estiverem próximos, e
não sob o controlede outra pessoa.
Se precisar de dois aplicativos para trocar informações, é mais fácil fazê-lo se ambos
residirem no mesmo local. Se você possui um aplicativo internamente e precisa entrar
em contato com outro aplicativo na nuvem, torna-se muito mais complicado e mais pro-
penso a falhas.
Componentes da nuvem
Em um sentido topológico simples, uma solução de computação em nuvem é composta
de vários elementos: clientes, datacenter e servidores distribuídos. Esses componen-
tes compõem as três partes de uma solução de computação em nuvem, como mostra
a Figura 31.
Figura 31: Três componentes da computação em nuvem.
Fonte: Elaborada pelo autor (2020).
Computadores
dos clientes
Servidores distribuídos
Datacenter
Internet
104
Cada elemento tem um objetivo e um papel específico no fornecimento de um aplicativo
baseado em nuvem funcional. A seguir, vamos analisar de forma mais detalhada cada
um deles.
Clientes
Em uma arquitetura de computação em nuvem os clientes são exatamente as mesmas
coisas que uma LAN (rede local) comum, antiga e cotidiana. Eles são, tipicamente, os
computadores que ficam na sua mesa. No entanto, eles também podem ser laptops,
tablets, telefones celulares ou PDAs — todos os grandes fatores para a computação em
nuvem devido à sua mobilidade.
De qualquer forma os clientes são os dispositivos com os quais os usuários finais intera-
gem para gerenciar suas informações na nuvem. Os clientes geralmente enquadram-se
em três categorias:
1. Dispositivos móveis: incluem PDAs ou smartphones, como Blackberry, Windows
Mobile Smartphone ou iPhone.
2. Thin Clients: são computadores que não possuem discos rígidos internos, mas
permitem que o servidor faça todo o trabalho e depois exiba as informações.
3. Grosso: é um computador comum, usando um navegador da web como Firefox
ou Internet Explorer para conectar-se à nuvem.
Os thin clients estão se tornando uma solução cada vez mais popular, devido ao seu
preço e efeito no meio ambiente. Vamos conhecer alguns benefícios, a saber:
• Custos mais baixos de hardware: os thin clients são mais baratos do que os
grossos porque não contêm tanto hardware. Eles também duram mais tempo antes
de serem atualizados ou tornarem-se obsoletos.
• Custos mais baixos de TI: os thin clients são gerenciados no servidor e há menos
pontos de falha.
• Segurança: como o processamento ocorre no servidor e não existe disco rígido, há
menos chances de malwares invadirem o dispositivo. Além disso, como os thin clients
não funcionam sem um servidor, há menos chances de serem fisicamente roubados.
• Segurança dos dados: como os dados são armazenados no servidor, há menos
chances de os dados serem perdidos se o computador cliente travar ou for roubado.
• Menor consumo de energia. os thin clients consomem menos energia do que os
clientes grossos. Isso significa que você pagará menos para alimentá-los e também
pagará menos para climatizar o escritório.
105
• Facilidade de reparo ou substituição: se um thin client morre, é fácil substituí-lo.
A caixa é simplesmente trocada e a área de trabalho do usuário retorna exatamente
como era antes da falha.
• Menos ruído: sem um disco rígido giratório, menos calor é gerado e ventiladores
mais silenciosos podem ser usados no thin client.
Datacenter
O datacenter é a coleção de servidores em que o aplicativo assinado está alojado. Pode
ser uma sala grande no porão do seu prédio ou uma sala cheia de servidores do outro
lado do mundo que tenha acesso via internet.
Uma tendência crescente no mundo da TI é a virtualização de servidores. Ou seja, o
software pode ser instalado, permitindo o uso de várias instâncias de servidores vir-
tuais. Dessa forma, pode ter meia dúzia de servidores virtuais em execução em um
servidor físico.
Servidores distribuídos
Nem todos os servidores precisam ser alojados no mesmo local. Geralmente, os servi-
dores estão em locais geograficamente diferentes. Para um assinante da nuvem, porém,
esses servidores agem como se estivessem zumbindo um ao lado do outro.
Isso fornece ao provedor de serviços mais flexibilidade em opções e segurança.
A computação em nuvem não é um caso de tamanho único. Existem várias maneiras
diferentes de implantar a infraestrutura, que dependerá do aplicativo e de como o pro-
vedor escolhido criará a solução em nuvem. Essa é uma das principais vantagens do
uso da nuvem. Suas necessidades podem ser tão grandes que o número de servidores
A Amazon tem sua solução em nuvem em servidores em todo o mundo. Se
algo acontecesse em um site, causando uma falha, o serviço ainda seria aces-
sado por outro site. Além disso, se a nuvem precisar de mais hardware, eles não
precisarão lançar mais servidores na sala segura, pois eles podem adicioná-los
em outro site e simplesmente torná-lo parte da nuvem.
Exemplo
106
necessários excede em muito o seu desejo ou orçamento para executá-los internamente.
Como opção, podemos precisar apenas de uma alternativa de poder de processamento,
para não comprar e executar um servidor dedicado para o trabalho. A nuvem atende às
duas necessidades.
Primeiras plataformas na nuvem
Existem vários fornecedores que oferecem serviços em nuvem. O que eles têm a ofere-
cer varia de acordo com o fornecedor e seus modelos de preços também são diferentes.
A computação em nuvem é um campo crescente, e provavelmente haverá novos players
no mercado em um futuro próximo. Agora, falaremos dos grandes nomes da computa-
ção em nuvem, a saber:
Amazon
A Amazon foi uma das primeiras empresas a oferecer serviços em nuvem ao público, e
eles são muito sofisticados. A Amazon oferece vários desses serviços, incluindo:
• Elastic Computer Cloud (EC2): oferece máquinas virtuais e ciclos extras de CPU
para sua organização.
• Serviço de armazenamento simples (S3): permite armazenar itens de até 5 GB
de tamanho no serviço de armazenamento virtual da Amazon.
• Serviço de fila simples (SQS): permite que suas máquinas conversem entre si
usando essa API de transmissão de mensagens.
• SimpleDB: um serviço da web para executar consultas em dados estruturados
em tempo real. Esse serviço funciona em estreita colaboração com o Amazon Sim-
ple Storage Service (Amazon S3) e o Amazon Elastic Compute Cloud (Amazon EC2),
fornecendo coletivamente a capacidade de armazenar, processar e consultar con-
juntos de dados na nuvem.
Esses serviços podem ser difíceis de usar, porque precisam ser feitos pela linha de co-
mando. Dessa maneira, se há o costume de trabalhar em um ambiente de linha de co-
mando, não deve haver muitos problemas ao usarem-se esses serviços.
As máquinas virtuais da Amazon são versões das distribuições Linux. Portanto, quem
tem experiência com Linux estará em casa. De fato, os aplicativos podem ser gravados
em sua própria máquina e carregados na nuvem.
107
Google
Em forte contraste com as ofertas da Amazon está o Google App Engine. Na Amazon,
obtemos privilégios de root, mas no App Engine não é possível gravar-se um arquivo em
seu próprio diretório. O Google removeu o recurso de gravação de arquivos do Python
como medida de segurança e, para armazenar dados, devemos usar o banco de dados
do Google.
De maneira geral, o Google possui as seguintes características:
• Oferece documentos e planilhas on-line.
• Incentiva os desenvolvedores a criar recursos para esses e outros softwares on-line,
usando o Google App Engine.
• Reduz os aplicativos da web a um conjunto principal de recursos.
• Cria uma boa estrutura para fornecê-los.
• Oferece recursos úteis de depuração.
Grupos e indivíduos provavelmente tirarão o máximo proveito do App Engine escrevendo
uma camada de Python que fica entre o usuário e o banco de dados. Nesse caso, pode-
mos recorrer ao Google para adicionar mais recursos de serviços de processamento em
segundo plano.
Quer saber mais sobre o App Engine? Acesse o link https://cloud.google.com/
appengine/.
Ampliando o foco
A Amazon é o serviço de nuvem mais extenso até o momento. Você pode ver maissobre os serviços em nuvem da Amazon clicando em http://aws.amazon.com.
Ampliando o foco
https://cloud.google.com/appengine/
https://cloud.google.com/appengine/
http://aws.amazon.com
108
Microsoft
A solução de computação em nuvem da Microsoft chama-se Windows Azure. É um
sistema operacional que permite às organizações executarem aplicativos Windows e
armazenarem arquivos e dados usando os datacenters da Microsoft. Também oferece
a Plataforma de Serviços do Azure, que permite que os desenvolvedores estabeleçam
identidades de usuários, gerenciem fluxos de trabalho, sincronizem dados e executem
outras funções enquanto criam programas de software na plataforma de computação
on-line da Microsoft.
Os principais componentes da Plataforma de Serviços do Azure incluem:
• Windows Azure: fornece hospedagem e gerenciamento de serviços e armazena-
mento, computação e rede escalável de baixo nível.
• Microsoft SQL Services: fornece serviços de banco de dados e relatórios.
• Microsoft .NET Services: fornece implementações baseadas em serviço de con-
ceitos do .NET Framework, como fluxo de trabalho.
• Live Services: usado para compartilhar, armazenar e sincronizar documentos, fo-
tos e arquivos em PCs, telefones, aplicativos de PC e sites.
• Microsoft SharePoint Services e Microsoft Dynamics CRM Services: usado
para conteúdo comercial, colaboração e desenvolvimento de soluções na nuvem.
A Microsoft faz hoje uso do Office 365, oferecendo uma opção baseada em navegador
para que os usuários possam ler e editar documentos on-line, além de oferecer a capaci-
dade de colaboração entre os usuários usando as versões Web, móvel e cliente do Office.
A Microsoft está um pouco atrasada para a festa na nuvem e não é líder em computação
em nuvem. Essa honra é atribuída ao Google e à Amazon, e cada vez mais empresas
estão oferecendo esses serviços. Portanto, se a Microsoft quiser manter-se competitiva,
precisará acelerar o ritmo.
As ofertas de nuvem da Microsoft podem ser encontradas por meio do link www.
microsoft.com/azure/default.mspx.
Ampliando o foco
http://www.microsoft.com/azure/default.mspx
http://www.microsoft.com/azure/default.mspx
109
Para alguns, o termo “computação em nuvem” é simplesmente exagero. Porém, para
outros que desejam adotá-lo, a computação em nuvem é uma ótima maneira de os pro-
fissionais de TI concentrarem-se menos em seus datacenters e mais no trabalho de
tecnologia da informação.
110
Interface
Do ponto de vista dos usuários, um ambiente PervComp (Computação Pervasiva) é um
espaço que contém inúmeros dispositivos que trabalham juntos para fornecer aos usuá-
rios acesso generalizado a informações e serviços. Esses dispositivos podem ser:
• Estacionários: como em geladeiras, alto-falantes acústicos ou luzes de teto.
• Móveis: como em sensores de rastreamento, notebooks ou smartphones.
Embora a noção tradicional de um PC faça parte dessa visão, um objetivo mais amplo
é permitir que atividades típicas do PC se afastem de uma área de trabalho fixa e se
misturem ao ambiente como um todo. Além desses dispositivos de E/S centrados no
usuário, também haverá dispositivos dedicados a fornecer comunicação e capacidade
computacional ao sistema, mas eles serão transparentes para os usuários. Portanto, o
objetivo da camada de interface do usuário no PervComp é:
O desenvolvimento de um sistema que agrega diversos dispositivos em
uma experiência coerente do usuário.
Desnecessário dizer que isso exige esforço de pesquisa em uma variedade de frentes,
incluindo:
1. Interoperabilidade.
2. Software.
3. Adaptadores inteligentes.
4. Percepção do mundo.
5. Rede inteligente.
6. Descrição de serviços.
No entanto, nos restringimos aos componentes citados acima, que são relevantes para
o PervNet (Redes Pervasivas), e discutimos sobre eles neste capítulo, sob o título Tec-
nologia de interface, porque eles atuam como interface entre o núcleo do PervNet e o
conjunto de aplicativos do usuário para facilitar o PervComp.
Middleware
O middleware é um dos quatro principais componentes da computação pervasiva. Tal-
vez, seja a área mais cinzenta e, portanto, menos frequentada da computação pervasiva
111
até agora. No entanto, sem ele, a internet pervasiva não poderá fornecer o efeito desejado
até o nível do usuário.
Em certo sentido, encontramos um subconjunto dos problemas relacionados ao middle-
ware anteriormente na computação distribuída e na computação móvel. No entanto, a ne-
cessidade de atender à constante mudança no número e tipo de dispositivos difusos de
interesse de um usuário, bem como em sua grande quantidade, determina novas aborda-
gens para a construção de sistemas de middleware baseados em modelos mais flexíveis.
Os desafios de middleware oferecidos pela geração anterior de redes estão sendo res-
pondidos por tecnologias como Plug and Play, XML, Java e Jini. Porém, os grandes de-
safios das redes pervasivas permanecem sem resposta, simplesmente porque as arqui-
teturas atuais de software e rede e seus paradigmas de programação associados não
serão dimensionados para esse novo mundo da computação pervasiva.
A função do middleware é:
Facilitar a tarefa de projetar, programar e gerenciar aplicativos distribuí-
dos (móveis e estáticos), fornecendo um ambiente de programação dis-
tribuído simples, consistente e integrado.
Essencialmente, o middleware é uma camada de software distribuída, ou “plataforma”,
que abstrai a complexidade e a heterogeneidade do ambiente distribuído subjacente com
sua infinidade de tecnologias de rede, arquiteturas de máquinas, sistemas operacionais
e linguagens de programação. Existem diferentes plataformas de middleware que su-
portam diferentes modelos de programação. Vamos conhecer três modelos populares
(paradigmas). São eles:
1. Baseados em objeto, evento e mensagem no local: no middleware baseado em
objetos, os aplicativos são estruturados em objetos (potencialmente distribuídos)
que interagem via invocação de método transparente por região.
2. Orientado a mensagens: é direcionado para aplicativos em que as mensagens
precisam ser persistentemente armazenadas e enfileiradas.
3. Baseados em eventos e orientados a mensagens: empregam principalmente
comunicações “single shot” em vez da comunicação de estilo de resposta à solici-
tação encontrada no middleware baseado em objeto. Os aplicativos de fluxo de tra-
balho e de mensagens são bons exemplos de middleware orientado a mensagens.
112
Entre os três modelos, o middleware baseado em objeto é o modelo mais popular exem-
plificado pelo CORBA e DCOM. Ambas as plataformas oferecem:
1) Uma linguagem de definição de interface (IDL), que é usada para abstrair o fato de
que os objetos podem ser implementados em qualquer linguagem de programação
adequada.
2) Um intermediário de solicitação de objeto, responsável por direcionar de forma
transparente as invocações de métodos para as apropriadas objeto de destino.
3) Um conjunto de serviços, tais como: nomeação, hora, transações, replicação entre
outros. Esses serviços melhoram ainda mais o ambiente de programação distribuída.
No entanto, um middleware baseado em eventos é particularmente adequado para a
construção de aplicativos distribuídos não centralizados, que devem monitorar e reagir
às mudanças em seu ambiente.
Como o middleware baseado em eventos possui propriedades de dimensionamento
potencialmente melhores que o middleware baseado em objetos, para aplicativos Perv-
Comp pode ser a melhor opção.
Os ambientes atuais de middleware, como DCOM, Java e CORBA, são construídos sobre
semântica síncrona e, portanto, sofrem de várias falhas. Vamos falar um pouco sobre
algumas. Preste atenção nelas.
1. Os ambientes atuais de middleware forçam os programadores a empregar um
modelo de programação multithread, se desejam evitar as latências inerentes às
comunicações síncronas.
Controle de processos, canais de notícias da internet e rastreamento de estoque.
Exemplo
113
2. Uma das falhas nastécnicas de comunicação síncrona é que o pipelining de
mensagens entre dois pontos de extremidade é muito ineficiente, mesmo em um
ambiente multithread. Se os programas de envio e recebimento são multithread, en-
tão, com cada programa bifurcando vários threads que se comunicam em paralelo,
o pipelining pode ser aproximado. No entanto, para que as mensagens tenham uma
ordem de chegada bem definida, os programas de envio e de recebimento devem
implementar individualmente o código de serialização de mensagens. Além disso,
ainda não seria possível ter apenas uma única mensagem de resposta para um lote
inteiro de mensagens em pipeline.
Quanto a dados e funcionalidade, vários sistemas distribuídos, direcionados a um am-
biente de computação global, exploraram o uso de objetos como a abstração unificadora
de dados e funcionalidade. No entanto, muitos são céticos sobre esse uso de objetos
para computação distribuída por dois motivos. Primeiro, os objetos como mecanismo de
encapsulamento são baseados em duas suposições:
(1) A implementação e o layout dos dados mudam com mais frequência do que a
interface de um objeto.
(2) É realmente possível projetar interfaces que acomodam diferentes implementa-
ções e sustentam-se à medida que o sistema evolui. Segundo, essas suposições
não se aplicam a um ambiente de computação distribuído global.
Cada vez mais, formatos de dados comuns, como HTML ou PNG, são especificados por
grupos do setor ou organismos padrão, principalmente o World Wide Web Consortium, e
evoluem em um ritmo relativamente lento. Por outro lado, os fornecedores de aplicativos
competem pela funcionalidade, levando a diferenças consideráveis nas interfaces e im-
plementações de aplicativos e em um ritmo de inovação muito mais rápido. Segundo, é
Um programa de thread único que precise interagir com vários pares teria que
serializar suas interações com eles, em vez de se envolver em várias interações
simultaneamente. Um programa de thread único também não poderá executar
outro trabalho útil enquanto aguarda uma resposta de um servidor remoto. Pior
ainda, se o servidor falhar ou ficar inacessível, o programa ou dispositivo será
bloqueado até que um tempo limite de entrega seja atingido.
Exemplo
114
preferível armazenar e comunicar dados em vez de objetos, pois geralmente é mais fácil
acessar dados passivos do que objetos ativos.
Em particular, o acesso seguro a objetos ativos em um sistema distribuído levanta ques-
tões importantes, principalmente a segurança do sistema e o controle de recursos, que
são menos difíceis de abordar ao acessar dados passivos. Isto é claramente refletido na
internet de hoje. É percebido que o acesso a documentos normais em HTML ou PDF fun-
ciona bem, enquanto o conteúdo ativo resulta em uma sequência contínua de violações
de segurança. Dessa maneira, geralmente considera-se que os dados e a funcionalidade
devem ser mantidos separados em vez de serem encapsulados em objetos.
Ao mesmo tempo, dados e funcionalidade dependem um do outro, principalmente ao
considerar o armazenamento de dados e o código móvel. Por um lado, no entanto, os
sistemas de gerenciamento de dados já contam com o código móvel para seus serviços.
Veja a situação abaixo que trabalha com banco de dados e linguagem de programação.
Uma das vertentes propaga atualizações como procedimentos e não sim-
plesmente como dados. O banco de dados Oracle8i não apenas suporta pro-
cedimentos armazenados SQL, mas também inclui uma máquina virtual Java
com todos os recursos. Por outro lado, os sistemas de código móvel obti-
veram sucesso limitado na ausência de um modelo de dados padrão e nas
soluções de gerenciamento de dados correspondentes.
Embora muitos projetos tenham explorado agentes móveis, eles não foram
amplamente adotados, em parte porque não possuem gerenciamento de ar-
mazenamento. O Java, originalmente comercializado como uma plataforma
de código móvel para a internet, teve mais sucesso na empresa em que o
acesso aos bancos de dados é universal. O resultado é uma tensão conside-
rável entre integrar dados e funcionalidade com muita força, como na forma
de objetos, e não integrá-los com força suficiente.
Uma maneira possível de resolver essa tensão é manter os dados e a funcio-
nalidade separados e introduzindo uma nova abstração de nível superior para
agrupar os dois. Por exemplo, os dados podem ser representados por tuplas,
que são essencialmente registros com campos nomeados e opcionalmente
digitados, enquanto a funcionalidade é fornecida por componentes, que im-
plementam unidades de funcionalidade. Para resumir, os dados e a funciona-
lidade precisam ser suportados igualmente bem no PervComp, mas também
precisam ser mantidos separados.
115
Em relação à Interface de Programação de Aplicativos (Application Programming Inter-
face – API), outro recurso desejável para um PervWare é um único aplicativo interface
de programação (API) e um único formato de distribuição binária, incluindo um único
conjunto de instruções, que pode ser implementado em toda a gama de dispositivos em
um ambiente de computação abrangente. Uma única API comum possibilita o desenvol-
vimento de aplicativos uma vez, e um único formato binário comum permite distribuição
e instalação automáticas de aplicativos.
Ambiente inteligente
O ambiente inteligente é outra maneira de resolver o problema de interface no PervComp.
Serve como uma abstração unificadora para a interface do usuário. Em certo sentido,
é um contêiner para dados, funcionalidade, componentes de middleware e outros am-
bientes, fornecendo uma combinação das funções servidas por sistemas operacionais
legados e interfaces de usuário em uma escala aprimorada. Como um ambiente inteli-
gente deve suportar uma coleção de dispositivos em mudança (e, portanto, serviços), é
necessário lidar com a descoberta de serviços. Além disso, os ambientes inteligentes
devem determinar os recursos do serviço recém-encontrado para possibilitar o agrupa-
mento de dados e funcionalidades, quando necessário. Isso permite que os dados e a
funcionalidade evoluam separadamente e os aplicativos têm permissão para armazenar
e trocar apenas dados.
É fato bem conhecido que o conceito de abstrair e descrever os serviços, que surgem
naturalmente ao desenvolver-se um sistema que envolve interação automática entre
componentes do programa ou exposição de atributos do dispositivo. Vários sistemas
É importante observar que o Java não fornece essa plataforma comum. Embo-
ra a máquina virtual Java seja atraente como plataforma de execução virtual (e
usada para esse fim por um projeto world), Java como plataforma de aplicativo
não atende às necessidades do amplo espaço de computação. Em particular,
as bibliotecas de plataforma do Java são grandes, pouco integradas e frequen-
temente direcionadas a computadores convencionais. Além disso, o Java, por
si só, falha em separar dados e funcionalidade e não incentiva a programação
para mudanças.
Ampliando o foco
116
comerciais, como o Universal Plug and Play, fornecem descrições de dispositivos. No
entanto, eles não conseguem diferenciar entre a apresentação da interface e a descrição
do serviço. Alguns sistemas propuseram separar o controle do dispositivo da lógica de
decisão, mas não permitiram alterações na configuração. Alguns codificaram informa-
ções de contexto nas descrições de serviço XML, mas não separaram a semântica do
serviço da descrição do serviço.
A maioria dos sistemas de ambiente inteligente não lida com serviços dinâmicos depen-
dentes da localização e gera automaticamente interfaces de usuário. No entanto, um
esquema de descrição de serviço pode ser projetado para suportar consultas sobre os
serviços disponíveis e seus recursos.
Uma grande parte de qualquer ambiente inteligente compreende middlewares para lidar
com a conscientização do contexto ou para perceber as percepções do usuário, como
o software de rastreamento de pessoas foi usado no projeto Easylivingda Microsoft.
Contudo, é desejável ter comandos associados a tags legíveis por humanos. Embora não
seja uma solução completa, esse pode ser o primeiro passo para a geração automática
de interfaces de usuário para diferentes modalidades.
Adaptadores inteligentes
Em relação a adaptadores inteligentes, a existência de espaços inteligentes no PervComp
sugere que alguns dos ambientes encontrados por um usuário podem ser capazes de se
adaptar. O PervNet experimenta alterações dinâmicas na configuração, levando a uma
incompatibilidade significativa entre a oferta e a demanda de um serviço ou recurso.
Portanto, é necessária uma adaptação para amenizar esses nervosismos nos serviços/
recursos ao passar do PervNet para o PervComp. Os adaptadores inteligentes são res-
ponsáveis por fazer esse trabalho de middleware. Ou seja, se os recursos atuais supor-
O recurso pode ser largura de banda de rede sem fio, energia, ciclos de com-
putação, memória e assim por diante. O serviço solicitado pode ser a entrega
de mensagens de qualidade premium, criptografia de segurança forte e assim
por diante.
Exemplo
117
tarem apontar via trackball, mouse ou gesto visual e se para cada um desses métodos
houver um serviço que gera uma saída apontada, um navegador da web inteligente pode-
rá ser acionado por qualquer um desses serviços, dependendo da preferência do usuário,
contexto ou outro mecanismo de seleção.
Outra situação é a adaptação inteligente dos processos, que descrevem o destino de
uma mensagem. No PervComp será comum que os usuários façam a transição frequen-
temente entre notebooks, desktops e máquinas domésticas. Isso implica que os com-
ponentes vinculados a um usuário podem precisar fazer a transição entre variedades de
máquinas para manter a proximidade da rede. Atualmente, DCOM e Java exigem nomes
de máquinas como parte do endereço da mensagem. CORBA fornece uma referência a
objeto, mas não permite que essa referência seja atualizada dinamicamente. Logo, resul-
ta em problemas de entrega quando o destino é movido para outra máquina.
Além dos problemas de entrega de mensagens aos processos está a questão da codifi-
cação de mensagens. A maioria dos sistemas depende de nomes de métodos totalmen-
te decorados para ligações de terminais de comunicação. Isso força os clientes a serem
atualizados na etapa de bloqueio com o servidor, o que significa que as alterações devem
ser feitas em massa, em vez de incrementalmente, e que dispositivos off-line, como um
notebook fora de alcance, devem ser atualizados ao ingressar na rede.
Os dispositivos móveis também frequentemente alteram o local físico e a conectividade
da rede à medida que se movem com o usuário. Esses dispositivos são adicionados e
removidos da coleção de hardware disponível em um ambiente específico. Finalmente,
para o balanceamento de carga, muitos serviços são independentes de hardware e po-
dem ser parados em uma máquina e reiniciados em uma máquina diferente. Em cada
uma dessas situações a adaptação inteligente é essencial.
Existem várias estratégias para adaptação. Um adaptador pode guiar aplicativos alteran-
do seu comportamento para que eles usem menos recursos escassos. Essa alteração
geralmente reduz a qualidade percebida pelo usuário, ou fidelidade, de um aplicativo.
Como alternativa, o adaptador pode solicitar à PervNet para garantir uma certa QoS. Se
a PervNet reagir a essa solicitação, é provável (mas não certo) que o suprimento de re-
cursos torne-se adequado para atender à demanda. Em outra abordagem, o adaptador
pode sugerir uma ação corretiva para o PervNet. A existência de adaptadores inteligentes
sugere que alguns dos ambientes encontrados por um usuário podem ser capazes de
aceitar reservas de recursos. Ao mesmo tempo, o condicionamento desigual dos am-
bientes sugere que um adaptador pode nem sempre ser bem-sucedido, principalmente
quando o PervNet não é cooperativo ou tem poucos recursos.
118
Projetos relacionados
Nesta seção vamos abordar algumas iniciativas típicas do PervWare que são realizadas
em diferentes partes do mundo, sob os respectivos títulos que especificam suas caracte-
rísticas em resumo. Não é uma lista exaustiva, fique tranquilo, mas é fundamental trazer
para você os tipos de questões de pesquisa importantes nessa área e quanto desenvol-
vimento foi alcançado até o momento. Vamos lá!
1. Sistemas de arquivos distribuídos: AFS
Esse projeto começou em 1983 no contexto de Andrew, em conjunto da CMU e da IBM
para desenvolver uma instalação de computação de ponta para educação e pesquisa na
CMU. O projeto previa um aumento dramático no poder de computação possibilitado pela
implantação generalizada de poderosas estações de trabalho pessoais, com o objetivo de:
Desenvolver um mecanismo que permitisse aos usuários dessas esta-
ções de trabalho colaborar e compartilhar dados de maneira eficaz.
O projeto decidiu construir um sistema de arquivos distribuídos para esse fim, pois for-
neceria o equilíbrio certo entre funcionalidade e complexidade para o nosso ambiente de
uso. Seu design evoluiu com o tempo, resultando em três versões distintas do sistema de
arquivos Andrew, chamadas AFS-l, AFS-2 e AFS-3. Nesse artigo (GARBETT et al., 2002),
“sistema de arquivos Andrew” ou “Andrew” ( será usado como um termo coletivo referen-
te às três versões). À medida que a comunidade de usuários (do projeto) tornava-se mais
dependente de Andrew, a disponibilidade de dados nela tornava-se mais importante.
Atualmente, uma única falha no Andrew pode incomodar seriamente muitos usuários
por períodos significativos. Para solucionar esse problema, eles começaram, em 1987, o
design de um sistema de arquivos experimental chamado Coda. Destinado ao mesmo
ambiente de computação que Andrew, Coda mantém as características de escalabilida-
de e segurança de Andrew, além de oferecer disponibilidade muito maior.
2. Componentes distribuídos
A formação de um sistema distribuído a partir de uma coleção de componentes requer
a capacidade de os componentes trocarem mensagens sintaticamente bem formadas.
Existem várias tecnologias que fornecem essa funcionalidade fundamental, bem como
a capacidade de localizar componentes dinamicamente com base em requisitos sintáti-
cos. A formação de um sistema distribuído correto requer, além disso, que essas intera-
ções entre componentes sejam semanticamente bem formadas.
119
Infospheres
A Caltech Infospheres Infrastructure (II) é um sistema distribuído com estrutura imple-
mentada em Java. Ele fornece um modelo de objeto genérico e uma variedade de mo-
delos de mensagens chamadas de procedimento assíncronas, síncronas e remotas. Em
junho de 1997 esse grupo de pesquisa lançou o Infospheres 1, uma versão preliminar
da infraestrutura para o desenvolvimento de sistemas distribuídos globais usando tec-
nologias Java e internet. Em 1998 esse projeto lançou Infospheres 2 mais flexíveis e
robustas. Embora a implementação use tecnologias Java, XML e internet, as ideias são
aplicáveis a sistemas de objetos distribuídos com base em outras ferramentas, como
CORBA e DCOM.
Esse projeto explorou os quatro principais atributos da distribuição sistemas: composi-
cionalidade, escalabilidade, reconfigurabilidade dinâmica e alta confiança. Eles usaram a
lógica temporal para raciocinar sobre a correção de sistemas de objetos distribuídos e
processos estocásticos para raciocinar sobre desempenho e confiabilidade.
3. Computação global: WebOS
O Projeto Sistema Operacional Web (OS) começou na Universidade da Califórnia, Ber-
keley, em 1996, como parte do projeto Rede de Estações de Trabalho (NOW). Foi con-
cluído em 1998 com o final do NOW. No entanto, os esforços relacionados continuaram
nas universidades membros, Universidade Duke (ISSG), Universidade do Texas em Austin
(além dos navegadores) e Universidade de Washington. Além disso, as três universidades
colaboraram no trabalho de nomes ativos que surgiu do Web OS.
Em uma única máquina os desenvolvedoresde aplicativos podem confiar no sistema
operacional local para fornecer essas abstrações. Na área ampla, no entanto, os desen-
volvedores de aplicativos são forçados a criar essas abstrações por conta própria ou
a ficar sem elas. Essa abordagem ad hoc desperdiça o esforço do programador e os
recursos do sistema. Para resolver esses problemas, o WebOS tentou desenvolver uma
plataforma para fornecer serviços básicos de SO necessários para criar aplicativos de
área ampla distribuídos geograficamente, altamente disponíveis, escalonáveis incremen-
talmente e reconfigurando dinamicamente (como PervComp).
A plataforma seria capaz de suportar mecanismos para descoberta de recursos, um
espaço para nome global, execução remota de processos, gerenciamento de recursos,
autenticação e segurança.
120
Um aplicativo que demonstra a utilidade do Web OS é o Rent-A-Server, um servidor da
Web capaz de se replicar geograficamente e dinamicamente em resposta aos padrões
de acesso do cliente.
A implementação inicial foi dividida nas seguintes partes:
a) Camada global do sistema de arquivos WebFSa: permite que aplicativos não
modificados leiam e gravem no espaço de nomes da URL. A consistência do cache
estaria disponível para aplicativos que exigem isso a partir do protocolo AFS.
b) Nomes ativos: um mecanismo para mover logicamente a funcionalidade do ser-
viço, como balanceamento de carga, descoberta de recursos e transparência de
falhas do servidor para a rede.
c) Execução remota segura: como os aplicativos seriam executados em nós re-
motos em nome de usuários arbitrários, devem ser fornecidas garantias, garantin-
do que os aplicativos não violem a integridade do servidor remoto e que os servi-
dores não possam tirar proveito de nenhum direito de acesso de usuário fornecido
aos programas.
d) Os aplicativos de segurança e autenticação: acessam arquivos remotos e de-
vem autenticar suas identidades antes que o acesso aos arquivos protegidos possa
ser concedido.
e) Transações: aplicativos devem ter modos de falha bem definidos. Por exemplo,
um agente remoto abortado não deve deixar o sistema de arquivos local de um
usuário em um estado inconsistente.
4. Computação Pervasiva
Houve uma forte iniciativa em middlewares no projeto EasyLiving da Microsoft Resear-
ch. O InConcert é uma solução de middleware que aborda os problemas de interface no
EasyLiving. Além disso, tem havido muita pesquisa no EasyLiving sobre middlewares de
visão computacional para rastrear pessoas. Vamos falar mais um pouco sobre ele.
InConcert
Usando o pacote InConcert é possível desenvolver novos componentes para o EasyLiving
de forma relativamente rápida. Ele fornece passagem de mensagens assíncrona, ende-
reçamento independente da máquina e protocolos de mensagem baseados em XML. A
partir da passagem assíncrona de mensagens, o InConcert evita problemas de bloqueio
e ineficiência. Além disso, uma abordagem assíncrona permite que os programas lidem
com operações off-line e em fila de forma mais natural. Os clientes são gravados para
121
esperar que as mensagens de resposta, se houver alguma, cheguem a algum momento
arbitrário posteriormente e não como um retorno da solicitação original.
A comunicação entre máquinas é tratada pela integração de um serviço de nomeação e
pesquisa no mecanismo de entrega. Quando iniciado, um componente solicita um nome
(um “ID da Instância”) e durante a execução fornece ao serviço de pesquisa uma mensa-
gem periódica de manutenção. O nome é exclusivo para esta instância do componente;
permanece constante, mesmo que a instância seja parada e executada posteriormente
em uma máquina diferente. Os IDs da instância nunca são reutilizados. Ao enviar mensa-
gens, uma instância inclui seu ID no campo “De:” do cabeçalho da mensagem. Os com-
ponentes de recebimento podem usar esse ID no campo “Para:” de qualquer mensagem
de resposta. Quando o InConcert é solicitado a entregar a mensagem, ele resolve o ID
solicitando ao Serviço de Pesquisa de Instâncias a localização atual da instância.
As descrições dos serviços são realizadas usando um XML aberto e simples esquema.
Além da facilidade de uso, o XML foi escolhido por dois motivos, a saber:
1. O XSL (Extended Stylesheet Language) fornece a capacidade de converter docu-
mentos XML em layouts múltiplos.
2. É fácil transformar uma descrição codificada em XML de um comando no co-
mando codificado em XML a ser enviado ao serviço.
Depois que a mensagem é entregue no processo correto, seu conteúdo é decodificado
a partir da descrição XML. O XML fornece a capacidade de versão de cada campo e
inclui informações adicionais que, em outros sistemas, causariam falha na ligação do
terminal. Como novos parâmetros são suportados nos servidores, os clientes podem
omitir ou incluir as informações. Se o servidor exigir o novo campo, a mensagem de erro
retornada poderá descrever o campo exato necessário, em vez de relatar uma simples
falha de ligação. Sendo assim, possibilitou o desenvolvimento de componentes que refle-
tem com mais precisão a decomposição desejada das interações. Ele também permite
que os componentes sejam movidos convenientemente entre o hardware para ajustar o
desempenho do sistema. Por fim, ao projetar os aplicativos para lidar com mensagens
assíncronas, a experiência do usuário ainda responde, mesmo quando o dispositivo está
isolado de toda ou parte da rede.
omniORB
omniORB é um ORB (Object Request Broker) que implementa a especificação 2.3 da
Common Object Request Broker Architecture (CORBA). Ele suporta a ligação da Lingua-
122
gem C ++; é totalmente multithread; usa nop como o transporte nativo e vem completo
com um serviço de nomeação COS.
O OmniORB é um ORB CORBA 2 robusto e de alto desempenho, desenvolvido pela AT&T
Laboratories Cambridge. É um dos únicos três ORBs a receber a Marca Aberta do Open
Group pela CORBA. Isso significa que o omniORB foi testado e certificado em conformi-
dade com CORBA 2.1. O omniORB implementa a especificação 2.3 da Common Object
Request Broker Architecture (CORBA). É o ORB de terceira geração (daí o nome “om-
niORB three”). O objetivo inicial era produzir um ORB em conformidade padrão que pu-
desse fornecer o desempenho exigido pelos aplicativos desenvolvidos internamente. Ele
foi implantado para uso em todo o laboratório desde março de 1997. Em maio de 1997 o
ORB foi lançado externamente como software livre sob as Licenças Públicas GNU.
À medida que o PervComp torna-se maior e mais difundido, ele oferece novas oportuni-
dades. O PervNet, conectando tudo a partir de máquinas e estações de trabalho de alto
desempenho e poderosos dispositivos difusos, possui uma infraestrutura extremamen-
te poderosa que pode resolver problemas comuns e distribuir enormes quantidades de
informações. Vinculados, esses recursos conectados formam uma rede virtual única e
mundial.
O PervWare fornecerá um middleware fácil de usar que pode gerenciar esse sistema
físico complexo e oferecer suporte a grandes graus de paralelismo para que um Perv-
Net virtual torne-se uma oportunidade confiável, eficiente e real do PervComp para uma
ampla variedade de usuários. Além disso, dadas as tendências atuais de hardware e os
avanços nas plataformas de execução virtual, como a máquina virtual Java ou o Com-
mon Language Runtime da Microsoft, podemos razoavelmente esperar que a maioria
dos dispositivos possa implementar uma plataforma de computação tão difundida. Os
dispositivos que não têm capacidade de implementar a plataforma completa, como pe-
quenos sensores, ainda podem interagir com ele usando proxies ou emulando os proto-
colos de rede da plataforma.
Para ampliar o seu conhecimento veja o material complementar da Unidade 3,
disponível na midiateca.
MIDIATECA
123
A Terceira plataforma (geração de TI) tem início em 2011 e a vivenciamos atual-
mente, quando percebe-se que a web permite uma função mais importante,
com extrema rapidez na movimentação para a virtualização de tudo. Desdea
infraestrutura até a aquisição de Softwares como Serviço (SaaS), transpondo-
-se pela capacidade de análise de um imenso volume de dados obtidos nas em-
presas, a partir de pessoas simples (por meio das redes sociais, como exemplo),
chegando possivelmente em IoT, computação cognitiva, realidade aumentada,
entre outras tecnologias inovadoras consideradas disruptivas. Com isso, você
é capaz de oferecer um serviço por meio do qual oferece ao seu cliente uma
realidade aumentada, por exemplo, para conhecer o apartamento que adquiriu
recentemente, até o qual não pode ir no dia da vistoria, mas que, de maneira
remota, consegue acompanhar e vislumbrar seu novo investimento.
NA PRÁTICA
124
Resumo da Unidade 3
O que distingue a humanidade moderna dos outros é a nossa capacidade coletiva de
construir ferramentas e comunidades mais complexas. Nas épocas anteriores essas
forças amplificavam os músculos. No último meio século surgiu um novo tipo de ferra-
menta, conhecida como Tecnologia da Informação (TI). Seu impacto na sociedade ain-
da agora é pouco compreendido. O PervComp, com foco nos usuários e suas tarefas
e não em dispositivos e tecnologia de computação, fornece uma visão atraente para
o futuro da TI. O PervComp redefinirá isso, não apenas desenvolvendo novas tecnolo-
gias inovadoras, mas também aplicando conhecimentos em sistemas centrados no
ser humano para avaliar quão bem a TI aproveita e aprimora a interação a humana e a
atividade intelectual.
Sob a computação ubíqua, vários dispositivos de informação foram desenvol-
vidos. Suas interfaces de usuário seriam projetadas com base em sua função.
Isso significa que as interfaces do usuário foram derivadas principalmente pela
operação dos dispositivos.
CONCEITO
125
Referências
AKYILDIZ, I.F., SU, W., SANKARASUBRAMANIAM, Y., CAYIRCI, E., 2002. Wireless sensor
networks: a survey. Comput. Netw, 38 (4), 393-422, ISSN 1389-1286.
CHA, M., HADDADI, H., BENEVENUTO, F., GUMMADI, K.P., 2010. Measuring user influence
in Twitter: the million follower fallacy. Proc. Of ICWMS’10, Washington, USA.
EASLEY, D., KLEINBERG, J., 2010. Networks, crowds, and markets: reasoning about a
highly connected world. Cambrigde University Press, Cambrigde.
GANTI, R.K., YE, F., LEI, H., 2011, November. Mobile crowdsensing: current state and future
challenges. IEEE Commun. Mag. 49 (11), 32-39. ISSN 0163-6804.
GARBETT, E., SCHEFERMAN, A.. Virtual disk – It’s not just for mainframes anymore.
StorageTek, June 2002.
LANE, N.D., EISENMAN, S.B., MUSOLESI, M., MILUZZO, E., CAMPBELL, A.T., 2008. Urban
sensing systems: opportunistic or participatory? Proc. of HotMobile ’08, Napa Valley, CA.
ACM, New York, NY, USA, p. 11–16.
LANE, N.D., MILUZZO, E., Lu, H., PEEBLES, D., CHOUDHURY, T., CAMPBELL, A.T., 2010,
September. A survey of mobile phone sensing. IEEE Commun. Mag. 48 (9), 140–150.
ISSN 0163-6804. doi:10.1109/MCOM.2010.5560598.
MASHHADI, A.J., CAPRA, L., 2011. Quality control for real-time ubiquitous crowdsourcing.
Proc. of UbiCrowd’11, Beijing, China, p. 5–8.
NAZIR, A., RAZA, S., CHUAH, C.N., 2008. Unveiling Facebook: a measurement study of
social network based applications. Proc. of IMC ’08, Vouliagmeni, Greece, pp. 43–56.
NEWMAN, M., 2010. Networks: An Introduction. Oxford University Press, Inc., Oxford.
NEWMAN, M.E.J., 2003. The structure and function of complex networks. SIAM Rev. 45
(2), 167–256.
126
SAKAKI, T., OKAZAKI, M., MATSUO, Y., 2010a, Earthquake shakes Twitter users: real–time
event detection by social sensors. Proc. of WWW’10, Raleigh, USA, p. 851–860.
SILVA, T.H., VAZ DE MELO, P., ALMEIDA, J., VIANA, A., SALLES, J., LOUREIRO, A., 2014a,
Participatory sensor networks as sensing layers. Proc. of SocialCom’14, Sydney, Australia.
SRIVASTAVA, M., ABDELZAHER, T., SZYMANSKI, B., 2012. Human-centric sensing. Phi-
los. Trans. R. Soc. A: Math. Phys. Eng. Sci. 370 (1958), 176–197. ISSN 1471-2962. doi:
10.1098/rsta.2011.0244.
TOSTES, A.I.J., SILVA, T.H., DUARTE-FIGUEIREDO, F., LOUREIRO, A.A.F., 2014. Studying
traffic conditions by analyzing Foursquare and Instagram data. Proc. of ACM PE-WA-
SUN’14, Montreal, Canada.
YOUYOU, W., KOSINSKI, M., STILLWELL, D., 2015. Computer-based personality judgments
are more accurate than those made by humans. Proc. Natl. Acad. Sci. U. S. A. 112 (4),
1036–1040.
Serviços e aplicações de
Computação Pervasiva
UNIDADE 4
128
A Computação Pervasiva pode ser definida como os ambientes inteligentes de compu-
tação nos quais dispositivos de computação minúsculos, invisíveis, sem fio e/ou móveis
são incorporados a objetos como canetas, roupas, brinquedos, óculos de sol, cadeiras,
carros, aparelhos eletrônicos e assim por diante. Em outras palavras, comunicar e coor-
denar entre si qualquer lugar e a qualquer momento para facilitar a vida humana. Embora
as aplicações da computação difundida estejam no começo, estão crescendo muito ra-
pidamente com o desenvolvimento de melhorias tecnológicas. Os dispositivos incorpora-
dos em rede estão deixando para trás o conceito de computadores pessoais. Assim, esta
unidade trará as possíveis formas de comunicação e interligação, bem como exemplos
de projetos que já se encontram no mercado.
INTRODUÇÃO
Nesta unidade você será capaz de:
• Apreender os serviços e aplicações pervasivas.
OBJETIVO
129
Funções associadas
Atualmente os dispositivos móveis possuem poder de processamento e memória iguais
aos encontrados em computadores desktop. A conectividade sem fio torna-se mais facil-
mente disponível. Neste tópico vamos abordar com mais detalhes esse assunto. Vamos lá!
Muitas áreas metropolitanas possuem redes sem fio em larga escala e conexões celula-
res ou via satélite são acessíveis em muitas áreas remotas. Além disso, estamos vendo,
por exemplo, uma diminuição contínua no custo do hardware, a exemplo dos próprios
dispositivos móveis e dos acessórios como unidades do sistema de posicionamento glo-
bal (GPS). Ou seja, o que antes era uma tecnologia imatura e de baixo custo, proibitiva,
agora é uma realidade.
Como isso se torna possível?
Com a contínua queda nos preços desses dispositivos, vemos não apenas o uso de dis-
positivos com reconhecimento de local — que aumentam em um número crescente de
aplicações civis e militares —, mas também uma demanda crescente por informações
continuamente em trânsito, além de tempo de conexão. Muitos desses dispositivos re-
querem uma arquitetura e serviços de sistema eficientes e altamente escaláveis para
apoiar a disseminação de recursos e informações dependentes da localização por um
número crescente e crescente de usuários móveis.
Vamos a um exemplo. Preste atenção!
Considere uma área metropolitana com centenas de milhares de veículos.
Cada motorista e passageiro desses veículos buscam informações relevan-
tes para suas viagens.
Um dos motoristas gostaria que seu veículo exibisse continuamente em um
mapa a lista de cafeterias da Starbucks a 16 km de sua localização atual.
O outro motorista quer saber sobre os lugares de estacionamento disponí-
veis próximos ao destino do Atlanta Fox Theatre nos 30 minutos seguintes.
E alguns motoristas estão interessados em monitorar as condições de tráfe-
go cinco milhas à frente de onde estão (velocidade média).
130
Como vimos no exemplo, as informações ou recursos são importantes para que os mo-
toristas possam otimizar suas viagens e, ao mesmo tempo, aliviarem o congestiona-
mento do tráfego, planejando melhor suas rotas e evitando a condução desnecessária.
Porém, há um desafio à frente.
Um dos principais desafios é disseminar efetivamente as informações e as condições
dependentes de localização (condições de tráfego) e recursos (vagas de estacionamen-
to, cafeterias Starbucks) nesse ambiente altamente móvel, com atraso, sobrecarga e pre-
cisão aceitáveis.
Um dos componentes fundamentais comuns a todos os serviços baseados em locali-
zação (LBSs) é o uso de tecnologias de posicionamento com o objetivo de:
• Rastrear o movimento de clientesmóveis
• Fornecer serviços de informação aos clientes móveis em movimento no momen-
to e local certos.
Portanto, o uso efetivo das tecnologias de posicionamento pode ter um impacto significati-
vo no desempenho, confiabilidade, segurança e privacidade de LBSs, sistemas e aplicativos.
Visão geral dos sistemas de localização
Um sistema de localização genérico baseado em uma rede de comunicações subjacente
consiste em dois componentes principais. São eles:
1. O dispositivo portátil ou terminal móvel transportado pelo usuário.
2. As estações-base ou nós de ancoragem que constituem a infraestrutura da rede
de comunicações.
As técnicas de localização existentes dependem de métodos de medição para estimar
intervalos por meio dos quais a localização do usuário pode ser calculada. Consequente-
mente, duas fases separadas podem ser distinguidas no processo:
• 1ª fase – Fase inicial de medição da faixa: serve para calcular alguma faixa (nor-
malmente distância ou ângulo) entre o dispositivo do usuário e os nós de ancoragem.
• 2ª fase – Fase de estimativa de posicionamento: fase em que um princípio
geométrico é aplicado com os valores obtidos. Varia para estimar a localização do
usuário. Os principais princípios geométricos usados para estimar locais são trila-
teração, multilateração e triangulação.
131
A Figura 32 a seguir fornece o esboço de um cenário genérico com um usuário movendo-
-se ao longo da área de cobertura de uma rede de comunicações, cuja localização deve
ser estimada por meio das informações trocadas entre o terminal móvel do usuário e a
infraestrutura de rede. Em geral, dois tipos de cenários podem ser distinguidos, conside-
rando-se a direção que os sinais trocados entre um usuário e a infraestrutura percorrerão.
Cenário 1
O terminal móvel do usuário pode receber sinais provenientes dos nós de
ancoragem (beacon) da infraestrutura de rede, trabalhando como pontos de
referência de localização conhecida.
Cenário 2
Os nós de ancoragem podem receber sinais do terminal móvel do usuário na
tentativa de permitir que a rede calcule sua localização.
Figura 32: Representação básica de uma infraestrutura genérica para permitir a estimativa
da localização do usuário.
Fonte: Elaborada pelo autor (2020).
Beacon 1Beacon 2Beacon 3
tempo = t3 tempo = t2 tempo = t1
Usuário em
movimento
Medições em instantes
de tempos diferentes
132
Agora, com base na figura observada, vamos analisar os cenários apresentados ante-
riormente.
Analisando o cenário 1
No primeiro cenário, o terminal móvel do usuário recebe sinais dos nós de
ancoragem da infraestrutura de rede. Esses nós geralmente transmitem pe-
riodicamente sinais de identificação contendo parâmetros técnicos, para per-
mitir que os usuários saibam de sua presença. Alguma qualidade mensurá-
vel desses sinais pode ser utilizada pelo dispositivo do usuário para estimar
um intervalo dos nós de ancoragem. Por exemplo, se o dispositivo de radio-
frequência do usuário é capaz de medir a potência do sinal recebido, uma
comparação da diferença de potência do transmissor para o receptor pode
ser aproveitada para estimar a distância entre eles, utilizando um modelo de
propagação de rádio.
No mesmo sentido, se o dispositivo do usuário puder medir com precisão a
hora de chegada (ToA – Time of Arrival) do sinal, o tempo decorrido desde a
transmissão até a recepção pode ser empregado para calcular a distância por
meio da relação espaço-tempo com a velocidade do sinal. Em geral, a infraes-
trutura fornecida pela tecnologia subjacente permitirá que o dispositivo do
usuário observe sinais provenientes de vários nós de ancoragem, que podem
ser empregados para estimar a localização do usuário a partir da aplicação
de princípios geométricos básicos.
Analisando o cenário 2
O segundo cenário aplica-se aos nós de farol da infraestrutura que recebem
sinais do terminal móvel do usuário. Nesse caso, o dispositivo do usuário
transmite sinais para a infraestrutura de rede extrair alguma qualidade men-
surável. Essas medições podem ser empregadas por cada um dos nós de
ancoragem que recebem os sinais do terminal móvel de um usuário para es-
timar a distância que os separa dele. Eventualmente, e em analogia com o
caso anterior, várias distâncias podem ser usadas para obter locais a partir da
aplicação de princípios geométricos.
São sistemas de navegação baseados em cálculos mortos (estimativa de localização
usando posição anterior, velocidade ao longo do tempo decorrido e curso), que compu-
tam locais que empregam sensores de movimento, como acelerômetros (medição de
acelerações não gravitacionais) e giroscópios (medição de orientação).
133
Como esses métodos utilizam magnitudes vetoriais e posições iniciais para estimar no-
vos locais, os classificaremos como técnicas “geométricas”.
O sistema de navegação inercial tem alguma vantagem?
Uma das principais vantagens dos sistemas de navegação inercial é que, uma vez obtida
a posição inicial, nenhuma informação externa é necessária. Consequentemente, eles
não são afetados por condições climáticas adversas e não podem ser atolados ou so-
frer as vulnerabilidades de segurança inerentes a outros métodos baseados em nós de
ancoragem externos. Esses sistemas, no entanto, sofrem com o desvio da integração,
fazendo com que os erros se acumulem e, portanto, devam ser corrigidos por algum ou-
tro sistema (GREWAL et al., 2001), o que os torna candidatos ideais para complementar
outros sistemas de navegação ou localização em uma abordagem multimodo.
Vamos a alguns exemplos para entender melhor.
Embora sejam usados principalmente na navegação aérea, os acelerômetros já
foram incluídos em vários dispositivos eletrônicos portáteis, como Nokia N95,
Sony Ericsson W910i, Xiaomi Mi 10 Pro, iPhone 11 Pro e iPod Nano oitava geração.
Ampliando o foco
Popa et al. (2008) analisam a combinação do INS e o sistema de localização do
Cricket (PRIYANTA et al. 2000) para ambientes internos ou GPS para ambientes
externos.
Na verdade, INS e GPS foram integrados com sucesso não apenas na navega-
ção aérea (GREWAL et al., 2001), mas também em muitas outras circunstân-
cias, incluindo a navegação ferroviária (MAZL; PREUCIL, 2003).
Mais recentemente, Zmuda et al. (2008) sugerem a eficácia da integração de
várias metodologias de localização para compensar as possíveis inadequações
Exemplo
134
Métodos baseados em proximidade
Nesses métodos os nós não calculam explicitamente as distâncias, mas estimam suas
localizações com base nas restrições de conectividade e proximidade de nós de ancora-
gem conhecidos, recorrendo finalmente aos mesmos princípios geométricos dos méto-
dos baseados em intervalo.
Eles são menos precisos, mas têm custos mais baixos do que os métodos anteriores.
Embora antenas direcionais possam ser necessárias em alguns casos, em geral não há
necessidade de hardware caro, pois não é necessário medir magnitudes físicas.
Como a precisão aproximada é suficiente em algumas aplicações (especialmente para
redes de sensores), soluções baseadas na proximidade de nós foram propostas como
uma alternativa econômica para esquemas geométricos mais caros. Assim, além da
técnica simples de identificação de células, que é igual à localização do terminal com a
localização do ponto de acesso ou estação-base à qual está conectado, utiliza as princi-
pais tecnologias de proximidade para localização.
Infravermelho
Um dos sistemas pioneiros de localização para localizar pessoas em edifícios, o “crachá
ativo” (WANT et al., 1992) utiliza a transmissão de sinais de infravermelho a cada 15 se-
gundos, como mostra a figura, detectados por um leitor. A localização do crachá está as-
de cada uma delas e mostram que uma abordagem conjunta do RSSI junto
com o INS é superior ao uso de qualquer método individualmente.
No mesmo sentido, Evennou e Marx (2006) e Wang et al. (2007) examinam
a combinação da localização de impressão digital da WLAN com o INS, re-
sultando em uma melhoriana precisão da localização, e Sczyslo et al. (2008)
estudam a combinação de localização UWB e INS, mostrando um aumento na
precisão e robustez da solução integrada.
Todas essas abordagens multimodo recentes estão sendo facilitadas pela re-
dução progressiva de preços de sistemas microelétricos mecânicos (MEMS),
que são a base para sensores inerciais (SCZYSLO et al., 2008).
135
sociada à posição do leitor que o detectou. Consequentemente, a precisão é o tamanho
da célula dos leitores.
No entanto, temos desvantagens importantes das tecnologias de infravermelho para lo-
calização interna, que são:
• As possíveis interferências criadas pela luz solar e luz fluorescente.
• Pontos mortos em alguns locais (MINENO et al. 2005).
• Alcance curto (poucos metros).
• Seu requisito de linha de visão ( SANPECHUDA; KOVAVISARUCH, 2008).
• Sua concepção como um sistema dedicado.
Figura 32: Crachá ativo.
Fonte: Want et al. (1992).
Tecnologia de rádiofrequência
A propagação de caminhos múltiplos, absorção de sinal e interferências complicam o
processo de estimativa de distância em ambientes internos a partir de RSSI, AoA ou ToA.
Consequentemente, muitos pesquisadores evitam a estimativa de distância e usam infor-
mações simples de conectividade para localização.
Test Button PAL
FSM
IR
EMITTER
DRIVER
Unique
IR Signal
15 seconds
astable
Light dependent
timing circuit
Commercial
remote
control
encoder
136
RFID
Identificação por radiofrequência ou RFID (Radio Frequency IDentification) é um método
de identificação automática por meio de sinais de rádio, recuperando e armazenando
dados remotamente a partir de dispositivos denominados etiquetas RFID.
O RFID tornou-se muito popular devido à sua compacidade, baixo custo e confiabilidade
(SANPECHUDA; KOVAVISARUCH, 2008). Os sistemas clássicos de localização baseados
em RFID consistem em um conjunto de leitores colocados em locais conhecidos, que
identificarão todas as tags em seu alcance de leitura, como mostra a Figura 33.
Portanto, a precisão corresponde ao tamanho da célula (intervalo de leitura) (BOUET;
PUJOLLE, 2008). Um leitor RFID conectado a um robô, juntamente com um conjunto de
tags implantadas em posições conhecidas na área de interesse, pode ser usado para es-
timar a localização do robô por princípios simples de proximidade, como a partir do cál-
culo do centroide das tags que podem ser lidas. Em uma abordagem semelhante, Bouet
e Pujolle (2008) estimam a localização de uma etiqueta calculando o centro de gravidade
da interseção das áreas de cobertura dos leitores que podem detectá-la.
Interferências de geradores de campo próximos podem reduzir a confiabilidade desse
tipo de sistema de localização. Essa vulnerabilidade pode ser resolvida por meio de algo-
ritmos destinados a eliminar interferências (CHIEH et al., 2008).
Figura 33: Colocação de 9 leitores com duas faixas diferentes e as sub-regiões da LANDMARC (Identifi-
cação de Localização baseada na calibração dinâmica de RFID dinâmico).
Fonte: Sanpechuda e Kovavisaruch (2008).
R
R
R R
RRR
R
R
R
Região
RFID tagT
T
T
T
T
T
137
Wi-Fi
Os usuários de Wi-Fi podem ser localizados determinando o ponto de acesso em que
estão conectados (LOSCHMIDT et al. 2007).
Uma tendência óbvia, tanto para o consumidor quanto para a eletrônica industrial, é o
suporte à conectividade de rede sem fio. Muitos dispositivos pessoais fornecem conec-
tividade para IEEE 802.1 laIb/g. A razão para isso é muito simples:
É possível integrar dispositivos embarcados inteligentes em uma rede
existente como a WLAN (rede local sem fio) e se beneficiar do acesso a
vários aplicativos a partir de qualquer ponto.
Além disso, não apenas a integração perfeita, mas também os custos reduzidos de ca-
beamento e as vantagens da mobilidade são razões para usar as tecnologias sem fio.
Por exemplo, o Google Latitude, um recurso recentemente lançado para locali-
zação (Google Latitude 2009), estima locais por identificação celular. Para isso,
estão criando enormes bancos de dados para registrar pontos de acesso Wi-Fi
e torres de celular em todo o mundo, reconhecendo que o erro de estimativa de
localização é igual ao alcance típico de pontos de acesso Wi-Fi (cerca de 200
m). A resolução dessa abordagem pode melhorar em áreas com uma densa
concentração de pontos de acesso, alcançando precisões de cerca de 25 m
(LAMARCA et al., 2005).
Exemplo
138
Figura 34: Esquemático dispositivos embarcados inteligentes.
Fonte: Loschmidt et al. (2007).
Bluetooth
O Bluetooth é uma tecnologia de curto alcance (geralmente 10 m), tornando-a muito
útil para localização por simples identificação celular (BARAHIM et al., 2007; THONG-
THAMMACHART; OLESEN, 2003). No entanto, devido à pequena área de cobertura dos
pontos de acesso Bluetooth, como mostra a Figura 35, é necessária uma alta densidade
deles, o que pode representar uma desvantagem em termos de custo. Porém, já há blue-
tooth com alcance de até 100 m.
Machine B
STR
Safety area, presence of control
node leads to a emergency stop
Smart Timing
Repeater (STR)
Operation of machine B
allowed
Operation of machine A
allowed
Area with no or limited sight
to machines: operation is blocked
Machine A
139
Figura 35: Infraestrutura de rede.
Fonte: Thongthammachart e Olesen (2003).
Comunicações celulares
As comunicações celulares também podem empregar técnicas baseadas em proximi-
dade para localização e as mais comuns são descritas a seguir:
• Identificação celular: a localização do terminal móvel é estimada como a locali-
zação da estação-base que cobre a célula. As principais vantagens dessa solução
são sua simplicidade, baixo custo, baixa latência e funcionamento com todos os
terminais móveis. Com o foco no GSM, por ser o padrão mais popular do mundo
(mundo GSM 2009), as estações-base de transceptores (BTSs) transmitem regu-
larmente no BCCH informações sobre a identidade da área de localização (LAI) e a
identidade da célula (CI), que identificam exclusivamente o GSM células (LO PICCO-
LO et al., 2007). De maneira simples, um telefone celular pode assumir a localização
do BTS como sua, sofrendo erros no alcance do raio da célula (normalmente de
centenas de metros em áreas urbanas a 35 km em áreas rurais). Esse erro constitui
a principal desvantagem dessa técnica. Mesmo em áreas urbanas densas, a identi-
ficação de células não é suficiente para alcançar a satisfação do usuário em muitos
LBSs e aplicações (KUNCZIER; ANEGG, 2004). No entanto, a combinação do ID da
célula com outras técnicas, incluindo o uso de avanço de tempo (TA) ou relatórios
Infrastructure
network
Bluetooth
terminal
Bluetooth
terminal
Bluetooth
access
point
Slave
Master
Slave
140
de medição de rede (ANDREW, 2009), leva a estimativas de localização com melhor
precisão do que apenas a identificação celular.
• Identificação de células em combinação com outras técnicas: no GSM, o TA re-
presenta a quantidade de tempo que um terminal móvel tem para avançar na trans-
missão de dados para compensar os atrasos na propagação do sinal devido à sua
distância do BTS. Os BTSs transmitem as informações de TA a partir do canal de
controle lento associado (SACCH), e o terminal móvel pode usá-lo para localizar-se
aproximadamente no arco centralizado no BTS e com uma largura de 554 m corres-
pondente a cada um dos 64 valores possíveis de AT (as etapas de AT têm um com-
primento igual ao período de bit GSM e os valores podem ser obtidos em Lo Piccolo
et al., 2007). Uma análise comparativa das combinações de identificação de células
com AT e RSSI para cenários urbanos e suburbanos pode ser encontrada em Spirito
et al. (2001), mostrando que os erros médios de localização geralmente estão acima
de 200 m. Técnicas mais complicadas podem levar a resoluções mais precisas. Por
exemplo, a combinação de identificação de células com medições de ida e volta
para a tecnologia UMTS pode melhorar a precisão da estimativa de localização para
cerca de 40 m (BORKOWSKIet al., 2004).
141
Tipos de ambientes físicos
Nos últimos anos, muito esforço de pesquisa e desenvolvimento foi direcionado para o am-
plo campo da inteligência ambiental (AmI), e essa tendência deve continuar no futuro próxi-
mo. A AmI visa integrar perfeitamente serviços em infraestruturas inteligentes para serem
usados em casa, no trabalho, no carro, em movimento e, geralmente, na maioria dos am-
bientes habitados por pessoas.
É um paradigma relativamente novo, enraizado na computação onipresente, que exige inte-
gração e convergência de várias disciplinas, como redes de sensores, dispositivos portáteis,
sistemas inteligentes, interações humano-computador e sociais, além de muitas técnicas
dentro da inteligência artificial, como planejamento, raciocínio contextual, reconhecimento
de fala, tradução de idiomas, aprendizado, adaptabilidade e raciocínio temporal e hipotético.
As bases das infraestruturas da AmI são baseadas no impressionante progresso que
estamos testemunhando em tecnologias sem fio, redes de sensores, recursos de exibi-
ção, velocidades de processamento e serviços móveis. São esses desenvolvimentos que
ajudam a fornecer informações muito úteis (linha) para aplicativos AmI. Contudo, se faz
necessário mais progresso para tirar o máximo proveito de tais informações, a fim de
fornecer o grau de inteligência, flexibilidade e naturalidade previstos. Logo, a inteligência
artificial e as técnicas multiagentes têm importantes papéis a desempenhar.
A inteligência ambiental (AmI) evoluiu conceitualmente e de forma prática, resultando
em um acordo comum sobre suas principais tecnologias constituintes. Três tecnologias
foram identificadas como essenciais para a AmI: computação ubíqua, comunicações
ubíquas e interfaces de usuário inteligentes.
O termo “AmI” foi cunhado pela Comissão Europeia, quando, em 2001, um de
seus Grupos Consultivos para Programas lançou o Desafio AmI (DUCATEL et
al., 2001), atualizado posteriormente em 2003 (DUCATEL et al., 2003). No entan-
to, embora o termo “AmI” tenha se originado na Europa, os objetivos do trabalho
foram adotados em todo o mundo. Veja, por exemplo, The Aware Home (2007),
The Oxygen Project (2007) e Sony Interaction Lab (2007).
Ampliando o foco
142
Veremos com mais detalhes cada uma delas.
Computação ubíqua
A computação ubíqua prevê a incorporação de artefatos computacionais ao ambiente
físico e seu subsequente acesso intuitivo pelos usuários. Preocupado com o destaque da
gama atual de sistemas de computação e suas pesadas modalidades de interação, Wei-
ser (1999) esperava que a computação ubíqua anunciasse uma época que ele chamou
de “tecnologia calma”.
Entretanto, antes que isso pudesse ocorrer, avanços significativos teriam que advir em
várias disciplinas de computação. Uma área de interesse particular é a de ambientes
inteligentes, pois esses ambientes procuram oferecer uma realização prática da visão
ubíqua da computação em cenários cotidianos, incluindo a casa e o escritório. A integra-
ção de microprocessadores nos objetos do espaço cotidiano das pessoas, como móveis,
roupas, brinquedos e outros, permite que o espaço imediato torne-se sensível e receptivo
aos seus habitantes, em vez de permanecer inanimado.
Dessa maneira, surge a origem do termo “ubíqua”, que implica que algo existe
ou está em toda parte dentro de um ambiente vivo e em um nível constante.
Um conceito intimamente associado à computação ubíqua é o de contexto, como po-
demos observar na Figura 36. Na computação ubíqua e, de fato, em outros paradigmas
de uso do computador, está previsto que um modelo do usuário e seu ambiente estejam
disponíveis, permitindo a prestação de serviços a usuários que foram adaptados dinami-
camente, de acordo com o contexto atual do usuário.
O contexto pode envolver fatores como informações temporais, elementos de seu perfil
individual (sexo, idiomas falados etc.) e localização atual. Neste último caso, o posiciona-
mento absoluto, tais como coordenadas geográficas ou posicionamento relativo — por
exemplo, a oeste de um determinado ponto de referência —, poderia ser usado, depen-
dendo da natureza do serviço em questão.
Da perspectiva do software, o processo contínuo de capturar e interpretar o contexto é
computacionalmente caro e existe um escopo significativo para a incorporação de técni-
cas inteligentes. Tais técnicas podem ser usadas para incorporar raciocínio sobre conhe-
cimento incompleto ou talvez inferir o comportamento futuro do usuário com base em
experiências passadas.
143
Figura 36: Um sistema de computação sensível ao contexto.
Fonte: Schilit et al. (1994).
Comunicação ubíqua
A tecnologia de computação é cada vez mais difundida na vida cotidiana, embora sob
várias formas, como telefones celulares e eletrônicos domésticos embutidos (sistemas
embarcados). Com a redução contínua dos custos de hardware, miniaturização implacá-
vel e adoção de redes de dados de alta velocidade é provável que essa tendência continue.
Por exemplo, os automóveis modernos já contêm dezenas de microprocessadores, en-
quanto a crescente popularidade dos telefones celulares de quinta geração (5G) significa
que a computação móvel está agora ao alcance das pessoas em todas as facetas de
suas vidas diárias.
De fato, a ampla disseminação de tecnologias sem fio garantiu que a computação móvel
gerasse uma nova cultura dominante, como encontros com pessoas usando seus smart-
phones, PDAs, Spotify, dispositivos wearables e assim por diante. Tradicionalmente, essas
ilhas de tecnologia teriam existido isoladamente. No entanto, a AmI adota uma visão mais
holística e exige a existência de uma infraestrutura de comunicação multiprotocolo para
integrar tecnologias díspares, de modo que seja possível obter um uníssono entre todos
os dados e equipamentos eletrônicos pertinentes ao contexto imediato do usuário. Assim,
as comunicações onipresentes buscam permitir que objetos incorporados comuniquem-
-se entre si e com o usuário por meio de várias técnicas de rede fixa, sem fio e ad hoc.
144
Interface de usuário inteligente
As interfaces de usuário inteligentes (IUIs) formam o terceiro e, sem dúvida, o mais im-
portante, componente da AmI. A atenção humana é um recurso precioso. Portanto, deve
ser usada criteriosamente quando disponível e deve ser solicitada com cautela e prudên-
cia. É esse destaque dado à necessidade de novas tecnologias inovadoras de interface
que distingue a AmI de outros paradigmas de computação móvel e também motiva a
necessidade de inteligência.
A necessidade urgente de IUIs é vista quando a natureza do ambiente da AmI é conside-
rada. Uma infinidade de artefatos incorporados ou inteligentes, todos competindo pela
atenção explícita do usuário, não constitui um sistema utilizável. Assim, para a sanidade
do usuário, técnicas alternativas devem ser consideradas. Três questões são de particu-
lar interesse:
1.A necessidade de novas tecnologias de interface física.
2. Suporte a modalidades de interação mais sofisticadas.
3. A necessidade de colaboração entre os componentes constituintes do ambiente,
para que o comportamento inteligente possa ser utilizado ao máximo.
As interfaces gráficas de usuário tradicionais (GUIs) são bem entendidas do ponto de
vista ergonômico e de implementação. Essas GUIs compreendem dispositivos como
teclado, mouse e unidade de exibição visual. No entanto, atualmente, o grande espaço
ambiente que cerca o usuário não é utilizado. Dessa forma, a AmI exige modalidades de
interação mais sofisticadas que utilizam esse espaço, mas que podem ser difíceis de
implementar e interpretar.
A situação é exacerbada quando considera-se que uma mistura de modalidades, por
exemplo, voz e gesto, podem ser usadas. A interpretação dessas modalidades pode
exigir a disponibilidade de recursos computacionais significativos, que podem causar
sérias dificuldades.
Voz, caligrafia, gestos e olhar.
Exemplo
145
Uma estratégia complementar pode envolver a implantaçãode sensores dedicados in-
corporados que auxiliam o ambiente AmI a monitorar o usuário, a desenvolver modelos
de comportamento sofisticados e a permitir antecipar proativamente as solicitações do
usuário. No entanto, nenhuma modalidade de interação única ou tecnologia de interface
consegue isso sozinha. Em vez disso, é necessário um certo grau de colaboração e inte-
ligência para aproveitar e interpretar os dados antes que uma decisão possa ser tomada
sobre se uma sessão de interação explícita com o usuário deve ser iniciada. A configura-
ção usada nesse protótipo em que a câmera estava no fundo da sala, à direita do parti-
cipante, podia ver a tela inteira. Os usuários podem caminhar, mas não ficar a menos de
1,5 metros da tela, como mostra a Figura 37.
Figura 37: Interface de usuário inteligente.
Fonte: Elaborada pelo autor (2020).
Ambientes inteligentes práticos
São várias organizações em comum esforço para entenderem como os ambientes da AmI
funcionariam na prática. Para isso, projetaram e desenvolveram ambientes de teste rea-
listas nos quais os cenários da AmI podem ser rapidamente prototipados e avaliados. O
Philips HomeLab (AARTS; EGGEN, 2002), lançado em 2002, é um exemplo bem conhecido.
Como mostra a Figura 38, em essência, esse laboratório é uma casa real, modelada em
dois andares e dois quartos. Os voluntários moram nessa casa 24 horas por dia e suas
Projeção
Partipante Câmera
1,5m
146
interações com vários dispositivos eletrônicos são observadas pelos pesquisadores.
Dessa forma, espera-se obter uma compreensão mais profunda de como as pessoas
interagem com a tecnologia em casa, resultando em melhores produtos e em uma me-
lhoria de ciclo de desenvolvimento de produtos. Outras iniciativas incluem a Aware House
na Georgia Tech (KIDD et al., 1999), o projeto MIT Oxygen (RUDOLPH, 2001) e a iniciativa
Fraunhofer inHaus (MILLER, 2001).
Figura 38: A sala de estar HomeLab.
Fonte: Aarts; Eggen (2002).
Vida assistida pelo ambiente
A vida assistida ambiental (AAL) procura ajudar as pessoas, particularmente aos idosos,
a viver de forma independente por um período mais longo do que seria possível. A mo-
tivação por trás da AAL é, em particular, uma consequência do perfil demográfico dos
países ocidentais. Em resumo, o número de idosos como parcela da população crescerá
significativamente nos próximos 20 anos em muitos países. Esta é uma questão social e
para a qual não há solução fácil em longo prazo.
O custo de apoiar essa população cada vez mais envelhecida aumentará dramaticamen-
te, um custo que pode ter que ser suportado por uma força de trabalho menor. Antecipan-
do esse problema, a União Europeia, por meio de sua iniciativa do sexto quadro, financiou
ativamente projetos que buscam permitir que os idosos vivessem de forma independen-
te pelo maior tempo possível. Esta iniciativa, AAL, prevê o uso de tecnologias AmI, em
particular, como um meio de atingir esse objetivo.
147
Agora, pense em uma situação prática de como o AAL pode atuar, considerando o caso
de um sistema de monitoramento de banheiros.
O sistema utiliza acústica para monitorar e classificar as atividades do banheiro. No final
de cada dia, um relatório comportamental de higiene pessoal é compilado, para benefício
de prestadores de cuidados e clínicos, respectivamente. Podemos levantar várias ques-
tões de interesse dos pesquisadores da Aml:
• Nenhuma infraestrutura cara e dedicada é necessária.
• As únicas tecnologias necessárias são um sensor infravermelho e um microfone.
• Um algoritmo sofisticado, baseado em modelos de Markov ocultos, classifica os
eventos sonoros em tempo real, permitindo assim o aumento rápido de alarmes.
Por fim, não surgem problemas significativos de usabilidade, pois o sistema é essen-
cialmente discreto. Sua natureza passiva e não invasiva aumenta a possibilidade de ser
aceito pelos usuários.
Soluções de ambientes inteligentes
Dada à importância que a AmI atribui à inteligência artificial, surge a questão de como
implementar essa inteligência na prática. Lembre-se de que a AmI prevê um mundo sa-
turado com pequenos artefatos computacionais. Tais artefatos podem ser móveis, como
exemplificado pelo smartphone ou PDA médio, ou podem ser estáticos, como exemplifi-
cado por sensores incorporados. Para os fins desta discussão, supõe-se que uma rede
de comunicação de dados esteja disponível, sem especificar a topologia ou o protocolo.
Podem ser adotadas três abordagens para fornecer as informações necessárias da fun-
cionalidade de inteligência. A saber:
1) AI em rede: nesse cenário, o software de AI pode ser implantado em nós fixos
na rede. A vantagem dessa abordagem é que o engenheiro de software não é
limitado por restrições computacionais que caracterizam dispositivos móveis e
tecnologias incorporadas. Assim, soluções computacionalmente caras, incluindo
redes neurais e técnicas de aprendizado de máquina, podem ser empregadas.
No entanto, a realização dessa abordagem depende da disponibilidade de uma
infraestrutura de comunicações sofisticada. Lembre-se de que está implícito no
conceito AmI a necessidade de monitoramento contínuo do estado do ambiente.
Quaisquer alterações no status quo precisam ser retransmitidas pela rede para
o nó apropriado, em que as implicações dessa alteração podem ser medidas e
qualquer feedback necessário retornado ao artefato incorporado. Esse processo
148
precisa ocorrer em condições quase em tempo real, para que a usabilidade líquida
do sistema não seja afetada adversamente.
2) IA incorporada: incorporar software aumentado de IA no dispositivo móvel ou
artefato incorporado é, conceitualmente, uma solução preferida em algumas cir-
cunstâncias., embora não em todas. Historicamente, essa abordagem seria com-
putacionalmente intratável. Os desenvolvimentos em andamento nas tecnologias
móveis, no entanto, estão viabilizando essa abordagem, e agora algumas tecnolo-
gias de IA podem ser incorporadas em dispositivos móveis e, cada vez mais, em
artefatos computacionais incorporados, como redes de sensores sem fio. Atual-
mente, a possibilidade de implantarem-se agentes inteligentes nesses dispositivos
está progredindo e já foi descrita na literatura.
Em geral, a abordagem adotada é estender kits de ferramentas de agentes conheci-
dos, de modo que o mecanismo de tempo de execução opere no dispositivo móvel.
Obviamente, a maioria desses kits de ferramentas vem com ferramentas adicionais
para design e depuração, mas elas não são portadas para o dispositivo. É neces-
sário implantar apenas um intérprete de tempo de execução para a lógica do agen-
te. Uma desvantagem da abordagem incorporada per se é que essas aplicações
tendem a ser insulares. Isso contraria a visão da AmI na prática, pois um esforço
colaborativo implícito é necessário na AmI para que a interação explícita do usuário
seja mantida no mínimo.
3) AI Distribuída: uma terceira abordagem para obter inteligência em ambientes
AmI é distribuir as tecnologias de AI entre o artefato computacional incorporado e
um nó do servidor fixo. Essa é uma solução flexível e, para domínios de aplicativos
adequadamente equipados, pode oferecer ao engenheiro de software oportunida-
des significativas para misturar e combinar as técnicas necessárias para a realiza-
ção do aplicativo em questão.
Curiosamente, a AI distribuída (DAI) é, ela própria, um sub-ramo distinto e maduro
da AI e preocupa-se principalmente com questões como raciocínio distribuído e ge-
renciamento de conhecimento. Assim, os engenheiros de software podem recorrer
a uma grande variedade de pesquisas no decorrer de seus projetos. De fato, parece
haver uma síntese estranha entre a disciplina DAI e o conceito AmI. Mais importan-
te, uma das implementações mais avançadas do DAI diz respeito a agentes inteli-
gentes e a sistemas multiagentes (MAS).
149
Agentes inteligentes em ambientes restritos computacio-
nalmente
Agentes inteligentes são um mecanismo distinto e viável para o designe implementação
de aplicativos. Os agentes são geralmente adotados em situações altamente complexas
e dinâmicas, nas quais as técnicas tradicionais de software parecem não encapsular as
construções necessárias essenciais para modelar efetivamente a situação.
Várias características são sinônimos de agentes, incluindo autonomia, proatividade, reati-
vidade, mobilidade e sociabilidade. Conforme a implementação dos agentes inteligentes,
é possível notarmos características diferentes incorporadas.
Do ponto de vista da AI, os agentes são vistos como dotados de uma sofisticada capaci-
dade de raciocínio. Obviamente, deve-se observar que as características suportadas em
ambientes de rede fixos podem não ser necessariamente suportadas no mecanismo de
tempo de execução para dispositivos incorporados, sendo um problema a respeito do qual
os desenvolvedores em potencial de sistemas baseados em agentes devem estar cientes.
Um exemplo bem conhecido disso é a arquitetura Belief-Desire-Intention – BDI
(RAO; GEOGEFF, 1995).
Exemplo
Vários ambientes mais maduros foram estendidos com mecanismos de tempo
de execução para dispositivos com capacidade computacional limitada. Todos
são descritos extensivamente na literatura de pesquisa e a maioria está dis-
ponível em formato de código aberto. Exemplos de interesse incluem 3APL-M
(KOCH, 2005), LEAP (ADORNI; BERGENTI; POGGI; RIMASSA, 2001) e MicroFI-
PA-OS (LAUKKANEN; TARKOMA; LEINONEN, 2001). No caso da arquitetura
BDI, JACK (http://www.agent-software.com), um produto comercial, e Agent
Factory Micro Edition (MULDOON; O’HARE; COLLIER; O’GRADY, 2006), um de-
rivado da Agent Factory (COLLIER; O’HARE; LOWEN; ROONEY, 2003), também
foram portados para dispositivos móveis.
Ampliando o foco
150
Tendências futuras
O potencial da AmI é indiscutível, mas pesquisadores e empresas comerciais precisam
estar cientes dos problemas pertinentes que devem ser abordados antes de lançarem a
tecnologia da AmI para a população em geral, incluindo a questão da privacidade e sua
proteção, economia e necessidade de redes básicas tolerantes a falhas, que estão conti-
nuamente alertas e podem reagir rapidamente às novas circunstâncias. Acima de tudo,
no entanto, os sistemas AmI devem manter a privacidade de seus clientes e de forma
alguma comprometer sua segurança. Essa será uma preocupação crítica dos clientes ao
considerar se as vantagens superam a carga econômica.
Como prioridade, as empresas que desenvolvem tecnologias AmI precisam enfatizar os
benefícios de segurança que cumprirão contratualmente. Finalmente, na questão crítica
da realização prática da inteligência em aplicativos AmI, pode-se prever realisticamente
que dispositivos móveis e tecnologias incorporadas aumentem em potência e sofistica-
ção, ampliando assim o leque de técnicas de AI que podem ser aproveitadas pela comu-
nidade de engenharia de software.
151
Questões de projeto
A computação pervasiva define uma visão poderosa para o crescente número de tarefas
humanas cotidianas a serem automatizadas pelas máquinas, permitindo que tarefas e
informações sejam acessadas quando e onde forem necessárias, mas permanecendo
ocultas na estrutura do mundo físico. Existem muitos exemplos de computação per-
vasiva no uso diário e há uso generalizado de sensores e controladores incorporados
em muitos objetos digitais e sistemas eletrônicos cotidianos, que podem posteriormente
adaptar seu comportamento.
No entanto, a computação pervasiva traz consigo seu próprio conjunto de desafios. Mais
informações e tarefas podem estar mais acessíveis, mas podem sobrecarregar cogni-
tivamente usuários humanos. Embora os sistemas de computação pervasiva possam
ser projetados para simplificar o acesso, automatizando tarefas analógicas, o inverso
também pode ser verdadeiro.
Longe de serem modelos de computação oculta, a maioria dos computadores hoje ain-
da é bastante invasiva para acessar. O acesso às TIC geralmente usa um teclado e um
dispositivo apontador que podem ser difíceis de usar durante a realização de outras ati-
vidades diárias.
Vários pesquisadores discutiram os desafios do desenvolvimento de sistemas UbiCom.
Weiser (1993), Demers (1994) e Satyanarayanan (2001) deram uma visão ponderada dos
problemas de design no desenvolvimento de dispositivos com recursos limitados, dispo-
sitivos móveis e ambientes inteligentes.
Por exemplo, definir a hora em um relógio analógico requer simplesmente girar
um ou dois botões girados em uma única direção para definir as horas e os
minutos corretos; ao contrário, definir a hora em um relógio digital geralmente
não é tão intuitivo, pode exigir vários botões modais não rotulados operando.
Exemplo
152
Abowd e Mynatt (2000) pesquisaram aplicativos da UbiCom em três temas: interfaces
naturais, reconhecimento de contexto e captura e acesso automatizados e conside-
ram o principal desafio de unificar várias interações, incluindo interações sociais.
Edwards e Grinter (2001) analisaram as questões de design no desenvolvimento de
ambientes inteligentes. Jessica e Robey (2002) discutem os desafios sociais. Davies
e Gellersen (2002) fornecem uma visão geral dos desafios técnicos e sociais. Rogers
(2006) considerou os problemas e desafios de design no uso de um modelo do tipo
iHCI para a UbiCom.
Agora, vamos entender os desafios no projeto de suporte às propriedades do sistema com-
putação pervasiva: distribuição, iHCI, reconhecimento de contexto, autônomo, inteligência.
Propriedade: Distribuição
• A confiabilidade pode diminuir à medida que os sistemas tornam-se mais atuali-
záveis e interoperáveis.
• A abertura aumenta incompatibilidades, o uso de recursos de carregador gratuito
reduz a capacidade de resposta.
• Limite do sistema menos claramente definido.
• Sincronizando dados em cache locais com dados remotos, possivelmente cen-
tralizados.
• Maior chance de acesso remoto não autorizado, divulgação, diminuição da priva-
cidade e segurança.
• Eventos de baixo nível e eventos compostos podem inundar e interromper os
usuários.
• Interações ad hoc podem ser difíceis de controlar e gerenciar.
• Interação inesperada indesejada, inoportuna ou disruptiva interrompe a operação
do sistema.
• Escolha esmagadora, várias versões, heterogeneidade.
• Coesão reduzida, interação de confiança mais complexa.
• Os custos de computação e comunicação da distribuição superam os ganhos.
Propriedade: IHCL
• Os usuários ficam sobrecarregados com as possibilidades de interação à medida
que o cenário digital se expande.
• Desaparecer tecnologia pode levar a incerteza sobre se um sistema está funcionando.
• O sistema tira o controle do usuário.
153
• Podem ocorrer interrupções de fontes não reconhecidas e sem sentido.
• Intenções ambíguas do usuário levam à interpretação incorreta do sistema.
• Perda de privacidade e controle devido a uma crescente capacidade de rastrea-
mento indireto.
• Perda de presença no mundo real físico devido à interação virtual contínua.
Propriedade: Reconhecimento de contexto
• Nenhuma onipresença — sente e age por meio de camadas do ambiente que
atuam como filtro
• Eventos e contexto do ambiente detectados como irregular ou irregular.
• Adaptação de contexto incompleta, inferida incorretamente, ambígua, indesejada,
por sistema.
• Contextos mal definidos, por exemplo, TIC, energia, usuário etc., levam a um de-
sempenho não ideal.
• Escalabilidade localizada: a densidade de interações diminui à medida que nos
afastamos; caso contrário, os usuários são oprimidos por interações distantes de
pouca relevância.
• As metas e o contexto do usuário geralmente não podem ser claramente defini-
dos e inferidos.
• A adaptação do contexto leva a uma seleção, decisões e compromissos mais
rápidos e sem consideração.
• Sistema de balanceamento versus aplicativo versus controle do usuário da adap-
tação ao contexto.
Propriedade: Autônomo
• Perda de recursos móveis macro de alto valor; perda de muitos microrrecursos de
baixo valor.
• Ninguém querser administrador, a administração é mais distribuída e complexa.
• Adaptação indesejada ou reconfiguração ininteligível do sistema.
• Dependências, por exemplo, de aplicativos no sistema etc., limitam a autonomia.
• Comportamentos imprevisíveis, indesejados e incontroláveis em nível macro
emergem da microinteração de nível.
• Perda de controle pelo usuário; maior autonomia do sistema significa que o siste-
ma pode dizer não.
154
Propriedade: Inteligência
• O sistema infere incorretamente estado, conhecimento, contexto etc.
• Maior dependência e dependência de sistemas de sistemas, interações para operar.
• Os sistemas aprendem a operar fora de seus limites seguros ou em conflito com
as intenções do usuário.
• Os sistemas excedem os limites normais de comportamento humano, causando
danos físicos e mentais.
• A organização virtual pode disfarçar-se como organizações reais.
• Comportamento bizantino, perturbador e malicioso a partir de colisão.
Tecnologias do futuro
Existem muitas fontes de ideias para a tecnologia futura. Diversos escritores de ficção
científica, que podem ter treinado ou trabalhado como cientistas e engenheiros, descre-
veram ideias que mais tarde tornaram-se realidade, como Arthur C. Clark, que é creditado
por propor a intenção de orbitar satélites em 1945. Muitos engenheiros e cientistas em
diversos campos propuseram visões ousadas para o uso futuro das TIC, como Van der
Bush (1947), Weiser (1993), Pearson (2000), Kurzweil (2001), Greenfield (2006) e outros.
Pearson (2000) fez cerca de 500 previsões detalhadas em relação a uma linha do tempo
até 2050 e algumas delas merecem menção especial. Se revisarmos muitas das previ-
sões anteriores de pessoas evidentemente inteligentes, por sua própria natureza, elas se-
rão um sucesso. Além disso, existem outros fatores que contribuem. Muitas vezes pode
haver um atraso entre a viabilidade de um protótipo versus sistemas que realmente levam
à aceitação pelas massas. Por sua vez, isso pode depender de requisitos não funcionais,
como eficiência, segurança e confiabilidade, facilidade de uso para HCI e uso ecológico
em ambientes físicos.
As revoluções ou evoluções tecnológicas são apenas um dos ambientes que devem ser
afetados em um mundo tão multidisciplinar que causa um efeito de escalada no mundo
social (incluindo aceitação política, empresarial e jurídica) e no mundo físico para causar
mudanças. Para entender a complexa interação entre sistemas e seu ambiente precisa-
mos entender os novos efeitos secundários da tecnologia. Isso defende a participação
multidisciplinar no desenvolvimento de novos aplicativos. O mundo continua a precisar
de mais engenheiros, físicos, geógrafos, advogados, sociólogos, e estes precisam con-
versar entre si.
155
Dispositivos inteligentes menores e mais funcionais
Há uma tendência evolutiva em direção a dispositivos menores, com menor potência e
recursos mais altos. Considere os telefones celulares produzidos pela primeira vez na
década de 1950. Eles pesavam dezenas de quilos e precisavam ser carregados em uma
mala ou mochila. Na década de 1980 os telefones tornaram-se do tamanho de tijolos e
hoje os celulares pesam dezenas a centenas de gramas. Os telefones podem ser fabrica-
dos para ser muito menores, mais leves e de baixa potência, se a tecnologia MEMS puder
ser aproveitada ainda mais para realizar fones de ouvido, microfones, câmeras e displays
ocultos em óculos.
Figura 39: Com menor consumo de energia, mais recursos: dispositivos inteligentes menores.
Fonte: Elaborada pelo autor (2020).
Interação inteligente
A interação mais inteligente entre dispositivos inteligentes individuais e ambientes inte-
ligentes é o principal facilitador para promover espaços mais ricos, mais perfeitos, pes-
soais, sociais e públicos.
Abowd e Mynatt (2000) observam que as atividades do usuário raramente têm início ou
fim claros em várias sessões. São esperadas interrupções, várias atividades operam si-
multaneamente, contextos como o tempo são úteis para filtragem e adaptação que mo-
delos associativos de informação são necessários. A análise de Johanson et al. (2002)
dos espaços de trabalho interativos enfatiza que os projetos podem beneficiar-se da per-
cepção de localização. Sempre que possível, devem confiar em convenções sociais para
Microfone
de ouvido
Display
Câmera AV
156
ajudar a tornar os sistemas inteligíveis. Eles devem suportar ampla aplicabilidade (intero-
perabilidade) e precisam ser mantidos simples para serem inteligíveis para os usuários.
À medida que a multiplicidade de interações aumenta, o contexto do mundo físico pode
ser usado para personalizar a interação e o contexto do usuário também pode ser usado
para personalizar as iterações. No entanto, os contextos podem ser difíceis de determi-
nar e há incerteza na interação com outros sistemas em ambientes dinâmicos abertos.
Edwards e Grinter (2001) destacaram eloquentemente alguns dos principais desafios
para o uso de aplicativos de computação ubíquas em ambientes inteligentes de tipo do-
méstico, mas suas análises podem ser generalizadas para a interação do ambiente inte-
ligente (mundo físico). Seus sete desafios são:
1. A casa inteligente “acidentalmente”.
2. Interoperabilidade improvisada.
3. Nenhum administrador de sistemas.
4. Design para uso doméstico.
5. Implicações sociais de tecnologias domésticas conscientes.
6. Confiabilidade.
7. Inferência na presença de ambiguidade.
A manutenção de um ambiente físico inteligente habilitado para TIC ocorrerá iterativa-
mente. A adoção gradual e atualizações para um ambiente existente, por exemplo, usan-
do alto-falantes sem fio, campainhas, televisões e telefones em uma casa, podem levar a
um nível imprevisível de complexidade. Devido à mudança na forma dos dispositivos de
TIC no ambiente doméstico do mundo físico, a inteligibilidade de como ele funciona para
os usuários pode mudar com o tempo. Os usuários podem não ter certeza dos limites de
sua casa, da quantidade de privacidade que possuem e do local de controle no sistema.
Ou melhor, os proprietários de casas podem não perceber que seus alto-falantes sem
fio são realmente capazes de se conectar a fontes de som em outra casa tão facilmente
quanto a fontes de som em sua própria casa, como mostra a Figura 40.
Nos modelos de projetos convencionais a conectividade é explícita quando há fios físi-
cos, o “intervalo” de conectividade é mais aparente, as conexões são observáveis e não
mudam por si mesmas. São necessários novos modelos de conectividade para tecnolo-
gias sem fio que sejam inteligíveis pelos usuários. Eles precisam controlar a maneira pela
qual as entradas e saídas podem ser redirecionadas em redes ad hoc.
157
Figura 40: Conexão de fontes de som.
Fonte: Elaborada pelo autor (2020).
Interação inteligente homem–dispositivo
Os dispositivos inteligentes podem ser usados para formar um espaço pessoal e difundido
inteligente para seus proprietários, que os seguem. É necessário equilibrar a conveniência
de adaptar automaticamente vários novos serviços às suas preferências, em comparação
com a perda de privacidade, deixando uma trilha persistente de comportamentos perso-
nalizados que outras partes não confiáveis podem explorar de maneiras indesejadas.
Os dispositivos inteligentes podem ter recursos limitados, levando a comportamentos
restritos, como mensagens mais antigas ou mais recentes podem ser descartadas quan-
do o armazenamento local está cheio. Os dispositivos podem ser móveis. Nesse caso,
novos designs para rotear mensagens recebidas para hosts móveis precisam ser for-
mulados. A descoberta de serviço flexível é necessária para permitir que os dispositivos
descubram nós de acesso local para encaminhar mensagens por grandes áreas e para
descobrir e interagir com outros serviços locais.
Harper et al. (2007) em um relatório chamado Ser humano: interação homem-computa-
dor em 2020 refletem sobre as mudanças nos dispositivos inteligentes até o momento
atual:como os dispositivos estão mudando vidas e a sociedade, como as mudanças
nos dispositivos inteligentes levarão a grandes transformações na natureza da interação
humano-computador, como o processo para apoiar o HCI precisará apoiar valores hu-
manos gerais, como apoiar a inclusão, a igualdade e a curiosidade; como o HCI mudará
no futuro.
Esperado Esperado
Imprevisto
158
Os dispositivos inteligentes mudaram do passado recente para o tempo atual da seguinte
forma: de GUIs para gestos, de VDUs para tecidos inteligentes, de transceptores fixos em
caixas fixas para transceptores do tamanho de aparelhos celulares, de robôs simples a
máquinas autônomas, de discos rígidos a digitais memórias ou pegadas, de encolhido
(conteúdo produzido pelo provedor) a mash-ups (conteúdo produzido pelo usuário) e de
telefones e atendentes às vezes ativados para sempre.
Esses desenvolvimentos em dispositivos inteligentes levarão a cinco principais transfor-
mações na maneira como os humanos irão interagir com os dispositivos. São elas:
1. A estabilidade da interface terminou à medida que os limites entre computadores
e humanos e entre computadores e o mundo cotidiano tornam-se mais fluidos e
ocorrem os ecossistemas de interação ad hoc ponto a ponto dos dispositivos.
2. A tecno-dependência aumentará ainda mais por viver em um mundo cada vez
mais dependente da tecnologia e viver com computadores cada vez mais inteligentes.
3. A hiperconectividade crescerá ainda mais, à medida que vivemos em um mun-
do mais socialmente conectado e cada vez mais tornamo-nos parte de uma mul-
tidão digital.
4. As memórias humanas de vida curta, diárias ou efêmeras desaparecerão à me-
dida que mais informações forem armazenadas na expansão de memórias digitais
personalizadas e por meio da vida em um mundo cada vez mais monitorado, incor-
porado a sistemas de vídeo em circuito fechado.
5. As novas formas de engajamento criativo, como vários tipos de computação per-
vasiva e raciocínio humano aumentado, aumentarão.
Três estudos de caso foram propostos para destacar as tendências para HCI no futuro. A
negociação versus o tráfego de conteúdo usa designs baseados em smartphones para
exibir e compartilhar conteúdo regulamentado. O rastreamento versus vigilância nas fa-
mílias usa designs de computadores ocultos, como o relógio do paradeiro, para indicar
a localização dos membros da família. O cenário que torna as memórias humanas mais
tangíveis usa uma Shoebox digital conectada sem fio, que permite aos usuários navega-
rem por elas passando o dedo pela parte superior da caixa.
Inteligência humana x inteligência da máquina
Existem diferentes visões de como seres humanos e sistemas inteligentes coexistirão no
futuro. Embora os cérebros humanos e a capacidade humana pareçam não ter mudado
significativamente ao longo de alguns milhares de anos, os humanos desenvolveram
159
máquinas que permitem a capacidade combinada de usarem-nas como ferramenta para
melhorar sua pura capacidade física e mental.
Pensando nos riscos para o futuro da AI, as pessoas podem ter seus empregos substi-
tuídos pelas máquinas. Podem ter pouco tempo (à medida que as máquinas assumem
cada vez mais tarefas humanas) ou muito tempo (à medida que mais e mais máquinas
tornam-se cada vez mais complexas, gerando cada vez mais insumos para o proces-
samento humano). Elas podem perder a sensação de serem únicas à medida que os
humanos tornam-se cada vez mais subservientes a um espaço de computador virtual
contínuo. Além de perder seus direitos de privacidade, pois tudo pode ser registrado, re-
produzido e analisado por outras pessoas.
Os sistemas de AI podem resultar em perda de responsabilidade dos seres humanos, à
medida que as máquinas tomam decisões mais complexas e dão conselhos mais com-
plexos para orientar o comportamento humano. O sucesso da AI pode levar ao fim da
raça humana, à medida que máquinas, em vez de seres humanos, governam o mundo e
podem tomar decisões que descartam seres humanos do mundo.
As máquinas podem ser projetadas para incorporar vários traços humanos individuais,
como inteligência, emoções e traços humanos coletivos, como comportamentos sociais
e legislativos. Embora o projeto de máquinas para operar legalmente pareça compreen-
sível, outra questão é se as máquinas também devem ser projetadas para serem éticas,
para apoiar a justiça, a equidade, a honestidade, a confiabilidade e a igualdade. Alguém e
alguma coisa podem agir legalmente com ou sem agir de forma ética e vice-versa. Será
preciso haver a consideração da natureza e os desafios no suporte à ética da máquina.
Uma maneira é restringir as ações da máquina para evitar resultados antiéticos. No en-
tanto, não está claro se as máquinas podem ou não ser projetadas para serem totalmen-
te éticas, no sentido de que podem fazer julgamentos éticos explícitos e geralmente são
competentes o suficiente para justificá-las razoavelmente.
Para ampliar o seu conhecimento veja o material complementar da Unidade 4,
disponível na midiateca.
MIDIATECA
160
Com o crescente número de usuários da computação ubíqua, faltarão profis-
sionais que atuem nessa área, não somente no desenvolvimento de aplicativos
e configuração da computação ubíqua, mas também na questão da seguran-
ça cibernética que envolve cada dispositivo conectado. Estar preparado para
esse cenário é de extrema importância. O estudante deve compreender e estar
atualizado acerca das novas ferramentas e tendências tecnológicas. Dominar
o conhecimento das principais ferramentas por meio da qual será responsável
pela conexão entre dispositivos, pois cabe ao profissional poder solucionar pro-
blemas do tipo da falta de conexão ou invasão na rede para desvios de dados.
NA PRÁTICA
161
Resumo da Unidade 4
Alguns pesquisadores parecem bastante pessimistas sobre o status e a taxa de progres-
so da computação ubíqua nos últimos 20 anos. Isso se deve em parte à expectativa de
suporte total à computação da computação pervasiva, geralmente em qualquer tipo de
ambiente de sistema (virtual, físico e humano). Em contraste com essa visão, vemos que
foram feitos progressos substanciais no alcance da visão da computação ubíqua. Muitas
aplicações específicas da computação pervasiva em seções específicas e ao longo des-
te material argumentam que a computação ubíqua já foi bem-sucedida. Muitos sistemas
da computação pervasiva estão em uso rotineiro e esse uso só aumentará no futuro.
Na verdade, tempos ainda mais emocionantes estão à frente de todos os envolvidos no
futuro da computação.
À medida que as tecnologias na área de armazenamento, conectividade e mo-
nitoramento evoluem rapidamente e o desenvolvimento dos negócios aponta
para a direção da economia da experiência, a visão dos serviços e aplicações
da computação pervasiva estão posicionando as necessidades humanas cen-
trais para o desenvolvimento da tecnologia. Há esforços conjuntos de pesquisa
em torno do HomeLab, um instrumento de pesquisa especial que apoia investi-
gações científicas da interação entre humanos e tecnologia.
CONCEITO
162
Referências
AARTS, E.; EGGEN, B. Ambient Intelligence in HomeLab. (eds.). Eindhoven: Norec, 2002.
ADORNI, G., BERGENTI, F., POGGI, A., & RIMASSA, G. Enabling FIPA agentes on small
devices. Lecture notes in computer science. Vol. 2182, p. 248-257. London: Springer-Ver-
lag, 2001.
GREWAL, M., WEILL, L., ANDREWS, A. Global Positioning Systems, Inertial Navigation
and Integration. New York: Wiley, 2001.
KIDD, C.D., ORR, R.J., ABOWD, G.D., ATKESON, C.G., ESSA, I.A., MACINTYRE, B. et al. The
aware home: A living laboratory for ubiquitous computing research. Lecture notes in
computer science. Vol. 1670, p. 191-198. Berlin: Springer-Verlag, 1999.
KOCH, F. 3APL-M platform for deliberative agents in mobile devices. Proceedings of
the Fourth International Joint Conference on Autonomous Agents and Multi-agent Sys-
tems. New York: ACM Press, 2005. P. 153-154.
LAUKKANEN, M.; TARKOMA, S.; LEINONEN,J. FIPA-OS agente platform for small-foo-
tprint devices. Lecture notes in computer science. Vol. 2333, p. 447-460. Berlin: Springer-
-Verlag, 2001.
MULDOON, C., O’HARE, G.M.P., COLLIER, R.W., & O’GRADY, M.J. Agent factory micro
edition: A framework for ambient applications. Lecture notes in computer science. Vol.
3993, p. 727-734. Berlin: Springer-Verlag, 2006.
POPA, M., ANSARI, J., RIIHIJARVI, J., MAHONEN, P. Combining Cricket System and Iner-
tial Navigation for Indoor Human Tracking, Proceedings of 2008 IEEE Wireless Commu-
nications and Networking Conference (WCNC 2008). p. 3063-68. (IEEE Press), 2008.
PRIYANTHA, N., CHAKRABORTY, A., BALAKRISHNAN, H. The Cricket Location-Support
System, Proceedings of the Sixth Annual ACM International Conference on Mobile Com-
puting and Networking (MOBICOM), August, 2000.
RUDOLPH, L. Project oxygen: Pervasive, Human-centric computing-an initial experience.
Lecture notes in computer science. Vol. 2068, p. 1-12. Berlin: Springer-Verlag, 2001.
163
RAO, A.S., & GEORGEFF, M.P. BDI agents: From theory to practice. V. Lesser & L. Gasser
(eds.) Proceedings of the First International Conference on Multi-agent Systems, p. 312-
319. CA: MIT Press, 1995.