1
XIII Escola Regional de Informática Norte 2 – 2013
29 a 31 de outubro de 2013
Centro Universitário do Pará, CESUPA
ANAIS
Editoração
Delano Campos de Oliveira
http://ern2013.com.br/
2
XIII Escola Regional de Informática Norte 2 – 2013
PROMOÇÃO
Sociedade Brasileira de Computação (SBC)
REALIZAÇÃO
Centro Universitário do Pará (CESUPA)
APOIO
Museu Paraense Emílio Goeldi (MPEG)
Universidade da Amazônia (UNAMA)
Universidade Federal do Pará (UFPA)
Universidade Federal Rural da Amazônia (UFRA)
EQUIPE ORGANIZADORA
Coordenação Geral: Prof. Dr. Marcos Paulo Alves de Sousa
Coordenação Comitê de Programa: Profa. MSc. Alessandra Natasha Barreiros, Prof.
Msc. Marcos Douglas da Silva Gomes, Profa. MSc. Polyana Santos Fonseca Nascimento,
Prof. Dr. Orlando Shigueo Ohashi Junior e Prof. MSc Marcos Venicios Conceição Araújo
Equipe de Apoio: Antônio Emídio Monteiro Rebêlo, Clívia Lorena Azevedo da Rocha,
Daniel Claudio da Cruz Barros, Débora Campos Rodrigues, Elen Arantza Silva Botelho,
Isadora Barbosa Costa, Juliana Correa dos Santos, Marília Chaar Machado, Nicolle
Karine Andrade Dantas Macedo, Rodolfo de Sousa Gomes, Rodrigo Rodrigues da Silva
Rocha, Thiago Renan Costa Siqueira
COMITÊ DE PROGRAMA
Prof. MSc. Adalton Magalhães Lima (UFPA)
Prof. MSc. Ananias Pereira Neto (UNAMA)
Prof. MSc. Antônio Jacob Júnior (UNAMA)
Prof. Dr. Cleidson de Souza (UFPA)
3
Profa. MSc. Decíola Fernandes de Sousa (UFRA)
Prof. Dr. Eduardo Coelho Cerqueira (UFPA)
Prof. Esp. Eudes Danilo da Silva Mendonça (CESUPA)
Prof. Dr. Jefferson Magalhães de Morais (UFPA)
Prof. Dr. José Laurindo Campos do Santos (INPA)
Profa. MSc. Larissa Sato Elisiário (UFRA)
Prof. MSc. Mauro Margalho Coutinho (UNAMA)
Prof. Dr. Otávio Noura Teixeira (CESUPA)
Prof. MSc. Rodrigo Lisboa Pereira (CESUPA)
Profa. MSc. Silvana Rossy de Brito (UFRA)
4
A Interação dos Alunos de uma Escola Pública Estadual do Pará com a Cultura
Digital Dentro e Fora do Ambiente Escolar ............................................................. 7
Tiago Lobato de Souza, Gleise Batista dos Reis, Larissa Sato Elisiário
Aplicação de Redes Neurais Artificiais para Classificação dos Ciclos Hidrológicos
de um Reservatório de Água na Amazônia ........................................................... 16
Jean Freire, Tarcísio Lobato, Jefferson Morais, Terezinha Oliveira, Rachel Hauser-Davis,
Augusto Saraiva
Aplicação do Artificial Bee Colony em Funções de Minimização Não Restritivas 24
Marco Antônio Florenzano Mollinetti, Otávio Noura Teixeira
Aprendizagem de Lógica e Algoritmos: Uma experiência do PIBID com alunos do
Ensino Fundamental ............................................................................................. 30
Raimunda Denize da S. Vieira, Joel da C. Lobato Junior, Tayana Cristine A. Simões,
Decíola F. Sousa
Canal online Whua! Mix: proposta de levar informação sobre cultura japonesa,
música e tecnologia, usando a internet como meio de comunicação ...................... 42
Fernanda L. C. Santos, Alisson R. Comerlatto, Nivio I. C. Imbiriba, Alessandra N. A.
Barreiros
Classificação automática de informações ambientais usando Redes Neurais
Artificiais: O caso da Malária na usina hidrelétrica de Belo Monte, Pará, Brasil. 47
Alcinês da Silva Sousa Júnior, Alcione Ferreira Pinheiro, Larrysa de Cássia Tork da Silva,
Nelson Fernando de Lisboa Soffiatti, Luís Henrique Rocha Guimarães, Nelson Veiga
Gonçalves
Desenvolvimento de Ferramenta para Monitoramento Multimídia a partir de Redes
Heterogêneas ......................................................................................................... 57
Wilson Farias, Claudio Silva, Rodrigo Costa, Denis Rosário, Eduardo Cerqueira
Desenvolvimento de uma Interface Gráfica para o simulador CODPON-SIM ...... 66
Patrick A. Bungama, Yuri A. Planzo, Mauro M. Coutinho
Especificação e Desenvolvimento de um Sistema Domótico de Baixo Custo
Utilizando Arduino ............................................................................................... 77
Luiz Felipe de Sousa, Msc. Cassio David Borralho, Celson Pantoja Lima
Estudo das Técnicas de Monitoramento para Avaliação do Desempenho em Cluster
de Servidores Web ................................................................................................ 87
Diego B. Lopes, Patrick A. Bungama, Taison A. de Nadal, Ananias P. Neto
Imperialist Competitive Algorithm: Um algoritmo baseado em Relações
sociopolíticas feito na Linguagem de Programação C .............................................. 96
Marco Antônio Florenzano Mollinetti, Filipe Bittencourt Souza das Neves, Rodrigo
Lisbôa Pereira, Otávio Noura Teixeira
5
Mapa do Crime de Belém do Pará: uma proposta para facilitar o acesso da
população aos dados criminais em Belém do Pará .............................................. 107
Fernanda L. C. Santos, Marcell A. A. Mesquita, Nivio I. C. Imbiriba, Alessandra N. A.
Barreiros
Mecanismos de Sincronização em Banco de dados Utilizando Sync Framework
Aplicado às Redes DTN ....................................................................................... 113
Paulo Vitor Nascimento Lobato, Mauro Margalho Coutinho
O Lúdico no Ensino de Lógica na Educação Básica ............................................ 127
Lílian Lúcia B. Monteiro, Marco Antônio M. das Chagas, Odete da C. Ferreira, Marialda
M. de Melo, Fabiano Leandro C. de Melo, Mário Rômulo C. Costa, Decíola F. de Sousa
Parque Zoobotânico Virtual, Um espaço de educação ambiental e cultural do Museu
Paraense Emílio Goeldi através de Realidade Virtual ......................................... 136
Hardy J. S. Miranda, Lucas A. Andrade, Marcos Paulo Souza
Proposta de Implantação do Processo de GCO para a CDP fundamentado no
MPS.BR ....................................................................................................................... 146
Soraia S. F. Pantoja, Rodrigo Lisbôa Pereira
TIC’s para Inclusão: Uma experiência de iniciação à docência com alunos de
Licenciatura em Computação - UFRA ................................................................ 158
Aline C. Ferreira, Alix R. Silva, Kelly Cristina Silva. Braga, Hilda R. Freitas, Larissa S.
Elisiário
TVD-EDUC 3.0: Aplicação Educacional Interativa para Inclusão Digital/Social
Através do Ambiente de TV Digital .................................................................... 167
Jhenifer da S. Santos, Fabrício W. da S. Garcia, Flávia P. Monteiro, Marcos C. da R.
Seruffo, Carlos N. da Silva, Carlos R. L. Francês
Uma Nova Visão para a Ontologia de Domínio da Biodiversidade ...................... 179
Janaína M. P. Nascimento, Delano Campos de Oliveira, Andréa Corrêa Flôres
Albuquerque, Marcos Paulo Alves de Sousa, José Laurindo Campos dos Santos
Uso de Criptografia para Manter a Consistência dos Dados em Redes DTN via
Algoritmo MD5 ................................................................................................... 190
José Afonso Ribeiro Serrão, Mauro Margalho Coutinho
Uso de redes DTN para coleta automatizada de dados oriundos de radares de
trânsito da Região Metropolitana de Belém ........................................................ 207
Jessica Santos, Heverson Silva, Mauro Margalho
6
A Interação dos Alunos de uma Escola Pública Estadual do
Pará com a Cultura Digital Dentro e Fora do Ambiente
Escolar
Tiago Lobato de Souza1, Gleise Batista dos Reis1, Larissa Sato Elisiário1
Instituto Ciberespacial (ICIBE) – Universidade Federal Rural da Amazônia
(UFRA) Cep. 66077-901 - Belém – PA – Brasil
1
[email protected], [email protected], [email protected]
Abstract: The use of Information and Communication Technologies (ICT’s),
besides the increase between human’s interaction with virtual environments,
may impact changes in different society’s settings, mainly in the urban one.
And the school is one of few institutions which has hardly to control and use
those changes in its favor. In this way, arises the importance of analyzing the
digital culture´s presence into children and youth's lives from public schools so
it can be inserted in an appropriated way into the educational projects.
Resumo: A utilização das Tecnologias de Informação e Comunicação (TIC’s)
e o crescimento da interação do homem com os meios virtuais causam
mudanças em diferentes ambientes da sociedade, mas principalmente no meio
urbano. E a escola é umas das instituições que mais possui dificuldade em
controlar e usar essas mudanças ao seu favor. Assim, surge a necessidade de
analisar a presença da cultura digital na vida de crianças e adolescentes de
instituições públicas de ensino para que esta possa ser inserida de forma mais
adequada nos projetos pedagógicos.
1. Introdução
Este estudo, realizado por dois acadêmicos bolsistas do Programa Institucional de Bolsa
de Iniciação à Docência (PIBID), no período de outubro de 2012 a julho de 2013, abrange
um universo de 306 alunos entre 10 e 17 anos de idade da escola pública Estadual de
Ensino Fundamental XV de Outubro, em um bairro periférico da cidade de Belém. Tratase da pesquisa que foi realizada durante o período das ações do PIBID na escola. Um
questionário – sem identificação e de autopreenchimento com perguntas subjetivas – foi
distribuído em todas as turmas de 6º ano à 8ª série da escola, bem como foram coletados
dados a partir da experiência dos autores deste artigo em com os alunos em sala ao
ministrar aulas e palestras relacionadas à computação.
2. Iniciando a pesquisa
Quando começamos a atuar na escola nos deparamos com a dificuldade de ensinar
informática e realizar todos os projetos que planejamos sem um laboratório de
informática, pois a escola ainda aguardava a implantação de um laboratório que não foi
instalado até o término do período de realização do PIBID na instituição.
Os alunos não possuíam acesso a nenhuma Tecnologia de Informação e
Comunicação (TIC’s) na escola, exceto seus celulares de uso pessoal. Diante desse
7
desafio, foram ministradas aulas e palestras que envolviam a participação direta dos
alunos para que pudéssemos conhecer melhor a interação deles com a presente cultura
digital, em consonância com Fantin (2012, p. 70) quando diz que:
Saber os repertórios que os estudantes trazem do cinema, da televisão, dos
quadrinhos, da literatura, da mídia, das redes sociais, e da cultura digital é
fundamental, não só como ponto de partida para ancorar os conhecimentos
sistematizados, mas para ampliar esse capital cultural. Sobretudo para
relacionar tais saberes com as competências multimídias construídas em
contextos de uso das mídias e tecnologias, como internet, celular e outras
ferramentas, que constroem experiências e discursos que compõem o
currículo extraescolar na sociedade atual.
Como não tivemos a oportunidade de integrar as TIC’s ao projeto pedagógico da
instituição, sabendo que as mesmas “têm um papel importante na aprendizagem, pois
podem auxiliar na prática pedagógica e auxiliar no desenvolvimento de habilidades
motoras e cognitivas dos educandos” (OLIVEIRA, LUDWING E FINCO, 2011), e
como os dados obtidos na observação, análise das respostas e comentários dos alunos
durante as aulas e palestras foram poucos, sentimos a necessidade de traçar um perfil
desses alunos dentro da cultura digital através de um questionário que, entre outras
coisas, tratava da opinião dos alunos sobre a importância do computador, o que seria
tecnologia para eles e para quais fins utilizavam os aparelhos digitais que tinham acesso.
Desta forma, analisamos melhor o real contato dos estudantes com as TIC´s e o
quanto essas tecnologias estão presentes no cotidiano deles. Também traçamos um
perfil para os alunos da escola dentro e fora do ambiente escola e detalhamos os fatores
que envolvem esses alunos na cultura digital.
3. A Cultura Digital no Cotidiano dos Estudantes
Segundo Amadeu (apud FAGUNDES, 2013), cultura é a representação das
manifestações humanas; aquilo que é aprendido e partilhado pelos indivíduos de um
determinado grupo. Por sua vez, a cultura digital é a cultura de rede, a cibercultura, que
sintetiza a relação entre a sociedade contemporânea e Tecnologias da Informação (TIs).
Ao mesmo tempo em que abriga pequenas totalidades e seus significados, ela se mantém
distanciada de um sentido global e único. Isso porque, representa a cultura da diversidade,
da liberdade de fluxos, de conhecimentos e de criações, que dá corpo e identidade às
organizações que delas se constituem.
Assim, mesmo ao analisarmos o perfil geral desses alunos na cultura dos meios
digitais pode haver divergências nos resultados, já que há um perfil específico para cada
aluno perante alguns aspectos como: quais aparelhos digitais cada um utiliza, com que
tipos de grupos virtuais eles interagem, quantas horas dedicam ao meio virtual no seu
cotidiano, etc. Então, não entramos em detalhes específicos quanto à produção de
conteúdo e à autonomia deles na web e buscamos informações quanto ao uso desses
aparelhos digitais apenas como um recurso para variadas atividades e como futuramente
elas podem se tornar parte de um projeto de ensino-aprendizagem para ser aplicado na
escolar.
Verificamos que 65% dos alunos declararam possuir um computador
pessoal.
8
Figura 1. Representação da posse/acesso de algumas TIC’s pelos alunos
Na Figura 1 69% dos alunos declararam ter acesso à internet, isso porque 14%
declararam ter acesso à internet apenas pelo celular e 31% acessam pelo computador e
pelo celular.
Conforme Figura 2 49% dos alunos declararam usar o computador diariamente
e a principal finalidade citada pelos alunos foi o acesso à internet.
Figura 2. Uso do computador e suas finalidades
Figura 2 e destes, 52 % acessam a web diariamente. A formulação de trabalhos
escolares é a segunda atividade mais exercida pelos alunos no computador. Apenas 16%
declararam utilizar o computador para ler livros digitais.
As representações também são um aspecto interessante para entendermos a
compreensão dos alunos em relação às mídias e TIC’s (FANTIN & RIVOLTELLA, 2012,
p. 104). No questionário, pedimos aos alunos que escrevessem uma palavra para associar
à representação do que é tecnologia para eles. Com o número aproximado de 60
palavras que os alunos escreveram, construímos uma tag cloud (Figura 3). Nela, as
palavras que estão em tamanho maior são as que mais vezes aparecem nas respostas. As
cinco palavras mais citadas, na respectiva ordem, foram: “tudo”, “Internet”,
“importante”, “computador” e “futuro”. Ao analisar as palavras, verificamos a grande
diversidade de opiniões dos alunos quanto à representação da tecnologia. Também vale
ressaltar que ao serem questionados se consideravam o computador uma ferramenta
importante, 93% responderam que sim.
9
Figura 3. Palavras mais citadas pelos alunos para definir tecnologia
Mesmo que os dados apontem a grande presença de algumas das principais TIC’s
no cotidiano de grande parte dos alunos e a maioria deles possua conhecimento para
manusear alguns aparelhos digitais, não podemos simplesmente generalizar qualificandoos como incluídos digitais, pois, como afirma Fagundes (2013) “A inclusão digital não
pode ser restrita a acesso: incluir é envolver, inserir e relacionar; é fazer parte, é causa e
efeito; é possibilitar o acesso à informação bem como a produção de informação” e vai
muito além da simples posse de um computador ou qualquer outra ferramenta
tecnológica.
4. As Comunidades Virtuais e os Alunos
Por compreender a importância da “troca coletiva de informação na internet de muitos
para muitos” (TUBELLA, 2005, P.281) para a produção de conhecimento no meio
virtual, buscamos conhecer as comunidades virtuais que os alunos da escolar visitam e
tentar compreender onde e que tipo de informações eles compartilham, pois, como
afirma Fantin (2012, p. 70):
Muito de nossa cultura hoje é imaterial, ou seja, os conhecimentos são
produzidos sobre questões mediadas pelos meios e pela representação,
e grande parte daquilo que conhecemos, conhecemos mais pela experiência
mediada do que pela experiência direta.
Perguntamos, então, no questionário, em quais fóruns de discussão ou grupos na
internet, que tratam de assuntos de seus interesses pessoais, os alunos costumam visitar.
Grande parte (76%) declarou não acessar nenhuma comunidade virtual que realize
discussões sobre algum conhecimento específico. Mesmo que a maioria não participe de
fóruns de discussão, 88% declararam ter uma conta de acesso em alguma rede social ou
blog, onde eles encontram a possibilidade de compartilhar experiências, ideias, opiniões
e o u t r a s i nfor m a ç õe s c o n s i d e r a d a s individualmente relevantes. A red e
s o c i a l m a i s acessada pelos alunos é o Facebook1, conforme a figura 4.
1
Uma das redes sociais encontradas na web que possibilita a comunicação através de postagem de textos,
fotos, vídeos e uma grande variedade de recursos que o usuário pode utilizar para expressar seus
pensamentos para seus amigos ou qualquer outra pessoa que acompanhe sua rotina pela internet.
10
Figura 4. Porcentagem de utilização das redes sociais ou blogs pelos alunos
Quando 48 dos 70 alunos que declararam participar de fóruns de discussão
comentaram fazer parte de um grupo chamado “Pânico no 15” (Tabela 1), que funciona
no Facebook. Ele foi criado por dois alunos da escola e possui aproximadamente 545
integrantes2. Se forem contabilizados apenas os alunos, o número chega a 500, o que
representa mais de 50% dos estudantes de toda a escola. Tentamos entrar em contato
com os alunos fundadores do grupo para pedir mais detalhes sobre o propósito da sua
criação, mas como a escola estava no período de férias e os alunos não responderam
nossos e-mails, não conseguimos entrevistá-los.
Tabela 1. As seis Comunidades virtuais mais acessadas pelos alunos
Comunidades virtuais
n
%
Pânico no 15
4
Bate-papo
2
69
%
3
TeamSpeak3
2
RP
G
Vagalume
1
Religiosos
1
1
%
3
%
1
%
1
%
1
%
No grupo, os alunos postam os mais variados tipos de conteúdo. A maioria das
postagens tem relação com o cotidiano escolar e com o dia a dia dos estudantes fora da
escola. Geralmente, eles trocam datas de eventos, fotos que mostram suas atividades em
casa, no clube ou em qualquer outro lugar, e trechos de textos dos quais eles se
identificam. Também observamos que grande parte das postagens tem uma abordagem
humorística. Nossa intenção não é analisar o grupo de forma aprofundada, o que
certamente poderia ser o objeto de estudo para um próximo artigo com mais detalhes e
uma descrição mais crítica. Porém, podemos ressaltar que o grupo não foi criado com
nenhum objetivo pedagógico ou para comunicação sobre assuntos exclusivamente
escolares. A comunicação no grupo é sempre de alunos para alunos; mesmo que no grupo
estejam presentes professores e funcionários da escola, eles não trocam qualquer tipo de
informação com os alunos. A escola possui um blog, mas ele não é atualizado há dois
anos e não está mais sendo acessado pelo administrador.
Comparado ao primeiro grupo mais citado, as outras comunidades virtuais
tiveram uma porcentagem bastante baixa de acesso. Quase todos os grupos, exceto o
2
Entre eles estão professores, alunos e funcionários da instituição.
11
“Pânico no 15”, tiveram porcentagem de apenas 1%, ou seja, de um a dois alunos por
grupo citado.
5. A Utilização do Celular na Escola
Devido ao grande manuseio do celular nos meios urbanos e sua utilidade para variados
fins, é mais do que perceptível sua presença nas escolas, principalmente nas mãos dos
adolescentes que, com a ajuda do aparelho, ficam quase o dia todo conectados.
Na escola pesquisada o cenário não é diferente. 83 % dos alunos declararam
possuir celular, como já exposto na Figura 1, e mesmo com a proibição do aparelho na
escola3, podemos observar que os alunos manuseiam o celular a todo o momento e em
qualquer ambiente da escola, dentro ou fora das salas de aula.
Durante o período que permanecemos na escola (cerca de 10 meses) não
presenciamos nenhuma campanha ou qualquer tipo de esclarecimento por parte dos
professores ou direção sobre a proibição do uso do aparelho para os alunos. Apenas
constam cartazes colados nas paredes que deixam explícita a proibição, mas sem mais
explicações. Em uma das reuniões realizadas pela escola, com os pais dos alunos, a
informação sobre a não liberação do uso do aparelho foi repassada pela direção, mas
sobre protestos dos pais que argumentaram precisar se comunicar com os filhos quando
estão na escola.
Mesmo levando em consideração que nossa pesquisa foi realizada em apenas
uma escola pública estadual e que nossos dados têm uma representação limitada,
podemos afirmar que a escola XV de Outubro é uma de outras inúmeras escolas
estaduais que sofrem com essa situação complexa do uso das tecnologias digitais por
falta de um planejamento do governo estadual em conjunto com a secretaria de
educação do estado. Por enquanto, o que analisamos é que a medida tomada até o
momento para amenizar possíveis problemas que os aparelhos digitais possam trazer
para dentro da escola pode estar tirando a possibilidade desses alunos de aprenderem
com eles. Porém, conhecemos as dificuldades e a complexidade de inserir essas
tecnologias no currículo escolar, assim como aborda Baggio (2008, p.142):
Não cabe esperar soluções imediatas e paliativas. A mudança só
virá aos poucos, em doses moleculares, e desde que vinculada a
um sistema educativo sólido e democrático e uma prática cultural
diversificada e madura autônoma. Enquanto isso, podemos
estimular uma maior quantidade possível de pessoas e nossos
jovens a descobrir o fantástico potencial transformador da
tecnologia de informação.
Diante disso, verificamos a importância de conhecer a opinião dos alunos em
relação à proibição do celular no ambiente escolar, e perguntamos se eles concordam ou
não com essa medida. A maioria (64%) disse não concordar e as razões mais citadas se
encontram na tabela 2. A mais comentada pelos alunos que não são a favor foi a
necessidade do aparelho para se comunicar com os pais, como comenta uma aluna da 8ª
3
A lei estadual 7.269 que proíbe o uso do celular, MP4, MP3 e pamls em todas as escolas de rede pública
estadual foi sancionada pela então governadora do estado do Pará, Ana Júlia Carepa, em maio de 2009 e
foi aprovada 90 dias depois. Disponível em:
<https://www2.mp.pa.gov.br/sistemas/gcsubsites/upload/14/Lei_7269_proibicao_de_uso_de_celular.pdf>
Acesso em: 27 Julho 2013.
12
série: “porque é para manter contato com a família caso aconteça alguma coisa, mas não
deve ser usado na hora da explicação do professor”. A segunda razão está muito ligada
com a primeira, que é avisar os pais ou responsáveis em caso de alguma emergência.
Tabela 2. Razões mais citadas pelos alunos que os levam a concordarem ou
não com a proibição do celular na escola.
Proibição do uso do celular na escola
Não
Concordam
concorda
Razões
%
Razões
m os pais
Comunicar-se com
13%
Atrapalha a aula
Realizar ligações em casos de urgência
13%
Tira a atenção dos
alunos
Poderia contribuir para o aprendizado
4%
Previne
furtos
Escutar música no intervalo
3%
Outras
Realizar pesquisas
2%
Não responderam
Outras
15%
Não responderam
50%
-
%
34
%
10
%
9%
10
%
37
%
-
Quanto aos 36% que concordam com a proibição do celular citaram que o
aparelho atrapalha as aulas, pois tiram a concentração deles quando o telefone toca ou
quando algum dos alunos não para de enviar mensagens pelo celular. “Muitas vezes o
celular prejudica o professor que quer explicar a matéria e os próprios alunos que muitas
vezes são viciados em SMS”, comenta um aluno da 8ª série. Outro aspecto que leva
parte dos alunos a concordarem com a proibição do uso do aparelho tem relação com a
insegurança e violência aos arredores da instituição. 9% dos alunos declararam não
levar seus aparelhos até a escola para prevenir possíveis assaltos. A escola se encontra
em um bairro periférico da cidade que em 2008 era o bairro com maior incidência de
criminalidade no município, segundo dados da SEGUP e da Prefeitura municipal de
Belém (PMB) de 2012.
6. Aprendizagem e Tecnologia Digital
Verificamos que diante de tantos recursos tecnológicos encontrados no cotidiano dos
alunos, a escola deveria ser uma das principais instituições a incentivar a utilização desses
aparelhos e meios digitais para solucionar possíveis problemas e dificuldades que esses
alunos possam enfrentar no processo de ensino-aprendizagem. Porém, poucas escolas
públicas reconfiguram seus projetos pedagógicos para trabalharem com as TIC’s, como
afirma Rivoltella (2008), em entrevista dada ao site Planeta Sustentável.
Uma das grandes preocupações de muitos educadores que trabalham com
tecnologia digital é fazer com que esses aparelhos passem realmente a fazer parte do
ambiente escolar contribuindo para o processo de ensino-aprendizagem. Promover a
interatividade na sala de aula, também é um dos desafios encontrados por esses
profissionais, já que esta pode mudar a posição do aluno-receptor e torná-lo também um
autor. Silva (2012, p. 222) aponta que:
A disponibilização consciente da interatividade vem, enfim, potenciar uma
nova competência comunicacional em sala de aula. E o professor passa a
ter um novo desafio: modificar a comunicação no sentido da participaçãointervenção, da bidirecionalidade-hibridação e da permutabilidadepotencialidade. Não mais a prevalência do falar-ditar, mas a resposta
autônoma, criativa e não prevista dos alunos, o rompimento de barreiras
13
entre estes e o professor, e a disponibilidade de redes de conexões no
tratamento dos conteúdos de aprendizagem.
Como a pesquisa se passou em uma escola sem recursos digitais disponíveis a
todos os alunos e como o estudo sempre demonstra a opinião dos alunos em relação à
tecnologia digital, analisamos se os alunos da escola pesquisada utilizam tais meios para
ajudarem seus processos de aprendizagem sem um incentivo direto da instituição e
como eles relacionam aprendizado e cultura digital.
Desta forma, alguns dados apresentaram resultados bem relevantes. 72% dos
alunos declararam utilizar o computador para formular trabalhos, 80% declararam usar
o computador para estudar e, ao serem questionados se o celular poderia sem usado em
sala de aula para fins pedagógicos, 60% informaram acreditar que é possível. Muito
pareceram bastante otimistas com essa possibilidade e justificaram o porquê de suas
respostas com suas próprias opiniões de como esse aparelho poderia ser utilizado na
aula. “Sim, por exemplo, nas aulas de língua Inglesa podemos entrar na internet para
traduzir coisas”, comentou uma aluna da 7ª série. “As ferramentas que o celular possui
podem ser úteis na sala de aula como, por exemplo: calculadora, dicionário, imagens,
internet para buscar em sites escolares e etc.”, menciona um aluno da 8ª série. Também
podemos analisar que em grande parte dos comentários os alunos falam sobre a possível
facilidade que possuem em aprender usando tecnologia digital: “por que poderíamos
aprender com um pouco mais de facilidade com a tecnologia”, diz outro aluno da 8ª
série.
Porém, podemos analisar que alguns alunos não acreditam que algumas
tecnologias digitais possam ser usadas no processo de ensino-aprendizagem. 40% dos
alunos acreditam que o celular não pode ser usado para aprender alguma disciplina
porque o aparelho serve apenas para diversão e descontração e isso o torna inadequado
em sala de aula. No questionário, alguns estudantes comentaram: “Não, porque
geralmente usamos mais para se divertir”; “Não, porque não ajuda em nada e quando
vários alunos estão estudando muitos estão no msn”; “Não, porque o celular é um
instrumento mais para os horários livres, como horários de descontração”. Isso prova
que muitos alunos acreditam que não podem aprender se divertindo e que meios que
proporcionam momentos de descontração não podem ser usados como recursos de
aprendizagem.
Portanto, a grande preocupação dos educadores não deveria ser ensinar seus
alunos a utilizar os meios e aparelhos digitais, pois muitos já os utilizam diariamente
muitas vezes até melhor que seus próprios professores. Porém, a escola deve trazer pra
si grande parte da responsabilidade de conscientizar e incentivar esses estudantes a
usarem a tecnologia digital em prol de sua educação e aprendizado. A
interdisciplinaridade e a interatividade entre aluno e professor em conjunto com essas
tecnologias seriam cruciais para a construção de um currículo pedagógico que também
forme para a cultura digital.
7. Considerações Finais
Apesar da falta de recursos tecnológicos na instituição, os alunos apresentaram bastante
interação com a cultura digital que os cerca e da qual fazem parte. Muitos mostraram ter
acesso a esses recursos em casa e utilizam principalmente para entretenimento e auxiliar
os estudos. A importância das TIC´s na vida desses estudantes foi o principal ponto
14
enfatizado por eles, principalmente quando a maioria conceituou tecnologia digital
como “tudo” ou quando deixavam explícito suas apreciações pela multifuncionalidade
dessas tecnologias.
Porém, os alunos se mostraram muito como receptores dentro dessa cultura
digital e poucos como produtores de informação e conhecimento. É neste ponto, então,
que a escola serviria como um veículo de motivação da produção e compartilhamento
de informação pelos estudantes dentro da cultura digital de forma que a tecnologia
possa realmente reconfigurar o processo de ensino-aprendizagem e estimular os
estudantes a serem verdadeiros produtores de conhecimento, ativos em seu processo de
aprendizagem, e, mais ainda, a produzirem não de forma isolada, mas de forma
compartilhada.
Referências
Baggio, R.(2012) “Real e Virtual: O Encontro”, In: Cultura digital e escola: Pesquisa
e formação de professores, Fantin, M. and Rivoltella, P.C.(orgs). 1ª Ed. Papirus,
São Paulo.
Fagundes, L., Hffman, D.(2013) “Cultura digital e escola ou escola na cultura
digital?”,
http://www.futura.org.br/wpcontent/uploads/2011/09/Cultura_digital_na_esc
ola_ou_escola_na_cultura_digital.pdf, Maio. Acesso em 09/09/2013.
Fantin, M., Rivoltella, P.C. (orgs) (2012) “Cultura digital e escola: Pesquisa e
formação de professores” (Coleção Papirus Educação) 1ª Ed., Papirus, São Paulo.
Oliveira, A., Ludwig L., Finco M. (2011) “Proposta Pedagógica do Uso das TICs
como Recurso Interdisciplinar”, In: WORKSHOP DE INFORMÁTICA NA
ESCOLA, 17 (2011), Aracajú. Anais... Porto Alegre: UFRGS, p. 2.
Rivoltella, P. (2008) “Falta cultura digital na sala de aula”,
http://planetasustentavel.abril.com.br/noticia/educacao/conteudo_244926.shtml,
Agosto. Acesso em 10/09/2013.
Silva, M. “Sala de aula interativa” (2012), 6ª Ed., Edições Loyola, São Paulo.
Tubella, I. (2005) “Televisão e Internet na Construção da Identidade”, In: Castells,
M.; Cardoso, G. (orgs). A Sociedade em Rede: do Conhecimento a Ação Política.
Portugal. Imprensa Nacional.
15
Aplicação de Redes Neurais Artificiais para Classificação
dos Ciclos Hidrológicos de um Reservatório de Água na
Amazônia
Jean Freire1, Tarcísio Lobato1, Jefferson Morais1, Terezinha Oliveira1, Rachel
Hauser-Davis2, Augusto Saraiva3
1
Faculdade de Computação e Faculdade de Estatística
Universidade Federal do Pará (UFPA) Belém – PA – Brasil
2
Departamento de Química
Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO) Rio de Janeiro – RJ –
Brasil
3
Centrais Elétricas do Norte do Brasil Belém – PA – Brasil
{jmorais,tfo}@ufpa.br, {jeanarouche,rachel.hauser.davis}@gmail.com
Abstract. This paper addresses the application of Artificial Neural Networks in
the hydrological cycles classification problem that can infer the change in the
physico-chemical parameters of water and metals of a water container on
Amazon. The choice of neural network parameters was made from an automatic
model selection. The results obtained with the neural network can be considered
satisfactory, since there is a great variability of physico-chemical parameters
and metals in the hydrological cycle and ecosystems in which they are different
sampling stations.
Resumo. Este trabalho trata da aplicação de Redes Neurais Artificiais na
classificação dos ciclos hidrológicos que podem inferir na alteração dos
parâmetros físico-químicos da água e metais de um reservatório de água na
Amazônia. A escolha dos parâmetros da Rede Neural foi feita a partir de uma
seleção automática de modelo. Os resultados obtidos com a Rede Neural podem
ser considerados satisfatórios, uma vez que há uma grande variabilidade dos
parâmetros físico-químicos e metais nos ciclos hidrológicos e nos ecossistemas
diferentes onde se encontram as estações de amostragem.
1. Introdução
Foram muitos os impactos provocados pela construção de hidrelétricas na Amazônia.
Grande parte desses impactos decorreram principalmente do efeito da decomposição da
vegetação terrestre inundada, da deterioração da qualidade da água e da perda de serviços
dos ecossistemas terrestres e aquáticos, incluindo a biodiversidade e alteração dos
processos [Tundisi 2007].
Para amenizar ou até mesmo evitar esses impactos, e fundamental que se faça uma
gestão integrada dos reservatórios e que haja um monitoramento eficaz da qualidade da
água. Este monitoramento é de suma importância para administração dos recursos
hídricos que diretamente influenciam a preservação e o equilíbrio dos ecossistemas,
conservando seus padrões de qualidade que são definidos por legislação [do Carmo
Gastaldini et al. 2002]. Tais padrões de qualidade podem ser verificados através da análise
16
de parâmetros físico-químicos e metais nesses corpos de água [Tundisi and Tundisi
2008].
Inúmeros estudos foram desenvolvidos com o intuito de identificar e fazer as
variações sazonais dos parâmetros físico-químicos das concentrações dos metais em
ambientes aquáticos [Kazi et al. 2009, Coletti et al. 2010, Sharma et al. 2012]. Dentre as
técnicas utilizadas para esse objetivo se destacam as contribuições oriundas da
inteligência computacional [Wang et al. 2009, Liu and Chen 2012, Cavalcante et al.
2013].
Com base nesse contexto, o objetivo deste trabalho consiste em classificar de
forma automática os ciclos hidrológicos no período de 2009 a 2012 que podem inferir na
alteração dos parâmetros físico-químico e metais de um reservatório de água na
Amazônia. Para isso foi adotada uma das técnicas de inteligência computacional mais
utilizadas pela comunidade cientifica na tarefa de classificação de dados: as Redes
Neurais Artificiais [Haykin 1999].
Este trabalho está organizado da seguinte maneira. Na Seção 2 é descrita a área
de estudo. Na Seção 3 e apresentado alguns conceitos relativos a aplicação de Redes
Neurais Artificiais para o problema de classificação de dados. Na Seção 4 mostra-se os
resultados obtidos e a Seção 5 apresenta as conclusões e trabalhos futuros.
2. Área de Estudo
A Usina Hidrelétrica (UHE) de Tucuruí está localizada no Rio Tocantins, no estado do
Pará. Fica cerca de 7 km da cidade de Tucuruí e a 300 km em linha reta da cidade de
Belém. O rio Tocantins com seu principal afluente, o Araguaia, constitui uma bacia
própria, ora denominada Bacia do Tocantins, ora Bacia do Tocantins Araguaia (Figura
1). Nascido no planalto central brasileiro, este rio percorre grandes extensões recobertas
por cerrados antes de penetrar em áreas de floresta amazônica densa [EletrobrásEletronorte 2008], já no Estado do Pará. As características principais da área de estudo
são apresentadas na Tabela 1.
Tabela 1. Características gerais da área estudada. Fonte [Eletrobrás-Eletronorte
2008]
Característica
País
Latitude
Longitude
Vegetação
Rio
Data do Fechamento
Área de Inundação (Km2)
Área de Bacia de Drenagem
Comprimento Total
Volume Total
Profundidade Máxima
Descrição
Brasil-PA
o
03 43’ - 05’ 15’ S
49o 12’ - 50’ 00’ W
Floresta úmida
Tocantins
Set/84
2875 Km2
758.000 Km2
170 Km
50,29 Km3
77 m
17
A Figura 1 mostra os sítios à montante utilizados nas coletas: Caraipe 1 (C1),
Caraipe 2 (C2), Breu Branco (MBB), Ipixuna (MIP), Jacundá Velho (JV), Lontra (ML),
Tucuruí (MP), Montante 3 (M3) e Belauto (BE).
Figura 1. Distribuição das estações de coleta à montante do reservatório de
agua da UHE de Tucuruí
As amostras de agua foram coletadas no reservatório da UHE de Tucuruí
utilizando a garrafa de Van Dorn de 2,5 litros de capacidade, em no máximo quatro
profundidades definidas pelo disco de Secchi (superfície, Secchi e dobro do Secchi). Os
parâmetros físico-químicos e metais analisados nas aguas do reservatório com suas
unidades de medidas foram: Secchi (m), Temperatura (oC), pH, OD (mg O2L),
Condutividade (µs cm−1), Ferro (mg L−1), Ca (mg L−1), Mg (mg L−1), K (mg L−1), Na (mg
L−1), NH4 (µg L−1), NO3(mg L−1), totalPO4 (mg L−1), PO4 (mg L−1), STS (mg −1),
Turbidez (NTU), Clorofila-a (mg L−1).
A classificação foi realizada em base de dados fornecida pelas Centrais Elétricas
do Norte do Brasil S/A contendo um total de 423 registros de análise de agua de nove
sítios amostrais à montante do reservatório da UHE de Tucuruí. Foram considerados 17
variáveis de entrada para os classificadores mapeados a partir dos parâmetros físicoquímicos e metais objetivando a classificação do ciclo hidrológico (HC), que afetam o
nível de agua: seco, enchendo, cheio e vazante.
3. Classificação por Redes Neurais Artificiais
As Redes Neurais Artificiais (RNA’s) são sistemas paralelamente distribuídos compostos
por unidades simples de processamento denominados de neurônios artificiais que
calculam uma certa função matemática (usualmente não-linear). Tais unidades são
dispostas em uma ou mais camadas e interligadas pelos chamados pesos sinápticos. O
comportamento inteligente de uma rede neural artificial vem das interações entre as
unidades de processamento da rede [Haykin 1999]. A Figura 2 exibe a estrutura de um
neurônio artificial.
Dentre os paradigmas neurais disponíveis, as RNA’s multicamada direta com o
algoritmo de treinamento supervisionado backpropagation, são uma das mais utilizadas
18
Figura 2. Estrutura de um neurônio artificial
na pratica e, pelas características do problema abordado neste estudo, foi o paradigma
adotado.
A Figura 3 apresenta a arquitetura adotada no processo de classificação dos ciclos
hidrológicos utilizando RNA’s levando em consideração os valores de entrada dos
parâmetros físico-químicos e metais da agua utilizados no estudo e o ciclo hidrológico
(CH): 0- seco, 1-enchendo, 2-cheio e 3- vazante.
Figura 3. Arquitetura da Rede Neural adotada no processo de classificação dos
ciclos hidrológicos
Neste trabalho foi adotada a implementação da RNA disponível no pacote de
mineração de dados WEKA 1 denominada de MultilayerPerceptron. WEKA e
reconhecido pela comunidade cientıfica como um sistema de referência em aprendizado
de máquina e mineração de dados que comtempla uma serie de algoritmos de preparação
de dados, de aprendizado de máquina e validação de resultados [Witten and Frank 2005,
Hall et al. 2009]. Os principais parâmetros da classe MultiLayerPercptron são:
• -L: Corresponde à taxa de aprendizado utilizada pelo algoritmo backpropagation.
Este valor deve ser entre 0 e 1 (Padrão e 0.3).
• -M: Taxa de momento para o algoritmo backpropagation. Este valor deve ser entre
0 e 1 (Padrão e 0.2).
• -N: Este parâmetro corresponde ao número de épocas para treinamento da rede. O
Padrão e 500.
• -H: Corresponde à quantidade de camadas ocultas que podem ser criadas na rede.
Por exemplo -H 3, 2 cria duas camadas intermediarias com 3 e 2 neurônios
respectivamente. Outra forma de representar pode ser através do uso de letras: a
1
Software de domínio público desenvolvido na Universidade de Waikato na Nova Zelândia. Disponível em
http://www.cs.waikato.ac.nz/ml/weka/
19
opção a corresponde a (números de parâmetros + número de classes)/2; as outras
opções são: i (número de parâmetros), o (número de classes) e, t (números de
parâmetros + número de classes).
4. Resultados e Discussão
Deve-se notar que o desempenho de classificadores como no caso das RNA’s e
tipicamente avaliado usando um conjunto de dados de teste, a fim de calcular o erro de
classificação. Este resultado deve ser uma estimativa robusta do grau de generalização do
classificador, porem existem muitos aspectos que podem levar a uma falha nesta
estimativa. Portanto, a avaliação deve seguir uma metodologia rígida. Um dos aspectos
mais importantes e a forma como os parâmetros dos classificadores são ajustados.
Frequentemente, o melhor desempenho de um algoritmo de aprendizado em
relação a uma base de dados especifica só pode ser alcançada ajustando-se
exaustivamente os parâmetros do algoritmo. Esta tarefa e chamada de seleção de modelo
(model selection) e corresponde, por exemplo, a escolher os parâmetros tais como o
número de neurônios na camada escondida de uma rede neural. Uma estratégia popular
para seleção de modelo e que foi adotada neste trabalho e a validação-cruzada (crossvalidation) considerando 10-folds [Witten and Frank 2005].
A seleção de modelo para Rede Neural incluiu dois passos distintos: a escolha da
arquitetura e busca de parâmetro. Inicialmente foram testadas diferentes configurações
com uma ou duas camadas escondidas de neurônios e um número variável de neurônios
em cada uma dessas camadas. Após a seleção do modelo a arquitetura mais robusta foi
com apenas uma camada escondida. Assim o número de neurônios na camada escondida
H, a taxa de aprendizado L e o momentum M variaram de acordo com o grid apresentado
na Tabela 2 sendo que o número de épocas foi fixado em 2000.
Tabela 2. Melhores parâmetros obtidos para a Rede Neural e a taxa global de
classificação correta Tg
Parâmetros
-H
-L
-M
Valores do grid
11, 43, 75, 107, 139 e 171
0.1, 0.3, 0.5, 0.7 e 0.9
0.2, 0.4 e 0.8
Melhor valor
43
0.3
0.2
Tg ( % )
84.9
Com o intuito de analisar resultados gerados sobre as predições empregadas pela
Rede Neural foram utilizadas as seguintes métricas: taxa de erro global Tg, a taxa de
sensibilidade (evocação) Ts, a Taxa de especificidade (precisão) Te e a medida F (Fmeasure) [Hall et al. 2009].
A taxa de acerto global Tg e definida como a razão entre o número de casos da
amostra em estudo que foram classificados corretamente e o número total de casos da
amostra em estudo. Na Tabela 2 e apresentada a taxa global de classificação correta e os
melhores parâmetros obtidos para Rede Neural.
A taxa de sensibilidade Ts e a proporção de verdadeiro-positivos corretamente
identificados e a taxa de especificidade Te e a quantidade de verdadeiros negativos
corretamente identificados. Já a medida F (F-measure) e definida na equação 1.
(1)
20
As taxas de sensibilidade e especificidade e a medida F são geralmente utilizadas
em problemas de classificação binaria, porem podem ser generalizadas para problemas
com mais de duas classes. Neste caso, assume-se que cada classe e positiva e as demais
negativas. Assim, a Tabela 3 apresenta as taxas de sensibilidade e especificidade e a
medida F obtidas pela Rede Neural considerando cada um dos quatro ciclos hidrológicos.
Tabela 3. Taxas de sensibilidade Ts e especificidade Te e a medida F obtidas
pela Rede Neural considerando cada uma das quatro classes
Ciclos hidrológicos
Seco
Enchendo
Cheio
Secando
Ts (%)
84.9
87
85.2
82.5
Te (%)
86.8
87.9
82.9
82.5
F (%)
85.8
87.4
84
82.5
De acordo com os resultados apresentados nas Tabelas 2 e 3, observa-se que a
RNA apresentou boas taxas de acerto, sensibilidade e especificidade, ou seja, ela
consegue classificar de forma satisfatória os ciclos hidrológicos. Contudo, os resultados
obtidos não são ideais, isto e, com taxas próximas à 100%. Isto e compreensível, pois a
variação da sazonalidade climática pode levar a uma classificação anual variante dos
ciclos hidrólogos que podem inferir na alteração dos parâmetros físico-químico e metais
da agua de um reservatório. Por exemplo, a Figura 4 mostra o nível de agua à montante
operacionalizado do reservatório da UHE de Tucuruí que e consequência do clima da
Região. Pode-se observar que o período de cheia e maior no ano de 2012, trazendo assim
uma melhor ótica sobre o impacto climático que alteram os ciclos hidrológicos em anos
distintos o que dificulta a aplicação de algoritmos de aprendizado de máquina.
Figura 4. Nível à montante da barragem em metros nos meses dos anos de
estudo
5. Conclusões
Este trabalho utilizou uma metodologia baseada em Redes Neurais Artificiais auxiliada
por mecanismos de seleção automática de modelo na classificação dos ciclos hidrológicos
que podem inferir na alteração dos parâmetros físico-químico da agua. A taxas de acerto,
sensibilidade, especificidade e medida F foram utilizadas para se verificar que a Rede
Neural Artificial teve um bom desempenho (84.9% de acerto) na classificação dos ciclos
hidrológicos em relação alteração dos parâmetros físico-químicos da agua. Isto decorre
do fato da grande variabilidade dos parâmetros físico-químicos e metais nos ciclos
hidrológicos e nas estações de amostragem, que são ecossistemas diferentes.
21
Portanto, a aplicação de algoritmos de aprendizado de máquina para abstrair
situações do mundo real leva a um novo horizonte computacional no que se refere a
predições construtivas de ciclos hidrológicos. Desta forma, vislumbra-se como trabalhos
futuros avaliar o desempenho preditivo de outros algoritmos além de RNA’s, para
trabalhar com variações sazonais que refletem na qualidade da agua, auxiliando de forma
mais objetiva e eficiente possível a administração dos recursos hídricos em um
reservatório de agua como no caso da UHE de Tucuruí.
Agradecimentos
Os autores agradecem à Centrais Elétricas do Norte do Brasil S/A por ter fornecidos as
amostras de análise de agua dos sítios amostrais da Usina Hidrelétrica de Tucuruí que
possibilitou a realização da pesquisa.
Referências
Cavalcante, Y., Hauser-Davis, R., Saraiva, A., Brandao, I., Oliveira, T., and Silveira, A.
(2013). Metal and physico-chemical variations at a hydroelectric reservoir analyzed
by multivariate analyses and artificial neural networks: Environmental management
and policy/decision-making tools. Science of the Total Environment, 442:509–514.
Coletti, C., Testezlaf, R., Ribeiro, T. A., Souza, R. T. d., and Pereira, D. d. A. (2010).
Water quality index using multivariate factorial analysis. Revista Brasileira de
Engenharia Agrıcola e Ambiental, 14(5):517–522.
do Carmo Gastaldini, M., Sefrin, M. F., and Ferreira, G. F. (2002). Diagnostico atual e
previsao futura da qualidade das aguas do rio ibicuı utilizando o modelo qual2e.
Engenharia Sanitaria e Ambiental, 07:129 – 138.
Elotrobras-Eletronorte (2008). Manual do Sistema de Gestao Ambiental - UHE Tucuruí.
Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., and Witten, I. H. (2009).
The weka data mining software: an update. SIGKDD Explor. Newsl., 11:10–18.
Haykin, S. (1999). Neural Networks: A Comprehensive Foundation. Prentice Hall.
Kazi, T., Arain, M., Jamali, M., Jalbani, N., Afridi, H., Sarfraz, R., Baig, J., and Shah, A.
Q. (2009). Assessment of water quality of polluted lake using multivariate statistical
techniques: A case study. Ecotoxicology and Environmental Safety, 72(2):301–309.
Liu, W.-C. and Chen, W.-B. (2012). Prediction of water temperature in a subtropical
subalpine lake using an artificial neural network and three-dimensional circulation
models. Computers & Geosciences, 45:13–25.
Sharma, A., Naidu, M., and Sargaonkar, A. (2012). Development of computer automated
decision support system for surface water quality assessment. Computers &
Geosciences.
Tundisi, J. G. (2007). Explorac¸ao do potencial hidreletrico da amazonia. Estudos
Avanc¸ados, 21:109 – 117.
Tundisi, J. G. and Tundisi, T. M. (2008). Limnologia. Oficina de Textos, Sao
Paulo.
Wang, X.-L., Yin, Z.-J., Lv, Y.-B., and Li, S.-F. (2009). Operating rules classification
system of water supply reservoir based on learning classifier system. Expert systems
with applications, 36(3):5654–5659.
22
Witten, I. and Frank, E. (2005). Data mining: practical machine learning tools and
techniques with java implementations. Morgan Kaufmann.
23
Aplicação do Artificial Bee Colony em Funções de
Minimização Não Restritivas
Marco Antônio Florenzano Mollinetti1, Otávio Noura Teixeira1
1
Laboratório de Computação Natural (LCN) – Centro Universitário do Estado do Pará
(CESUPA) – Belém, PA – Brazil
[email protected], [email protected]
Abstract. The following article refers to the efficiency and quality of a
biologically inspired algorithm, the Artificial Bee Colony. This algorithm was
inspired by the exploitative feature that is observed in a bee hive. The algorithm
is explained it is gauged its capacity of solving mathematical optimization
functions that were made for means of measuring the quality of the algorithm.
This paper presents four different benchmark functions which are solved by the
algorithm, thus proving its ability of solving many complex problems.
Resumo. O artigo a seguir aborda a eficiência e qualidade do algoritmo
inspirado no caráter exploratório de uma colmeia de abelhas, o Artificial Bee
Colony, explicitando-o e testando a sua eficiência ao resolver funções de
otimização matemática que possuem como finalidade a medição da qualidade
do algoritmo. Este artigo apresenta quatro diferentes funções de benchmark
nas quais o algoritmo é sujeitado a testes, assim provando a sua capacidade de
resolver problemas complexos.
1. Introdução
Diferentes algoritmos com o objetivo de resolver problemas classificados como NP-Hard
foram propostos por diferentes pesquisadores e cientistas ao decorrer do tempo. Este
artigo aborda a proposta de algoritmo elaborado por Karaboga (2005), o Artificial Bee
Colony Algorithm, que consiste em um algoritmo inspirado no caráter exploratório de
abelhas produtoras de mel que procuram novas fontes de néctar a fim de garantir a
sobrevivência da sua colônia. Vários trabalhos utilizando este algoritmo estão presentes
foram publicados ao decorrer do tempo. Pode-se citar o trabalho de Karaboga e Ozturk
(2009), que utilizaram o ABC para treinar uma rede neural; e também, outro trabalho
feito por Karaboga e Bazturk (2007), que empregaram o ABC para resolver o cálculo de
uma viga de aço.
Na seção 2, é abordado o embasamento teórico do ABC, evidenciando a sua
origem, comparando o algoritmo com o comportamento de abelhas encontradas na
natureza, e citando outros algoritmos que também se inspiram em colônias de abelhas que
possuem diferentes abordagens. A seção 3 detalha testes utilizados com funções de
medição de eficiência utilizando o ABC; enquanto que a seção 4 contém os resultados de
todos os testes realizados. Finalmente, a seção 5 conclui o trabalho e expõe trabalhos
futuros para este algoritmo.
2. Embasamento Teórico
De acordo com Karaboga (2005), o ABC seguiu o modelo mínimo do processo de
forragem de abelhas que leva a emergência de uma inteligência coletiva: A presença de
24
fontes de alimento; a presença de abelhas empregadas e desempregadas; o
comportamento destes dois tipos de abelha ao recrutar novas abelhas para uma fonte de
néctar e o abandono de uma fonte. (Karaboga, 2005). Esse conceito possui base conceitual
na tese exposta no trabalho de Tereshko e Loengarov (2005), que propõem através de um
modelo matemático, todo o processo de forragem das abelhas.
No entanto, para o ABC, nenhuma das funções cinéticas para os diferentes tipos
de abelha foi utilizado, e nem se considera a presença de uma colmeia central de onde as
abelhas realizam ciclos rotatórios. Em suma, a principal ideia retirada do trabalho de
Tereshko e Loengarov (2005) que se utilizou no algoritmo fora a classificação e função
de cada abelha, e a organização dos ciclos de cada tipo de abelha.
2.1. Comportamento de abelhas reais
Para o modelo comportamental de abelhas encontradas na natureza, é encontrado os
seguintes elementos: A presença de fontes de alimentos, onde Seeley (1995) determina
que cada fonte é selecionada pelas abelhas de acordo com a sua qualidade, e este valor
depende de vários fatores, como a proximidade da colmeia, o seu grau de concentração
de néctar e a facilidade de extrair este mesmo néctar; A presença de abelhas empregadas,
que é associada à fonte de néctar que está atualmente explorando, Seeley (1995) explica
que estas abelhas possuem em sua memória a localização exata desta fonte e a distância
desta fonte até a colmeia; Por fim, há a presença de abelhas desempregadas, na qual essas
abelhas ainda estão procurando por uma fonte para ser explorada. De acordo com Seeley
(1995), há dois tipos de abelhas desempregadas: as exploradoras, que estão explorando o
ambiente ao redor da colmeia para achar novas fontes; e as abelhas espectadoras, que
permanecem na colmeia e tentam estabelecer a posição de uma nova fonte de néctar
através da informação trazida pelas abelhas empregadas. Tereshko e Loengarov (2005) e
Karaboga (2005) dizem que o número de abelhas exploradoras deve ser de 5% a 10% do
total de abelhas de uma colmeia.
O motivo pelo qual abelhas conseguem encontrar várias fontes se deve ao fato de
que elas se comunicam e trocam informações através de uma dança realizada em um
espaço reservado da colmeia, aonde cada abelha empregada realiza-a para indicar a
posição e a qualidade da fonte que achou (Karaboga, 2005). Através desta dança,
informações de várias fontes são dispostas às abelhas espectadoras, assim possibilitandoas escolher uma fonte e empregar-se nesta (Seeley, 1995). Vale ressaltar que as abelhas
exploradoras compartilham suas informações com uma probabilidade proporcional a
viabilidade da fonte de alimento, então uma fonte que possui melhor qualidade será
mostrada através de uma dança mais longa, culminando no fato de que a taxa de
recrutamento de abelhas espectadoras é proporcional à viabilidade de dada fonte
(Tereshko e Loengarov, 2005).
2.2. O ABC
O Artificial Bee Colony, proposto por Karaboga (2005), é classificado como um algoritmo
bioinspirado seguindo a classificação de Binitha e Sathya (2012), que classificaram
algoritmos bioinspirados como uma heurística que imita a estratégia da natureza capaz de
resolver problemas tanto entre os seres vivos, quanto problemas moleculares. Assim
sendo, muitos processos biológicos podem ser fundamentados como processos de uma
otimização com fronteiras, sendo este, o comportamento exploratório de abelhas
produtoras de mel.
25
O algoritmo é separado em quatro grandes etapas, vale lembrar que excluindo a
primeira etapa, as outras etapas serão repetidas até que se alcance uma condição de
parada. As etapas são: a etapa de inicialização da população, em que cada fonte de néctar
é inicializada de maneira aleatória e cada abelha é designada como exploradora,
espectadora ou empregada; a etapa de envio das abelha empregadas, aonde cada abelha
empregada irá explorar as redondezas da fonte de néctar onde foi designada e irá aplicar
um processo guloso para poder encontrar uma melhor fonte de néctar, para em seguida
calcular a probabilidade de escolha de cada fonte atualizada de néctar; o ciclo de envio
das abelhas espectadoras, aonde essas abelhas irão selecionar uma fonte de néctar de
acordo com a sua porcentagem de escolha e aplicar, assim como as abelhas exploradoras,
um processo guloso para poder tentar encontrar fontes com maior qualidade na vizinhança
da fonte escolhida; e finalmente, o ciclo de abelhas exploradoras, em que abelhas
exploradoras serão enviadas para procurar novas fontes de néctar caso alguma fonte sofra
estagnamento.
O Artificial Bee Colony se comporta de acordo com o pseudocódigo encontrando na
Figura 1:
Passo1: Inicializar parâmetros.
(a)Inicializar população.
(b)Inicializar abelhas.
Passo2: Enviar as abelhas empregadas as fontes de alimentos e
determinar a qualidade de néctar.
Passo3: Calcular o valor de probabilidade de cada fontes de
alimento a ser escolhida pelas abelhas espectadoras.
Passo4: Enviar as abelhar espectadoras para as fontes de
alimento e determinar o valor de néctar de cada uma.
Passo5: Parar o processo de exploração de fontes exauridas
pelas abelhas.
Passo6: Enviar as abelhas exploradoras para descobrir novas
fontes de néctar aleatoriamente.
Passo7: Memorizar a melhor fonte de néctar até o presente
momento.
Passo8: Repetir passos 2 a 7 até que se atinja a condição de
parada.
Figura 1. Pseudocódigo para o ABC
2.3. Etapa de Inicialização
Para a Etapa de Inicialização, considera-se uma população P, de número SN soluções.
Estas soluções são representadas por fontes de néctar, e cada solução, chamada de xi por
Karaboga e Akay (2009) é composta de um arranjo D-dimensional de variáveis que se
deseja otimizar. Cada fonte de néctar pode ser inicializada pela função mostrada por
Karaboga (2009):
𝑥𝑚𝑖 = 𝑙𝑖 + 𝑟𝑎𝑛𝑑(0, 1) ∗ (𝑢𝑖 −𝑙𝑖 )
26
(1)
Em que ui é o limite superior da dimensão 𝑖, e li é o limite inferior da dimensão
𝑖. Ressalva-se que as fontes de néctar também podem utilizar qualquer outro tipo de
função de inicialização, como por exemplo, uma variável uniformemente distribuída
dentro do intervalo [ui , li].
2.4. Etapa de Abelhas Empregadas
Abelhas empregadas irão procurar na vizinhança da fonte 𝑥𝑚 armazenadas em sua
memoria, uma nova fonte de néctar 𝑣𝑚𝑖 através de sua percepção visual, assim dito por
Karaboga (2009), este evento se caracteriza pela função 2.
𝑣𝑚𝑖 = 𝑥𝑚𝑖 + 𝜑𝑚𝑖 (𝑥𝑚𝑖 − 𝑥𝑘𝑖 )
(2)
Aonde xk é uma fonte de néctar aleatoriamente selecionada, i é um indice de
parâmetro randomicamente selecionado, e ϕ é um número aleatório no intervalo [-,  ].
Após isto, calcula-se a qualidade da solução vmi, e, se esta se prova melhor que a solução
xmi, adota-se a solução vmi como nova fonte, senão continua-se com o valor de xmi.
Karaboga(2011), classifica a equação 3, como alternativa ótima para aplicar na
função de avaliação a fim de calcular problemas de minimizações:
𝑓𝑖𝑡𝑚 (𝑥
⃗⃗⃗⃗⃗𝑚 ) = {
1
⃗⃗⃗⃗⃗⃗
1+ 𝑓𝑚 (𝑥
𝑚)
𝑠𝑒 𝑓𝑚 (𝑥
⃗⃗⃗⃗⃗𝑚 ) ≥ 0
}
(3)
1 + 𝑎𝑏𝑠(𝑓𝑚 (𝑥
⃗⃗⃗⃗⃗𝑚 )) 𝑠𝑒 𝑓𝑚 (𝑥
⃗⃗⃗⃗⃗𝑚 ) < 0
2.5. Etapa de Abelhas Espectadoras
Abelhas empregadas irão compartilhar de seu conhecimento sobre a fonte armazenada
em sua memorai através de uma dança agitada para que as abelhas espectadoras possam
ser recrutadas para tentar melhorar a qualidade das fontes alvo (Ozturk e Karaboga,
2009). No algoritmo, isto é representado por (4), aonde se extrai a probabilidade da fonte
ser escolhida.
𝑝𝑚 =
⃗⃗⃗⃗⃗⃗
𝑓𝑖𝑡𝑚 (𝑥
𝑚)
∑𝑆𝑁
⃗⃗⃗⃗⃗⃗
𝑓𝑖𝑡
𝑚 (𝑥
𝑚)
𝑚=1
(4)
Após a fonte 𝑥𝑚 for escolhida probabilisticamente, utiliza-se (2) para determinar
uma nova fonte. A sua qualidade é calculada, e, se for melhor que o antigo valor, esta
nova fonte passa a ser a fonte alvo de abelhas exploradoras.
2.6. Etapa de Abelhas Exploradoras
Abelhas que procuram novas fontes de néctar aleatoriamente no espaço de busca são
chamadas de abelhas exploradoras (Tereshko e Loengarov, 2005). As abelhas
exploradoras só irão procurar por novas fontes de néctar quando uma fonte estagnar. Essa
estagnação é caracterizada no algoritmo pela variável LIMITE. Esta variável consiste em
um limite de quantos ciclos uma fonte de néctar pode passar sem melhorar o seu valor.
Caso uma fonte extrapole a o valor limite, apenas uma abelha exploradora (Karaboga,
2005) é enviada para mudar o valor desta colônia improdutiva. Caso haja mais do que
uma fonte de néctar que necessite ser mudada em um mesmo ciclo, será escolhido a fonte
que possui menor valor como fonte a ser modificada (Karaboga, 2005). A função para
procurar novas fontes aleatoriamente se dá por (1).
2.7. Condição de Parada
27
De acordo com Karaboga (2010), o algoritmo seguirá o seu ciclo até que atinja um dos
dois critérios de parada: o algoritmo atinja o número limite MCN de ciclos; o algoritmo
já tenha alcançado o seu aparente ótimo global e não apresenta mais nenhuma melhora
por um número fixo de ciclos.
3. Testes
A qualidade e eficácia de procedimentos de otimização são usualmente medidas por
funções de avaliações que se apresentam comuns na literatura, vale lembrar que todas
estas funções são continuas, de acordo com Jamil et al. (2013). Ademais, tais funções,
como dito por Molga e Smutnicki (2005), podem se comportar de diferentes maneiras:
unimodais, convexas e multidimensionais; multimodais, duas dimensões com um
pequeno número de extremos locais; multimodais, duas dimensões com um grande
número de extremos locais; multimodais, multidimensionais, com um grande número de
extremos locais.
Portanto, a fim de se medir a eficácia do algoritmo na resolução de problemas de
otimização matemática em funções de minimização unimodais e multimodais que não
possuam nenhuma restrição, aplicou-se seis funções de benchmark para este algoritmo.
4. Resultados
Para realizar os testes utilizando as quatro funções de benchmark, testou-se cada função
30 vezes, e foram adotados como parâmetros, uma população de 20 fontes de néctar, com
20 abelhas empregadas, 10 abelhas espectadoras e 1 abelhas exploradora. Ressalva-se
também que definiu-se 1000 ciclos de iteração, e o valor adotado para a variável LIMITE
foi do dobro da quantidade de abelhas espectadoras.
De acordo com a Tabela 1, considerou-se o melhor valor do melhor resultado,
como Melhor; o melhor valor do pior resultado é denominado Pior; Média é tratada como
a média de todos os melhores valores, e o desvio padrão estatístico dos melhores valores,
como Desvio Padrão. É importante frisar que qualquer valor menor que 10−6 foi
arredondado para zero a fim de facilitar a interpretação de dados.
Tabela 1. Resultados estatísticos obtidos pelo ABC.
Função
𝑛
Ótimo
Intervalo
Melhor
Pior
Média
Desvio Padrão
De Jong
30
0
[-5,12, 5,12]
0
0
0
0
Hiper Elipsóide
30
0
[-5,12, 5,12]
0
0.000014
6.5e-06
4.67262e-06
Goldstein-Price
2
3
[-2 , 2]
3
3
3
3
Rastrigin
2
0
[-5,12, 5,12]
0
0
0
0
5. Conclusão
De acordo com os resultados apresentados pode-se constatar que o algoritmo possui a
capacidade para resolver problemas de otimização tanto unimodais quanto multimodais,
28
sendo estes problemas sem restrições. Observa-se também que o algoritmo é capaz de
encontrar soluções ótimas em um número pequeno de iterações.
Posteriormente, pretende-se realizar testes com o algoritmo para funções
restritivas, como por exemplo, funções de engenharia como o cálculo da largura de uma
viga de aço, ou o valor da pressão em um vaso de pressão. Tais funções irão servir como
um melhor critério de testes para o ABC.
Referências
Goldstein, A. A; Price, J. F. (1971) “On Descent from Local Minima,” Mathematics and
Computation, vol.25, no.115, pp. 569-574.
Jamil, M.; Yang, X. (2013) “A Literature Survey of Benchmark Functions For Global
Optimization Problems”, Int. Journal of Mathematical Modelling and Numerical
Optimisation, Vol. 4, No.2, pp.150-194
Karaboga, D, (2005). An idea based on honey bee swarm for numerical optimization.
Technical Report TR06, Erciyes University, Engineering Faculty, Computer
Engineering Department, 2005.
Karaboga D., Basturk B. (2007), Artificial bee colony (ABC) optimization algorithm for
solving constrained optimization problems, Advances in Soft Computing: Foundations
of Fuzzy Logic and Soft Computing, volume 4529/2007 of LNCS: 789-798, Springer,
Berlin.
Karaboga, D., Basturk, B., Ozturk, C. (2007), Artificial bee colony (ABC) optimization
algorithm for training feed-forward neural networks, Modeling Decisions for Artificial
Intelligence, volume 4617/2007 of LNCS: 318-319, Springer, Berlin.
Karaboga, D., Akay,B. (2009), A Comparative Study of Artificial Bee Colony Algorithm,
Applied Mathematics and Computation, 214, 108-132, Elsevier, Netherlands.
Karaboga, D., Ozturk, C. (2009), Neural Networks Training by Artificial Bee Colony
Algorithm on Pattern Classification, Neural Network World, 19 (3), 279-292, Institute
of Computer Science AS CR, v. v. i., Czech Republic.
Tereshko, V., Loengarov, A. (2005), Collective decision-making in honey bee foraging
dynamics, Computing and Information Systems, 9 (3): 1-7, University of the West of
Scotland, UK.
Molga, M.; Smutnicki, C. (2005) “Test Function for Optimization needs” disponível em
“http://www.zsd.ict.pwr.wroc.pl/files/docs/functions.pdf”. Acesso em 15 de Setembro
de 2013.
Seeley, T. D. (1995) “The Wisdom of the Hive” Harvard University Press, Cambridge,
MA,
29
Aprendizagem de Lógica e Algoritmos: Uma experiência
do PIBID com alunos do Ensino Fundamental
Raimunda Denize da S. Vieira1, Joel da C. Lobato Junior1, Tayana Cristine A.
Simões1, Decíola F. Sousa1
1
Instituto Ciberespacial– Universidade Federal Rural da Amazônia (UFRA) Caixa
Postal 917 – 66.077-530 – Belém – Pará – Brasil
{denizesv, joelcustode, tay_flowers}@yahoo.com.br,
[email protected]
Abstract. This paper describes an experience from a course offered to high
school students of a public school of the city of Belém, through a project PIBID
(Institutional Scholarship Program Initiation to Teaching) to evaluate how the
inclusion of learning logic and algorithms can improve the understanding of
disciplines such as mathematics. We sought to develop strategies to encourage
logical thinking of students as well as an active participation in class, working
with problem solving through interpretation. We used resources such as
Learning Objects to streamline and Portuguese classes structured for building
algorithms.
Resumo. Este trabalho descreve uma experiência obtida através de um curso,
ofertado para alunos do ensino fundamental de uma escola pública estadual do
município de Belém, através de um projeto do PIBID (Programa Institucional
de Bolsa de Iniciação à Docência), visando analisar como a inserção da
aprendizagem de lógica e algoritmos pode melhorar a compreensão de
disciplinas como a matemática. Buscou-se estratégias para estimular o
desenvolvimento do raciocínio lógico nos alunos bem como a participação de
forma ativa nas aulas, trabalhando com resolução de problemas através de
interpretação. Utilizou-se recursos como Objetos de Aprendizagem para
dinamizar as aulas e o português estruturado para a construção de algoritmos.
1. Introdução
Os instrumentos tecnológicos se desenvolvem e se diversificam rapidamente, e vem se
impondo cada vez mais na vida cotidiana das pessoas, seja num simples acesso à internet
para realizar uma pesquisa, seja em transação bancária, etc. No âmbito educacional,
ensinar e aprender utilizando tecnologias computacionais torna-se importante tanto para
alunos como para os profissionais da educação. Neste sentido, a tecnologia deve ser um
instrumento enriquecedor para o ambiente educacional, incentivando a construção do
conhecimento ao sujeito de forma crítica e criativa por parte dos sujeitos (BETTEGA,
2004).
A computação pode possibilitar a criação de outros métodos de ensino
aprendizagem e o aperfeiçoamento dos já existentes. Nessa perspectiva, a inserção do
ensino de lógica e algoritmos no ensino básico se justifica por utilizar as Tecnologias da
Informação e Comunicação como recursos pedagógicos no fortalecimento do processo
ensino-aprendizagem e também, para permitir a inclusão digital e social dos alunos da
Escola Pública.
30
Dessa forma, o computador é utilizado neste trabalho, não como uma “máquina
de ensinar”, mas como uma ferramenta na qual o aluno poderá interagir e produzir
conhecimento. Para Valente (1993, p. 13) “o computador não é mais o instrumento que
ensina o aprendiz, mas a ferramenta com a qual o aluno desenvolve algo, e, portanto, o
aprendizado ocorre pelo fato de estar executando uma tarefa por intermédio do
computador”. Neste sentido, o contato do aluno com o computador é para a produção de
algoritmos através de uma pseudolinguagem de programação, exercitando o raciocínio
lógico, através da resolução de problemas.
As dificuldades advindas da educação básica muitas vezes refletem no ensino
superior, ao passo que muitos alunos acabam enfrentando problemas na compreensão de
algumas disciplinas dos cursos de computação e áreas afins. Tal problema pode ser
observado principalmente nas disciplinas de programação e algoritmos, pois requer do
aluno o raciocínio lógico para a resolução de problemas. Dessa forma, Said (2007, p. 10)
destaca que:
Quando elaboramos um programa de computador, queremos ensinar a
máquina a resolver um problema, e a eletrônica permite que a máquina
chegue a uma resposta de maneira mais rápida e mais precisa do que nós. No
entanto, como um programador poderá escrever um programa se ele mesmo
não conhece a solução? Assim, a resolução de problema é uma etapa que
antecede a programação em si.
O autor reforça a ideia de o sujeito saber pensar e usar o raciocínio lógico antes
de tentar solucionar qualquer problema, principalmente quando se trata do computador,
pois este é uma máquina que segue comandos e requer instruções exatas para obter o
funcionamento correto de um programa.
Devido ao alto índice de dificuldades que alguns alunos dos cursos superiores
encontram para compreender as disciplinas voltadas à programação de computadores,
ofertou-se aos alunos do ensino fundamental de uma escola pública estadual do município
de Belém, um curso de lógica e introdução de algoritmos de programação, trabalhando
com Objetos de Aprendizagem e o português estruturado no decorrer das aulas.
O curso é parte do PIBID1 e tem como órgão de fomento a CAPES2 em parceria
com Universidade Federal Rural da Amazônia (UFRA). Segundo Brasil (2007), o PIBID
foi criado pela CAPES em 2007, sendo este um programa de incentivo para iniciação à
docência. O programa PIBID é voltado para estudantes de instituições públicas de ensino
superior, visando o aperfeiçoamento e a valorização da formação de professores para a
educação básica.
A escola é o local ideal para a implantação de projetos educacionais na área da
computação, pois proporciona a formação e a informação aos indivíduos, desenvolvendo
capacidades que propiciam não somente a compreensão da realidade e do contexto social
que os cercam, mas também, a própria intervenção nessa realidade. Neste sentido, o
computador deve ser uma ferramenta que visa auxiliar professores e alunos na construção
de novos conhecimentos.
1
Programa Institucional de Bolsa de Iniciação à Docência
2
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior
31
Papert (2008, p. 9) afirma que “o computador é importante para dar autonomia
intelectual ao aprendiz a partir dos primeiros anos de escolarização e, assim, tornar a
criança menos dependente de adultos como provedores de informação”. Se o indivíduo
apender a ser independente desde sua infância, este terá a capacidade de assimilar novas
habilidades com mais facilidade.
O Objetivo principal deste trabalho é analisar de forma comparativa os resultados
obtidos no decorrer do curso ofertado para alunos do ensino fundamental de uma escola
pública estadual do município de Belém, através de um projeto do PIBID (Programa
Institucional de Bolsa de Iniciação à Docência), relacionando de que forma a inserção do
ensino de lógica e algoritmo de programação pode estimular os alunos em disciplinas
como a matemática, descrevendo o projeto promovido com alunos do ensino fundamental
(9º ano) que trata do raciocínio lógico e do desenvolvimento de algoritmos através da
utilização do computador.
Durante as pesquisas realizadas, alguns artigos relacionados ao tema da lógica de
programação na educação básica chamaram a atenção dos bolsistas, pois os mesmos
destacam as dificuldades de se aprender algoritmo e programação quando se adentra o
ensino superior, bem como apresentam propostas de intervenção com oficinas ou cursos
ministrados para alunos.
Marques, Costa, Silva e Rebouças (2011) relatam sobre o alto índice de evasão
nos cursos superiores de computação, além das reprovações em disciplinas que envolvem
programação. Para atrair alunos do ensino médio para a área de computação foi proposta
uma oficina para ensinar programação tendo como motivação o desenvolvimento de
jogos com a linguagem Python, com duração de dezesseis horas. Essa oficina ofertou
vinte e cinco vagas, porém apenas dezesseis participantes concluíam. Dos alunos que
concluíram, nove demonstraram interesse em tentar vestibular para uma das áreas da
computação.
Pereira Junior, Rapkiewicz, Delgado e Xexeo (2005) destacam que entre as
competências mais difíceis de serem desenvolvidas estão o desenvolvimento de
algoritmos e programas, sendo esta uma forte motivação para incluir essa temática no
ensino médio, e talvez, dessa forma, os futuros alunos dos cursos de computação podem
apresentar menor dificuldade nessa área. Neste contexto, foi desenvolvida uma “Oficina
de Lógica de Programação” realizada em uma escola do Rio de Janeiro com alunos do
segundo ano do ensino médio, com carga horária de trinta e seis horas e dezesseis vagas
ofertadas.
O curso apresentou uma proposta interessante, pois antes de ensinar programação
o autor apresentou problemáticas de raciocínio lógico para os alunos tentarem solucionar,
bem como utilizou jogos de raciocínio lógico para tornar a aprendizagem mais lúdica,
estimulando os alunos no desenvolvimento das tarefas e desenvolvendo o raciocínio
lógico. Posteriormente, o curso abordou a parte conceitual e construção de algoritmos
utilizando a linguagem Pascal. Apesar de a oficina apresentar uma boa proposta, apenas
cinco alunos concluíram e apresentaram interesse em ingressar no ensino superior nas
áreas da computação (PEREIRA JUNIOR, RAPKIEWICZ, DELGADO e XEXEO,
2005).
O trabalho proposto pela equipe do PIBID na escola inspirou-se nas ideias dos
trabalhos apresentados acima, mas com foco no raciocínio lógico. No primeiro momento
com a utilização de Objetos de Aprendizagem e no segundo momento adaptado para a
32
utilização do Portugol, por ser uma pseudolinguagem que apresenta facilidade na
utilização.
1.1. Desenvolvimento do raciocínio lógico
O construtivismo de Jean Piaget (1896-1980), dentre as diversas teorias de aprendizagem
existentes na contemporaneidade, vem se difundindo e sendo aplicado cada vez mais, em
especial nos processos metodológicos e em alguns ambientes de aprendizagem auxiliados
pelo computador.
O estágio das operações formais dentre as fases de desenvolvimento de Piaget é
o que melhor se encaixa neste trabalho, pois é a partir desse período que os adolescentes
desenvolvem na prática o raciocínio lógico-matemático. Neste estágio o adolescente
consegue diferenciar relações concretas e abstratas, conseguindo testar hipóteses.
Conforme destaca Goulart (2011, p. 26) “a característica essencial desse estágio é a
capacidade de distinguir entre o real e o possível”. Nesta fase de desenvolvimento, o
adolescente é capaz de prever e analisar várias relações que podem ser válidas para a
solução de um problema.
Entretanto, Papert (2008), destaca que não é usando uma regra que se soluciona
um problema, mas pensando sobre o problema é que se promove a aprendizagem. Neste
contexto, não se deve supervalorizar o abstrato, mas buscar metodologias que
possibilitem fazer analogias com situações concretas sobre o problema.
Quando se pensa em trabalhar com o contexto escolar, principalmente na
educação básica, dificilmente apenas um tipo de teoria de aprendizagem pode ser
preconizada, pois isso depende do ambiente em que se está inserido e do tipo de conteúdo
que se pretende trabalhar. Neste sentido, outra metodologia foi adotada no decorrer do
trabalho, a Aprendizagem Baseada em Problemas (ABP), pois é uma metodologia de
ensino e aprendizagem que motiva os alunos a buscarem soluções de problemas através
da utilização de pesquisa, bem como desenvolver o raciocínio lógico do estudante.
Sousa (2011, p. 8), “considera que o conhecimento não é absoluto, mas construído
a partir do conhecimento prévio e da visão do mundo de cada indivíduo”, considerando
que o aluno pode relacionar o que está aprendendo com algo que já faz parte de seu
conhecimento, tornando-se relevante dessa forma para a formulação e teste de hipóteses
na resolução de problemas.
Antunes (2012, p. 16), ressalta que é importante desenvolver nos alunos o
raciocínio lógico, a capacidade de compreensão, o pensamento dedutivo e intuitivo e a
memória, bem como “motivá-los a desenvolver sua vontade de aprender e querer saber
mais e melhor”. Dessa forma, deve-se estimular no aluno a capacidade de pesquisar e
buscar pelo conhecimento.
Quando se utiliza a programação, uma das maiores exigências é que a pessoa
consiga trabalhar o raciocínio lógico, pois na construção de um programa, independente
da linguagem de programação utilizada, o raciocínio atua de maneira direta. Do ponto de
vista de Said (2007) e Forbellone e Eberspacher (2005), a lógica de programação seria a
utilização correta do pensamento nos processos de raciocínio e simbolização formal da
programação de computadores, como os algoritmos.
O Português estruturado é uma maneira de facilitar a compreensão de algoritmos,
tornando a construção mais simples para os alunos. Segundo Carboni (2003), o Português
33
estruturado é uma forma de representação de algoritmos considerada uma
pseudolinguagem e pode ser conhecido também como pseudocódigo como, o Portugol,
por exemplo, representando a lógica na solução de problemas.
O Portugol é uma peseudolinguagem simples, isso faz com que um sujeito que
está em fase inicial de aprendizagem de lógica de programação compreenda com mais
facilidade, análogo a uma linguagem mais rica em detalhes como “C”, por exemplo.
Contudo, para se criar um algoritmo, algo importante que se deve ter em mente é a
informação, sendo essa a matéria-prima indispensável.
2. Métodos
O método aplicado a este trabalho é baseado em pesquisa bibliográfica e pesquisa de
campo, com a utilização de testes avaliativos de rendimento , com o objetivo de se obter
informações para a comprovação ou não da hipótese a respeito das possíveis melhorias
que o curso “Desenvolvendo o Raciocínio Lógico - Introdução à Lógica e Algoritmos de
Programação”, ofertado pelo Programa PIBID em uma escola estadual localizada no
município de Belém, poderia suscitar nos alunos que fizeram parte desta experiência de
ensino.
A pesquisa realizada foi do tipo exploratória com características quantitativas,
onde a análise dos dados obtidos através de testes de desempenho dos alunos durante o
curso foram utilizadas para o teste de hipótese. Os testes de desempenho foram utilizados
para comparar as possíveis melhorias na disciplina de matemática e na resolução de
problemas lógicos que necessitam de reflexão por parte dos alunos.
A execução do projeto foi realizada integralmente no laboratório de informática
da escola, o curso foi planejado para quarenta horas, ofertado de segunda à sexta feira,
com duração de quatro horas aula ao dia no horário das aulas regulares.
Foram disponibilizadas quarenta vagas para o curso, na qual uma turma de trinta
e três alunos do nono ano (antiga oitava série) do ensino fundamental se inscreveu. A
idade média dos alunos foi de quatorze anos, sendo a menor idade treze e a maior
registrada foi de dezesseis anos.
Nas aulas, buscou-se incentivar o aluno a pensar em soluções para as
problemáticas sugeridas, dando a liberdade de trabalhar individualmente ou em grupo.
Nessa perspectiva os bolsistas agiam como facilitadores, oportunizando ao aluno a
autonomia no processo de aprendizagem, mas sem deixar de mediar quando houve
necessidade.
Utilizou-se Datashow, computador, materiais impressos e buscou-se dinamizar o
andamento das aulas utilizando recursos como Objetos de Aprendizagem (OA) do tipo
“jogo” de maneira lúdica e divertida, não deixando de lado os objetivos propostos. Além
do software Portugol, que trabalha algoritmo de programação em português estruturado.
Para motivar a participação dos alunos nas aulas os bolsistas os desafiavam a
solucionar problemas individualmente ou em grupo e socializar posteriormente com a
turma como o problema foi solucionado, que caminhos foram seguidos e as dificuldades
encontradas.
34
Os bolsistas utilizaram listas de exercícios impressos, porém observou-se que era
necessário tornar as aulas mais dinâmicas com atividades lúdicas. Para isso, foram
selecionados alguns OA para atividades utilizando o computador e a internet.
Os OA O Lobo, a Ovelha e a Couve (Figura 1), Torre de Hanói (Figura 2),
Missionários versus Canibais (Figura 3) e o Jogo do rio (Figura 4), foram alguns
dos OA trabalhados no decorrer do curso para estimular o raciocínio lógico dos alunos na
resolução de problemas.
Figura 1. Interface do OA "O Lobo, a Ovelha e a Couve". Fonte:
http://rachacuca.com.br/jogos/o-lobo-e-a-ovelha/
Figura 2. Interface do OA Torre de Hanói. Fonte:
http://www.somatematica.com.br/jogos/hanoi
Figura 3. Interface do OA Missionários versus Canibais. Fonte:
http://www.plastelina.net
Figura 4. Recorte da interface do Jogo do Rio. Fonte:
http://www.njogos.pt/travessia.html
35
Para potencializar e dinamizar a aprendizagem, tornando-a lúdica, os OA foram
propostos nesta intervenção para demostrar aos alunos que os conteúdos abordados no
curso se aplicam a uma multiplicidade de problemas, sejam estes matemáticos, lógicos
ou mesmo ao seu cotidiano, pois o uso da lógica é um tema transversal.
O conteúdo de algoritmo contemplou comandos básicos de entrada, saída e
atribuição, conceito de bloco de comandos, estruturas de controle e estruturas
condicionais. Os desafios propostos aos alunos no decorrer das aulas de algoritmos
implicavam não apenas nas construções, mas como isso acontecia, pois as questões
deveriam ser pensadas e analisadas, após isso eram criados os algoritmos no papel e
posteriormente eram digitados e testados no Portugol. Uma das atividades era para
construir um algoritmo para ler três notas, calcular a média aritmética e mostrar o
resultado.
No início, os alunos apresentaram algumas dificuldades relacionadas à abstração
de informações e como organizá-las formalmente para construir o algoritmo, contudo,
depois que compreendiam a lógica que permeava a questão, ficava mais fácil a resolução.
Segundo Antunes (2012), uma forma inteligente para a aprendizagem do aluno é quando
este cria soluções que exigem uma visão sistêmica dos fatos, utilizando saberes prévios,
bem como análise de hipóteses em diversas atividades de reflexão.
3. Resultados
Dos trinta e três alunos que efetuaram a inscrição no curso, contabilizaram-se vinte e nove
concluintes, ou seja, estudantes que obtiveram frequência maior ou igual a 75% no curso,
desses, apenas vinte alunos participaram do primeiro e segundo teste de matemática, o
que equivale a 69% dos alunos frequentes no curso e dezenove participaram das
atividades que serviram de base para comparação de rendimento nos testes de lógica e
algoritmo, ou seja, 66% dos alunos. Apenas um aluno que participou dos testes de
matemática não realizou as avaliações de rendimento de lógica e algoritmo.
As avaliações de rendimento referentes aos conhecimentos básicos de matemática
foram elaboradas pela professora coordenadora da IES participante do PIBID e corrigidas
pelos bolsistas, a partir dos gabaritos disponibilizados previamente. Os dados
apresentados a seguir refletem apenas os resultados obtidos pelos vinte alunos que
participaram integralmente das atividades de avaliação de matemática, e os dezenove
alunos que participaram das atividades de raciocínio lógico e algoritmo. Para as análises,
com o objetivo de preservar a identidade do aluno quando utilizar-se um objeto da
amostra, este será mencionado com uma referência, que irá de A1 a A20.
Foram aplicados dois testes de Matemática, contendo vinte questões em cada,
onde dez abordavam o tema de operações fundamentais, cinco sobre frações e cinco
relacionadas a expressões aritméticas. A Figura 5 apresenta o resultado da comparação
do total de acertos nos dois testes aplicados com os alunos.
36
Figura 5. Comparativo do total de acertos de todos os alunos nos testes de
Matemática
Analisando o número total de acertos na Figura 5, pode-se observar que onze
alunos obtiveram melhorias em seu desempenho matemático, variando de um a cinco
pontos de diferença entre o primeiro e o segundo teste, dois obtiveram o mesmo número
de acertos e sete alunos apresentaram decréscimo em relação ao primeiro teste, esse
decréscimo variou ente um a quatro pontos. Observando os alunos que não obtiveram
resultados negativos no segundo momento do teste matemático, temos um percentual de
65% com desempenho considerado positivo, isso indica que houve melhoria dos alunos
quando se compara momentos distintos do curso (antes e depois).
As avaliações do desempenho no raciocínio lógico baseadas em questões
lógicodiscursivas que trabalharam a capacidade de síntese, leitura de dados, análise,
inferência e atenção, tiveram como objetivo analisar a capacidade de interpretação e o
potencial de resolução de problemas envolvendo o raciocínio lógico do aluno. O total foi
de cinco questões em cada teste selecionadas pelos bolsistas do PIBID, consideradas por
estes de níveis fácil, intermediário e difícil. A Figura 6 ilustra as diferenças das notas em
comparação ao total de questões de raciocínio lógico.
Figura 6. Comparação do número de acertos do primeiro e o segundo teste de
desempenho do raciocínio lógico por aluno
37
Nos testes de raciocínio lógico os alunos apresentaram uma média de acertos igual
a três. Observa-se que no primeiro teste os alunos A6 e A11 apresentam as menores notas
em relação aos demais, contudo, no segundo teste ambos obtiveram melhor rendimento.
Entretanto, se comparar os resultados do primeiro e do segundo teste, nota-se que houve
decréscimo na pontuação de dez alunos, o que equivale 53% de decréscimo no segundo
teste, o que não quer dizer que o primeiro teste seja considerado inferior ao segundo.
Ressalta-se que as questões do segundo teste exigiram uma interpretação mais
detalhada, pois o teste foi aplicado ao final do curso. Não houve repetição de questões em
ambos os testes. Pode-se citar algumas perguntas utilizadas nos testes como: “Ao longo
de uma estrada há quatro aldeias seguidas: os vermelhos vivem ao lado dos verdes, mas
não dos cinzas; os azuis não vivem ao lados dos cinzas. Que são os vizinhos dos cinzas?”,
“De quatro corredores de atletismo sabe-se que Célio chegou imediatamente atrás de
Beto, e Davi chegou no meio de Arnaldo e Célio. Qual a ordem de chegada?”, “Se Clara
fala mais baixo que Ana, e Rosa fala mais alto Ana, Clara fala mais alto ou mais baixo
que Rosa”.
Apesar da melhoria em relação ao desenvolvimento matemático, é necessário
analisar de forma crítica, para não engrandecer os resultados e com isso, criar falsas
expectativas em relação à inserção da lógica no ensino fundamental, pois o espaço
amostral é reduzido, aumentando a chance de erros.
Os conhecimentos e atribuições que a temática do curso trouxe para os alunos
focaram em especial a atenção e a interpretação de problemas, pois se o aluno não
entender o problema, torna-se difícil a tomada de decisões corretas para solucioná-lo.
Aplicando esses conhecimentos na construção de algoritmos de programação, obteve-se,
através de questões práticas de programação, uma medida utilizada para comprovar a
assimilação destes conhecimentos pelos participantes do curso.
Para Valente (1993), quando o aluno apresenta a resolução de um problema
através de um programa de computador, ele tem uma descrição formal e precisa desta
resolução. Com base nisso, o aluno pode verificar suas ideias e conceitos, bem como se
existe algo errado e analisar o programa identificando a origem do erro. Contudo, tanto a
representação da solução do problema como a sua depuração são difíceis de serem
conseguidas através dos meios tradicionais de ensino.
Os testes de algoritmos foram realizados no terceiro e no último dia de aula, onde
constavam três questões de Estrutura Sequencial no primeiro teste e no segundo
acrescentou-se uma questão de Estrutura de seleção e duas de Estrutura Sequencial. O
objetivo foi avaliar a aprendizagem, e comparar o desempenho dos alunos nos dois
momentos distintos do curso. Neste contexto, os alunos solucionaram primeiramente as
questões no papel e posteriormente realizaram o teste no Portugol de acordo com a
problemática apresentada. Como demostrado na Figura 7, o resultado foi que 74% dos
alunos conseguiram resolver pelo menos duas ou mais questões em ambos os testes.
38
Figura 7. Distribuição do número de acertos nas questões referentes ao
domínio de algoritmo
Embora a ocorrência de zero tenha acontecido com os alunos A11 no segundo
teste e A13 em ambos os testes, o desempenho de 63% dos demais participantes mantevese igual ou com melhora de um ponto.
As dificuldades apresentadas pelos alunos durante o curso não ficaram distantes
das apontadas nas literaturas e frequentemente presentes no ensino superior. Podendo-se
destacar a dificuldade na descrição formal das condições lógicas em uma estrutura
sequencial ou de seleção. Foi observado inicialmente pelos bolsistas a dificuldade dos
alunos desenvolverem programas que envolviam conteúdos de matemática e a abstração
dos conteúdos introdutórios sobre linguagem de programação.
Observando a soma do número de acertos dos testes de lógica e matemática e
comparando-os, destaca-se que 58% dos alunos participantes dos testes, apresentaram
melhoras de desempenho, mesmo que mínimas ou mantiveram o mesmo desempenho na
soma dos dois testes como visualizado na Figura 8, com exceção do aluno A20, que
participou apenas dos testes de matemática.
Figura 8. Soma dos primeiros testes de matemática e lógica comparada com as
somas dos testes finais
Conforme ilustra a Figura 8, a soma dos testes de lógica e matemática nos dois
momentos do curso demonstra que maior parte dos alunos conseguiu obter melhor
39
desempenho na soma do segundo teste, apesar de oito alunos, ou seja, 42% da turma
apresentar decréscimo entre um e seis pontos na soma dos testes no último momento do
curso.
4. Considerações Finais
O artigo apresentou uma análise de forma comparativa dos resultados obtidos no decorrer
do curso de lógica e introdução de algoritmos de programação, trabalhando com Objetos
de Aprendizagem (AO) e o português estruturado no decorrer das aulas, ofertado para
alunos do 9º ano do ensino fundamental de uma escola pública estadual do município de
Belém, através de um projeto do PIBID (Programa Institucional de Bolsa de Iniciação à
Docência). Com os resultados obtidos na pesquisa e o embasamento teórico apresentado,
pôde-se inferir que as possibilidades de melhoria de desempenho devido a inserção de
estudos relacionados ao raciocínio lógico e algoritmo são reais.
As potencialidades do uso do computador e dos OA devem preconizar a
aprendizagem de maneira lúdica e transversal, visando incentivar o uso das tecnologias
para a aprendizagem autônoma mediada pelo professor. De acordo com Valente (1993,
p.25) “uma razão mais óbvia advém dos diferentes tipos de abordagens de ensino que
podem ser realizados através do computador, devido aos inúmeros programas
desenvolvidos para auxiliar o processo ensino-aprendizagem”. Dessa forma, o diferencial
do projeto do PIBID foi a possibilidade de trabalhar com a computação de maneiras
distintas.
Com base na experiência vivenciada observou-se que a comparação dos dados
obtidos através de testes de desempenho envolvendo as competências matemáticas e de
raciocínio lógico, bem como de algoritmo mostrou melhorias de rendimentos de boa parte
dos alunos, como demonstra a análise dos resultados. Somando o teste matemático com
o de raciocínio lógico do primeiro momento do curso e comparado com a soma do
segundo momento dos testes, observou-se que mais da metade dos alunos apresentaram
aumento de desempenho que variam de um a seis pontos a mais de acertos.
Os dados apontam para a comprovação da hipótese a respeito das possíveis
melhorias que o curso “Desenvolvendo o Raciocínio Lógico - Introdução à Lógica e
Algoritmos de Programação”, ofertado pelo Programa PIBID pode provocar nos alunos,
porém, é necessário que, ao mesmo tempo em que se avalia positivamente o que os
números apontam, deve-se manter a criticidade com estes mesmos dados, haja vista que
a amostra obtida na pesquisa foi reduzida, aumentando assim a possibilidade de que os
resultados obtidos não reflitam de forma fidedigna ás inferências a eles atribuídas.
Apesar da melhoria apresentada pelos sujeitos da pesquisa, deve-se levar em
consideração que se tratando de pesquisa educacional, não se pode ter controle sobre
todas as variáveis que de alguma forma podem influenciar nos resultados obtidos.
Agradecimentos
O presente trabalho foi realizado com apoio do Programa Institucional de Bolsa de
Iniciação à Docência – PIBID, da CAPES - Coordenação de Aperfeiçoamento de Pessoal
de Nível Superior - Brasil.
Referências
40
ANTUNES, C. (2012). A prática dos quatro pilares da Educação na sala de aula. 2. ed.
Petrópolis: Vozes.
BETTEGA, M. H. S. (2004). A Educação Continuada na Era Digital. São Paulo: Cortez.
BRASIL. Portaria Normativa nº 38, de 12 de dezembro de 2007 (2007). Dispõe sobre o
Programa Institucional de Bolsa de Iniciação à Docência – PIBID. Diário Oficial da
União, n. 239, seção 1, p. 39.
CARBONI, I. de F. (2003). Lógica de Programação. São Paulo: Thomson.
FORBELLONE, A. L. V.; EBERSPACHER, H. F. (2005). Lógica de programação: a
construção de algoritmos e estruturas de dados. 3. ed. São Paulo: Pearson Prentice
Hall.
GOULART, I. B. (2011). Piaget: experiências básicas para a utilização do professor. 27.
ed. Petrópolis: Vozes, 2011.
MARQUES, D. L. et al. (2007). Atraindo Alunos do Ensino Médio para a Computação:
Uma Experiência Prática de Introdução a Programação utilizando Jogos e Python. In:
Simpósio Brasileiro de Informática na Educação - XVII WIE. Anais... Aracajú. p.
1138-1147.
PAPERT, Seymour (2008). A máquina das crianças: repensando a escola na era da
informática. Trad. Sandra Costa – Ed. rev. Porto Alegre: Artmed.
PEREIRA JÚNIOR, J. C. R. et al. (2005). Ensino de Algoritmos e Programação: Uma
Experiência no Nível Médio. In: XXV Congresso da Sociedade Brasileira de
Computação - XIII WEI. Anais... São Leopoldo.
SAID, Ricardo (2007). Curso de Lógica de Programação. São Paulo: Digerati Books.
SOUSA, S. de O. (2011). Aprendizagem Baseada em Problemas (PBL – Problem-Based
Learning): estratégia para o ensino e aprendizagem de algoritmos e conteúdos
computacionais. 2011. 270 f. Dissertação (Mestrado em Educação). Faculdade de
Ciências e Tecnologia. Universidade Estadual Paulista. Presidente Prudente.
VALENTE, J. A (1993). Diferentes usos do computador na educação. In: Valente, J.A.
(org.) Computadores e Conhecimento: Repensando a Educação. Campinas: Gráfica da
UNICAMP.
41
Canal online Whua! Mix: proposta de levar informação
sobre cultura japonesa, música e tecnologia, usando a internet
como meio de comunicação
Fernanda L. C. Santos1, Alisson R. Comerlatto1, Nivio I. C. Imbiriba1, Alessandra
N. A. Barreiros1
1
Departamento de Ciência da Computação – Centro Universitário do Estado do Para
(CESUPA) Caixa Postal 66060-230 – Belém – PA – Brasil
{fernandac.santos93,comerlattoalisson,alessandra.natasha}@gmail.com
[email protected],
Abstract. This article will explain about the implementation of a communication
channel called Whua online! Mix that is focused on sharing information about
technology, culture of Para, plus music rhythms such as electronic music, pop,
rock, k-music, j-music and songs of Para regional information will be shared at
the project site, which host the online radio Whua! Mix. The main focus of the
project is to keep the population constantly updated on the topics covered, the
differential of this channel is that it was made to spread culture and content for
the public geek (English term, to determine people who are addicted to
technology).
Resumo. Este artigo ira explanar sobre a implantação de um canal de
comunicação online chamado Whua! Mix que está focado em compartilhar
informações sobre tecnologia, cultura paraense, além de ritmos musicais como:
música eletrônica, pop, rock, k-music, j-music e músicas regionais do Para. As
informações serão compartilhadas no site do projeto, o qual hospedara a rádio
online Whua! Mix. O foco principal do projeto e manter a população sempre
atualizada sobre os temas abordados, o diferencial deste canal e que ele foi
feito para disseminar cultura e conteúdo para o público geek (termo em inglês,
para determinar pessoas que são aficionadas por tecnologia).
1. Introdução
A definição de canal e “todo suporte material que veicula uma mensagem de um emissor
a um receptor, através do espaço e do tempo” [1]. Já o conceito de meio de transmissão
ou comunicação e o “canal ou cadeia de canais que liga a fonte ao receptor”, ou “sistema
(constituído por elementos físicos) onde ocorre a transmissão de mensagens” [2].
Conforme os autores explanaram a definição de canal apresenta limitações por se
associar com o fenômeno físico, sendo usualmente utilizado em três sentidos: relacionado
aos meios de expressão da informação representados pelos sentidos humanos e
capacidades sensoriais, aos processos usados para a transmissão da informação
equivalido pelos fenômenos físicos tais como ondas luminosas e sonoras e por fim aos
meios que servem de base para os fenômenos físicos evoluírem [1].
Segundo os autores, existem dois tipos de canais distintos os naturais ou
sensoriais, que são aqueles em que o homem e o receptor direto da mensagem, e os canais
artificiais ou técnicos, que são fragmentados em dois tipos, os canais espaciais que
transportam os dados de um lugar para outro e os canais temporais os quais passam uma
42
informação de uma época para outra a exemplo de fotos, filmes e fitas de áudio, ou seja,
são canais que retém as informações criadas em uma geração e levando a outras [1].
Por meio destas afirmativas, pode ser definido que Whua! Mix e um canal
artificial espacial, pois veıcula informações de um lugar a outro e ao mesmo tempo e um
meio de comunicação pois possui um site (elemento físico) o qual transmite mensagens,
assim sendo Whua! Mix e um canal de comunicação, que almeja transmitir informações
e proporcionar entretenimento aos internautas que utilizam o site.
2. Trabalhos Relacionados
A inspiração para o canal online surgiu da radio online http://www.TechnoBase.fm/ que
foca nos estilos Techno, dance, trance e house, e dos canais
http://www.TecMundo.com.br/ e http://www.TechTudo.com.br/. O diferencial do canal
Whua! Mix e que une as informações musicais tecnológicas com a rádio nativa do site.
3. Sobre o canal Whua Mix!
O projeto está sendo desenvolvido por alunos de Bacharelado em Ciência da
Computação, da instituição de ensino superior CESUPA (Centro Universitário do Para).
Teve início no mês de marco de 2013, o meio de comunicação tem sua versão beta
disponível por meio do site (http://radio.whuamix.com/).
Projetado com o intuito de levar informações sobre tecnologia, música e cultura
paraense para os internautas que o acessam, o canal Whua! Mix tem como objetivo levar
entretenimento e informações para seu público alvo, mantendo-se constantemente
atualizado. Possui uma página na rede social face book, na qual são disponibilizadas
notícias sobre a programação da semana, esse meio e também utilizado para uma
aproximação maior com o público, que por meio de postagens podem interagir com a
equipe do canal.
3.1. A rádio online
Em 1993 o norte americano Carl Malamud foi o pioneiro em usar a internet para
transmitir programas de rádio, a partir desse ano as transmissões de rádio via web se
propagaram e hoje existem rádios online por todo o planeta, além de existir web rádios
que não possuem transmissões FM (Frequência Modulada) ou/e AM (Amplitude
Modulada), usando apenas o site hospedeiro para propagar suas informações [3].
O site do canal Whua! Mix hospeda uma rádio com o mesmo nome que inclui em
sua programação entrevistas e mesas redondas com profissionais da área musical e
tecnológica da região, levando assim a rica cultura amazônica para o mundo, os dados
gerados a partir das programações com esses convidados ficam armazenados em forma
de podcasts que são arquivos de áudio, cujo download pode ser feito pelo próprio site do
canal [4].
Uma das vantagens de escolher uma rádio online para disseminar informações e
que não há limite geográfico, ou seja, a programação da Whua! Mix pode ser ouvida em
qualquer lugar do planeta com alta qualidade de áudio, além dos ouvintes poderem
interagir ao vivo com os membros da equipe por meio de um chat (serviço de troca de
mensagens).
43
A programação musical da Whua! Mix funciona nas, sextas-feiras, sábados e
domingos a partir das 18:30 até as 03:00 e possui três programas, nas sextas o “Hoje e
Dia De Rock”, aos sábados o “Sábado de Nostalgia” e aos domingos o “Dance Mix”.
3.2. O Aplicativo
Baseada no sistema operacional Linux, a plataforma Android e perfeita para dispositivos
moveis como smartphones e tablets [5]. Tendo vista que o sistema Android domina 80 %
do mercado de smartphones, segundo um levantamento realizado pela IDC [6] foi
desenvolvido um aplicativo para esse sistema, o qual usa a vantagem da portabilidade dos
dispositivos moveis, para levar a rádio Whua! Mix até os seus ouvintes de forma mais
pratica.
O aplicativo oferece uma interface simples, mas que ao mesmo tempo
proporciona ao usuário informações como o tıtulo da música que está sendo tocada e o
tempo que a mesma já foi reproduzida, além de permitir que a pessoa pause ou pare a
rádio no seu celular, como e mostrado na (Figura 1).
Figura 1. Aplicativo da Radio Whua! Mix
3.3. Interface do Usuário
A interface foi desenvolvida com o intuito de proporcionar um simples entendimento para
o usuário e ao mesmo tempo fornecer diversas informações. Por meio dela e possível
saber se a rádio está online, que música está tocando no momento, além de possuir um
atributo que possibilita o internauta aumentar e diminuir o volume do áudio.
Com interface dinâmica e intuitiva, seu template foi escolhido para melhor se
adequar ao público, com cores vibrantes e design visualmente limpo, o site proporciona
comodidade, o leitor não precisa procurar muito para achar o tema ou informação que
deseja visualizar.
A página principal ou Home apresenta as informações gerais contendo as
postagens mais recentes de cada tema abordado, além de uma seção para comentários dos
clientes do canal e um utilitário de calendário no fim da página. Ainda na página inicial
encontra-se as abas que direcionam o usuário para o tópico de sua preferência, as abas
são: Tecnologia, Favoritos, Galeria, Novidades, +Mais coma as sub-abas Cultura
44
Paraense e Mangas (literatura japonesa similar aos gibis) e por fim a aba Musica com as
sub-abas Eletronic, Pop, Rock, J-music, K-music, conforme (Figura 2).
Figura 2. Site da Radio Whua! Mix
4. O sistema
O sistema e dividido em duas partes, o canal e a rádio. O projeto será uma aplicação web
desenvolvido com base em um CMS (Content Management System) e no presente
momento se encontra na versão beta que apresenta ao usuário uma interface intuitiva e
dinâmica.
4.1. Tecnologias Utilizadas
A ferramenta Shoutcast foi utilizada para a hospedagem do servidor irá fazer a streaming,
que e a tecnologia que permite o envio de informação multimídia através de pacotes,
utilizando redes de computadores, sobretudo a Internet [7]
Para o gerenciamento da radio web foi utilizado o CentovaCast que e
especializado em rádios online, esse mecanismo e um gerenciador online para clientes de
servidores como o Shoutcast. Com ele e possível configurar a transmissão da radio, possui
suporte a` tecnologia auto Dj, que possibilita a criação de listas de músicas e a própria
ferramenta as reproduz sem necessitar de supervisiona mento humano, além de fornecer
estatísticas e relatórios como “informações sobre as tendências do ouvinte e da
demografia, transferência de dados, performances de pista e popularidade.” [8].
Para a criação e o gerenciamento do site da Whua! Mix foi utilizada a ferramenta
Wordpress. Nele você pode customizar a interface do site do jeito que você desejar.
Wordpress foi construído em Php que e uma linguagem de programação para web e
MySql que e um banco de dados utilizado junto com o PHP [9].
Por fim para o streaming de áudio e utilizado o programa Sam Broadcaster que e
especıfico para web rádios, baseado no servidor SQL firebird, suporta arquivos nos
formatos: mp3, wma, wav [10].
4.2. Características
45
O canal Whua! Mix e inovador pois foi criado na Amazônia e mistura informações que
são de utilidade pública. Além de contar com a participação de profissionais qualificados
dos temas abordados, assegurando assim a integridade das informações transmitidas.
Possui o apoio do Centro Universitário do Estado do Para, que dispõe a
infraestrutura de rádio para o uso da equipe, assim levando a existência do canal ao
conhecimento da academia.
5. Conclusão e trabalhos futuros
Na atualidade informações são disponibilizadas por diversos meios que utilizam a
tecnologia da informação, porem para abranger maior público e consequentemente obter
mais lucro, seja por acessos aos meios, quanto por publicidade, essas fontes acabam
perdendo a identidade e não fixam um público alvo.
O canal Whua! Mix surgiu com um foco definido e permanecera nesta linha
enquanto existir, o projeto tende a evoluir bastantes nos próximos meses, ele será uma
das atrações culturais da feira Computação Amostra, a qual se encontra na sua nona
edição, o evento acontecera nos dias vinte e nove, trinta e trinta e um de outubro de 2013,
na instituição de ensino superior CESUPA.
Além de ter seu site reformulado para a versão final, a equipe está trabalhando em
novos programas fixos para a rádio e em uma versão para iOS (sistema operacional dos
iPhones, iPods touch e iPads) do aplicativo.
Referências
C. A. A. Araújo. Problematizando o conceito de “meio” de comunicação. Acessado em 5
de
outubro
de
2013.
Disponível
em:
http://www.revistas.univerciencia.org/index.php/e-com/article/viewFile/5574/5061
C. A. Rabaça & G. G. Barbosa (2002). Dicionário de comunicação. Rio de Janeiro:
Campus, 2002.
Portal Rádios (2013). Radio Online - Como Funciona?. Disponível
http://www.portalradios.org/2013/03/criando-uma-radio-online.html
em:
Bethel
Podcast
(2013).
O
que
e
http://podcasts.ibethel.org/pt/sermon-of-the-week
em:
Podcast?
Disponível
The Code Bakers (2013). Lição 1: Desenvolvimento para Android. Disponível em:
http://www.thecodebakers.org/p/licao-1-desenvolvimento-para-android.html
Under Linux (2013). IDC: Android Domina 80% do Mercado de Smartphones.
Disponível em: https://under-linux.org/content.php?r=7357-IDC-Android-Domina80do-Mercado-de-Smartphones
Shoutcast (2013). Free Internet Radio. Disponível em: http://www.shoutcast.com/
Drupal (2013). Centavocast. Disponível em: https://drupal.org/project/centovacast
WordPress (2013). Disponível em: http://wordpress.org/about/
WineHQ(2013).
SAM
Broadcaster.
Disponível
http://appdb.winehq.org/objectManager.php?sClass=application&iId=1590
46
em:
Classificação automática de informações ambientais
usando Redes Neurais Artificiais: O caso da Malária na usina
hidrelétrica de Belo Monte, Pará, Brasil.
Alcinês da Silva Sousa Júnior¹, Alcione Ferreira Pinheiro¹, Larrysa de Cássia Tork
da Silva², Nelson Fernando de Lisboa Soffiatti², Luís Henrique Rocha Guimarães²,
Nelson Veiga Gonçalves¹
¹Instituto Ciberespacial (ICIBE) – Universidade Federal Rural da Amazônia (UFRA)
Montese, Belém, Pará, Brasil
²Laboratório de Geoprocessamento (LABGEO) – Instituto Evandro Chagas (IEC)
Levilândia, Ananindeua, Pará, Brasil
{alcinesjunior,nelsoncg2009}@gmail.com
Abstract. This study presents a model of integration between Artificial Neural
Networks (ANN), and emerging geotechnologies applied in ecoepidemiological studies of malaria in the localities contained in the area of
influence of the future Belo Monte Dam (UHBM), located at Pará state. The
model implementation, based in artificial intelligence techniques, aimed the
generation of environmental information through the classification of digital
satellite images. Next, a Geographic Information System (GIS) was used to
manipulate and analyze the data, which served to support the construction of
scenarios of the disease, according to the relative importance of environmental
and epidemiological variables of the studies area. The accuracy of the
information generated and expressed on digital maps, consolidated the use of
geotechnologies to analyse the probability of the disease risk factors
stablishment.
Resumo. Este estudo apresenta um modelo de integração entre Redes Neurais
Artificiais (RNA), e Geotecnologias emergentes aplicadas em estudos
ecoepidemiológicos de malária em localidades contidas na área de influência
da futura Usina Hidrelétrica de Belo Monte (UHBM), localizada no estado do
Pará. A implementação do modelo, baseado em uma técnica de Inteligência
Artificial, objetivou a obtenção de informações ambientais, através da
classificação de imagens digitais de satélite. Na sequência, um Sistema de
Informação Geográfica (SIG) manipulou e analisou os dados, que serviram
para auxiliar a construção de cenários do agravo, segundo a importância
relativa das variáveis ambientais e epidemiológicas nas áreas de estudo. A
precisão das informações geradas, expressas nos mapas digitais, consolidou o
uso das geotecnologias na análise do estabelecimento de prováveis fatores de
risco da doença.
1. Introdução
A Inteligência Artificial (IA) é a área da ciência da computação que se ocupa em
pesquisar métodos ou dispositivos computacionais que possam abstrair a capacidade
racional do ser humano de resolver problemas cognitivos. A IA também pode ser definida
como o ramo da Ciência da Computação que procura simular o comportamento
47
inteligente [LUGER, 2004] que teve início após a Segunda Guerra Mundial. Atualmente
a IA abrangem uma enorme variedade de subcampos, desde áreas de uso geral, como
aprendizado e percepção, até tarefas específicas como jogos de xadrez, demonstração de
teoremas matemáticos e diagnóstico de doenças, porém é potencialmente relevante na
Classificação Automática de Imagens de Satélites (CAIS) gerados por técnicas de
Sensoriamento Remoto (SR), através da aplicação da técnica conhecida como Redes
Neurais Artificiais (RNA), que possui muitas vantagens, porque se baseiam na estrutura
do sistema nervoso humano, tendo a capacidade de aprender através da entrada dos dados
que por sua vez informa qual a saída, possibilitando assim a obtenção da discriminação
de classes informacionais como, por exemplo, tipos de vegetação que existem em
determinada área geográfica [RUSSEL, 2004].
Os dados de SR têm sido muito utilizados pelo o Instituto Brasileiro do Meio
Ambiente e dos Recursos Naturais Renováveis [IBAMA], que tem por objetivos, entre
outros, monitorar as transformações do meio ambiente e dos recursos naturais e manter a
integridade das áreas de preservação permanente e das reservas legais (BRAZIL, 2012),
que são acometidos na Amazônia por seus grandes projetos desenvolvimentistas entre
eles as hidrelétricas, que por sua vez promovem o estabelecimento de fatores de risco de
doenças infecciosas, dentre estas a malária. Este fato pode ser observado em vários
lugares da Amazônia devido à grande correlação entre desmatamento e o aumento da
densidade dos mosquitos na área em uma determinada região.
2. Objetivos
2.1. Geral
Desenvolver um modelo de classificação automática de informações ambientais, contidas
em imagens de satélite, usando Redes Neurais Artificiais para realização de analises
espaço-temporal da malária, na área influência da Usina Hidrelétrica de Belo Monte, no
período de 2010 a 2011.
2.2. Específicos
 Gerar bancos de dados georreferenciados da distribuição espacial de localidades
onde foram notificados casos de malária, na região;
 Identificar fatores e áreas de risco de transmissão da malária;
 Produzir mapas temáticos com a caracterização do nível de desmatamento na
região;
 Analisar o desempenho da RNA, no processo de classificação automática.
3. Materiais e Métodos
Para a região de estudo, a metodologia para o desenvolvimento do trabalho foi dividida
três etapas principais: na primeira foi feito a aquisição dos dados, como, Imagens de
satélites disponibilizadas pelo Instituto Nacional de Pesquisas Espaciais – [INPE], Bases
Cartográficas fornecida pelo Instituto Brasileiro de Geografia e Estatística – IBGE e
dados de malária obtida através Sistema de Informações de Vigilância Epidemiológica
da malária – SIVEP-MALÁRIA e da Secretaria de Saúde do Estado do Pará – [SESPA],
sendo todos esses dados georreferenciados em campo; na segunda etapa foi realizado o
48
processamento dos dados, como, pré-processamento, treinamento e classificação da
imagem pela RNA e validação dos resultados, isso para a imagem classificada. Já para o
mapa que media intensidade dos casos foi feito a tabulação dos dados, a indexação das
coordenadas geográficas das localidades georreferenciadas em campo, na tabela já
tabulada e posteriormente o estimador de Kernel, após a obtenção desses resultados vem
a terceira e ultima etapa, que é o inter-relacionamento dos dados (imagem classificada,
bases cartográficas e o estimador de Kernel dos casos positivos).
Para o processamento e análise digital dos dados multiespectrais foi utilizado um
microcomputador tipo PC, processador AMD Phenom 3,25 GB de memória RAM
contendo o sistema operacional Windows XP Service Pack 3, dois receptor Sistema de
Posicionamento Global (GPS), um Garmin 76CSx e um Garmin Colorado. No
desenvolvimento desse trabalho foram utilizados os seguintes aplicativos: Software
TabWin, para tabular os banco de dados, Software de geoprocessamento TerraView
3.1.3, para o gerar o estimador kernel, TrackMaker 11.8, para posicionamento dos dados
em campo, Erdas 8.3, Envi 4.8 e Spring 5.2.1, para o pré-processamento dos dados
(registro e classificação da imagem, criação de buffers e máscaras) e pós-processamento
(validação das classificações), um classificador neural de imagens de satélite para o
processo de treinamento e classificação dos dados através de Redes Neurais Artificiais,
ArcGis 9.3, para o inter-relacionamento dos bancos de dados e imagens de satélites e
geração de mapas.
4. Resultados
Inicialmente foi gerado um banco de dados epidemiológico, com informações sobre os
casos notificados de malária na área e período de estudo. Este banco foi produzido com
informações obtidas junto a órgãos federais, estaduais e municiais de saúde, para que os
dados pudessem ser validados. Posteriormente as informações sobre os casos notificados
foram agrupados em relação ao seu local de notificação, para que se pudessem considerar
as localidades como a unidade espacial de análise, da incidência da doença no período.
Na figura 1 abaixo, pode ser observado os bancos de dados epidemiológicos gerados.
Figura 1. Bancos de Dados georreferenciados da distribuição espacial de
localidades com malária
Na sequência as informações epidemiológicas relacionadas as localidades foram
georreferenciadas, para que fosse possível observar a sua distribuição espacial em relação
a área de influência direta da futura UHBM e suas características ambientais, relacionadas
49
a tipos de cobertura vegetal, presentes nas áreas de estudo e em cada ano de estudo. Na
figura 2 abaixo pode ser observado a distribuição espacial das localidades onde foram
notificados casos com malária.
Figura 2. Distribuição espacial das localidades com malária, no ano de 2010
e/ou 2011
Após a análise do banco de dados foi observado que no período de 2010 e 2011,
foram notificados 160 e 165 casos novos de malária respectivamente, nas localidades
contidas na área de estudo.
Nas figuras 3 e 4, apresentadas na sequência, pode ser observada a utilização do
“Kernel” para identificar a densidade de casos de malária, para o ano de 2010 e 2011,
respectivamente.
Figura 3. Estimador de Kernel para a Densidade de Casos de Malária, no ano de
2010
50
Figura 4. Estimador de Kernel para a Densidade de Casos de Malária, o ano de
2011
Para que fosse possível analisar a relação entre o processo de degradação
ambiental, em termos do desmatamento na região de estudo, foi realizado um processo
de classificação de imagens digitais de satélites da região de estudo, baseada na utilização
de RNA. Este processo ocorreu em quatro fases. Na primeira fase, que foi denominada
de treinamento da RNA foram executados uma série de pré-processamento sobre a
imagem que foi classificada (composição de bandas, mosaico e recorte da área de estudo).
Esta fase foi importante devido a necessidade de corrigir ou alterar algumas
características da imagem original, visando uma melhor classificação. Na segunda fase,
denominada de teste, foram escolhidas as configurações ideais do esforço computacional
da RNA determinando o tamanho da matriz, o número de neurônios, o número de
interações e a taxa de aprendizado. Na terceira fase foram inseridas informações, que não
são obrigatórias, mas de muita importância, como, escala da imagem, tamanho de pixel e
número de classes. Finalmente, na quarta fase foram obtidas as imagens com as
classificações geradas pelo esforço computacional da rede, que agrupou os diferentes
gradientes de cores associados as informações de vegetação, enquanto classes desejadas.
Este processo pode ser visto nas figuras 5, 6, 7 e 8.
A imagem produzida na fase 1, que se caracterizou pela série de préprocessamento executado sobre a imagem de satélite, escolhida para a classificação pode
ser observada na figura 5 abaixo.
51
Figura 5. Fase 1 do processo de classificação automática por RNA, da imagem
de satélite utilizada
A figura 6 abaixo apresenta a segunda fase, onde depois de vários testes foi
escolhida a seguinte combinação para o treinamento da RNA, tamanho da matriz 5x5,
números de neurônios 40, número de interações 100 e taxa de aprendizagem 0.9. Esta
combinação foi escolhida devido apresentar os melhores resultados para este estudo.
Figura 6. Fase 2 do processo de classificação automática utilizando RNA
A figura 7 abaixo mostra algumas especificações da imagem como, a escala que
foi trabalhada, de valor 1:250.000; o tamanho do pixel, que foi 30x30 m (900 m²) e o
número de classes que desejado, que para este estudo foram definidas 4 (floreste, várzea,
desmatamento e outros).
52
Figura 7. Fase 3 do processo de classificação automática utilizando RNA
A figura 8 abaixo, mostra os resultados da fase 4, onde foram produzidos os
resultado, que se constituíram do cálculo da área abrangida pela classe de informação
temática, escolhida na imagem classificada, que neste estudo foi o desmatamento.
Figura 8. Fase 4 do processo de classificação automática utilizando RNA
A figura 9 abaixo mostra a imagem de satélite classificada com diferentes tipos
de cobertura vegetal e desmatamento, com a distribuição espacial das localidades onde
foram notificados casos de malária no ano de 2010, na área de estudo.
53
Figura 9. Mapas temáticos com a caracterização do nível de desmatamento na
região, no ano de 2010
A figura 10 abaixo mostra a imagem de satélite classificada com diferentes tipos
de cobertura vegetal e desmatamento, com a distribuição espacial das localidades onde
foram notificados casos de malária no ano de 2011, na área de estudo.
Figura 10. Mapas temáticos com a caracterização do nível de desmatamento na
região, no ano de 2011
5. Discussão dos resultados
Ao longo do trabalho foi realizado um processo de inter-relacionamento de Bancos de
Dados Epidemiológicos Georreferenciados em relação a sua notificação em localidades
contidas na área de influência da futura UHBM, com imagens digitais de satélite,
classificadas por uma RNA. Após este processo foi possível observar que devido aos seus
valores diferenciados de intensidade de brilho de pixels, associados à primitiva gráfica
cor, que serviram de base para viabilizar a classificação realizada pela RNA, baseado em
RNA [FeedForward], conforme descritos em trabalhos realizados anteriormente por
[Chagas at. all 2009] e [Veiga at all. 2008].
54
O modelo de classificação neural desenvolvido a partir dos dados gerados,
expressos visualmente nos mapas temáticos digitais georreferenciados, gerados pelo
processo de classificação possibilitou a observação da influência que as variáveis
ambientais exerceram sobre a epidemiologia da malária, desta forma, foi possível
observar que a incidência deste agravo não ocorreu de forma homogênea, pois apresentou
incidência diferenciada em vários locais do município, devido às características
peculiares desta região, tais como: formas de ocupação humana desordenada, que podem
estar relacionadas aos diferentes padrões de desflorestamento observados sobre a imagem
classificada; características ambientais favoráveis a incidência da doença, pois devido ao
desmatamento existe a possibilidade da dispersão dos vetores da doença. As observações
destas situações diferenciadas de risco de transmissão de malária, em áreas de
hidrelétricas, foram estudadas anteriormente por [Coneglian at. all. 2010].
A classificação neural desenvolvida possibilitou a observação da distribuição
espacial de áreas onde de forma potencial deverá ocorrer o estabelecimento de prováveis
ecótopos de vetores, com a formação de criadouros de formas anofélicas imaturas, estas
observações são corroboradas por estudos realizados anteriormente por [Veiga, 2011].
Com relação ao esforço computacional realizado pela RNA foi possível observar que o
mesmo é dependente da qualidade da resolução espectral dos alvos contidos nas imagens
de satélites, além da escala geográfica de abrangência da mesma, pois estas questões
podem influenciar a obtenção de informações da área de estudo. Foi observado também
que em relação a futuros estudos, que poderão estar relacionados ao monitoramento
sistematizado das transformações ambientais e de perfis de saúde, que deverão ocorrer na
área, serão necessários conjuntos de imagens multiespectrais e multitemporais, cujo
processamento pela RNA exigirá mais tempo de treinamento da rede e um número maior
de testes, conforme [Silva 2012].
Desta forma, os resultados obtidos neste trabalho poderiam ser comparados a
classificações temáticas de imagens relacionadas a transformações em áreas menores,
como as áreas de influência direta ou indireta da futura UHBM, onde talvez as feições
possam ser visualmente mais fáceis de serem definidas por classes. Assim, os resultados
obtidos por ambas as classificações de RNA poderiam ser comparados, em relação aos
seus resultados de erro de classificação por percentual semelhante (máximo de diferença
de 0,03%). Os resultados obtidos sugerem que o comportamento da RNA, quanto a sua
capacidade de classificação de imagens digitais de satélites baseada em cores, é
semelhante ao de neurônios biológicos quanto à distinção de objetos de cores homogêneas
em imagens com as mesmas características, conforme estudos realizados anteriormente
por [Chagas at. all 2008].
Referências
BRAZIL — The Space Program. country-data.com (April 1997). Acesso em: 2012
CHAGAS at alli. Aplicações de Redes Neurais Artificiais para Classificação de
Vegetação, no Estado do Paraná. Revista Brasileira de Engenharia Agrícola e
Ambiental. v.13, n.3, p.319–327, 2009. Campina Grande, PB. 2008
CONEGLIAN F. M. at all. Comparação entre Classificações com Rede Neural Artificial
em Diferentes Áreas de Estudo no Paraná. III Simpósio Brasileiro de Ciências
Geodésicas e Tecnologias da Geoinformação. Recife – PE. 2010.
55
IBGE (ed.). Pesquisa Nacional por Amostra de Domicílios - PNAD de 1995. Rio de
Janeiro, Ministério do Planejamento e Orçamento. 106p. 1995.
IBGE. Pesquisa Nacional Por Amostra de Domicílios - PNAD 1999, Notas
Metodológicas.
1999,
<http://www.ibge.gov.br/home/estatistica/populacao/trabalhoerendimento/pnad99/m
etodologia99.shtm>. Acesso em: 2012.
IBGE. Censo Demográfico 2000, Instituto Brasileiro de Geografia e Estatística, 2001.
IBGE. Estimativas Populacionais do Brasil, Grandes Regiões, Unidades da Federação
e Municípios. Metodologia. Rio de Janeiro, Instituto Brasileiro de Geografia e
Estatística, 2002. 22 p.
IBGE. Malha Municipal 2010. 2003a, Instituto Brasileiro de Geografia e Estatística,
<http://www2.ibge.gov.br/pub/Organizacao_do_Territorio/Malha_Municipal_2010/>
. Acesso em: 2012.
IBGE. Estimativas das populações residentes, 2001 e 2002. 2003b, Instituto Brasileiro de
Geografia
e
Estatística,
<http://www2.ibge.gov.br/pub/Estimativas_Projecoes_Mortalidade_Populacao/->.
Acesso em: 2013.
KOFFER, N. F. Técnicas de sensoriamento remoto orbital aplicadas a o mapeamento da
vegetação e uso da terra. Geografia. Volume 17, n.2, p. 14-17. 1992.
LUGER, GEORGE, F. Inteligência Artificial: Estruturas e Estratégias para a Solução de
Problemas Complexos. 4ª ed. Porto Alegre: Bookman, 2004. 774 p. p. 23. ISBN 85363-0396-4.
RUSSEL, S; NORVIG, P. Inteligência Artificial. 2. Ed. Rio de Janeiro: Campos, 2004.
SILVA, A. L. G. & FRANCISCO, C. N. 2002. Descrição dos Principais Sistemas
Sensores
Orbitais
em
Operação.
2002.
Disponível
em:
<www.professores.uff.br/cristiane/Documentos/apostilasr.doc>. Acesso em: 13 ago.
2012.
VEIGA et. Alii. A.; GOMES, B.; BARBOSA, F. Análise espaço-Temporal da Incidência
da Malária nos Municípios de Bragança e Augusto Corrêa, no período de janeiro de
2001 a fevereiro de 2008. In: II Simpósio Brasileiro de Ciências Geodésicas e
Tecnologia da Geoinformação, 2008, Recife - Pe. Anais do II Simpósio Brasileiro de
Ciências Geodésicas e Tecnologia da Geoinformação. Recife - Pe: UFPe, 2008.
VEIGA, N. G.; SOUSA JUNIOR, A. S. Análise da Distribuição Espacial da Malária nos
Municípios da Área de Influência da UHBM, entre 2006 e 2009. In: XVI Seminário
Interno do PIBIC/IEC, 2011, Ananindeua-Pa. Anais do XVI Seminário Interno do
PIBIC/IEC. Belém-Pa: IEC, 2011.
56
Desenvolvimento de Ferramenta para Monitoramento
Multimídia a partir de Redes Heterogêneas
Wilson Farias1,2, Claudio Silva1, Rodrigo Costa1, Denis Rosário1, Eduardo
Cerqueira1
1
2
Universidade Federal do Pará (UFPA)
Belém – PA – Brasil
Instituto de Estudos Superiores da Amazônia (IESAM)
Belém – PA – Brasil
[email protected], {claudio,rodrigomc,denis,cerqueira}@ufpa.br
Abstract. This article proposes and develops a heterogeneous network
architecture for applications in Internet of Things (IoT - Internet of Things)
scenarios, such as smart cities, environmental monitoring, among others. The
proposal includes the development of mechanisms that enable communication
between hardware of IEEE 802.15.4 and 3G/GPRS standard. Furthermore, we
built a testbed for collection of scalar data and event detection from a sensor
network multimedia together with the Arduino platform, due to be open-source
and provide a low cost. Thus, it is possible to create a low cost and extensible
architecture using open source software and hardware.
Resumo. Este artigo propõe e desenvolve uma arquitetura de rede heterogênea
para aplicações em cenários de Internet das coisas (IoT - Internet Of Things),
como cidades inteligentes, monitoramento ambiental, dentre outras. A proposta
inclui o desenvolvimento de mecanismos que permitem a comunicação entre
hardwares do padrão IEEE 802.15.4 e do padrão 3G/GPRS. Além disso,
construiu-se um testebed para coleta de dados escalares e detecção de eventos
a partir de uma rede de sensores multimídia em conjunto com a plataforma
Arduino, devido ser open-source e apresentar um baixo custo. Assim sendo, é
possível criar uma arquitetura de baixo custo e extensível utilizando softwares
e hardwares de código aberto.
1. Introdução
A crescente evolução tecnológica tem proporcionado a criação de sistemas inteligentes
baseados em dispositivos eletrônicos de baixo custo, reduzida dimensão, apreciável poder
de processamento e incluindo capacidade de comunicação sem fios. A utilização destes
sistemas pode acontecer em diversos contextos, tais como, monitoramento ambiental,
cidades inteligentes, entre outros. Dessa forma, a integração dessas tecnologias em
espaços convencionais os converteu no que chamamos espaços inteligentes [Ferraz, D.
(2013)].
As Redes de Sensores Sem Fio Multimídia (RSSFM) são de vital importância,
pois aumentam o nível de informação coletada em relação a simples coleta escalar. Com
isso, diversas aplicações utilizam serviços de áudio/vídeo, pois o conteúdo multimídia
possibilita maior acurácia e credibilidade de informações. Dessa forma, o usuário final
visualiza o impacto do evento, tornando mais eficiente o planejamento de ações e
ajudando na detecção de objeto/invasores e análise de cenário [Lima, P. et al. (2012)].
57
Com a chegada da terceira geração, 3G, além dos serviços básicos de telefonia
prestados por sua antecessora, novos serviços passaram a ser disponibilizados, como:
Internet, vídeo, chats, etc. A oferta de novos serviços, a propagação e a acessibilidade a
novos recursos fez com que diversos ambientes adotassem o uso destes serviços. Esta
portabilidade nos remete a necessidade de uma interoperabilidade entre diversas
tecnologias [Sandy, J. et al. (2010)].
Nos cenários futuros de Cidades Inteligentes e IoT devem-se considerar a
possibilidade de projetos e aplicações que se beneficiem de redes heterogêneas de forma
transparente e escalável [Avelar, E. et al. (2012)]. Porém, a utilização de redes
heterogêneas exige novas abordagens para apoiar a interoperabilidade entre diferentes
tipos de comunicações considerando ainda a possibilidade de recursos limitados, que
devem ser refletidas adequadamente em ambientes de experimentação da Internet das
Coisas ou Cidades Inteligentes [Gluhak, A. et al. (2011)].
Nesse contexto, esse artigo apresenta uma ferramenta de baixo custo voltada a
aplicações de IoT como monitoramento ambiental, cidades inteligentes, dentre outras. A
arquitetura proposta pode ser integrada a ferramenta Sensor4Cities [Lima, P. et al. (2012)]
aumentando a interação do usuário com o sistema e melhorando a qualidade dos dados
multimídia coletados. A utilização de hardwares distintos nessa solução permite o uso de
diferentes tecnologias de comunicação como o IEEE 802.15.4 e 3G possibilitando a
adequação do testbed no cenário de redes heterogêneas.
Este trabalho está organizado da seguinte maneira: na Seção 2 são apresentados
os trabalhos relacionados. Na seção 3 é descrita a possibilidade de integração do protótipo
construído com a ferramenta Sensor4Cities, a arquitetura da proposta e os dados técnicos
dos hardwares utilizados. Na seção 4 são exibidos os resultados experimentais da solução
proposta e, por fim, na Seção 5 são feitas as considerações finais do presente artigo.
2. Trabalhos Relacionados
Existem diversos trabalhos utilizando aplicações de RSSFM em contextos de IoT,
Cidades Inteligentes, monitoramento ambiental, e afins. Contudo, grande parte dos
trabalhos existentes adotam soluções com a utilização de ferramentas não amigáveis, alto
custo e não extensíveis.
O projeto SOFIA [Filipponi, L. et al. (2010)] consiste em um arquitetura para IoT
e o testbed da solução foi implantado em um cenário de metrô. A arquitetura possui uma
detecção de eventos anormais que simplifica o trabalho dos operadores e a comunicação
entre os passageiros. A solução proposta é composta por um módulo central, que gerencia
o sistema e um módulo de base de dados responsável por tratar as notificações e consultar
a base de dados [Avelar, E. et al. (2012)].
O projeto CitySense [Bers, J. et al. (2010)] consiste em vários sensores que
monitoram o tempo e a poluição do ar [Avelar, E. et al. (2012)]. É formado por
aproximadamente 100 nós que são instalados em postes de luz e edifícios públicos e
privados. Os nós são compostos por um PC integrado com grande capacidade de
processamento, interfaces 802.11a/b/g, e vários sensores para monitoramento das
condições meteorológicas e do nível de poluição do ar. O fato de apresentar uma
instalação outdoor dentro do ambiente urbano e a realização do controle e plano de gestão
baseado exclusivamente em ligações sem fios dá ao projeto certo destaque com relação
aos demais.
58
O Projeto Oulu Smart City [Ojala, T. (2010)] constitui-se de uma grande rede
espalhada pela metrópole de forma a criar a interação entre espaços urbanos, o usuário e
a tecnologia da informação. Os usuários conseguem coletar dados através de seus
smartphones utilizando a tecnologia Wi-Fi.
Projetos como o Motelab [Werner-Allen, G. et al. (2005)], SensLAB [Des
Rosiers, C. et al. (2011)], VineLab [VineLab] dentre outros, também utilizam uma larga
redes de sensores para aplicações em cenários de IoT, entre outros.
Porém, as propostas relacionadas são constituídas por infraestruturas de certa
complexidade e equipamentos de custo elevado. Em contrapartida, a solução proposta
nesse artigo utiliza dispositivos de baixo custo, ferramentas open-source e uma
arquitetura heterogênea que possibilita a comunicação tanto pelo padrão IEEE 802.15.4
quanto pelo 3G, tornando assim o sistema escalável, simples e de baixo custo.
3. Proposta
3.1. Sensor4Cities
O Sensor4Cities é uma ferramenta que utiliza rede social e página web para facilitar a
disseminação de dados coletados por RSSFMs de forma transparente e de fácil utilização.
Esta ferramenta foi desenvolvida com o objetivo de prover acesso simplificado aos dados
de uma RSSFM através de uma página web e/ou rede social. Assim, usuários sem
conhecimento técnico podem ter acesso aos dados coletados pelos nós, necessitando
apenas de uma conexão com a Internet. Devido à popularidade dos smartphones, a página
web também possui uma versão mobile, mais leve, possibilitando que o usuário acesse
facilmente os dados coletados. [Lima, P. et al. (2012)]
Na ferramenta Sensor4Cities, o usuário, através de uma conexão com a Internet,
interage com o sistema de forma fácil, prática e transparente, podendo checar dados
relativos à temperatura e luminosidade ou coletar imagens. Contudo, em casos ou regiões
onde a conectividade é um fator limitador, o usuário fica restrito a uma conexão de boa
qualidade.
A arquitetura proposta neste artigo pode ser integrada a ferramenta Sensor4Cities
provendo uma ampliação da interação entre o usuário e o sistema, e um ganho de
qualidade dos dados multimídia coletados. O protótipo desenvolvido permite que o
usuário consiga receber informações sobre a área monitorada através de serviços de rede
3G/GPRS, não ficando, assim, limitado ao acesso a página web da aplicação. Outro fator
de destaque é o ganho na qualidade da imagem obtida pelo protótipo e a possibilidade da
mesma poder ser enviada através de duas formas diferentes, pela rede de sensores ou para
um servidor de e-mail, permitindo assim, uma escolha da melhor forma do usuário
visualizar a imagem obtida de acordo com a aplicação do protótipo.
3.2. Arquitetura
A Figura 1 ilustra a arquitetura proposta nesse artigo, na qual o usuário pode comunicase com a rede de nós sensores através de requisições feitas à BS ou programa-la de forma
a receber a informações da rede, que podem ser de dados escalares e/ou multimídia,
através da tecnologia 3G provida pelo nó multimídia. Utilizamos o nó sensor TelosB, o
qual é equipado com um radio no padrão IEEE 802.15.4 para realizar a comunicação sem
fio. O padrão IEEE 802.15.4 define dois diferentes modos de endereçamento, endereços
59
de 16-bit e 64-bit [Akribopoulos, O. et al. (2011)], dessa forma, através do ambiente de
desenvolvimento ContikiOS [ContikiOS] atribuiu-se a cada nó um endereço de 16 bit.
Figura 1. Arquitetura da proposta
Apesar do padrão IEEE 802.15.4 definir as métricas para comunicação sem fio,
os dispositivos implementam apenas parte deste padrão, portanto a comunicação entre
diferentes dispositivos de diferentes fabricantes se torna algo de difícil implementação
[Akribopoulos, O. et al. (2011)]. Dessa forma, para agregar o Arduino a rede de sensores,
conectou-se um mote TelosB a entrada USB do Shield USB Host, deste modo, tornou-se
possível a comunicação do Arduino com o demais dispositivos na rede através do mote e
a agregação de um endereço 16-bit para o mesmo.
A comunicação entre o Arduino e os shields ocorre de forma alternada, porém,
sem problemas de compatibilidade. O Shield USB Host utiliza o protocolo Serial
Peripheral Interface (SPI) para se comunicar com o Arduino, já o Shield 3G utiliza o
Universal Asynchronous Receiver/Transmitter (UART), à vista disso, a alternância de
comunicação entre os shields deve-se ao fato de que o envio de comandos para o Shield
3G ocorre através de comandos AT, ocasionando um certo atraso entre as requisições e
suas respectivas respostas. A seguir são descritos detalhadamente cada dispositivo
utilizado neste trabalho.
3.2.1. Mote TelosB
O Mote TelosB [TelosB] desenvolvido pela Crossbow Inc. possui um microcontrolador
TI-MSP430 de 16 bits e opera na frequência de 8MHz, utiliza um tipo especial de antena
denominada F invertido construída em cima do padrão IEEE 802.15.4, que especifica as
camadas de enlace e física para pequenos dispositivos de Rede de Área Pessoal (Personal
Area Network – PAN), operando na faixa de 2.4GHz [Akribopoulos, O. et al. (2011)].
Possui também um módulo de memória flash que comporta um total de 1024 Kbyte além
de sensores de temperatura, luminosidade e umidade. A Figura 2 ilustra o Mote Telosb.
Figura 2. Mote TelosB. Fonte: http://openwsn.berkeley.ed
3.2.2. Arduino
60
O Arduino [Arduino] é uma plataforma de desenvolvimento open-source que provê
solução de hardware e software de baixo custo para computação física tendo como
modelo mais usual o Arduino Uno (Figura 3). A boa aceitação desta plataforma está
fundamentada em sua simplicidade quanto a programação e possibilidade de adição de
funcionalidades por meio de placas de expansão denominadas de shields.
Figura 3. Plataforma Arduino. Fonte: http://arduino.cc
3.2.3. Shield USB Host
O Sheild USB Host (Figura 4) [Cooking Hacks] foi desenvolvido inicialmente a partir da
construção de um código para a plataforma Arduino que provesse suporte à comunicação com
periféricos USB, como teclados, joysticks e câmeras [Cooking Hacks]. O Shield é composto por
um controlador USB Host Maxim MAX3421E que se comunica com a plataforma através do
protocolo SPI. O esquema de pinos da placa segue o mesmo modelo do Arduino, porém possui
também pinos de propósito gerais (GPIN/GPOUT), possibilitando a expansão do número de
dispositivos que podem ser controlados.
Figura 4. Shield USB Host. Fonte: www.sparkfun.com
3.2.4. Shield 3G
O Shield 3G (Figura 5) [Circuit at Home] fornece ao Arduino uma interface 3G utilizando
o módulo SIM5218 da SIMCOM, cujo mecanismo trabalha nas quatro bandas
GSM/GPRS/EDGE e UMTS. O módulo também possui um GPS interno que possibilita
a localização do dispositivo indoor e outdoor, combinando os padrões definidos pelo
National Marine Electronics Association (NMEA) com triangulação de celular móvel,
utilizando os modos assisted-mobile (A-GPS) and mobile-based (S-GPS). Há também a
possibilidade da captura de dados multimídia como áudio e vídeo por meio de acessórios
acoplados ao Shield 3G. Além disso, o modulo foi projetado especialmente para trabalhar
com servidores de Internet implementando internamente protocolos da camada de
aplicação tornando mais fácil enviar informações à Internet. Entre os protocolos presentes
estão HTTP, HTTPS, FTP, FTPS, SMTP e POP3.
61
Figura 5. Shield 3G/GPS – Fonte: http://www.cooking-hacks.com
4. Protótipo
A fim de validar a arquitetura e avaliar o desempenho da proposta, foi efetuada uma
implementação de um protótipo em um cenário de detecção de eventos (Figura 6), o qual
pode ser facilmente integrado ao sensor4cities. Foram realizadas coletas de dados
escalares através dos sensores presentes no mote TelosB, e coleta de dados multimídia
através do protótipo criado a partir da plataforma Arduino, o qual também provê os
serviços de rede 3G e de e-mail.
Figura 6. Cenário de detecção de evento
Na detecção de algum evento dentro do ambiente monitorado, como súbito
aumento da temperatura e diminuição da humidade, pode indicar um incêndio, ou podese utilizar outros sensores para detectar outros eventos. Para tais aplicações é fundamental
ter o auxílio de informação visual da área monitorada. Com base nessas informações é
possível que o usuário final identifique o real impacto de um evento, ficando ciente do
que está acontecendo no ambiente, tomar alguma ação, ajudando na detecção de
objetos/intrusos ou analisar o cenário [Rosário, D. et al. (2012)].
No protótipo proposto, a BS envia uma requisição para o nó multimídia, o TelosB
conectado ao Shield USB Host repassa a informação ao Arduino e este identificando a
requisição, envia o comando AT de acionamento para o Shield 3G. Depois de ativado, o
Shield recebe os comandos para ativação da câmera acoplada ao mesmo, os parâmetros
de resolução da imagem, captura a imagem, a salva e desliga a câmera. Em seguida, envia
uma mensagem para o celular do usuário avisando da ocorrência do evento, e envia a
imagem capturada para o e-mail do usuário previamente configurado na aplicação.
62
Para evitar o envio de dados multimídia repetitivos em curtos espaços de tempo,
a requisição de outra imagem só pode ser feita após certo período de tempo. Na Figura
7a é apresentada a estrutura do protótipo construído para o nó multimídia e na Figura 7b
a imagem obtida pelo mesmo.
Figura 7. (a) Protótipo construído; (b) imagem capturada do Shield 3G
5. Conclusão
Este artigo apresentou uma ferramenta de baixo custo capaz de integrar redes
heterogêneas para aplicações de IoT como monitoramento ambiental, cidades
inteligentes, video surveillance, dentre outras. A integração da arquitetura proposta com
a ferramenta Sensor4Cities possibilitou o aumento da qualidade dos dados multimídia
coletados e uma interação do usuário com o sistema de forma mais rápida e dinâmica.
Foi criado um protótipo para experimentação utilizando hardwares distintos e
tecnologias de comunicação como IEEE 802.15.4 e 3G, de forma a estudar a viabilidade
da proposta e sua apresentação real. A proposta apresenta alto potencial de ubiquidade ao
agregar os recursos de redes sociais do Sensor4Cities aos serviços de telefonia 3G,
interagindo com o usuário de forma transparente e com baixo grau de complexidade.
As perspectivas futuras visam avaliar a proposta quanto à eficiência energética,
garantia de entrega de dados, dentre outras métricas. Além disso, pretende-se ampliar sua
heterogeneidade a fim de adequá-la a outros cenários.
Referências
Ferraz, D. (2013). "Monitorização Vital e Ambiental com recurso a Redes de Sensores
sem Fios" (Doctoral dissertation, Dissertação (Mestrado em Engenharia Informática).
Universidade Fernando Pessoa, Porto, Portugal).
Kehua, S. et al. (2011). “Smart City and the Applications”, In:Internacional Conference
on Eletronics, Communications and Controls (ICECC).
Tan, L. and Wang, N. (2010) "Future Internet: The Internet of Things", 3rd International
Conference on Advanced Computer Theory and Engineering (ICACTE), vol.5, pp.V5376-V5-380, 20-22.
Avelar, E. et al. (2012) “Arquitetura de Comunicação para Cidades Inteligentes: Uma
proposta heterogênea, extensível e de baixo custo”, In: XXXIX Seminário Integrado
de Software e Hardware, Curitiba.
63
Lima, P. et al. (2012). “Sensor4Cities - Uma Ferramenta Baseada em redes de Sensores,
Redes Sociais e Aplicação Web para Cidades Inteligentes”, Escola Regional de
Informática Norte 2 (XII ERN), Belém, Brazil, Nov 21- 23.
Gluhak, A. et al. (2011). “A survey on facilities for experimental Internet of things
research”, Communications Magazine, IEEE, 49(11), 58-67.
Akribopoulos, O. et al. (2011). “Deployment and Evaluation of a 802.15. 4
Heterogeneous Network”, arXiv preprint arXiv:1102.0058.
Gubbi, J. et al. (2013). “Internet of Things (IoT): A vision, architectural elements, and
future directions”, Future Generation Computer Systems.
Alkandari, A. et al. (2012). “Smart cities: survey”, Journal of Advanced Computer
Science and Technology Research, 2(2).
Filipponi, L. et al. (2010). "Smart City: An Event Driven Architecture for Monitoring
Public Spaces with Heterogeneous Sensors" Fourth International Conference on
Sensor Technologies and Applications (SENSORCOMM), pp.281-286, 18-25.
UC
Berkeley
(2010).
“WSN
Testbeds
at
http://www.millennium.berkeley.edu/sensornets/, February.
UC
Berkeley”
Beutel, J. et al. (2009). “The Flocklab Testbed Architecture” SenSys, pp. 415–16.
Bers, J. et al. (2010) “Citysense: The Design and Performance of an Urban Wireless
Sensor Network Testbed”.
Arduino. Disponível em: http://www.arduino.cc/ - Acessado em ago. de 2013
Cooking Hacks. Disponível em: http://www.cookinghacks.com/index.php/documentation/tutorials/arduino-3g-gprs-gsm-gps Acessado em set. de 2013
Circuit
at
Home.
Disponível
em:
http://www.circuitsathome.com/arduino_usb_host_shield_projects - Acessado em
set. de 2013
Lima, P. et al. (2012). “Monitoramento Ambiental Através de Redes de Sensores Sem
Fio e Redes Sociais”, In: Salão de Ferramentas do XXX Simpósio Brasileiro de
Redes de Computadores e Sistemas Distribuídos 2012, Ouro Preto.
Waspomote. Disponível em: http://www.libelium.com/ - Acessado em set de 2013.
Cabrini, F. (2006). “Caracterização e análise de desempenho de uma rede de sensores
sem fio” (Doctoral dissertation, Dissertação (Mestrado em Engenharia Elétrica).
Universidade de São Paulo, São Paulo).
Delicato, F. et al. (2004). “Middleware orientado a serviços para redes de sensores sem
fio”, In Anais do 22o Simpósio Brasileiro de Redes de Computadores.
TelosB. Disponível em: http://www.willow.co.uk/TelosB_Datasheet.pdf - Acessado em
set de 2013
ContikiOS. Disponível em: http://www.contiki-os.org/. Acessado em set. de 2013.
Sandy, J. et al. (2010). “Segurança em Redes Sem Fio Heterogêneas Baseada em Grupos
de Confiança”.
64
Rosário, D. et al. (2012). “A smart multi-hop hierarchical routing protocol for efficient
video communication over wireless multimedia sensor network”, In 2nd IEEE
International Workshop on Smart Communication Protocols and Algorithms
(ICC’12 WS - SCPA), Ottawa, Canada.
Ojala, T. (2010). “Open urban testbed for ubiquitous computing”, In Communications
and Mobile Computing (CMC), 2010 International Conference on (Vol. 1, pp. 442447). IEEE.
Des Rosiers, C. et al. (2011). “Very Large Scale Open Wireless Sensor Network
Testbed”, In Proc. 7th International ICST Conference on Testbeds and Research
Infrastructures for the Development of Networks and Communities (TridentCOM)
(2011).
VineLab. Disponível em: http://www.cs.virginia.edu/_whitehouse/research/testbed/ Acessado em set. de 2013.
Werner-Allen, G. et al. (2005). “Motelab: A wireless sensor network testbed”,
In Proceedings of the 4th international symposium on Information processing in
sensor networks (p. 68). IEEE Press.
65
Desenvolvimento de uma Interface Gráfica para o
simulador CODPON-SIM
Patrick A. Bungama¹, Yuri A. Planzo¹, Mauro M. Coutinho¹
¹Centro de Ciências Exatas e Tecnologia (CCET) – Ciência da Computação
Universidade da Amazônia (UNAMA) – Belém – PA – Brasil
[email protected], [email protected],
[email protected]
Abstract. This paper describes a software aimed at setting simulation scenarios
with a performance evaluation module for the simulator CODPON- SIM. This
simulator works with the new proposed computer wireless networks CODPON
(Continuous Displacement Plan Oriented Network), inspired in delay tolerant
networks and disconnections (DTN). The configurator implemented provides a
graphical environment that allows users, besides configure different scenarios
with appropriate simulation parameters, to understand the working principle of
the networks CODPON.
Resumo. Este artigo descreve um software voltado à configuração de cenários
de simulação junto com um módulo de avaliação de desempenho para o
simulador CODPON-SIM. Este simulador trabalha com a nova proposta de
rede de computadores sem fio (Wireless), redes CODPON (Continuous
Displacement Plan Oriented Network), inspiradas em redes tolerantes a atrasos
e desconexões (DTN). O configurador implementado proporciona um ambiente
gráfico que permite aos usuários, além de configurar diferentes cenários com
os devidos parâmetros de simulação, de entender o princípio de funcionamento
das redes CODPON.
1. Introdução
Redes DTN (Delay-Tolerant Networks) são redes móveis sem fio usadas na maioria das
vezes em locais onde não há rotas de comunicação fim-a-fim (end-to-end) de um
determinado dispositivo emissor até um receptor final [Sammou e Abdali 2011] e [Franck
e Gil-Castineira 2007]. Esse tipo de redes pode ser usado para conectar equipamentos
móveis sem fio em áreas sem infraestrutura para suportar conectividade contínua
[Acharya, Shah e Venkataraman 2009] e [Goncharov 2010].
Há alguns anos, foi elaborado o protocolo CODPON (Continuous Displacement
Plan Oriented Network) [Mauro, Thierry, Erick, Alon e Thienne 2011] com intuito de
ser usado para reduzir o isolamento da população ribeirinha da região do Marajó, no norte
do Brasil, onde há uma ausência de infraestrutura de comunicação. O protocolo usa os
barcos como mulas de dados, pois constituem o único meio de transporte da região.
Por meio da modelagem, foram identificados os diferentes componentes das
redes CODPON e assim, foi concebido um modelo simplificado e a partir dele foi
elaborado um simulador denominado CODPON-SIM [Mauro 2009].
Tipicamente existem duas formas de se modelar um sistema: a modelagem
analítica e a modelagem via simulação [Issariyakul e Hossain 2009]. Tornou-se mais
adequado usar a simulação para estudar o funcionamento das redes CODPON em
66
diferentes cenários de transmissão de dados, pois ela é uma das técnicas de modelagem
mais difundida em computação devido à sua facilidade de aprendizado e de uso [Thienne
e Mauro 2011].
Em prol de melhorar o CODPON-SIM, codificou-se um ambiente com interface
gráfica amigável (Front end) permitindo a configuração e a parametrização de diferentes
cenários de simulação e oferecendo aos usuários a possibilidade de entender o
funcionamento das redes CODPON sem saber dos detalhes puramente técnicos.
Este artigo é organizado da seguinte forma: na seção 2, apresenta-se o modelo de
Rede CODPON; na seção 3, faz-se uma descrição completa do Software implementado,
ressaltando os princípios de funcionamento e o módulo de avaliação de desempenho; na
seção 4, destaca-se alguns dos conceitos usados durante o desenvolvimento do Software;
a seção 5 apresenta o exemplo de criação de um cenário; já na seção 6, faz-se as
conclusões e por fim a seção 7 apresenta as referências usadas para a elaboração do
presente trabalho.
2. Rede CODPON
Redes CODPON (Continuous Displacement Plan Oriented Network) são apresentadas
em [Mauro, Thierry, Erick, Alon e Thienne 2011] como um tipo de rede que tem como
principal inspiração o sistema de controle aéreo, com a diferença que o plano de “vôo” é
chamado de plano de deslocamento (DP) e as torres de controle são as Peer Base
Station.
Esse tipo de rede foi concebido para ser usado na região de Marajó, situada no
norte do Brasil, onde os barcos constituem a única alternativa de transporte. Em uma
rede CODPON distingue-se basicamente três tipos de nós: os barcos, as Peer Base
Station (PBS) e hot spots. Os barcos atuam como mulas, transportando os dados
espalhados ao longo do caminho. A figura 1 ilustra esse cenário com barcos encostandose a uma PBS. Os barcos usados em uma rede CODPON são principalmente mantidos
pelos municípios. Eles operam diariamente com rotas pré-definidas, com dias e horários
de partidas e chegadas. Essas informações definem o plano de deslocamento de cada
barco.
Cada comunidade tem pelo menos uma PBS, que é um ponto fixo (Portos) onde
os barcos fazem paradas previamente programadas. Outro elemento de grande
importância são os computadores, chamado de KED (Kit of Data Exchange), localizados
no telhado de todos os barcos fazendo partes da rede. Sempre há uma estação de
base chamado da MATRIX. Todos os outros nós têm uma tabela com a distância
hidrográfica da PBS MATRIX.
67
Figura 1. Barcos levando dados para a PBS (Fonte: http://www.labpetala.com)
O terceiro tipo de nó é chamado de Hot Spot. É um nó especial que só existe em
áreas que têm ligação com a Internet. É um gateway entre redes CODPON e a Internet.
Se um barco cruza com um Hotspot CODPON, uma cópia de todos os dados a bordo é
enviada pela internet. Navios especiais, como aqueles mantidos pelo exército, podem ter
nós Hot Spot, pois sempre mantêm conexão com a Internet [Mauro 2009].
Os Dados das aplicações usando as redes CODPON são divididos em unidades
lógicas denominadas DACT (Data Application in Transit). Cada DACT representa uma
unidade mínima de transmissão de um nó a outro.
O protótipo das redes CODPON foi projetado em 2011 no laboratório Pétala
(Pesquisas em Tecnologias Alternativas Ligadas a Amazônia) da Universidade da
Amazônia (UNAMA). Todo o protocolo de comunicação é escrito em C++ para sistemas
Linux, usando soquetes e multithreading. A comunicação é baseada em Redes Ad Hoc
Veiculares (VANETs). Testes foram feitos em [Filho, Abdelnor, Pimentel, Jacob Jr,
Margalho 2011] e o sistema foi capaz de enviar vídeos, imagens e arquivos de gravação
auditiva de um nó (PBS em território de Marajó) a outro (PBS da capital Belém)
simulando um diagnóstico de um médico em um paciente.
3. Descrição do Software
3.1. Princípios de funcionamento
3.1.1. Configuração das informações básicas
A interface principal do software, como apresentada na figura 2, oferece as primeiras
informações a respeito do cenário a ser configurado para a simulação. São elas:
 Dimensões do cenário: é a proporção da superfície do cenário. Para facilitar, a
dimensão é baseada em uma escala (1:1, 3:4 e 5:9) e um fator que definirá a área
da superfície.
 Duração da simulação: baseado em um pulso de 1 segundo (SimClock), define o
tempo total da simulação.
68
 Velocidade média dos barcos: que é a quantidade de pontos do Flatgrid que
percorre a cada pulso (padrão é 1 metro por segundo).
 Distância entre os pontos do Flatgrid: define a escala do Flatgrid (padrão é de 1
metro).
 Área podendo ser coberta por um barco: define o alcance máximo da comunicação
entre dois barcos (BOATS).
 A consideração de camada de proximidade.
Figura 2. Interface principal
Essas informações (menos as DACTs) devem ser especificadas logo no início da
configuração, pois elas irão ser usadas nos próximos passos.
3.1.2. Configuração dos PBS, BOATs, ROUTEs e STEPs
Em uma segunda etapa do processo de criação de um cenário, especificam-se os
elementos chave da simulação: os Portos ou PBS, os barcos (BOATs) usados como
MULAS para transportar os dados e as rotas (ROUTES).
Para passar nesta etapa, abre-se o Assistente de configuração dos PBS, ROUTE
e BOAT. Na abertura da janela do Assistente, tem-se a possibilidade de escolher um dos
mapas propostos (no nosso caso utilizou-se imagens da região do Marajó) para o
background da tela (figura 3). Isso torna a configuração mais simples e a aproxima do
cenário real, pois no mapa tem-se uma noção realista das verdadeiras localizações dos
municípios.
69
Figura 3. Assistente de Configuração dos PBS, ROUTE e BOAT
Por meio de um clique direito em cima do campo:
 de PBS ou também no próprio mapa, oferece-se a possibilidade de configurar
os portos. Cada PBS terá o seu nome composto por três caracteres (exemplo: BEL
para Belém, MEL para Melgaço, BRE para Breves), o tipo de cobertura encontrado
no porto (Celular, Fixo ou Navio para municípios onde o barco é o único meio de
comunicação) e a sua localização (recuperada automaticamente pelo programa).
 de BOAT, abre-se a janela para especificar o nome do barco.
 de ROUTE, pode-se configurar uma rota. A rota terá um PBS origem e outro como
destino.
Vale ressaltar que cada rota existe um conjunto de plano de deslocamento que
aqui serão referenciados como passos (STEPs). Os STEPs são especificados durante a
criação de uma rota, bastando dar um clique direito no campo caminho. Como exemplo,
pode-se criar uma rota RO0 com origem Belém e destino São Sebastião de Boa vista
com os STEPS Belém-Ponta de Pedras, Ponta de Pedra-Muaná, Muaná-São Sebastião
de Boa vista. A figura 4 ilustra as telas de configuração dos PBS, BOAT, ROUTE e
STEPs.
Figura 4. As janelas de configuração dos PBS, BOATs, ROUTEs e STEPs
70
3.1.3. Associação das rotas com os respectivos barcos
Esta etapa consiste em correlacionar os barcos com as rotas. Todos os BOATs devem
ter rotas interligando os PBS.
A janela de associação dos BOATs com os ROUTEs encontra-se no sub-menu
Configurar Associations do menu Avançado no Assistente de Configuração dos
PBS,ROUTE e BOAT como mostrado na figura 5.
Figura 5. Janela de Configuração das associações dos barcos com as rotas
3.1.4. Configuração do campo DACTs
Esta configuração, como ilustrada na figura 6, é o penúltimo passo do processo de
montagem de um cenário. As DACTs são unidades lógicas que compõem dados que se
encontram em trânsito entre um porto origem e um porto destino [Mauro, Thierry,
Erick, Alon e Thienne 2011].
Figura 6. Configuração das DACTs
3.2. Avaliação de desempenho
Na interface inicial, pode-se executar o módulo de avaliação de desempenho clicando o
botão “Processar Gráficos”. Implementou-se este módulo para poder analisar o
71
desempenho do simulador depois das transmissões de dados, isto é, depois de alguma
simulação ser finalizada no CODPON-SIM.
3.2.1. Atraso
Depois de cada simulação, os instantes de saída e de chegada de cada sequência de DACT
são gravados em um arquivo de texto de mesmo que o atraso ocorrido na transmissão. O
gráfico de atraso é gerado a partir desses dados (figura 7).
Figura 7. Gráfico de atraso
3.2.2. Utilização
Segundo [Johnson e Margalho 2011], a utilização é a fração do tempo em que algum
recurso permanece ocupado. É uma métrica representada em percentagem (%).
No Software, visualiza-se a taxa de utilização de cada nó PBS fazendo parte
da simulação. A figura 8 apresenta o gráfico de utilização dos nós.
Figura 8. Gráfico de utilização
3.2.3. Vazão
A vazão é a taxa na qual os pedidos são atendidos por um determinado sistema
computacional [Di Nicolo e Giaccone 2008]. Usou-se essa métrica para calcular o total
das DACTs recebidas por cada nó durante o tempo total da simulação (figura 9).
72
Figura 9. Gráfico da Vazão
4. Metodologia de Desenvolvimento
4.1. Os conceitos aplicados
O CODPON-Simulador é um software open-source escrito em Java Netbeans. Em
exceção ao Jfreechart, biblioteca externa usada para gerar os gráficos de desempenho,
fez-se uso dos recursos internos do Java Netbeans e do Log4J para depurar a execução
do código.
Para facilitar que outros desenvolvedores deem continuidade ao seu código,
aplicam-se algumas características das seguintes boas práticas de programação (Design
Patterns) [Helm 1994]:
 Mediator: define um objeto que gerencia as colaborações entre um grupo de
objetos. Como no CODPON-Simulador, o Singleton é formada pela série de
heranças, é nele que são encapsuladas as entidades e disponibilizados os métodos
que gerenciarão seus atributos. Há um Mediator para cada entidade principal.
 Singleton: Uma única classe encapsulada é usada para controlar os objetos que
devem ser universalmente acessados. No CODPON-Simulador o Singleton foge
um pouco desse conceito, pois não é uma instância e sim um objeto estático
publicamente acessado; e não é uma classe única, mas sim a raiz de uma sucessão
de heranças entre Mediators.
 MVC (Model-View-Controller): As entidades, logicas de negócio e formulários
são muito bem definidos. Tanto os pacotes como a lógica de programação deixam
as camadas bem definidas e com personalidade própria. A estrutura hierárquica do
código-fonte está exposta na figura 10.
73
Figura 10. Estrutura física do projeto
 Composite: Certas entidades, em alguns casos, são subconjuntos de outras. Para
evitar repetição e retro alimentação, essas entidades são composições ou agregações
de outras. Pode-se tomar como exemplo a entidade ROUTE, que é uma lista de
objetos STEP, que por sua vez é formado por um PBS.
 Iterator: É usado dentro do Mediator para acessar instâncias específicas dentro
das listas de instâncias apenas com a passagem da identidade do objeto como
parâmetro.
 Observer: Cada JComponent usado para exibir valores em formulários é uma
instância do pacote “model.j*”. É usado em todos Iterator, para sincronizar os
JComponent nos formulários.
5. Criando um cenário
O estudo de caso consiste na criação de um cenário com cinco PBS que são: BEL
(Belém), MUA (Muaná), CUR (Curralinho), BRE (Breves) e MEL (Melgaço). A ligação
entre esses municípios é feita por dois barcos (BO1 com rota BEL-MEL e BO2 com rota
desservindo BRE-MUA).
O cenário tem duas rotas que são: BEL-MEL (RO0), com quatro STEPS (BELMUA, MUA-CUR, CUR-BRE, BRE-MEL) e BRE-MUA (RO1) que tem apenas dois
STEPS (BRE-CUR, CUR-MUA). A figura 11 ilustra a interface do Assistente de
Configuração com os PBS e as rotas. Como se pode perceber, a configuração do cenário
é feita usando um mapa da região de Marajó em background, isso oferece ao usuário
uma noção geográfica podendo ajudá-lo a montar o cenário como se fosse real.
74
Figura 11. Estudo de caso
6. Conclusão
Nesse artigo, apresentou-se um Software projetado para fazer configurações de cenários
de simulação de forma simples e eficiente e que irão ser utilizados no simulador
CODPON-SIM.
O Software foi implementado priorizando a simplicidade nas configurações dos
cenários e a facilidade do entendimento dos conceitos de funcionamento das redes
CODPON. Em comparação ao modo antigo de configuração de cenários feita diretamente
no arquivo texto, o uso do Software oferece aos usuários grande agilidade e transparência.
Dentre dos futuros trabalhos relacionados ao configurador apresentado, pretendese fazer um parser para gerar scripts de configuração de cenários que sejam executados
no Network-Simulator 2 (NS2) e também eliminar a dependência do uso do CODPONSIM para executar as simulações.
Referências
Filho, A. De S. O., Abdelnor, F. A. M., Pimentel, L. M., Jacob Jr., A. F. L., Margalho,
M. (2011) “Aplicação de Telemedicina para Segunda Opinião Médica entre
Comunidades Remotas e Grandes Centros Urbanos Utilizando uma Estrutura de
Redes Orientadas a Plano de Deslocamento Contínuo”, I Escola Regional de
Informática - Norte 3 - Rio Branco / AC.
Gamma, E., Helm, R., Johnson, R. (1994) “Design Patterns: Elementos of Reusable
Object-Oriented Software”, Addison Wesley, ISBN 13: 9780201633610.
Sammou, El M., Abdali, A. (2011) “Routing in Delay Tolerant Networks (DTN),
Improved Routing with MaxProp and the Model of Transfer by Delegation (Custody
Transfer)”, International Journal of Communications, Network and System Sciences.
Bloch, J. (2002) “Effective Java: Programming Language Guide”. Addison Wesley,
(ISBN 13:9780201310054).
75
Franck, L., Gil-Castineira, F. (2007) “Using Delay Tolerant Networks for Car2Car
Communications”, IEEE International Symposium on Industrial Electronics (ISIE
2007), Vigo – Spain, Page(s): 2573 - 2578.
Loy, M., Eckstein, R., Wood, M., Elliott, J., Cole, B. (2002) “Java Swing”, O’Reilly
Media, 2nd Edition.
Margalho, M., Mendes dos Santos, I., Matos, M. (2009) “Desenvolvimento de um
Simulador para Redes Orientadas a Plano de Deslocamento Contínuo (CODPONSIM)”, Traços (UNAMA), v. 11, p. 83-92.
Margalho, M., Moreira, T., Silva, E., Efrat, A., Johnson, T. (2011) “Work in Progress:
A new proposal of data mule network focused on Amazon riverine population”,
ExtremeCom, Manaus - Brasil.
Margalho, M. (2009) “Uso de redes codpon em aplicações de governo eletrônico”.
XXIX Congresso da Sociedade Brasileira de Computação. Bento Gonçalves, RS Brasil.
Issariyakul, T., Hossain, E. (2009) “Introduction to Network Simulator NS2”, Springer.
ISSN: 9780387717593.
Johnson, T., Margalho, M. (2011) “Avaliação de Desempenho de sistemas
Computacionais”, GEN/LTC.
Goncharov, V. (2010) “Delay-Tolerant Networking”, Albert-Ludwigs- Universität
Freiburg.
Acharya, H.B., Shah H.N., Venkataraman V. (2009) “Delay Tolerant Networking: A
Retrospective”, Third International Conference on Next Generation Mobile
Applications, Services and Technologies (NGMAST '09), Cardiff - Wales, Page(s):
309 – 314.
Di Nicolo, A. ; Giaccone, P. (2008) “Performance limits of real delay tolerant networks”,
Fifth Annual Conference on Wireless on Demand Network Systems and Services
(WONS), Garmisch-Partenkirchen- Germany.
76
Especificação e Desenvolvimento de um Sistema Domótico
de Baixo Custo Utilizando Arduino
Luiz Felipe de Sousa1, Msc. Cassio David Borralho1, Celson Pantoja Lima1
1Universidade
Federal do Oeste do Pará – UFOPA - R. Vera Paz, s/n – Salé Santarém,
Pará, Brasil – CEP 68035-110
{luizfelipe.mz,cdbpinheiro,celson.ufopa}@gmail.com
Resumo. Este trabalho demonstra o processo de especificação e desenvolvimento de
um sistema domótico de baixo custo, que compreenda um conjunto de sensores e
atuadores afim de controlar dispositivos da residência onde será instalado às
necessidades de seu usuário. O sistema deve executar desde simples ações como
acender a luz até realizar um cálculo para saber qual dispositivo consome mais energia
podendo assim obter dados sobre eficiência energética. O projeto pretende ser um
ponto de partida para aplicações de escopo mais amplo e de funções mais complexas.
O sistema desenvolvido utiliza de uma placa microcontroladora Arduino para realizar
as tarefas de automação da residência, e recebe os comando pela porta serial USB
ligada a um computador, no qual estará instalado um servidor WEB com o módulo
cliente servidor da aplicação. O usuário poderá interagir com o sistema através de um
dispositivo móvel.
1. Introdução
Nos últimos anos, com a evolução da eletrônica e o surgimento da microeletrônica várias
áreas do conhecimento ganharam em desenvolvimento e velocidade de novas
descobertas. A informática é uma destas áreas. Computadores cada vez menores e mais
rápidos a cada geração elevam o poder de processamento e capacidade de armazenamento
de informações, trazendo à realidade conceitos antes apenas explorados em livro e filmes
de ficção científica (TEZA, 2002). As pessoas passaram de utilizadores ativos da
tecnologia para a categoria de utilizadores passivos, onde a tecnologia passa a interagir
com o ser humano sem que este explicite uma determinada ação (BOLZANI, 2007). Com
isto, a tecnologia se aproxima das pessoas para servir também como meio de
entretenimento, lazer e cultura, todos querem equipamentos de fácil utilização, com
funções facilmente identificáveis e que proporcionem conforto.
Neste contexto entra a automação residencial, pois através do agrupamento de
diversas tecnologias é possível proporcionar ao usuário um ambiente de conforto,
segurança e economia de energia. Devido a intensa integração entre tecnologias e áreas
dentro da automação residencial surgiu uma nova vertente de estudos denominada
Domótica, esta tem por característica ser de caráter multidisciplinar, ela agrega vários
conceitos de outras ciências como Arquitetura, Engenharia, Ciência da Computação,
Medicina, Sociologia e Psicologia a fim de estudar todas as necessidades do usuário frente
às possibilidades oferecidas pelo mundo digital e suas interações com a residência
automatizada (BOLZANI, 2007).
Domótica é um tema atual e bem explorado, no entanto fica a dever um pouco no
quesito financeiro, ás vezes um sistema domótico pode ser bastante caro dependendo das
suas funcionalidades, mesmos as mais básicas. A falta de referências na literatura
nacional contribui com a não propagação do tema, com isso, percebe-se uma carência de
77
profissionais e a falsa impressão de que sistemas domóticos têm que ser caros. No Brasil
tem-se poucos livros publicados sobre o tema: “Residências Inteligentes” de Caio Bolzani
(2004) como o mais conhecido e “Automação Predial e Residencial - Uma Introdução”
de Francesco Prudente (2011) o mais recente no tema.
Neste artigo o objetivo geral é demonstrar a possibilidade de construção de um
sistema domótico de baixo custo, mostrando também que sua interface possa estar
acessível pela WEB.
2. Domótica
A palavra domótica deriva das palavras Domus (casa) e Robótica (controle
automatizado), dessa maneira, a domótica define-se como a possibilidade do controle de
forma automática de habitações. Segundo Roque (2008), domótica é a utilização
simultânea da eletricidade, da eletrônica e das tecnologias da informação no ambiente
residencial, para assim realizar a sua gestão, podendo esta ser local ou remota, e oferecer
uma gama de aplicações integradas baseadas em segurança, conforto, comunicação e
gestão de energia.
O desejo de automação em projetos de pequeno e médio porte com características
comerciais ou residenciais começou a surgir na década de 80 quando companhias como
a Leviton (http://www.leviton.com) começaram a desenvolver sistemas de automação
predial alcançando 4 milhões de edifícios e casas já no ano de 1996. Com o grande
número de aplicações e oportunidades geradas pelo computador pessoal, pelo surgimento
da INTERNET e pela redução dos custos do hardware, criou-se uma nova cultura de
acesso à informação digitalizada. Esses fatores permitiram elevar o projeto elétrico de seu
nível convencional para um superior no qual todas as suas funções desenvolvidas estejam
integradas e trabalhando em conjunto (Bolzani, 2004).
A domótica compreende um conjunto de equipamentos microcontrolados de
controle centralizado ou não, que interagem entre si através de meios de comunicação
homogêneos ou heterogêneos, trocando informações e tomando decisões orientadas ao
usuário para assegurar seu conforto, segurança e bem estar. (TERUEL, 2008, p.25)
Basicamente a automação residencial é a atuação de dispositivos nas funções de elétrica,
hidráulica e ar condicionado, permitindo o uso customizado de aparelhos elétricos e
garantindo economia de energia elétrica e água (BOLZANI, 2004, p. 61).
3. Tecnologias utilizadas
Diversas tecnologias foram integradas a fim de se obter um sistema domótico funcional,
a escolha destas obedeceu os critérios de: material disponível na literatura, maturidade,
segurança e tecnologia open source.
Em uma visão macro o sistema divide-se em hardware de integração, servidor
WEB, protocolo para troca de mensagens entre o sistema e o hardware de integração. Esta
divisão será detalhada em níveis menores e suas especificações demonstradas. Na figura
1 é possível identificar a integração das tecnologias envolvidas no processo de
desenvolvimento de maneira mais ampla.
3.1 Hardware de Integração – Arduino
78
O hardware de integração terá o papel de receber os comandos enviados pelo software e
reproduzi-los no mundo real, bem como enviar de volta para o software status de sensores
e respostas a comandos. O hardware escolhido tem a capacidade de interação com o meio
físico através de sensores e atuadores, característica essencial para a correta
implementação do sistema domótico, para isto, foi escolhida a plataforma Arduino.
Arduino é uma plataforma open source de prototipação eletrônica, computação física,
extremamente flexível e poderosa além de ter a capacidade de interação com o mundo
real, através de sensores é possível captar eventos externos, tratá-los e responder a estes
caso seja o caso de sua programação. A especificação do hardware é de código aberto, o
que significa que um usuário pode de posse dos esquemas de ligações eletrônicas montar
sua própria placa Arduino com um custo baixo, a mesma pode ainda ser adquirida por um
preço bem baixo também (ARDUINO, 2012).
3.2 Servidor WEB Apache
O servidor WEB será responsável por hospedar o sistema domótico e prover uma interface
para o seu usuário. Através do servidor web o sistema poderá estar disponível em uma
rede local ou na internet, dependendo da configuração ou necessidade do cenário a ser
implementado, neste trabalho o servidor web funcionará no âmbito de uma rede local,
para este serviço foi utilizado o servidor Apache que hospedará o código da interface de
acesso ao sistema em PHP.
3.3 Desenvolvimento do código do Microcontrolador
A linguagem de programação utilizada no hardware de integração Arduino, tem origem
em Wiring e é essencialmente C/C++, com várias pequenas modificações antes de ser
transformada em avr-gcc.
3.4 Criação da interface WEB para acesso ao sistema domótico
O sistema domótico acessível via web necessita de uma interface que ofereça uma boa
experiência de navegação a seus usuários, como a premissa do trabalho é a de que o
sistema seja acessível por dispositivos móveis, é ideal a correta visualização da interface
independentemente do modelo ou marca do dispositivo móvel requisitante. Para suprimir
este problema foi utilizado Jquery e Jquery Mobile. jQuery Mobile é um framework para
desenvolvimento web, otimizado para interação por toque e que se destina à criação de
aplicações para smartphones e tablets. Seu desenvolvimento está voltado para fornecer
mecanismos capazes de criar sistemas unificados de interface de usuário, baseados em
HTML5 e CSS3 e capazes de ser funcionais em todas as plataformas móveis tendo como
base de construção as bibliotecas jQuery e jQuery UI (Silva, 2012).
79
Figura 1. Integração das tecnologias envolvidas
4. Visão Geral do Protótipo
O protótipo desenvolvido tem o nome de HAL, acrônimo de Habitação Automatizada
Livre. O experimento está dividido em três partes: montagem do circuito eletrônico do
hardware de integração; desenvolvimento do código embarcado no hardware de
integração; desenvolvimento do código do sistema web.
O HAL permite ao usuário ter o controle de diversos dispositivos presentes em
sua residência e que estejam ligados à rede elétrica. Opções como ligar e desligar
equipamentos via celular acessando uma página web formatada para dispositivos móveis,
bem como poder checar o status dos dispositivos e seu consumo de energia estão
presentes no sistema. Desta maneira o usuário ganha em conforto, segurança e ainda pode
verificar o aparelho que mais consome energia, diminuindo assim seus gastos.
O HAL é um sistema organizado por módulos, onde tem-se a parte de controle
físico que é gerida por um microcontrolador Arduino, e a parte do controle lógico que
compreende os códigos de controle do microcontrolador e da aplicação em PHP. Para a
apresentação das funcionalidades, estrutura e funcionamento do sistema foi utilizada a
linguagem UML1.
O HAL tem por finalidade permitir que o seu utilizador tenha o controle através
de seu celular, de certos dispositivos presentes em sua residência como por exemplo:
lâmpadas, ar condicionados, televisores e outros equipamentos que estejam ligados à rede
1
Unified Modeling Language que é uma linguagem visual para especificação, construção e documentação
de artefatos de software.
80
elétrica da residência. Para isso é necessário que o celular possua um navegador de
INTERNET e se conecte na URL do sistema que estará hospedado em um servidor WEB
local ou remoto no caso de um acesso via INTERNET. Ao acessar o sistema o servidor
disparará as ações escolhidas para o microcontrolador Arduino através de uma conexão
serial USB, caso haja retorno de informações ao fluxo de dados segue o caminho inverso
(Figura 2).
Figura 2. Descrição do HAL e seu fluxo de informações
4.1 Visão Funcional
A visão funcional do sistema tem como ponto principal demonstrar as funcionalidades do
sistema através de diagramas de caso de uso. O diagrama de caso de uso do sistema HAL
possui 3 atores, Usuário, Sensores e Atuadores (Figura 3). O ator Usuário é o humano
que irá interagir com o sistema, os atores Sensores e Atuadores são dispositivos externos
mas que também irão interagir com o HAL. Para o ator Usuário, o HAL provê as seguintes
funcionalidades para o usuário:
●
Efetuar Login;
●
Verificar status da residência;
●
Ver temperatura;
●
Ver status dos dispositivos;
●
Alterar dispositivos;
●
Alterar lâmpadas.
81
Figura 3. Caso de uso geral do HAL
4.2 Diagrama de Implantação
Na figura 4 é apresentado o diagrama de implantação do HAL, neste caso é ilustrado o
módulo Cliente-Servidor responsável pela interface e a aplicação WEB. O nó dispositivo
móvel representado pelo estereótipo <<device>> acessa o servidor WEB através de uma
conexão 3G ou 802.11 wlan. O nó Servidor de Aplicação WEB tem o estereótipo
<executionEnvironment>> pois representa o ambiente de execução da aplicação, é
composto pelos principais componentes necessários à execução do sistema.
Figura 4. Diagrama de Implantação
A figura 5 representa o diagrama de implantação do módulo de interação física,
onde tem-se o microcontrolador Arduino e seu sistema embarcado. O nó Arduino possui
o estereótipo <<executionEnvironment>> que descreve a configuração exata do
microcontrolador. O nó Arduino possui três dispositivos ligados a ele, Sensor
Temperatura, Sensor Luminosidade e Relé. Cada um dos dispositivos está ligado ao nó
82
Arduino através de uma conexão específica, pino digital ou pino analógico, no diagrama
é também mostrado a relação entre nó e dispositivo.
Figura 5. Módulo de Interação Física
5. Protótipo do Circuito do Hardware de Integração
Para uso neste trabalho foi montado um circuito que simulasse as condições de uma
residência, obedecendo ao cenário proposto com controle de luminosidade, controle de
temperatura e dispositivos eletrônicos presentes na residência. Para a montagem do
circuito foi utilizado uma placa de prototipagem do tipo Breadboard, encontrada em lojas
de eletrônica (Figura 6).
83
Figura 6. Circuito Principal
O circuito principal foi montado visando a simulação de um ambiente residencial
básico, onde é possível controlar a iluminação através de sensores LDR 2 , verificar a
temperatura no ambiente através de sensores NTC3. Os LEDs presentes na montagem do
circuito simulam as lâmpadas da residência e dispositivos eletrônicos ligados à rede
elétrica.
6. Telas do Sistema
Apresentação de algumas telas do sistema HAL desenvolvidas com o uso de jQuery
Mobile, com isso tem-se uma unificação da interface dos usuários onde está se adapta ao
dispositivo móvel onde a aplicação está sendo vista.
Figura 7. Tela de inicial de acesso ao HAL
Figura 8: Mapa da residência.
2
Light Dependent Resistor, em português Resistor Dependente de Luz
3
Sensor que altera a resistência em seus terminais segundo a temperatura a que é submetido.
84
Figura 8. Mapa da residência
Figura 9. Opções disponíveis nos cômodos
7. Considerações Finais
O objetivo do artigo é documentar e demonstrar a possibilidade de construção de um
sistema domótico de baixo custo, mostrando também que sua interface possa estar
acessível pela web. Para o cumprimento deste foi utilizado hardware e software
opensource o que reduziu bastante o preço final do sistema em comparação aos preços
praticados no mercado.
O objetivo do sistema HAL é suportar os conceitos de domótica oferecendo ao
seu usuário uma interface interativa, de fácil utilização, e que permita o controle sobre
sua residência. Para suportar este objetivo, o HAL dispõe das seguintes funcionalidades:
●
Acessar o sistema em qualquer dispositivo móvel.
●
Efetuar o login no sistema para ter acesso ás suas opções.
●
Permite ao usuário, verificar quais os dispositivos eletrônicos ligados na sua
residência.
●
Permite ao usuário, alterar o estado das lâmpadas e dispositivos eletrônicos de sua
residência.
●
Permite ao usuário, verificar a temperatura de sua residência.
85
Os resultados obtidos foram satisfatórios, o HAL mostrou-se efetivo além de
poder ser adaptado para o emprego em cenários mais amplos e complexos. Os conceitos
da domótica são facilmente identificados no sistema.
Durante o processo de desenvolvimento do projeto, várias ideias surgiram de
maneira a agregar à ideia inicial. É possível o desenvolvimento de um banco de dados
mais robusto que possa contemplar opções de agendamento de tarefas e modos
automáticos de perfis para a residência. A integração do Arduino com um shield com
tecnologia GSM possibilitaria o sistema informar por SMS o usuário caso alguma
mudança ocorra no ambiente, ganharia assim funcionalidades de segurança. Foi pensado
em um sistema para travamento e destravamento das portas utilizando a tecnologia
bluetooth onde seria dispensável o uso das atuais chaves.
O atual estado do projeto bem como sua documentação auxiliam no processo de
se continuar o desenvolvimento de novas funcionalidades e mudanças de tecnologias.
Referências
ARDUINO, Disponível em http://www.arduino.cc/. Acessado em 20/05/2012
APACHE, Disponível em http://apache.org/. Acessado em 20/05/2012
TERUEL, E. C. Uma proposta de framework para sistemas de automação residencial com
interface para WEB. 2008. 158 f. Dissertação (Mestrado em Tecnologia: Gestão,
Desenvolvimento e Formação) – Centro Estadual de Educação Tecnológica Paula
Souza, São Paulo, 2008.
BOLZANI, Caio A. M. Residências Inteligentes: um curso de Domótica. 1.ed. São Paulo:
Editora Livraria da Física, 2004. 332 p.
TEZA, Vanderlei Rabelo. ALGUNS ASPECTOS SOBRE A AUTOMAÇÃO
RESIDENCIAL - DOMÓTICA. 2002. 108 f. Dissertação (Mestrado em Ciência da
Computação) – Universidade Federal de Santa Catarina, Santa Catarina, 2002
Dias, César Luiz de Azevedo, “DOMÓTICA Aplicabilidade e Sistemas de Automação
Residencial”. Artigo - CEFET. CAMPOS DOS GOYTACAZES. RJ, 2009
Silva, Maurício - Desenvolva aplicações web para dispositivos móveis com HTML5,
CSS3, AJAX, jQuery e jQuery UI, 2012
ROQUE, Eng António. Introdução a domótica. Publicado na Revista O Electricista, nº1
Jul, Agos e Set de 2002. Disponível em: http://www.antonioroque.com/textos.asp?
idCat=11&idArtigo=12. Acesso em 18/05/2012
BOLZANI, Caio A. M. Residências Inteligentes: um curso de Domótica. 1.ed. São Paulo:
Editora Livraria da Física, 2004. 332 p.
86
Estudo das Técnicas de Monitoramento para Avaliação do
Desempenho em Cluster de Servidores Web
Diego B. Lopes¹, Patrick A. Bungama¹, Taison A. de Nadal¹, Ananias P. Neto¹
¹Centro de Ciências Exatas e Tecnologia, Universidade da Amazônia - UNAMA.
66060-902 - Belém – PA – Brasil
[email protected], {patrick.bungama,taison.nadal}@gmail.com,
[email protected]
Abstract. This paper presents a comparative study of the monitoring techniques,
such as HTTP/GET, PING and TCP implemented on a cluster of web servers to
ensure high availability of the HTTP service. The study is based on metrics of
QoS (Quality of Service), flow rate, packet loss and jitter, in addition relates
Speed Up to the time and sequence processing time of parallel processing.
Results show that the technique HTTP / GET is a good alternative for
monitoring the high availability cluster, compared to other techniques.
Resumo. Este artigo apresenta um estudo comparativo das técnicas de
monitoramento, tais como, HTTP/GET, PING e TCP aplicadas em um cluster
de servidores web, para garantir alta disponibilidade do serviço HTTP. O
estudo é baseado nas métricas de QoS (Quality of Service), vazão, perda de
pacotes e jitter, além do Speed Up que relaciona o tempo de processamento
sequencial e o tempo de processamento paralelo. Resultados obtidos mostram
que a técnica HTTP/GET é uma boa alternativa para o monitoramento do
cluster de alta disponibilidade, comparadas às demais técnicas.
1. Introdução
A popularização de diversas aplicações usadas em áreas como economia, biologia,
meteorologia, entretenimento, entre outros, tem obrigado os profissionais de computação
a recorrer a computadores cada vez mais potentes e com mais capacidade de
armazenamento para poder processar enormes quantidades de dados disponíveis [Hilário,
2012]. Neste contexto, desenvolveram os clusters de alta disponibilidade necessários para
manter os serviços sempre ativos e tolerantes a falhas.
Em [Dantas, 2005], esse tipo de computação é chamado de computação de alto
desempenho, pois faz uso de recursos computacionais superiores aos recursos
normalmente disponíveis, como desktops ou estações de trabalho. Uma das soluções para
atender a essa grande demanda de poder computacional foi à introdução do uso de
supercomputadores, porém essa solução não tem sido muito viável por questão
econômica.
De fato, os supercomputadores, que são sistemas fortemente acoplados e de
grande poder computacional, possuem um custo muito elevado que não é acessível a todas
as organizações. A melhor alternativa aos supercomputadores foi a utilização dos clusters
também conhecidos como sistemas fortemente acoplados. Como exemplo temos o SMP
(Symmetric Multiprocessor) e o NUMA (Non-Uniform Memory Access). Neste artigo foi
utilizado o cluster SMP, com arquitetura SIMD (Single Instruction Multiple Data).
87
Em [Hilário, 2012] um cluster é definido como um sistema distribuído de
computadores independentes e interligados, cujo objetivo é suprir a necessidade de um
grande poder computacional com um conjunto de computadores de forma transparente
ao usuário.
Em ambiente web faz-se muito o uso dos clusters para suprir as grandes
requisições feitas aos servidores. O uso de clusters tem aumentado o desempenho de
inúmeros sistemas web (carga ou tempo de execução de tarefas), porém a tendência é que
aumente ainda mais visto a realidade atual. Para tornar esse aumento possível, usa-se a
avaliação de desempenho de sistemas existentes.
O objetivo desse trabalho é avaliar o desempenho de um cluster web virtualizado,
no que se refere ao atendimento das requisições HTTP que acessam os servidores. Assim
verificando a alta disponibilidade do cluster utilizando três técnicas de monitoramento
conhecidas HTTP/GET, PING e TCP. A análise do QoS (Quality of Service) será feita a
partir das métricas Vazão, Jitter e Perda de Pacotes, sendo que a métrica Speed Up será
utilizada para análise do desempenho do sistema paralelo.
Este artigo está organizado da seguinte forma: Na seção 2, apresentam-se os
trabalhos relacionados. A seção 3 apresenta conceitos de computação de alto
desempenho. Na seção 4 são apresentados conceitos relacionados a cluster Web. A seção
5 descreve as métricas de desempenho utilizadas neste trabalho. A seção 6 destaca o
cenário do test bed realizado e os resultados obtidos a partir das métricas aplicadas e na
seção 7 são abordas as conclusões e trabalhos futuros.
2. Trabalhos relacionados
Esta seção descreve os trabalhos relacionados a este estudo. Os trabalhos citados foram
de grande contribuição para a área de computação paralela. Vários trabalhos direcionados
à avaliação de desempenho em ambiente de Computação de Alto Desempenho têm sido
apresentados com objetivo de aumentar o desempenho dos sistemas usados nesse tipo de
ambiente.
Em [Hilário, 2012] aborda os principais componentes de um cluster de alto
desempenho enfatizando os tipos de cluster de alto desempenho, suas arquiteturas, além
de apresentar o conceito de desempenho em clusters, sem, porém fazer alguma avaliação
de desempenho dos mesmos com técnicas de monitoramento.
Em [Beserra et al, 2012] é feito um comparativo de desempenho entre clusters
em ambiente real e virtualizado. Em ambos os ambientes, os clusters tinham condições
equipotentes. Foram analisados a transmissão de dados e o processamento sustentado.
Em [Beserra et al, 2012] faz um estudo comparativo de diferentes ferramentas de
virtualização na construção de clusters para reaproveitar as aplicações de Computação de
Alto Desempenho e infraestruturas subutilizadas. Os autores definiram como objetivos
determinar qual virtualizador oferece ao cluster o melhor desempenho, melhor
gerenciamento de recursos. A análise foi feita para o processamento sustentado, a vazão
média, as operações de E/S.
Na literatura, existem propostas de análises de desempenho de sistemas paralelos
e cluster de alto desempenho. No entanto, nenhum dos trabalhos citados utilizam as três
técnicas de monitoramento do cluster de servidores web, visando a melhor otimização
88
das aplicações. Neste artigo, foi realizada a avaliação de desempenho do cluster,
monitorado pelas técnicas HTTP/GET, PING e TCP.
3. Computação de Alto Desempenho
Em [Dantas, 2005], apresenta-se a Computação de Alto Desempenho como o tipo de
computação que faz uso de recursos computacionais superiores aos recursos normalmente
disponíveis, como desktops ou estações de trabalho.
Essa técnica nasceu da necessidade crescente por aplicações que necessitam de
grande poder computacional para fins de simulação, escalabilidade, computação
científica, entre outros [Sousa et al, 2012].
Em ambiente de Computação de Alto Desempenho, os supercomputadores foram
à primeira solução aos problemas ligados ao poder computacional, porém atualmente os
Clusters têm sido uma melhor alternativa de uso por questões ligadas ao custo necessário
para adquiri os supercomputadores.
Um cluster é um sistema distribuído de computadores independentes e
interligado, cujo objetivo é suprir a necessidade de um grande poder computacional com
um conjunto de computadores de forma transparente ao usuário [Bacellar, 2012].
4. Cluster de Servidores Web
Um servidor web, por mais otimizado que seja, pode não conseguir preencher os
requisitos de tolerância a falhas, escalabilidade e principalmente desempenho para
grandes demandas. Uma alternativa efetiva e relativamente barata e que tem sido adotada
atualmente para aumentar o poder computacional é o uso de uma estrutura baseada em
múltiplos servidores.
O termo clusters web refere-se a uma coleção de servidores web se apresentando
como único sistema [Sousa et al, 2012]. Nesse artigo, usou-se uma arquitetura com um
nó do cluster configurado como máquina mestre (também conhecido como o Front End),
conforme ilustra a Figura 1, sendo que ela distribui as requisições dos clientes aos demais
servidores do cluster.
Figura 1. Cluster com nó controlador. Fonte: (Tanenbaum, 2007)
A máquina mestre, segundo [Tanenbaum, 2007], estabelece uma conexão TCP
com o servidor (camada de transporte), sempre que um cliente fizer uma requisição HTTP
e oferece distribuição de requisição em função de conteúdo, em outras palavras, ela
decide qual servidor deve repassar a requisição. Isso garante o balanceamento de carga
ou load balancing.
89
5. Avaliação de Desempenho
A preocupação com o aumento de desempenho de sistemas computacionais tem criado
um grande interesse na área de avaliação de desempenho. Esse procedimento inclui tudo
o que é possível mensurar não só quantitativamente, mas também qualitativamente
[Johnson et al, 2011].
Em sistemas computacionais especificamente, a avaliação de desempenho é usada
para saber se o sistema atende os usuários de forma eficiente e satisfatória. Em ambiente
Web, a eficiência de um sistema inclui cálculos de inúmeras métricas como: o tempo de
processamento de uma requisição HTTP, a carga de trabalho, a utilização, a vazão, etc.
Nesse artigo, as métricas analisadas no cluster de servidores web são o Speed Up
e as métricas de QoS (Vazão, Perda de pacotes e Jitter). Cada uma dessas métricas é
abordada a seguir.
5.1. Speed Up
Uma das principais métricas utilizadas neste trabalho para avaliação de desempenho é o
Speed Up. Segundo [Amdahl, 1967], o Speed Up relativo à execução de certa tarefa sobre
p processadores é definido como a razão entre o tempo gasto para sua execução em um
único processador (tempo de processamento sequencial) e o tempo gasto para sua
execução sobre p processadores (tempo de processamento paralelo). Se o tempo de
execução de uma determinada tarefa sobre p processadores é T(p), pode-se expressar o
fator de Speed Up, S(p), em termos matemáticos, como apresentado na expressão 1:
(1)
5.2. Vazão (Pacotes/segundo)
A vazão é a taxa na qual os pedidos recebidos são atendidos por um sistema. Por taxa
entende-se o número de requisições atendidas por unidade de tempo [Johnson, 2011].
Throughput (Vazão) é a métrica definida como o número de requisições executadas por
unidade de tempo [Comer, 2007]. A unidade utilizada depende do tipo da requisição que
está sendo enviada ao servidor. Para servidores Web, uma medida utilizada pode ser a
quantidade de requisições HTTP servida por segundo.
A vazão é o parâmetro mais básico de QoS e é necessário para a operação
adequada de qualquer aplicação. Em termos práticos as aplicações geram vazões que
devem ser atendidas pela rede [Recomendation ITU, 2010]. É uma das métricas mais
usadas para avaliar quantitativamente sistemas computacionais existentes (redes de
computadores, sistemas de banco de dados, entre outros).
5.3. Jitter
Considerando uma rede de computadores, pode-se entender o jitter como sendo a
variação no tempo e na sequência de entrega das informações [Recomendation ITU,
2010]. O jitter é caracterizado pela quebra da sequência no tráfego dos pacotes, pois os
mesmo podem seguir caminhos distintos na rede e, em cada roteador, o pacote deve
esperar sua vez para ser processado, fazendo com que alguns pacotes não chegam ao
destino na ordem de envio.
90
Em redes de computadores, o jitter pode ser entendido como a variação no tempo
e na sequência de entrega das informações devido à variação na latência da rede. Durante
a transmissão de pacotes em uma rede, alguns fatores contribuem no atraso da entrega
dos mesmos ao destino. Utilizando essa métrica temos como verificar o tempo que está
se perdendo e analisar qual dos servidores está com seu processamento mais alto com
relação aos demais.
5.4. Perda de pacotes
Um pacote pode ser enviado e não ser recebido por um destinatário, quando isto ocorre
diz-se que houve a perda do pacote. A quantidade de pacotes perdidos tende a aumentar
conforme o aumento do tráfego na rede, sendo que a maioria das perdas ocorre em nós
congestionados [Kurose, 2006].
Essa métrica analisa a quantidade de pacotes que foram enviados pelo emissor e
que nunca foram recebidos em seu destino. Essa medida é geralmente expressa em
porcentagem. A perda de pacotes é outro elemento crítico que influencia de forma direta
na qualidade de serviço da rede. Os pacotes podem ser perdidos ou descartados por várias
razões como erros, atraso excessivo e assinatura excessiva [Burgess, 2004].
6. Test Bed e Resultados
Esta seção descreve o cenário utilizado nesse artigo, assim como os resultados obtidos.
Para isso foram aplicadas as técnicas de monitoramento, que utilizaram o cluster Web,
havendo apenas variação no número de servidores, com o objetivo de avaliar em qual
técnica o cluster tem melhor desempenho, menos perda e menos vazão.
Os servidores possuem processadores Inter Core I5 com frequência de operação
de 3.8Ghz, 4GB de memória principal e FBS 133Mhz. Sistema operacional Windows
Server 64 Bits. Os clientes possuem processador Intel Core 2 Duo com frequência de
operação 2.6 Ghz, 2GB de memória principal e FBS 668Mhz. Sistema operacional
Windows Seven 32Bits.
6.1. Cenário
No cenário, foi configurado um cluster Web virtualizado composto de quatro servidores
web (também virtualizados), uma máquina coordenadora, responsável pelo
balanceamento de carga dos servidores Web. Na máquina mestre foi configurado o
serviço DNS, o Firewall (ISA). O desempenho do cluster foi avaliado fazendo as
medições do Speed Up, Vazão, Perda de Pacotes e Jitter.
91
Figura 2. Cenário
6.2. Resultados
Em um primeiro momento, registrou-se o tempo de processamento das requisições do
cluster mudando a quantidade dos servidores de um até quatro. Utilizou-se o software
Benchmark PUC [Benchmark PUC, 2013]. No cluster, configurou-se a técnica de
monitoramento HTTP/GET. Com as medições obtidas, calculou-se os valores de Speed
Up. Posteriormente, as medições do tempo de processamento (paralelo e sequencial)
foram realizadas, também para as técnicas PING e TCP.
Nota-se que houve um aumento do Speed Up, ao aumentar o número de servidores
do cluster para as técnicas HTTP/GET e PING, conforme ilustra a Figura 3. Esse aumento
aconteceu também para o TCP, porém houve uma diminuição do valor do Speed Up em
relação ao cluster composto de dois servidores, isso devido ao grande controle de fluxo
do protocolo.
Figura 3. Gráfico de Speed Up
A segunda métrica avaliada foi a vazão utilizando o software Wireshark
[Wireshark, 2013]. O Wireshark é um programa que analisa o tráfego de rede e o organiza
por protocolos, desta forma no experimento foi possível medir a quantidade de pacotes
por unidade de tempo que trafegaram na rede.
As medidas foram realizadas no cluster formado de um a quatro servidores. Com
os resultados obtidos, na Figura 4, observou-se que houve o aumento dos valores da vazão
para as três técnicas de monitoramento em cada adição de servidor. Esse aumento foi
92
muito considerável usando o TCP como técnica, por ser um protocolo confiável que
trabalha com controle de fluxo, o que justifica o monitoramento lento comparado com as
outras técnicas.
Figura 4. Gráfico de Vazão.
No último momento foi feita a análise de duas métricas do QoS. Foi usada a
ferramenta Iperf [Iperf, 2013]. Recolheram-se os valores do jitter e da perda de pacotes
do cluster variando a quantidade dos servidores de um à quatro, com as três técnicas de
monitoramento HTTP/GET, PING e TCP. Para o jitter, percebeu-se que com a técnica
HTTP/GET só teve uma quantidade considerável com número de servidores no máximo.
Para o PING, o melhor desempenho foi com três servidores. O TCP obteve bom
desempenho com três servidores. Assim concluímos que a quantidade de servidores fez
influência com a técnica HTTP/GET, porém com PING e TCP o aumento de servidores
diminuiu seu desempenho, como mostrado na Figura 5.
Figura 5. Gráfico do jitter
Em relação à perda de pacotes, nota-se na Figura 6 que todas as técnicas de
monitoramento tiveram uma diminuição na sua porcentagem de perda de pacotes.
Contudo a técnica HTTP/GET obteve melhor desempenho, com relação ao aumento de
servidores.
93
Figura 6. Gráfico de perda de pacotes
7. Conclusões e Trabalhos Futuros
Conclui-se que para os resultados do Speed Up todas as técnicas de
monitoramento tiveram resultados próximos, porém a técnica HTTP/GET obteve melhor
desempenho por ter uma vazão baixa comparado com PING e TCP que são mais
onerosos.
Para os resultados da vazão, a técnica TCP obteve o pior desempenho, visto que
o monitoramento do tráfego de pacotes na rede é mais rigoroso para o protocolo TCP. O
melhor caso obteve-se utilizando a técnica HTTP/GET, haja vista que para um ou quarto
servidores a vazão foi a mais baixa.
Nas medições do Jitter, observou-se que os valores obtidos foram insignificantes
para o cluster de um e dois servidores. Entretanto, para quatro servidores a técnica
HTTP/GET teve o pior desempenho.
Considerando os testes realizados e os resultados obtidos, a técnica de
monitoramento HTTP/GET destacou-se entre as demais por ter obtido melhor
desempenho quanto ao Speed Up, vazão e perda de pacotes.
Como trabalhos futuros propõem-se realizar novos testes com o aumento de
servidores e análise de novas técnicas de monitoramento, bem como na aplicação de
novos serviços.
Referências
Recommendation ITU-R M.1645. (2010) “Framework and overall objectives of the
future development of IMT-2000 and systems beyond IMT-2000”, Electronic
Publication, pp. 22–24, Geneva.
Wireshark, Disponível em: http://pt.wikipedia.org/wiki/Wireshark. Acessado em 28 de
Agosto de 2013.
Iperf, Disponível em: http://www.iperfwindows.com. Acessado em 02 de Setembro de
2013.
Amdahl, G. (1967), “Validity of the single processor approach to achieving large-scale
Computing capabilities”, In: AFIPS Conference Proceedings, p. 483-485.
Burgess, N. (2004), “Testing of Ethernet Services in Telecom Networks: RFC 2544. [S.I]:
Agilent Technologies”.
94
Caio César S. Sousa, Val Ivo M.S. Filho, Ananias P. Neto (2011), “Análise de Técnica
de Virtualização Completa Aplicado a Computação de Alto Desempenho”. I Escola
Regional de Informática Norte 3.
Dantas, M. (2005), “Computação distribuída de alto desempenho: redes, clusters e grids
computacionais”, Rio de Janeiro: Axcel Books.
Comer, E. D. (2007) “Redes de Computadores e Internet”, 4ª Edição. São Paulo: Editora
Bookman.
D. W. S. C Beserra, S. C. Romeiro A. Souto, M. J. Pimentel de Andrade, A. E. Pereira
de Araújo (2011) “Comparativo de desempenho de um cluster virtualizado em relação
a um cluster convencional sob condições equipotentes”, IX Workshop em Clouds,
Grids e Aplicações. XXIX Simpósio Brasileiro de Redes de Computadores.
D. Beserra, A. Borba, S. Solto, M. Andrade, A. Araújo (2012) “Desempenho de
Ferramentas de Virtualização na Implementação de Clusters Beowulf Virtualizados
em Hospedeiros Windows”, X Workshop em Clouds e Aplicações. XXX Simpósio
Brasileiro de Redes de Computadores.
Hilário Viana Bacellar (2010), “Cluster: Computação de Alto Desempenho”, Instituto de
Computação, Universidade Estadual de Campinas, São Paulo.
Tanenbaum, A. S. e Maarten, V. S. (2007) “Sistemas Distribuídos: Princípios e
Paradigmas”, 2ª ed. São Paulo: Pearson Prentice Hall.
T.
Johnson, M.Margalho (2011),
Computacionais”, GEN/LTC.
“Avaliação
de
Desempenho
de
sistemas
Kurose James F. (2006) “Redes de Computadores e a Internet”, Editora Pearson, São
Paulo, 2006, p. 625.
95
Imperialist Competitive Algorithm: Um algoritmo baseado
em Relações sociopolíticas feito na Linguagem de
Programação C
Marco Antônio Florenzano Mollinetti1, Filipe Bittencourt Souza das Neves1,
Rodrigo Lisbôa Pereira1, Otávio Noura Teixeira1
1
Laboratório de Computação Natural (LCN) – Centro Universitário do Estado do Pará
(CESUPA) – Belém, PA – Brasil
[email protected], [email protected],
[email protected], [email protected]
Abstract. This article refers about the bioinspired algorithm that utilizes
sociopolitical relationships, the Imperialist Competitive Algorithm, in a way
that enumerates all the steps that should be taken. Then, it is proposed another
version for this algorithm utilizing a different computer language. Tests were
made for this new algorithm in order to prove its capacity for solving problems.
The following analysis will provide basis for future work.
Resumo. Este artigo refere-se sobre o algoritmo bioinspirado, que se utiliza de
relações sociopolíticas,o Imperialist Competitive Algorithm, enumerando todos
os passos que se deve tomar e, em seguida propõe-se uma nova versão para
algoritmo foi escrita em outra linguagem de computação. Foram realizados
teste neste algoritmo com o intuito de provar sua capacidade de resolver
problemas complexos. O presente estudo servirá de base para trabalhos
futuros.
1. Introdução
Estudos envolvendo problemas de otimização recebem bastante atenção por parte de
cientistas e pesquisadores, principalmente por aqueles imersos à área da Inteligência
Artificial (IA). Dentre as várias abordagens existentes e que podem ser utilizadas para
resolver esses tipos de problemas, destacam-se duas: os métodos matemáticos de
otimização e as técnicas de otimização envolvendo metaheurísticas.
Nos últimos anos, metaheurísticas foram largamente utilizadas para atingir
resultados bons para vários problemas considerados NP-Hard, ou seja, problemas que não
existe soluções definitivas. Como exemplos desses problemas, podem-se citar problemas
envolvendo design de estruturas utilizadas na área de Engenharia, análise de padrões e,
também, problemas de logística, como o cálculo de rota, ou mesmo, o cálculo da melhor
forma de se armazenar produtos em um container.
Entre os diversos métodos existentes e que podem ser usados na solução de
problemas da engenharia, da matemática e da computação, que cultiva a Computação
Bioinspirada, destaca-se o Algoritmo Genético (Genetic Algorithm - GA) (Holland,
1975), o Simulated Annealing, que se baseia no processo de cristalização de um metal
que é resfriado após ser aquecido além do seu ponto de fusão (Aarts e Korst, 1989), o
Particle Swarm Optimization (PSO) criado por Eberhart e Kennedy (1995) que se inspira
no comportamento social de agrupamentos de animais, como por um exemplo uma
96
revoada de pássaros ou um cardume de peixes, e o Ant Colony Optimization (ACO) de
Dorigo (1992) cujo simula o movimento de uma colônia de formigas e a sua trilha de
feromônios deixada para se formar um caminho que alcança uma solução ideal.
Além desses tipos de algoritmos Bioinspirado mencionados, existe também o
Imperialist Competitive Algorithm (ICA), o qual será aplicado neste trabalho. Este
algoritmo foi proposto por Lucas et al. (2007), e é fundamentado no comportamento dos
seres humanos, que aborda as relações sociopolíticas entre os diversos territórios
habitados por uma população com cultura comum, também denominados países.
São diversos os trabalhos que resolvem problemas classificados como NP-hard
utilizando o ICA. No trabalho de Kaveh e Talatahari (2010) são tratados os problemas de
medição de elasticidade de mola e pressão de um vaso de pressão, já o de Lucas et al.
(2010) aborda o design de um motor de indução linear ,e o artigo de Talatahari et al.
(2012) resolve o problema de design de estruturas de truss – estruturas de fácil montagem
composta de vigas de alumínio e aço. Também, Berneti e Shabazian (2011) fizeram um
estudo que trata do problema da predição de fluxo do petróleo em um poço. No ano de
2009, Duan et al. publicou um estudo sobre os problemas da detecção de padrões. Em
2011, Nemati et al. publicou uma obra que diz respeito a um estudo envolvendo a menor
rota através do problema do caixeiro viajante.
Este trabalho demonstra a eficiência do uso do ICA para alcançar uma solução
ótima, representado pelo menor valor possível encontrado para o problema de
minimização de uma função matemática, por meio da implementação do algoritmo na
linguagem C, corroborando sua aplicabilidade por meio desta plataforma, uma vez que,
até então, esse algoritmo não fora antes escrito nesta linguagem, sendo somente aplicado
utilizando paradigmas MATrix LABoratory (MATLAB) da MathWorks (2013) e Java da
Oracle (2013), concebidos por Lucas et al. (2007) e por Roche (2010), respectivamente.
A seção 2 aborda o embasamento teórico do ICA, evidenciando os principais
aspectos da concepção de seu algoritmo. A seção 3 detalha a nova implementação para o
ICA; enquanto que a seção 4 exibe todos os testes comparativos realizados. Por fim, a
seção 5 conclui o trabalho e menciona trabalhos futuros para este algoritmo.
2. Embasamento Teórico
Conforme Lucas et al. (2007), o algoritmo ICA é classificado como bioinspirado de
acordo com a classificação de Binitha e Sathya (2012), que classificaram algoritmos
bioinspirados como uma heurística que imita a estratégia da natureza capaz de resolver
problemas tanto entre os seres vivos, quanto problemas moleculares. Assim sendo, muitos
processos biológicos podem ser fundamentados como processos de uma otimização com
fronteiras.
Contudo, o ICA também é classificado como um algoritmo evolutivo que se
utiliza de aspectos de relações sociopolíticas, assim dito por Atashpaz- Gargari e Lucas
(2007), que definem o ICA como a “contraparte sociopolítica do GA”.
O ICA consiste em uma simulação de uma corrida imperialista entre países, aonde
primeiramente, considera-se o espaço de busca como toda a divisão geográfica de países
do planeta, portanto, cada solução em potencial gerada aleatoriamente é representada
através de países. Em seguida, é escolhida uma parcela dos melhores países (neste caso,
os países com os menores custos) para tornarem-se impérios, enquanto o resto dos países
97
serão convertidos em colônias dos países imperialistas. A quantidade de colônias que
cada país imperialista possui inicialmente é determinada pelo poder que cada um possui,
aonde é inversamente proporcional ao custo do país imperialista. (Kaveh e Talatahari,
2010).
Passada a primeira etapa de formação e consolidação da configuração mundial,
inicia-se o ciclo de iterações que irá se findar somente quando uma condição de parada
for alcançada. Nesta etapa, ocorre a assimilação cultural das colônias, dado pela
convergência das colônias em direção ao seu respectivo país imperialista (Lucas, et al
2007). Em seguida, é medido o poder total de cada império, o poder total consiste na
soma relativa do poder do império mais uma porcentagem da media do poder das colônias
subordinadas ao império.
Por fim, é realizada uma competição imperialista entre os impérios, em que a
colônia mais fraca do império mais fraco é tomada pelo império que possui a maior
tendência a conquista-lo. Vale ressaltar que nem sempre o império mais forte será o
império que conquistará a colônia fraca, porém, inevitavelmente este mecanismo fará
com que gradualmente os impérios mais fortes se fortaleçam e os mais fracos
enfraqueçam (Kaveh e Talatahari, 2010). Isso ocorre até que, eventualmente, um império
se verá sem nenhuma colônia, o que acarreta na sua eliminação, já que é evidente que um
império que não possui mais colônias é um império que ruiu, e portanto não será mais
capaz de participar da corrida imperialista. Dependendo da quantidade de gerações, pode
ser que ocorra o evento de todos os impérios exceto um entrarem em colapso, no que
resultará em uma convergência para o único império que sobrou, representando a solução
ótima, fazendo com que as colônias possuam um custo igual ou muito aproximado ao
império. (Kaveh e Talatahari, 2010).
Nas seções seguintes, são exibidos os passos para a concepção do algoritmo do ICA de
acordo com sua proposta original. O Imperialist Competitive Algorithm se comporta de
acordo com o pseudocódigo encontrando na Figura 1:
Passo1: Inicializar parâmetros.
(a)Definir problema e Inicializar países.
(b)Dividir Impérios e colônias.
Passo2: Mover colônias em direção ao seus respectivos países
imperialistas.
Passo3: Se a colônia possuir um custo menor que o império, mudar
as posições do império com a colônia.
Passo4: Escolher a colônia mais fraca do império mais fraco e
dá-la para o país imperialista que possui a maior probabilidade
de possuí-la.
Passo5: Se houver algum império que não possua mais colônia,
eliminá-lo.
Passo6: Repetir passo 2 a 5 até que o critério de parada seja
satisfeito.
Figura 1. Pseudocódigo para o ICA.
2.1. Primeira Etapa: Inicialização de países e geração de impérios e colônias.
98
O algoritmo é iniciado determinando-se uma quantidade de países no espaço do
problema, chamadas de Npaís. Cada país é uma estrutura contida em um arranjo no qual
seus valores serão gerados aleatoriamente por uma distribuição uniforme (Lucas et al.
2007). Deste número Npaís, é calculado o custo de cada país através da função custo fcusto
para que assim os países possam ser ordenados em ordem crescente. Então, se escolhe de
5% a 10% do total de países para formar Nimp países com os menores custos para
tornarem-se países imperialistas (Lucas et al., 2007). O restante Ncol de países passará a
ser países colônias que serão subordinados aos impérios.
Para que se formem os impérios, é necessário distribuir as colônias dominadas
para eles, e, portanto a distribuição de colônias é diretamente proporcional ao poder de
cada um. A fim de obter uma distribuição relativa, calcula-se o custo normalizado de cada
país imperialista,
𝐶𝑛 = 𝑐
max {𝑐 }
𝑖
𝑖
𝑛−
(1)
onde 𝑐𝑛 consiste no custo normalizado do 𝑖ésimo império e 𝐶𝑛 é seu custo normalizado.
Calculado o custo normalizado de cada imperialista, calcula-se o poder normalizado de
cada império, no qual, de acordo com Lucas et al. (2007), corresponde à porção de
colônias que é concedida ao império através da equação (2).
𝑃𝑛 = |
𝐶𝑛
𝑁𝑖𝑚𝑝
∑𝑖=1
|
(2)
𝐶𝑖
Multiplicando-se o valor do poder normalizado do 𝑛 -ésimo império pela
quantidade de colônias presentes no espaço mundo como visto na equação de numero três
para se alcançar ao valor numérico de colônias 𝑁. 𝐶.𝑛 que o 𝑛-ésimo império deve
receber
𝑁. 𝐶.𝑛 = 𝑟𝑜𝑢𝑛𝑑(𝑝𝑛 . 𝑁𝑐𝑜𝑙 )
(3)
Após determinada a quantidade de colônias que cada império passará a dominar,
as colônias serão uniformemente distribuídas entre os impérios, resultando em uma
configuração semelhante à Figura 2 na qual o império mais forte é aquele que possui a
maior quantidade de colônias.
Figura 2. Exemplo de configuração inicial do espaço mundo (Lucas et al.,
2007).
99
2.2. Segunda Etapa: Convergência de colônias e troca de poder.
Como dito por Lucas et al. (2007), no imperialismo o país imperialista tenta melhorar as
condições do país colônia. Para o algoritmo, este evento se caracteriza como uma
convergência da colônia em direção ao país que o domina. A colônia irá se movimentar
𝑥 unidades, na qual 𝑥 é uma variável aleatória uniformemente distribuída (Kaveh e
Talatahari, 2010) conforme dada pela equação a seguir.
𝑥 ~ 𝑈(0 , 𝛽 . 𝑑)
(4)
𝛽 é um numero maior que 1 (um) e 𝑑 é a distância entre o império e a colônia,
conforme indica a Figura 3. Vale ressaltar que assim como dito por Lucas et al.(2007),
um valor maior do que 1 (um) para a variável 𝛽 faz com que a colônia se aproxime por
ambos os lados.
Figura 3. Convergência de colônia em direção ao seu império (Kaveh e
Talatahari ,2010).
A fim de aumentar o fator de variabilidade da procura por soluções melhores, é
adicionado um desvio aleatório no movimento de convergência. Este desvio 𝜃 é
caracterizado por um valor também uniformemente distribuído, que consiste em um
número:
𝜃 ~ 𝑈(−𝛾 , 𝛾)
(5)
Em que 𝛾 é parâmetro responsável por determinar o quanto se desviará da direção
original, como visto na Figura 4. Assim como o parâmetro β, 𝛾 é um valor arbitrário e
de acordo com Kaveh e Talatahari (2010), um valor de 2 para β e π/4 radianos para 𝛾 é
um valor satisfatório para se alcançar bons resultados, e portanto, para este artigo, também
será utilizado estes parâmetros.
100
Figura 4. Convergência de colônia para seu respectivo império com desvio
(Kaveh e Talatahari ,2010).
Após a convergência de colônias, é possível que haja uma colônia que possua
custo menor que o seu país imperialista, e caso isto ocorra, de acordo com Kaveh e
Talatahari (2010), uma troca de poder será realizada de forma que a colônia passará a ser
o império, e o império será rebaixado ao estado de colônia. No algoritmo, isto é
representado como a troca da posição do império com a posição da colônia ótima.
Ocorrido isto, as colônias passarão a convergir para a posição de onde o novo império se
encontra.
2.3. Terceira Etapa: Competição imperialista e Eliminação de impérios.
Antes de se realizar qualquer competição imperialista, é necessário avaliar o poder total
de cada império, já que este é pertinente para se avaliar o quão propenso é um país
imperialista para conquistar uma colônia, este é representado através da seguinte equação:
𝑇. 𝐶.𝑛 = 𝐶𝑢𝑠𝑡𝑜(𝑖𝑚𝑝é𝑟𝑖𝑜𝑛 ) +  . média{Custo(colonias do império𝑛 )}
(6)
O poder total consiste na soma do poder do império mais o coeficiente 
multiplicado a média do custo das colônias que pertencem ao império. O coeficiente 
determina o quão importante é o papel das colônias para a medição do poder de um
império. Um valor pequeno para  faz com que a medida do poder total de um império
seja determinada apenas pelo seu poder, enquanto que um  com valor maior aumentará
a influencia das colônias no resultado final (Lucas et al. 2007). De acordo com Lucas et
al. (2007), um valor de 0.1 foi definido para  em seus exemplos, e, portanto também será
utilizado para este artigo.
Como dito por Kaveh e Talatahari (2010), as nações imperialistas competem para
conquistar as colônias de outros impérios, resultando em um gradual fortalecimento de
impérios mais fortes e enfraquecimento de países mais fracos. Nesta competição, o
império que possui a maior probabilidade de tomar uma colônia conquista a colônia mais
fraca do império mais fraco. É importante ressaltar que nem sempre o império mais
poderoso irá conquistar a colônia, já que de acordo com Lucas et. al (2007), não serão as
colônias que serão possuídas pelos países imperialistas mais poderosos, e sim estes
impérios que serão mais propensos a conquista-las. Portanto, para poder realizar a
competição, deve-se calcular a probabilidade de possessão de um império, e para isto,
calcula-se primeiramente o seu custo total normalizado, que se comportará da mesma
forma que a Equação 3.
𝑁. 𝑇. 𝐶𝑛 = 𝑇. 𝐶𝑛 − 𝑚𝑎𝑥
{ 𝑇. 𝐶.𝑖 }
𝑖
(7)
Após o cálculo do custo total normalizado, calcula-se o fator de probabilidade de
possessão de cada império, determinado pela equação abaixo:
𝑃𝑝𝑛 = |
𝑁.𝑇.𝐶𝑛
𝑁𝑖𝑚𝑝
∑𝑖=1
|
(8)
𝑁.𝑇.𝐶𝑖
Em seguida, organizam-se todos os valores de probabilidades de possessão em
um arranjo chamado P, e cria-se outro arranjo R com o mesmo tamanho de P. Neste
arranjo R, cada índice será um valor numérico entre 0 e 1 uniformemente distribuído de
forma randômica. Feito isto, cria-se outro vetor denominado D, de mesmo tamanho de P
e R contendo em cada índice a subtração dos valores P com os valores R:
101
𝑫 = 𝑷 − 𝑹 = [ 𝑝𝑝1 − 𝑟1 , 𝑝𝑝2 − 𝑟2 , 𝑝𝑝3 − 𝑟3 , … , 𝑝𝑝𝑛
𝑖𝑚𝑝
− 𝑟𝑛𝑖𝑚𝑝 ]
(9)
Por fim, a colônia a ser tomada é dada ao império representado pelo índice no
arranjo D que possui o maior valor numérico.
No processo de competição imperialista, impérios que não possuem mais poder
entram em colapso e suas colônias restantes são dividas entre os outros impérios. Para
este algoritmo, Kaveh e Talatahari (2010) especificam que um império ruiu quando não
possui mais nenhuma colônia e, portanto, este império é eliminado do espaço mundo.
A convergência, a troca de poder e a competição imperialista continuam
ocorrendo, até que se alcance uma das duas condições de parada seguinte: haver apenas
um império localizado no ótimo global possuindo todas as colônias presentes no espaço
mundo, que ou possuam o mesmo custo do império ou se encontrem convergidas na
direção do país imperialista; ou que processo de busca atinja o limite de gerações préestabelecido (Kaveh e Talatahari, 2010).
3. O ICA escrito em Linguagem C
O ICA fora implementado somente aplicando dois paradigmas computacionais:
concebido, primeiramente, no MATLAB e usado no trabalho original de Lucas et al.
(2007), o código deste algoritmo foi disponibilizado, pelos autores, para uso e
disseminação por parte de outros novos pesquisadores que desejariam utilizar tal
metaheurística na resolução de outros tipos de problemas NP completos. Posteriormente,
o ICA foi escrito na linguagem de Java e publicado por Roche (2010) com o intuito de
tornar a temática do algoritmo mais simples.
Neste trabalho, codificou-se este algoritmo utilizando a linguagem de
programação C, buscando, inicialmente, determinar que esta nova versão do ICA seguisse
a mesma exatidão proposta por Lucas et al. (2007), ou seja, empregando as etapas do
algoritmo original. É importante destacar que, como contribuição, optou-se por
desenvolver outras otimizações em relação à lógica de cada etapa presente no algoritmo
do ICA original. Porém, tais modificações não alteram a razão essencial do ICA,
entretanto, elas retificam e procuram agilizar aspectos como a correção do mecanismo de
geração de colônia, visto que a equação (3) faz com que a soma total do número de
colônias distribuídas aos impérios ultrapasse o número de colônias existentes,
ocasionando à formação de colônias inexistente. Também se buscou minimizar o tempo
de processos mais custosos, isto é, aqueles que geralmente envolvem mais iterações,
como por exemplo, os processos de geração de novas soluções e o de competição
imperialista.
Motivos pelos quais o ICA foi reimplementado utilizando a linguagem C são
diversos. De acordo com Pereira (2011) apud Schildt (2006) admite a criação de funções
isoladas, importante para projetos de maior escala, permitindo que um código
desenvolvido não afete acidentalmente as rotinas de outro programa. Destaca-se ainda
que uma implementação em C proporciona maior robustez e, consequentemente, maior
eficiência, um vez que é real a possibilidade de utilização de recursos de manipulação de
memória, pois, de acordo com Ritchie e Kerningham (1978), co-criadores da linguagem
C e, também, autores do primeiro manual existente dessa linguagem, C é uma linguagem
relativamente de baixo nível que lida com endereços de memória, proporcionando melhor
102
desempenho a uma aplicação, devido possuir uma maior possibilidade de manipulação
de memória.
4. Estudo de Caso e Resultados Obtidos
Utilizou-se uma função para a minimização presente na obra de Lucas et al. (2007). A
função 𝑓 = 𝑥. 𝑠𝑒𝑛(4𝑥) + 1,1𝑦. 𝑠𝑒𝑛(2𝑦) , como vista na Figura 5, possui espaço de busca
no intervalo entre [0,10] para as variáveis x e y. A função possui o mínimo global de valor
-18,554721 nos valores de 9,038992 para x e 8,668189 para y.
Figura 5. Gráfico da função de minimização 𝒇 = 𝒙 . 𝒔𝒆𝒏(𝟒𝒙) + 𝟏, 𝟏𝒚 . 𝒔𝒆𝒏(𝟐𝒚)
Para estes testes, adotou-se como parâmetros, uma população de 100 países com
8 impérios, respeitando a porcentagem de 5% a 10% da porcentagem de países que podem
ser império. Um limite de 100 gerações e os valores de 2 para β; π/4 rad para γ; e 0.1 para
o coeficiente .
Figura 6. Gráfico de testes relacionados à função de minimização
A Figura 6 representa o gráfico da função de minimização que considera a relação
geração por custo. Como valores avaliados, foram utilizados os valores do custo mínimo
do país imperialista de melhor custo, no gráfico, sendo denominado “custo mínimo”, e a
103
média do custo de todos os países imperialistas, chamado de “custo médio”. O valor
inicial para o melhor custo é de aproximadamente -14,5 , no qual representa um valor de
ótimo local satisfatório, pois se encontra perto do valor de ótimo global, representado
pelo número -18,554721, também vale ressaltar que, para a média dos valores de cada
imperialista, o ótimo global é alcançado entre a iteração de número 70 e 80, isto se deve
ao fato de que para aumentar o grau de variabilidade, é necessário um maior grau de
exploração, fazendo que alguns países imperialistas tenham um valor distante do ótimo
global, resultando em uma convergência tardia.
5. Considerações Finais
Este trabalho foi fundamentado na obra de Lucas et al. (2007) e foi desenvolvido uma
nova versão para o ICA, empregando a linguagem C como outra plataforma de
implementação. Como contribuição, foram realizadas melhorias em relação à questão de
otimização do código escrito em Java por Roche (2010) e também ao código escrito no
paradigma MATLAB por Lucas et al (2007), isto é, corrigindo o mecanismo de geração
de colônias, e melhorando os mecanismos lógicos através da simplificação dos processos
de iteração, realizado na etapa de geração de países, e, também, no procedimento de
distribuição de colônias para impérios, que antes era realizado em duplicidade ou
triplicidade, acarretando no retardo do tempo de execução da aplicação. Frisa-se que tais
contribuições não alteraram a fundamentação do ICA original, pois foram obtidos
resultados bem similares em relação a obtenção do ótimo global da função.
Ressalva-se ainda que, para equiparar-se a superioridade do gerador de números
aleatórios presente no MATLAB, evitou-se utilizar o gerador nativo proveniente da
linguagem C, preferindo-se, então, a utilização do mesmo gerador que o MATLAB
utiliza. Trata-se de um gerador de números randômicos otimizado, criado por Matsumoto
e Nishimura (1998), chamado de Mersenne Twister, no qual consiste em operações de
permutação em uma matriz de 623 dimensões a fim de se gerar um número randômico
real entre um determinado intervalo. Tal técnica de randomização se provou superior na
sua aleatoriedade, e é utilizada em conjunto com várias outras linguagens de
programação.
A escolha pela linguagem C se deu a partir do fator corroborado por Pereira (2011)
apud Araújo et al. (2006), uma vez que foi atestado que esta linguagem é classificada
como a melhor linguagem de programação com suporte à programação paralela,
conferindo um melhor desempenho em relação à outras linguagens, como, por exemplo,
Java, haja vista que como proposta futura, visa-se integrar o paradigma da paralelização
ao algoritmo ICA. Também é proposta futura realizar uma análise comparativa entre as
diferentes versões escritas do ICA na forma paralela, analisando os aspectos do tempo de
execução e do processamento.
Referências
Aarts, E.H.L., Korst, J. (1989) “Simulated Annealing and Boltzmann Machines: A
Stochasti cApproach to Combinatorial Optimization and Neural Computing”. Wiley,
Chichester.
Araújo, J. S.; Sousa Sobrinho C. L. S.; Oliveira R. M. S.; Frances C.R. L. (2009) “Estudo
Comparativo de Códigos Paralelos em Fortran, C e Java na Análise de uma Antena
104
Monopolo Utilizando Técnica Numérica FDTD”, Revista Principia, vol. 1, N. 13, pp.
39-44.
Atashpaz-Gargari E., Lucas C. (2007) "Imperialist Competitive Algorithm: An Algorithm
for Optimization Inspired by Imperialistic Competition" 2007 IEEE Congress on
Evolutionary Computation (CEC).
Bernerti, S.; Shahbazian, M. (2011) “An Imperialist Competitive Algorithm – Artificial
Neural Network Method to Predict Oil Flow Rate of the Wells”, International Journal
of Computer Application, Volume 26, Number 10, 975 – 8887.
Binitha, S.; Siva Sathya, S. (2012) “A Survey of Bio inspired Optimization Algorithms”,
International Journal of Soft Computing and Engineering (IJSCE), ISSN: 2231-2307,
Volume-2, Issue-2,
Duan H.; Xu, C; Liu, S.; Shao, S. (2010) “Template matching using chaotic imperialist
competitive algorithm”, Pattern Recognition Letters 31, pages 1868-1875.
Gendreau, M.; Potvin, J. (2010) “Handbook of Metaheuristics” 146. Springer, 2nd ed,
XX, 648 p. Vol. 146, ISBN 978-1-4419-1665-5.
Holland, J.H. (1992) (1975) “Adaptation in Natural and Artificial Systems”. University
of Michigan Press,Ann Arbor, Michigan; re-issued by MIT Press.
Imperialist Competitive Algorithm (2013) “A java Implementation of the Imperialist
Competitive Algorithm”, disponivel em “http://en.icasite.info/”. Acesso em 29 de
agosto de 2013.
Kaveh, A.; Talatahari, S. (2010) “Imperialist Competitive Algorithm for Engineering
design problems”, Asian Journal of Civil Engineering (Building and Housing),
Volume II, number 6., pages 675-697.
Kennedy, J.; Eberhart, R. (1995) “Particle Swarm Optimization”. Proceedings of IEEE
International Conference on Neural Networks IV. pp. 1942–1948.
Kernighan, Brian W.; Ritchie, Dennis M. (1978) “The C Programming Language”. Upper
Saddle River, New Jersey: Prentice hall. 228 p. ISBN 0-13-110163-3
Pereira, R. L. (2011) “Desenvolvimento de uma Biblioteca Eficiente Baseada em Sockets
para Clusters e Cálculo de tensões Induzidas em Linhas de Transmissão com
Catenárias” – 70 f. – Curso de Mestrado em engenharia Elétrica, Centro tecnológico,
Universidade Federal do Pará, Belém.
Lucas, C.; Nasiri-Gheidari, Z.; Tootoonchian, F. (2010) “Application of an imperisalist
competitive algorithm to the design of a linear induction motor”, Energy Conversion
and Management 51 1407- 1411.
Matsumoto, M.; Nishimura, T. (1998). "Mersenne twister: a 623-dimensionally
equidistributed uniform pseudo-random number generator". ACM Transactions on
Modeling and Computer Simulation 8 (1): 3–30.
MathWorks (2013) “The Language of Technical Computing”, disponível em
www.mathworks.com/products/matlab. Acesso em 29 de agosto de 2013.
Nemati, K.; Shamsuddin, S.; Kamarposhti, M. (2011) “Using Imperial Competitive
Algorithm for Solving Traveling Salesman Problem and Comparing the Efficiency of
105
the Proposed Algorithm with Methods in Use”. Australian Journal of Basic and
Applied Sciences, 5(10): 540-543, 2011, ISSN 1991-8178.
Oracle (2013) “Plataforma de Computação Java”, disponível em http://www.java.com/
pt_ BR/download/faq/ whatis_java.xml. Acesso em 29 de agosto de 2013.
Schildt, H. (2006) “C: Completo e Total”, 3ª ed. São Paulo: Makron Books, 827 p.
Stützle, T., Dorigo, M. (1999) “ACO algorithms for the traveling salesman problem,” In
K. Miettinen, M.Makela, P. Neittaanmaki, J. Periaux, editors, Evolutionary
Algorithms in Engineering and Computer Science,Wiley.
Talatahari, S.; Kaveh, A.; Sheikholeslami, R. (2012) “Chaotic imperialist competitive
algorithm for optimum design of truss structures”, Struct Multidisc Optim 46:355–
367.
106
Mapa do Crime de Belém do Pará: uma proposta para
facilitar o acesso da população aos dados criminais em Belém
do Pará
Fernanda L. C. Santos1, Marcell A. A. Mesquita1, Nivio I. C. Imbiriba1, Alessandra
N. A. Barreiros1
1
Departamento de Ciência da Computação – Centro Universitário do Estado do Pará
(CESUPA) Caixa Postal 66060-230 – Belém – PA – Brasil
{fernandac.santos93,almeidamarcell,alessandra.natasha}@gmail.com,
[email protected]
Resumo. Neste artigo será apresentada uma proposta de implantação de um
mapa visual que disponibiliza informações criminais do município de Belém.
As informações podem ser facilmente interpretadas se a interface com o usuário
e os aspectos do crime forem disponibilizados de forma simples e intuitiva. O
principal objetivo do presente trabalho é usar os dados baseados em eventos
criminais para criar uma melhoria na classificação e agrupamento dessas
informações, desenvolvendo um sistema que proporcione uma visualização
eficaz e interativa de tais crimes, além de integra-los em uma solução robusta
para avaliação de desempenho. O projeto servirá como um sistema de
monitoramento que organiza os dados automaticamente, resgata e apresenta
os crimes que ocorreram. Desta maneira será possível mapear a ocorrência da
criminalidade na capital paraense, sendo útil tanto para a população que
poderá evitar lugares perigosos como para a polícia que poderá usar a solução
proposta de forma estratégica.
1. Introdução
A Amazônia brasileira ocupa 4,2 milhões de quilômetros quadrados e se estende por nove
estados, dentre eles o Pará que tem por capital Belém, também conhecida por Metrópole
da Amazônia. Como toda cidade desenvolvida, Belém possui um elevado índice de
criminalidade. A referida capital aparece como a décima cidade mais violenta do mundo,
segundo uma pesquisa realizada pela organização não governamental mexicana Consejo
Ciudadano para la Seguridad Publica y Justícia.
Informações como estas não são expostas a população, as mesmas são usadas
parcialmente pelos órgãos públicos e posteriormente viram uma quantidade de dados
espúrios, os quais poderiam ser convertidos em referencias para os cidadãos.
Disponibilizar tais informações poderia gerar aplicações para a sociedade como exemplo
do projeto mapa do crime de Belém, assim como proporcionará um maior conhecimento
a` população sobre a atuação dos órgãos públicos.
A lei no. 12.527, de 18 de novembro de 2011, tem o propósito de regulamentar o
direito constitucional de acesso dos cidadãos às informações públicas, tendo seus
dispositivos aplicáveis aos três Poderes da União, Estados, Distrito Federal e Municípios.
Nas premissas da lei, divulgar informações de interesse público, independente de
solicitações, proporciona o desenvolvimento da cultura de transparência na administração
pública, de modo que tais dados devem ser viabilizados por meios de comunicação da
107
Tecnologia da Informação (TI). Visando viabilizar o desenvolvimento do proposto
trabalho, portanto, os referidos dados precisam ser fornecidos pelas polícias civil e militar
que fazem parte do poder Executivo, portanto se enquadram na supracitada lei.
Convencionalmente, a prefeitura de Belém juntamente com a polícia militar
disponibilizam os dados de crimes e incidentes com uma periodicidade bem variada, e
com informações difíceis de serem lidas através de um arquivo PDF não muito
organizado, o que dificulta ainda mais o entendimento pela população sem a devida
instrução.
Este projeto propõe um mapa do crime que compartilhe as informações com a
sociedade como um todo, de forma estruturada, visual e de fácil compreensão, uma vez
que hoje estes dados já encontram-se disponíveis, entretanto, de uma maneira não
apropriada. Com este mapa será possível que as pessoas observem quais quarteirões, ruas
e até mesmo regiões são mais perigosas, ou suscetíveis a quais tipos de crimes. Tudo isso
poderá ser filtrado de forma individual de acordo com a necessidade do usuário. O sistema
proposto tem como objetivos primeiro aplicabilidade para o estado do Pará, podendo ser
expandido para a região Norte e futuramente para o resto do Brasil dependendo da
disponibilidade dos órgãos públicos com os seus dados.
Do exposto, os objetivos específicos do presente projeto podem ser citados: i)
facilitar o acesso da população aos dados criminais da sua cidade, bairro e rua; ii)
disponibilizar à polícia um sistema que ofereça suporte a tomada de decisão por meio de
informações consolidadas e relatórios baseados em informações visuais (mapa); iii) criar
uma estimativa que mostre a tendências de tipos de crime de forma georeferenciada.
Este artigo vai descrever o trabalho Mapa do Crime de Belém do Pará e as
seguintes seções serão apresentadas: Na seção 2 serão exibidos alguns trabalhos
relacionados, já na seção 3 será abordada a estrutura da aplicação, enquanto na seção 4
serão expostas as tecnologias usadas para o desenvolvimento da aplicação e por último,
a seção 5 irá apresentar os trabalhos futuros do projeto, qual caminho deverá seguir e as
considerações finais.
2. Trabalhos Relacionados
Existem uma série de trabalhos relacionados nesta área, um deles é o Crimespotting,
disponível para duas cidades nos Estados Unidos, Oakland e São Francisco (Figura 1).
Também se trata de um mapa de monitoramento de crimes aberto para o público,
contando com auxílio da polícia com todos os dados oficiais. Essa aplicação permite que
o usuário busque por praticamente qualquer informação através da mineração de dados
feito pela polícia local das duas cidades.
108
Figura 1. Mapa do site Crimespotting
O Copenhagen Crime Map (Figura 2) é outro projeto semelhante ao Mapa do
Crime de Belém, no qual possui dados oficiais da polícia atualizando as informações dos
crimes na cidade de Copenhagen na Dinamarca. Porém, diferente dos trabalhos
relacionados citados acima, o Copenhagen Crime Map não possui tantas informações e
se limita a fornecer dados como roubo, furto, assalto e violência. No Brasil, esta proposta
é inédita, ainda não tendo sido publicados trabalhos ou encontradas referências de
aplicativos similares.
Figura 2. Mapa do crime da cidade de Copenhagen
3. Sobre o Mapa do Crime
Aplicações que disponibilizam dados públicos possuem um grande potencial e ainda são
raras no contexto atual. O projeto tem por diferencial mostrar informações criminais de
forma clara e sucinta, por meio de um mapa interativo será informado o local e o horário
onde aconteceu o crime. Não são só os civis que poderão utilizar essa ferramenta, ela
também servirá para um controle mais eficiente da polícia em cada bairro.
109
A ferramenta ainda é um protótipo que mostra no mapa de Belém os tipos de
crimes (roubo simples, roubo com agravantes, furto, vandalismo, assassinatos, narcóticos,
crimes contra a mulher, perturbação da paz, prostituição, roubo de carros, sequestro
relâmpago e crimes infanto-juvenil), existe a opção do usuário selecionar o horário, mês
ou as semanas em que deseja visualizar as informações ou até mesmo para troca de
informações de cidade para cidade que antes teriam bastante dificuldade para acessar
esses dados.
Nesta fase do projeto os dados são inseridos de forma fictícia, futuramente após
acordos realizados com a polícia militar e civil, o sistema será alimentado com dados
oficiais.
3.1. Interface do Usuário
A interface da aplicação é baseada na intuitividade e simplicidade, oferecendo ao cliente
um rápido entendimento das informações disponibilizadas pelo site, outra importante
característica da interface é a criação de várias abas capaz de filtrar diferentes
informações, não permitindo assim a poluição do site.
O usuário do Mapa do Crime de Belém não precisa ter muito conhecimento
computacional, na aba principal da aplicação a pessoa terá acesso ao mapa da cidade de
Belém com os tipos de crime ocorridos em cada região, por definição todos os crimes
estarão expostos, entretanto a pessoa poderá selecionar apenas o(s) tipo(s) de crime(s)
que deseja visualizar.
Nesta mesma página encontra-se um dispositivo que determina o horário em que
os crimes ocorreram, este atributo também pode ser alterado de acordo com a necessidade
do usuário, outro atributo presente na página permite que o cliente selecione a data
(mês/ano ou semanas) em que os crimes aconteceram, ainda nesta página abaixo do mapa
encontra-se uma breve descrição do projeto.
A segunda aba é exclusiva para o mapa e os atributos de data, hora e tipos de
crime, eliminando a descrição e proporcionando ao usuário aproveitamento total da
aplicação, a terceira aba é dedicada a uma descrição completa da aplicação na qual são
fornecidas informações da equipe, o motivo para o desenvolvimento do projeto, e novas
atualizações e recursos do sistema, a quarta e última aba é específica com os contatos da
equipe para o cliente que achar conveniente enviar feedback, com sugestões para a
melhoria da aplicação.
4. O Sistema
O projeto será uma aplicação web, no presente momento o protótipo apresenta uma
interface dinâmica com o usuário, proporcionando um fácil entendimento até mesmo para
leigos em computação (Figura 3). Utilizando o sistema de geolocalização Google Maps
para monitoramento das áreas da cidade. O sistema terá uma alta portabilidade rodando
em todos dispositivos que suportarem HTML5.
110
Figura 3. Protótipo do projeto
4.1. Implementação
O mapa do crime será desenvolvido na linguagem de programação para web HTML5,
por proporcionar uma portabilidade mais flexível para vários dispositivos diferentes,
torando o desenvolvimento de uma aplicação mais dinâmica, portável e poderosa. Todos
os navegadores modernos e a maioria dos smartphones suportam a tecnologia, tornando
a aplicação acessível em qualquer lugar.
4.2. Tecnologias Usadas
Também será utilizada a tecnologia Jsoup, uma biblioteca Java para trabalhar com todas
as variedades de HTML existentes, a API é favorável para a extração e manipulação dos
dados fornecidos através de um formulário que conterá os campos: ID do crime, data,
hora, bairro, rua. Estas informações serão enviadas para o banco de dados que alimentará
a aplicação.
O banco de dados utilizado para armazenar as informações fornecidas pela polícia
será o PostgreSQL, um banco open source e objeto-relacional que está a mais de quinze
anos ativo no mercado e se enquadra como um banco de dados da classe empresarial, o
PostgreSQL possui uma tecnologia com recursos sofisticados de alta reputação e
confiabilidade.
Para a geolocalização será utilizada a API do Google Maps, um serviço gratuito
que permite adicionar o Google Maps na aplicação, essa API permite inserir pontos no
mapa com a latitude e longitude, traçar rotas, transformar endereços em coordenadas,
além de fornecer coordenadas de latitude e longitude, e também é permitido a criação de
mapas personalizados.
4.3. Características
A aplicação Mapa do Crime de Belém, é inovadora pois foi desenvolvida para receber
dados criminais oficiais das polícias militar e civil, gerando assim mais confiabilidade
por parte dos usuários. Foi criada utilizando tecnologias para desenvolvimento de
111
sistemas web de respeito no mercado, mas que podem ser obtidas sem custo para o
programador.
O sistema é de utilidade pública, servindo tanto para a população, quanto para a
própria polícia que poderá ter uma visualização mais clara dos seus dados.
Proporcionando acesso rápido e claro dos dados criminais.
Informa a porcentagem por área, divide os crimes por categorias, proporciona uma
visão dos dados utilizando gráficos, dá a possibilidade do usuário poder escolher o
período de horas e semanas ou meses que pretende visualizar as informações, assim como
mostra no mapa os pontos onde ocorreram os crimes dividido por regiões.
5. Conclusão e trabalhos futuros
A transparência de dados governamentais é uma tendência mundial, desde que sejam
desenvolvidos com objetivo de manter a seriedade das informações e manter os mesmos
atualizados em uma determinada periodicidade. Espera-se que este projeto possa abrir os
olhos do governo e do público para a importância dos dados abertos. Apesar do projeto
ainda estar em sua fase inicial, já é possível usar informações fictícias para a
demonstração do mapa.
O Mapa do Crime de Belém tende a evoluir bastante nos próximos meses, e além
da sua evolução para na implementação da aplicação, também está sendo visado uma
maneira de concentrar esforços junto as polícias responsáveis por tal informações com o
objetivo de criar o mapa interativo com as informações oficiais.
Referências
Greenpeace (2013). O que fazemos com a Amazônia.
http://www.greenpeace.org/brasil/pt/O-que-fazemos/Amazonia/
Disponível
em:
Seguridad, Justicia y Paz - Consejo Ciudadano para la Seguridad publica y Justicia penal
A.C. (2013). San Pedro Sula otra vez la ciudad mas violenta del mundo; Acapulco, la
segunda.
Disponível
em:
http://www.seguridadjusticiaypaz.org.mx/sala-deprensa/759-san-pedro-sulaotra-vez-la-ciudad-mas-violenta-del-mundo-acapulco-lasegunda
Lei No 12.527, de 18 de Novembro de 2011 (2013). Disponível
http://www.planalto.gov.br/ccivil 03/ ato2011-2014/2011/lei/l12527.htm
em:
Oakland Crimespotting (2013). Disponível em: http://oakland.crimespotting.org/
San Francisco
Crimespotting
http://sanfrancisco.crimespotting.org/
(2013).
Disponível
em:
M. H. Fredskild, P. Alsing & R. Wøhlk (2011) Copenhagen Crime Map, Ballerup, Dinamarca: Institut for Samfundsudvikling og Planlægning, [online] Disponível em:
http://www.onlinegis.dk/documents/report.pdf (14 Janeiro 2011).
Jsoup. (2013) Jsoup: Java HTML Parser. Dispon ́ıvel em: http://jsoup.org/.
Postgre, S. Q. L. (2013). The World’s most advanced open source database. Disponível
em: http://www.postgresql.org.
API
do
Google
Maps
(2013).
https://developers.google.com/maps/?hl=pt- br
112
Disponível
em:
Mecanismos de Sincronização em Banco de dados
Utilizando Sync Framework Aplicado às Redes DTN
Paulo Vitor Nascimento Lobato1, Mauro Margalho Coutinho1.
Pós-Graduação Latu Sensu em Banco de Dados – Universidade da Amazônia
(UNAMA) – Tv. Quintino Bocaiuva, 1808 – 66.035-190 Belém – PA – Brasil
1
{paulo.lobato3,mauro.margalho}@gmail.com
Abstract. This paper describes about creating and testing a mechanism for
synchronizing databases based on the Sync Framework for application in delay
tolerant networks called Synchronization, and also expresses the concepts
needed to understand how these technologies discussed can help in swap
information in places geographically distant from large urban centers, where
you can still find a precarious or absence of regular network of computers to
Transferred information. Therefore the application shown in this paper aims to
solve this problem addressed enabling the swap of data between these regions
with a low technological infrastructure.
Resumo. Este artigo descreve sobre a criação e apresenta testes de um
mecanismo de sincronização de bases de dados baseado no Sync Framework
para aplicação em redes tolerantes ao atraso e desconexões denominado
Synchronization, e ainda expressa sobre os conceitos necessário para o
entendimento de como essas tecnologias abordadas podem ajudar na troca de
informação em lugares geograficamente distantes dos grandes centros
urbanos, onde ainda é possível encontrar uma precária ou ausência de rede
regular de transferência de informações. Com isso a aplicação exibida neste
artigo pretende resolver essa problemática viabilizando a troca de dados entre
essas regiões que possuem uma baixa infraestrutura tecnológica.
1. Introdução
A internet comprovadamente é um dos principais meios de comunicação da atualidade,
onde através do protocolo TCP/IP é possível acessar as informações, efetuar
transferências de todo tipo de dados, interconectar dispositivos, entre outros. Embora essa
arquitetura tenha um elevado sucesso mundialmente há determinados cenários que não
propiciam a sua utilização, tonando a mesma inadequada para esses ambientes. Para
suprir essa necessidade de comunicação e transferência de dados entre esses ambientes
adversos que dificultam a interação na rede tais como redes interplanetárias, redes
militares sem fio em campo de batalha, redes móveis terrestres e redes de sensores, foram
criadas as redes tolerantes a atraso e desconexões as quais possuem características
peculiares para suportar a comunicação em diversos tipos de ambiente os quais talvez a
comunicação seria impossível se utilizássemos a internet.
O desenvolvimento de aplicações para redes tolerantes ao atraso e desconexões
não é uma tarefa fácil devido a existência desses cenários desconectados e com
características pouco favoráveis à interatividade, no entanto esse tema atualmente tem
despertado o interesse de muitos pesquisadores na área pois trata-se de algo promissor e
com diversos aspectos desafiadores a serem estudados.
113
Atualmente também notamos que inúmeras técnicas para sincronização de dados
estão sendo utilizadas entre bases de dados diferentes e dispositivos diferentes, com as
mais variadas finalidades, seja para permitir uma simples sincronização de e-mail à uma
necessidade de compartilhamento de dados comerciais entre filiais de uma corporação. A
vantagem de se utilizar uma arquitetura de sincronização de dados em uma aplicação é o
fato do usuário não mais ter a obrigatoriedade de possuir uma conexão de rede constante
para acesso as informações desejadas, dessa forma surge a possibilidade das informações
serem acessadas e armazenadas localmente, utilizando a sincronização dos dados sempre
que a conexão com a rede for estabelecida com isso permitindo que as informações
mantenha-se consistentes em cada réplica.
Esse artigo tem como objetivo mostrar que a partir da união dessas duas
tecnologias comentadas acima, foi desenvolvido um mecanismo de sincronização de
dados que irá através de uma rede tolerante ao atraso e desconexões manter dados
consistentes e viabilizará a troca de informações em locais onde ainda não é possível se
ter sistemas conectados a um rede dedicada ou constante. Na sessão a seguir é expressado
mais detalhes do projeto em questão.
2. O projeto
O projeto através da rede DTN juntamente com uma técnica de sincronização de dados
consiste em viabilizar a coleta automatizada de informações de postos de saúde, tais como
exames, histórico de pacientes, cadastros, entre outras informações. A utilização da rede
DTN foi definida pois esses postos de saúde não possuem nenhuma rede regular de acesso
a informação, tal como a internet pois encontram-se em uma localização de difícil acesso,
e logo, de baixa infraestrutura e sem um mínimo acesso a sistemas de informação, dessa
forma através de redes tolerantes ao atraso é possível interligar essas regiões para que se
permita a troca de informações desejadas devido as características particulares dessa rede.
3. Rede DTN
Esse tipo de rede denominada Redes Tolerantes ao Atraso, ou Delay Tolerant Networks
(DTN) foi criado devido a necessidade de se integrar redes de características distintas,
pois tais redes não conseguirem se integrar de maneira trival devido cada rede ser
projetada para atuar com eficiência máxima em um determinado ambiente e dessa forma
possuindo características distintas, com isso se faz necessário a implementação de um
agente que realize a comunicação entre as mesmas.
Segundo Gustavo (2006) há um grupo de pesquisadores reunidos com objetivo de
estudar e propor formas de construir e otimizar um agente que faça a intermediação entre
diversas redes, esse grupo denomina-se DTNRG (Delay Tolerant Networking Research
Group), esse grupo de pesquisa é aberto do IRTF (Internet Research Task Force), e
patrocinado pelo IETF (Internet Engineering Task Force).
Para Oliveira et al. (2007) a arquitetura da rede DTN contempla técnica de
comutação de mensagens e o armazenamento persistente dos dados sendo definido uma
sobrecamada (overlay) abaixo da camada de aplicação, denomina-se para essa nova
camada de camada de agregação. O protocolo (protocolo de agregação) é executado em
todos os nós da rede DTN, desde o início até o destino, dessa forma assemelhando-se a
camada IP.
114
Ainda segundo Oliveira et al. (2007) as sub-redes denominadas redes regionais e
a arquitetura em sobrecamadas permitem que a DTN torne-se completamente
independente das diversas redes regionais, dessa forma possibilitando que as aplicações se
comuniquem através de múltiplas regiões. A rede DTN garante interoperabilidade entre as redes
regionais, agindo como um buffer para armazenar as diferentes latências entre as redes e
possíveis faltas de conectividade. A Figura 1 ilustra as camadas abaixo da de agregação que são
definidas de acordo com a conveniência do ambiente de comunicação de cada região, podendo
ser específicas para cada região alcançada pela DTN.
Figura 1. Arquitetura em duas camadas
Para Gustavo (2006) o tipo mais fundamental de transmissão de mensagens em
uma rede DTN é o envio de mensagem sem a necessidade de qualquer reconhecimento
ou classe de serviço, a fonte simplesmente envia a sua mensagem para o próximo nó. Há
também outros tipos de classes de serviços que são os seguintes:
• Transferência em custódia, essa transferência é utilizada quando necessita-se de um
alto grau de confiabilidade na transmissão de mensagem. O conceito por trás das
transferências em custódia é delegar para o próximo nó a responsabilidade de
retransmitir a mensagem até que está atinja o seu destino, o que pode ser
considerado uma maneira, ainda que não muito boa segundo Gustavo (2006), de
garantir confiabilidade. • Confirmação de recepção da mensagem, ocorre quando
há confirmação para a fonte ou responsável pela retransmissão da mensagem, de
que a mensagem foi recebida pela aplicação de destino.
• Notificação de aceitação de custódia, ocorre quando há uma notificação para a fonte
ou responsável pela retransmissão da mensagem, toda vez que um nó aceitar ser o
novo custodiante de uma mensagem.
• Notificação de encaminhamento, ocorre quando há notificação para a fonte ou
responsável pela retransmissão da mensagem, toda vez que a mensagem for
encaminhada.
• Prioridade de entrega, possui as seguintes características: muito volume de dados
(pouca prioridade), normal (média prioridade) e importantes (alta prioridade).
• Autenticação, esse modelo indica o método de autenticação, se for especificado
algum, este será utilizado para verificar a autenticidade da fonte e a integridade dos
dados.
115
As principais características da rede DTN segundo Oliveira et al. (2007) são os
atrasos longos ou variáveis, pois a rede DTN é passiva de atrasos de ordem de minutos,
horas, e até mesmo dias. E também as frequentes desconexões, devido a mobilidade
utilizada que provoca constantes mudanças na topologia de rede, seja por péssimas
condições de comunicação, por economia de recursos como em sensores sem fio onde
sensores dormem para poupar energia, ou mesmo por negação de serviço como o ato do
inimigo sujar a frequência em operações militares.
4. Serviço de sincronização baseado no Sync Framework
Sincronizar dados entres fontes de dados distintas sempre foi uma tarefa complexa para
as aplicações que precisam implementar essa arquitetura, denominadas occasionally
connected applications (OCA) ou aplicações ocasionalmente conectadas, essas permitem
o trabalho desconectado de uma fonte de dados remota e ao passo que a conexão é
restabelecida a sincronização é realizada automaticamente mantendo os dados
consistentes entre as bases de dados distribuídas.
Alonso et al. (2010) expressa que usualmente os serviços de sincronização são
utilizados para informações pessoais, tais como agenda de contato, calendários, tarefas e
memorando, no entanto, a sincronização de dados é importante não apenas para
replicação de dados entre dispositivos, mas também em sistemas diferentes, pois
diferentes aplicações podem necessitar de um mesmo tipo de informações, por exemplo,
pode-se citar as ferramentas de gerenciamento de arquivos pessoais onde o usuário pode
acessar, alterar, incluir e excluir seus arquivos pessoais utilizando um notebook como
também um smartphone sem perder a consistência dos arquivos independente do
dispositivo o qual está acessando o mesmo.
Para cenários offline onde os dados do banco de dados central é armazenado
localmente e cenários de colaboração que necessitam sincronizar dados periodicamente,
segundo Microsoft existe o Sync Framework que pode ser utilizado em arquitetura de
duas ou mais camadas permitindo a sincronização entre uma base de dados cliente SQL
Server Compact ou algum outro banco de dados que suporte ADO.NET e uma
outra fonte de dados destino qualquer, como um banco de dados relacional, uma base de
dados XML ou um web service. O Serviço de sincronização para ADO.NET permite o
controle de alterações de maneira incremental, com isso é replicado apenas os dados
alterados em vez de replicar toda a cópia dos dados.
O Microsoft Sync Framework opera a partir da criação de uma sessão de
sincronização, onde essa sessão sincroniza dados através de um orquestrador ou agente
de sincronização que se comunica com dois provedores de sincronização (um para
armazenamento de dados cliente e outro para o servidor) com intuito de aplicar e
recuperar alterações em cada base de dados. Cada provedor utiliza um adaptador para
cada tabela a ser sincronizada com comandos SQL específicos para as mesmas. A Figura
2 a seguir exibe uma arquitetura de duas camadas.
116
Figura 2. Arquitetura em duas camadas
As atribuição de cada componente do Sync Framework que pode ser observado
na Figura 1 são as seguintes:
• O agente de sincronização realiza a sincronização formando um loop em cada uma
das tabela a serem sincronizadas, invoca o provedor de sincronização cliente para
recuperar e aplicar as alterações no banco de dados cliente, também se comunica
com o provedor de sincronização do servidor para recuperar e aplicar as alterações
no banco de dados servidor. Esse agente ainda mantém as informações de sessão
para a sincronização e fornece mensagens de erros, êxito e estatísticas para o
aplicativo cliente.
• O provedor de sincronização do cliente armazena as informações sobre as tabelas
do banco de dados do cliente que estão habilitadas para a sincronização, recupera
as alterações no banco de dados do cliente desde a última sincronização, aplica
alterações incrementais no banco de dados cliente e detectar alterações conflitantes.
• O provedor de sincronização do servidor armazena as informações sobre as tabelas
no servidor que estão habilitadas para a sincronização, recupera as alterações
ocorridas no banco de dados servidor desde a última sincronização, aplica
alterações incrementais no banco de dados servidor e detectar alterações
conflitantes.
• Tabela de sincronização e grupo de sincronização, é definida uma tabela
sincronização para cada tabela que é sincronizada, essa tabela armazena algumas
configurações como por exemplo a direção da sincronização. • O adaptador de
sincronização é definido para cada tabela sincronizada, ele fornece ao provedor de
sincronização do servidor os comandos específicos para interagir com o banco de
dados do servidor
Para Microsoft a maior parte do trabalho de se implementar um sistema de
sincronização de dados está no desenvolvimento de um provedor, pois o provedor
mantém metadados e conhecimento para a réplica como também metadados para cada
item a ser sincronizado. Outras atribuições de um provedor é o fato de transferir os dados
de item reais de e para o repositório de dados e também usa componentes na estrutura de
sincronização que ajudam a indexar as alterações quando o provedor está desempenhado
o papel de cliente, bem como detecta conflitos e executa as alterações quando trabalha
como servidor.
117
O Sync Framework segundo a Microsoft utiliza um modelo hub e spoke para a
sincronização de cliente e servidor, onde a sincronização inicia-se sempre pelo lado
cliente. A alterações de cada cliente são sincronizadas com o servidor antes que essas
alterações sejam enviadas do servidor para outros clientes, nesse modelo os clientes não
trocam alterações diretamente uns com os outros.
Existe quatro modalidade de sincronização suportada pelo Sync Framework são
elas:
• Sincronização instantânea, esse formato é geralmente utilizado para atualizar os
dados de referências, onde as alterações de dados do servidor são baixados para a
base de dados cliente, atualizando todos os dados a cada vez que o cliente é
sincronizado, sendo adequada esse tipo de sincronização quando não desejamos
controlar alterações incrementais ou quando o servidor não pode realizá-las.
• Sincronização somente para download, esse formato também é utilizado para
atualização de dados de referências, porém esse tipo de sincronização baixa para o
cliente somente as alterações incrementais ocorridas desde a última sincronização.
• Sincronização somente para Upload, normalmente é utilizada para inserir dados, ou
seja enviar dados do cliente para o servidor. As inserções e alterações em dados
realizados no cliente são carregados para o servidor durante a sincronização.
• Sincronização bidirecional geralmente é usada para dados, como as informações de
contato do cliente, que podem ser atualizadas no cliente e servidor, as alterações
conflitantes são controladas durante a sincronização.
5. Estudo de Caso
Para a avaliação de desempenho do mecanismo de sincronização de banco de dados
proposto nesse artigo o qual denominamos de Synchronization, foram utilizadas duas
máquinas, uma desempenhando o papel de servidor e outra como cliente. A metodologia
de aferição utilizada foi através da aplicação de sincronização desenvolvida, pois devido
a mesma ser baseada no Sync Framework permitiu-se a coleta de dados estatísticos das
sincronização realizadas através do log desenvolvido. Para simular a rede DTN no
mecanismo de sincronização foram conectadas em rede as máquinas cliente e servidor
utilizando a arquitetura ad hoc devido a mesma possuir algumas características
semelhantes a rede DTN, e dessa forma presumisse que os resultados obtidos em um rede
ad hoc também serão válidos em uma rede DTN. A seguir é mostrado como configurar o
cliente e servidor para que os mesmos se conectem e troquem informações.
5.1. Configuração do Servidor e Cliente
No servidor foi instalado primeiramente o SQL Server 2008 R2 versão Express,
posteriormente a instalação desse SGBD (Sistema Gerenciado de Banco de Dados) para
que esteja disponível o acesso a essa base de dados remotamente se faz necessário
habilitar a opção de permitir conexão remota que está disponível na aba conexões, no
menu propriedades do servidor no SQL Server, e também inserir no firewall do servidor
uma regra que permita a conexão de um dispositivo externo com à máquina servidor pela
porta 1433, a qual é a porta padrão de comunicação do SQL Server.
118
Já no cliente o software desenvolvido não se faz necessário instalá-lo, apenas é
necessário executá-lo. O mesmo possui os arquivos descritos abaixo, os quais são
extremamente importantes para o correto funcionamento da aplicação:
• Synchronization.exe: Esse arquivo executa a aplicação.
• CadastroDB.sdf: Esse arquivo é o banco de dados local da aplicação, o mesmo só
irá ser criado após ser realizada a primeira sincronização da aplicação. O
cadastroDB.sdf é uma instancia do SQL Server Compact Edtion, essa versão do
SQL Server se caracteriza por ser embarcado e livre, e permite aos desenvolvedores
a criação de aplicações Web, Desktop e móveis que podem ser executadas em todas
as plataformas Windows.
• Synchronization.exe.config: Nesse arquivo definimos os parâmetros de conexão
da aplicação com a base de dados local e da aplicação com o bando de dados no
servidor, na imagem abaixo podemos visualizar esse arquivo de configuração.
Figura 3. Arquivo de Configuração das Conexões
No arquivo de configurações exibido na imagem anterior os parâmetros que
podem ser inseridos nas Strings de Conexão para que se possa obter sucesso nas conexões
são: o endereço IP ou o nome do servidor que está instalado o banco de dados, o nome
do banco de dados a ser acessado, e o usuário e senha de conexão. É importante destacar
que adicionar esse tipo de informação de autenticação em um arquivo de configuração no
cliente talvez não seja a melhor prática dependendo do tipo de aplicação.
Após a configuração do servidor e cliente, ao executar a aplicação através do
arquivo "Synchronization.exe" é possível testar as conexões entre a aplicação e os banco
de dados com intuito de disponibilizar para o usuário uma ferramenta para identificar se
as configurações foram realizadas corretamente, as imagens a seguir demonstram
respectivamente os testes de conexão no servidor e cliente.
119
Figura 4. Teste de Conexão no Servidor
Figura 5. Teste de conexão no cliente
Para que o software seja executado sem erros, antes de sua execução deve-se
instalar no cliente os seguintes componentes:
• Microsoft Framework .NET 4.0
• Microsoft Sync Framework Services 1.0
• Microsoft Sync Framework Services 2.1
• Microsoft SQL Server Compact Edition 3.5 SP2
5.2.
Cenário da Análise do Estudo de Caso
Para a análise do estudo de caso foi utilizado como servidor um notebook com a seguinte
configuração:
• Processador: Core i7 - 36100M - 2,3 GHz
120
• Memória: 8 Gb
• Sistema Operacional: Windows 7 Professional
• Banco de dados: SQL Server 2008 R2 Express
Como cliente foi utilizado um notebook com a seguinte configuração:
• Processador: Core i5 - 3210M - 2,5 GHz
• Memória: 6 Gb
• Sistema Operacional: Windows 8 Pro
• Banco de dados: SQL Server Compact Edition 3.5 SP2
O seguinte cenário foi montado no banco de dados do servidor para que seja
analisada a funcionalidade de sincronização após submeter o servidor a uma carga de
dados. Foram criadas quatro tabelas (UF, CIDADES, BAIRROS, LOGRADOUROS)
para a realização da sincronização, essas tabela representam um cenário de cadastro de
endereços comumente utilizado em formulários de cadastros de uma determinada
aplicação. A imagem a seguir exibe o diagrama das tabelas bem como o seus
relacionamentos e atributos.
Figura 6. Diagrama
A imagem a seguir exibe de maneira global a arquitetura da rede utilizada no
experimento, onde o cliente se conecta ao servidor através de uma rede ad hoc e a partir
disso iniciam a troca de informações entre as bases de dados por intermédio da aplicação
de sincronização implementada.
121
Figura 7. Cenário Teste Cliente/Servidor
Para que a conexão entre computadores em uma rede ad hoc ocorra com sucesso
é necessário que os dispositivos envolvidos estejam com seus IPs e máscaras de rede
configurados regularmente e ainda que a propriedade de descoberta de rede no perfil de
compartilhamento de rede do sistema operacional Windows nessas máquinas estejam
habilitadas, as figuras 8 e 9 a seguir exibem as configurações de rede realizadas no
experimento.
Figura 8. Configuração do Servidor
122
Figura 9. Configuração do Cliente
5.3.
Parametrização da avaliação
A primeira sincronização realizada no experimento consistiu em carregar no
banco de dados cliente toda a estrutura de objetos que foram implementadas no servidor,
pois sempre na primeira sincronização da aplicação a base de dados cliente é criada, e
também foi carregado os dados das tabelas UF, CIDADES, BAIRROS pois eram as
únicas que estavam populadas no servidor, dessa forma foram sincronizados 48857
registros em seis segundos conforme pode ser observado na imagem a seguir.
Figura 10. Carga 1
Para a segunda carga de dados foram adicionados na base de dados do servidor os
registros da tabela LOGRADOUROS, para posteriormente ser realizada a sincronização
entre as bases de dados. Nessa sincronização foram transferidos 709440 registros, em um
123
tempo de duração da operação de um minuto e trinta e um segundos conforme pode ser
observado na Figura 11.
Figura 11. Carga 2
Para o último teste foi excluído o banco de dados do cliente para que possa ser
analisado o tempo de duração da operação ao se criar a estrutura do banco de dados,
juntamente com inserção de todos os registros das quatro tabelas existente no banco de
dados servidor, as quais possuem o total de 758297 registros conforme tabela a seguir.
Tabela 1. Quantidade de Registros Por Tabela
TABELA
Qtde de Registros
UF
27
CIDADES
10053
BAIRROS
38777
LOGRADOUROS
709440
TOTAL
758297
O resultado obtido na última carga foi de um minuto e trinta e quatro segundos no
tempo de operação de sincronização dos 758297 registros conforme exibido na imagem
a seguir.
124
Figura 12. Carga 3
6. Conclusão
Observou-se nos testes realizados uma tempo satisfatório na transferência de dados, onde
mesmo depois de se inserir uma carga considerada elevada de dados esse tempo não
tornou a aplicação impraticável. O gráfico a seguir exibe resumidamente os resultados
obtidos nos testes.
Figura 13. Resultado das Cargas Realizadas
Dessa forma, podemos verificar através dos testes exibidos e conceitos expostos
nesse artigo, a viabilidade de se utilizar o mecanismo de sincronização de banco de dados
proposto para rede DTN, não só apenas para coleta de informações de postos de saúdes
que estão em regiões com baixo nível de infraestrutura conforme sugerido neste artigo, e
sim também para aplicações diversas que possuem a necessidade de sincronizar dados
entre fontes de dados distintas.
Referências
125
ALONSO, Alison L. B.; OLIVEIRA, Cristiano; FELDATO, Leonardo; BOAS, Fulvio
V.; ASSIS, Tiago L. G. de; HARA, Carmem S. Uma Experiência de Sincronização de
Bases de Dados Relacionais Utilizando SyncML, 2010. Disponível em <
http://www.inf.ufpr.br/carmem/pub/erbd2010-syncml.pdf > Acessado em: 25 jul.
2013.
COUTINHO, Gustavo Lacerda. Delay Tolerant Network (DTN), 2006. Disponível em <
http://www.gta.ufrj.br/grad/06_2/gustavo/inicial.htm > Acessado em: 06 ago. 2013.
FELIPPETTO, Carneiro Eduardo. Software para Sincronização de Estruturas de Banco
de dados. Faculdade de Informática - Centro Universitário Ritter, p. 17, 2010. Porto
Alegre.
Disponível
em
<
http://www.uniritter.edu.br/graduacao/informatica/sistemas/downloads/tcc2k10/TCC
%20II_EduardoFelippetto_2010_1.pdf > Acessado em: 07 jul. 2013.
KUROSE, James F.; Ross, Keith W. Redes de Computadores e a Internet - Uma
Abordagem Top-down. 5a Edição. / Pearson Education – Br, 2010
MICROSOFT. Arquitetura e classes para sincronização de banco de dados. Disponível
em < http://msdn.microsoft.com/pt-br/library/bb902829.aspx >. Acessado em: 20 jul.
2013.
MICROSOFT. Conceitos Básicos Sobre Sincronização de Dados. Disponível em <
http://msdn.microsoft.com/pt-br/library/bb902844.aspx >. Acessado em: 25 jun. 2013.
MICROSOFT. Arquitetura e Classes para Sincronização entre Cliente e Servidor.
Disponível em < http://msdn.microsoft.com/pt-br/library/bb726025.aspx >. Acessado
em: 1 jul. 2013.
OLIVEIRA, Carina T. de; MOREIRA, Marcelo D. D.; RUBINSTEIN, Marcelo G.;
COSTA, Luís Henrique M. K.; DUARTE, Otto Carlos M. B. Redes Tolerantes a Atrasos
e Desconexões, 2007. Disponível em
<
http://www.gta.ufrj.br/ftp/gta/TechReports/OlDu07.pdf > Acessado em: 06 Ago.
2013.
TANENBAUM, Andrews. Redes de computadores. 4a Edição. Rio de Janeiro Campus,
2003
126
O Lúdico no Ensino de Lógica na Educação Básica
Lílian Lúcia B. Monteiro1, Marco Antônio M. das Chagas1, Odete da C. Ferreira1,
Marialda M. de Melo1, Fabiano Leandro C. de Melo1, Mário Rômulo C. Costa1,
Decíola F. de Sousa1
1
Universidade Federal Rural da Amazônia (UFRA) – Av. Presidente Tancredo Neves,
Nº 2501 Montese Cep: 66.077-901 Belém – Pará – Brasil
{lilianbraga28,cmarcoantonio37,odeteferreira75}@gmail.com,
[email protected], {flcmelo,romulotnp}@yahoo.com.br,
[email protected]
Abstract. This paper aims to present and analyze the playful design through
logic as a facilitator of learning in the classroom. You can show how much
"play" can be an indispensable tool in learning and development in students'
lives, making clear that teachers have working knowledge of the concept of logic
and its importance in the teaching-learning process. The project contributes to
the moral, intellectual and social development of students, there are activities
that allow students to read and learn to think, developing and expanding, thus
the ability of logical thinking in an interdisciplinary way.
Resumo. O artigo tem como objetivo apresentar e analisar o projeto lúdico
através da lógica como um processo facilitador da aprendizagem na sala de
aula. Mostra que o “lúdico” pode ser um instrumento indispensável na
aprendizagem e no desenvolvimento na vida dos alunos, tornando evidente que
os professores atuantes tenham conhecimentos do conceito, sobre lógica e sua
importância no processo ensino-aprendizagem. O projeto contribui para o
desenvolvimento moral, intelectual e social dos alunos através de atividades
que permitem aos alunos ler e aprender a pensar, desenvolvendo e ampliando,
assim, a habilidade de raciocínio lógico de forma interdisciplinar.
1. Introdução
Ao longo do tempo surgiram muitas teorias sobre aprendizagem que diferem umas das
outras, mas em qualquer modelo, a aprendizagem só pode ser avaliada em termos do que
se manifesta externamente. Esta visão clássica da aprendizagem, conhecida por muitos
professores, sobrevive na noção que a aprendizagem provoca uma mudança de
comportamento. A aprendizagem pode ser julgada a partir daquilo que vemos mudar. A
mudança pode ser manifestada, como algum tipo de resposta física, ou pode ser uma
mudança de atitude. Todos nós aprendemos o tempo todo. Uma grande força do brincar:
o indivíduo quer adulto quer crianças podem brincar aproveitando dessa experiência toda
a aprendizagem para qual eles estão prontos naquele momento. Segundo Vygostsky, as
maiores aquisições de uma criança são conseguidas no brinquedo, aquisições que no
futuro tornar-se-ão seu nível básico de ação real e moralidade [Vygotsky 1989].
A lógica nos leva a pensar corretamente para que possamos alcançar o
conhecimento verdadeiro. O estudo da lógica é o estudo dos métodos e princípios para
usados para distinguir o raciocínio correto do incorreto. A lógica fundamenta o raciocínio
e as ações, pois o pensamento lógico geralmente é criativo e inovador. A cabeça humana
é uma máquina notável que não pode e nem deve ser robotizada. O raciocínio lógico
127
lubrifica e torna mais produtivo o pensar em direção ao porvir. É do hábito da reflexão
que brota o aprender.
É inegável a importância da formação docente para que haja uma melhora efetiva
na educação brasileira, em todos os níveis. No cotidiano esta afirmativa se torna mais
intensas ao observarmos os meios de comunicações e os comentários além dos muros das
academias. A importância da qualidade educacional está no centro das condições para
que o país se torne mais justo em suas ofertas educacionais, profissionais e de acesso aos
bens e serviços, em especial os da educação.
Zabala ressalta que a busca pela competência no que realizamos é uma
característica fundamental em qualquer profissão, através das nossas próprias práxis.
Acredita-se que neste contexto, é de extrema importância que os professores sejam
dotados de flexibilidade na arte de educar [Zabala 1998]. Buscar diferentes possibilidades
de conexões entre os saberes construídos na universidade e os saberes emergentes das
práticas pedagógicas no cotidiano da escola de educação básica, consiste num desafio
diante da complexidade dos olhares sobre a teoria e a prática, uma vez que as dificuldades
a serem vencidas a cada ação realizada foi uma das nossas metas e que o projeto está
contribuindo significativamente com a formação inicial dos acadêmicos do curso de
Licenciatura em Computação, bem como dando suporte para a aquisição de experiência
na arte de educar.
Portanto, para os acadêmicos bolsistas, colocar em prática as experiências
agregadas aos conhecimentos adquiridos na Universidade e interagir tudo o que se
aprende na teoria, a prática na sala de aula do Ensino Básico da Escola Pública é
fundamental para a vida docente.
O objetivo do artigo é apresentar o projeto aprender brincando: O lúdico através
da lógica na aprendizagem como uma proposta pedagógica que contribui para o
desenvolvimento dos alunos de forma interdisciplinar, visando à prática de mudanças no
sistema de ensino.
O artigo está estruturado da seguinte maneira na seção 2 é apresentada conceitos
relacionados a aprender através do lúdico, na seção 3 o método aplicado, os resultados e
as discussões são apresentados na seção 4 e a seção 5 apresenta as considerações finais e
sugere trabalhos futuros.
2. Aprender através do lúdico
Com o advento da tecnologia o computador também se tornou uma ferramenta divertida
de aprender, ou seja, através dos jogos eletrônicos. Cada vez mais, o acesso e o domínio
das novas tecnologias de informação e comunicação constituem uma condição do
desenvolvimento pessoal e profissional do cidadão e já se pode constatar o distanciamento
entre os que conhecem e o que desconhecem a linguagem dos computadores, as
possibilidades abertas pelo uso do computador suscitarão um aprendizado significativo
para todos os alunos. Considerando a relação sujeito-meio durante o processo de
aprendizagem em ambiente computacional, vale ressaltar que o uso da informática pode
promover pequenos e incessantes saltos qualitativos no desenvolvimento do pensamento
humano, que em inúmeras situações exigem o emprego de raciocínio abstrato e
inferências lógicas de maneira mais rápida e eficaz do que outros ambientes de
aprendizagem.
128
Papert explica que a partir destes "pequenos saltos" de pensamento que a
informática pode promover, um sujeito que ainda esteja no período pré-operatório de
inteligência, pode "saltar" para o período de pensamento formal, sem ter que passar pela
etapa de operações concretas. Papert alerta também, que estes sinais de transformação da
inteligência humana já começaram a ocorrer. Desde as primeiras gerações que utilizaram
o vídeo game de maneira cotidiana já havia transformações significativas. O modo de
pensar e agir destas pessoas sobre o mundo concreto já estava diferenciado das gerações
anteriores. De maneira geral, Papert defende que nos próximos anos estaremos diante de
um novo tipo de inteligência humana: uma inteligência que abstrai mais durante o uso de
informática, e, portanto necessita operar menos concretamente para alcançar um
raciocínio formal. [Papert 1985].
O jogo não é simplesmente um “passatempo” para distrair os alunos, ao contrário,
corresponde a uma profunda exigência do organismo e ocupa lugar de extraordinária
importância na educação escolar. Através do jogo o indivíduo pode brincar naturalmente,
testar hipóteses, explorar toda sua espontaneidade criativa. O jogo é essencial para que a
criança manifeste sua criatividade, utilizando suas potencialidades de maneira integral. E
somente sendo criativo que a criança descobre seu próprio eu [Tezani 2004].
É evidente a importância do lúdico e como ele, os jogos, os brinquedos e as
brincadeiras podem ser importantes para o desenvolvimento e para a aprendizagem das
crianças. É importante ressaltar que ele não está apenas no ato de brincar, está também
no ato de ler, no apropriar-se da literatura como forma natural de descobrimento e
compreensão do mundo. Atividades de expressão lúdico-criativas que atraem a atenção
dos educando e podem se constituir em um mecanismo de potencialização da
aprendizagem.
O lúdico em situações educacionais proporciona um meio real de aprendizagem.
No contexto escolar, isso significa professores capazes de compreender onde os alunos
estão em sua aprendizagem e desenvolvimento e dá aos professores o ponto de partida
para promover novas aprendizagens nos domínio cognitivo e afetivo. Tem-se
comprovado através de leituras e também através de experiências reais que o lúdico é
bem mais abrangente do que somente a ligação que muitos fazem, ligando-o ao lazer.
A dificuldade de levar o lúdico para a sala de aula pode estar relacionado ao fato
de que durante muito tempo coube aos alunos à tarefa de ficar sentados em suas carteiras,
obedientes, silenciosos e passivos. É preciso haver uma conscientização de mudanças,
pois é de entendimento que a escola tem como grande desafio fazer seu PPP (Proposta
Política Pedagógica) e que a maioria das escolas ainda não contempla tão rica ferramenta
de aprendizagem, ou seja, desconhece ou ignora o processo significativo de aprendizagem
que faz uso da ludicidade. Entendemos que a escola pode promover o lúdico de maneira
pedagógica e direcionada.
A realização das atividades depende muito da metodologia do professor e, é claro,
de como ele pode conduzi-las nas suas aulas, nesse sentido o lúdico contribui de forma
significativa para o desenvolvimento do ser humano, seja ele de qualquer idade
auxiliando não só na aprendizagem, mas também no desenvolvimento social, pessoal e
cultural, facilitando a comunicação, a expressão e a construção do pensamento. Vale
ressaltar, porém, que o lúdico não é a única alternativa para a melhoria no intercâmbio
ensino-aprendizagem, mas é uma ponte que auxilia na melhoria dos resultados por parte
dos educadores interessados em promover mudanças.
129
Nesse sentindo percebe-se que, hoje, o lúdico está cada vez mais presente no
cotidiano das pessoas e principalmente no contexto escolar, sendo atividades
interessantes, e motivadoras que facilitam o processo de aprendizagem dos educandos.
Dessa forma as atividades realizadas no projeto “Aprender Brincando: o lúdico através
da lógica na aprendizagem” foi de grande importância, pois os resultados foram
riquíssimos para os alunos nos quais seus desempenhos foram positivos, principalmente
na área da Matemática, Arte, História, Português, e Informática.
A inserção dos graduando em licenciatura em computação nas escolas faz com
que conheçamos as referidas estruturas escolares, seus profissionais, bem como o perfil
dos educandos e futuros formadores de opinião. Conforme Veiga cada um deverá retirar
dessa formação o que for melhor para si e o mais apropriado, tendo assim também maior
possibilidade de adaptação e reflexão, maior poder de decisão social e melhor qualidade
de vida [Veiga 2000].
3. Método
O método utilizado para a realização do projeto foi o de aulas presenciais para os alunos
de quatro turmas do 8º ano de uma escola pública do município de Marapanim no Pará,
sendo duas pela parte da manhã e duas pela parte da tarde, no total de 112 alunos. Através
de oficinas práticas e exercícios, no horário de aula cedido pelos professores da turma,
durante 10 aulas, trabalhando questões de raciocínio lógico abordando diversas
disciplinas do cotidiano escolar dos educandos, dando com isso enfoque na
interdisciplinaridade.
Foram selecionados alguns exercícios de níveis fácil, médio e difícil, que
despertassem a curiosidade e proporcionassem a interação entre os alunos e a discussão
acerca dos resultados. Durante duas horas de aula que ocorreram em cinco dias foram
aplicados entre quatro e cinco exercícios por dia, no total de dezessete Primeiro era
realizada a leitura dos enunciados e interpretação dos exercícios e depois, iniciava-se, o
processo de busca da solução, realizando várias leituras para que o aluno pudesse chegar
a soluções mais adequadas.
Em todas as aulas, os alunos foram desafiados a resolver os problemas de forma
espontânea e desinteressada, ou seja, sem que houvesse uma recompensa material para
os melhores, tornando a aula um momento de descontração e prazer. Usando essa
metodologia na resolução de exercícios de raciocínio lógico, todos os envolvidos podiam
estruturar e dar ordem ao pensamento, para conseguir atingir um nível de abstração mais
elevado.
Foram desenvolvidos vários exercícios lógicos, entre eles os montados com
palitos de fósforos e picolé. “Brincando com os palitos” que é uma proposta de atividade
voltada para alunos do 5º à 9º ano do Ensino Fundamental e alunos do Ensino Médio, tem
o objetivo de proporcionar aos alunos o interesse pelo o estudo da matemática, assim
como pelas outras disciplinas afins, tornando as aulas mais proveitosas, tanto para os
alunos como para os professores.
Na Figura 1 é apresentada a atividade desenvolvida para construir figuras
geométricas.
130
Figura 1. Figuras geométricas com palitos
A atividade desenvolvida na Figura 1 utilizou palitos de picolé para construção de
figuras geométricas, na qual os alunos tiveram que mover três palitos para obter três
triângulos. Outra atividade com palito é apresentada na Figura 2.
Figura 2. Atividade com palitos de fósforo
Na atividade da Figura 2 o aluno é questionado de quantos palitos de fósforos são
necessários mover para obter a segunda casa a partir da primeira. São colocadas as
alternativas (a, b, c, d, e) nas quais cada uma possui uma resposta, respectivamente, por
exemplo, 1, 2, 3, 4 e 5, mas apenas uma é a correta.
Atividades utilizando o baralho como suporte didático também foram
desenvolvidas conforme Figura 3.
131
Figura 3. Cartas de baralho
No jogo da Figura 3, as cartas de um baralho foram agrupadas em pares, segundo
uma relação lógica. O aluno precisava descobrir, qual é a carta que estava faltando,
sabendo que K vale 13, Q vale 12, J vale 11 e A vale 1.
Outra atividade desenvolvida foi a do jogo quadrado mágico apresentada na
Figura 4.
Figura 4. Quadrado mágico
Na atividade do quadrado mágico o educando precisa distribuir os numerais 1, 2,
3, 4, 5, 6,7, 8 e 9, sem que os mesmos sobrem ou se repitam, sendo que o resultado da
soma dos numerais será = 15, esse resultado dará na horizontal, vertical e diagonal.
As atividades foram desenvolvidas em grupos e com a participação de todos,
inclusive de professores que ministram na turma e cederam o horário para a realização da
oficina.
4. Resultados e discussões
Nas atividades desenvolvidas pelos alunos, descritas na seção 2, os alunos interagiram,
analisaram e desenvolveram o raciocínio lógico, pois todas requerem muita atenção e
paciência dos alunos envolvidos.
As atividades estimularam os alunos a desenvolverem cálculos mentais, e
estimularam o raciocínio, possibilitando ao aluno uma compreensão de cálculos
matemáticos do seu cotidiano. Isso tudo é possível, através das aquisições de novas
abordagens metodológicas, bem como práticas inovadoras e interdisciplinares, buscando
a superação de problemas identificados no processo de ensino e aprendizagem.
Em outros momentos, o aluno resolvia exercícios no quadro-verde com o auxílio
do professor-bolsista. E nisso, o aluno construía e usava o raciocínio lógico sem perceber.
132
Mas, o importante é que ele foi conduzido a conhecer algo abstrato e concretizá-lo no
mundo real.
Os professores da Escola que ministravam aula no horário para a turma
participavam das atividades fazendo os exercícios. Isso mostra que os exercícios que
estavam sendo propostos atraiam a atenção tanto dos alunos quanto do professor.
Assim, todas as atividades resolvidas em sala de aula foram interativas. Alunos e
professores participaram ativamente, principalmente os alunos os que se comunicavam
em grupos para as resoluções dos problemas propostos, inclusive alunos de dependência
que não faziam parte da turma, mas participavam ativamente da oficina. Em
contrapartida, nós, professores bolsistas buscávamos motivar a participação de todos para
o que tange ao trabalho que estava sendo construído.
As atividades desenvolvidas em uma escola pública foram importantes no
processo de ensino aprendizagem dos alunos do ensino básico, pois são exercícios de
raciocínio lógico que permitiram aos alunos o interesse pelas aulas, nas experiências
vivenciadas eles aprenderam a pensar e refletir a cerca de cada exercício, analisando o
que cada um determinava, gerando ideias para possíveis soluções, desenvolvendo assim
as habilidades de raciocínio lógico.
Na atualidade, cada vez mais, é exigido do ser humano o desenvolvimento social,
político, cultural e educacional. Ao considerar a importância de aperfeiçoar o
desenvolvimento educacional, é fundamental investir na formação do educador e repensar
as condições de trabalho, bem como investir na infraestrutura das escolas, apesar das
diferenças que perpassam o trabalho no cotidiano escolar.
A interdisciplinaridade é uma temática que vem marcando presença na educação,
construindo pressupostos diretamente relacionados a um contexto mais amplo, muito
complexo de mudanças que abrange não só a área da educação, porém a outros setores da
vida social como econômico, político e tecnológico.
Pedro Demo ajuda a pensar sobre a importância da interdisciplinaridade no
processo de ensino e aprendizagem quando propõe que a pesquisa seja um principio
educativo e cientifico. Para ele disseminar informação, conhecimento e patrimônio
culturais é tarefa fundamental, mas nunca apenas os transmitimos. Na verdade,
reconstruímos. Por isso mesmo, a aprendizagem é sempre um fenômeno reconstrutivo e
político. Nunca apenas reprodutivo [Demo 2001].
A inserção dos graduando em licenciatura nas escolas faz com se conheça as
escolares, os profissionais, bem como o perfil dos alunos e futuros formadores de opinião.
Conforme Veiga cada um deverá retirar dessa formação o que for melhor para si e o mais
apropriado, tendo assim também maior possibilidade de adaptação e reflexão, maior
poder de decisão social e melhor qualidade de vida [Veiga 2000].
O Programa Institucional de Bolsa de Iniciação à docência (PIBID), desenvolvido
pela
CAPES (Coordenação de Aperfeiçoamento de Pessoal de Nível Superior) em
parceria com a
Universidade Federal Rural da Amazônia (UFRA), é um dos mecanismos que
proporciona a possibilidade de antecipar o vínculo entre os futuros professores e a sala de
aula da rede pública, através da participação em ações, experiências metodológicas e
133
práticas docentes inovadoras, articuladas com a realidade local da escola na qual o projeto
é desenvolvido. Sendo assim, o PIBID faz uma articulação entre a Educação superior, a
escola e os sistemas estaduais e municipais de Educação Básica. Torna o processo de
ensino e aprendizagem mais dinâmico e atraente, contribuindo para a formação de forma
integrada e autônoma. Freire (2002) coloca que quem ensina aprende ao ensinar e quem
aprende ensina ao aprender.
5. Considerações Finais e Trabalhos futuros
O artigo apresentou o projeto aprender brincando: O lúdico através da lógica na
aprendizagem como uma proposta pedagógica. A experiência sugere mudanças no
sistema de ensino e contribui para a inserção dos alunos no processo de atividades com
jogos.
Com a execução das tarefas propostas, os alunos são alertados que as atividades
são de cunho pedagógico e que o principal objetivo é que os alunos participem com
objetividade, se apropriando dos jogos para a inserção do ensino e aprendizagem. E não
participem do jogo, sem objetivo definido.
As realizações dos exercícios de raciocínio lógicos são importantes, pois
permitem que o professor explore o potencial dos alunos, os processos de solução, os
registros e as discussões sobre possíveis caminhos que poderão surgir. É preciso criar
oportunidades para um aprendizado mais significativo para o aluno, para que o processo
ensino-aprendizagem se efetive de modo satisfatório, pois o sucesso se constrói dia após
dia.
Os alunos participaram ativamente das atividades, elogiaram e pediram para
continuar. Dessa forma, a experiência desenvolvida através do projeto mostrou que as
brincadeiras e os jogos devem ser pensados e preparados para estimular os alunos a
brincarem, convidando-os a explorar, a sentir e a experimentar na prática. Os exercícios
ficaram marcados na lembrança dos alunos.
Portanto, a realização do projeto foi de grande relevância tanto para os bolsistas,
como para a educação do nosso Município, pois os objetivos almejados foram de fato
concretizados, uma vez que nas atividades desenvolvidas a reciprocidade dos alunos foi
percebida, demonstrando expectativas para as próximas atividades a serem executadas.
Como trabalho futuro o projeto vai continuar com os mesmos alunos, agora no 9º
ano, introduzindo o conceito de algoritmos fazendo uma relação com a lógica estudada.
Agradecimento
O presente trabalho foi realizado com apoio do Programa Institucional de Bolsa de
Iniciação à Docência – PIBID, da CAPES - Coordenação de Aperfeiçoamento de Pessoal
de Nível Superior - Brasil.
Referências
Demo, P. (2001). Educação e conhecimento – relação necessária, insuficiente e
controversa. Petrópolis, Vozes.
Freire, P. (2002) Pedagogia da autonomia: Rio de Janeiro: Paz e terra.
Papert, S(1985). Logo: Computadores e educação; São Paulo, Brasiliense.
134
Tezani, Thaís Cristina Rodrigues. (2004). O jogo e os processos de aprendizagem e
desenvolvimento:
aspectos
cognitivos
e
afetivos.
Disponível
em:
http://www.psicopedagogia.com.br/artigos/artigos.asp?entrlD=621. Acesso no dia 16
de julho de 2013.
Veiga, L. (2000). A Formação de Professores para o desenvolvimento no contexto de
pós- modernidade. Revistos itinerários (pp. 13-26). Lisboa: Instituto Superior de
Ciências educativas.
Vygotsky, L. (1989). A formação social da mente. São Paulo: Martins Fontes.
Zabala, A.(1998). A Prática Educativa: Como Ensinar. Trad. Ernani F da Rosa. Porto
Alegre. ArtM.
135
Parque Zoobotânico Virtual, Um espaço de educação
ambiental e cultural do Museu Paraense Emílio Goeldi
através de Realidade Virtual
Hardy J. S. Miranda1, Lucas A. Andrade1, Marcos Paulo Souza1
1
Centro Universitário do Estado do Pará (CESUPA)
Belém – PA – Brasil
[email protected], [email protected], [email protected]
Abstract. The Emílio Goeldi Museum of Pará is considered to be one of the
oldest institutes for research, and as part of his campi there is the Zoobotanical
Park which consists in exposition of live fauna and flora in addition to
scientific collections. This project objective is to break free from the static and
limitation inherent to the physical space, and create a virtual reality ambient
to act as a complementary tour through the Zoobotanical Park of the Museum,
as the real tour is still unique experience. The virtual tour brings advanced
animation elements to each species to portray theirs natural actions and
reactions. Furthermore, uses tools to create an easy access web browsed 3D
game for exploring the Museum’s Park on its own web portal. The project is a
space of cultural-scientific disclosure and and an expansion of the presencial
tour.
Resumo. O Museu Paraense Emílio Goeldi é considerado um dos mais
antigos institutos de pesquisa, e fazendo parte de seus campi há o parque
Zoobotânico que consiste na exposição de fauna e flora viva, além das
coleções científicas. O objetivo deste projeto é desvincular as limitações e
estaticidade inerentes ao espaço físico e criar um ambiente de realidade
virtual que aja como um passeio complementar através do parque
Zoobotânico, haja vista que o passeio presencial permanece uma experiência
única. O passeio virtual traz elementos de animação avançada para cada
espécie no intuito de mostrar suas ações e reações naturais. Além de usar
ferramentas para criar um jogo 3D via web de acesso simplificado para
explorar as dependências do museu em seu próprio website. O projeto é um
espaço de divulgação científica-cultural e expansão do passeio presencial.
1. Introdução
O Museu Paraense Emílio Goeldi (MPEG), com sede em Belém (PA), é um instituto de
pesquisa vinculado ao Ministério da Ciência e Tecnologia, fundado em 1866, é
considerado um dos mais antigos institutos de pesquisa do Brasil, era um dos 12 únicos
museus em funcionamento no Brasil no início do século XX. O Parque Zoobotânico do
MPEG está situado no centro urbano de Belém com uma área de 5,2 hectares, e foi
fundado em 1895 como um anexo horto botânico ao Museu Paraense, com as mesmas
funções do extinto Jardim Botânico criado em 1798 pelo governador sob ordem da
Rainha de Portugal (atuar na área de pesquisa agrícola de plantas exóticas naturais da
Amazônia) [IBRAM, 2011]. É considerada uma grande área de lazer e um dos mais
importantes pontos turísticos da cidade. Também é uma das principais áreas verdes,
136
refúgio de aves e ponto de absorção de calor. Seu uso atual consiste na exposição de
animais e vegetais vivos e na exposição das coleções científicas do museu, além de sediar
a administração da instituição e suas atividades educativas. O Parque é tombado como
Patrimônio Histórico Nacional (IPHAN) e Estadual (Secretaria de Cultura).
O plantel atual do Parque [SANJAD, 2008] é composto por várias espécies de
animais amazônicos, algumas delas ameaçadas de extinção, como a onça- pintada, o
coatá-da-testa-branca, a ariranha, o gavião- real, a arara-azul e a ararajuba. Em 2007, foi
registrado e seguinte plantel: 286 mamíferos (13 espécies); 460 aves (44 espécies); 1.269
répteis (23 espécies); e 314 peixes (30 espécies). Houve o nascimento de 210 animais,
sendo 44 mamíferos, 16 aves e 150 répteis.
Apesar da importância do Parque Zoobotânico, as dimensões continentais do
Estado do Pará e do Brasil impossibilitam que muitos paraenses e brasileiros possam
conhecer os espaços físicos e as variedades de espécies pertencentes ao MPEG, portanto,
oferecer um ambiente virtual disponível na Internet com mídias e recursos de alta
interatividade, irá ampliar a disseminação do conhecimento sobre a cultura e floresta
amazônica.
Atualmente, existem algumas iniciativas de sistemas e sites que tentam
representar virtualmente museus e espaços zoobotânicos do mundo real [CORCORAN
et al., 2002] [TARNG et al., 2006], porém, é importante salientar que a todos os sites
encontrados na Internet, ditos virtuais, trata-se apenas de simples páginas Web, e
normalmente apresentando as informações de forma limitada, superficial e estática ou
visualizações de imagens em 360º, sem oferecer ao usuário a possibilidade de uma
melhor pesquisa e descoberta interativa sobre a fauna e a flora.
Desta forma, a utilização de recursos Web aliados a interatividade da Realidade
Virtual [BURDEA, 2003], proporcionará ao usuário o conhecimento sobre o parque
virtual independente da localização geográfica.
Outras vantagens também identificadas são:
 Promover a divulgação científico-cultural por meio da representação virtual
tridimensional dos espaços físicos, das espécies da fauna e flora de parques
zoobotânicos;
 Motivação para uma maior exploração do parque virtual, através da possibilidade
de aproximação e manipulação dos objetos e ambiente;
 Visualização e simulação dos comportamentos de espécies de animais e plantas,
para que os usuários possam fixar os estudos biológicos aprendidos;
 Permitir aos usuários ângulos de visualização aproximada sobre animais selvagens,
sem oferecer riscos de segurança;
 Simular espécies extintas para estudos científicos e estimular a conscientização
sobre preservação ambiental.
O parque virtual será implantado no site institucional do MPEG, e permitirá ao
usuário navegar e visitar os principais prédios e monumentos virtuais do Museu, de
forma semelhante ao mundo real, e a cada nova descoberta, poderá interagir sobre cada
objeto e espécies virtuais da fauna e flora, e obter informações gerais e científicas sobre
os mesmos, estimulando a pesquisa e a disseminação do conhecimento.
1
3
7
Além da possibilidade do parque virtual ser utilizado como ferramenta de
divulgação, este ambiente virtual também será objeto de abordagens educativas através
da aplicação de atividades e jogos virtuais lúdicos [TAROUCO et al., 2005] direcionados
aos estudantes do ensino fundamental e médio do projeto Clube do Pesquisador
Mirim/MPEG, despertando-os para a ciência, a importância da preservação do meio
ambiental e do espaço físico do Parque Zoobotânico. Esta aplicação de realidade virtual
desenvolverá jogos educativos com atividades tanto no ambiente virtual e também
estimulará a visita no espaço real.
Figura 1. Faixada da Rocinha (Pavilhão Ferreira Penna) cercada pela flora e
com pós-produção
2. Projeto MPEG
2.1 Objetivos
Oferecer um ambiente tridimensional virtual do Parque Zoobotânico do Museu Paraense
Emílio Goeldi (MPEG) a ser disponibilizado na Internet, que possa representar de forma
realista o ambiente físico e as espécies de animais e plantas da região que convivem nas
dependências do Museu, através de técnicas avançadas de realidade virtual, com a
implementação de shaders, modelos 3D e animação para ambientes de renderização em
tempo real com foco em espécies da fauna e flora, visando a criação de modelos e
comportamentos realísticos das espécies da Biodiversidade da Amazônia. A combinação
dos vários conceitos para representar tanto os modelos 3D quanto seus materiais com a
tecnologia Direct3D e viáveis para funcionarem através de level streaming pela web
[UNITY3D, 2012]. Assim, oferecendo aos estudantes, pesquisadores e à comunidade em
geral, um espaço de divulgação científico-cultural e de educação ambiental interativo
sobre a biodiversidade amazônica.
2.2 Metodologia
138
Inicialmente, foi feito um levantamento bibliográfico dos acervos do Museu
Emílio Goeldi sobre a fauna e flora da região amazônica presentes no Parque, e também
realizadas algumas entrevistas com pesquisadores da própria instituição. Além disso,
foram realizados estudos sobre documentos e plantas arquitetônicas dos prédios e
monumentos necessários ao desenvolvimento das construções do ambiente virtual
tridimensional.
Para o desenvolvimento do sistema do ambiente tridimensional virtual foram
utilizados softwares, o pacote de criação 3D Studio Max [AUTODESK, 2012], o Unity
3D [UNITY, 2012], que possui recursos modelagem 3D, e também para WEB, o Adobe
Photoshop para criação das texturas e o XNormal para criação de Height e Bump maps.
A construção do Parque Zoobotânico envolve a modelagem tridimensional
apenas de algumas das principais construções, monumentos históricos, e espécies de
fauna e flora, conforme a descrição a seguir:
 Entrada principal, monumento Ferreira Penna, Monumento Spix e Martius,
pavimento Domingos Soares Ferreira Penna (“Rocinha”), viveiro de tambaqui,
viveiro dos felinos, viveiro da fauna livre, gruta e algumas gaiolas de pássaros.
2.3 Desenvolvimento gráfico
Utilizou-se como motor gráfico o Unity3D, e o desenvolvimento do ambiente virtual foi
dividido em três etapas: Modelagem, Shaders e Animação.
Primeiramente para a modelagem foi adotado o conceito de modelos com
polígonos de quatro lados [SPENCER, 2008], visto que tanto o unity3D quanto 3Ds
Max e o xNormal trabalham de forma otimizada [AUTODESK, 2012], [UNITY3D,
2012]. Para a replicação virtual de um modelo real a técnica adotada foi a de planos com
imagem, onde são adicionados tantos planos quanto necessários para visualizar cada
vertente da espécie e assim auxiliar na criação de um volume básico conforme mosta a
Figura 2, que é ajustado embasado em outras imagens para acréscimo de detalhes
fundamentais.
Figura 2. Delimitação do volume da onça pintada
Para as espécies vegetais outra abordagem foi necessária, foram subdivididas em
dois tipos de modelos, um com baixa densidade poligonal (Low- Poly) [SPENCER, 2008]
e outra como plano com rotação ligada ao movimento do personagem, onde o visual
ocorrerá através do mapa aplicado. Para o caso de flora muito pequena não há
necessidade de gasto de recurso, assim são todas exclusivamente planos, no entanto para
os modelos maiores a adição de mais um conceito para o ganho de desempenho foi
preciso, o Level Of Detail, onde é feito vários modelos do mesmo objeto com níveis de
poligonais diferentes e são alterados no próprio motor gráfico em tempo real. No caso,
cada vegetal de médio e grande porte possui sua contrapartida planar para ser substituída.
1
3
9
Testes constantes são feitos no motor gráfico para avaliar a geometria, seu
consumo de memória e de processamento. Para manter baixo uso de memória foi
adotada a modularidade na montagem da cena, onde os objetos são reutilizados várias
vezes, assim instâncias são criadas em detrimento da mesma geometria ser utilizada
como nova.
Para a montagem no Unity3D, a cena é construída integralmente no 3Ds Max
porém apenas são exportados objetos por partes, visto que o pivô para todos fica no
mesmo lugar referenciado pelo centro da cena (ou mundo), quando é importado para do
unity3D reconhece o pivô do mundo e o que normalmente e tido como um “erro”
torna-se uma técnica fundamental para montar a cena com rapidez, visto que cada objeto
colocado automaticamente estará colocado no ponto certo da cena.
Os shaders (do inglês: sombreamento) são a reação da luz e a sombra no objeto,
quando são atribuídos mapas para simular um determinado comportamento dá-se a
denominação de material. Na criação dos shaders, foi levado em consideração que tipo
seria utilizado pela engine e por qual objeto. Vertex Lit é uma forma de renderização
muito rápida, porém é simples e não usa mapas complexos como normais (imagem rgb
com informações de x, y e z para profundidade), height (provê ilusão e óptica através de
uma imagem em escala de cinza), especular... É utilizado principalmente para objetos
que não necessitam de complexidade a fim de ganho de desempenho. Pixel Shader
consome mais, no entanto possui suporte a todos os mapas complexos, além de ter um
melhor tratamento para rebatimento de luz.
São utilizadas imagens em Ping (PNG) ou em Targa (TGA) preferencialmente,
visto que possuem suporte a vários canais de cor além do alfa, este é um canal em preto
e branco que controla a opacidade / transparência da imagem, e na engine pode ser
utilizado para vários fins.
Em cada shader há um ou mais canais que dirigem o aspecto visual do objeto
através da adição de imagens, entre os utilizados neste projeto estão: o Difuso (onde é
inserida uma imagem para referenciar a cor geral do objeto), o Alfa (é um canal de
cor na imagem adicionada que funciona como transparência ou especular, sem precisar
adicionar mais imagens em mais canais), o Especular (recebe uma imagem em escala
de cinza referenciando onde haverá mais ou menos brilho), o Normal (mapa com os 3
canais de cor que causa um leve efeito ótico, dando mais profundidade) e o Height (mapa
em escala de cinza que causa um forte efeito ótico, simulando uma extrusão)
[BROOKER, 2008].
Os principais shaders utilizados como base para construir todo o aspecto visual
e realista da cena serão descritos a seguir:
Tipos de Shaders utilizados na Unity3D:
 Diffuse [Base (RGB)]: Possui possibilidade apenas de inserir uma imagem simples
no modelo, em PNG (com alpha) TGA.
 Bumped Diffuse [Base (RGB), Normal Map]: Além da imagem para a cor, possui
também um canal para mapa normal.
 Specular [Base (RGB) Gloss (A)]: Usa o canal de alfa como base para o mapa de
especularidade. O Unity pode criar uma versão da imagem em alfa, caso a imagem
adicionada não possua.
140
 Bumped Specular [Base (RGB) Gloss (A), Normal Map]: Compreende o canal alfa
da imagem de cor, além de usar informações de um mapa de normais.
 Parallax Specular [Base (RGB) Gloss (A), Normal Map, Height Map]: Adiciona o
Height Map, que causa uma ilusão de ótica e dá impressão de destacar áreas com
base no mapa aplicado.
 Transparent > Bumped Diffuse [Base (RGB) Transparency (A), Normal Map]:
Possui o mesmo conceito que o Bumped Diffuse padrão com suporte a
transparência a partir do canal alfa da imagem utilizada para cor.
 Transparent > Bumped Specular [Base (RGB) TransGloss (A), Normal Map]:
Adicionalmente ao Transparent Bumped Diffuse, possui especularidade.
Paralelamente à criação de shaders, a iluminação foi projetada para fim de
trabalhar corretamente com a tecnologia de foward rendering contida no Unity3D [2012],
que consiste na renderização em tempo real onde é capturado cada objeto na cena
separadamente e então calculada sua superfície baseando-se na cor de seu material e
todas as luzes do ambiente, gerando uma complexidade relativamente alta.
O acréscimo de rebatimento de cor e sombras suaves se deu pelo uso do
lightmapping [UNITY3D, 2012] através do Beast, uma ferramenta que calcula toda a
geometria e seus respectivos materiais, para então imprimir suas sombras e luzes
refinadas em mapas à partes, que são sobrepostos em toda a cena. A técnica de Ambient
Occlusion (Oclusão de sombras ambientes) foi largamente utilizada em conjunto com o
lightmapping a fim de extrair e forçar as sombras de contato [SINTORN et al, 2008],
comuns a arestas fortes que se aproxima de 90º de uma face para outra. São fundamentais
para o clima realista do ambiente como um todo.
A preparação para a animação é iniciada antes da modelagem, pois o personagem
deve ser projetado para ter um fluxo poligonal que permita animá-lo sem causa problemas
e artefatos na malha [OSIPA, 2007]. Em seguida é criado um esqueleto com o Biped
do 3Ds Max para cada espécie em um processo chamado de rigging, para que cada osso
seja incumbido de vários vértices da malha e assim controla-la. E as várias animações
são feitas em uma mesma sequência de quadros, para serem referenciados em sequência
dentro do Unity3D. Entretanto, devido ao caráter fixo da iluminação e sombreamento
causado pela técnica de lighmapping, os animais não apresentam o rebatimento de luz
adequado causando um efeito de destaque que elimina a sensação de imersão, para isso
foram utilizados os chamados Light Probes do Unity3D. Os light probes tratam-se de
pontos para se criar um ambiente tridimensional de interpolação de sombras e luzes como
mostra a Figura 3.
Figura 3. Interpolação de luz e sombra usando Light Probes
1
4
1
Fez-se necessária a integração de elementos pertinentes à visão humana, bem
como o desfoque de movimento dos olhos, ajustes de cores e estouro de luz. O desfoque
de movimento como o próprio nome já diz, trata-se do embaçamento da visão causado
pela movimentação da câmera ou olhos, e ajustes do script em C# com componentes
específicos ao museu tiveram que ser adicionados, foram a normalização do desfoque
para evitar confusão visual e redução do efeito para áreas de elevada taxa poligonal. O
estouro de luz é um pós-processamento que trata de como a luz é vazada e intensificada
na área em que é refletida, junto a esse estouro foi adicionado um efeito de
quadruplicação do mapa de brancos mais intensos na tela e para cada cópia uma cor
diferente, tamanho maior e deslocamento para a lateral da tela, produzindo uma aberração
cromática além de uma distorção de lente de câmera (Figura 1, Figura 2 e Figura 5).
Para fins de arte finalização foi preciso desenvolver alterações para o script do
ajuste de cores, adicionando apenas a possibilidade de alteração em tempo real da cor
geral do ambiente. É um efeito para gerar mudanças grandes na climatização do
ambiente, permitindo inclusive alternar entre dia e noite.
Figura 4. Fundos da Rocinha e amostra de proporção com a Cutia
2.4 Interatividade e comportamentos
A linguagem C# foi escolhida entre a UnityScript e a Boo por oferecer recursos mais
poderosos, como a orientação a objetos [UNITY SCRIPT REFERENCE, 2013], e
também por possuir uma documentação mais ampla. A programação dentro do Unity3D
se dá no modelo de scripting, onde scripts são programados e depois atrelados a um ou
mais objetos virtuais 3D, e esses objetos passam então a se comportar da forma que
foi programado no script.
Foram estudadas formas de programação e manipulação de cenários eficientes
para manter o programa leve e rápido, como o LevelStreaming, uma técnica que permite
que o cenário virtual do Parque Zoobotânico seja carregado em background enquanto o
usuário explora o menu principal do programa. O objetivo é que o software possa ser
utilizado em computadores de baixo desempenho da melhor forma possível, embora
exista uma recomendação mínima. Unindo com um bom design de programação, para
se assegurar de que cada script programado fosse flexível o suficiente para possibilitar
reutilização de código (um conceito básico e muito útil da programação orientada a
objetos) e flexibilidade (para poder expandir ou adicionar novas funcionalidades sem
precisar mexer nas anteriores já postas no projeto).
A programação de comportamentos foi feita a medida que novos objetos 3D eram
introduzidos no cenário e/ou novas funcionalidades eram definidas para o projeto. Toda
142
a programação de interatividade foi feita no software
MonoDevelop
[MONODEVELOP, 2013], uma IDE (Integrated Developement Environment) integrada
diretamente ao Unity3D e que fornece um bom ambiente de programação. Todos os
scripts programados foram testados e aprimorados, e foram revisitados muitas vezes
durante o decorrer do projeto para se certificar do desempenho quando novos
comportamentos e objetos são incluídos. Todos os conceitos técnicos referidos neste
relatório foram estudados e utilizados de acordo com a documentação do Unity3D,
especificamente utilizando para a linguagem C# [UNITY SCRIPT REFERENCE, 2012].
Como as funcionalidades de controle de movimento em primeira pessoa já são
existentes no pacote do Unity3D, o Character Controller foi apenas modificado
ligeiramente para se adaptar à velocidade de um passeio virtual, e corrigido de alguns
bugs. Por exemplo, na versão original, quando o usuário utilizava o mouse para olhar em
alguma direção, todo o objeto (tanto o corpo quando a câmera) rotacionavam na direção
olhada. Ou seja, se o usuário olhasse para baixo, o corpo rotacionava para frente e passava
para uma posição horizontal, como se estivesse deitado em pleno ar. Isso, além de
irrealista, causava bugs, como o efeito de atravessar paredes com a cabeça se olhasse
para baixo em frente a uma. A modificação feita neste caso foi passar a rotacionar o
corpo do objeto apenas no eixo Y, de forma que ele vire para a esquerda ou direita de
acordo com a direção olhada, enquanto a câmera rotaciona nos eixos X e Y, ou seja, pode
rotacionar tanto para esquerda e direita quanto para cima e para baixo.
Fora o Character Controler, todos os outros scripts principais foram criados do
zero para utilização no projeto. Os scripts que foram programados para o cenário virtual
do MPEG podem ser informalmente separados em dois tipos: scripts de objetos
interativos e scripts de funcionalidades de background.
Os objetos interativos são objetos que podem ser diretamente interagidos através
do mouse do computador. Quando o usuário olha na direção de um objeto interativo, este
brilha com uma aura branca para indicar ao usuário que este objeto pode ser clicado,
mas só quando o usuário está perto o suficiente dele (Não podemos clicar numa placa de
informações para lê-la se estivermos muito longe dela, por exemplo.). Os objetos
interativos possuem atrelados a eles um script do tipo Interactive Objects. O Script
Interactive Objects é um script “pai”, e, através do conceito de herança em programação
orientada a objetos, serve de base para todos os scripts de todos os objetos interativos.
As funcionalidades de background são comportamentos que acontecem sem
clique de mouse, ou outra interação direta com do usuário, mas que mudam de estado
baseado em certas condições ou ações. Os scripts de funcionalidades de background
são: Menu principal, comportamento de cursor, colocação dos animais no ambiente
(Figura 5), controle do mini-mapa, controle de movimento dos animais e o comando no
teclado para saída do software.
1
4
3
Figura 5. Lago dos tambaquis, interação fauna e ambiente aquático
3. Conclusão
O Parque Zoobotânico Virtual do Museu Emílio Goeldi com uma ferramenta de
divulgação cultural e científica se provou ser interessante para usuários de qualquer
idade, principalmente para crianças, adolescentes e jovens adultos, visto que a proposta
é atual e acessível.
A iniciativa de levar cultura através de tecnológica fez uma grande diferença para
a aceitação, se mostrando assim um potencial grande como um espaço educativo e
interativo com clima de entretenimento.
Ressalta-se que utilizou-se importantes técnicas para modelagem do ambiente
virtual, e também o uso da engine Unity 3D que tem sido amplamente usado em
ambientes tridimensionais na Internet.
Uma primeira versão do parque virtual encontra-se disponível, porém apenas uma
parte do parque foi implementado, e há necessidade da continuidade de modelagem de
novas espécies e de espaços físicos do parque que não foram contempladas nesse
primeiro momento, de forma a tornar o Parque Zoobotânico Virtual do MPEG uma
verdadeira plataforma de divulgação e educação da Biodiversidade da Amazônia.
Referências
AUTODESK. Autodesk 3ds Max. Disponível em http://usa.autodesk.com/3ds-max/,
acessado em junho de 2012.
BIMBER, O.; GATESY, S.; WITMER, L.; RASKAR, R.; ENCARNAÇÃO, L.,
2002.Merging Fossil Specimens with Computer Generated Information. Computer,
Volume: 35 , Issue: 9.
CH'NG, E.; STONE, R., 2006. Enhancing virtual reality with artificial life:
reconstructing a flooded European mesolithic landscape. Teleoperators and Virtual
Environments - Special issue: Virtual, MIT Press Cambridge, Volume 15, Issue 3.
CRAIG, A.; SHERMAN, W.; WILL, J., 2009.
Developing Virtual Reality Applications: Foundations of Effective Design. Morgan
Kaufmann; 1° edition.
LIM, E.; HONJO, T., 2003. Three-dimensional visualization forest of landscapes by
VRML. Landscape and Urban Planning, Volume 63, Issue 3, Pages 175–186.
144
SPENCER, S., 2008 ZBrush Character Creation, Advanced Digital Sculpting. Editora
Sybex, pag. 247-269, 147-153, 193-217.
UNITY 3D. Unity 3D Engine. Disponível em http://unity3d.com/, acessado em JUNHO
de 2012.
BROOKER, D., 2008 Essential CG Lighting Techniques with 3Ds Max, Terceira Edição,
Focal Press.
OSIPA, J., 2007. Stop Staring, Facial ModelingAnimation Don Right, Segunda Edição,
Sybex, Pag 115, 228-263.
SINTORN, E.; EISEMANN, E.; ASSARSSON, U., 2008. Sample Based Visibility for
Soft Shadows using Alias-free Shadow Maps. Computer Graphics Forum, Volume 27,
Issue 4, Pages 1285-1292, June.
INSTITUTO BRASILEIRO DE MUSEUS (IBRAM), MINISTÉRIO DA CULTURA
(MinC), 2011. Museus em Números, Volume 2. Instituto Brasileiro de Museus. Pág
71-74. Brasília.
UNITY SCRIPT REFERENCE, 2013. Unity Scripting Reference. Disponível em
http://unity3d.com/support/documentation/ScriptRe ference, [acessado em MAIO de
2013].
MONODEVELOP, 2013. MonoDevelop IDE. Disponível em http://monodevelop.com/,
[acessado em MAIO de 2013].
1
4
5
Proposta de Implantação do Processo de GCO para a CDP
fundamentado no MPS.BR
Soraia S. F. Pantoja1, Rodrigo Lisbôa Pereira1
1
Área de Ciências Exatas e Tecnologia (ACET) – Centro Universitário do Estado do
Pará (CESUPA)
Av. Governador José Malcher, 1963 – 66.060-230 – Belém – PA – Brasil
[email protected], [email protected]
Abstract. This paper exposes the proposal development process Configuration
Management for use by Supervisory Development public organization
Company Docks of Para. To this, was based on the Reference Model (MR-MPS)
Improvement Program of the Brazilian Software Process (MPS.BR) which aims
to support process improvement of software organizations in the country.
Resumo. Este artigo expõe a proposta de desenvolvimento do processo de
Gerência de Configuração para uso da Supervisão de Desenvolvimento da
organização pública Companhia Docas do Pará. Para tal, baseou-se no
Modelo de Referência (MR-MPS) do Programa de Melhoria do Processo de
Software Brasileiro (MPS.BR) o qual visa apoiar a melhoria de processo de
organizações de software do país.
1. Introdução
Transformar a necessidade do cliente em software funcional requer qualidade por meio
da criação de processos de desenvolvimento e cuidados em relação a implementação do
processo, para gerar as evidências tendendo qualidade do produto [Koscianski, 2007].
Porém, os artefatos gerados, que representam as evidências dos projetos, são
constantemente alterados durante o desenvolvimento dos mesmos, e com o incremento
de várias versões do sistema ao mesmo tempo, torna-se complicado manter a integridade
do produto.
Implantar metodologias visando a qualidade de um processo reflete diretamente
na qualidade do produto, ou seja, um processo bem definido indica que o produto
produzido foi baseado em procedimentos tendendo a qualidade. Para isso, existem alguns
modelos que visam a melhoria qualidade, onde as empresas interessadas em investir em
qualidade adotam, conforme o trabalho de Corrêa Ricardo et al. (2011) que apresenta
uma experiência mediante a implantação Nível D do programa de Melhoria de Processos
do Software Brasileiro (MPS.BR) em uma área do Governo Municipal de Campinas.
Alguns trabalhos como Mendes et al. (2011) e Osorio et al. (2011) retratam a
importância de definição de processos direcionados para atender Organizações públicas
e suas peculiaridades.
Ainda sob a perspectiva da Qualidade de Software, a tarefa de criar mecanismos
para registrar, rastrear e controlar as modificações por meio dos sistemas da Gerência de
Configuração (GCO) é necessária, devido a constante evolução do sistema, almejando
um menor índice de falibilidade e retrabalho, também assegurando a qualidade e,
consequentemente, a constante confiabilidade no produto [Koscianski, 2007]. Nesse
146
sentido, este artigo busca apresentar uma proposta de processo de Gerência de
Configuração baseado nos resultados do Modelo de Referência (MR-MPS) do MPS.BR
que atenda as necessidades da supervisão de desenvolvimento da Companhia Docas do
Pará (CDP), órgão público responsável por manter os sistemas que gerenciam a
movimentação portuária paraense.
Além desta introdução, este artigo contém a seção 2 que apresenta o cenário atual
da Organização, a seção 3 cuja oferece a modelagem do processo GCO adaptado para a
CDP, a seção 4 exibe a proposta do processo de Gerência de Configuração para CDP, e
por fim, a seção 5 expõe as considerações finais deste artigo e os trabalhos futuros.
2. Cenário da Organização
O desígnio deste estudo abrange a Gerência de Tecnologia da Informação
(GERTIN) da CDP, subordinada a Diretoria Administrativa Financeira, possuindo 3
(três) supervisões: Suporte de Informática (SUPSUP), Infraestrutura de Informática
(SUPINF) e Desenvolvimento de Informática (SUPDES) [CDP, 2013]. Hoje, a SUPDES
é composta por duas empresas terceirizadas que prestam serviço e são responsáveis pela
análise, desenvolvimento e teste de software.
Na SUPDES as mudanças são provenientes de: comunicação interna (CI) ou erros
do sistema. A Figura 1 exibe o fluxo do processo atualmente identificado.
Figura 1. Visão geral do atual processo da CDP
As CIs são solicitações formais de setores da CDP podendo ser de ajustes ou
melhorias. Estas chegam à Gerência de Informática e após aprovação e priorização são
encaminhadas para análise, pelo Supervisor de Desenvolvimento. Após o procedimento
de análise, o documento gerado retorna ao Supervisor de Desenvolvimento que
encaminha ao Gerente de Projeto, para direcionar a demanda à equipe de
desenvolvimento. A equipe de desenvolvimento registra a demanda no quadro Task
Board e antes da fase de desenvolvimento, verifica a necessidade de atualização da versão
local.
O controle de versão do código é feito com o Visual Sourcesafe [Sourcesafe,
2005] em servidor com repositório centralizado. Porém, cada membro da equipe possui
cópia local para desenvolvimento e o banco do controle de versões, que armazena os
projetos, está localizado no servidor de desenvolvimento e pode ser atualizado pela
equipe. Contudo, os diretórios dos sistemas possuem apenas uma localização e a
estratégia é trabalhar na versão local do projeto armazenado em cada máquina. Após o
1
4
7
processo de homologação, a versão é liberada para o servidor, estando pronta para o
ambiente de produção. Ressalta-se que antes da atualização do sistema é realizado um
backup da última versão compilada em produção.
Em seguida, ocorre o desenvolvimento da demanda solicitada e o membro da
equipe responsável pela tarefa disponibiliza no ambiente de desenvolvimento a versão
que será testada pelo Analista de Teste, por meio de dois artefatos principais: o cenário
de teste e o checklist. Caso seja constatada alguma inconsistência a demanda retorna ao
estado anterior (desenvolvimento). Ao contrário, o desenvolvedor pode atualizar a versão
no ambiente de homologação para ser homologado pelo cliente ou Analista da CDP. Após
o aceite, o Analista comunica à Gerência de Informática via e-mail copiando o cliente
que deverá ratificar a informação, caso contrário a atividade retorna ao desenvolvimento.
Depois da homologação, o Supervisor de Desenvolvimento define a data da atualização
no ambiente de produção baseando-se em manuais e dependências entre atividades.
Vale destacar que toda a comunicação no fluxo é realizada via e-mail e/ou
verbalmente, e os artefatos gerados, durante todo o processo de desenvolvimento, são
armazenados individualmente, ou seja, em máquina local de cada membro, sem sistema
de backup ou qualquer forma de padronização. Consequentemente, riscos como a perda
da base histórica de artefatos, a falta de versionamento do sistema e dos artefatos, o alto
grau de dependência entre atividades, e dificuldades de mapeamento de mudanças, foram
identificadas no processo em execução na Organização.
3. Processo de GCO
O processo de GCO é um dos oito processos de apoio de ciclo de vida indicados pela
ISO/IEC 12207. Segundo a NBR ISO/IEC 12207 (2009) é “um processo de aplicação de
procedimentos administrativos e técnicos, por todo o ciclo de vida de software”.
Conforme o SEI (2010) “o objetivo do processo Gestão de Configuração (CM) é
fornecer subsídios para estabelecer e manter a integridade dos produtos de trabalho,
utilizando identificação de configuração, controle de configuração, balanço das
atividades de configuração e auditorias de configuração”.
O MPS.BR, através do MR-MPS, destaca que a Gerência de Configuração está
no nível F intitulado Gerenciado e tem como alvo o estabelecimento e cultivo da
integridade de todos os produtos de trabalho de um processo ou de projeto, além de
disponibilizá-los a todos os envolvidos [Softex-I2, 2011].
3.1. Modelagem do Processo de GCO
Nesta, é apresentada a modelagem do processo de GCO para a SUPDES da CDP. Para
tal, foi utilizado como referência os resultados esperados indicados pelo MPS.BR, cujo
consiste na iniciativa visando melhorar a capacidade de desenvolvimento de software nas
empresas brasileiras. Para tal, desenvolveu-se o MR-MPS para Melhoria do Processo de
Software Brasileiro [Softex-G, 2013], considerando-se normas e modelos reconhecidos
internacionalmente, práticas da Engenharia de Software, bem como as necessidades de
negócio da indústria de software brasileira tanto de pequenas e médias empresas quanto
empresas de grande porte.
A modelagem do processo de GCO iniciou-se a partir da análise do cenário em
execução na SUPDES, após a realização de um diagnóstico.
A partir desta análise,
148
criou-se o fluxo macro do processo de GCO instanciado para a CDP, bem como
ferramentas e ações para a melhoria do processo atual, conforme indicado na Figura 2. Já
as Figuras 3 e 4 descrevem as fases do processo em níveis de tarefas, propostas para a
execução da SUPDES da Organização.
Figura 2. Instância do fluxo macro do processo de GCO para a CDP
Figura 3. Planejamento do Processo de GCO.
Figura 4. Execução do Processo de GCO
4. Proposta do Processo de Gerência de Configuração para CDP
Esta sessão apresenta a proposta definida, passo a passo, dos resultados esperados do processo
desenvolvido para a CDP, adotando como referência o programa MPS.BR.
4.1. Um Sistema de Gerência de Configuração é estabelecido e mantido
Com a implantação do processo de GCO na organização em questão, os projetos
desenvolvidos pela CDP deverão adotar como política: Armazenar todos os artefatos em
repositório criado no servidor, nomeado de produção, objetivando a confiabilidade e
disponibilidade do ambiente, a partir de uma ferramenta já utilizada, o Visual Sourcesafe,
e cada um dos projetos deverão possuir a estrutura de pastas branch, trunk e tag, conforme
representado na Figura 5.
a) O diretório branch: conterá os artefatos utilizados pelos Desenvolvedores em fase
de criação e teste local do sistema; pelos Analistas de requisitos e teste, e para
homologação, caso tal modificação gere impacto no andamento do projeto.
b) O diretório trunk: conterá a versão estável do projeto em desenvolvimento.
c) Diretório tag: armazenará as releases candidatas ao ambiente de produção.
1
4
9
Figura 5. Estrutura do controlador de versão dos projetos.
Toda a estrutura de repositório criada deverá possuir também a definição de papéis
e permissões de acesso para cada pasta. Toda aplicação deverá ser armazenada em
ambientes específicos atendendo as etapas de desenvolvimento, verificação e
homologação equivalentes do processo, além da produção, que ocorre quando a aplicação
encontra-se disponível para uso, cada um com seus respectivos servidores referentes a
cada etapa.
É importante frisar que todo projeto criado deverá conter a estrutura padrão de
repositório, tanto em branch quanto em trunk e tag, ressaltando-se que os documentos
deverão ser armazenados por iteração, contendo o registro dos documentos que
auxiliaram no processo de desenvolvimento, de acordo com os GCO2, GCO3 e GCO4
que são os resultados indicados no MR-MPS do MPS.BR. Além de atender todas as
etapas especificadas nas figuras 3 e 4 de acordo com cada resultado esperado.
4.2. Os IC são identificados com base em critérios estabelecidos
Um item de configuração (IC) refere-se a qualquer evidência a ser versionada, sua
identificação constitui em um momento crítico para o sucesso do processo Gerência de
Configuração na organização [Softex-I2, 2013]. Para a CDP, a seleção levou em
consideração os critérios: relevância, dependência, impacto, alto grau de mudança, em
função do perfil dos usuários em relação a resistência nos procedimentos já praticados.
Os itens a serem configurados estão relacionados juntamente com suas respectivas
nomenclaturas de identificação, responsáveis e fases, conforme Tabela 1.
Tabela 1. Relação de Itens de Configuração
Acrônimo
AR
Artefato
Ata de Reunião
Nomenclatura de identificação
AR_ID
do
Projeto_data
+
(numeração da versão)
150
Responsável
Analista de
Requisitos
Fase
Requisitos
Acrônimo
DCU
Artefato
Documento de Caso de
uso
AS
Solicitação de Ajustes
CF
Código Fonte
CKT
Checklist de Teste
CT
Casos de Teste
DV
Documento de Visão
DAF
PGC
Documento de Análise
Funcional
Plano de Gerência de
Configuração
UM
Manual do usuário
GU
Guia de Utilização
DM
Documento de
Mensagens do Sistema
MD
Modelo de Dados
TH
Termo de Homologação
GL
Glossário
SBD
Scripts de Banco de
Dados
DU
Diagramas UML
PT
Protótipos de Telas
PE
Pacotes ou compilados
Nomenclatura de identificação
DCU_ID do Projeto_nome+versão
SA_ID do Projeto_V(versão)
(numeração da versão)
CF_ID
do
Projeto_nome
(numeração da versão)
CKT_ID do Projeto_V(versão)
(numeração da versão)
CT_ID do Projeto_V(versão)
(numeração da versão)
DV_ID do Projeto_V(versão
(numeração da versão)
DAF_ID do Projeto_V(versão)
(numeração da versão)
PGC_ID do Projeto_V(versão)
(numeração da versão)
MU_ID do Projeto_V(versão)
(numeração da versão)
GU_ID do Projeto_V(versão)
(numeração da versão)
DM_ID do Projeto_V(versão)
(numeração da versão)
MD_ID do Projeto_V(versão)
(numeração da versão)
TH_ID do Projeto_V(versão)
(numeração da versão)
GL_ID do Projeto_V(versão)
(numeração da versão)
SBD_ID do Projeto_V(versão)
(numeração da versão)
DU_ID
do
Projeto_nome
(numeração da versão)
PT_ID do Projeto_nome +
(numeração da versão)
PE_ID do Projeto_V(versão)
(numeração da versão)
+
+
+
+
)+
+
+
+
+
+
+
+
+
+
+
V
+
Responsável
Analista de
Requisitos
Analista de
Requisitos
Desenvolvedor
Analista de Testes
Analista de Testes
Analista de
Requisitos
Analista de
Requisitos
Gerente de
Projetos
Analista de
Requisitos
Analista de
Requisitos
Analista de
Requisitos
Analista de
Requisitos
Analista de
Requisitos
Analista de
Requisitos
DBA
Analista de
Requisitos
Analista de
Requisitos
Desenvolvedor
Fase
Requisitos
Requisitos
Codificação e
Teste
Codificação e
Teste
Codificação e
Teste
Requisitos
Requisitos
Requisitos
Requisitos
Requisitos
Requisitos
Requisitos
Requisitos
Requisitos
Codificação e
Teste
Requisitos
Requisitos
Codificação e
Teste
O padrão de versionamento dos itens de configuração (exceto código) deve
possuir um número indicando a versão segundo o padrão X.YY, onde X consiste no
número decimal que representa a versão final de alguma evidência indicada para ser um
item de cofiguração e YY satisfaz a um número hexadecimal o qual representa um
incremento da versão X.
Cabe destacar que o número de versão dos artefatos muda de acordo com as regras
e a primeira nomenclatura a ser indicada no artefato deve ser 0.01; a cada modificação no
mesmo, o valor YY deve ser incrementado e, após cada aprovação, a versão X deve
também ser incrementada em uma unidade, e o valor YY retorna para 00, gerando assim
uma nova versão, isto é, resultante do incremento.
4.3. Os IC sujeitos a um controle formal são colocados sob baseline
Para atender tal resultado, uma política de situação da baseline deve ser implantada e a
mesma deverá ser gerada por fases (Requisitos, Codificação e Teste).
Na fase de Requisitos os itens de configuração auxiliam no entendimento da
demanda e especificação da mesma. Após o levantamento e análise dos requisitos, os
documentos gerados são homologados e posteriormente disponibilizados no versionador
como IC, o qual poderá compor uma baseline tendo o acesso restrito somente pela Equipe
de Requisitos. Nesta fase, as alterações necessárias deverão ser descritas e justificadas,
1
5
1
pois a baseline criada com os itens da fase em questão serão liberadas para as fases
seguintes.
Na fase de Codificação é contemplado o desenvolvimento do código fonte
conforme baseline gerada na fase de Requisitos. Nesta, o Gerente de Configuração
deverá enviar uma mensagem, através software MantisBT institucionalizado pela
Organização [Mantis, 2013], com endereço do projeto no versionador para toda equipe
que poderá utilizar de acordo com um perfil atribuído ao projeto, e a mesma deverá dirigir
os arquivos ao servidor e descrever o que fora desenvolvido.
Por fim, na fase de Teste, os itens de configurações contidos na baseline, deverão
ser verificados pela equipe correspondente em satisfazer tal operação, para
posteriormente também adicioná-lo ao servidor após ocorrer a verificação.
4.3.1 Avaliação dos itens de configuração e criação da baseline
a) Avaliação dos itens de configuração na fase de requisitos: durante esta etapa, o
cliente homologa as evidências geradas em reuniões, e o aceite é formalizado
através do envio de um e-mail, sendo um feedback da equipe para o cliente, que
contém as informações sobre os itens avaliados em uma reunião específica. Para
cada artefato, uma versão é adicionada ao repositório em pasta específica com a
nomenclatura padrão após a autorização da Supervisão que constitui o papel do
Comitê de Controle de Configuração-CCC.
b) Forma de solicitação de inclusão de item na baseline: Para inclusão de um IC na
baseline o membro da equipe deve solicitar ao Gerente de Configuração, cujo
verificará se o item pode ser incluído. Caso o item possa ser incluído o Gerente de
Configuração classifica e prioriza a solicitação. Após classificação e priorização, a
baseline é gerada e o mesmo envia aos membros da equipe responsável pela
solicitação de inclusão do endereço de acesso ao item na baseline, conforme Figura
6.
c) Nomenclatura da baseline: As baselines deverão ser geradas com nomenclatura
padrão, isto é, para a fase de Requisitos a nomenclatura utilizada é
<projeto_req_bas_x.y.z>, na fase de Codificação a nomenclatura
<projeto_cod_bas_x.y.z> e na fase Teste utiliza-se <projeto_tes_bas_x.y.z> onde o
projeto identifica o nome do projeto (exemplo: req identifica a fase de Requisitos),
bas identifica uma baseline e x.y.z identifica a versão da baseline.
d) Versionamento de baseline: As baselines devem ser versionadas de acordo com o
padrão X.Y.Z, sendo X é um valor decimal correspondente a versão principal, Y
um valor decimal correspondente a versão de implementação de novas
funcionalidades e Z um valor decimal que correspondente a correção de bugs.
Como forma de elucidar tal situação, suponha que determinada baseline encontrase na versão 2.2.4. Caso seja gerada uma solicitação de ajuste, após a implementação
deste novo ajuste, uma nova versão é criada, modificando o dígito referente ao Y. Caso
seja solicitada uma correção de um erro, criara-se então, uma versão 2.2.5, modificandose, então, o dígito referente a Z. Porém, se uma nova funcionalidade significativa for
acrescentada à evidência, esta resulta à versão 3.0.0, alterando, nesse caso, o valor de X.
152
Figura 6. Fluxo de solicitação de inclusão de item em baseline
4.4. A situação dos itens de configuração e das baselines é registrada ao longo do
tempo e disponibilizada
Para registro do processo ao longo do tempo será utilizado o procedimento de
transferência de arquivos entre as três pastas principais do projeto, que ocorrerá da
seguinte maneira: toda branch homologada passa a fazer parte da trunk. As baselines
geradas nas fases de Codificação e Teste serão organizadas em iterações, e as iterações
de cada branch serão mescladas levando em consideração a sua numeração.
Sempre que ocorrer uma transferência, a iteração1 em trunk será a soma dos
documentos da iteração1 de cada branch recebida. A partir do momento em que um
projeto em trunk vá para o ambiente de produção, este passa a se tornar uma versão estável
a ser guardada em tag, sempre levando em consideração a nomenclatura, numeração
referente à versão e a criação do documento release notes para que se saiba, de forma
simplificada, quais funcionalidades foram implementadas.
Para a política de backup, recomenda-se que diariamente um script seja executado
para realizar o backup dos dados armazenados no servidor de produção, localizados na
1
5
3
pasta do repositório, que enviará uma cópia para um servidor de backup, cujo apenas o
Supervisor de Infraestrutura possui a permissão de acesso.
Após o período de um mês, o Supervisor de Infraestrutura arquiva o backup em
mídia com o nome padronizado pela sintaxe <nomeprojeto_versão_dataatual>. Ressaltase que o mesmo poderá restaurar qualquer versão desejada sempre que necessário a partir
de uma solicitação feita pelo Gerente de Configuração.
4.5. Modificações em itens de configuração são controladas
Para o acompanhamento das modificações, o software MantisBT deverá ser adotado pela
equipe, tornando-se a ferramenta de controle de mudanças. As figuras 7 e 8 fazem
referência à solicitação de mudanças e à solicitação de correção, respectivamente
realizados.
Figura 7. Solicitação de correção no MantisBT
4.6. O armazenamento, o manuseio e a liberação de IC e baselines são controlados
Para atender este resultado, deve incidir o subsequente processo:
a) Armazenamento: para novos projetos, o Gerente de Projeto deverá solicitar a
criação do repositório, com os respectivos acessos, através do MantisBT. Porém,
para adicionar documentos ao repositório, o acesso deve se dar pelo endereço
disponibilizado pela equipe de configuração (exemplo: nomeDoServidor/Diretório
por meio de seu usuário e senha).
154
Figura 8. Solicitação de mudança
b) Manuseio: o Gerente de Configuração (identificado pelo desenvolvedor mais
antigo da equipe) atribuirá permissão aos usuários participantes do projeto de
acordo com o perfil, para adicionar/remover/atualizar documentos no repositório
do projeto.
Para gerenciar a concorrência entre versões, o versionador deverá utilizar o recurso
“lock” para impedir a alteração simultânea do mesmo IC. O usuário com perfil de
acesso deverá disponibilizar os artefatos no repositório, fazendo o check-in com a
descrição da atualização realizada, referenciando o documento de análise (para
novas funcionalidades), com a descrição da alteração na página e o motivo.
c) Liberação: a liberação da release deverá ser feita após a aprovação do CCC no
software correspondente ao gerenciador de mudanças. O padrão de criação e de
acesso ao repositório é #nomeProjeto–Breve_Descrição_do_sistema.
Os participantes do projeto deverão possuir acesso diferenciado a cada diretório do
versionador, de acordo com os papéis desempenhados no projeto, isto é, os
desenvolvedores terão acesso completo ao diretório de código-fonte do projeto,
porém não poderão editar o diretório referente à documentação, apenas consultar e
as analistas só poderão editar o diretório de documentação e não terão permissão de
acesso ao diretório de código-fonte.
1
5
5
d) Solicitação: após o fechamento da avaliação dos artefatos pelo CCC para a geração
de baselines, o integrante da equipe deverá encaminhar uma solicitação ao Gerente
de Configuração para que este gere um novo item de baseline do projeto.
e) Disponibilização: após o Gerente de Configuração receber a solicitação do
integrante da equipe referente à geração do baseline, o mesmo deverá enviar uma
reposta ao solicitante informando o local de acesso.
f) Recuperação: a qualquer momento, no período máximo de seis meses a partir da
data de criação da baseline, o integrante da equipe pode solicitar ao Gerente de
Configuração a recuperação da mesma. Desta forma, o Gerente de Configuração
precisa enviar uma resposta ao solicitante informando o acesso à baseline
recuperada.
4.7. Auditorias de configuração são realizadas objetivamente para assegurar que
as baselines e os itens de configuração estejam íntegros, completos e consistentes
As auditorias de Configuração devem ocorrer sempre no final de cada fase seguindo os
procedimentos constantes na Tabela 2. Antes de uma liberação da release, uma auditoria
funcional, deve ser iniciada com objetivo de garantir a corretude da baseline. Somente
após ocorrer a auditoria funcional, acontece a auditoria física para examinar a estrutura
de todos os itens que a compõem, e tem como escopo uma baseline aceita no período.
Tabela 2. Procedimento para Auditorias
Objetivo
Procedimentos
Entrada
Saídas
Participantes
Avaliar como se encontra a baseline em termos físicos e funcionais.
Identificar a baseline a ser auditada.
Confirmar que todos os itens de configuração presentes na baseline foram previstos no Plano de Gerência
de Configuração.
Aplicar um checklist para auditoria funcional avaliando se o IC exerce a funcionalidade segundo seu
propósito.
Aplicar um checklist para auditoria física avaliando a estrutura da baseline bem como a identificação
unívoca dos itens de configuração.
Realizar a auditoria da baseline.
Gerar um relatório listando as não conformidades encontradas.
Critério: Existe uma baseline estabelecida.
Insumos: Baseline e Relatório de Estabelecimento de Baseline.
Critéri: Uma auditoria de baseline foi realizada.
Produtos: Checklist de auditoria da configuração funcional; Checklist de auditoria da configuração
física; Relatório de não conformidade da auditoria da configuração, mostrando as ações corretivas e
acompanhamento da ação até a conclusão com responsável e data para finalização, artefatos ausentes
deverão ser controlados; O estado de uma requisição aberta deverá ser definido.
Responsável pela Execução: Gerente de Projeto.
Responsável pela Aprovação: Supervisor de desenvolvimento.
Consultado: Gerente de Configuração.
O modelo de checklist para auditoria deverá estar especificado no Plano de
Gerência de Configuração. A auditoria deverá ser feita pelo Gerente de Projeto (GP),
visto que o mesmo é o principal responsável pelo controle e qualidade dos entregáveis do
projeto. Ressalta-se que, na CDP, o GP não participa diretamente do desenvolvimento
dos produtos de trabalho.
5. Considerações Finais e Trabalhos Futuros
Com a definição do processo baseado no cenário da CDP analisado, buscou-se apresentar
um processo destinado a identificar e definir os itens de software em um sistema de
configuração, além de estabelecer critérios para baseline, oferecer controle às
156
modificações e liberações dos IC, registrar e apresentar a situação dos itens e das
solicitações de modificação, procurando garantir a consistência, completeza e a correção
de cada IC, além de controlar o armazenamento, a manipulação e a distribuição dos
mesmos. Assim, atrelando o propósito da GCO ao objetivo da CDP para este processo,
instanciou-se do fluxo macro do processo de GCO a modelagem à realidade da mesma.
Como trabalhos futuros apontam-se: o desenvolvimento do Plano de Gerência de
Configuração da Organização, aplicação do processo aqui desenvolvido em projetos
pilotos, bem como a produção de templates para checklist e relatórios, avaliação da
implantação do processo pelos envolvidos no processo com intuito de constante melhoria
e o desenvolvimento de outros processos, visando uma possível implantação do nível F
do MPS.BR na SUPDES da CDP, uma vez que com a escolha do MR-MPS buscou-se
focar como ponto forte o nível F de maturidade na Organização em questão.
Referências
CDP (2013), “Companhia Docas do Pará”. Estatuto Social, disponível em:
http://www.cdp.com.br/acesso-a-informacao.
Corrêa Ricardo, M. F., Oliveira, P. G., Luz, D. F., Fernandes, G. T. (2011) “MPS.BR
Nível D – A Experiência em Implantar o Modelo na Área de Governo Municipal”,
Anais do VII Workshop Anual do MPS – WAMPS. Campinas, SP.
Koscianski, A., Soares, M. S. (2007), Qualidade de Software, Novatec, 2ª Edição.
NBR ISO/IEC (2009), Associação Brasileira de Normas Técnicas, “NBR ISO/IEC
12207:2009 – Engenharia de Sistemas de Software – Processos de Ciclo de Vida de
Software”. Rio de Janeiro ABNT.
SEI (2010), “Software Engineering Institute”. Capability Maturity Model Integration for
Development. Version 1.3, Technical Report, Carnegie Mellon, USA.
Softex-G (2013), “Associação para Promoção da Excelência do Software Brasileiro”.
Guia
Geral
do
MPS.BR,
disponível
em:
http://www.softex.br/wpcontent/uploads/2013/07/MPS.BR_Guia_Geral_Software_2012.pdf.
Softex-I2 (2013), “Associação para Promoção da Excelência do Software Brasileiro”.
Guia de Implementação (Parte 2) do MPS.BR, disponível em:
http://www.softex.br/wpcontent/uploads/2013/07/MPS.BR_Guia_de_Implementacao _Parte_2_2011.pdf.
Sourcesafe (2005), “Microsoft Visual SourceSafe”. Ferramenta de versão de sistema de
controle em nível de arquivo, disponível em msdn.microsoft.com/ptbr/library/3h0544kx(v=vs.80).aspx.
Mantis
(2013),
“Mantis
http://www.mantisbt.org.
Bug
Tracker”.
MantisBT
disponível
em
Mendes, F., Almeida, J., Junior, E. (2011) “Experiência de Implantação de Melhoria de
Processos de Software em um Laboratório de Pesquisa”, Anais do VII Workshop
Anual do MPS – WAMPS. Campinas, SP.
Osorio, R. e Motta, G. (2011) “Relato da Experiência do Processo de Institucionalização
do Modelo CMMI na Dataprev”. Anais do VII Workshop Anual do MPS – WAMPS.
Campinas, SP.
1
5
7
TIC’s para Inclusão: Uma experiência de iniciação à
docência com alunos de Licenciatura em Computação - UFRA
Aline C. Ferreira¹, Alix R. Silva¹, Kelly Cristina Silva. Braga¹, Hilda R. Freitas¹,
Larissa S. Elisiário¹
¹Instituto Cyber Espacial - Universidade Federal Rural da Amazônia (UFRA) Av. Pres.
Tancredo Neves, 2501. Montese - Belém – PA – Brasil
{aline_ufra,alix.ufra,kelly_rozinha}@yahoo.com.br,
{hildarosamf,larisato}@gmail.com
Abstract. This article reports an experience on the PIBID, emphasizing the use
of New Technologies of Information and Communication (ICT's) in the process
of digital inclusion of students with deafness as a tool to support/aid in the
process of teaching and learning at UESS Profº Astério Campos, making a
theoretical approach to deafness and computer.
Resumo. O presente artigo busca relatar a experiência vivida no Programa
Institucional de Bolsa de Iniciação à Docência (PIBID), enfatizando o uso das
Novas Tecnologias de Informação e Comunicação (NTIC’s) no processo de
inclusão digital do aluno com surdez, como ferramenta de apoio/auxílio no
processo de ensino e aprendizagem na UESS Profº Astério de Campos, fazendo
uma abordagem teórica sobre surdez e informática.
1. Introdução
O presente trabalho buscará fazer uma abordagem teórica sobre os surdos e a informática
através do relato das ações desenvolvidas na Unidade de Educação Especial (UEES) Prof.
Astério de Campos no Programa Institucional de Bolsas de Iniciação à
Docência (PIBID), da Universidade Federal Rural da Amazônia (UFRA), apoiado
pela Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES), cujo
objetivo geral é o incentivo à formação de professores para a educação básica e,
consequentemente, a elevação da qualidade do ensino na escola pública. Através deste
programa, os alunos de cursos de Licenciatura podem acompanhar de perto o cotidiano
das escolas públicas de ensino, planejando e participando de experiências metodológicas,
tecnológicas e de práticas docentes de caráter inovador e interdisciplinar, que buscam a
superação de problemas identificados no processo de ensino-aprendizagem com vistas à
melhoria do Índice de Desenvolvimento da Educação Básica – IDEB.
Nesse contexto, está também a educação inclusiva, uma prática relativamente
recente no Brasil, iniciada na década de 90 e ainda em fase de investigação [Freitas et al.
2005]. Pesquisas realizadas na área de Educação Especial apontam para a importância
das crianças surdas compartilharem ambientes com as crianças ditas normais, entendendo
que as relações decorrentes desse compartilhamento são importantes para o
desenvolvimento psicossocial de ambas. Porém, quando se trata do aluno surdo, essas
interações são superficiais, pela ausência, entre outros, de um compartilhamento
linguístico entre alunos surdos e ouvintes [Lacerda 2006].
158
Para que o disposto no Decreto 5.626/2005, que trata da legitimação da Língua
Brasileira de Sinais (LIBRAS) e orienta sobre a educação de surdos, concretize-se, são
necessárias ações que de fato favoreçam uma educação bilíngue, o que ultrapassa a
inserção da LIBRAS como disciplina obrigatória nos cursos de formação de professores;
pois o que tem ocorrido com os alunos surdos é, segundo Skliar (1999), a substituição do
modelo excludente da Educação Especial por outro, em nome de uma inclusão que não
respeita a identidade surda, sua cultura e sua comunidade.
Dessa forma, “o surdo tem que se ajustar unilateralmente (...) e a escola precisa
que ele aprenda como se fosse ouvinte” [Góes 2000], tratando-o como pseudo-ouvinte,
minimizando a importância e o valor da língua de sinais para a construção de sua
identidade, reduzindo-a a um recurso pedagógico.
Focado nesta problemática é que o Curso de Licenciatura em Computação da
UFRA desenvolveu uma ação no PIBID que associa os recursos da informática como
meio de inclusão digital, proporcionando apoio a LIBRAS e ao Atendimento Educacional
Especializado (AEE). Diante disso, é que o PIBID visa proporcionar aos alunos deste
curso do campus Belém, o contato não apenas com a educação de surdos, mas também
com a comunidade surda, contribuindo assim para a sua formação profissional, uma vez
que tiveram a oportunidade de: conhecer e analisar Softwares educativos voltados para
os alunos surdos; exercer a docência de conteúdos específicos, como a microinformática,
e auxiliar na inclusão digital dos alunos surdos por meio de ferramentas como as redes
sociais, favorecendo assim, de modo interdisciplinar, sua produção escrita. Ao mesmo
tempo, esse contato auxiliou os alunos da educação básica, na medida em que favoreceu
a utilização interdisciplinar das tecnologias disponíveis no AEE, assim como a
implementação de propostas pedagógicas na área de informática para o ensino de alunos
surdos.
2. Entendendo a surdez
A surdez ou a deficiência auditiva é qualquer alteração produzida tanto no órgão da
audição como em via auditiva. Quanto às Características Clínicas, são definidas do ponto
de vista médico, em função do lugar onde se localiza a lesão, sendo de três tipos: surdez
condutiva ou de transmissão, surdez neurossensorial ou de percepção e a surdez mista
[Coll e Palacios 2004].
A surdez condutiva ou transmissão está relacionada com a alteração do ouvido
externo (obstrução do canal auditivo externo: por exemplo, o rolhão de cerúmen) ou do
ouvido médio (otites, lesão dos ossículos...) e não é grave nem duradoura, sendo possível
o tratamento com cirurgia [Coll e Palacios 2004].
A surdez neurossensorial ou de percepção deve-se à disfunção do ouvido interno
e geralmente reflete a lesão das células ciliadas ou do nervo auditivo; sua origem pode
ser genética, adquirida por neonatal e pós-neonatal e esse tipo de surdez não afeta só a
quantidade de audição, mas a qualidade. A surdez neurossensorial costuma ser
permanente e até o pouco tempo nada se podia fazer para tratá-la; atualmente tem se
desenvolvido o implante coclear [Coll e Palacios 2004].
A surdez mista é uma combinação de uma perda auditiva sensorioneural e
condutiva. É o resultado de problemas em ambos os ouvidos: interno e externo ou médio.
As opções de tratamento podem incluir medicamentos, cirurgia, aparelhos auditivos ou
implantes auditivos de ouvido médio.
1
5
9
3. Atendimento Educacional Especializado para os Alunos com Surdez
O AEE para alunos surdos da UEES Prof. Astério de Campos acontece com o intuito de
desenvolver o conhecimento interdisciplinar a partir das potencialidades de cada
estudante. A LIBRAS é fundamental para o sucesso do atendimento e o AEE, nesse
sentido, acontece em diferentes momentos: AEE em LIBRAS e AEE de LIBRAS.
O AEE em LIBRAS é caracterizado pelo uso pedagógico da língua de sinais para
o auxílio dos conteúdos da sala de aula, nos horários não escolares. Com isso, o professor
busca explorar os conhecimentos vistos em sala através de questionamentos e dúvidas
persistentes, assim melhorando os conceitos aprendidos pelo aluno na escola [Alves et al.
2010].
Nas disposições do Decreto nº. 7.611 [Brasil 2011], a pessoa com deficiência tem
direito à educação de todos os níveis do ensino ao longo de toda vida, através de apoio
individualizado com intuito de desenvolver os ensinamentos acadêmicos e sociais do
aluno. O decreto aponta que o AEE deverá providenciar ao aluno condições de acesso e
participação em todas as modalidades do ensino, como garantir o apoio de acordo com as
necessidades do discente, garantir que as ações contemplem as propostas do ensino
regular, cessar as dificuldades que impedem o processo de ensino e aprendizagem a partir
da inovação de recursos didáticos e pedagógicos [Brasil 2011].
O AEE é uma assistência que complementa ou suplementa a formação escolar do
aluno utilizando recursos pedagógicos e acessíveis [Brasil 2011]. Ou seja, visa maximizar
a aprendizagem a partir das características do aluno, unindo a pedagogia e as ferramentas
de acessibilidade.
O AEE de LIBRAS é outro importante atendimento que busca trabalhar a Língua
de sinais com o aluno. O objetivo deste auxílio é melhorar a qualidade da LIBRAS do
aluno abordando as complexidades visio-espaciais (fonologia/quirologia,
morfologia/sinal ou item lexical, sintaxe/frase, semântica/significado e sentido) como a
língua portuguesa [Alves et al. 2010].
4. Salas de Recursos Multifuncionais e Inclusão Digital
As Salas de Recursos Multifuncionais na UEES Prof. Astério de Campos - e nas escolas
da rede pública de ensino - buscam atender às necessidades da educação, promovendo
condições de acesso, participação e aprendizagem dos alunos, principalmente os alunos
da educação especial no ensino regular, possibilitando a oferta do AEE de forma a não
substituir a educação regular.
Estas salas são compostas de mobiliário, materiais didáticos e pedagógicos,
recursos de acessibilidade e equipamentos específicos para o atendimento dos alunos da
Educação Especial e que necessitam do AEE no contra turno escolar, horário no qual o
aluno retorna à escola para receber o atendimento.
4.1. Programa de Implantação de Salas de Recursos Multifuncionais e Recursos
Multifuncionais da UEES Prof. Astério de Campos
Com o objetivo de apoiar os sistemas públicos de ensino na organização e oferta do AEE
e contribuir para o fortalecimento do processo de inclusão educacional nas classes de
ensino, o Ministério da Educação criou a Portaria Normativa Nº- 13, de 24 de abril de
2007, que dispõe sobre a criação do Programa de Implantação de Salas de Recursos
160
Multifuncionais, tendo como objetivos: Apoiar a organização da educação especial na
perspectiva da educação inclusiva, Assegurar o pleno acesso dos alunos que são públicoalvo da educação especial no ensino regular em igualdade de condições com os demais
alunos, Disponibilizar recursos pedagógicos e de acessibilidade às escolas regulares da
rede pública de ensino e Promover o desenvolvimento profissional e a participação da
comunidade escolar.
Na UEES Prof. Astério de Campos, a sala funciona nos turnos da manhã, tarde e
noite, contando com oito professores especialistas no atendimento a pessoa com surdez e
com múltiplas deficiências. Sendo referência no Estado do Pará no atendimento a alunos
surdos, dando maior flexibilidade e possibilidades no aprendizado, uma vez que esse
aluno passa a ter outros recursos de interação que ajudam em seu desenvolvimento sócio
educacional.
A sala da UEES é equipada com diversos equipamentos e recursos digitais que
promovem a inclusão do aluno surdo, conforme tabela a baixo:
Tabela 1. Composição da sala
Equipamentos
01 Microcomputadores
01 Laptop
01 Estabilizador
01 Scanner
01 Teclado com colmeia
01 Acionador de pressão
01 Mouse com entrada para acionador
01 Lupa eletrônica
Mobiliários
01 Mesa quadrada
08 Cadeiras
02 Armário
01 Quadro branco
01 Mesa para computador
Materiais Didático/Pedagógico
01 Esquema Corporal
01 Bandinha Rítmica
01 Memória de Numerais l
01Tapete Alfabético Encaixado
01 Sacolão Criativo Monta Tudo
01 Quebra Cabeças - sequência lógica
01 Dominó de Associação de Ideias
01 Dominó de Animais em Libras
01 Dominó de Frutas em Libras
01 Dominó tátil
01 Alfabeto Braille
01 Kit de lupas manuais
01 Plano inclinado – suporte para leitura
01 Memória Tátil
Essas salas promovem, além da inclusão social, a inclusão digital dos alunos
surdos. Porém, é valido ressaltar que não somente o atendimento é feito para alunos com
deficiência auditiva. Pois a intenção é atender com qualidade alunos com qualquer
deficiência, transtornos globais do desenvolvimento e altas habilidades/superdotação,
matriculados nas classes comuns de ensino regular, e que estejam registrados no Censo
Escolar MEC/INEP. (Portaria MEC, nº 13/2007), Constituindo uma ação complexa,
articulada, de múltiplas interferências, para entendermos mais o processo histórico de
caracterização. Nesse sentido, Mazzotta (1982) diz:
A sala de recursos, como o ensino itinerante, é uma modalidade classificada
como auxílio especial. Como o próprio nome diz, consiste em uma sala da
escola, provida com materiais e equipamentos especiais, na qual um professor
especializado, sediado na escola, auxilia os alunos excepcionais, naqueles
aspectos específicos em que precisam de ajuda para se manter na classe
1
6
1
comum. O professor da sala de recursos tem uma dupla função: prestar
atendimento direto ao aluno e indireto através de orientação e assistência aos
professores da classe comum, às famílias dos alunos e aos demais
profissionais que atuam na escola. Mediante esta modalidade de atendimento
educacional, o aluno é matriculado na classe comum correspondente ao seu
nível de escolaridade. Assim sendo, o professor especializado deve
desenvolver o seu trabalho de forma cooperativa com os professores de classe
comum [Mazzotta 1982, p. 48].
5. Softwares para o auxílio da educação de Surdos
5.1. O que é um Software?
Os Softwares consistem em programas de computador, que são sequencias de instruções
para o computador. É dividido em dois tipos principais, o Software de Sistemas, que serve
principalmente como um intermediário entre o hardware do computador e
programas/aplicativos, também oferece função importante de auto-regulamentação para
os sistemas do computador; e o Software Aplicativo, que direciona um sistema de
computador a realizar atividades de processamento específicas e oferece funcionalidades
para os usuários [Turban et al. 2005].
5.2. Softwares Educativos
São programas que podem ser utilizados na administração escolar ou em contextos
pedagógicos, ou seja, são caracterizados pela sua inserção em contextos educacionais.
Um Software educacional é um “produto [...] adequadamente utilizado pela escola,
mesmo que não tenha sido produzido com a finalidade de uso no sistema escolar”
[Oliveira 2001].
Perante a prática do uso de Softwares na educação, é importante ressaltar que tanto
o professor quanto o computador com seus Softwares, são mediadores no processo de
ensino e aprendizagem do aluno. “O aprendizado desperta vários processos internos que
são capazes de operar somente quando a criança interage com as pessoas em seu ambiente
e quando em cooperação com seus companheiros” [Vygotsky 1994].
A prática do uso dessas ferramentas não garantirá por si só a aprendizagem dos
alunos, pois os mesmos são instrumentos didáticos de ensino que podem e devem estar a
serviço do processo de construção do conhecimento dos aprendizes. A utilização desses
recursos na educação básica deve ser acompanhada de uma concreta formação dos
professores para que possam utilizá-los de uma forma responsável e com potencialidades
pedagógicas adequadas no processo de inclusão digital do aluno com surdez.
Logo, a utilização de um Software está diretamente relacionada à capacidade de
percepção do professor em relacionar a tecnologia à sua proposta educacional [Tajra
2001], visto que o Software por si só não educa, mas utilizado com uma proposta
pedagógica bem fundamentada e direcionada, levam o aluno a um pensamento crítico,
reflexivo, garantindo-lhes uma aprendizagem mais profunda.
Atualmente, jovens, adolescentes e crianças têm acesso cada vez mais cedo aos
recursos tecnológicos, seja porque são oferecidos pelas escolas – públicas e privadas –
seja pela possibilidade de acesso através de meios comerciais como Cybercafé, seja em
sua própria casa. Para Valente (2002), a informática contribui como um recurso auxiliar
no processo de ensino e aprendizagem, no qual o foco é o aluno. Além de motivar os
162
alunos, dá a possibilidade de instituir novas metodologias, com uma linguagem muito
próxima da dos alunos surdos, com possibilidade de retorno imediato sobre a sua
produção, além disso, se bem trabalhado, permite que cada aluno avance de acordo com
os seus níveis, em ritmo próprio de conhecimento e comunicação.
6. Práticas Pedagógicas Aplicadas à Informática Educativa com Alunos
Surdos na UEES Prof. Astério de Campos como meio de Inclusão
A partir das ações propostas no PIBID/UFRA para o uso das tecnologias na UEES Prof.
Astério de Campos, foram feitas observações e intervenções que nos permitiram
experimentar possibilidades diferentes em alunos com deficiência auditiva. A base
pedagógica adotada na proposta é o construtivismo, onde o computador é visto como um
instrumento que auxilia na construção do conhecimento e, portanto, é um recurso com o
qual o aluno pode criar, pensar e manipular a informação.
Diante dos aspectos inerentes a inclusão digital na sociedade da informação,
percebe-se que a inclusão vai muito além do acesso físico do cidadão, aos
diversos recursos técnicos disponíveis, ou seja, do computador e da internet.
Logo se faz necessário criar caminhos condicionais para fomentação de um
uso crítico-reflexivo, aberto e inventivo em relação às diversas TIC’s [Silva
2013]
Nesse caso, o computador pode ser visto como uma ferramenta pedagógica para
criar um ambiente interativo que proporcione ao aluno surdo investigar, levantar
hipóteses, pesquisar, criar e, assim, construir seu próprio conhecimento.
A importância da interação dos surdos com a informática como meio de inclusão
digital representa um passo à frente no que diz respeito à educação, pois esta possui
recursos, ressaltando-se os elementos visuais que são fundamentais para minimizar as
suas dificuldades em relação à oralização, ajudando-os a superar também as suas
necessidades educacionais. A informática também contribui ainda para o
desenvolvimento da criatividade, o aumento da autoestima e a construção do próprio
autoconhecimento, refletindo suas vivências e promovendo o desenvolvimento cognitivo
e a autonomia destes educandos.
Segundo Oliveira e Fischer (1996), o computador trabalha com representações
virtuais de forma coerente e flexível, possibilitando, assim, a descoberta e a criação de
novas relações. A inserção do computador na escola pode modificar a relação de ensino
e aprendizagem, implicando novas relações entre professor e aluno, desafiando a prática
pedagógica daquele e abrindo possibilidades ao aprendizado deste.
A internet também vem propiciando aos surdos a interação com o mundo, por ser
um espaço atrativo, dotado de recursos visuais, animação de imagens de sinais gráficos,
e através desse meio torna-se mais fácil a compreensão e comunicação do surdo, já que o
mesmo comunica-se com a língua de sinais, que é uma língua espaço-visual. Este tipo de
comunicação é fundamental para minimizar e, muitas vezes, superar as necessidades
educativas especiais dos surdos [Santarosa e Lara 1997].
Portanto, a internet está sendo considerada uma das mais importantes criações dos
últimos tempos para ampliar a forma de aprender e de ensinar [Vianna 2001]. A internet
minimiza a distância existente entre os surdos e ouvintes e dispensa a necessidade de
intérpretes.
1
6
3
7. Relato de Inclusão Digital através da Oficina de Informática Básica
Uma experiência que marcou como relato de inclusão digital durante o PIBID na UEES
Prof. Astério de Campos foi a Oficina de Informática Básica para alunos surdos da escola.
Tendo como objetivo geral, proporcionar ao aluno com surdez o aprendizado de
Informática Básica a partir do Sistema Operacional Linux, utilizado nas escolas públicas
do Estado e do Município, por ser um sistema de código fonte livre e aberto, dando a
possibilidade aos programadores adaptarem ao ambiente educacional.
A oficina contou com oito alunos apesar de haver apenas seis vagas ofertadas, por
ser uma primeira experiência dos alunos do Curso de Licenciatura em Computação da
UFRA em ministrar um curso de informática a alunos surdos e por não terem o domínio
total da LIBRAS para a comunicação com esses alunos.
A oficina acontecia às sextas-feiras, tendo início no dia 11 de Janeiro e término
no dia 08 de Fevereiro de 2013, sempre das 14h às 16h na sala/laboratório de informática.
Sala essa equipada com 16 computadores, todos com Sistema Operacional Linux
Educacional, versão 4.0; que foram ferramentas chaves para construção do conhecimento
dos alunos. Nesse sentido, Camargo e Bellini (1995) apontam que “O computador não
melhora o ensino apenas por estar ali. A informatização de uma escola só dará bons
resultados se conduzida por professores que saibam exatamente o que querem”. Diante
disso, é necessário estendermos as tecnologias educacionais para além dos suportes
materiais, o educador deve conhecer e dominar os procedimentos da tecnologia que
deseja colocar em ação; não só os computadores, mas também o Datashow e Quadro
Magnético, equipamentos tecnológicos utilizados como auxílio na educação/ensino da
oficina.
Os assuntos ministrados durante a oficina foram: Partes do Computador
(Hardware e Software), Sistema Operacional (LINUX Educacional), Libre Office (Writer,
Impress e Calc), com o auxílio do Datashow e de uma apostila construída por nós e cedida
na versão impressa aos alunos. Já a avaliação correspondeu com o Feedback das
atividades propostas de digitação, criação de uma breve apresentação em slides, além das
perguntas orais feitas em LIBRAS ao fim de cada assunto, com apoio da Professora
Simone Lima, da UESS, como Intérprete.
A experiência da oficina teve resultados satisfatórios, pois conseguimos repassar
o objetivo desejado, que era de ensinar informática básica com Sistema Operacional
Linux, além de também termos aprendido sinais regionais de informática e educação e
termos capturado imagens de alguns sinais feitos pelos alunos.
Figura 1. Alunos observando o ensino
164
Figura 2. Alunos em atividade de digitação
8. Conclusão
Ao longo da realização do PIBID/UFRA, chegamos à conclusão de que o uso da
tecnologia na escola é de fundamental importância tanto para o professor como para os
alunos surdos. A aprendizagem mútua entre professor e aluno por meio das tecnologias
rompe barreiras pessoais, educacionais e sociais.
Porém, percebe-se que se faz necessário a formação continuada de estudos
voltados às TIC’s dos professores, afim de não limitar essas tecnologias a simples
transmissoras de conhecimento, algo visto e presenciado na experiência do PIDID. Diante
disso, Valentini nos questiona que:
Quais são os argumentos que levam a tecnologia para a escola? Se a nossa
concepção for de sujeito surdo que precisa ser auxiliado e conduzido pelo
professor em sua jornada no mundo dos ouvintes, o computador será visto
como um instrumento que pode ‘reforçar’ alguns conteúdos básicos. Destarte,
a tecnologia é empregado no seu aspecto mais básico e simplificado em
função de considerar a própria surdez como limitadora de possibilidades e
potencialidades. [Valentini 1999, p. 247]
A partir das observações, tivemos como resultado que o computador e a internet
permitem ao aluno surdo “igualdade” na interação, haja vista que a LIBRAS é uma língua
espaço visual e no mundo cibernético a interação pode vir de outros recursos sinestésicos.
Assim, ressaltamos que a inclusão digital das TIC’s na educação, proporciona ao aluno
surdo um maior aprendizado da LIBRAS, e consequentemente um avanço na
comunicação desse aluno.
Toda ação que realizamos no PIBID contribuiu de forma gratificante com a nossa
formação acadêmica e de futuros profissionais da educação, ajudando-nos ainda a saber
e conhecer as barreiras e necessidades que um professor da educação básica enfrenta na
escola. Além de nos proporcionar um amplo e vasto conhecimento a respeito da educação
especial voltada para a pessoa surda, fazendo-nos buscar cada vez mais aprender a Língua
de Sinais utilizada nesta comunicação, fez-nos aprender e levar esse conhecimento da
comunicação com surdos para fora da escola, ou seja, para o convívio social e
comunitário.
Referências
FREITAS, P. M. de; CARVALHO, R. C. L.; LEITE, M. R. S. D. T.; HAASE, V. G.
Relação entre o estresse materno e a inclusão escolar de crianças com paralisia
cerebral. Arquivos Brasileiros de Psicologia, v. 57, n.1-2, p.46-57, 2005.
1
6
5
FRIGOTTO, G. (Org.). Educação e crise do trabalho: perspectivas de final de século. 3
ed. Petrópolis: Vozes, 1999.
GOÉS, M. C. R. Com quem as crianças surdas dialogam em sinais? In: GOÉS, M. C. R.;
LACERDA, C. B. F. (Orgs.) Surdez: Processos Educativos e Subjetividade. São
Paulo: Lovise, 2000.
LACERDA, C. B. F. A inclusão escolar de alunos surdos: o que dizem alunos, professores
e intérpretes sobre esta experiência. Caderno Cedes, Campinas, v. 26, n. 69, p.163184, maio/ago, 2006.
SKLIAR, C. (Org.). Atualidade da educação bilíngüe para surdos. Porto Alegre:
Mediação, v. 2, 1999.
BRASIL. Ministério da Educação, Secretária de Educação Especial. Manual de
Orientação: Programa de Implantação de Sala de Recursos Multifuncionais, 2010.
Disponível em <http://portal.mec.gov.br/index.php?option=com_content&view=
article&id=17430&Itemid=817>. Acesso em 02/08/2013.
BRASIL. Ministério da Educação. Secretaria de Educação Especial. Documento
Orientador Programa Implantação de Salas de Recursos Multifuncionais. Disponível
em
<http://portal.mec.gov.br/index.php?option=com_content&view=article&id=17430&
Itemid=817> Acesso em 02/08/2013.
COLL, Cesar; MARCHESI, Alvaro, PALACIOS, Jesus. Desenvolvimento Psicologia e
educação. Volume 1. São Paulo: ArtMed, 2004.
ALMEIDA, E.O.C. de. Leitura e Surdez: um estudo com adultos não oralizados. Tese
de doutorado na Faculdade de Educação da UNICAMP, 2000.
SKLIAR. C.B. (Org.). A surdez: um olhar sobre as diferenças. Porto Alegre: Mediação,
1998.
BASSO, Idavania Maria de Souza. Artigo: Mídia e educação de surdo. UFSC, Ponto de
Vista, Florianópolis, n.05, p. 113-128, 2003.
SILVA, Alix Ribeiro. Relatório final de Estágio Supervisionado obrigatório IV. UFRA,
Belém/Pa 2013.
166
TVD-EDUC 3.0: Aplicação Educacional Interativa para
Inclusão Digital/Social Através do Ambiente de TV Digital
Jhenifer da S. Santos1, Fabrício W. da S. Garcia1, Flávia P. Monteiro1, Marcos C.
da R. Seruffo1, Carlos N. da Silva1, Carlos R. L. Francês1
1
Laboratório de Planejamento de Redes de Alto Desempenho – Universidade Federal do
Pará (UFPA) Caixa Postal 479 – Belém – PA - Brasil
{jhenifersantos.si,fabriciowsgarcia,flaviamonteiro.comp}@gmail.com,
{seruffo,cns,rfrances}@ufpa.br
Abstract. This article is a proposal that aims to improve the provision of
information and communication to citizens through the mass of the teaching /
learning process, using the Interactive Digital TV for that. Assuming that
distance education offers more flexibility and autonomy to the user and
Television reaches more distant urban conglomerates, the developed
application, called TVD-Educ 3.0, is a learning tool type t-learning, which
enables the interaction between student and professor, from the resources
provided by the interactive Digital TV. The developed application allows the
student to attend classes for Digital TV and the teacher makes available
documents with content of courses taught, convert ppt / pptx to jpg / png,
through a web server, enabling a better understanding of the contents and
reaching a larger number of students.
Resumo. Este artigo é uma proposta que visa melhorar a oferta de serviços de
informação e comunicação aos cidadãos, através da massificação do processo
de ensino/aprendizagem, utilizando a TV Digital Interativa para isso. Partindo
do princípio que a educação à distância oferece mais flexibilidade e autonomia
ao usuário e a Televisão alcança conglomerados urbanos mais longínquos, a
aplicação desenvolvida, chamada TVD-Educ 3.0, é uma ferramenta de
aprendizagem do tipo t-learning, que possibilita a interação entre aluno e
professor, a partir dos recursos disponibilizados pela TV Digital interativa. O
aplicativo desenvolvido permite que o aluno assista aulas pela TV Digital e que
o professor disponibilize documentos complementares com conteúdos das
disciplinas ministradas, convertidos de ppt/pptx para jpg/png, através de um
servidor WEB, possibilitando um melhor entendimento destes conteúdos e
alcançando uma maior quantidade de alunos.
1. Introdução
A acelerada disseminação da informação traz novos recursos no cenário mundial,
tornando necessário o acesso aos recursos tecnológicos, principalmente em locais onde
as desigualdades sociais e a dificuldade de acesso à educação são cada vez mais latentes.
Embora as TIC (Tecnologias da Informação e da Comunicação) tenham como grande
proposta reduzir essas desigualdades, o que é observado na maioria dos casos é
justamente o contrário. Neste contexto de evolução, podem-se considerar dois aspectos:
exclusão tecnológica e inclusão digital. Estes dois aspectos estão, muitas vezes,
1
6
7
relacionados com o grau de educação alcançada por uma determinada quantidade da
população.
Com o aumento do patamar de bens de consumo tecnológicos considerados
essenciais, a exclusão digital tem aumentado. Uma alternativa promissora para a redução
dessa exclusão e da desigualdade é a utilização da TV Digital, pois está presente em mais
de 90% dos lares brasileiros (IBGE, 2009), excedendo o uso do computador que obtém
apenas um terço dessa quantidade.
Segundo (PARKER, 1999), a TV Digital é algo mais do que imagens mais nítidas
e melhor qualidade de áudio; é uma eventual convergência de televisão, telefonia, internet
e computador pessoal em uma simples caixa, com a promessa de acesso extraordinário a
todos os tipos de informação e comunicação interativas inimagináveis. A TV Digital
possui um ambiente considerado propício para oferecer vários tipos de serviços, levando
a interatividade digital ao usuário fazendo com que o mesmo seja o personagem principal,
buscando não mais uma comunicação unilateral e massificada.
Dentro deste contexto, após estar difundida em vários países pelo mundo, emerge
no Brasil uma padronização para a transmissão de Televisão Digital, chamada de Sistema
Brasileiro de TV Digital (SBTVD), uma alternativa bastante promissora quando se fala
de inclusão digital, visto que, a televisão é um veículo de comunicação acessível a
praticamente todas as classes sociais, em todas as regiões do Brasil, como mostra os dados
do IBGE [IBGE, 2009].
Deste modo, um dos principais objetivos do SBTVD é possibilitar a um maior
número de pessoas o acesso digital, e aumentar o usufruto dessas tecnologias. Isto é
confirmado com o decreto nº. 5.820, de 29 de junho de 2006 (SBTVD, 2010), que
demonstra o interesse de levar, por intermédio da TV, a inclusão digital e o
desenvolvimento da indústria nacional, tendendo que a televisão se torne uma ferramenta
com finalidades sociais, com a criação de canais destinados ao poder executivo,
cidadania, educação e cultura.
Um recurso coerente com os objetivos do SBTVD é a educação à distância que
oferece várias vantagens, como flexibilidade e autonomia. Quando estas vantagens são
aliadas com a interatividade da TVD, um novo modelo de aprendizado é apresentado ao
telespectador, conhecido como t-learning, que para Bates (2003) é o acesso a materiais
de aprendizagem ricos em áudio e vídeo, ou seja, o aluno é capaz de interagir com o
professor utilizando recursos da TV.
A letra t abrevia TV, substituindo as terminologias que anteriormente utilizavam
a letra e (de eletrônico), tais como e-learning, e-commerce e e-health. Assim, o
verdadeiro desenvolvimento do sistema de t-learning baseia-se na integração das
oportunidades e das funcionalidades do e-learning com a Televisão Digital interativa.
O objetivo deste artigo é disponibilizar uma aplicação interativa que visa a
inclusão digital/social, através do uso da TV Digital Interativa. A aplicação TVD-Educ
3.0 possibilita que o aluno visualize materiais complementares de ensino, com a utilização
do servidor WebService TVD – Screenshots para a conversão dos arquivos que chegam
no formato .PPT ou .PPTX e são apresentadas ao telespectador no formato .JPEG ou
.PNG. Esta conversão é necessária uma vez que os set-top boxes atuais não conseguem
mostrar arquivos com extensão PPT/PPTX.
168
Foram utilizadas técnicas de interação humano computador para que o design de
interface permitisse uma maior navegabilidade e usabilidade. O apelo da televisão é
importante já que remete ao conceito de computação ubíqua, ou seja, está presente em
quase todos os locais e contantemente na vida das pessoas de todas as classes sociais do
País, conforme citado anteriormente. Diante disto, utilizando-se a televisão, essa nova
ferramenta de ensino é capaz de alcançar localidades de difícil acesso e excluídas
digitalmente.
Este artigo está organizado da seguinte forma: na seção 2 uma breve
fundamentação teórica é apresentada, com alguns trabalhos correlatos; na seção 3 a
metodologia, a arquitetura, as tecnologias envolvidas e o cenário de teste; na seção 4 os
resultados alcançados; e na seção 5 são feitas as considerações finais sobre o trabalho.
2. Fundamentação Teórica e Trabalhos Correlatos
A evolução tecnológica vem acontecendo de forma bastante rápida e influenciando o
cotidiano dos indivíduos independente da classe social. Esse avanço é proveniente da
competitividade entre empresas de tecnologias, devido aos incessantes lançamentos de
produtos com funcionalidades melhores que os anteriores. Vale ressaltar, que a influência
que as tecnologias causam nos indivíduos nem sempre é de forma benéfica, tendo em
vista de que muitas vezes esses produtos tecnológicos são inacessíveis a uma boa parcela
da população brasileira.
Percebe-se que a TV Digital não é apenas uma evolução da TV analógica no
quesito de aúdio e vídeos digitais, e sim uma nova plataforma de tecnologia, cujos
impactos na sociedade ainda estão se delineando, podendo estes serem principalmente
sociais e educacionais. Kenski (2007) afirma que atualmente a educação e a tecnologia
são indissociáveis, não há como pensar em uma separada da outra, isto é, pensar na
educação sem que haja em seu processo a tecnologia.
Segundo a PNDA (Pesquisa Nacional de Amostras por Domicílio), 95% dos
domicílios brasileiros possuem receptores de televisão, o que equivale a quase uma TV
para cada três habitantes, e mais de 81% recebem exclusivamente sinais de televisão
aberta, porém, apenas 27,4% possuem acesso à internet. Neste contexto, a programação
transmitida aos telespectadores possui uma enorme responsabilidade, porque é uma das
mais importantes fontes de informação e entretenimento da população brasileira.
Segundo (BATES, 2003), uma das principais aplicabilidades que a interatividade
da TV digital oferece, é o acesso a materiais de aprendizagem ricos em áudio e vídeo, ou
seja, o aluno é capaz de interagir com o professor através de um vídeo interativo e
visualizar os conteúdos da disciplina ministrada pelo professor utilizando os recursos
fornecidos pela televisão.
De acordo com (BECKER, 2008), assim como a internet, a TV digital interativa
representa a possibilidade de acesso a um mundo virtual de informações e serviços. A
grande vantagem da TV Digital interativa é a não obrigatoriedade de um computador.
Apesar disto, a TV digital interativa contem um sistema informatizado que é
operado como uma TV, por meio de um controle remoto.
Segundo o trabalho de (LINS et al, 2006), a interatividade proporcionada pela
1
6
9
TVD ajuda a diminuir as brechas entre o usuário e o conhecimento deixado pela
Educação à Distância. Com o desenvolvimento de novas tecnologias, a EAD (Educação
à Distância) vem crescendo através da maior facilidade de comunicação entre alunos e
orientadores. Segundo os autores (SILVA et al, 2010), os aplicativos educacionais estão
ganhando cada vez mais espaço dentro da TV digital.
O t-learning, segundo BATES 2003, é uma modalidade de educação à distância
baseado em televisão interativa, ou seja, representa a especificação da TV Digital como
a tecnologia que apóia o processo de aprendizado eletrônico denominado e-learning.
Além disso, o t-learning possibilita aos alunos o acesso a diversos materiais didáticos
para apoio na aprendizagem, e a familiarização com as plataformas EAD através do
controle remoto.
Para Hack (2010, p.75), uma das maiores vantagens do vídeo como material
didático é a possibilidade de criar uma relação mais próxima entre os professores da EAD
e os alunos, pois a comunicação é melhor com quem conhecemos visualmente.
Além da abordagem onde o aluno assiste aula pela televisão e interage com o
aplicativo TVD.Educ 3.0 através do controle remoto, este artigo apresenta, de forma
inovadora, a possibilidade de visualização de materiais complementares de ensino para o
melhor entendimento do conteúdo ministrado pelo professor. Para isso, faz-se necessário
uma conversão de formatos de arquivos (através de um servidor WEB), para que os
conteúdos possam ser apresentados na TV.
3. Metodologia
O desenvolvimento de aplicativos para TV Digital exige comportamento diferenciado do
tradicional, pois possui características próprias como, capilaridade, facilidade de
implantação e uso. Porém, uma das principais características diferenciadas dos
aplicativos para TV Digital está no formato de distribuição, que pode ser realizado através
do carrossel de dados, que envia o aplicativo de forma assíncrona, partindo da emissora
até o telespectador, e as tecnologias utilizadas.
O componente essencial para a execução de aplicativos para TV Digital é o
middleware Ginga, e o mesmo foi utilizado para o desenvolvimento do aplicativo
TVDEduc 3.0 juntamente com as plataformas NCL (Nested Context Language) e Java,
presentes na codificação. Basicamente, o middleware permite o funcionamento de um
código para diferentes tipos de plataformas de recepção e vice-versa (MAHMOUD,
2004), possibilitando aos diferentes fabricantes a implementação desse componente e a
execução de qualquer aplicativo Ginga.
A complexidade do desenvolvimento de aplicações interativas para TV Digital
vai além de questões técnicas. Suprir as necessidades dos usuários tem sido foco de várias
pesquisas, visando a melhoria da interatividade e da usabilidade dos aplicativos, e para
isso algumas alternativas são a utilização de novos dispositivos para a interação com a
TV, como celulares e tablets. A seguir serão mostradas as etapas de desenvolvimento do
aplicativo desenvolvido neste artigo.
3.1. Arquitetura
Para o desenvolvimento do TVD-Educ 3.0, foi criado um sistema em três módulos, onde
cada um possui responsabilidades diferentes. A Figura 1 mostra o diagrama de
170
componentes do aplicativo, especificando os módulos e componentes que o compõem, e
as relações entre eles.
Dentro da arquitetura, o Servidor de Aplicações é um dos módulos mais
importantes, pois é quem gerencia e fornece recursos para os outros módulos de interação
com o usuário e se situa na infraestrutura de serviço, ou seja, está conectado à Internet.
Por esse motivo, este módulo não possui restrições com relação à capacidade de
processamento e armazenamento, podendo explorar diversas técnicas disponíveis dentro
da especificação Java Enterprise Edition 6 (Java EE 6). Este módulo é composto por três
componentes e também interage com o Gerenciador de Persistência que nada mais é do
que o armazenamento dos dados em um lugar onde possa recuperá-lo posteriormente.
Figura 1. Arquitetura da Aplicação
O componente Modelos é responsável por representar os dados manipulados pelo
aplicativo. O componente JPA interage com o Banco de Dados MySQL para realizar a
persistência dos dados. O componente JSF recebe requisições de um navegador Web e é
responsável por oferecer uma interface de gerenciamento dos dados manipulados dentro
do sistema. O componente JAX-RS é responsável por expor os dados manipulados pelo
sistema através de Web Services utilizando a tecnologia RESTful (Representational State
Transfer), que é um protocolo de mercado que utiliza o protocolo HTTP (Hypertext
Transfer Protocol) como camada de transporte. É através deste componente que o
aplicativo TVD-Educ 3.0 se comunica com o Servidor de Aplicações.
O Sistema Gerenciador de Banco de Dados MySQL foi utilizado para realizar a
persistência dos dados manipulados, devido a larga adoção que possui em soluções para
Internet e a conectividade com soluções Java (LEONARD, 2010). Este software utiliza a
abordagem relacional, mas dentro da arquitetura este módulo pode ser facilmente
substituído de acordo com as necessidades do projeto.
O módulo TVD-Educ 3.0, que também pode chamar-se módulo Cliente,
implementa as funcionalidades de forma compatível com o middleware Ginga, e é quem
estabelece a interação direta dos usuários com o sistema. Preocupações a cerca da
usabilidade e da acessibilidade, devem ser tratadas para que os usuários possam utilizar
o aplicativo de forma simples e intuitiva.
1
7
1
3.2. Tecnologias Envolvidas
Ao desenvolver o TVD-Educ 3.0, utilizou-se de tecnologias que pudessem ser executadas
pela maioria dos aparelhos disponíveis no mercado, dentre estes o middleware Ginga que
oferece uma série de facilidades, entre elas a possibilidade de o aplicativo ser exibido nos
mais diferentes sistemas de recepção, independente do hardware do fabricante e o tipo de
receptor. As aplicações executadas sobre Ginga são classificadas em duas categorias:
Aplicações Procedurais e Aplicações Declarativas. O TVD-Educ 3.0 é classificado como
uma aplicação declarativa por seguir o paradigma de desenvolvimento Ginga-NCL, um
ambiente que tem como base a linguagem NLC (uma aplicação XML) e sua linguagem
de scripts LUA.
Para cumprir o objetivo de portabilidade do aplicativo, foram utilizadas a
linguagem NCL/LUA no desenvolvimento do módulo TVD-Educ 3.0, Java no módulo
Servidor de Aplicações, e MYSQL para persistência do Banco de dados. Como o
ambiente NCL/LUA é obrigatório na especificação do SBTVD, qualquer equipamento
preparado para a TV Digital conseguirá utilizar o sistema.
3.3. Cenário de Teste
Para o estudo do comportamento da aplicação proposta foi montado no LPRAD
(Laboratório de Planejamento de Redes de Alto Desempenho) um cenário que contém
uma infraestrutura essencial para proporcionar interatividade plena aos usuários de TV
Digital. Esta infraestrutura pode ser dividida em cinco partes: infraestrutura de
transmissão, infraestrutura de recepção, infraestrutura de canal de retorno, infraestrutura
de conversão de arquivos e infraestrutura de serviços. Esse cenário pode ser visto na
Figura 2.
Figura 2. Infraestrutura de teste
Inicialmente, a infraestrutura de transmissão tem como objetivo principal fornecer
um meio para a transmissão de sinal de TV semelhante ao encontrado em uma
transmissão de SBTVD, onde inclui o equipamento EITV Playout (EITV 2010), que faz
a codificação e transmissão de sinal de TV. O Playout está ligado a um amplificador de
sinal de antena.
A infraestrutura de recepção é composta por uma TV com recepção digital e
interatividade, três set-top boxes são ligados a TV analógica, e são responsáveis por
decodificar os sinais emitidos pelas emissoras e enviá-los em alta definição para os
aparelhos de TV, um computador com o OpenGinga e outro computador com o set-top
172
box virtual disponibilizado pela PUC-Rio. Estes dispositivos são responsáveis por
representar o ambiente da casa do usuário, que contém basicamente os equipamentos
representados acima.
Uma infraestrutura de conversão de arquivos foi criada para a compatibilidade
dos arquivos que alimentarão o aplicativo, com a linguagem no qual foi desenvolvida.
Basicamente, o WebService TVD – Screenshots recebe os dados com extensões de
.PPT/PPTX e os converte para as extensões .JPEG/PNG e outros formatos de imagens,
pois a linguagem NCL não reconhece nenhum outro tipo de extensões de arquivos.
Para prover a conectividade entre a infraestrutura de conversão de arquivos e a
infraestrutura de recepção, uma infraestrutura de canal de retorno foi montada, com o
objetivo de testar o comportamento do aplicativo. Utilizou-se este tipo de conexão, em
função de todos os equipamentos envolvidos possuirem interface de conexão cabeada.
Para proporcionar um ambiente que recebe os dados enviados pelos usuários e
posteriormente convertidos, uma infraestrutura de serviço foi criada. Esta infraestrutura
é o ponto em que os dados de interatividade com o utilizador são recebidos. Optou-se por
separar os dois servidores da infraestrutura de serviços, para manter a divisão de
responsabilidades. Esta divisão de responsabilidades permite o monitoramento refinado
da infraestrutura e a melhor identificação de pontos de lentidão (HAINES, 2006), visto
que o número de acessos pode ser bastante significativo.
4. Resultados
O resultado deste artigo é a própria aplicação TVD-Educ 3.0, que possui a capacidade de
disponibilizar, simultaneamente, material didático como complemento da tele-aula
ministrada pelo professor, através do ambiente da TV Digital. Aliado à essa característica
está a interface intuitiva e agradável do aplicativo.
De acordo com a arquitetura apresentada, o projeto é dividido em três camadas,
sendo estas: camada do cliente, camada Web e a camada de persistência de dados. E
possui dois agentes principais, sendo estes: discente e docente.
4.1. Front – End – Visão do Usuário
Este módulo, camada do cliente, contém três painéis organizados como mostra a figura
3. O painel 1 exibe as disciplinas cadastradas e que possuem materiais armazenados. O
painel 2 é acionado, através das setas de navegação do controle remoto, no momento em
que o usuário escolhe uma disciplina e desliza a seta de navegação para a direita, assim
a lista com os conteúdos armazenados referente à disciplina serão expostos. No painel 3
será exibido o conteúdo escolhido pelo usuário, que ainda tem a possibilidade de fechar
o material complementar e continuar apenas com a tele-aula ministrada pelo professor.
1
7
3
Figura 3. Tela Inicial do TVD-Educ 3.0
Vale ressaltar, que a interação do usuário ocorre apenas com o sistema, e não com
professor, visto que através do controle remoto, o usuário consegue manipular todas as
informações que lhe são mostradas através da TV Digital. A importância do professor em
relação ao TVD-Educ 3.0, é tanto a tele-aula que ele ministra, quanto o Upload que ele
faz do conteúdo didático complementar em .ppt/pptx, para que este seja convertido
através do WEBService TVD – ScreenShots em .jpg/png, para que então o aluno visualize
esse material juntamente com a tele-aula ministrada.
4.2. WebService TVD – Screenshots
O desenvolvimento deste módulo da camada Web foi paralelamente ao desenvolvimento
da aplicação proposta. A Figura 4 apresenta a tela inicial do servidor Web. Nesta, o
professor tem as seguintes opções: (a) Enviar arquivos; (b) Visualizar Arquivos e; (c)
Converter arquivos.
Figura 4. Tela Inicial do Screenshots
A figura 5, apresenta a tela de Upload caso o professor escolha a opção de enviar
arquivos para a conversão. O usuário escreve o nome da disciplina no qual o material
174
pertence, busca o conteúdo para upload, e após isso faz o envio do arquivo em .PPT/PPTX
para, posteriormente, ser convertido para as extensões reconhecidas pela linguagem
NCL/LUA, .JPEG/PNG.
Figura 5. Tela de Upload do Screenshots
Na Figura 6, é apresentada a tela de conversão do servidor Web. O professor
seleciona o material, que ainda está em formato .PPT/.PPTX, e escolhe a opção de
converter. Ainda nesta página, o usuário tem a opção de visualizar os arquivos que já
foram enviados para conversão, Figura 7, ou voltar para a página inicial do Webservice
TVD – Screenshots, Figura 4.
Figura 6. Tela de Upload do Screenshots
Após esse contato, a interação entre o professor e o servidor Web está bastante
intuitiva. Na Figura 7, é apresentada uma tela listando todos os arquivos enviados pelo
agente professor e convertidos pelo servidor. A finalidade desta página é permitir o
download destes arquivos.
1
7
5
Figura 7. Tela de Arquivos Convertidos
A figura 8, representa a tela onde é exibidida a lista dos arquivos convertidos pela
aplicação WebService TVD-Screenshots. Feita a conversão dos arquivos, o servidor Web
envia o material complementar para a camada do cliente, para que o usuário possa, enfim,
interagir com os conteúdos.
Figura 8. Lista de arquivos armazenados
5. Considerações Finais
A convergência tecnológica da computação e das telecomunicações, culminando com o
surgimento da grande área de tecnologia da informação e comunicação, encurtou
distâncias e permitiu, entre outras inúmeras facetas, a reprodução e o repasse de conteúdo,
com surpreendente rapidez e alcançando grandes distâncias. A natural evolução
tecnológica e a mudança considerável do perfil de uso e de usuário estão exigindo novos
sistemas/serviços.
Assim, novas ferramentas passaram a ganhar espaço, permitindo, inclusive, ao
usuário acesso à conteúdos mais interessantes e criativos, como os educacionais. O
aplicativo TVD-Educ 3.0 é uma aplicação do tipo t-learnig e se encaixa nesse novo
padrão de aquisição de conhecimento, auxiliando o aluno em sua aprendizagem,
176
oferecendo muito mais opções de serviços e ampliando os benefícios proporcionados para
o aluno de ensino à distância.
O diferencial da aplicação proposta é a capacidade que o aluno possui de
visualizar os conteúdos das disciplinas através da Televisão, que está presente quase que
absolutamente nos lares dos cidadãos Brasileiros. Desta forma, a idéia é a massificação
do conhecimento, permitindo que as pessoas outrora excluída digitalemente, passem a ser
usufrutários dos recursos tecnológicos.
Por ser uma tecnologia presente no cotidiano do ser humano, a televisão facilita a
interação homem-máquina e torna o aplicativo proposto acessível às áreas de dificil
acesso e às pessoas das mais diferentes classes sociais (principalmente das classes menos
favorecidas), amenizando a exclusão digital/social e potencializando o aprendizado da
forma mais produtiva e agradável, aliadas com a flexibilidade e comodidade fornecida
pela TV Digital.
Como trabalhos futuros serão realizados estudos de caso para a avaliação da
aplicação em cenários reais, visando verificar a qualidade da aplicação através de
conceitos de acessibilidade e usabilidade com usuários reais. Além disto, pretende-se
integrar o aplicativo t-learning com o MOODLE, possibilitando que o material postado
neste último possa ser visualizado na TV.
Referências
KENSKI, V.M. 2007. Educação e tecnologias o novo ritmo da informação. Campinas,
SP: Papirus, 2007.
HACK, J. R. Linguagem virtual e audiovisual na EAD. In: TAFNER, E. P. et al.
Produção de materiais auto-instrutivos para EAD. Indaial: ASSELVI, 2010. p. 59-87.
IBGE - Instituto Brasileiro de Geografia e Estatística. Diretoria de
Pesquisas/Coordenação de Trabalho e Rendimento. Pesquisa Nacional por Amostra
de Domicílios. 2007.
Bates, Peter J. (2003). A study into TV-based interactive learning to the home. Pjb
Associates, UK. This study has been conducted by pjb Associates, UK with funding
from the European Community under the IST Programme (1998-2002).
EITV, 2010. Extraído do site www.eitv.com.br. Acessado dia 09/10/2010 às 17h.
Soares, Luiz Fernando G.; Barbosa, Simone Diniz J. Programando em NCL:
Desenvolvimento de aplicações para middleware Ginga, TV Digital e Web. Rio de
Janeiro: Elsevier, 2009.
Wierner, Norbert. Cibernética e Sociedade: O Uso Humano dos Seres Humanos.
Tradução de José Paulo Paes, São Paulo: Cultrix, 1970.
Parker, R. The Economics of Digital TV’s future, In D. Gerbarg, The economics,
technology and content of digital TV. 1999.
Becker, V, Fornari, A, Herweg, GHF, Montez, C, 2008, Recomendações de Usabilidade
para TV Digital Interativa. TVDI – Grupo de Pesquisas em TV Digital Interativa –
Universidade Católica de Pelotas.
LINS, Rubevan Medeiros; MOITA, Márcia Helena Veleda; DACOL, Silvana.
Interatividade na Educação a Distância. Fortaleza,CE:2006.
1
7
7
SILVA, C. N. da et al. Tvd-educ: Um estudo de caso de aplicação educativa interativa
para tv digital. Conferência IADIS Ibero-Americana WWW/Internet, p. 59-66, 2010.
PNAD. Pesquisa Nacional por Amostra de Domicílios. Disponível em:
<http://noticias.uol.com.br/especiais/pnad/2010/ultimasnoticias/2010/09/08/numerodedomicilios-com-telefone-cresce-e-atinge-84-em-2009-diz-pnad.jhtm> Acesso em:
08/03/2013.
Educação a Distancia e a TV Digital: Uma Abordagem do Potencial da Interatividade.
Disponível em: <http://www.abed.org.br/congresso2011/cd/183.pdf> Acesso em
18/03/2013.
HAINES, S. Pro Java EE 5 Performance Management and Optimization. New York,
USA: Apress, 2006. ISBN 1-59059-610-2.
178
Uma Nova Visão para a Ontologia de Domínio da
Biodiversidade
Janaína M. P. Nascimento1, Delano Campos de Oliveira1, Andréa Corrêa Flôres
Albuquerque2, Marcos Paulo Alves de Sousa1, José Laurindo Campos dos Santos2
1
Núcleo de BioGeoInformática – Museu Paraense Emílio Goeldi (MPEG). CEP: 66077530 Belém – PA – Brasil
2Núcleo de BioGeoInformática - Instituto Nacional de Pesquisas da Amazônia. CEP:
69060-001 Manaus – AM – Brasil.
{janaina.mayara7,camposdelano,andreaalb.1993,laurocampos2004,marcosp.b
elem}@gmail.com
Abstract. In recent years, important studies have shown good results in the
use of ontology to represent complex biological data. Recently, researchers of
the Biodiversity Research Programme of the Ministry of Science, Technology
and Innovation, have proposed a domain ontology for Biodiversity, which is a
scalable and dynamic model. From this initial model, this paper proposes new
contributions and implementations for the ontology domain mentioned,
expanding and contributing to the model by adding new entities, relationships,
stereotypes of OntoUML language and two new sub-ontologies - Taxonomic
Classification and Institution Research, enriching the semantics of ontology and
allowing a wider field of mapping biological data, aiming to expand the
representation of knowledge about biodiversity.
Resumo. Nos últimos anos, importantes trabalhos mostraram bons resultados
no uso de Ontologia para representar dados complexos biológicos.
Recentemente, pesquisadores vinculados ao Programa de Pesquisa em
Biodiversidade do Ministério de Ciência, Tecnologia e Inovação, propuseram
uma ontologia de domínio para Biodiversidade, que se trata de um modelo
expansível e dinâmico. A partir desse modelo inicial, este trabalho propõe
novas contribuições e implementações a ontologia de domínio mencionada,
expandindo e contribuindo com o modelo através da inclusão de novas
entidades, relacionamentos, estereótipos da linguagem OntoUML e duas novas
sub-ontologias – Classificação Taxonômica; Instituição Pesquisa;
enriquecendo assim a semântica da ontologia e possibilitando um maior campo
de mapeamento dos dados biológicos, visando expandir a representação do
conhecimento sobre a Biodiversidade.
1. Introdução
O Brasil é um país florestal, abrigando cerca de 5,5 milhões de km2 de florestas (65%
do seu território), o que representa aproximadamente 10% do total das florestas do
mundo. Desse total 60% são florestas tropicais e estão situadas na Amazônia Legal,
possuindo a biodiversidade mais rica do mundo. Grande parte desta biodiversidade
permanece desconhecida, e a ampliação do conhecimento sobre as espécies biológicas é
um desafio essencial para a aplicação de políticas de preservação e exploração sustentável
1
7
9
das florestas.
Dados referentes à biodiversidade são de extrema importância porque através
deles, pesquisadores podem avaliar questões triviais a respeito das dimensões dos
impactos ambientais, proteção de espécies ameaçadas, recuperação de áreas desmatadas,
além de apoiar decisões governamentais relevantes como definição de áreas de proteção
ambiental, políticas públicas e legislações.
Atualmente, há projetos e programas de pesquisa visam criar sistemas de
informação capazes de extrair, armazenar, gerenciar, analisar, integrar e disseminar os
diferentes dados das diversas fontes de dados de biodiversidade, tais como, Large-Scale
Biosphere-Atmosphere Experiment in Amazonia (LBA, 2014) e Global Biodiversity
Information Facility (GBIF, 2014).
Dados de biodiversidade apresentam um alto nível de complexidade. Segundo
(ALBUQUERQUE, 2009) inclui: parâmetros espaço-temporais, estrutura indefinida,
multidimensionalidade, vocabulário incógnito expresso por uma linguagem particular e
grande volume de dados. Ressalta-se a existência de numerosos modelos e formatos de
dados, o que torna a interoperabilidade entre eles, um desafio. No que diz respeito à
integração de dados, a maior dificuldade advém da falta de uma conceitualização básica
de domínios.
Importantes trabalhos têm sido publicados demostrando bons resultados com o
uso de Ontologias para representar modelos de dados da área da Biologia
(BODENREIDER, 2006) e (LEONELLI, 2008). De acordo com (ALBUQUERQUE,
2009), as bio-ontologias, que são as ontologias ligadas à biologia e ciências da vida, têm
auxiliado e contribuído para grandes avanços na área, pois permitem a associação de
significado aos dados gerados em experimentos, além de possibilitar a integração das
várias fontes de conhecimento, uma nova abordagem para preparação de experimentos
ou ainda a busca de respostas usando resultados de fontes distintas.
O Ministério da Ciência, Tecnologia e Inovação implantou o Programa de
Pesquisa em Biodiversidade (PPBIO, 2014), que visa desenhar uma estratégia de
investimento em ciência, tecnologia e inovação que aponte prioridades, agregue
competências em diversos campos do conhecimento, gere, integre e dissemine
informações sobre biodiversidade. O Programa tem abrangência nacional, com diversas
instituições de ensino e pesquisa vinculadas, e iniciou sua implementação nas regiões
da Amazônia Oriental, da Amazônia Ocidental e do Semi-Árido, as referidas regiões
possuem núcleos de coordenação das atividades de pesquisa do Programa,
representadas pelo do Instituto Nacional de Pesquisas da Amazônia, Museu Paraense
Emílio Goeldi e Universidade Estadual de Feira de Santana, respectivamente.
A partir das bases de conhecimentos geradas pelo PPBIO, foi proposto e validado
um modelo de Ontologia de domínio visando a integração e consolidação de dados de
Biodiversidade (ALBUQUERQUE, 2012), que baseia-se em Ontologia de
Fundamentação Unificada (UFO) (GUIZZARDI, 2005). O modelo da ontologia de
Biodiversidade está dividida em sete sub-ontologias, conectadas por relações entre as
suas entidades e por axiomas, são elas: Sub-Ontologia de Aquisição; Sub-Ontologia
Entidade Material; Sub-Ontologia Espaço Geográfico; Sub-Ontologia Ecosfera, SubOntologia Ambiente, Sub-Ontologia Classificação Taxonômica e Sub-Ontologia
Instituição de Pesquisa. A referida proposta não é um modelo fechado, e representa um
domínio complexo da Biodiversidade de forma expansível e dinâmica. Ressalta-se que
180
a expansão e inclusão de novas entidades, relacionamentos e axiomas ao modelo formal
da ontologia para Biodiversidade é necessário conforme o surgimento de novos dados e
informações sobre espécies biológicas, assim como a utilização de formalismos e
técnicas para criação de uma ontologia fortemente acoplável que possibilite a
interoperação entre diversas ontologias tanto de domínio, como de aplicação.
Visando expandir a representação do conhecimento sobre a Biodiversidade, este
trabalho tem como objetivo propor novas contribuições e implementações a um modelo
de ontologia de domínio formalizado, através da inclusão de novas entidades,
relacionamentos, estereótipos da linguagem OntoUML (GUIZZARDI, 2005) e duas
novas sub-ontologias – Classificação Taxonômica e Instituição Pesquisa, enriquecendo
assim a semântica da ontologia e possibilitando um maior campo de mapeamento dos
dados biológicos, visando expandir a representação do conhecimento sobre a
Biodiversidade.
2. Um Modelo Formal de Ontologia de Domínio para Biodiversidade
Atualmente, há uma ontologia de domínio referente à biodiversidade implementada por
pesquisadores vinculados ao PPBIO (ALBUQUERQUE, 2012) usando Ontologia de
Fundamentação Unificada (UFO), que visa prover uma conceitualização clara e precisa
dos aspectos considerados em coletas de dados de biodiversidade independentes de
uma aplicação específica, capaz de responder questões de competência da ontologia. A
competência de uma representação diz respeito à cobertura de questões que essa
representação pode responder ou de tarefas que ela pode suportar. Ao se estabelecer a
competência, tem-se um meio eficaz de delimitar o que é relevante para a ontologia e o
que não é.
A ontologia de Biodiversidade está dividida em cinco sub-ontologias, conectadas
por relações entre os conceitos e por axiomas. São elas: (i) Sub-Ontologia de Coleta; (ii)
Sub-Ontologia Entidade Material; (iii) Sub-Ontologia Localização Espacial; (iv) SubOntologia Ecossistema; (v) Sub-Ontologia Ambiente, como mostra a figura 1.
Figura 1. Visão Geral da Ontologia de Domínio da Biodiversidade.
Sendo subdivido por cores distintas nos seguintes grupos de Sub-Ontologia:
 Amarelo: Representa informações sobre o Ambiente, sendo que no modelo
ontológico dessa entidade está subdivida em outras duas classes que são subclasses
da
classe
Ambiente: Microambiente e Macroambiente, as
informações representadas nesse domínio do modelo são: tipo do ambiente,
1
8
1
condições climáticas, luminosidade, fases da lua, entre outros;
 Verde claro: Representa informações sobre Espaço Geográfico, são todas as
informações relacionadas com Tipo de Região, Local de Coleta, Localidade,
Ponto Geográfico de onde as espécies foram coletadas;
 Verde escuro: Representa informações sobre Ecossistema, são informações
relacionadas com Meso, Macro e Micro Ecossistema, além de Tipo do Ecossistema
e Bioma;
 Azul escuro: Representa informações sobre Materiais, são informações que se
dividem em entidade biótica e abiótica, n a primeira encontram-se informações
de Taxonomia, Animal, Micro-organismo, Sexo, Planta, flora, Vegetação, entre
outros. Na segunda (abiótica) encontram-se informações sobre Solo, Água e Ar;
 Azul claro: Representa informações sobre Coleta, são informações relacionadas
com tipo de coleta, instrumento de coleta, responsável pela coleta, ou seja como a
coleta foi feita (manual ou instrumental), qual instrumento utilizado, se foi do tipo
armadilha, ou por redes, entre outros.
3. Novas contribuições à Ontologia de Domínio para Biodiversidade
De acordo com estudos e pesquisas no campo da biodiversidade realizadas através de
informações adquiridas pelos trabalhos desenvolvidos por biólogos do Instituto Paraense
Museu Emílio Goeldi, com varias entidades relacionados ao bioma, permitiu a descoberta
da necessidade de criação de novas entidades, suas categorizações, relacionamentos,
axiomas e duas novas Sub-Ontologias para agregar semântica e expansão na
representação do conhecimento na Ontologia para Biodiversidade, grande parte das
informações abaixo citadas são referenciadas nos materiais (PPBIO, 2014),
(ALBUQUERQUE, 2012) e (GUIZZARDI, 2005). Na Sub-Ontologia Acquisition foram
adicionadas 1 7 novas entidades correspondentes a forma de Aquisição e aos métodos
de coleta que estão presentes nos protocolos de coleta científica, na Sub-Ontologia
MaterialEntity foram adicionadas 21 novas entidades correspondentes a entidades
Abiotics e ObjectStudy, na Sub-Ontologia Ecosphere foram adicionadas 43 novas
entidades correspondentes as entidades Vegetation e Ecosystem, na Sub-Ontologia
GeographicalSpace foram adicionadas 18 novas entidades correspondentes as entidades
ProtectedArea e ConservationUnit, ainda foram desenvolvidas duas novas SubOntologias correspondentes a TaxonomicClassification, como mostra a figura 2 e a
ResearchInstitution, como mostra a figura 3.
182
Figura 2. Sub-Ontologia TaxonomicClassification.
Figura 3. Sub-Ontologia ResearchInstitution
Com a inclusão de duas novas Sub-Ontologias, entidades, relacionamentos e
estereótipos da linguagem OntoUML a visão geral da Ontologia de Domínio para
Biodiversidade ficou dividida da seguinte forma: Sete sub-ontologias, conectadas por
relações entre os conceitos e por axiomas; (i) Sub-Ontologia de Acquisition; (ii) SubOntologia MaterialEntity; (iii) Sub-Ontologia GeographicalSpace; (iv) Sub-Ontologia
Ecosphere; (v) Sub-Ontologia Environment; (vi) Sub-Ontologia ResearchInstitution;
(vii) Sub-Ontologia TaxonomicClassification como mostra a figura 41.
1
8
3
Figura 4. Nova Visão Geral da Ontologia de Domínio da Biodiversidade.
O trabalho que utiliza a linguagem conceitual OntoUML baseia-se na a Unified
Foundational Ontology – UFO (GUIZZARDI, 2005, p. 5 apud ALBUQUERQUE, 2011,
p. 20). As novas contribuições resultaram em um modelo de maior abrangência a respeito
da biodiversidade aumentando a capacidade de análise e validação semântica dos termos
do domínio. Para que fosse alcançado o objetivo do trabalho, foi necessário estabelecer
alguns objetivos específicos, dentre eles:
 Levantar as características do domínio da Biodiversidade referente as novas
entidades.
 Modelar as novas classes, atributos, sub-ontologias e relacionamentos do domínio
da Biodiversidade utilizando a linguagem OntoUML. Para auxiliar o processo de
modelagem da entidades, usou-se o software Enterprise Architect (EA, 2013).
 Implementar a modelagem realizada no EA para gerar o arquivo OWL da ontologia,
para auxiliar o processo de implementação do modelo, usou-se o software Protégé
(PROTEGE, 2014).
 Realizar testes de consistência e taxonomia através da utilização do programa Racer
Pro (RP, 2014), que é instalado separadamente do protégé. Abaixo a tela de
inicialização do programa:
184
Figura 5. Tela inicial Racer Pro.
O comando Check Consistency realizado no protégé permite que ele se
comunique com o Racer para checar a consistência da ontologia, o resultado por ser
visto na figura abaixo:
Figura 6. Teste de Consistência da Ontologia.
O comando Classify Taxonomy realizado no protégé permite que ele se
comunique com o Racer para checar a taxonomia da ontologia, verificado se a
hierarquia taxonômica do modelo é válida, o resultado por ser visto na figura abaixo:
1
8
5
Figura 7. Teste de Taxonomia da Ontologia.
O levantamento de requisitos no contexto de dados de biodiversidade foi
desenvolvido seguindo as etapas abaixo que compõem os protocolos de coleta do INPA
ALBUQUERQUE, A. (2011):
1) Levantamento de Dados, o qual consistiu da coleta de documentos/registros de
coletas de campo. Utilizou-se dados de projetos, organizações e institutos
disponíveis via Web, além de uma pesquisa local no INPA, onde se adquiriu
documentos em meio eletrônico (na sua grande maioria arquivos texto) e
informações sobre o esquema conceitual de banco de dados CLOSi (Clustered
Object Schema for INPA’s Biodiversity Data Collections), (CAMPOS DOS
SANTOS, J. L, 2003). O período de pesquisa no INPA permitiu um estudo
detalhado do domínio de dados sobre biodiversidade. Ressalta-se a importância do
estágio neste Instituto, sem o qual não seria possível a construção desta ontologia,
uma vez que este domínio exige um conhecimento especializado do contexto;
2) Levantamento de Requisitos, com base na coleta realizada no levantamento de
dados. Possibilitou definir os aspectos comuns a maioria dos documentos
adquiridos para a modelagem da ontologia. Nesta fase, definiu-se um modelo
genérico de documento para registro de coleta de dados de campo: um Protocolo de
186
Coleta;
A partir destas duas etapas do processo pôde-se ter a compreensão do domínio da
aplicação: extremamente grande e complexo no que diz respeito à taxonomia, morfologia
e morfometria.
3.1. Sistematizando a Construção de Ontologias: SABiO
A Systematic Approach for Building Ontologies – (SABiO) é a abordagem sistemática
adotada na construção da ontologia de domínio para Biodiversidade proposto em
(FALBO, R, 2004). Ontologias que são utilizadas como modelos de domínio, devem ter
sua construção considerada. O processo de desenvolvimento de ontologias envolve as
atividades de Identificação de Propósito e Especificação de Requisitos, Captura da
Ontologia, Formalização da Ontologia, Avaliação da Ontologia e Documentação.
Identificação de propósito e especificação de Requisitos, visa identificar
claramente o seu propósito e os usos esperados para ela, isto é, a competência da
ontologia. A competência de uma representação diz respeito à cobertura de questões que
essa representação pode responder ou de tarefas que ela pode suportar. Ao se estabelecer
a competência, temos um meio eficaz de delimitar o que é relevante para a ontologia e o
que não é. É útil, também, identificar potenciais usuários e os cenários que motivaram o
desenvolvimento da ontologia em questão.
Captura da ontologia, o objetivo é capturar a conceituação do universo de
discurso, com base na competência da ontologia. Os conceitos e relações relevantes
devem ser identificados e organizados. Um modelo utilizando uma linguagem gráfica,
com um dicionário de termos, pode ser usado para facilitar a comunicação com os
especialistas do domínio.
Formalização da ontologia, ocorre quando se pretende representar explicitamente
a conceituação capturada no estágio anterior em uma linguagem formal.
Avaliação da ontologia, a ontologia deve ser avaliada para verificar se satisfaz os
requisitos estabelecidos na especificação. Adicionalmente, ela deve ser avaliada em
relação à competência da ontologia e alguns critérios de qualidade para o projeto de
ontologias.
Documentação, todo o desenvolvimento da ontologia deve ser documentado,
incluindo propósitos, requisitos e cenários de motivação, as descrições textuais da
conceituação, a ontologia formal e os critérios de projeto adotados. Assim, como a
avaliação, a documentação é uma etapa que deve ocorrer em paralelo com as demais.
4. Conclusão
O conhecimento sobre a Biodiversidade é uma necessidade indispensável para
aplicações de políticas e programas de preservação e de exploração sustentável, e a
utilização de sistemas de informações tem se tornado uma importante ferramenta aliada
nesse processo. Diante dos bons resultados com o uso de Ontologias para representar
dados complexos biológicos, um modelo de ontologia de Domínio foi proposto e validado
a partir de dados da Biodiversidade do PPBIO. Este trabalho demostrou que o referido
modelo é aberto, expandindo-o com novas contribuições de entidades de dados, de acordo
com o levantamento das características do domínio da Biodiversidade. As novas
contribuições resultaram em um modelo de maior abrangência a respeito da
1
8
7
biodiversidade aumentando a capacidade de análise e validação semântica dos termos
do domínio.
Como proposta futura, seria importante a implementação de um repositório de
ontologias para tratar dos dados complexos de Biodiversidade, e que possa receber
cooperações de pesquisadores do PPBIO e demais programas de pesquisas, com novas
contribuições em outras classes do domínio, referentes ao espaço geográfico, habitats,
hábitos alimentares de espécies, entre outras.
Agradecimentos
Os autores agradecem ao Conselho Nacional de Desenvolvimento Científico e
Tecnológico por ter fornecidos os dados de biodiversidade que possibilitou a realização
da pesquisa.
Referências
EA.
Enterprise
Architect.
Disponível
http://www.sparxsystems.com/products/ea/index.html, acessado em 10/2014.
por
LBA.
LBA-Ecology
Project
Science
Office.
http://www.lbaeco.org/lbaeco/, acessado em 01/2014.
por
Disponível
GBIF. The Global Biodiversity Information Facility – GBIF. Disponível por
http://data.gbif.org, acessado em 01/2014.
PPBIO. Programa de Pesquisa em Biodiversidade – PPBio. Disponível por
http://www.mct.gov.br/index.php/content/view/7913.html, acessado em 01/2014.
ALBUQUERQUE, A.; CAMPOS DOS SANTOS, J.; DE MAGALHÃES NETTO, J.
(2009) "A Strategy for Biodiversity Knowledge Acquisition Based on Domain
Ontology”. To appear in Proceedings of the 9th. International Conference on
Intelligent Systems Design and Application (ISDA 2009). November 30th – Pisa,
Italy.
BODENREIDER, Olivier; STEVENS, Robert. Bio-ontologies: current trends and future
directions. Brief Bioinform (2006) 7 (3): 256-274 doi:10.1093/bib/bbl027, 2006.
LEONELLI, S. Bio-Ontologies as Tools for Integration in Biology. Biological Theory,
3 (1), pp 8-11, 2008.
ALBUQUERQUE, Andréa Corrêa Flôres; SANTOS, José Laurindo Campos dos;
Magalhães Netto, J. F.; CASTRO JR, A. N. (2012) OntoBio: An Ontology for the
Amazonian Biodiversity. In: the International Joint Conference on Knowledge
Discovery, Knowledge Engineering and Knowledge Management; 4th International
Conference on Knowledge Engineering and Ontology Development, Barcelona.
GUIZZARDI, G. (2005) Ontological Foundations for Structural Conceptual Models. PhD
Thesis (CUM LAUDE), University of Twente, The Netherlands. Published as the
same name book in Telematica Instituut Fundamental Research Series No. 15, ISBN
90-75176-81-3 ISSN 1388-1795; No. 015; CTIT PhD-thesis, ISSN 1381-3617; No.
05-74. Holanda.
ALBUQUERQUE, A. (2011) Desenvolvimento de uma Ontologia de Domínio para
Modelagem de Biodiversidade. Manaus: Universidade Federal do Amazonas, p. 33.
188
CAMPOS DOS SANTOS, J. L. (2003) “A Biodiversity Information System in an Open
Data/Metadatabase Architecture” Ph. D. Thesis. International Institute For GeoInformation Science and Earth Observation. Enschede, The Netherlands, June, ISBN
90-6164-214-0.
FALBO, R. (2004) “Experiences in Using a Method for Building Domain Ontologies”.
In Proceedings of the Sixteenth International Conference on Software Engineering and
Knowledge Engineering, SEKE'2004, pp. 474-477, International Workshop on
Ontology In Action, OIA'2004, Banff, Alberta, Canada, June.
PROTEGE. Protégé. Disponível por http://protege.stanford.edu/, acessado em 10/2014.
RP. Renamed ABox and Concept Expression Reasoner. Disponível por http://www.racersystems.com/products/racerpro/index.phtml, acessado em 10/2014.
1
8
9
Uso de Criptografia para Manter a Consistência dos Dados
em Redes DTN via Algoritmo MD5
José Afonso Ribeiro Serrão1, Mauro Margalho Coutinho1
1
Pós-Graduação Latu Sensu em Banco de Dados, Universidade da Amazônia
(UNAMA) Tv. Quintino Bocaiuva, 1808 – 66.035-190 Belém – PA – Brazil
[email protected], [email protected]
Abstract. This article aims to develop a system that uses Network DTN in
collecting information of Vaccination Campaigns in more distant areas of the
capital, enabling the integration of social programs. To maintain consistency
of the data was used MD5 algorithm, that from pure text generates a summary
function called "hash" of fixed size that will serve as a digital signature
document sent. As MD5 is a one-way algorithm that does not allow the return
of a ciphertext back into plaintext, we developed a method that compares two
signatures to be able to validate the information received. In creating this
method was used Java programming language that through its API
java.security.MessageDigest, allows to obtain an instance of the algorithm to
be used. In creating the Database was used PostgreSql DBMS, which has a
native function of the MD5 algorithm, and also for being a DBMS robust open
source and have safety and reliability as its main points.
Resumo. Este artigo tem como objetivo desenvolver um Sistema que utiliza a
Rede DTN na coleta das informações das Campanhas de Vacinação Infantil nas
áreas mais distantes da capital, viabilizando a integração dos programas
sociais. Para manter a consistência dos dados foi utilizado o Algoritmo MD5,
que a partir de texto puro gera uma função de resumo denominado “hash” de
tamanho fixo que vai servi como uma assinatura digital do documento enviado.
Como o MD5 é um algoritmo unidirecional que não permite o retorno de um
texto cifrado em texto puro novamente, foi desenvolvido um método que
compara as duas assinaturas para poder validar a informação recebida. Na
criação desse método foi utilizada a Linguagem de programação Java que
através da sua API java.security.MessageDigest, permite obter uma instância
do algoritmo a ser usado. Na criação da Base de Dados foi utilizado o SGBD
PostgreSql, que possui uma função nativa do algoritmo MD5, e também por ser
um SGBD robusto de código fonte aberto e que tem à segurança e
confiabilidade como seus pontos principais.
1. Introdução
O uso de redes DTN (Delay-Tolerant Networking) ou Redes Tolerantes a Atrasos em
projetos que auxiliem na inclusão digital de áreas distantes e de difícil acesso vem sendo
amplamente estudada no Brasil, especialmente na região Norte, onde esta sendo
desenvolvido um projeto de redes que utiliza barcos como mula de dados (Data MULE).
As redes CoDPON (Continuos Displacement Plan Oriented Network) ou Redes
Orientadas a Plano de Deslocamento Contínuo. São propostas com o intuito de viabilizar
190
a integração de programas sociais do governo entre comunidades remotas e grandes
centros urbanos, a baixo custo (MARGALHO, 2009).
Mas como garantir que as informações transmitidas por essas redes se mantenham
consistentes até o seu destinatário final? Sabe-se que para manter a segurança e a
integridade dos dados dos diversos ataques existentes, têm se tornado um grande desafio
para sociedade tecnológica, onde, a cada dia, são criadas novas maneiras de invadir a
segurança de sistemas, através do roubo de senha de clientes ou até mesmo se passar por
outras pessoas, conseguindo com isso acessar informações restritas de usuários ou
empresas em beneficio próprio.
Muitas técnicas e métodos são utilizados para combater esses tipos de fraudes
digitais, uma delas é o uso da Criptografia. Que tem como propósito levar uma mensagem
ou um arquivo, chamado de texto puro, e criptografá-lo em um texto cifrado de tal modo
que somente a pessoa autorizada saiba convertê-lo novamente para um texto puro
(TANENBAUM, 2009).
As assinaturas digitais tornam possível assinar mensagens eletrônicas e outros
documentos digitais de modo que elas não possam ser posteriormente repudiadas por
quem as enviou. Uma maneira comum é, primeiro, submeter o documento a um algoritmo
de resumo de sentido único que seja muito difícil de inverter. A função resumo de sentido
único em geral produz um resultado, denominado resumo (hash) de tamanho fixo e
independente do tamanho do documento original (TANENBAUM, 2009).
As funções resumo de sentido único mais conhecidas e usadas são o MD5
(message digest 5 – compêndio de mensagens 5), que produz um resultado de 16 bytes
(RIVEST, 1992), e o SHA-1 (secure hash algorithm – algoritmo hash seguro 1), que
produz que produz um resultado de 20 bytes (NIST, 1995).
Neste artigo, será apresentada uma proposta de implantação de um sistema de
vacinação, que utiliza as redes DTN na coleta dos dados das crianças e de suas respectivas
cadernetas de vacinação em municípios de difícil acesso e os mais distantes da capital, e
que depois são transferidos para um servidor central na capital Paraense, onde será feito
o teste de consistência dos dados através das assinaturas digitais criadas a partir do
algoritmo MD5.
2. Trabalhos Correlatos
A utilização da Criptografia como técnica de garantir a segurança nos sistemas de
informação, já fora estudado em vários artigos. Essa técnica é muito difundida no meio
acadêmico pelo seu alto grau de confidencialidade. Para confecção deste artigo foram
analisados alguns projetos que utilizaram as técnicas e métodos dos principais algoritmos
criptográficos inseridos no mercado.
O projeto “Desenvolvimento e Análise de um dos Algoritmos SHA-3 Finalistas
em Smart Cards” (MARQUES, 2011) teve como objetivo geral o estudo, seleção,
implementação e análise do desempenho em smart card de um dos algoritmos de hash
finalistas da terceira etapa da competição do NIST.
A cada fase da chamada pública para escolha da nova função de hash são
realizados comentários dos avaliadores e muitos artigos são escritos, avaliados e
comparados aos candidatos (NIST, 2008b).
1
9
1
A terceira e última etapa aconteceu em Dezembro de 2010, onde foram escolhidos
os cinco finalistas da competição: BLAKE, Grøstl, JH, Keccak, e Skein. Apontar falhas
principalmente de segurança e desempenho é o papel da comunidade científica até a
escolha e definição do algoritmo vencedor.
Neste contexto, o problema explorado foi à seleção consciente e justificada de um
dos algoritmos finalistas. Em seguida foi definido uma plataforma para a implementação
e testes do algoritmo selecionado, que no caso foi o smart card.
Contribuir com o esforço da comunidade científica para a criação de parâmetros
para a análise, comparação e seleção da função de hash vencedora é uma das justificativas
do projeto proposto. Este trabalho tem também como objetivo mostrar como a função de
hash escolhida se comporta dentro de uma arquitetura com grandes restrições de recursos
e processamento.
Entre os algoritmos de hash utilizados atualmente destacam-se Message-Digest
Algorithm 5 (MD5) e o Secure Hash Algorithm (SHA-1 e SHA-2). O MD5 é um
algoritmo de hash de 128 bits desenvolvido em 1991 por Ronald Rivest, Adi Shamir e
Leonard Adleman (fundadores da RSA Data Security), atualmente é muito utilizado para
verificação de integridade de arquivos e logins em softwares que utilizam o protocolo
Peer-to-Peer (P2P).
O SHA foi desenvolvido pela National Security Agency (NSA) e publicado pela
National Institute of Standards and Technology (NIST) que padronizou a função nos
EUA. Os três algoritmos SHA são diferentes estruturalmente e são conhecidos
como SHA-0, SHA-1 e SHA-2. Na família SHA-2 existem ainda quatro variantes que
possuem estruturas similares, porém geram hashs de tamanhos diferentes que são o SHA224, SHA-256, SHA-384 e SHA-512, e são utilizados atualmente em aplicações que
exijam alta segurança da integridade.
No entanto foram reportados sucessos de ataques tanto para o algoritmo MD5
(WANG et al., 2004), assim como para os algoritmos SHA-0 e SHA-1 (WANG; YIN;
YU, 2005), que geram colisões (informações diferentes que produzem hashes iguais), o
que fere o princípio das funções de hash, que é a de garantir a integridade de uma
informação.
Com esta preocupação, o NIST criou em novembro de 2008 a Competição de
Algoritmos Hash Criptográficos, que irá selecionar um algoritmo dentre os vários
inscritos na competição para suceder os algoritmos da família SHA.
Neste projeto foi escolhido o algoritmo Keccak dentre os cinco finalistas, pois
apresenta uma estrutura relativamente simples e versátil, o que facilita não só na
implementação do mesmo, mas também na compatibilidade da arquitetura do smart card
que é utilizado no projeto. Smart cards disponibilizam pouco poder de processamento e
recursos como memória, devido ao seu corpo com dimensões de alguns centímetros, por
isso é necessário que o algoritmo seja simples.
Além disso, não é foco deste trabalho acertar qual será o vencedor da competição,
mas sim criar mais um parâmetro para comparação em um dispositivo de baixo recurso
que é o smart card.
O algoritmo Keccak pertence à família de funções de esponja, que são funções de
hash que utilizam a construção em esponja (descrita na seção 4.2) para transformação ou
192
permutação de tamanho fixo para construção de uma função que a partir de uma entrada
de qualquer tamanho gere um saída de tamanho arbitrário (DAEMEN el al., 2009). Um
dos grandes atrativos desta nova função de hash é a de que a mesma pode gerar a partir
de uma entrada de tamanho variável uma saída de tamanho infinito.
Além disso, funções de esponja possuem segurança comprovada contra todos os
ataques genéricos existentes (DAEMEN et al., 2009).
O algoritmo Keccak consiste de duas partes: a função Keccak-f[b](A,RC), que
realiza as permutações e operações lógicas sobre os dados e a função de esponja
Keccak[r,c](M), que organiza e prepara os dados de entrada para realizar a manipulação
desses dados pela função de permutação e organiza os valores de saída para gerar o hash.
Smart cards são, basicamente, circuitos integrados incorporados em cartões,
geralmente com seu corpo de plástico e com dimensões de um cartão de crédito.
(RANKL, 2007). Existem cartões com outras dimensões, como por exemplo, o cartão
SIM, ou então GSM-SIM, muito utilizado atualmente em dispositivos móveis de
telecomunicação (celulares, smartphones, etc.) para a identificação, controle e
armazenamento dos dados do cliente.
O smart card apesar de ter recursos restritos vêm se tornando muito utilizado em
diversas áreas como transporte, médicas e principalmente em corporações bancárias e
telecomunicações. Áreas como as corporações bancárias requerem grande segurança e
sigilo de informações, por isso um smart card deve possuir métodos para garantir a
segurança das informações contidas dentro do cartão.
Muitos cartões atualmente vêm com a tecnologia Java Card incorporada, o que
facilita na criação e controle de aplicações (bancárias, de segurança, telecomunicações,
entre outras) pelos desenvolvedores, pelo fato de que tais aplicações são criadas com a
utilização da linguagem Java, sem a necessidade de se utilizar linguagens específicas ou
instruções de baixo nível para a implementação de aplicativos em smart cards.
Java card é a tecnologia que permite que os smart cards sejam capazes de executar
pequenos aplicativos criados na linguagem Java (com uma versão mais restrita de
recursos de programação). A tecnologia Java Card define um ambiente de execução Java
Card (JCRE, em inglês) e fornece classes e métodos para auxiliar no desenvolvimento de
aplicações. (CHEN, 2000). A tecnologia consequentemente também disponibiliza a
possibilidade de execução destes aplicativos inseridos no smart card, através do Java
Card Virtual Machine (JCVM) contido no mesmo.
Alguns dos benefícios do uso da tecnologia é que ela fornece facilidade para o
desenvolvimento de aplicações, pois usa uma linguagem de alto nível, traz vários
mecanismos de segurança, como por exemplo, o uso de firewalls para separar cada
aplicação (impedindo uma acessar outra indevidamente), possui uma independência ao
hardware, podendo ser executado um aplicativo em qualquer smart card com suporte a
plataforma Java Card, e é possível armazenar e controlar múltiplas aplicações dentro de
um mesmo cartão. (CHEN, 2000).
Neste projeto foi utilizado um leitor de cartões GemPC Twin com interface USB,
fabricado pela Gemalto e mostrado pela Fig. 14, que foi utilizado para a importação dos
aplicativos dentro do cartão e para o envio de dados. Quanto ao smart card, utilizamos
um com suporte à Java Card desenvolvido pela NXP Semiconductors¸ modelo NXP
P541G072. Para o desenvolvimento do algoritmo de hash é utilizado o ambiente de
1
9
3
desenvolvimento Eclipse, juntamente com o plugin JCOP Tools, plugin desenvolvido
inicialmente pela IBM e atualmente é de autoria da NXP Semiconductors. Todas as
tecnologias empregadas no projeto (exceto a IDE Eclipse) foram disponibilizadas pelo
Laboratório de Sistemas Integráveis Tecnológico (LSITEC) em parceria com o UNIVEM
e este projeto.
Foi observado que a função Keccak implementada neste projeto requer muito
tempo de processamento para gerar a função de hash, o que torna seu uso ineficaz. A
otimização da função deve ser realizada para diminuir este tempo e umas das formas é a
utilização da memória RAM efetivamente, que fornece uma velocidade de acesso no
mínimo 10x maior comparado à memória EEPROM.
Outro projeto envolvendo Criptografia de dados é o “Submissão Autenticada de
Ficheiros ao SIGEX” (MARTINS E CERQUEIRA, 2010) o SIGEX (Sistema de
Gestão de Exames). Após a requisição de um exame por parte de um docente, irá fornecer
uma chave privada e uma chave pública. A chave privada, será usada pelo professor e
permite-lhe submeter os enunciados da prova, recolher todas as provas submetidas pelos
alunos e controlar o tempo do exame. A chave pública é usada pelos alunos e permitelhes
aceder à página do exame, onde têm acesso aos enunciados e podem submeter a sua
prova. Em termos gerais são estas as funcionalidades do SIGEX, mas existem alguns
problemas do foro da segurança que serão detalhados.
Apesar de todas as funcionalidades deste serviço, actualmente não existe forma
de saber se o exame que o professor vai corrigir é o mesmo que o aluno submeteu. O
ficheiro pode ser alterado no intervalo de tempo entre a submissão e recolha enquanto
está alojado nos servidores do CICA. É também importante referir que na altura do exame
o aluno tem os recursos limitados, ou seja, uma forma de assinatura através de uma chave
numa pen-drive não é viável. Para colmatar estas falhas de segurança e fazer face às
limitações impostas surgiu este artigo.
A ferramenta desenvolvida tem como objectivo garantir:
● Integridade dos ficheiros submetidos, ou melhor, permite detectar se a
integridade desses mesmos ficheiros foi posta em causa, quer por alteração quer
por destruição;
● Autenticidade das entidades envolvidas, isto é, as entidades são quem dizem ser;
● Irretractibilidade, ou seja, as entidades envolvidas não podem negar a sua
identidade.
Para o desenvolvimento da aplicação foi utilizada criptografia baseada em
cifragem irreversível (uni-direccional). A ideia chave deste tipo de criptografia é calcular
um número (denomindo hash value) que seja característico de um texto ou ficheiro. Uma
das principais vantagens é o facto do texto original não ser recuperável após ser aplicado
o algoritmo.
É bastante utilizado em situações que se pretende criar um canal de comunicação
que favoreça autenticação entre as entidades envolvidas e verificação de integridade das
mensagens trocadas.
As propriedades de um algoritmo irreversível são:
●
Simplicidade - a codificação do texto original é fácil;
194
●
Não Reversabilidade - é impraticável inverter a sua função;
● Unicidade - é actualmente, computacionalmente impossível, encontrar
dois textos P1 e P2 tal que H(P1) = H(P2);
O algoritmo unidireccional utilizado nesta aplicação é o MD5 (Message Digest
5), desenvolvido em 1991 por Ronald Rivest MD4, usado especialmente para verificação
de integridade em mensagens em que o número resultante da aplicação da função tem
128 bits.
Um esquema da criptografia utilizada na aplicação após a submissão no sistema
SIGEX está ilustrada na figura seguinte:
Figura 1. Esquema da criptografia utilizada na aplicação após a submissão no
sistema SIGEX. Fonte: (MARTINS E CERQUEIRA, 2010)
O sistema inicialmente calcula um hash value do ficheiro submetido utilizando o
algoritmo MD5 e transforma-o num código fixo de 128 bits. Esse ficheiro F é
concatenado à palavra-passe PWa do aluno que submeteu o ficheiro e é calculado através
do mesmo algoritmo um código P. Esta palavra-chave do aluno é introduzida pelo aluno
após a submissão do ficheiro e o respectivo pedido de recepção dos códigos para
verificação de adulteração de dados.
O código P calculado anteriormente é novamente concatenado a uma palavrapasse
do conhecimento do CICA e transformada através do algoritmo MD5 um código Q.
Posteriormente, para a validação de ambas as palavra-passe, será calculado um
código auxiliar L para esta função como na figura seguinte:
1
9
5
Figura 2. Cálculo da função que gera o código auxiliar L. Fonte: (MARTINS E
CERQUEIRA, 2010).
L é obtido através do hash da concatenação da palavra-passe do CICA e do aluno.
Posteriormente os códigos P, Q e L são enviados para o email que o aluno especificou na
altura em que submeteu o ficheiro correspondente ao resultado do exame e após ter feito
um pedido de recepção dos códigos para verificação de adulteração de dados.
Figura 3. Envio dos códigos P, Q e L para o e-mail especificado. Fonte:
(MARTINS E CERQUEIRA, 2010)
O aluno, quando suspeita de alteração e adulteração de dados do ficheiro que
submeteu anteriormente (através de, por exemplo, uma nota de um exame diferente que
a esperada), deve dirigir-se à entidade de disponibilizou o SIGEX (neste caso, o CICA)
para proceder à validação e teste dos códigos P, Q e L com o ficheiro submetido.
Após a introdução dos códigos (P, Q e L), ficheiro F submetido e a palavrapasse
do aluno, é efectuada a primeira validação que corresponde à verificação de alteração dos
códigos P e Q, ou seja, são comparados os ficheiros Q e a hash obtida da junção de P com
a palavra-passe do CICA.
196
Figura 4. Primeira validação correspondente a verificação de alteração dos
códigos P e Q. Fonte: (MARTINS E CERQUEIRA, 2010)
Uma comparação equalitativa positiva valida os códigos introduzidos e o sistema
passa à próxima validação, se essa igualdade não for verificada não é possível continuar
devido à possibilidade dos códigos terem sido modificados pelo aluno.
A segunda validação tem como objectivo a detecção de um erro na introdução das
palavras-passe pelo aluno e pelo CICA.
Figura 5. Segunda validação de detecção de erro na introdução das palavraspasse pelo aluno. Fonte: (MARTINS E CERQUEIRA, 2010)
É utilizada uma comparação entre o hash value da concatenação de ambas as
palavras-passe e o código L anteriormente enviado para o email do aluno. Se essa
igualdade for verificada as palavras-passe inseridas estão correctas, se não for esse o caso
as palavras-passe estão incorrectamente inseridas.
A fase de teste é o objectivo do projecto, ou seja, verificar a adulteração de dados
do ficheiro submetido no SIGEX.
1
9
7
Figura 6. Comparação entre as hash value envolvidas. Fonte: (MARTINS E
CERQUEIRA, 2010)
Para verificar a adulteração de dados do ficheiro submetido é calculado do mesmo
o MD5 e posteriormente utilizado no cálculo do mesmo algoritmo utilizando a sua
concatenação com a password inserida pelo aluno. O sistema verifica se o código P será
igual a esse valor. Se o teste for positivo então não houve adulteração de dados do
ficheiro. Se o teste for negativo então o ficheiro submetido foi modificado, e o aluno
poderá reclamar da nota que lhe foi atribuída.
As tecnologias utilizadas para a implementação desta aplicação são:
● HTML - utilizada para o desenvolvimento das páginas web;
● PHP - utilizada para o desenvolvimento das páginas web e para a aplicação dos
algoritmos de encriptação;
● Javascript - utilizada para a validação dos e formulários e interacção com a páginas
web;
● CSS - utilizada para definir a apresentação das páginas web;
Os possíveis ataques ainda são baseado no brute-force, é o ataque de aniversário,
que, reduz para o número de entradas a testar para 2⁶⁴, o que ainda é considerável.
Outra forma de conseguir ludibriar o sistema, é o aluno conseguir de alguma
forma, conseguir descobrir a palavra-passe do CICA. A segurança desta palavra passe,
que estará armazenada num ficheiro, ficará a cargo do CICA. Deverá tentar, através de
criptografia ou de outros métodos, manter a palavra-passe protegida de acessos não
autorizados.
Existe ainda a possibilidade, considerada muito remota, de haver colisões. Ou
seja, diferentes ficheiros produzirem a mesma hash, ainda assim teriam de acontecer 4
colisões simultâneas (número de vezes que o algoritmo é aplicado), o que é altamente
improvável e só uma infeliz coincidência poderia produzir esse resultado.
A aplicação desenvolvida, se aplicada, forma uma mais valia tanto para o aluno,
como para o professor e o CICA. O aluno poderá reclamar caso suspeite de uma alteração
dos dados.
198
Desta forma impede-se que um sujeito com intenção de prejudicar o aluno, altere
o ficheiro submetido, e impede também que o aluno tente melhorar o seu exame depois
do prazo de submissão.
Estas vantagens poderiam tornar-se realidade com uma simples alteração do
sistema actual e que achamos ser de fácil implementação. Isto permitiria evitar situações
desagradáveis, tornando o sistema mais seguro e consistente.
3. Segurança via algoritmo MD5
O algoritmo MD5 foi desenvolvido em 1991 por Ronald Rivest para suceder ao MD4 que
tinha alguns problemas de segurança. Por ser um algoritmo unidirecional, uma hash md5
não pode ser transformada novamente no texto que lhe deu origem. O método de
verificação é, então, feito pela comparação das duas hash (uma da mensagem original
confiável e outra da mensagem recebida).
O MD5 também é usado para verificar a integridade de um arquivo através, por
exemplo, do programa md5sum, que cria a hash de um arquivo e o compara com outro
arquivo, isto se tornar útil para downloads de arquivos grandes, para programas P2P que
constroem o arquivo através de pedaços e estão sujeitos a corrupção dos mesmos.
O MD5 é de domínio público para uso em geral. A partir de uma mensagem de
um tamanho qualquer, ele gera um valor hash de 128 bits; com este algoritmo, é
computacionalmente impraticável descobrir duas mensagens que gerem o mesmo valor,
bem como reproduzir uma mensagem a partir do seu digest. O algoritmo MD5 é utilizado
como mecanismo de integridade baseado em vários protocolos padrão da Internet
(RFC1352, RFC1446, etc.), bem como pelo CERT e CIAC. (VALE, Christiano Rodarte.
Criptografia
MD5.
Em:
http://www.devmedia.com.br/criptografiamd5/2944.>.
Acessado em: 15 ago 2013.).
3.1 Vulnerabilidade
Como o MD5 faz apenas uma passagem sobre os dados, se dois prefixos com o mesmo
hash forem construídos, um sufixo comum pode ser adicionado a ambos para tornar uma
colisão menor provável. Deste modo é possível que duas Strings diferentes produzam o
mesmo hash. O que não garante que a partir de uma senha criptografada específica
consiga-se a senha original, mas permite uma possibilidade de decifrar algumas senhas a
partir
de
um
conjunto
grande
de
senhas
criptografadas.
(Em:
<http://pt.wikipedia.org/wiki/MD5#Vulnerabilidade>. Acessado em 15 ago 20013.).
Para aumentar a segurança em alguns sistemas, usa-se a tática de adicionar um
texto fixo no texto original a ser criptografado. Deste modo se o texto fixo for "João” e a
senha for "1234", a pseudo-senha poderá ser "João1234" e assim mesmo que alguém
tenha o MD5 de 1234 por ser uma senha comum ele não terá de “João1234”, gerando
uma hash totalmente diferente. Na tabela 1 é feito um comparativo entre as senhas:
Tabela 1. Comparativo entre as hash criadas via MD5.
SENHA
RESULTADO CRIPTOGRAFADO
1234
81dc9bdb52d04dc20036dbd8313ed055
1
9
9
João1234
72802792f53d9807551ec3c08a5b8a81
Vale ressaltar que o simples fato de se colocar um espaço em branco ou qualquer
outro caracter entre os demais caracteres muda-rá totalmente o resultado final da hash
criada.
4. Redes DTN
Redes tolerantes a atraso (DTN) é uma arquitetura de redes de computadores que visa
minimizar os problemas técnicos em redes heterogêneas nas quais pode haver falta de
conectividade de rede contínua (queda de Internet). Exemplos de tais redes são as redes
móveis, ou de ambientes extremos (guerras, resgates, acidentes etc.), ou redes planejadas
para o espaço.
Recentemente, o termo redes tolerantes a “rompimento” (Disruption-Tolerant
Networking - DTN) ganhou espaço nos Estados Unidos, devido ao apoio da DARPA
(Defense Advanced Research Projects Agency), ou Agência de Projetos de Pesquisa
Avançada de Defesa, que fundou vários projetos relacionados a DTN. Esse rompimento
pode ocorrer por causa dos limites do alcance da wireless, dispersão dos nós móveis,
recursos
energéticos,
ataques
e
ruído(interferência).
(Em:
<http://pt.wikipedia.org/wiki/Delay-tolerant_networking>. Acessado em: 15 ago 2013.).
4.1. Roteamento
A habilidade de transportar ou rotear dados de uma fonte para um destino é fundamental,
e todas as redes de comunicação devem tê-las. As Redes DTN, são caracterizadas pela
falta de conectividade, resultando na falta de caminhos fim-a-fim instantâneos. Nesses
ambientes desafiadores, protocolos de roteamento populares de adhoc, como o AODV e
o DSR falham em estabelecer rotas. Isso se deve ao fato desses protocolos tentarem
primeiramente estabelecer uma rota completa, e então, após a rota ter sido estabelecida,
encaminhar os dados. No entanto, quando caminhos fim-a-fim são difíceis ou impossíveis
de se estabelecer, protocolos de roteamento devem tentar uma estratégia “armazenar e
encaminhar” (store and forward), onde os dados são movidos incrementalmente e
armazenados por toda a rede, esperando-se que eles irão eventualmente atingir o seu
destino.
Uma técnica comum usada para maximizar a probabilidade de uma mensagem ser
transmitida com sucesso é replicar várias cópias da mensagem (roteamento de epidemia)
na esperança de que uma delas terá sucesso atingindo o seu destino. Isso é factível apenas
em redes com grandes quantidades de armazenamento local e largura de banda entre os
nós proporcional ao tráfego esperado. Em vários cenários, essa ineficiência é superada
pela eficiência crescente e pelos tempos de entrega reduzidos possibilitados tomando-se
a maior vantagem possível de oportunidades de encaminhamentos não agendados
disponíveis. Em outros (cenários), onde o armazenamento disponível e as oportunidades
entre os nós são mais restritos, um algoritmo menos imparcial é necessário.
4.2. Segurança
Tratar os problemas de segurança nas redes DTN, têm sido um dos seus maiores
obstáculos. As preocupações envolvendo esse tipo de rede variam dependendo do
ambiente e da aplicação, apesar de que os problemas de autenticação e privacidade
200
tendem a ser críticos. Essas garantias de segurança são difíceis de se estabelecer numa
rede sem conectividade persistente, porque a rede coloca entraves em protocolos
criptográficos complicados, na troca de chaves, e cada dispositivo deve identificar outros
dispositivos intermitentemente visíveis. Soluções originais da comunidade de pesquisa
de tolerância a atraso incluem:
1) O uso de encriptação baseada em identidade, que permite que nós recebam
informação encriptada com seu identificador público; e
2) O uso de tabelas de falsificações evidentes, com um protocolo “fofoqueiro”. (Em:
<http://pt.wikipedia.org/wiki/Delay-tolerant_networking>. Acessado em: 15 ago
2013.).
5. Estudo de caso
O Sistema DTN de Vacinação tem como proposta a implantação de um sistema de
vacinação que utiliza as redes DTN na coleta das informações das crianças e de suas
respectivas cadernetas utilizando Mula de Dados, para colher essas informações. Assim
como no projeto CoDPON que tem como proposta viabilizar a integração de programas
sociais do governo entre comunidades remotas e grandes centros urbanos, a baixo custo.
A proposta é resumida na Figura 7 e mostra o uso da malha hidrográfica para permitir o
acesso de localidades remotas aos sistemas do governo.
Figura 7. InfraEstrutura Fim a Fim CoDPON. Fonte: (Margalho, 2009)
A criptografia no Sistema DTN de Vacinação, tem como objetivo manter a
consistência dos dados obtidos, e para isso foi desenvolvido um método em linguagem
de programação Java com o JDK (Java Development Kit) ou quite de desenvolvimento
para aplicações em Java; a API (Application Programming Interface) ou Interface de
Programação de Aplicativos, Message Digest (java.security.MessageDigest), que
permite obter uma instância do algoritmo a ser usado no método; o NetBeans IDE
(Integrated Development Environment) ou Ambiente de Desenvolvimento Integrado, que
permite o desenvolvimento de aplicações Java desktop, móvel e aplicações para Internet,
além de fornecer suporte para outras linguagem de programação como PHP, C/C++,
Python.
Para criar a base de dados foi utilizado o PostgreSql SGBD (Sistema de
Gerenciamento de Banco de Dados) relacional, que já possui uma função nativa para
criptografar os dados da coluna seleciona e também por ser um SGBD robusto de código
fonte aberto e que tem à segurança e confiabilidade como seus pontos principais.
2
0
1
O sistema utiliza criptografia com cifragem irreversível (uni-direcional), fazendo
apenas uma passagem que criará a hash. Essa hash servirá como assinatura digital do
novo objeto, e será formada a partir da soma de todos os campos da tabela selecionada
com uma variável CONSTANTE, do tipo private static final, que terá um valor único e
inalterável, como mostra a figura 8.
Figura 8. Criação da hash que servirá como assinatura digital do objeto criado
A figura 9, mostra, a criação do script sql (Structured Query Language) ou
Linguagem de Consulta Estruturada de inserção com a função MD5( ), que criptografa o
campo “MD5” da tabela “criança” criando a hash que vai ser usada como assinatura
digital da tupla na hora da realização do teste de consistência dos dados.
Figura 5. Criação do script de inserção e criptografia via algoritmo MD5( )
A interface gráfica do Sistema DTN de Vacinação, foi desenvolvida com a API
do Java GUI Swing (javax.swing), que apresenta um mecanismo amigável ao usuário para
interagir com o sistema.
Uma GUI (graphical user interface) dá ao aplicativo uma ‘aparência’ e um
‘comportamento’ distintos. Fornecer aos diferentes aplicativos componentes de interface
com o usuário consistentes e intuitivos permite, de certa maneira, que ele se familiarize
com um aplicativo, para que possa aprendê-lo mais rapidamente e utilizá-lo com mais
produtividade. (DEITEL, 2005).
A figura 10 mostra a tela inicial do Sistema e o formulário de cadastro de criança
que informa se os dados foram cadastrados com sucesso no banco de dados.
202
Figura 6. Interface Gráfica do Sistema DTN de Vacinação
Após a confirmação, as informações referentes à criança cadastrada são
armazenadas no banco de dados PostgreSql, que vai fazer o gerenciamento de cada
informação de acordo com as regra estabelecidas pelo sistema.
Para fazer a confirmação que a criança realmente foi cadastrado no banco basta
acessar a opção Execute arbitrary SQL queries, do PostgreSql, e realizar uma consulta
do tipo select * from, e o nome da tabela neste caso CRIANCA, para retornar todos os
campos da tabela ou selecionar os campos mais relevantes, neste caso, por questões de
visualização vão ser apresentados apenas 04 (quatro), e em destaque esta o ultimo registro
inserido na tabela CRIANCA e a sua respectiva assinatura digital no campo md5.
Figura 7. Tela do Execute arbitrary SQL do PostgreSql retornando a consulta
solicitada
2
0
3
Quando as diversas bases de dados se sincronizarem com o servidor principal
serão realizados testes de consistência das informações recolhidas pelas mulas de dados.
Através das assinaturas digitais, para saber se a informação não está corrompida ou se
houve tentativa de fraudar o sistema.
Esse processo utiliza um ArrayList da API (java.util.ArrayList), porque como o
algoritmo MD5 é unidirecional não há uma maneira de decifrá-lo. A única maneira de
saber se as assinaturas digitais são iguais, é fazendo uma comparação entre a assinatura
salva no banco de dados com uma nova assinatura gerada a partir de um loop, que vai
percorrer novamente todos os campos do objeto e soma-los novamente com a mesma
variável do tipo CONSTANTE, e armazená-la em uma posição do ArrayList que será
novamente criptografado, só que agora pela função messageDigest que vai gerar uma
nova hash e armazená-la e uma nova variável do tipo String e assim compará-las.
Figura 8. Trecho do código de criação da nova hash que será usada na
comparação entre as assinaturas
Em seguida é feita a comparação entre as assinaturas digitais através do método
equalsIgnoreCase() da linguagem Java. Se as assinaturas forem iguais, o campo
areaTeste irá receber a informação que os dados referentes aquela criança estão
“CONSISTENTES!”, senão, houve algum problema e é informado que os dados daquela
criança estão “INCONSISTENTES!”.
204
Figura 9. Trecho do código que compara as duas assinaturas
Para ter acesso ao Teste de Consistência do Sistema DTN de Vacinação, basta ir
até a opção “Arquivo” no menu principal e acessar a opção “Teste de Consistência”, que
será exibida a tela do teste, e para realizá-lo basta clicar no botão Executar
Figura 10. Interface da Tela inicial e do formulário que executa o Teste de
Consistência do Sistema DTN de Vacinação
6. Conclusão
O Sistema DTN de Vacinação foi desenvolvido, com a finalidade de manter a
consistência das informações no processo de coleta nas redes DTN. Tendo a criptografia
como sua ferramenta principal. O uso do algoritmo MD5 impede que seja feito qualquer
tipo de alteração nas informações colidas pelas mulas de dados, gerando uma assinatura
2
0
5
digital única para cada tupla inserida na base de dados do sistema que é usada no teste de
consistência das informações.
Para isso foi criado um ambiente de desenvolvimento que utiliza as principais
tecnologias no mercado como a linguagem de programação Java e suas API’s, a IDE
Netbeans e o SGBD PostegreSql. Todos softwares possuem licença gratuita, o que torna
viável o desenvolvimento do sistema principalmente para programas sociais do governo,
que tenta levar a integração social entre as comunidades de difícil acesso e as grandes
cidades.
Referências
CRIPTOGRAFIA MD5. Entre no mundo da criptografia, conheça os usos desta técnica
e saiba como proteger seus dados utilizando a criptografia MD5. Disponível em: <
http://www.devmedia.com.br/criptografia-md5/2944 >. Acessado em: 15 ago 2013.
DEITEL, H.M. Java como programar. 6º ed. São Paulo: Pearson Prentice Hall, 2005. P.
373.
MARQUES Fernando Yokota. Desenvolvimento e Análise de um dos Algoritmos sha3
Finalistas em Smart Cards. Marília, novembro de 2011. Projeto de
Graduação(Bacharel em Ciências da Computação) Centro Universitário Eurípides de
Marília – UNIVEM, 2011.
Martins, José; Cerqueira Marcelo, Submissão Autenticada de Ficheiros ao SIGEX.
Cidade do Porto, julho de 2010.
NIST (National Institute of Standards and Technology). FIPS Pub. 180-1, 1995.
TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 3 ed. São Paulo: Pearson
Prentice Hall, 2009. 382p e 384p.
WIKIPÉDIA.
Delay-tolerant
networking.
Disponível
em:
<
http://pt.wikipedia.org/wiki/Delay-tolerant_networking >. Acessado em: 15 ago 2013.
WIKIPÉDIA. MD5. Disponível em: < http://pt.wikipedia.org/wiki/MD5 >. Acessado em:
15 ago 2013.
206
Uso de redes DTN para coleta automatizada de dados
oriundos de radares de trânsito da Região Metropolitana de
Belém
Jessica Santos1, Heverson Silva 1, Mauro Margalho1
1
Centro de Ciências Exatas e Tecnologias – Universidade da Amazônia (Unama) Av.
Alcino Cacela, 287 – 66.060-902 – Belém – PA – Brasil
[email protected], [email protected], [email protected]
Abstract. This paper presents a new proposal to collect data and information
(such as fines and infractions) radar located in the Metropolitan Region of
Belém and transfer this information efficiently to AMUB (Municipality Urban
Mobility of Belém) using the buses that travel in RMB. These vehicles use a
receiver that collects the information from radar. However, connectivity
between the radar and the bus will not continuously, so it is necessary to use
network DTN (Delay / Disruption Tolerant Network).
Resumo. Este artigo apresenta uma nova proposta para coletar dados e
informações (como multas e infrações) de radares localizados na Região
Metropolitana de Belém e transferir essas informações de forma eficiente, para
a AMUB (Autarquia de Mobilidade Urbana de Belém), utilizando os ônibus que
trafegam na RMB. Esses veículos utilizam um receptor que coleta as
informações dos radares. No entanto, a conectividade entre o radar e o ônibus
não se dá de forma contínua, dessa forma é necessária a utilização de Redes
DTN (Delay / Disruption Tolerant Network).
1. Introdução
A melhoria de qualidade da mobilidade urbana tem sido um enorme desafio às
autoridades brasileiras. Muito desse problema se deve à falta de planejamento associada
ao crescimento das grandes metrópoles. Sem espaços para estacionar e com o aumento
quase que exponencial da frota de automóveis e motocicletas, o trânsito se torna caótico,
especialmente por causa das frequentes infrações cometidas por motoristas impacientes e
imprudentes. Em muitos casos, a única forma de minimizar o desrespeito ao Código
Nacional de Trânsito é através dos sistemas de fiscalização eletrônica instalados em
pontos estratégicos das grandes cidades. Na maioria dos casos, esses sistemas de
monitoramento não possuem nenhuma conectividade com as entidades reguladoras de
trânsito, sendo a coleta dos dados feita manualmente, dentro de uma periodicidade
previamente definida. Isso ocorre não somente por restrições da tecnologia, mas
principalmente pelos custos associados a esse processo. Este artigo propõe a utilização
de uma rede colaborativa de mula de dados, baseada no princípio de redes tolerantes a
atrasos e desconexões ou Delay Tolerant Network (DTN), como forma de automatizar a
coleta dos dados dos radares de forma simples e a baixo custo. O estudo de caso, feito
através de simulação na Região Metropolitana de Belém (RMB), aponta claramente para
a viabilidade da proposta, assim como diminui significativamente o intervalo de coleta
dos dados de infrações, tornando o processo mais ágil e barato.
2
0
7
Os radares são equipamentos responsáveis pela fiscalização eletrônica das vias
urbanas e, em geral, ficam localizados em vias muito movimentadas ou naquelas que
registram as maiores estatísticas de acidentes. Esses radares são compostos, em sua
maioria, por sensores que enviam pulsos eletromagnéticos até os computadores de
medição, nos quais são realizados os cálculos que indicam a velocidade na qual os
motoristas trafegam pelas vias. Sendo confirmado o excesso de velocidade, as câmeras
registram e armazenam a imagem da placa do veículo. Os equipamentos mais sofisticados
já possuem algoritmos de reconhecimento de padrões que conseguem capturar as
informações obtidas nos registros de vídeo e convertê-las em formato apropriado ao
banco de dados.
Na Região Metropolitana de Belém, o recolhimento desses dados ainda ocorre de
forma totalmente manual. Neste caso, os técnicos se deslocam até os radares, coletam os
dados e, em seguida, retornam à entidade gestora do sistema de transporte e de trânsito
que, neste estudo de caso, chama-se AMUB (Autarquia de Mobilidade Urbana de Belém).
Este artigo propõe o uso de redes DTN para a realização da coleta e da transferência dos
dados obtidos pelos radares.
2. Redes Tolerantes a Atrasos e Desconexões (Delay/Disruption Tolerant
Network)
As Redes DTN constituem uma arquitetura de rede que pode ser entendida como uma
rede sobre redes heterogêneas, onde cada uma é chamada de região DTN.
Esse tipo de rede se utiliza de armazenamento persistente e comutação de
mensagens para se comunicar entre regiões onde diferentes redes trocam mensagens
específicas. No entanto, essas regiões só conseguem se comunicar devido à arquitetura
DTN implementar uma camada abaixo da camada de aplicação, e acima da camada de
transporte do protocolo TCP/IP, chamada de Camada de Agregação (Bundle Layer). Esta
sobrecamada se utiliza de um único protocolo para comunicação entre diversas redes
DTN [Memória et al. 2007].
As aplicações de redes DTN trocam mensagens de tamanhos variados, que
mensagens são modificadas pela Camada de Agregação em uma ou várias unidades de
dados de protocolos denominados de agregados que, através do dispositivo de
armazenamento embutido, são armazenados e enviados pelos nós de Redes DTN.
No contexto desta proposta, os nós da rede podem ser: um host, que envia e/ou
recebe mensagens dos radares ou dos transportes coletivos, mas não as repassa; um
roteador, que encaminha mensagens entre uma única rede DTN; ou um gateway, que
encaminha mensagens entre duas ou mais regiões DTN. Esse tipo de rede pode operar
utilizando diferentes protocolos de roteamento. Como exemplo, pode-se referenciar o
First Contact Router, o Epidemic Router, o Direct Delivery Router e o Spray And Wait
Router. No protocolo de roteamento First Contact Router, o nó de origem envia a
mensagem para o primeiro nó com o qual vier a estabelecer uma conexão. O nó, em
seguida, transmite a mensagem para a primeira região DTN que estabelece contato e,
assim, até que ocorra a transmissão completa da mensagem ao seu destino final [Jain et
al.2004]. Já no protocolo Epidemic Router, os pacotes se espalham pelos nós da rede
quando um deles entra no alcance de transmissão de outro. Neste caso, quando é
estabelecida uma conexão, os pacotes ficam armazenados e transmitidos, aleatoriamente,
ao entrarem em contato [Campos et al. 2010]. Esse protocolo alastra a mensagem como
208
se fosse uma epidemia, já que, quanto mais cópias da mensagem forem enviadas, maiores
serão as chances de entrega e menor o atraso. [Villares et al. 2013].
O protocolo Direct Delivery Route permite que o nó de origem só transmita uma
mensagem se o próximo contato for diretamente com o nó de destino [Rashid et al. 2011],
e o protocolo Spray and Wait Router tem o objetivo de gerar um número pequeno de
cópias, para que o número de transmissões seja menor e controlado. Este protocolo
consiste em duas fases: o Spray, que distribui um determinado número de vezes a mesma
mensagem e, se não encontrar o destinatário, a segunda fase, Wait ou o estado de espera,
é acionada. Neste estado, os nós permitem uma entrega diretamente ao destinatário
[Spyropoulos et al. 2005].
Em uma rede DTN, existem diversos tipos de contato, dentre os quais destacamse:
contatos oportunistas, persistentes, contatos sob demanda, programados e os previsíveis.
Os Contatos Oportunistas são aqueles que acontecem sem serem previamente
programados. Neles um nó emissor e um nó receptor estabelecem contato em momento
não planejado, neste caso os nós DTN, ao se movimentarem, podem fazer contato e troca
de informações no momento em que o contato oportunista ocorre, bastando encontrar-se
dentro da área de cobertura de outro nó DTN. Já no tipo de Contatos Persistentes as
variações de contatos sempre está disponível [Oliveira et al. 2007].
O Contato sob Demanda caracteriza-se pela solicitação de uma ação, a qual o nó
de origem envia um sinal wake-up (“acordar”) para um nó de destino que se encontra em
standy by (“adormecido”), e este altera seu estado para um estado wake-up. A partir de
então, passa a atuar como um contato persistente, enviando ou recebendo informações. O
Contato Programado caracteriza-se pelo agendamento de horários para a comunicação
entre os nós DTN, antes da troca efetiva das informações, sendo necessário estes horários
de comunicação serem previamente estabelecidos entre os nós DTN comunicantes. Já os
Contatos Previsíveis são aqueles em que os nós das Redes DTN conseguem manter
contato fazendo uma previsão de horário e duração dos contatos com base em um
histórico de contatos previamente armazenados [Memória et al. 2007].
2.1. Data Mule (Mula de Dados)
Diversos projetos já foram desenvolvidos com objetivos de reduzir os níveis de exclusão
tecnológica em regiões sem infraestrutura de comunicação. Esses projetos utilizam uma
tecnologia alternativa chamada de mula de dados (Data MULE) para fazer o transporte
de dados entre essas regiões. “O termo MULE é um acrônimo Mobile Ubiquitous LAN
Extensions usado por [Shah et al. 2003]. Uma mula de dados representa um dispositivo
móvel que recolhe dados em um campo de sensores fisicamente, visitando nó a nó em
uma rede de sensores, para coletar os dados. As mulas possuem grande capacidade de
armazenamento e se comunicam com os pontos de acesso. Mulas de dados podem ser
ônibus, motos, caminhões, pessoas, animais e barcos” [Ferreira and Coutinho 2009]. No
contexto do trabalho proposto, as mulas de dados são os ônibus que trafegam na Região
Metropolitana de Belém, conforme ilustra a Figura 1.
2
0
9
Figura 1. Cenário Proposto (RMB)
3. Metodologia e Ferramentas
Para avaliar o desempenho e, consequentemente, a viabilidade desta proposta, optou-se
pela técnica de simulação. Para tanto, foi utilizado o software “The Opportunistic
Network Environment Simulator” The ONE [Keranen and Ott 2009] apresentado na seção
3.1. Para compor o ambiente de simulação, foram selecionados oito radares baseados em
pontos fixos e localizados nos principais pontos na RMB. Também foram consideradas
nove linhas de ônibus urbanos, cujas rotas possibilitam contatos oportunísticos com os
radares, conforme descrito na Tabela 1.
Tabela 1. Localização dos Radares e Linhas de Ônibus na RMB
Radares
Localização
Coordenadas Geográficas
Radar 01
Av. João Paulo II.
Latitude: 1°25'45.91"S/ Longitude: 48°26'51.54"O
Radar 02
Av. Roberto Camelier X R. dos
Mundurucus.
Latitude:1°27'52.17"S/ Longitude: 48°29'33.01"O
Radar 03
Av. Nazaré X Tv. Dr. Moraes.
Latitude: 1°27'13.00"S/ Longitude: 48°29'28.22"O
Radar 04 A Av. Gov. José Malcher X Castelo Branco.
Latitude: 1°26'54.46"S/ Longitude: 48°28'14.97"O
Radar 05
Av. Conselheiro Furtado X Tv. Alc. Cacela.
Latitude: 1°27'23.17"S/ Longitude: 48°28'37.91"O
Radar 06
Rua Antônio Barreto X Tv. 14 de Abril.
Latitude: 1°26'32.47"S/ Longitude: 48°28'19.21"O
Radar 07
Av. Duque de Caxias X Tv. Mauriti.
Latitude: 1°26'0.24"S/ Longitude: 48°27'50.54"O
Radar 08
Tv. José Bonifácio X Barão do Igarapé Miri.
Latitude: 1°28'3.07"S/ Longitude: 48°28'6.85"O
Linhas de Ônibus
UFPA Padre Eutíquio, Cremação Alcino Cacela, UFPA Alcino Cacela, UFPA Tamoios, UFPA Ver o Peso,
Cremação Estrada Nova, UFPA Pedreira, Pedreira Lomas e Cidade Nova 6.
210
Para mapear e analisar a trajetória das linhas de ônibus selecionadas, utilizou-se
o software Maverick GPS Navegation (Versão 1.6), disponível gratuitamente na
plataforma Android. Esse software viabilizou o traçado das rotas, além de coletar dados
como a distância, velocidade média e tempo do percurso. O Maverick, ao traçar a rota,
gera um arquivo no formato “.gpx”, que pode ser importado e visualizado no Google
Earth.
O objetivo foi obter uma referência para ser usada na modelagem do ambiente a
ser feita no software de georeferenciamento chamado OpenJump. O Open Jump é um
software baseado em um Sistema de Informação Geográfica de código aberto (SIG),
escrito na linguagem de programação Java [Open Jump 2012], que permite a criação de
modelos representativos do ambiente real feito em escala. Os pontos representados pelos
radares, a agência reguladora AMUB e as rotas dos ônibus foram modelados neste
software com vistas à geração de arquivos no formato “.wkt”, que são reconhecidos pelo
simulador The One. A Figura 2 ilustra as rotas e as trajetórias traçadas no Software Open
Jump.
Figura 2. Rotas dos ônibus e radares no Open Jump
3.1. O Simulador de Redes Oportunísticas “The One”
O “The One Simulator” é um simulador gratuito, desenvolvido em Java, cujo objetivo é
a investigação em Redes Tolerantes a Atrasos e Desconexões (DTN’s). Ele permite aos
usuários criar cenários com base em diferentes modelos de movimento e, também, oferece
uma estrutura para a implementação de diferentes protocolos de roteamento.
Ao avaliar o desempenho de protocolos de DTN, é importante ressaltar que eles
são parametrizados sob diferentes configurações, que podem ser ajustadas para coincidir
com o cenário de aplicação pretendida. Este software permite uma visualização interativa
e ferramentas de pós-processamento para apoiar a avaliação das simulações, além de
produzir uma variedade de relatórios de movimentos dos nós, desde repasse de
mensagens até a apresentação de estatísticas gerais [Keranen and Ott 2009].
2
1
1
O software “The One” permite a inclusão de arquivos no formato “.wkt” para
implementar os modelos de movimento. Os arquivos “.wkt” consistem em uma
linguagem de marcação para representar vetores geométricos, inclusive mapas [Villares
at al. 2013].
4. Parametrização da Simulação
Para simular um cenário realista, foram consideradas as características do tráfego urbano
baseadas nos dados coletados pelo software Maverick. Com exceção dos radares de
fiscalização, os nós móveis foram configurados para se deslocarem de acordo com as
rotas das linhas pré-estabelecidas. Neste caso, os ônibus partem de um terminal e
trafegam na RBM em formato de anel, retornando, ao final, para o ponto de partida.
Durante o percurso, os ônibus podem realizar a aquisição dos dados sempre que
estiverem dentro do alcance da rede sem fio acoplada aos radares, conforme ilustrado na
Figura 3. Cabe ressaltar, que a transferência de dados é realizada somente quando os
ônibus estiverem dentro da área de cobertura das redes IEEE 802.11 associadas aos nós
DTN instalados.
Os parâmetros de simulação foram definidos com base nas rotas dos ônibus e
localização dos radares, conforme apresentado na Tabela 02.
Figura 3. Simulação com o Software The One
Tabela 2. Parâmetro das Simulações
Período de Simulação.
24h.
Interface de Rede dos Equipamentos DTN.
Wi-Fi (802.11b – Ad hoc)
Velocidade de Transmissão de dados.
1375 kbps.
212
Alcance da comunicação durante o contato oportunista.
100 m.
Tamanho das mensagens.
500k a 3000 k.
Protocolo de Roteamento.
Epidemic Router.
Numero de mensagens criadas.
971.
Velocidade dos nós.
14,4km/h–21,6 km/h.
5. Resultados
Nesta seção, serão analisados os resultados obtidos através das várias simulações
realizadas. A primeira simulação utiliza como parâmetro principal a quantidade de ônibus
em cada linha. O objetivo é verificar como esta quantidade influencia no desempenho das
mensagens entregues. O número de linhas de ônibus analisadas foi nove e o protocolo de
roteamento utilizado foi, iniciamente, o Epidemic Router. O gráfico da Figura 4 mostra
os resultados dessa simulação.
Figura 4. Nº de Mensagens Entregues x Nº de Linhas
Observa-se que o número de ônibus influencia no desempenho das entregas das
mensagens. Além disso, aumentar a quantidade de ônibus não significa necessariamente
que o número de mensagens entregues aumente. Essa variação pode ocorrer por diversos
fatores, dentre ele o não determinismo do cenário, pois, dependendo de determinado
evento o número de mensagens entregues podem variar. Pode ocorrer, por exemplo, que
um determinado ônibus carregue uma quantidade de mensagens e não as consiga
transferir todas elas em sua totalidade, diminuindo o desempenho da entrega mesmo com
um número superior de ônibus. Os melhores resultados obtidos foram com quatro e sete
ônibus em cada linha.
Na segunda simulação, foram selecionadas, aleatoriamente, as linhas para a
realização das simulações, cujo objetivo foi verificar o desempenho das entregas das
mensagens com diferentes números de linhas. Com base na primeira simulação, o número
de ônibus escolhido para representar o padrão em todas as linhas foi de quatro ônibus.
2
1
3
Figura 5. Nº de Mensagens Entregues x Nº de Linhas
Observou-se, conforme demonstrado no gráfico da Figura 5, que os melhores
desempenhos obtidos foram com duas, seis e sete linhas, quando 791, 747 e 731,
respectivamente, mensagens foram entregues. Os dados revelaram que o número de
mensagens entregues oscilam à medida que aumentam o número de linhas. A oscilação
se deve ao fato de que nem sempre as linhas incluídas no teste possuem rotas com
interseção nos pontos de conexões com os radares, poia a quantidade de mensagens
entregues depende do número de contatos efetivos realizados com os radares.
Na terceira simulação, foram escolhidas as linhas de forma criteriosa, utilizandose
as melhores combinações, para a realização das simulações, com o objetivo de obter as
linhas com as rotas ideais, verificando o desempenho das entregas das mensagens com
diferentes números de linhas e buscando sempre as linhas com os melhores desempenhos
especialmente no que diz respeito à relação custo-benefício, conforme ilustra a Figura 6.
O número de ônibus escolhidos foram quatro e o roteamento foi o Epidemic Router.
Figura 6. Nº de Mensagens Entregues x Nº de Linhas
Observou-se que os melhores desempenhos obtidos foram com 6 Linhas. A Figura 6, mostra a
comparação dos resultados das simulações referente a segunda e a terceira simulação.
214
Figura 7. Nº de Mensagens Entregues x Nº de Linhas (Simulação 02 e 03)
Observou-se no gráfico da Figura 7, que as melhores rotas que permitem a relação
custo-benefício foram obtidos na terceira simulação, já que o número de mensagens
entregues é considerado alto, se comparado às outras combinações. Além disso, a partir
de 6 linhas de ônibus, o desempenho diminui consideravelmente.
No quarto teste, foram utilizadas as linhas de ônibus com as melhores rotas,
baseadas na terceira simulação. O objetivo foi verificar o desempenho das entregas das
mensagens, utilizando diferentes protocolos de roteamento baseados em rede DTN.
O Nº de ônibus por Linha foram quatro e os protocolos de roteamentos Epidemic
Router, First Contact Router, Epidemic Oracle Router, Direct Delivery Router, Spray
And Wait Router.
Figura 8. Desempenho das simulações com diferentes protocolos
Dentre os protocolos de roteamento escolhidos, o que teve o melhor desempenho,
com 96,2 %, foi o Spray and Wait Router, como mostra o gráfico da Figura 8 . Esse
protocolo gera um pequeno número de cópias, a fim de assegurar que o número de
mensagens replicadas seja pequeno e controlado.
6. Considerações Finais
2
1
5
Esse artigo propôs uma análise de desempenho do tráfego das mensagens obtidas pelos
radares e transmitidas pelos ônibus da Região Metropolitana de Belém até o seu destino,
ou seja, a AMUB, através de simulações em uma rede tolerante a atrasos e interrupções,
com o objetivo de verificar o desempenho da rede.
Apesar das características de comunicação das redes DTN, verifica-se que o
número de linhas e as quantidades de ônibus influenciam no desempenho do sistema,
porém, não necessariamente, a maior quantidade de linhas e de ônibus garantem maior
efetividade das entregas das mensagens.
Verificou-se que é possível que a AMUB receba os informações de seus radares
de forma eficaz, utilizando a frota de ônibus existente na Região Metropolitana de Belém.
Os resultados das simulações foram satisfatórios, apresentando índices consistentes que
mostram a viabilidade do uso dos transportes coletivos para coletar os dados dos radares.
Referências
Memória E., Secco F. and Coutinho, M.(2007) “Provendo Integração de Comunidades
Excluídas Tecnologicamente através de Redes Tolerantes a Atrasos”.
Ferreira J. and Coutinho, M.(2009) “Uso de Mula de Dados no Processo de Reintegração
Social Vítimas de Escalpelamento na Amazônia e Suas Famílias”.
Villares T., Campos, C. and Viana A.(2013). “A Influência de Nós Especiais na Entregas
de Mensagens nas Redes Tolerantes a Atrasos”.
Keränen, A., Ott J. e Kärkkäinen, T. (2009). The ONE Simulator for DTN Protocol
Evaluation. Em 2nd International Conference on Simulation Tools and Techniques.
Ribeiro F., Pedroza A and Costa L.(2012). Deepwater Monitoring System in Underwater
Delay/Disruption Tolerant Network, IEEE LATIN AMERICA TRANSACTIONS,
VOL. 10, NO. 1, JAN. 2012
Keranen, A. and Ott, J. The one: The opportunistic network environment simulator.
http://www.netlab.tkk.fi/tutkimus/dtn/theone.Último acesso em 06/08/2013.
Thrasyvoulos Spyropoulos, Konstantinos Psounis, and Cauligi S. Raghavendra. Spray
and wait: An efficient routing scheme for intermittently connected mobile networks.
In Proceedings of the 2005 ACM SIGCOMM workshop on Delay-tolerant
networking, WDTN ’05, pages 252–259. ACM, 2005.
Jain, S.; Fall, K. e Patra, R. Routing in a delay tolerant network. . In: Special Interest
Group on Data Communication (SIGCOMM), 12., 2004, Portland, Oregon, USA.
Proceedings ... ACM SIGCOMM, 2004.p. 145–158.
Silva, R., Campos, C. A. V., and de Moraes, L. F. M. (2010). Caracterizacão da
mobilidade veicular e o seu impacto nas redes veiculares tolerantes a atrasos e
desconexões. In Simpósio Brasileiro de Redes de Computadores e Sistemas
Distribuídos– SBRC 2010.
Sulma Rashid, Qaisar Ayub, M. Soperi Mohd Zahid et al., E-DROP: An E ective Drop
Bu er Management Policy for DTN Routing Protocols, International Journal of
Computer Applications (0975 – 8887), January 2011.
216
Shah, R., Roy, S., Jain, S. e Brunette, W. (2003). Data MULEs: Modeling a three-tier
architecture for sparse sensor networks. Em IEEE International Workshop on Sensor
Network Protocols and Applications (SNPA).
Open Jump (2012). Disponível em: http://www.openjump.org. Último acesso em
04/05/2013.
2
1
7
218