Top Banner
65

X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Dec 02, 2018

Download

Documents

hoangthuan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,
Page 2: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Coordenacao GeralMirkos Ortiz MartinsComissao OrganizadoraAlessandro Andre Mainardi de OliveiraAlexandre de Oliveira ZamberlanAna Paula CanalGustavo CantarelliHenrique Gabriel Gularte PereiraLuciano Azevedo CassolMirkos Ortiz MartinsTiago Rios da RochaSimone Regina CeolinSylvio VieiraComissao AvaliadoraAdriana Pereira - Universidade Federal de Santa MariaAlexandre Ribeiro - Universidade de Caxias do SulALexandre Zanatta - Universidade de Passo FundoAndre Adami - Universidade de Caxias do SulAndre Du Bois - Universidade Federal de PelotasAndre Martinotto - Universidade de Caxias do SulCarine Webber - Universidade de Caxias do SulCarlos Holbig - Universidade de Passo FundoCristian Koliver - Universidade de Caxias do SulDeise Saccol - Universidade Federal de Santa MariaEduardo Kroth - Universidade de Santa CruzEduardo Piveta - Universidade Federal de Santa MariaElisa Boff - Universidade de Caxias do SulEugenio Simonetto - Universidade Federal de Santa MariaFernando Osorio - Universidade de Sao PauloGiliane Bernardi - Universidade Federal de Santa MariaGiovani Rubert Librelotto - Universidade Federal de Santa MariaGuilherme Dhein - Universidade Federal de Santa MariaIara Augustin - Universidade Federal de Santa MariaJoao Luis Tavares da Silva - Universidade de Caxias do SulJoao Ricardo Bittencourt - Universidade do Vale do Rio dos SinosJuliana Vizzotto - Universidade Federal de Santa MariaJuliano Tonezer da Silva - Universidade de Passo FundoLeandro Wives - Universidade Federal do Rio Grande do SulLisandra Fontoura - Universidade Federal de Santa MariaLucio Duarte - Universidade Federal do Rio Grande do SulMarco Castro Barbosa - Universidade Tecnologica Federal do ParanaMarta Bez - Universidade FeevaleOsmar Marchi dos Santos - Universidade Federal de Santa MariaRenata Galante - Universidade Federal do Rio Grande do SulRoberto Zanoni - Faculdade de Tecnologia SenacRodrigo Goulart - Universidade FeevaleRogerio Turchetti - Universidade Federal de Santa MariaWalter Priesnitz Filho - Universidade Federal de Santa Maria

Page 3: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Visualizacao de Fluxo de Redes Atraves de Mashups

Fabio Diniz Rossi1, Rosana Wagner1, Sergio da Costa Nunes1

1 Instituto Federal FarroupilhaCampus Alegrete

RS 377 – KM 27 – Alegrete – RS – Brasil

(fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br

Abstract. Mashups are applications developed to integrate available resourcesand information on the Internet, with a high-level of cooperation, reuse andfocus on the end user. This paper shows the use of mashups in the flow networksvisualization in an academic environment, enabling the monitoring of relevantinformation about network flow and availability.

Resumo. Mashups sao aplicacoes desenvolvidas para integrar recursos einformacoes disponıveis na internet, com alto grau de cooperacao, reuso e focono usuario final. Este artigo descreve a utilizacao de mashups na visualizacaode fluxo de redes em um ambiente academico, voltado ao monitoramento deinformacoes importantes como fluxo da rede e disponibilidade.

1. IntroducaoA visualizacao de informacoes de redes de computadores e de grande importancia,pois possibilita acompanhamento em tempo de execucao do fluxo de informacoes epermite uma administracao pro-ativa sobre possıveis falhas que venham a ocorrer nacomunicacao. Diversos protocolos e tecnologias podem ser implementadas, desde APIs(Application Programming Interface) de baixo nıvel como o SNMP (Simple Network Ma-nagement Protocol) [Miller 1993] ate protocolos mais modernos como o WBEM (Web-Based Enterprise Management) [Martin-Flatin 2001] que utiliza webservices para provergerenciamento remoto aos nos da rede.

Com a evolucao de alguns modelos de desenvolvimento de aplicacoes surgiramas aplicacoes em tres camadas [Akingbehin and Maxim 2006], separando a camada deapresentacao ao usuario, webservices e a camada de dados. Esse novo modelo estafortemente ligado as tecnologias da Web 2.0. A segunda geracao das aplicacoes web(Web 2.0) [Andriole 2010] e caracterizada pelo foco na colaboracao e interacao entreessas aplicacoes e os usuarios. Com essa mudanca de paradigma, a web passa a seruma plataforma de servicos, focada na participacao, escalavel, coletiva e com variosdados distribuıdos, interligados por uma mesma aplicacao. Dentre as varias aplicacoesque tiram proveito deste novo paradigma, temos os mashups, que consistem em sistemasdinamicos, capazes de agregar conteudo, combina-los com outros dados em outras fontesde informacao e apresenta-los de forma organizada.

Neste artigo, apresentamos o SVR - Sistema de Visualizacao de Rede desenvol-vido atraves de mashup, que possibilita o acompanhamento de informacoes sobre o fluxoda rede de computadores dos diversos Campi integrantes de uma instituicao de ensino. Oartigo esta organizado da seguinte forma: inicalmente mostramos um referencial teorico

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

1

Page 4: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

sobre a Web 2.0, suas caracterısticas e servicos mais comuns; em segundo momentosao apresentados alguns trabalhos relacionados; em uma proxima secao mostramos aimplementacao do SVR; e finalizando, alguns trabalhos futuros e nossas conclusoes.

2. Web 2.0 e Mashups

O modelo de negocios da internet dos anos 90 era baseado na praticidade, onde empre-sas ofereciam seus servicos (empresas .com) e consequentemente, os usuarios pagavamesses servicos e os utilizavam atraves de sites na internet. O custo destas empresas eramuito baixo, pois nao mantinham despesas com alugueis e/ou funcionarios. Isso atraiugrandes investimentos para essas empresas, seu modelo de negocios era mantido pelocapital de risco que objetivava a geracao de alguma vantagem competitiva que gerasse lu-cros compensatorios no futuro. O colapso dessas empresas desacreditou a internet comoplataforma de negocio ate o surgimento de um novo paradigma: a Web 2.0.

Web 2.0 [Andriole 2010] e o termo geralmente utilizado para definir a segundageracao da internet, que vem possiblitar uma maior interatividade, pautada pela geracaode conteudos pelos usuarios e pela personalizacao dos servicos, proporcionando um maiorfoco no usuario final. Existem um grande numero de servicos que comprovam esse novoparagidma, como blogs, wikis, bookmarking, podcasting, audio, mashups e RSS, quesao possıveis atraves de tecnologias como Ajax, SOAP e varias outras APIs disponıveis[Eichorn 2006]. Dentre os servicos listados como integrantes da Web 2. 0 temos o mashup[Tsai et al. 2009], que consiste em uma aplicacao que combina dados, apresentacao oufuncionalidades, integrando informacoes de varias fontes para criar um novo servico. Aarquitetura dos mashups sao compostas por 3 camadas: camada de apresentacao; camadade webservices; e camada de dados.

Podemos acompanhar essa arquitetura na Figura 1, que apresenta as camadas ci-tadas acima, com algumas tecnologias citadas nos artigos correspondentes. Vemos a ca-mada de apresentacao, que possiblitita de forma amigavel ao usuario, visualizacao dosdados da aplicacao. Na camada intermediaria, webservices, podemos acompanhar as tec-nologias que servem para busca e integracao dos dados da camada abaixo (camada dedados) e que disponibilizam esses dados a camada superior (camada de apresentacao).A camada de mais baixo nıvel (camada de dados) mostra as tecnologias que mantem asinformacoes armazenadas distribuıdas, que sao integradas pela camada intermediaria.

Figura 1. Modelo 3 camadas

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

2

Page 5: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

3. Trabalhos Relacionados

Atualmente, com as possibilidades que a Web 2.0 traz, mashups estao sendo utilizadosnas mais diversas aplicacoes, provendo novas funcionalidades ao usuario. Nos ultimosanos, tecnicas de tagging ganharam impulso como uma abordagem orientada ao usuario,para a classificacao e indexacao de conteudo na web. E uma maneira eficaz nao so deguardar paginas favoritas, mas tambem dividir seu conhecimento com outros. Portanto,para cada endereco visitado e atribuıdo um marcador, e esse marcador pode ser buscadopor outros usuarios, e assim por diante. Mashups aderiram a lista de recursos direcionadosa web social, expandindo as possibilidade de minerar dados e exibi-los com a utilizacaode tagging [Goarany et al. 2010].

Na educacao, mashups apresentam-se como opcao ao desenvolvimento de com-petencias pessoais ambientes de aprendizagem. A criacao de mashups de forma ad hocpara usuarios finais tornou-se tarefa facil, mesmo com pouco ou nenhum conhecimentode programacao. Varias ferramentas e plataformas foram desenvolvidas na tentativade apoiar a criacao de mashups. Essas plataformas, no entanto, ainda sao considera-dos complexas e ainda apresentam limitacoes como escalabilidade, a interoperabilidade,reutilizacao, invocacao de servicos automaticos e mediacao [Chatti et al. 2011].

Aplicacoes de mashups na area de telecomunicacoes sao descritas em alguns tra-balhos como em [Jie et al. 2009] [Banerjee and Dasgupta 2008], apresentando um mo-delo de sistemas em camadas e alguns prototipos de prova de conceito, com a utilizacaode webservices. Em especıfico na area de redes de computadores, temos exemplosde mashups para gerencia de qualidade de servico em redes moveis [Xu et al. 2009] eseguranca [Magazinius et al. 2010]. Este trabalho torna-se complementar aos anteriores,pois utiliza o mashup como ferramenta de agregacao e apresentacao de informacoes rele-vantes para a gerencia de redes de acesso a internet que sao distribuıdas, mas devem tercontrole centralizado.

4. SVR

O SVR foi desenvolvido utilizando-se o GME (Google Mashup Editor) [Loton 2008],que consiste em uma arquitetura Ajax, com um conjunto de ferramentas e aplicativosweb, bem como servicos do proprio Google como o Google Maps [Dunnavant 2010]. Emsua implementacao, o SVR incorporou ao Google Maps a marcacao de todas as cidadesque mantem um Campus desta instituicao de ensino (podemos acompanhar na Figura 2).

Esta instituicao de ensino e composta por 1 reitoria e 7 campi. Quando clica-se sobre uma das cidades marcadas no mashup, e apresentada ao usuario uma nova telaque permite a escolha de quais os relatorios podem ser visualizados. O SVR atualmentemonitora as seguintes metricas de sistema: trafego de rede, trafego de internet, carga deCPU, trafego de e-mail, uso da memoria, uso do disco. A tela de escolha destas metricaspode ser visualizada na Figura 3.

Em cada Campus, o acesso a internet e controlado por um servidor (gateway) derede. Em cada servidor destes, foi configurado o servidor web Apache [Foundation 2010],responsavel por manter paginas a internet. Atraves deste servico foram disponibilizadosgraficos de analise realizados pelo MRTG (Multi Router Traffic Grapher) [Oetiker 1998].O MRTG e uma ferramenta que serve para monitorar a carga de trafego em links de rede,

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

3

Page 6: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Figura 2. Mashup da Instituicao de Ensino

Figura 3. Tela de Escolha de Relatorio

com intervalo de atualizacao de 5 minutos. O MRTG e a ferramenta responsavel por ge-rar graficos sobre varios recursos de sistema, buscando informacoes do sistema atraves deSNMP ou scripts externos. O GME permite a incorporacao desses graficos ao mapa doSVR, e permite quando necessario e em tempo real, verificar as informacoes fornecidaspor cada campus independentemente. Um exemplo dessas informacoes carregadas remo-tamentee mostrado na Figura 4, e apresenta a exibicao de todas as metricas disponıveisna versao atual do SVR.

Figura 4. Apresentacao dos Relatorios

Esses recursos monitorados, permitem ao administrador ter pleno conhecimentoda utilizacao dos servidores, da rede e internet de todos os campi, com informacoes

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

4

Page 7: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

atualizadas, que permitem acoes pro-ativas no que tange a manutencao dos servicos.A utilizacao de mashups torna o SVR uma solucao escalavel, pois permite facilmenteintegracao de novos dados, das mesmas ou de novas fontes de informacao distribuıdasna internet. Essa gestao de informacao em grandes volumes de dados multimıdia dis-tribuıdos que e possibilitada pelos mashups vem ao encontro de um dos grandes desafiosda computacao no Brasil 2006-2016 [Medeiros 2008], que consiste justamente em inte-grar milhares de informacoes distribuıdas, tratando-a de forma a compilar e exibir essainformacao como um servico.

5. Trabalhos Futuros e ConclusoesA gerencia em redes de computadores e uma tarefa complexa devido, em maior parte,ao crescimento acelerado destas, tanto em desempenho quanto em servicos. Alem disso,os sistemas de telecomunicacoes adicionam complexidade a estas redes atraves de ambi-entes heterogeneos. Este conjunto de componentes deve ser gerenciado para que falhasna comunicacao nao venham a acontecer. Varios mecanismos de gerencia de redes decomputadores sao estudados, e com o surgimento de novas tecnologias, novas aplicacoespodem ser desenvolvidas para esse fim.

Com o advindo da Web 2.0, atualmente e possıvel integrar servicos distribuıdos deforma dinamica e transparente ao usuario. Dentre os servicos que caracterizam esse novoparadigma temos os mashups. No desenvolvimento web, mashups sao aplicativos que seutilizam da integracao de dados de diversas fontes para criar e apresentar novos servicos.Para manter permanente acesso a dados de outros servicos, sao aplicacoes geralmentehospedadas online que buscam informacoes em recursos compartilhados, atraves de APIsde programacao.

Este trabalho utilizou mashups para integrar informacoes de um ambiente de rededistribuıdo, centralizando essa informacao e apresentando-a em tempo real. O prototipofoi implementado na rede que interliga os diversos campi da instituicao de ensino, propor-cionando a visualizacao propostas. Essa fase do desenvolvimento foi concluıda com exito,sendo que o SVR encontra-se disponıvel e escalavel, proporcionando a visualizacao dasinformacoes de fluxo da rede e carga dos servidores. Essas informacoes sao importantes,tanto para administracao do ambiente, quanto para polıtica institucional de atualizacaode hardware/software, podendo ser acompanhadas informacoes sobre possıveis falhas decomunicacao ou obsolescencia dos servidores que servem como gateways dos campi.Como trabalhos futuros serao realizadas algumas adequacoes no SVR, como por exem-plo, filtrar relatorios da mesma metrica em diferentes campi.

ReferenciasAkingbehin, K. and Maxim, B. (2006). A three-layer model for software engineering

metrics. In Proceedings of the Seventh ACIS International Conference on SoftwareEngineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing,pages 17–20, Washington, DC, USA. IEEE Computer Society.

Andriole, S. J. (2010). Business impact of web 2.0 technologies. Commun. ACM, 53:67–79.

Banerjee, N. and Dasgupta, K. (2008). Telecom mashups: enabling web 2.0 for telecomservices. In Proceedings of the 2nd international conference on Ubiquitous informa-

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

5

Page 8: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

tion management and communication, ICUIMC ’08, pages 146–150, New York, NY,USA. ACM.

Chatti, M. A., Jarke, M., Specht, M., Schroeder, U., and Dahl, D. (2011). Model-drivenmashup personal learning environments. Int. J. Technol. Enhanc. Learn., 3:21–39.

Dunnavant, S. (2010). Create interactive web illustrations with google maps. In Procee-dings of the 38th annual fall conference on SIGUCCS, SIGUCCS ’10, pages 267–268,New York, NY, USA. ACM.

Eichorn, J. (2006). Understanding AJAX: Using JavaScript to Create Rich Internet Ap-plications. Prentice Hall PTR, Upper Saddle River, NJ, USA.

Foundation, A. S. (2010). Apache HTTP Server Reference Manual - for Apache version2.2.17. Network Theory Ltd.

Goarany, K., Kulczycki, G., and Blake, M. B. (2010). Mining social tags to predictmashup patterns. In Proceedings of the 2nd international workshop on Search andmining user-generated contents, SMUC ’10, pages 71–78, New York, NY, USA. ACM.

Jie, G., Bo, C., Junliang, C., and Xiangtao, L. (2009). Applying recommender systembased mashup to web-telecom hybrid service creation. In Proceedings of the 28thIEEE conference on Global telecommunications, GLOBECOM’09, pages 3321–3325,Piscataway, NJ, USA. IEEE Press.

Loton, T. (2008). Creating Google Mashups with the Google Mashup Editor. LotontechLimited.

Magazinius, J., Askarov, A., and Sabelfeld, A. (2010). A lattice-based approach tomashup security. In Proceedings of the 5th ACM Symposium on Information, Com-puter and Communications Security, ASIACCS ’10, pages 15–23, New York, NY,USA. ACM.

Martin-Flatin, J.-P. (2001). Toward universal information models in enterprise mana-gement. In Proceedings of the VLDB 2001 International Workshop on Databases inTelecommunications II, DBTel ’01, pages 167–178, London, UK. Springer-Verlag.

Medeiros, C. B. (2008). Grand research challenges in computer science in brazil. Com-puter, 41:59–65.

Miller, M. A. (1993). Managing internetworks with SNMP: the definitive guide to theSimple Network Management Protocol (SNMP) and SNMP version 2. M & T Books,New York, NY, USA.

Oetiker, T. (1998). Mrtg - the multi router traffic grapher. In Proceedings of the 12thUSENIX conference on System administration, pages 141–148, Berkeley, CA, USA.USENIX Association.

Tsai, C.-C., Lee, C.-J., and Tang, S.-M. (2009). The web 2.0 movement: mashups drivenand web services. W. Trans. on Comp., 8:1235–1244.

Xu, H., Song, M., and Luo, X. (2009). A qos-oriented management framework for recon-figurable mobile mashup services. In Proceedings of the 11th international conferenceon Advanced Communication Technology - Volume 3, ICACT’09, pages 2001–2005,Piscataway, NJ, USA. IEEE Press.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

6

Page 9: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Verificação de Autoria de Manuscritos usando Dimensões

Fractais e SVM

Jean F. Felsky1, Edson J. R. Justino

1, Jacques Facon

1, Luiz E. S. Oliveira

2

1Programa de Pós-Graduação em Informática – Pontifícia Universidade Católica do

Paraná (PUC-PR)

Rua Imaculada Conceição, 1155 – 80.215-901 – Curitiba – PR – Brazil

2Departamento de Informática – Universidade Federal do Paraná (UFPR)

Curitiba, PR – Brazil [email protected], {justino,facon}@ppgia.pucpr.br,

[email protected]

Abstract. In this paper we purpose a protocol based on the estimation of the

fractal dimension to verify the authorship of manuscripts. We use three

methods for computing it: one is the box-counting method and the others are

based on morphological decomposition. We compare the results of these three

methods between themselves and also compare the results of the fractal

dimension to the results obtained by the same protocol based on the compute

of co-occurrence matrix. For this purpose, we used two different databases for

the testing and comparing results.

Resumo. Neste artigo apresentamos um protocolo baseado no cálculo da

dimensão fractal para verificar a autoria de manuscritos. Usamos três

métodos para tal: o método da contagem de cubos e dois outros baseados na

decomposição morfológica. Nós comparamos os resultados destes três

métodos entre eles e também com os resultados obtidos pelo mesmo protocolo

usando o cálculo da matriz de co-ocorrência. Para tal, usamos duas bases de

cartas manuscritas diferentes.

1. Introdução

A verificação da autoria de manuscritos é um dos desafios enfrentado pelos peritos

forense e é uma atividade relacionada à análise de documentos questionados conhecida

como grafoscopia, onde o objetivo é determinar se o documento questionado foi

produzido por um escritor em particular.

A proposta deste trabalho é apresentar um método para verificação da autoria de

textos manuscritos, através do uso de uma abordagem global envolvendo a extração de

características de textura usando dimensões fractais. Este artigo se divide em seis partes,

a saber: o item 1 contém esta introdução, no item 2 é apresentada uma introdução sobre

fractais e os algoritmos usados, no item 3 são apresentadas as características das bases

de dados usadas e o protocolo aplicado sobre elas, no item 4 é apresentado o método

proposto e suas partes constituintes, no item 5 são apresentados os testes realizados e

uma análise dos resultados, no item 6 são apresentadas as conclusões e trabalhos futuros.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

7

Page 10: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

2. Dimensão Fractal

Na geometria euclidiana temos que o espaço apresenta três dimensões, um plano tem

duas, a linha tem um e o ponto, zero. Mas, Benoit Mandelbrot [Gleick 1999], ao estudar

o problema da linha litorânea, foi além. Ele observou que as medidas de um contorno

podem variar, dependendo do grau de detalhamento do observador. Com isso em mente,

propôs a geometria fractal, que tem a capacidade de medir propriedades que antes não

tinham uma definição clara: o grau de aspereza ou de fragmentação de um objeto, por

exemplo. No caso da linha litorânea mostrou que o grau de irregularidade nos diferentes

padrões mantém-se constante em escala e que a dimensão fractal corresponde à

eficiência do objeto na ocupação do espaço. Uma linha, na geometria euclidiana não

ocupa espaço, ela é monodimensional. Mas, um contorno irregular, com extensão infinita

compreendida numa área finita, ocupa espaço. Não chega a ser bidimensional, mas é

mais do que monodimensional. Ela tem uma dimensão fractal.

2.1 Método Morfológico de Samarabandu

Samarabandu [Samarabandu 1993] apresenta um método para estimar a dimensão fractal

de uma imagem em níveis de cinza. Considera-a uma superfície em três dimensões e

aplica uma sequência de operações morfológicas de dilatações nesta superfície, com

diferentes elementos estruturantes. Após plotar a área S do conjunto resultante de

superfícies pelo tamanho do elemento estruturante utilizado, obtém a dimensão fractal da

imagem.

Assim, a dimensão fractal é o ângulo da reta definida por log(S(ρi)) por log(ρi),

na qual i = 1, 2.., N, sendo N definido arbitrariamente com o valor inteiro 6. E S(ρi)

pode ser iterativamente calculado.

Os resultados apresentados por Samarabandu mostram a eficiência e robustez da

dimensão fractal para a medição de texturas de radiografias ósseas.

2.2. Método Morfológico de Sariyanni

Saryianni [Saryianni 2001] apresenta uma comparação de métodos para a discriminação

de diferentes lesões hepáticas. O método proposto para o fractal morfológico baseia-se

nos operadores de dilatação e erosão. Para um valor ε, que representa quantos pontos

diferentes serão considerados em uma reta de 1 até εmax, definido arbitrariamente

previamente como 6, calcula-se a dilatação e a erosão da imagem, e o volume da

imagem, que é a diferença entre os dois, usando um elemento estruturante crescendo

proporcionalmente com ε. Em seguida, calcula-se o ângulo da reta ao se plotar o

logaritmo do volume por ε. O método do fractal morfológico é bastante direto, de

simples implementação e bastante parecido com o método proposto por Samarabandu.

2.3. Método da Contagem de Cubos

Nunes [Nunes 2003] ao comparar várias técnicas de descrição de texturas, apresenta o

teorema da contagem dos cubos (Box Counting Theorem), que oferece um método

simples para estimar a dimensão fractal de imagens binárias. Nunes toma n, variando de 1

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

8

Page 11: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

até 6, de modo que para n = 1, a imagem é dividida ao meio horizontalmente e

verticalmente, para n = 2, cada uma das divisões do passo anterior também é dividida

horizontalmente e verticalmente e assim sucessivamente Em cada uma das etapas, é

realizada uma contagem do número de “quadrados” que “cobrem” A, que definem

Nn(A), então a dimensão fractal, DF(A), é calculada como o ângulo da reta log(Nn(A)

por log (2n).

3. Aquisição e preparação da base de manuscritos

Para esse trabalho serão utilizadas as bases de dados da Pontifícia Universidade Católica

do Paraná (PUC-PR) e da Universidade de Berna [Universidade de Berna 2011].

A base da PUC-PR, sob cuidado do Programa de Pós-Graduação em

Informática, foi desenvolvida de modo que o conteúdo da carta contemple todo o

conjunto de letras do alfabeto da Língua Portuguesa, incluindo letras maiúsculas e

minúsculas, símbolos gráficos (til, cedilha, acentos circunflexo, grave etc) e mínimos

gráficos (vírgulas e pontos), contendo um total de 124 palavras. 315 autores forneceram

três amostras, de mesmo teor, totalizando uma base com 945 imagens.

A base da Universidade de Berna, conhecida por IAM Handwriting Database

[Marti 1999], sob cuidado do Instituto de Ciência da Computação e Matemática

Aplicada conta com 1539 documentos de 657 autores diferentes. Na base IAM o número

de cartas por autor é variável, de 1 até 59 e o conteúdo não é o mesmo. O tipo de caneta

também é variável e não há uma preocupação com a regularidade do conteúdo. Assim, é

uma base mais desafiadora para um sistema automatizado de reconhecimento de autoria.

Como parte da preparação, para a base IAM foi necessário a retirada das

informações de cabeçalho e de rodapé.

As bases (IAM e PUC) foram compactadas com o método utilizado em

[Hanusiak 2010] e em seguida foram geradas imagem em diferentes níveis de cinza, 256,

128, 64, 32, 16, 8, 4 e 2. As imagens resultantes foram fragmentadas em retângulos de

128 x 128 pixels. Em média, cada amostra gerou 18 fragmentos em cada nível de cinza.

4. Método Proposto

O método proposto é composto pelas etapas que se seguem.

4.1 Extração de características

Nessa etapa, foi aplicado o cálculo da dimensão fractal sobre os fragmentos das imagens

manuscritas compactados. O cálculo foi repetido sobre as imagens em diferentes níveis

de cinza para compor o vetor de características. Utilizou-se os níveis 2, 4, 8, 16, 32, 64,

128 e 256 totalizando um vetor de 8 componentes.

O algoritmo da contagem de cubos foi executado com n = 6, ou seja, houve 6

divisões da imagem, tal qual o usado em [Nunes 2003]. O algoritmo de Sariyanni foi

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

9

Page 12: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

executado com ε = 6 e o algoritmo de Samarabandu com ro = 6 e elemento estruturante

cruz com tamanho 1, inicialmente.

4.2 Produção do Modelo Independente do Autor

No estágio de treinamento, as medidas das dissimilaridades entre os vetores de

características são calculadas entre pares de fragmentos de textos. Dado um fragmento

do manuscrito genuíno x e o outro questionado y, aplica-se a técnica de extração de

características de textura ou dimensões fractais, gerando um vetor de características com

8 componentes, um para cada nível de cinza, para cada fragmento.

Depois de extraídas as características, são computadas as dissimilaridades entre

os vetores de fragmentos, que serão utilizados como entrada na produção de um modelo.

Neste trabalho foram utilizadas 3 amostras de fragmento por autor para treinamento e 5

amostras de fragmento por autor para os testes. Quando dois fragmentos pertencem a

um mesmo escritor, o vetor de característica é indicado com 1 (autoria) ou -1 (não-

autoria).

4.3 Decisão

Partindo da hipótese de que as medida das distâncias entre os vetores de características

extraídos de amostras de um mesmo autor são menores entre si, o SVM já treinado

separa pequenas distâncias entre características considerando-as como autoria, e

distâncias maiores entre características como não-autoria.

O processo de decisão é gerado na saída do classificador. A seguir, esta saída

torna-se uma entrada parcial para a etapa do método de fusão dos resultados. Mais

detalhes sobre as regras de fusão podem ser vistas em [Hanusiak 2010].

5. Resultados

Em todos os seguintes casos, foram considerados 50 autores para o treinamento e 115

para os testes. O kernel utilizado no classificador SVM foi sempre o linear, e o método

de fusão foi a soma. Nos testes, verificam-se dois tipos de erros:

• Erro Tipo I: acontece quando um manuscrito é membro da classe de autoria e é

classificado como membro da classe de não-autoria.

• Erro Tipo II: acontece quando um manuscrito é membro da classe de não-autoria

e é classificado como membro da classe de autoria.

O primeiro teste realizado replicou os resultados em [Hanusiak 2010] e aplicou o

mesmo protocolo para a base IAM. Houve um aumento, já esperado, na taxa de erros

devido principalmente a complexidade da nova base. Veja Tabela 1.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

10

Page 13: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Tabela 1. Comparação base IAM vs PUC.

Erro Tipo I Erro Tipo II Média

Base PUC Base IAM Base PUC Base IAM Base PUC Base IAM

2º Momento Angular 3,48 9,74 7,3 15,45 5,39 12,59

Entropia 2,43 8 7,83 14,19 5,13 11,09

Homogeneidade 4,52 8 8,87 16,86 6,69 12,43

Dissimulação 3,3 7,83 8,52 15,33 5,91 11,58

Energia 3,3 9,39 7,65 15,32 5,47 12,35

Variância Inversa 3,3 7,83 8,52 15,33 5,91 11,58

Em seguida, os testes foram feitos já com a dimensão fractal. Foram testados três

algoritmos, os morfológicos de Samarabandu e Sariyanni e o da Contagem de Cubos.

Para cada algoritmo foram usadas as imagens com níveis de cinza: 2, 4, 8, 16, 32, 64,

128 e 256. Totalizando um vetor de características de 8 componentes. Os resultados dos

testes realizados com os algoritmos independentemente estão na tabela 2.

Tabela 2. Resultados para cada algoritmo independentemente.

Erro Tipo I Erro Tipo II Média dos Erros

Níveis de Cinza Algoritmo Base

PUC

Base

IAM

Base

PUC

Base

IAM

Base

PUC

Base

IAM

2+4+8+16+32+64+128+256 Contagem de Cubos 10,96 18,54 21,88 48,84 16,42 33,69

2+4+8+16+32+64+128+256 Sariyanni 7,13 9,57 24,48 22,51 15,80 16,04

2+4+8+16+32+64+128+256 Samarabandu 12,52 10,09 36,69 28,31 24,6 19,2

Os índices de acertos para os algoritmos de Sariyanni e Samarabandu para a base

IAM ficaram bem próximos aos índices da base da PUC, indicando uma maior robustez

da dimensão fractal morfológica ante a complexidade da base. Em seguida, os dois

algoritmos mais promissores, Samarabandu e Sariyanni, foram combinados para gerar

um vetor de 16 componentes, afim de representar melhor a imagem. Os resultados

podem ser vistos na tabela 3.

Tabela 3. Resultados para combinação dos algoritmos morfológicos de

Saryianni e Samarabandu.

Erro Tipo I Erro Tipo II Média dos Erros

Níveis de Cinza Base PUC Base IAM Base PUC Base IAM Base PUC Base IAM

2+4+8+16+32+64+128+256 11,48 6,26 21,51 23,74 16,495 15

Havendo melhora nos resultados, decidiu-se incluir o método da contagem de

cubos e gerar um vetor de 24 componentes. Os resultados estão na tabela 4.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

11

Page 14: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Tabela 4. Resultados para combinação dos algoritmos morfológicos de

Saryianni e Samarabandu e contagem de cubos.

Erro Tipo I Erro Tipo II Média dos Erros

Níveis de Cinza Base PUC Base IAM Base PUC Base IAM Base PUC Base IAM

2+4+8+16+32+64+128+256 8,17 7,83 11,83 19,77 10 13,8

Apesar dos resultados na base da PUC ainda estarem distantes dos obtidos em

[Hanusiak 2010], os valores para a base IAM já se aproximaram bastante dos do outro

método, mostrando que a dimensão fractal sofre menos com a complexidade da base.

6. Conclusão e trabalhos futuros

Como vimos nesses primeiros conjuntos de testes, a dimensão fractal apresentou

resultados promissores quando aplicada na base IAM, cujo teor dos textos e o número

de autores se apresentam mais complexo do que o mostrado pela base da PUC.

Acredita-se que um dos fatores que impactou no desempenho do método baseado nos

fractais, foi o uso de um conjunto pequeno de características, que possui uma relação de

mútua dependência. A inclusão de outras características, tais como a lacunaridade e a

sucolaridade, pode vir a contribuir com a melhoria dos resultados.

7. Referências

Gleick, J (1999) “Caos: a criação de uma nova ciência”, Editora Campus, Rio de Janeiro,

310 p.

Hanusiak, R. K. (2010) “Identificação de Autoria de Manuscritos com base em Atributos

Genéticos e Genéricos da Escrita.” In: Tese de Mestrado, Pontifícia Universidade

Católica do Paraná, Brasil, 114 p.

Marti, U. and Bunke, H. (1999) “A full English sentence database for off-line

handwriting recognition.” In: Proc. of the 5th Int. Conf. on Document Analysis and

Recognition, pages 705 - 708.

Nunes, É. O. and Conci, A. (2003) “Técnicas de Descrição Regional Baseada em

Textura”, In: Anais do DINCON 2003, São José dos Campos, Brasil, 29 p.

Samarabandu, J. et al (1993) “Analysis of of Bone X-Rays Using Morphological

Fractals.”, In: IEEE Transactions on Medical Imaging, Volume 12, Number 3,

September, 1993, 466-470 p.

Sariyanni, C. –P A. et al (2001) “A fractal analysis CT liver images for the discrimination

of hepatic lesions: a comparative study”, In: Proceedings of the 23rd Annual EMBS

International Conference, Istanbul, Turkey, 2001, 1557-1560 p.

Universidade de Berna; “Instituto de Ciência da Computação e Matemática Aplicada”,

http://www.iam.unibe.ch/en, acessado em 21 de Fevereiro de 2011.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

12

Page 15: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Redes Neurais Artificiais aplicadas ao problema de

Roteamento de Veículos

Gustavo Rossler Pereira1, Rodrigo Luiz Antoniazzi

2

1Ciência da Computação – Universidade de Cruz Alta (UNICRUZ)

Rodovia Municipal Jacob Della Méa, Km 5.6 – 98.020-290 – Cruz Alta – RS – Brazil

2Departamento de Ciência da Computação – Universidade de Cruz Alta (UNICRUZ)

Cruz Alta, RS – Brasil.

[email protected], [email protected]

Resumo. Este trabalho propõe uma solução alternativa ao Problema de

Roteamento de Veículos, que consiste em planejar as rotas para entrega de

produtos aos clientes, por um determinado número de veículos com a máxima

eficiência, minimizando os custos. O problema está na categoria de problemas

NP-Difíceis, o que significa que não é viável se chegar à solução ótima em

tempo polinomial. Procura-se, então, encontrar uma boa rota de entrega.

Diversos métodos heurísticos já foram utilizados para solucionar o problema,

no trabalho que segue o método escolhido para tentar se chegar a uma solução

para o problema, foi Redes Neurais Artificiais, pois é uma área que vem se

desenvolvendo bastante nos últimos anos, e que tem como objetivo tratar os

problemas computacionais simulando o cérebro humano. Para testar a

eficiência do método, ele foi comparado ao método de GRASP.

Abstract. This paper proposes an alternative solution to the Vehicle Routing

Problem, which consists of planning routes to deliver products to customers,

for a number of vehicles with maximum efficiency while minimizing costs.

The problem is in the category of NP-Hard, what means that is not feasible

reach the optimal solution in polynomial time. So search is to try to find a

good route delivery. Several heuristic methods have been used to solve the

problem, in the work that follows the method chosen to try to reach a solution

to the problem was Artificial Neural Networks, because it is an area that has

been developed greatly in recent years and aims to address the problems

computer simulating the human brain. To test the efficiency of the method, it

was compared to the method of GRASP.

1. Introdução

O Problema de Roteamento de Veículos (PRV) é um problema clássico de otimização

combinatória, foi originalmente proposto por Dantzig e Ramser (1959), que também

define o problema como sendo uma generalização do problema do Caixeiro Viajante.

Este tipo de problema pode ser observado em várias áreas e situações diferentes, como

por exemplo, no escoamento de mercadorias de uma empresa, no serviço postal, em

redes de computadores, entre outros.

Para tentar se chegar uma solução para o problema do Roteamento de Veículos,

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

13

Page 16: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

neste trabalho foi utilizado um método heurístico de Redes Neurais Artificiais, mais

especificamente, utilizou-se a Rede Neural apresentada por Teuvo Kohonen (1997),

mais conhecida como os Mapas Auto-organizáveis de Kohonen ou SOM (Self

Organizing Maps). A fim de determinar a eficácia da RNA aplicada a este problema, foi

escolhido o método heurístico de GRASP para comparação. Este método tem sido

bastante utilizado em trabalhos de otimização combinatória e apresenta bons resultados.

A abordagem principal e também a maior motivação de estudos do problema é

na área comercial, visto que para uma empresa se manter competitiva no mercado é

necessário que se esteja atuando em uma área de atuação ampla, e logo, o custo com

transportes e logística é um fator importante.

2. Descrição do Problema

Dantzig e Ramser (1959) afirmam que o problema de Roteamento de Veículos tem por

objetivo a otimização do roteamento de uma frota de veículos entre um depósito central

e uma certa quantidade de pontos de entrega. Todos os pontos devem ser visitados e os

veículos devem voltar ao depósito central, há uma série de fatores que devem ser

respeitados para se chegar à solução.

Seja G = (V, A) um grafo direcionado onde V = {v0, v1,..., vn} é o conjunto de

vértices e A = {(vi, vj): i ≠ j} é o conjunto de arcos. O vértice v0 representa um

depósito onde se encontra um conjunto de veículos idênticos de capacidade Q, enquanto

os vértices restantes correspondem às cidades ou consumidores. Cada consumidor vi

tem uma demanda não-negativa qi e q0 = 0. A cada arco (vi, vj) está associada uma

distância não negativa vij que representa a distância entre os consumidores (nós). O

PRV consiste em determinar o conjunto de rotas que devem ser seguidas pelos veículos

minimizando os custos de transporte dado pelas distâncias obedecendo às seguintes

restrições:

(a) Cada rota começa e termina no depósito;

(b) Cada cidade de V\{v0} é visitada somente uma única vez por somente um

veículo;

(c) A demanda total de cada rota não pode exceder a capacidade do veículo.

3. O SOM

O SOM (Self-Organizing Maps ou Mapas Auto-Organizáveis) é uma rede neural

artificial que define um mapeamento de um espaço de entrada p-dimensional

contínuo para um conjunto finito de protótipos (neurônios), que são dispostos em um

arranjo topológico, geralmente bidimensional (Kohonen, 1997).

Os mapas auto-organizáveis de Kohonen são um importante modelo de rede

neural para redução dimensional e agrupamento de dados. O SOM pode aprender a

partir de dados complexos e multidimensionais e, transformá-los em um mapa

topológico de muito menos dimensões, geralmente uma ou duas dimensões.

O treinamento ou aprendizado da SOM é do tipo competitivo, não-

supervisionado, porque não há alvos de saída conhecidos associados com cada padrão

de entrada na SOM e durante o processo de treinamento, a SOM processa os padrões de

entrada e aprende a agrupar ou segmentar os dados através do ajuste dos pesos. Durante

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

14

Page 17: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

o processo de treinamento, padrões de entrada são apresentados para a rede. A cada fase

do treinamento quando um padrão de entrada x aleatoriamente escolhido do conjunto de

treinamento é apresentado, cada neurônio i na camada de saída calcula o quão similar a

entrada é ao seu peso wi. A similaridade é frequentemente medida por alguma distância

entre x e wi.

Conforme o treinamento continua, os neurônios ajustam seus pesos de acordo

com a relação topológica nos dados de entrada. O neurônio com a menor distância é o

vencedor e os pesos do nodo vencedor como também os dos nodos vizinhos são

fortificados ou ajustados para ficarem mais pertos do valor do padrão de entrada. Então,

o treinamento com SOM é não supervisionado e competitivo com a estratégia o

vencedor-ganha-tudo (Maimon, 2010).

4. GRASP

GRASP (Procedimento Guloso Adaptativo de Busca – ou Greedy Randomized

Adaptative Search Procedures) é uma heurística iterativa de partidas múltiplas, utilizada

para gerar soluções para problemas de otimização combinatória. O método GRASP, foi

desenvolvido por Feo e Resende (1989). Ele combina o poder de heurísticas gulosas,

aleatoriedade, e procedimentos de busca local.

O método GRASP, consiste basicamente de duas fases. Na primeira fase, uma

solução gulosa aleatória é gerada, a partir de uma lista restrita de candidatos (LRC). Na

segunda fase, é realizada uma busca local a partir da solução gerada na primeira fase,

então a melhor solução encontrada entre as duas fases é incluída na solução final. Esse

procedimento é realizado a cada iteração do algoritmo (Osman, 1996).

Uma característica importante do método GRASP, é a facilidade com a qual ele

pode ser implementado, com apenas alguns poucos parâmetros de configurações ele já

está pronto para ser utilizado em problemas relativamente complexos. Dessa forma o

desenvolvimento pode focar na eficiência da implementação das estruturas de dados

utilizadas, para garantir rápidas iterações para o método (Floudas, 2001).

5. DESENVOLVIMENTO

Essa parte do trabalho destina-se a descrever como foram desenvolvidos os algoritmos

do trabalho. Para um melhor entendimento de como eles foram construídos, abaixo

serão listados os passos principais que foram a base para o desenvolvimento do projeto:

1. Distribuição dos dados de entrada, coordenadas dos pontos de coleta e do

depósito;

2. Divisão do mapa de acordo com o número de veículos;

3. Aplicação do SOM a cada um dos segmentos gerados no mapa;

4. Aplicação do método de GRASP a cada um dos segmentos gerados no mapa.

A distribuição dos dados de entrada neste trabalho foi definida aleatoriamente, então

para as coordenadas dos pontos de coleta e do depósito foram escolhidos números

aleatórios entre 0 e 1, apenas para fim de testes e comparações entre os métodos

heurísticos. Além das coordenadas, outro parâmetro de configuração necessário para

execução do algoritmo, é o número de veículos que farão a coleta no mapa de

distribuição. As seções a seguir (5.1, 5.2 e 5.3) descrevem detalhadamente os próximos

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

15

Page 18: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

passos da construção dos algoritmos.

5.1. Divisão do mapa

A partir da entrada é gerado o mapa utilizando as coordenadas (x, y) dos pontos de

coleta e do depósito. O próximo passo do algoritmo é dividir o mapa em segmentos,

baseado no número de veículos disponíveis, de modo a equilibrar a quantidade de

pontos por cada um dos veículos.

Para gerar os segmentos de forma equilibrada, foram utilizados os ângulos das

cidades (pontos de coleta) em relação ao depósito. Os valores dos ângulos foram

armazenados em um vetor em ordem crescente. Então, os intervalos dos segmentos

foram criados dividindo o vetor de ângulos pelo número de veículos.

5.2. Aplicação do SOM

Em cada um dos segmentos gerados para os veículos, é criada uma camada de k

neurônios, sendo k igual ao dobro de pontos de coleta do segmento, esta camada terá

uma forma de anel visando uma melhor aproximação dos pontos a cada iteração. Cada

um desses neurônios da segunda camada terá um vetor com o número de posições igual

ao número de cidades do segmento em que ele se encontra, sendo que esse vetor será

iniciado com valores aleatórios.

A cada iteração é escolhido um ponto de coleta aleatoriamente, então o neurônio

mais próximo ao ponto é ativado, tendo os valores de seus pesos ajustados e ficando

mais próximo do ponto de coleta escolhido. Durante as iterações todos os neurônios

sofrem ajuste nos pesos, só que o valor do ajuste diminui conforme a distância em

relação à cidade escolhida aumenta, assim, quanto mais perto do ponto de coleta

escolhido, maior é o ajuste nos pesos do neurônio e maior será o seu deslocamento.

Dessa forma, ao final das iterações os neurônios estarão junto às cidades, cada neurônio

junto à cidade mais próxima inicialmente, formando a rota final.

5.3. Aplicação do GRASP

A primeira fase do método GRASP consiste em uma busca gulosa aleatória. Essa

primeira busca gera então um conjunto com a sequência de pontos – o caminho a ser

percorrido – a partir do ponto de partida. Inicialmente é gerada a LRC para o ponto de

partida e escolhido aleatoriamente um novo ponto, e assim por diante até se chegar ao

número máximo de pontos do segmento. Dessa forma uma rota é criada através dos

pontos escolhidos.

A construção da LRC para cada ponto de coleta é feita destacando os vizinhos

mais próximos do ponto inicial informado, o número de vizinhos que formarão a LRC é

um parâmetro de configuração do método, sendo que neste trabalho foi utilizado um

valor x, sendo x igual a 10% do número de pontos do segmento do mapa. Então se a

rota está sendo gerada em um sub-mapa com 30 pontos de coleta, a LRC para cada

ponto terá o tamanho igual a 3 (três).

Na segunda fase é realizada a busca local, para tentar encontrar na vizinhança da

solução gerada na primeira fase, uma solução melhor, de custo menor. Essa busca é feita

nessa vizinhança até que se encontre a melhor solução. Neste trabalho, optou-se por na

segunda fase escolher entre todas as soluções geradas na primeira fase a melhor delas, e

então definir esta solução como sendo a melhor encontrada.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

16

Page 19: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

6. Análise de Resultados

Nesta seção do trabalho serão apresentados os resultados obtidos durante os

testes dos algoritmos desenvolvidos, conforme a seção 5. Para a realização dos testes

foram criadas algumas instâncias aleatoriamente, valores das coordenadas (x, y) foram

criados aleatoriamente entre 0 e 1, e o depósito em todos os casos foi pré-definido nas

coordenadas (0.5, 0.5), ou seja, no centro do mapa.

Os resultados que apresentados a seguir são basicamente a comparação dos dois

métodos heurísticos, segundo ao custo total das rotas geradas por cada método para cada

conjunto de cidades, e pelo tempo de execução dos algoritmos. O custo das rotas foi

calculado somando a distância entre cada cidade, do caminho escolhido.

Figura 1 – Gráfico comparativo de custo

50 100 300 500 1000

0,000

10,000

20,000

30,000

40,000

50,000

60,000

70,000

80,000

Comparação de Custo - Kohonen e GRASP

Kohonen

GRASP

Número de Cidades

Cu

sto

To

tal

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

17

Page 20: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Figura 2 – Gráfico comparativo de tempo

Os gráficos apresentados na Figura 1 e na Figura 2 mostram o custo das rotas geradas e

o tempo de execução, dos dois métodos para o número de cidades mostrado no eixo x,

no eixo y então estão os números resultantes de cada método.

7. CONCLUSÕES

Como pode ser visto nos gráficos (Figura 1 e Figura 2) e tabelas comparativas

apresentadas na seção 5, cada método levou vantagem em uma característica diferente

da análise de desempenho. Os Mapas Auto-organizáveis de Kohonen se mostram mais

eficientes na geração das rotas, criando rotas mais otimizadas que o método GRASP.

Nos resultados analisados neste trabalho, o método de Kohonen apresentou variações de

4,08% a 39,36% a menos no custo total das rotas obtidas. Isso mostra uma grade

diferença quando a quantidade de cidades for um número grande. Por outro lado, na

comparação do tempo de execução, ou seja, o tempo que o programa leva para analisar

o mapa e gerar as rotas, o método de GRASP mostrou-se mais rápido que o SOM.

Portanto, salienta-se, após todas as análises, que para o problema específico de

roteamento de veículos, o SOM apresentou melhor desempenho, mesmo sendo mais

lento para gerar os resultados. Essa diferença de tempo não supera a qualidade das rotas

geradas por esse método em comparação com o método de GRASP.

8. REFERÊNCIAS

DANTZIG, G. B.; RAMSER, J. H. 1959. The truck Dispatching Problem.

Managemente Science, Vol.6, No.1, p.80-91.

FEO; RESENDE. “Greedy Randomized Adaptive Search Procedures” , Resende,

M.G.C. & Feo, T.A. Journal of Global Optmization, 6:109-133, 1995.

FLOUDAS, Christodoulos A.; PARDALOS, Panos M. Encyclopedia of Optimization,

Volume 1. Norweel, Mssachusetts USA, 2001.

KOHONEN, T. Self-Organizing Maps. 2nd Edition. Springer Verlag, Berlim, 1997.

50 100 300 500 1000

0,000

0,200

0,400

0,600

0,800

1,000

1,200

Comparação de Tempo - Kohonen e GRASP

Kohonen

GRASP

Número de Cidades

Te

mp

o d

e E

xecu

çã

o (

se

gu

nd

os

)

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

18

Page 21: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

MAIMON, O.; ROKACH, L. Data Mining and Knowledge Discovery Handbook. 2nd

Edition. New York, USA, 2010.

OSMAN, I. H.; KELLY, J. P. Meta-heuristics: theory & applications. Norweel,

Mssachusetts, USA, 1996.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

19

Page 22: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Aprendizagens Significativa e Colaborativa e o

Ensino do Proeja FIC

Rosana Wagner, Sergio da Costa Nunes, Fábio Diniz Rossi

Instituto Federal Farroupilha

Campus Alegrete

{rosanawagner, sergio, [email protected]}

Resumo. Este artigo tem como objetivo verificar a utilização de uma metodologia de

ensino em um curso de formação inicial e continuada de EJA (Proeja FIC). O trabalho foi

realizado na disciplina de redes de computadores, esta disciplina é composta por conceitos

que compreendem um alto nível de abstração. Em geral o público alvo deste curso é

composto por pessoas que passaram um longo tempo longe da escola e longe de estudos,

por isso, a dificuldade de aprendizagem deste público é muito alta. Este trabalho compõe-

se do desenvolvimento de mapas conceituais levando em consideração aprendizagens

significativas e colaborativas em busca de um melhor desenvolvimento e aproveitamento

da disciplina. Neste contexto, o experimento adquire significativa importância e espera-se

contribuir para o desenvolvimento de novas metodologias que contribuam com o processo

de ensino/aprendizagem destes alunos.

Abstract. This article aims to verify the use of a teaching methodology on a course of

initial training and continuing adult education (PROEJA FIC). The study was conducted in

the discipline of computer networks, this course is composed of concepts that comprise a

high level of abstraction. In general the target audience of this course is composed of

people who spent a long time away from school and away from studies, so the difficulty of

learning of this audience is very high. This work consists of developing conceptual maps

taking into account meaningful learning and collaborative search for a better development

and use of discipline. In this context, the experiment acquires significant importance and is

expected to contribute to the development of new methodologies that contribute to the

teaching/learning of these students.

Palavras-chave: Aprendizagem significativa, aprendizagem colaborativa, mapas

conceituais, Proeja FIC, Redes de Computadores.

1. INTRODUÇÃO

A qualificação da mão de obra é um dos maiores objetivos do governo atualmente. O

curso de Proeja visa à inclusão de uma formação técnica juntamente com formação normal

proposta pelo EJA. O Curso de Formação Inicial e Continuada em Informática Integrado ao

Ensino Fundamental na Modalidade de EJA (PROEJA FIC) tem esta mesma visão, porém é

voltado para nível fundamental.

Em geral as pessoas que frequentam este tipo de modalidade de ensino tem idade mais

avançada, família, filhos, emprego, entre outras atribuições. Isto faz com que a maioria delas não

tenham mais o mesmo empenho e vontade de estudar do que uma criança, ou uma pessoa que

cursa o ensino fundamental em idade regular.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

20

Page 23: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Considerando estas características e, partindo-se de uma análise mais acurada da situação

que envolve as demandas necessárias ao processo de ensino e aprendizagem, procurou-se neste

trabalho desenvolver uma metodologia através da utilização de dois tipos de aprendizagens

(significativa e colaborativa) com o uso das ferramentas de mapas conceituais e Google Docs.

O trabalho desenvolve-se em uma turma de Proeja FIC do curso de Informática na

disciplina de redes de computadores por considerar-se de fundamental importância na grade

curricular dos cursos técnico em informática.

O problema de pesquisa do qual surgiu este trabalho foi “Qual é o nível de

aprofundamento que é possível na disciplina de redes de computadores para a modalidade

PROEJA FIC Suporte e Manutenção de Hardware?” tendo como principal hipótese “O conteúdo

que geralmente consiste a ementa da disciplina deve ser transmitido de forma diferenciada e em

um nível de abstração mais amplo para que o aprendizado realmente aconteça.”

Este artigo está organizado através de ume seção de referencial teórico, onde são

explicados alguns dos conceitos fundamentais para o desenvolvimento deste trabalho. A seção 3

compreende a metodologia de desenvolvimento do trabalho. A seção 4 corresponde uma rápida

avaliação e a seção 5 contém os resultados e a conclusão.

2. REFERENCIAL TEÓRICO

2.1 Aprendizagem colaborativa

Conforme Vygotsky (1994) os processos mentais do indivíduo não estão dissociados na

origem das interações sociais porque eles passam, ou seja, o desenvolvimento cognitivo do ser

humano não pode ser entendido sem referencia ao meio social. A aprendizagem colaborativa

vem ao encontro da teoria da mediação de Vygotsky na medida em que traz consigo interação

entre os alunos na aquisição de informações para construção de seus conhecimentos.

O ambiente virtual, como por exemplo o Google Docs, é particularmente propício à

aprendizagem colaborativa por sua flexibilidade no que se refere a tempo, espaço, diversidade de

itinerários ou percursos. Comunidades virtuais permitem a interação de todos com todos, em um

processo similar ao que ocorre em uma reunião na qual qualquer um pode tomar a palavra.

2.2 Aprendizagem significativa

David Ausubel (1980), criador da aprendizagem significativa, estabeleceu que os

conceitos ou a informações existentes em nossa estrutura cognitiva são os subsunçores1 e estes,

servem de ancoradouro para as novas informações. As novas relações podem ser estabelecidas

de 3 formas:

1. De forma relacional: Quando o indivíduo relaciona um nome a um signo, por exemplo,

quando uma criança consegue relacionar a palavra cachorro ao signo (desenho ou o

próprio animal).

2. Em formas de conceitos: É um tipo mais aprimorado de aprendizagem relacional

representando não apenas signos mas conceitos mais abrangentes e genéricos, como

exemplo, cachorro quente.

3. De forma proposicional: Pode-se considerar como sendo um nível acima da

aprendizagem relacional, agora o indivíduo não relaciona apenas palavras com objetos,

1 Subsunçõres - O subsunçor é uma estrutura específica ao qual uma nova informação pode se integrar ao cérebro

humano, que é altamente organizado e detentor de uma hierarquia conceitual que armazena experiências prévias do

aprendiz.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

21

Page 24: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

mas sim, estabelece relações entre conceitos. Por exemplo, cachorro preto é um conceito

que pode relacionar-se com carrocinha, formando um conceito mais inclusivo: o cachorro

preto está preso na carrocinha, formando o que Ausubel chamou de proposição.

A assimilação ocorre quando um novo conceito potencialmente significativo é agregado a

outro pré-existente, tornando-o maior e mais evidente. A assimilação pode ocorrer de duas

formas: por diferenciação progressiva, quando novos conceitos são acrescentados a partir de

conceitos maiores, por exemplo, podemos acrescentar ao subsunçor Internet o conceito de redes

locais de computadores, e por reconciliação integrativa onde parte-se do conceito menos

inclusivo para os mais inclusivos, por exemplo, acrescentamos o subsunçor Internet a partir do

conceito de redes locais de computadores.

2.3 Mapas conceituais

Os mapas conceituais são baseados na teoria da Aprendizagem Significativa de David

Ausubel. Podemos conceitua-los como sendo diagramas hierárquicos que indicam conceitos e as

relações entre estes conceitos. Em sua organização, os mapas conceituais utilizam-se dos

princípios da diferenciação progressiva e da reconciliação integrativa.

Estas organizações gráficas podem representar as atividades do currículo de um curso, dos

conteúdos de uma disciplina e ainda tornar possível o estudo interdisciplinar e/ou transdisciplinar

de cursos.

2.4 Disciplina de Redes de Computadores

A disciplina de redes de computadores pode ser considerada de grande importância no

currículo de qualquer curso técnico em informática. A ementa desta disciplina propõe o estudo

de como se dá a comunicação e transmissão de dados.

A figura 1 demonstra as conexões dos conceitos de redes de computadores.

Figura 1 - Mapa conceitual da disciplina de Redes de Computadores

3. METODOLOGIA

A metodologia utilizada para realização deste trabalho está constituída de um estudo de caso

com avaliação qualitativa e abrangeu os seguintes tópicos:

- Aplicação de avaliação diagnóstica para verificar os conhecimentos prévios. Aplicação de

um questionário.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

22

Page 25: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

- Elaboração de um mapa conceitual da disciplina de redes de computadores, levando-se em

consideração os subsunções apresentados pelos alunos na avaliação diagnóstica.

- Mapa conceitual do assunto introdutório conforme figura 2.

- O mapa do assunto introdutório orientou os alunos na elaboração do documento, conforme

tabela 1, feito com a ferramenta colaborativa Google Docs.

Tabela (1) – documento elaborado pelo Proeja FIC

Trabalho De Informática – identificação dos conceitos básicos de Redes de Computadores, orientado através do Mapa

Conceitual.

PROEJA FIC - ESCOLA HONÓRIO LEMES

CONCEITO DA INTERNET

A Internet serve, para melhorar a cultura e os conhecimentos do ser humano. Serve também para ver as notícias do Mundo, para

comunicar com diversas pessoas espalhadas pelo mundo fora, para trabalhar (no caso das pessoas mais adultas). É, sobretudo

uma fonte de comunicação. Há vários aplicações da Internet. As páginas os blogs, e-mail e as redes sociais na nossa opinião

são os principais. Os navegadores servem para se puder pesquisar na Internet. Há diversos navegadores, como o Internet

Explorer, Mozilla Firefox, Opera, Netscape, entre outros.

ARPANET-

Arpanet é idéia da construção de uma rede de computadores que pudessem trocar informações. Arpanet surgiu no Advanced

Research Projects Agency, Arpa, do Departamento de Defesa dos EUA quando, em 1962, a Agência contratou J.C.R. Licklider

para liderar as suas pesquizas através do ``Information Processing Techniques Office'', IPTO, da Agência. Um dos sonhos de

Licklider era uma rede de computadores que permitisse o trabalho cooperativo em grupos, mesmo que fossem integrados por

pessoas geograficamente distantes, além de permitir o compartilhamento de recursos escassos, como, por exemplo, o

supercomputador ILLIAC IV, em construção na Universidade de Illinois, com o patrocínio da própria ARPA. O projeto foi

amadurecendo e adquiriu momento quando a ARPA contratou Lawrence Roberts , do Lincoln Lab do MIT, em 1967, para

tornar a idéia uma realidade. Nesta mesma época Licklider, tendo saído da ARPA em 1964, assumiu a direção do Projeto MAC

no MIT.

LINHA DO TEMPO

Dez anos após a liberação da operação comercial da internet, o Brasil tem hoje cerca de 30 milhões de internautas, sendo 11

milhões domiciliares, segundo informações do Comitê Gestor de Internet no Brasil e o Ibope/NetRatings. Acompanhe como se

deu a história e o crescimento.

1962 - Governo americano inicia o desenvolvimento de uma rede de comunicação para fins militares.

1969 - A Arpanet em projeto do Departamento de Defesa dos EUA para interligar pontos estratégicos a uma rede

descentralizada, que não pudesse ser destruída por bombardeios.

1972 - A arroba (@) passa a ser utilizada para a comunicação via emails.

1983 - É estabelecido o TCP/IP (Transmission Control Protocol/Internet Protocol), a linguagem comum usada por todos os

computadores conectados à rede até hoje.

1984 - É registrado o primeiro domínio pontocom, da empresa de informática Symbolics.com.

1988 - No Brasil ocorre a conexão à Bitnet da Universidade Federal do Rio de Janeiro (UFRJ), do Laboratório Nacional de

Computação Científica (LNCC) e da Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP).

1989 - No Brasil, uma rede conecta a FAPESP ao Fermilab, laboratório de Física de Altas Energias de Chicago (EUA), por

meio de retirada de arquivos e correio eletrônico. O Instituto Brasileiro de Análises Sociais e Econômicas (Ibase) coloca no ar

rede Alternex.

1991 - TIM Berners-Lee e Robert Cailliau criam a World Wilde Web, sistema de hipertextos que funciona a partir de links

clicava que levam a outros sites. O WWW facilitou a navegação pela rede. No Brasil, o acesso ao sistema foi liberado para

instituições educacionais, de pesquisa e a órgãos do governo.

1992 - Instituto Brasileiro de Análises Sociais e Econômicas (Ibase) e a Associação para o Progresso das Comunicações (APC)

liberam o uso da Internet para ONGs.

1993 - Marc Andreessen, de 23 anos, cria o Mosaico, o primeiro browser (visualizador) da Internet. Dois anos depois, lançará o

Netscape. No Brasil, ocorre a primeira conexão de 64 kbps à longa distância, estabelecida entre São Paulo e Porto Alegre.

1995 - Os ministérios das Comunicações e da Ciência e Tecnologia criam a figura do provedor de acesso privado à Internet e

liberam a operação comercial no Brasil. Em maio, é lançado o primeiro jornal brasileiro na Internet, o Jornal do Brasil. Em

junho, o Bradesco dá início a seu serviço de Internet.

1996 - O Brasil tem 100 mil usuários. Em maio, surge o Universo Online (UOL). Em 1º de dezembro, é lançado o portal e

provedor de internet ZAZ, com o slogan Zaz – O seu canal na internet. Gilberto Gil lança a canção “Pela Internet”. Lançado o

primeiro comunicador instantâneo, o ICQ.

1997 - Início da tecnologia streaming (vídeo).

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

23

Page 26: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

1998 - Começam os investimentos de empresas estrangeiras de tecnologia e de comunicações no Brasil, que já tem 1 milhão de

usuários. 26% das declarações de Imposto de Renda são feitos via internet. O resultado das eleições para presidente,

governadores e deputados é publicado em tempo real. Surge o Zipmail, serviço de email gratuito via web. Larry Page e Sergey

Brin, dois estudantes Ph. D de Stanford criam o Google.

1999 - O Brasil já tem 2,2 milhões de usuários. Governo brasileiro lança o programa Sociedade da Informação, para combater a

exclusão digital. A Telefônica compra o ZAZ e lança a Terra Networks. A Jovem Pan estréia as transmissões de rádio via web.

Spawn Fanning, um universitário norte-americano cria o Napster.

2000 - O Napster proporciona o compartilhamento de músicas em mp3 entre usuários e infringe as leis de direitos autorais. A

indústria fonográfica estremece com a queda das vendas e bandas como Metallica se levantam contra seus fãs por sentirem-se

lesado. Banda larga chega ao Brasil. O iG lança, no País, o primeiro provedor de acesso grátis à internet. A chamada “bolha da

internet” tem seu ápice em 2000, mas no mesmo ano começa a cair vertiginosamente, com as ações das empresas de tecnologia

despencando nos mercados.

2002 - Governo brasileiro levanta a bandeira do software livre para proporcionar a inclusão digital. Início do Wi-Fi (internet

banda larga sem fio). TV Terra atinge mais de 3 milhões de visitantes por mês. Ondas de serviços online modificam o

comportamento do internauta: álbum de fotos, e-mail protegido, bloggers, Insta Messenger.

2003 - Mozilla desenvolve o browser gratuito Firefox. Apple lança o ITUNES, loja virtual de música. A Associação da Indústria

de Gravadoras Norte-Americanas inicia os processos contra usuários de baixam músicas ilegalmente.

2004 - O Brasil é líder mundial de inscritos no Orkut, o site de comunidades virtuais mais procurado do mundo. Atualmente,

somos cerca de 30 milhões de internautas. O uso de webcams começa a se popularizar.

2005- Em abril, o brasileiro bate recorde de navegação, passando 15 horas e 14 minutos na internet, tornando-se o primeiro País

com maior tempo de navegação domiciliar, ultrapassando o Japão.

- A partir do documento criado pelos alunos foi elaborado um novo mapa conceitual,

conforme figura 3. Comparou-se este mapa com o mapa de referencia anterior onde foi feita a

avaliação do aprendizado e também do grau de aprofundamento do conteúdo.

Figura 3 - Mapa Conceitual criado com base

no documento produzido pela turma.

4. AVALIAÇÃO E RESULTADOS

Um projeto realizado anteriormente a esta artigo visou a verificação de algumas

condições da disciplina em questão nesta modalidade de ensino e as respostas verificadas nesta

modalidade de ensino foram de que realmente a hipótese foi confirmada: é necessária uma

maneira diferenciada de desenvolvimento da disciplina.

Comparando-se os dois mapas conceituais observa-se que o mapa elaborado a partir do

documento produzido pelos alunos, contem os mesmos elementos (proposições) do mapa

conceitual padrão feito pelos pesquisadores. A diferença encontra-se na ordem dos elementos

visualmente observados.

Figura 2 - Mapa conceitual para criação

do documento.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

24

Page 27: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Como resultado desta pesquisa criou-se uma metodologia que possibilita o

desenvolvimento da disciplina de Redes de Computadores em conjunto com as demais

disciplinas profissionalizantes e melhora consideravelmente o entendimento por parte dos alunos

reduzindo paralelamente a dificuldade encontrada pelo docente. Verifica-se também no currículo

deste curso, que a disciplina de Informática Básica deveria ter uma carga horária maior

reduzindo a carga horária das disciplinas mais difíceis, uma vez que é de conhecimento de

qualquer educador que é necessário o perfeito entendimento do básico para que novos conceitos

mais amplos possam ser introduzidos.

5. CONCLUSÃO

Este artigo visou a demonstração através de estudos e experiência dos autores com as

turmas citadas de como as disciplinas da modalidade Proeja FIC devem ser desenvolvidas. Uma

vez que esta é uma modalidade de ensino diferenciada, a forma de ensino também deve ser

diferenciada.

Através da revisão da literatura e principalmente da observação e experiência com alunos

em sala de aula foi possível propor uma metodologia de desenvolvimento das disciplinas

profissionais deste curso e testa-la.

A disciplina alvo deste estudo foi Redes de Computadores, visto que esta possui

conceitos de relativa dificuldade associada.

A experiência dos autores inclui o desenvolvimento da mesma disciplina no nível de

ensino da graduação, de cursos técnico, do Proeja e do Proeja FIC, o que possibilitou a

identificação da dificuldade de entendimento dos alunos e de transmissão de conteúdo pelos

docentes.

Conclui-se que a adoção da metodologia através da utilização de mapas conceituais

associados a aprendizagem colaborativa via Google Docs foi significativa na medida em que os

alunos desenvolveram o trabalho a contento(embora alterando a configuração do mapa) porém

sem alterar as relações cognitivas advindas através da proposta feita pelos autores da pesquisa no

mapa conceitual padrão. Compreende-se ainda que o grau de aprofundamento foi superficial

dadas as características sócio culturais dos alunos do Proeja FIC.

Observou-se que o mapa conceitual colaborou de forma significativa na compreensão do

trabalho a ser realizado pela turma.

REFERENCIAS

AUSUBEL, D. Psicologia Educativa: um ponto de vista cognoscitivo. México: Trilhas, 1978.

AUSUBEL, D; NOVAK, J; HANESIAN, H. Psicologia Educacional. Rio de Janeiro.

Interamericana, 1980.

MAGDALENA, B; COSTA, Í. Internet em sala de aula: com palavras, os professores. Porto

Alegre: Armat, 2003.

MOREIRA, M; BUCHWEITZ, B. Mapas Conceituais: instrumentos didáticos para

avaliação e analise de currículo. São Paulo: Moraes 1987.

PROEJA FIC. Edital do Programa Nacional de EJA Integrada à Educação Profissional,

2009

TANENBAUM, A. (2003) Redes de Computadores, Ed. Campus. Rio de Janeiro.

VYGOTSKY, L. S. A formação social da mente. São Paulo: Martins Fontes, 1994.

VYGOTSKY, L. S. Pensamento e linguagem. São Paulo: Martins Fontes, 1989.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

25

Page 28: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Modelagem e Implementacao Bulk Synchronous Parallel daCompressao de Imagens Baseada em Fractais

Lucas Graebin1, Marcio Rosa da Silva1, Rodrigo da Rosa Righi1

1 Programa Interdisciplinar de Pos-Graduacao em Computacao Aplicada (PIPCA)Universidade do Vale do Rio dos Sinos (UNISINOS)

Av. Unisinos, 950 – 93.022-000 – Sao Leopoldo – RS – Brazil

[email protected], {marcior,rrrighi}@unisinos.br

Abstract. Bulk Synchronous Parallel is one of the most used programming mo-dels to write message-passing driven applications. In this context, the currentpaper presents a BSP application modeling and implementation. Fractal-basedimage compression was chosen as the application target. It iscomputationallyintensive and offers good results when considering both the method eficiencyand the quality of the resulted image. jMigBSP library was selected as BSPmiddleware, since it offers an easy to use interface and asynchronous commu-nication directives. Finally, the results emphasize the eficiency of both the BSPmodeling and library employed since the speedup indexes wereclose to linear.

Resumo. BSP (Bulk Synchronous Parallel)e um dos modelos mais usados paraa organizacao de aplicacoes com passagem de mensagens. Nesse contexto, opresente artigo apresenta a modelagem e a implementacao de uma aplicacaoBSP. A compressao de imagens segundo o metodo de Fractal foi a aplicacaoescolhida. Elae computacionalmente intensa e produz bons resultados, tantona eficiencia da reducao quanto na qualidade da imagem final. jMigBSP, porsua vez, foi a biblioteca usada na avaliacao. Sua adocao se justifica pela suainterface simples, comunicacao assıncrona e pelo seu desempenho competitivose comparada com bibliotecas de codigo nativo. Por fim, os resultados enfati-zam a eficiencia da modelagem e da biblioteca de comunicacao utilizadas, umavez que osındices de speedup sao praticamente lineares.

1. Introducao

Nos tempos atuais, a computacao envolvendo redes de computadores como plataforma deexecucaoe cada vez mais utilizada para propositos gerais [Batista et al. 2008]. O uso declusterse ate mesmo degrids e pertinente quando ha a necessidade de recursos compu-tacionais para os quais umunico sistemae insuficiente. Especialmente no caso degrids,e comum te-los atraves de uma arquitetura heterogenea formada por diferentesclusters.Para viabilizar a computacao de alto desempenho nessas maquinas, faz-se necessario aescolha de um modelo de programacao adequado, o uso de tecnicas que visam o altodesempenho e uma biblioteca de comunicacao simples e eficiente.

Quanto ao modelo de programacao, uma possibilidadee o emprego decomputacoes em fases sıncronas, tambem chamado de modelo BSP (Bulk SynchronousParallel) [Valiant 1990]. Ele se destaca na organizacao de aplicacoes paralelas de sucesso[Bonorden 2007], como previsao meteorologica e sequenciamento de DNA. Aplicacoes

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

26

Page 29: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

BSP sao compostas por um conjunto de processos que executam superetapas. Cadasuperetapae subdividida em tres fases: (i) computacao local em cada processo; (ii)acoes de comunicacao global usando passagem de mensagens e; (iii) uma barreira desincronizacao. A respeito das tecnicas de programacao,e pertinente utilizar mecanismosde comunicacao assıncrona para esconder a latencia de comunicacao. Por fim, a escolhada biblioteca depende de sua aplicabilidade, portabilidade e seus recursos. Em especial,mecanismos de migracao de processos ganham cada vez maisenfase quando se faz usode recursos heterogeneos e computacoes intensivas e sıncronas.

Nesse contexto, este artigo apresenta uma modelagem paralela segundo o modeloBSP para o problema de compressao de imagens. Para tal, utilizou-se a tecnica comperdas (lossy) denominada metodo de Fractal, visto que representa um problema compu-tacionalmente intenso e obtem altas taxas de compressao sem degradar demasiadamentea figura alvo [Hufnagl and Uhl 2000]. Para validar a modelagemrealizada, foi utilizada abiblioteca Java jMigBSP [Graebin and Righi 2011]. Ela apresenta uma interface simplespara a programacao paralela e se destaca pelas caracterısticas de suporte a migracao deobjetos e comunicacao assıncrona eone-sided. Os resultados obtidos neste trabalho saosatisfatorios visto que o acrescimo de processadores provoca uma diminuicao de tempocompatıvel com tal atitude. Isto se explica pelo fato de a aplicacao serCPU-Boundetrivialmente paralelizavel (sem dependencias de calculo entre ospixelsda imagem).

A proxima Secao descreve a biblioteca usada nos testes. A Secao 3 apresenta oproblema e sua modelagem paralela. As Secoes 4 e 5 relatam os resultados experimentaise os trabalhos relacionados, respectivamente. Por fim, as conclusoes obtidas com estetrabalho sao apresentadas na Secao 6.

2. jMigBSP: Biblioteca Java para o Reescalonamento de Objetos

A biblioteca jMigBSP oferece uma interface de programacao Java para a escrita deaplicacoes BSP [Graebin and Righi 2011]. A principal contribuicao de jMigBSP diz res-peito as facilidades de reescalonamento de objetos em duas maneiras: (i) usando diretivasde migracao no codigo da aplicacao e; (ii) atraves do balanceamento de carga automaticoem nıvel demiddleware. Para escrever uma aplicacao utilizando jMigBSP,e necessarioestender a classejMigBSPe implementar o metodorun(). Este metodo devera conter ocodigo que sera executado em paralelo. A interface de jMigBSPe composta por um con-junto pequeno de seis metodos. Primeiramente, a quantidade de objetos paralelos podeser consultada com a chamada do metodobsp nprocs(), e o codigo identificador de cadaobjeto pode ser recuperado combsp pid(). O metodobsp sync() e uma barreira quesincroniza todos os objetos. Ao termina-lo, todas as mensagens enviadas na superetapaanterior estarao disponıveis para uso nobufferdo objeto destino.

Al em dos metodos para consulta e delimitacao de superetapas, jMigBSP possuirotinas para comunicacaoone-sidedque permitem ao programador ler e escrever direta-mente na memoria de um objeto remoto. Por exemplo, o metodobsp put() armazena da-dos na memoria de um objeto destino sem a participacao ativa deste. Este metodo tem umcomportamento assıncrono, permitindo ao programador executar calculosuteis enquantoa RMI e realizada. Em adicao, jMigBSP permite o reescalonamento explıcito de objetos.Atraves do metodobsp migrate(), o programador pode migrar o objeto chamador paraum no remoto ou para um no onde outro objeto esta em execucao. Este mecanismo per-

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

27

Page 30: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

mite que o programador altere o mapeamento inicial de objetos para recursos em respostaao comportamento da aplicacao e da infraestrutura. Alem disso, a extensao da classeLBjMigBSPao inves dejMigBSP proporciona o reescalonamento de objetos de formaautomatica para a aplicacao. A sua vantagem esta no fato que o programador nao inserelinhas de codigo para tratar a localizacao dos objetos. Trabalhos anteriores enfatizamsituacoes onde jMigBSP obtem um melhor desempenho ao empregar o reescalonamentode objetos em relacao a uma biblioteca de codigo nativo [Graebin and Righi 2011].

3. Modelagem da Aplicacao BSP de Compressao de Imagens

A compressao de imagens utilizando a tecnica de Fractal explora similaridades den-tro das imagens, as quais sao descritas por uma transformacao contrativa da mesma[Hufnagl and Uhl 2000]. O algoritmo consiste na transformac¸ao de blocos, os quais apro-ximam partes menores da imagem por partes maiores. As partesmenores sao chamadasde intervalos, enquanto as maiores de domınios. A uniao de todos os intervalos formauma imagem. Os domınios sao selecionados livremente dentro da imagem. Para cada in-tervalo, um domınio apropriado deve ser encontrado. A distanciarms e calculada com oobjetivo de julgar a qualidade de um mapeamento. Basicamente, o tempo de codificacaodepende do numero de domınios que devem ser comparados aos intervalos.

A modelagem considera a variacao na quantidade de domınios e no numero deprocessos. A estrategia combina o modelo de programacao BSP com o paradigma depipelinecircular. O Algoritmo 1 apresenta a organizacao de uma simples superetapa. Pri-meiramente, conjuntos de domınios sao distribuıdos uniformemente entre os processos.Cada processo, num primeiro momento,e designado a calcular um conjunto de interva-los. As melhores combinacoes de domınio para os intervalos calculados sao armazenadasno processo. Na sequencia, esse processo envia ao vizinho da direita essas combinacoes,juntamente com o conjunto de intervalos calculado anteriormente e que serao a carga detrabalho do receptor na proxima superetapa.

Algoritmo 1 Modelagem de uma superetapa para o problema da compressao de Fractal1: Considerando um conjunto de intervalosr para a imagem.2: for cada domınio pertencente a um processo especıfico do3: for cada intervalo emr do4: for cada isomeria de um domınio do5: Calculerms(intervalo, domınio)6: end for7: end for8: end for9: Cada processoi (0 ≤ i ≤ n − 1) envia dados para o seu vizinho da direitai + 1. O

processon− 1 transmite para o processo0 (onden e o numero de processos).10: Chamada para barreira de sincronizacao.

Quando todos os conjuntos de intervalos tiverem passado portodos os processosdopipeline, aultima superetapae computada. Nela, umunico processoe responsavel porsolicitar aos demais as melhores combinacoes obtidas de domınios e intervalos. De possedessas combinacoes, o processo escolhido produz a imagem resultante. A modelagemrequern+1 superetapas para a resolucao do algoritmo, sendon a quantidade de processos

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

28

Page 31: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

paralelos e a quantidade de processos que um conjunto de intervalos precisara percorrerpara completar opipeline. Por fim, uma superetapa adicionale utilizada para a geracaoda imagem resultante.

4. ResultadosA avaliacao compreendeu o desenvolvimento da modelagem utilizando abibliotecajMigBSP. Os testes foram executados em umcluster composto por 16 nos Intel Core2 Duo de 2,93 GHz. Eles estao ligados por uma rede de 100 Mbps. A Tabela 1 apresentaos tempos de execucao do algoritmo sequencial e o desvio padrao obtido para uma ima-gem de256× 256 pixelsquando variado a quantidade de domınios. A Figura 1 (a) ilustraa imagem utilizada na avaliacao. As Figuras 1 (b), (c) e (d) apresentam as imagens resul-tantes apos a execucao do algoritmo de compressao utilizando a quantidade de domıniosdos Cenarios 1, 2 e 3, respectivamente. Em especial, observa-se quea Figura 1 (b) apre-senta poucas perdas em relacao a imagem original, obtendo uma taxa de compressao de68,52%. Nessa linha, nota-se que a taxa de compressao da imagem aumenta na medidaem que a quantidade de domıniose reduzida. Por outro lado, quanto maior a quantidadede domınios, maior a qualidade da imagem resultante e menore sua taxa de compressao.

Tabela 1. Tempo de execuc ao do algoritmo sequencial de compress ao FractalCenario Domınios Execucao em segundos Desvio padrao Compressao

Cenario 1 4096 115,33 0,58 68,52%Cenario 2 1024 103,78 1,75 91,93%Cenario 3 256 84,21 1,17 97,76%

(a) (b) (c) (d)

Figura 1. Observando a imagem resultante com o algoritmo de c ompress ao Frac-tal: (a) imagem original; (b) imagem resultante com o Cen ario 1; (c) imagem re-sultante com o Cen ario 2; (d) imagem resultante com o Cen ario 3.

A Figura 2 (a) apresenta os ganhos obtidos com a implementacao da modelagemBSP. Observa-se que o tempo medio de execucao do Cenario 1 com 16 processos foi de8,15 segundos. Este resultado, quando comparado com o algoritmo sequencial, repre-senta um ganho de 92,92%. O tempo de execucao do Cenario 2, ao ser paralelizado com16 processos, foi de 7,35 segundos, enquanto que o tempo do Cenario 3 com a mesmaquantidade de processos foi de 5,97 segundos. Esses resultados, quando comparados comos tempos do algoritmo sequencial, representam ganhos de 92,91% e 92,90% para osCenarios 2 e 3, respectivamente.

A avaliacao tambem compreendeu observar o comportamento do algoritmo para-lelo quando executado em um ambiente composto por nos sobrecarregados. Em adicao,foi analisado o uso da migracao de processos para a obtencao de desempenho nesse am-biente. Quatro nos doclusterforam reservados para os testes, sendo que uma sobrecarga

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

29

Page 32: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

0

20

40

60

80

100

120

Cenário 1 Cenário 2 Cenário 3

Tem

po d

e ex

ecuç

ão (

em s

egun

dos)

(a)

Sequencial2 processos4 processos8 processos

16 processos

20

25

30

35

40

45

50

Cenário 1 Cenário 2 Cenário 3

Tem

po d

e ex

ecuç

ão (

em s

egun

dos)

(b)

Sem sobrecargaCom sobrecarga e sem migraçãoCom sobrecarga e com migração

Figura 2. (a) Ganhos obtidos com a paralelizac ao do algoritmo com 2, 4, 8 e 16processos; (b) ganhos obtidos ao trabalhar com 4 processos e migrar 2 deles denos sobrecarregados para n os levemente carregados.

foi simulada em dois destes. A Figura 2 (b) apresenta os resultados obtidos ao executaro algoritmo paralelo com 4 processos. Observa-se que o ambiente simulado gerou umasobrecarga de 152,67% para o Cenario 1, 158,10% para o Cenario 2 e 162,17% para oCenario 3. Nesse sentido, testes de migracao consistiram em transferir os objetos loca-lizados em nos sobrecarregados para nos levemente carregados. Para tanto, chamadasexplıcitas ao metodobsp migrate() de jMigBSP foram inseridas no codigo da aplicacao.Ganhos de 20,01%, 19,55% e 17,53% foram alcancados nos Cenarios 1, 2 e 3, respecti-vamente, ao comparar o ambiente sobrecarregado com e sem migracoes.

5. Trabalhos Relacionados

Existem diversos trabalhos que descrevem estrategias para paralelizar o algoritmo deFractal para a compressao de imagens. Em [Palazzari et al. 1999], os autores propoemdividir a imagem entre os processadores disponıveis e aplicar, simultaneamente, o al-goritmo de compressao sequencial na subimagem sem qualquer comunicacao entre osprocessos. Esta abordagem tem o inconveniente de que a qualidade da imagem re-sultante pode ser inferior em relacao a obtida usando o algoritmo sequencial. Issoocorre porque cada processador trabalha com um conjunto de domınios e intervalose pode nao obter uma melhor combinacao se comparado com a abordagem sequen-cial. Em [Jackson and Blom 1995, Hufnagl and Uhl 2000], os autores apresentam es-trategias de paralelismo utilizando a abordagem mestre-escravo. Em especial, no trabalhode [Jackson and Blom 1995], cada processo escravoe responsavel por um conjunto dedomınios. O processo mestre envia conjuntos de intervalos paraos processos escravos eaguarda que os mesmos retornem a melhor combinacao para o seu conjunto de domınios.Dependendo se a combinacaoe satisfatoria ou nao, o conjunto de intervalos pode ou naoser enviado para outro processo.

Alguns trabalhos combinam os paradigmas mestre-escravo epipelinecircular. Porexemplo, nos esforcos de [Jackson and Mahmoud 1996], conjuntos de domınios sao dis-tribuıdos entre os processos escravos. Em seguida, cada processoescravoe designadopelo mestre a calcular um conjunto de intervalos. Se a combinacao encontrada for in-ferior ao limite desejado, ou se o conjunto de intervalos ja foi confrontado com os de-mais processos, o conjunto de intervalose devolvido ao mestre, juntamente com a me-

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

30

Page 33: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

lhor combinacao de domınio obtida. Caso contrario, o processo escravo encaminha oconjunto de intervalos ao proximo processo dopipeline. Em uma abordagem diferente,[Lee et al. 2000] atribui aos processos escravos conjuntos de intervalos. Cada conjuntode intervalose comparado com diferentes conjuntos de domınios. Uma vez que a etapa decomparacao e concluıda, o conjunto de domınios e transferido para o proximo processodo pipelinepara uma nova etapa de comparacao. A etapa de comparacao e completadaquando todos os conjuntos de domınios passarem pelopipeline. A modelagem apre-sentada neste trabalho tira proveito do paradigma depipelinecircular e nao requer umprocesso mestre para a distribuicao dos conjuntos de domınios e intervalos.

6. ConclusaoEsse artigo apresentou uma modelagem BSP para o problema de compressao de imagens.Cada processo tem uma parte dos domınios e recebe a cada superetapa um conjunto deintervalos para avaliar. Uma vez que um conjunto de intervalos passa por todos os proces-sos, tem-se precisamente quais os domınios que obtiveram melhor mapeamento. Os resul-tados mostraram a eficiencia do paralelismo e da biblioteca de programacao usados. Porser um problema trivialmente paralelizavel, alcancou-se uma eficiencia paralela media de93,31%. Os resultados iniciais envolvendo migracao de objetos de forma explıcita foramapresentados num ambiente com nos sobrecarregados. A migracao se mostra pertinente epode ser uma alternativa quando oscilacoes relacionadas ao comportamento dos recursossao frequentes. Trabalhos futuros compreendem a execucao da aplicacao de Fractal sobreum ambiente degrid formado porclustersheterogeneos entre si.

ReferenciasBatista, M., da Fonseca, N.S., Miyazawa, K., and Granelli, F.(2008). Self-adjustment of

resource allocation for grid applications.Comp. Networks,52:1762–1781.

Bonorden, O. (2007). Load balancing in the bulk-synchronous-parallel setting using pro-cess migrations. InParallel and Distrib. Processing Symp. (IPDPS) IEEE,pages 1–9.

Graebin, L. and Righi, R. d. R. (2011). jMigBSP: Object Migrationand AsynchronousOne-Sided Communication for BSP Applications. In12th Conf. on Parallel and Dis-trib. Computing, App. and Technologies, Korea. Accepted for publication. To appear.

Hufnagl, C. and Uhl, A. (2000). Algorithms for fractal image compression on massivelyparallel simd arrays.Real-Time Imaging, 6:267–281.

Jackson, D. J. and Blom, T. (1995). A parallel fractal image compression algorithmfor hypercube multiprocessors. In27th Southeastern Symposium on System Theory(SSST’95), SSST ’95, pages 274–278, IEEE.

Jackson, D. J. and Mahmoud, W. (1996). Parallel pipelined fractal image compressionusing quadtree recomposition.The Computer Journal, 39(1):1–13.

Lee, S., Omachi, S., and Aso, H. (2000). A parallel architecture for quadtree-based fractalimage coding. In2000 Conf. on Parallel Processing, ICPP ’00, pages 15–22, IEEE.

Palazzari, P., and Lulli, G. (1999). Massively parallel processing approach to fractal imagecompression with near-optimal coefficient quantization.J. Syst. Archit., 45:765–779.

Valiant, L. G. (1990). A bridging model for parallel computation. Commun. ACM,33:103–111.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

31

Page 34: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Um Estudo de Caso de Métodos de Acesso Espaciais Quad Tree e Grid File

FACCIN, Jeferson1; PEZZI, Daniel da Cunha1

[email protected]; [email protected]

Abstract: Geographic Database is a collection of georeferenced data manipulated by Geographic Information Systems (GIS), whose goal is to provide ways to manipulate spatial data becoming an essential part of this GIS. With the development of GIS has become possible to store and represent projections computing environment, making room for the emergence of GIS technology. However, there is the challenge of how to retrieve information from files or a table that involves operations with spatial objects. Alternatively, several methods were developed to access spatial or spatial indexes, which are auxiliary data structures, essential for efficient processing of spatial queries. The main stand out Binary Tree Indexing, Quad Tree, Point Quadtree, Grid File, among others. In this work the main objective is to make a comparative study of spatial access methods Grid-file and Quad-Tree and prepare a road map as a case study of GIS with PostGIS.

Keywords: GIS, Spatial Access Methods, Grid File, Quad Tree. Resumo: Banco de Dados Geográficos é uma coleção de dados georreferenciados manipulados por Sistemas de Informação Geográfica (SIG), cujo objetivo é fornecer meios de manipular dados espaciais tornando-se este parte essencial em um SIG. Com o desenvolvimento de SIG tornou-se possível armazenar e representar projeções em ambiente computacional, abrindo espaço para o aparecimento da tecnologia de Geoprocessamento. No entanto, existe o desafio de como recuperar as informações dos arquivos ou de uma tabela que envolve operações com objetos espaciais. Como alternativa, foram desenvolvidos diversos métodos de acesso espacial ou índices espaciais, que são estruturas de dados auxiliares, essenciais para o processamento eficiente de consultas espaciais. Dentre os principais, destacam-se Indexação de Árvores Binárias, Quad Tree, Point Quadtree, Grid File, entre outros. Neste trabalho o objetivo principal é fazer um estudo comparativo dos métodos de acesso espaciais Grid File e Quad Tree ao elaborar um mapeamento rodoviário como estudo de caso de um SIG com PostGIS.

Palavras-chave: SIG, Métodos de Acesso Espaciais, Grid File, Quad Tree.

1. Introdução Banco de Dados Geográficos, também chamados de Banco de Dados Espaciais,

são ferramentas que possibilitam a realização de cálculos com mapas, áreas, distâncias e centróides. Segundo Silberschatz et al (1999), são utilizados para armazenar informações geográficas, como mapas. A partir da utilização de banco de dados geográficos é possível construir aplicações para a manipulação de dados espaciais.

Segundo Camara et al (2005), ao integrar dados de diversas fontes os Sistemas de Informação Geográficas (SIG) correspondem às ferramentas computacionais de geoprocessamento que permitem a realização de análises complexas. Assim, um banco de dados geográficos armazena e recupera dados espaciais em diferentes geometrias para uma eventual consulta.

Em sistemas de loteamentos, por exemplo, são armazenadas grande quantidade de informações que são cadastradas numa base de dados geográfica. Já um sistema que

1 Curso de Ciência da Computação - Universidade de Cruz Alta – UNICRUZ – Cruz Alta/RS – Brasil

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

32

Page 35: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

administra rodovias, por exemplo, cada veículo possui uma localização geográfica de posicionamento exato. Assim, as consultas nessa base de dados poderão ser ineficazes quanto a localização dos objetos e qualidade das informações geradas se não forem otimizadas. Com o problema em questão, surge à necessidade de procurar métodos que auxiliem na organização desses dados. Dentre eles, existem os Métodos de Acessos Espaciais (MAE). Para Ciferri (2001), o principal objetivo de um MAE é propiciar uma rápida obtenção dos objetos espaciais que satisfazem um determinado relacionamento topológico, métrico ou direcional.

O método de acesso espacial possui em sua literatura algumas propostas, tais como: B Tree (PARADEDA, 2002), Quad Tree (SAMET, 1984), R Tree (GUTTMAN, 1984), Kd Tree (Volker Gaede 1997) e Grid File (Brown & Gruenwald, 1998). Cada uma dessas estruturas possui suas características e comportamentos específicos. Esses métodos utilizam uma organização hierárquica e são estruturas de dados organizados em níveis onde o SIG utiliza esta estrutura de dados para realizar a indexação espacial.

Este trabalho apresenta um estudo de caso de mapa de rotas envolvendo os métodos de acesso espaciais Quad Tree e Grid File, os quais atuam no processamento eficiente de consultas espaciais.

2. Sistemas de Informações Geográficas

Sistema de Informações Geográficas (SIG) é uma tecnologia que tem capacidade de modelar, armazenar e manipular uma grande quantidade de dados geograficamente referenciados. Para Câmara (2005), a principal diferença de um SIG para um sistema de informação convencional é sua capacidade de armazenar tanto os atributos descritivos como as geometrias dos diferentes tipos de dados geográficos.

Um SIG processa dados gráficos e não gráficos com ênfase nas análises espaciais e nas modelagens de superfícies. O principal objetivo de um SIG é gerar informações georeferenciadas para criar mapas e fazer análises espaciais (SILVA, 2006). É muito empregado na manipulação de mapas, como por exemplo, na criação de percursos de estrada e circuitos de caminhada. As vantagens de utilizar mapas digitais são consideráveis se comparados a mapas de papéis. Com os mapas digitalizados as atualizações podem ser feitas de forma rápida e dinâmica (ROCHA, 2007).

Dentre outras características, no SIG utiliza-se dos recursos de Sistemas Gerenciadores de Banco de Dados (SGBD) para gerenciar e manipular os dados geográficos. Para tanto, Câmara (2001) e Vinhas (2006) destacam que existem três arquiteturas diferenciadas: Arquitetura Dual (utiliza-se de SGBD relacionais existentes no mercado, como exemplo tem-se SPRING, ARCVIEW e IDRISI); Integrada (armazena todos os dados espaciais, tanto seu componente espacial como a parte alfanumérica); Integrada Baseada em SGBD Relacional (utiliza campos longos chamados de Binary Large Object – BLOB - para armazenar os dados espaciais).

Com a evolução dos SIG tornou-se possível armazenar e representar projeções em ambientes computacionais, abrindo espaço para o aparecimento da tecnologia de Geoprocessamento, que utiliza sistemas de coordenadas geográficas e projeções cartográficas para o tratamento de informações gráficas. Por meio de técnicas matemáticas e computacionais tem influenciado de maneira crescente as áreas relacionadas a cartografia (VASCONCELOS, 2008).

3. Métodos de Acessos Espaciais

Método de Acesso Espacial (MAE) é uma estrutura de organização de dados de forma aleatória que permite recuperar as informações dos arquivos ou de uma tabela que envolve operações com objetos espaciais como: retângulos, matrizes ou quadrados

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

33

Page 36: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

(QUEIROZ, 2004). Para trabalhar com essa base de dados e desenvolver consultas mais eficazes são utilizados os métodos de indexação espaciais.

Os Métodos de Indexação Espacial têm por objetivo acelerar o processo das consultas espaciais, organizando os registros. Com isso, aqueles objetos que estão mais próximos um dos outros no espaço vão corresponder com os registros próximos uns dos outro no índice. Para Queiroz (2004), a indexação espacial fornece mecanismo para limitar o conjunto de busca, desta forma aumenta o desempenho das consultas e da recuperação de dados geográficos.

Através do uso de árvores de pesquisas podem-se organizar dados de forma hierárquica e ordená-los. Essas estruturas executam operações como determinar a localização de um elemento ou percorrer uma árvore balanceada, em tempo logarítmico – O (log n). Assim um MAE é projetado como um caminho otimizado para os dados e, com a sua utilização, faz aumentar o desempenho no processamento de consultas, utilizando de SGBD que trabalham com base de dado geográfica (SONAGLIO, 2007).

3.1. Método Quad Tree

O método Quad Tree é um tipo de estrutura de dados organizada em árvore, geralmente usado para dividir espaços bidimensionais por meio de divisão recursiva de cada região em quadrantes. Essa divisão é usada até que o parâmetro pré-estabelecido seja atingido (SOUZA, 2009). Neste tipo de estrutura, a separação dos elementos pode ser regular, onde divide em partes iguais cada nível ou determinada por características do novo dado. A estrutura manipula dados, como pontos, áreas, curvas, superfícies e volumes (AZEVEDO, 2001).

Com o Quad Tree é possível representar qualquer tipo de forma de objeto geográfico, que ocorre com subdivisões hierárquicas em quadrantes. Desta forma é possível fazer um mapeamento de figuras geográficas para verificar exatamente seu contorno dentro de algum tipo de coordenada. Por exemplo, podem-se estabelecer os limites de municípios utilizando a decomposição de quadrantes ou então procurar objetos em grandes áreas de forma mais eficiente e sólida.

3.2. Método Grid File

A estrutura do Grid File tem a capacidade de armazenar grandes quantidades de dados, contribuindo para o seu uso em sistemas de grande porte como SIG, onde manipula objetos geográficos em um banco de dados. Sendo assim, a estrutura em grade facilita a manutenção das informações de uma maneira mais natural que outros tipos de estruturas, como por exemplo as árvores binárias (JÚNIOR, 2002).

Conforme Queiroz (2006), o Grid File é uma estrutura de indexação que divide o espaço em uma grade retangular, onde cada célula é associada a uma página do disco. A associação é feita por meio do diretório, que é uma matriz bidimensional onde seus elementos possuem o endereço de uma página.

Grid File utiliza o conceito de hashing, técnica que facilita a pesquisa em dados convencionais. Este método, segundo Queiroz (2005), consiste em criar uma série de receptáculos chamados de bucket, que é uma unidade de armazenamento físico, onde mantém os registros, seu conteúdo pode ser alocado completamente em memória principal. Já as células são as unidades de alocação lógicas que representam cada quadrante da grade de um Grid File. Abreu (2003) descreve que cada bucket tem capacidade de armazenar uma quantidade limitada de registros. Caso esta capacidade seja excedida, ocorre uma situação de overflow então o intervalo é novamente dividido em mais buckets e os dados são reorganizados.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

34

Page 37: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

4. Experimento prático

Como experimento prático, para este trabalho de pesquisa, foi construído um sistema de geração de mapas de rotas com aplicação dos métodos Quad Tree e Grid File, o qual está representado, na figura 1, em um mapa conceitual (construído com o software livre CmapLite).

Figura 1 – Mapa conceitual do experimento prático.

Quanto aos softwares empregados no experimento, optou-se pelo PostgreSQL 8.2, com extensão PostGIS para trabalhar com dados espaciais e o Quantum GIS 1.5.0 para a aplicação dos métodos. E ainda, o console pgAdmin III utilizado para fazer as consultas (todos Open Source).

No Quantum GIS (QGIS), ilustrado na figura 1, utilizou-se uma base de dados do IBGE, a qual contem os municípios no formato de um mapa contendo 497 municípios. Dentre os municípios disponibilizados, foi escolhido o de Ibirubá/RS para aplicar os testes práticos, que após a inserção da divisão da área em uma grade foi feita uma inserção de pontos, tanto fixos quanto aleatórios, distribuídos por toda a área do mapa.

Uma conexão foi estabelecida entre o QGIS e o PostGIS, deste modo os arquivos com a extensão shape foram exportados para criar os índices espaciais. Assim, para o arquivo carregado no PostGIS foi gerada uma nova base de dados. Sendo assim, obteve-se uma tabela espacial para cada conjunto de pontos, composta por três atributos onde ficaram armazenados os identificadores “id”, “gid” e “the_geometry”.

Os pontos aleatórios foram gerados no QGIS e georreferenciados para extrair as suas coordenadas. A ferramenta utilizou arquivos do tipo raster, ou seja, imagens de satélites do interior do município de Ibirubá/RS (adquiridas a partir do Google Earth) para fazer o georreferenciamento. Toda a região foi dividida em pequenos quadrados, chamados de células. Cada célula com um valor de referência, mostrado em coordenadas. A escala

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

35

Page 38: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

utilizada foi de 1:133814. Caso a escala fosse aumentada a imagem se aproximaria na tela, tornando difícil a visualização da área total do município e os pontos inseridos.

A criação da rota foi feita na imagem raster por meio da ligação dos pontos inseridos com o método Grid File. A direção da rota iniciou no primeiro ponto avaliado, ou seja, em zero, desta maneira seguindo uma ordem crescente até chegar ao último ponto inserido, de número doze (ilustrado na figura 2).

Figura 2 – Rota gerada com o método Grid File.

Para a fase de aplicação do método Quad Tree foram utilizadas as mesmas configurações realizadas nos softwares QGIS e PostGIS, a partir da mesma base de dados (ibge_municipios496_ajust). O Quad Tree foi aplicado sobre o Grid File para a subdivisão da área de pesquisa. Dessa forma foram realizadas sucessivas subdivisões fazendo com que as células diminuíssem de tamanho e aumentassem sua quantidade em toda a camada vetorial do mapa da cidade de Ibirubá. O que ocasionou, no caso de pontos aleatórios, a seleção de apenas sete pontos (aqueles que ficaram inteiramente dentro de cada célula).

5. Conclusões parciais

O método Grid Files é eficiente e consideravelmente fácil de implementar no tratamento de dados pontuais. No entanto, possui como desvantagem sua limitação em somente lidar com objetos que caibam inteiramente dentro de um quadrado. Sendo assim, se torna inadequado para trabalhar com linhas ou polígonos. Para uma inserção de 75 pontos aletórios, testados no experimento prático, apenas 12 destes puderam ser avaliados, pois estavam localizados no interior das células da grade gerada.

Com relação ao Quad Tree, cuja característica é de produzir sucessivas subdivisões das células de uma grade e consequentemente diminuir seu tamanho, tornou mais difícil a localização de objetos no mapa de rotas, porém aumentou a precisão de localização dos pontos nas células.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

36

Page 39: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

A próxima etapa do experimento prático desta pesquisa ocorrerá a avaliação quantitativa dos métodos escolhidos quanto as métricas de precisão e desempenho para grandes quantidades de pontos em rotas mais complexas.

Referências

ABREU, A. Indexação de imagens de profundidade baseada em Conteúdo. Dissertação em Mestrado em Informática. Universidade Federal do Paraná-UFPR, Curitiba, 2003.

AZEVEDO, L. Filtro Raster para Junções de Polilinhas. Tese em Mestrado em Engenharia de Sistemas e Computação. Universidade Federal do Rio de Janeiro, COPPE-RJ, 2001.

CÂMARA, G.; et al. Banco de Dados Geográficos. Curitiba: Editora MundoGEO, 2005. CÂMARA, G. THOMÉ, R. Modelo de Dados em Sistemas de Informação Geográficas. São José

dos Campos,INPE,2001. CIFERRI, R.; SALGADO, A, C. Métodos de Acessos Espaciais em Termos de Distribuição

Espacial de Dados. Workshop brasileiro de Geoinformatica, 2001. GUTTMAN, Anthonin. R-trees: A dynamic index structure for spatial searching. Proc. ACM

SIGMOD Int.Conf. on Management of Data, 1984. JÚNIOR, F. Estratégias de Particionamento de Blocos para Grid-File. Dissertação em Mestrado

em Ciência da Computação da Universidade Federal do Ceará - UFC, Fortaleza Janeiro de 2002. QUEIROZ, G. Algoritmos Geométricos para Banco de Dados Geográficos da Teoria a pratica no

Terralib. Dissertação de Mestrado em Computação Aplicada. Instituto Nacional de Pesquisas Espacial-INPE, 2004.

QUEIROZ, G.; Davis. C. Bancos de Dados Geográficos. Métodos de Acessos para Dados Espaciais - capitulo 6. Instituto Nacional de Pesquisas Espaciais - INPE. 2005

QUEIROZ, G.; FERREIRA, K. Tutorial sobre Bancos de Dados Geográficos. GeoBrasil, INPE – Instituto Nacional de Pesquisas espaciais, 2006.

ROCHA, P.; BRITO F. Aplicação dos Sistemas de Informação Geográfica no Turismo. Finisterra, XLII, 84, pp. 105-118, 2007.

SAMET, H. The Quadtree and Related Hierarchical Data Structures. ACM Computing Surveys, v. 16, 1984.

SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistemas de Bancos de Dados. Makron Books, 3ª. edição, 1999.

SILVA, M. Sistemas de Informações Geográficas. Elementos para o desenvolvimento de bibliotecas digitais geográficas distribuídas. Dissertação em Mestrado em Ciência da Informação da UNESP, 2006.

SONÁGLIO, Wagner Comin. Analise Comparativa do desempenho dos métodos de Acessos para Dados Espaciais: Estudo de Caso com o PostGIS. Monografia de Graduação em Ciência da Computação, Universidade do Estremo Sul Catarinense - UNESC, 2007.

SOUZA, V. Uma Implementação do protocolo de Roteamento Multi-geo para Redes de Sensores sem Fio Usando QuadTree. Dissertação de Mestrado em Ciência da Computação. Minas Gerais-MG, 2009.

VASCONCELOS, B. Geoprocessamento e Gerenciamento: Um Estudo de Caso na Empresa Poliplast-PB. Monografia de graduação em Tecnólogo em Geoprocessamento. Do Centro Federal de Educação Tecnológica da Paraíba, CEFET, 2008.

VINHAS, L. Um Subsistema Extensível para o Armazenamento de Geo-Campos em Banco de Dados Geográficos. Tese de Doutorado do Curso de pós-graduação em Computação Aplicada, INPE, 2006.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

37

Page 40: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Um modelo computacional híbrido para análise da

transmissão sobre o Internet Protocol Television (IPTV)

Carlos A. Weissheimer. Jr., Arthur Tórgo Gómez Programa Interdisciplinar de Pós-graduação em Computação Aplicada (PIPCA)

Universidade do Vale do Rio dos Sinos (UNISINOS) AV. Unisinos, 950 – 93022 – São Leopoldo – RS - Brasil

{carlosawe, atgomez}@gmail.com

Abstract. IPTV technology is one impacting factor on society. It is currently

the subject of several studies, it can bring many benefits to society, such as

support for interactivity and increased interoperability with home networks.

This paper presents the development of a computational model based on the

application of metaheuristics on an IPTV platform in order to find the best

configuration of transmission parameters.

Resumo. A tecnologia IPTV é um fator impactante na sociedade. Atualmente,

é alvo de várias pesquisas, pois pode trazer muitos benefícios para a

sociedade, tais como o suporte a interatividade e o aumento da

interoperabilidade com redes domésticas. Este trabalho apresenta o

desenvolvimento de um modelo computacional baseado na aplicação de

metaheurísticas sobre uma plataforma IPTV com o objetivo de encontrar a

melhor configuração dos parâmetros de transmissão.

1. Introdução Com o advento da televisão digital temos também uma evolução em termos tecnológicos, e assim fatores como: melhorias na transmissão deste sinal com um tempo de resposta mais adequado, uma entrega que siga aos padrões de qualidade estabelecidos pelos usuários e uma capacidade de menor de banda são importantes para que essa tecnologia se difunda de maneira mais acessível. Dentro deste contexto, o estudo da plataforma IPTV tem sua importância evidenciada. O respectivo artigo tem como objetivo desenvolver um algoritmo híbrido utilizando as metaheurísticas Busca Tabu (BT) e Algoritmo Genético (AG), que viabilize a análise e estudo dos parâmetros de taxa de transmissão, qualidade de vídeo, qualidade de áudio, número de clientes e largura de banda visando encontrar a melhor configuração da transmissão IPTV dadas às características de cada cliente. Para Lee em [Lee 2007] e Volk [Volk 2008] o Internet Protocol Television (IPTV) é uma tecnologia que fornece vídeo digital em tempo real e serviços de streaming de televisão, sobre IP e redes de acesso, com mecanismos para garantir a qualidade adequada do serviço (QoS).

Este artigo está divido em 5 seções apresentadas em sequência, sendo a primeira a introdução. A segunda a ser abordada é intitulada como revisão do estado da arte, onde são apresentadas as características do IPTV. Nela também é descrito o algoritmo genético. Já o terceiro é composto pela arquitetura do modelo e pela formulação do modelo matemático que se propõem. A quarta seção apresenta os experimentos realizados e os resultados obtidos através deles. E por fim a conclusão que, de forma sucinta, define o quanto o trabalho conseguiu atingir seu objetivo.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

38

Page 41: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

2. Revisão do estado da arte

Essa sessão é dividida em duas subseções, a primeira descreve o conceito de IPTV. Na segunda subseção são abordadas as características da metaheurística utilizada (Algoritmo Genético).

2.1. Internet protocol Television (IPTV)

IPTV é o estilo de TV com conteúdos entregues via protocolo de Internet diretamente ao consumidor, através de uma rede fechada [Ugalde e Huici 2007]. O provedor de conteúdo controla a rede que fornece o sinal para o usuário, mas isso é diferente de TV pela Internet. Pinto em [Pinto e Ricardo 2010] complementa a definição de Internet

Protocol Television descrevendo que é o serviço de transmissão (streaming) de programas de TV ao vivo e de vídeo sob demanda através de uma rede IP. Na figura 1 é apresentada uma estrutura simplificada da rede IPTV.

Figura 1. Estrutura simplificada IPTV

Na Figura 1, observa-se o Data Center IPTV por onde entram os dados que são codificados e encaminhados para o servidor de aplicação e assim transmitidos por meio da rede IP, onde encontra-se os equipamentos de rede como switches e roteadores, até o usuário final. Através de equipamentos como o Set-Top-Box o usuário final decodifica esses dados [Marie, et.al. 2010]. A casa digital representa um composto de equipamentos que podem suportar essa transmissão, como TVs e computadores. Neste contexto uma solução convergente que adapta a transmissão de TV para os modelos de TVD e IPTV é proposta pelo projeto DIGICONV e representada pela figura 2.

Figura 2. Modelo de transmissão convergente TVD e IPTV [6].

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

39

Page 42: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

No modelo retratado pela figura 2 é prevista a abrangência na forma como o sinal digitalizado é distribuído a partir das emissoras. Cobre-se principalmente a transmissão terrestre (i.e. broadcast) e a transmissão através de serviços de rede de computadores baseados no protocolo IP (i.e. IPTV). Nessa estrutura é possível ver os três formatos de vídeo (HD, SD e LD) onde o primeiro representa alta definição, o segundo uma definição intermediária e o terceiro, representa a definição encontrada nos dispositivos móveis [Gómez, et, al. 2010]. O modelo híbrido não irá atuar em todo modelo retratado pela figura 2, e sim apenas pelas partes evidência na mesma. Dentro do contexto que na transmissão IPTV existem parâmetros que variam conforme o meio de transmissão e a necessidade do cliente; são eles: os tipos de vídeo e a largura de banda do cliente, assim uma simulação através de um AG proposta sendo o algoritmo e suas características apresentadas na seção 2.2.

2.2. Algoritmo Genético (AG)

De forma geral, consiste na teoria biológica dos sistemas naturais, onde os melhores indivíduos sobrevivem e geram descendentes com suas características hereditárias e a partir disso, melhores soluções podem ser encontradas para os mais diferenciados problemas [Glover 1994]. Seu procedimento envolve a criação, com uma representação que combina dados de uma população de indivíduos representando as soluções viáveis e descrito pela literatura como cromossomos [Glover 2003]. Assim os indivíduos mais fracos são removidos e consequentemente novos membros são adicionados a população atualizando-a. Normalmente um AG começa com uma população aleatória de cromossomos representados por uma cadeia de bits, 0 e 1, [Michalewicz 1994]. Sua recombinação é realizada fazendo com os operadores de cruzamento e mutação, e a busca é guiada pela avaliação da função objetivo de cada indivíduo da população.

A FO também chamada de fitness permite o cálculo da aptidão bruta de cada indivíduo que fornecerá o valor a ser usado para o cálculo de sua probabilidade de ser selecionado para reprodução [Glover 2003]. Na próxima seção será abordada a arquitetura do modelo computacional e a formulação do modelo matemático.

2.3. Busca Tabu (BT)

Uma Busca Tabu simples pode ser suficiente para resolução de problemas difíceis, porém em muitos casos são incluídos elementos na estratégia de busca para melhorar a eficiência do algoritmo, alguns deles já descritos anteriormente [Glover 1989].

Um processo de busca tabu simples, pode iniciar a partir da geração de uma solução inicial. O processo de inicialização trata da inicialização dos parâmetros e funções da Busca Tabu. Em seguida, é verificado o critério de parada. O critério de parada pode ser o número de iterações do algoritmo sem melhora no valor da função objetivo ou se a função objetivo atingir um valor determinado. A geração de vizinhanças consiste na criação de novas soluções, através de movimentos, conforme apresentado na Figura 10. No processo de obtenção de uma melhor solução, deve se obter a melhor solução na vizinhança respeitando a Lista Tabu e o critério de aspiração para o movimento Tabu. E por fim, a atualização das variáveis de controle que tem como objetivo definir qual a melhor solução encontrada e atualizá-la [Glover 1989].

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

40

Page 43: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

3. Modelo

Esta seção apresenta o modelo computacional proposto pelo artigo, através de sua arquitetura e da formulação do modelo matemático. Ela descreve o modelo sugerido e apresenta sua formulação explicando como ela irá atuar sobre o mesmo.

3.1. Arquitetura do Modelo

Um modelo de transmissão de TVD, tal como o definido pelo SBTVD, é utilizado não só por grandes empresas como a Cisco, que utilizam suas próprias variações do mesmo com intuído de melhorar o enquadramento dentro do seu objetivo, mas também por projetos com fins educacionais. No modelo proposto a utilização de uma metaheurística é necessária para testar as N combinações possíveis com intuito de se achar a melhor. Esse problema é de classificação NP-Hard. A metaheurística utilizada foi um algoritmo genético. Na Figura 4 é apresentada a arquitetura do modelo a ser utilizada.

Figura 3 – Algoritmo Híbrido: BT e AG.

Para que o algoritmo híbrido funcione de maneira correta, algumas restrições devem ser respeitadas, visando encontrar a melhor configuração dos parâmetros de entrada a serem trabalhadas pelo modelo proposto a partir de uma solução inicial aleatória, sempre respeitando aos limites impostos pelo mundo real, apresentado na seção 3.2.

3.2. Formulação do Modelo Matemático

O modelo proposto pode ser formalmente descrito com base nas equações desenvolvidas a seguir. Elas levam em conta as tabelas descritas nessa seção que são baseadas em recomendações (ITU-T, 2007), para que a melhor configuração seja obtida. Segue a formulação matemática proposta:

MAX FO = Tt + Qv + QA + Nc + Lb (1)

Onde:

Tt = גsdTTSD + גhdTtHD + גldTtLD + גp1TtP1 + גp2TtP2 (2)

Qv = βsdQSD + βhdQHD + βldQLD + βp1QvP1 + βp2QvP2 (3)

Lb = µsdLbSD + µhdLbHD + µ ldLbLD + µp1LbP1 + µp2LbP2 (4)

Nc = αsdNcSD + αhdNcHD + αldNcLD + αp1NcP1 + αp2NcP2 (5)

QA = ω5.1Q5.1 + ωstQst (6)

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

41

Page 44: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Sujeito a:

TtHD 0 e TtHD 6 (7)

TtSD 0 e TtSD 2 (8)

TtLD 0 e TtLD 0.5 (9)

QHD 2 e QHD 100 (10)

QSD 0,1 e QSD 100 (11)

QLD 0,01 e QLD 100 (12)

LbDSL 0,128 e LbDSL 24 (13)

LbADSL 0,064 e LbADSL 8 (14)

LbVDSL 0,128 e LbVDSL 52 (15)

LbWINMAX 0,128 e LbWINMAX 15 (16)

LbCDMA 0,01 e LbCDMA 2 (17)

C TIPTV (18)

p2, βsd, βhd, βld, βp1, βp2, µsd, µhd, µג ,p1ג ,ldג ,,hdג ,sdג ld, µp1, µp2, αsd,αhd, αld, αp1,αp2, ω5.1, ωst ∈ Z+ (19)

A função objetivo desta formulação, a equação (1), descreve as variáveis de decisão consideradas no modelo. A equação (2) é dada pelo soma dos valores atribuidos para os diferentes formatos de video (SD, HD e LD) em relação à taxa de transmissão, se somado a eles os valores de customisação P1 e P2. A mesma lógica é seguida para as equações (3), (4) e (5), porém elas levam em consideração a qualidade de vídeo, número de clientes e largura de banda respectivamente. Já na equação (6), apenas os dois valores de áudio são levados em consideração. As letras gregas que aparecem nas equações (2), (3), (4), (5) e (6) representam os pesos de cada variável na FO. Estes pesos representam a contribuição de cada variável na função objetivo. Através de uma análise da influencia dos pesos, conforme os tipos de clientes, o modelo podera ser calibrado de modo a ser customizado. Na próxima seção são apresentados alguns resultados já obtidos.

4. Resultados

A figura 5 apresenta a evolução da função objetivo ao longo das iterações algorítmo em uma execução. Foram executadas mais algumas vezes o algoritmo híbrido, porém não houveram alterações relevantes. A linguagem de programação utilizada foi Java e a máquina utilizada para rodar os experimentos foi um notebook CEE com processador i3, 2Mb de memória, disco rígido de 350Gb, com sistema operacional Windows 7.

Figura 4 – Evolução da Função Objetivo

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

42

Page 45: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Cada ponto representa um valor para FO dentro da geração onde a melhor função objetivo foi encontrada. Sendo assim, é possível observar que no começo há uma considerável melhoria no valor da FO e que ao longo das interações essa melhoria diminui. Isso é bastante comum ocorrer nas metaheurísticas, pois ao longo das gerações fica mais difícil encontrar no espaço de busca soluções melhores que aquele que se tem no momento.

5. Conclusão e Trabalhos Futuros

Os resultados obtidos com a metaheurística para a determinada FO foram satisfatórios. Foi possível encontrar um modelo computacional adequado ao uso de metaheurísticas para transmissão IPTV. Porém em um segundo momento, testes devem ser realizados para validar a solução obtida. Isso será feito através de um simulador de rede que comporte a transmissão IPTV.

Referências

Boulic, R. and Renault, O. (1991) “3D Hierarchies for Animation”, In: New Trends in Animation and Visualization, Edited by Nadia Magnenat-Thalmann and Daniel Thalmann, John Wiley & Sons ltd., England.

Glover, f. Tabu search - parte 1. Orsa - jounal on computing, v. 1, n. 3, 1989.

Glover, f.; james, p.; laguna, m. Genetic algorithms and tabu search: hybrids for optimization. Elsevier science ltd, v. 22, n. 1, p. 111-134, 1994.

Glover, f.; kochenberger, g. A. Handbook of metaheuristics. [s.l.]: kluwer academic publishers, 2003.

Gómez, A. T.; Gluz, J. C.; Barbosa j. L. V.; Chiwiacowsky, L.; Ávila R. B.; Crespo, S. C. S. P.; Moreno, e. I. E Martins, M. G. Especificação técnica e sistêmica - plataforma de convergência digital iptv/tv digital, são leopoldo, 2010. Issn 2332/09.

Lee, C. S. IPTV over Next Generation Networks in ITU-T. Broadband Convergence Networks, p. 1–18, 2007.

Marie, J.; Klym, N.; Mirlacher, T. The future of IPTV. Springer Science, 2010.

Michalewicz, Z. Genetic Algorithms+Data Structures=Evolution Programs. Springer-Verlag, 1994.

Pinto, A.; Ricardo, M. Secure multicast in IPTV services. Computer Networks, p. 1531-1542, 2010.

Ugalde, J. B.; Huici., I. A. Convergence in Digital Home Communications to Redistribute IPTV and High Definition Contents. Consumer Communications and Networking Conference, 2007.

Volk, M. IPTV Systems, Standards and Architectures: Part II - Quality-Assured Provisioning of IPTV Services within the NGN Environment. Communications Magazine IEEE, v. 46, n. 5, p. 118–126, 2008.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

43

Page 46: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Aplicabilidade de CMS como ferramenta de apoio colaborativo na educação tecnológica

Armando Rupel1, Ademir Mazer Junior1, Gleifer Vaz Alves1, Marcia Regina Carletto2

1Coordenação de Informática – Universidade Tecnológica Federal do Paraná (UTFPR) Ponta Grossa – PR – Brasil

2Coordenação de Alimentos – Universidade Tecnológica Federal do Paraná (UTFPR) Ponta Grossa – PR – Brasil

{armandorupel, ademir.mazer.jr, gleifervaz}@gmail.com, [email protected] Abstract. This article describes the development process of a collaborative

environment for learning using as a support a CMS tool.

Resumo. O presente artigo demonstra o desenvolvimento de um projeto para

criação de um Ambiente Colaborativo de Aprendizagem utilizando CMS como

ferramenta de apoio.

1. Introdução

Avaliação de Impacto Tecnológico Segundo Carletto (2009), a Avaliação de Impacto Tecnológico (AIT) pode ser qualificada como um exercício acadêmico, baseado na problematização da tecnologia durante o desenvolvimento de novos produtos, na tentativa de estimular reflexões e identificação de consequências / impactos que as atividades da engenharia/tecnologia podem acarretar. Estudo realizado por Silveira (2007) demonstrou que a principal preocupação dos gerentes, assessores e empreendedores de incubadoras tecnológicas, relacionam a inovação tecnológica por eles desenvolvida com a competitividade e o lucro, sem uma preocupação com outras questões, no desenvolvimento de novas tecnologias. Se por um lado, de acordo com Carletto (2009), essa perspectiva alerta para o fato de que a educação cientifica e tecnológica não está oportunizando de modo suficiente a compreensão do processo tecnológico, em suas causas e efeitos e nem mesmo o exercício de avaliação de impacto sociais, econômicos e principalmente ambientais resultantes da produção, gestão e incorporação das novas tecnologias, como recomendado pelas diretrizes curriculares nacionais – DCN’s (BRASIL, 2002). Por outro lado, a proposta de Avaliação de Impacto Tecnológico poderá levar à problematização e à identificação de impactos potenciais na fase do projeto do desenvolvimento do produto, de modo a estimular não só estudos sobre as interações Ciência, Tecnologia e Sociedade (CTS), mas também, a busca de soluções e eliminação/minimização de efeitos negativos na saúde humana, no ambiente e no social, promovendo a sustentabilidade. O termo objeto social é o foco sobre o qual as pessoas podem interagir. Uma rede social são sítios que possibilitam às pessoas criticarem e se expressarem através de objetos que são hospedados no sítio – por exemplo, uma fotografia (BELL, 2010, p. 41). A lista 1 mostra algumas redes sociais virtuais e os objetos sociais em volta do que elas designam.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

44

Page 47: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

• Dopplr o Viagens (e encontro com amigos).

• Flickr o Conversas sobre fotografias (mais vídeos e lugares).

• FriendFeed o Fluxo agregado de conteúdo e respostas de alguma pessoa.

• Last fm o Músicas que estão sendo ouvidas.

• SlideShare o Apresentações e as pessoas responsáveis por elas.

• Youtube o Vídeos.

• Nature Network • Academia.edu

o Pesquisa Acadêmica.

Lista 1 - Objetos sociais para redes sociais virtuais populares.

Fonte: Adaptado de Bell (2010, p. 34).

Modelos de redes sociais determinam seus elementos, ou seja, quais são os conteúdos e tipos de conexões que se estabelecem entre os usuários. Em termos gerais, as conexões em uma rede social são constituídas pelas relações que são formadas através da interação social entre os usuários (RECUERO, 2009, p. 30). Os sistemas de Gerenciamento de Conteúdo (CMS) foram desenvolvidos inicialmente para grandes operações de publicação de conteúdo – caso dos portais e empresas jornalísticas e segundo Terra e Gordon (2002, p.113) . De acordo com Rodrigues (2008) os Sistemas de Gestão de Conteúdos são aplicações corporativas que permitem a publicação e a manutenção descentralizada de conteúdo em Intranets, Internets e Extranets e tornam possível, simples e mais ágil o processo de criação, organização, inclusão e atualização de informações em web sites, facilitando o processo de disponibilização de informações relevantes aos negócios e ao trabalho.

2. Objetivos da Pesquisa

Objetivos Gerais

Desenvolver um ambiente colaborativo para a AIT, baseado em sistemas de gerenciamento de conteúdo em formato de um Guia Interativo, responsável pela gestão do conteúdo utilizado no desenvolvimento de produtos alimentícios; e uma rede social tendo o guia como objeto social. Objetivos Específicos 1. Identificação e classificação do conteúdo (informação para o guia), 2. Definição de critérios para escolha do CMS; 3. Escolha do CMS; 4. Implantação e configuração do CMS para atender aos requisitos do Guia Interativo; 5. Extensão da configuração do CMS para atender aos requisitos de Rede Social.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

45

Page 48: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Neste momento a pesquisa se encontra em execução do objetivo 4, implantação e configuração para o guia.

3. Desenvolvendo a Aplicação

Descrição dos trabalhos realizados para atingir os objetivos específicos

cumpridos até o momento: • Coleta e classificação de conteúdo para serem inseridos no Guia Interativo,

dados obtidos através da pesquisa realizada pelos alunos do curso de Tecnologia em Alimentos, membros do grupo de pesquisa do projeto.

• Depois de realizado o levantamento e classificação dos conteúdos, inicia-se o processo de escolha da ferramenta CMS, definindo uma serie de critérios a serem respondidos. Sendo eles: 1. Sistemas de Bancos de Dados Suportados (Requisito: mysql) 2. Última atualização (Requisito: máximo 12 meses) 3. Maduro? Data do primeiro release? (Requisito: mínimo 4 anos) 4. Licença (Requisito: licença open source) 5. Linguagem/Plataforma (Requisito: mínimo PHP 5.2); 6. Suporte a módulos e/ou Plugins; 7. Módulos wiki? Oficial ou comunidade? Maduro? 8. Módulos para gerenciamento de tarefas ou projeto? Oficial ou comunidade?

Maduro? 9. Módulos de blog? Oficial ou comunidade? Maduro? 10. Módulos de fórum? Oficial ou comunidade? Maduro? 11. Módulos para gestão de comunidade? Oficial ou comunidade? Maduro?

(desejado) 12. Módulos para gestão de documentos? Versionamento? Workflow de

aprovação? Oficial ou comunidade? Maduro? 13. Módulos ou plug-in para criação de campos dinamicamente em banco de

dados/metadados? Oficial ou comunidade? Maduro? 14. Módulos para gerenciamento de eventos/calendário? Oficial ou comunidade?

Maduro? 15. Workflow de aprovação para publicação de artigos/notícias? Permite

alteração pelo usuário? 16. Links permanentes? 17. Gestão de Taxonomias/Dicionários? 18. Repositório de Módulos/Plug-ins mantido oficialmente? 19. Número de módulos/plug-ins disponíveis. Oficiais e da comunidade 20. Estimativa de sites utilizando o CMS? 21. Integração com Moodle ou outro LMS? 22. ACL (Access Control List)? 23. Nível de granularidade da ACL 24. Uma instalação física permitindo vários sites configurados? 25. Sistema de autenticação? Quais? (Open ID, Google, Yahoo) 26. Arquitetura da aplicação Orientada a Objetos? 27. Aplicação de padrões de projeto na arquitetura? (Requisito: MVC) 28. Arquitetura da aplicação baseada em Framework? Próprio ou estende

framework existente? (Requisito: Zend Framework)

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

46

Page 49: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

29. Se framework disponível, permite extensão de módulos stand-alone? 30. Interface com o usuário baseada em framework Javascript? Qual? 31. Permite o uso de outros frameworks para a IU? 32. Internacionalização? (Permite fácil tradução?) 33. Existe pacote disponível de tradução para o Português do Brasil? 34. Permite alteração de seu layout gráfico (interface)? 35. Fornece funções (helpers) para o design da interface? 36. Tamanho da comunidade? 37. Mantenedor? Empresa ou organização? 38. Número de desenvolvedores oficiais? 39. Bem documentado para o usuário final? Português? Livros disponíveis? 40. Bem documentado para o desenvolvedor? Português? Livros disponíveis? 41. Compatível com quais navegadores? 42. Editor WYSIWYG? Compatível com quais navegadores? Nativo?

Funcionalidade de upload e gerenciamento de imagens nativo? Gerenciamento de tabelas nativo?

43. Exportação de dados? Funcionalidade nativa ou plugin? Formato aberto? (XML, CSV?)

44. Instalador e configurador automatizados? Completo ou parcial? 45. Disponibiliza ou instala dados de exemplo? 46. Tempo necessário para instalar, configurar e realizar a primeira execução

como usuário visitante, usuário cadastrado e usuário administrador? 2.3 Porque usar o Drupal?

Após definição dos critérios, estes foram aplicados em três CMS listados no sítio opensourcecms com a melhor performance de votação de usuários.

WordPress Joomla Drupal

Instalação Bom Excelente Regular

Taxonomia do conteúdo Regular Bom Excelente

Usabilidade Excelente Bom Regular

Segurança Bom Bom Bom

Disponibilidade de Templates Excelente Excelente Excelente Quadro 1 - Comparativo SGC.

Fonte: Adaptado de RIBEIRO & LIMA (2010).

O resultado do confronto dos critérios, mais o embasamento dado pela pesquisa

de Ribeiro e Lima, demonstrado no quadro 1, indicou o Drupal como escolha para o projeto, além do fato de ele fornecer a melhor taxonomia de conteúdo, que para este contexto é fundamental, devido ao guia necessitar suportar diversos tipos de conteúdos.

4. Proposta de Solução 4.1 Implantação e configuração.

Após ter sido escolhido o CMS a ser utilizado, foi iniciada a implantação e configuração em forma estrutural do Guia Interativo com o conteúdo de alimentos classificados.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

47

Page 50: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Focando o seu uso de forma colaborativa no ensino tecnológico, alunos poderão usar a ferramenta como um auxilio no desenvolvimento de novos produtos, podendo escolher de forma mais sustentável as matérias primas a serem utilizadas no seu projeto.

Figura 1 – Imagem do Guia Interativo mostrando sua página inicial.

4.2 Testes da configuração inicial

Após o termino da instalação e configuração básica do CMS, como apresentado na figura 1, o grupo iniciou a inserção de dados, que foram obtidos através da pesquisa realizada.

A importância de se realizar a inserção de dados nesse momento é visualizar o comportamento do sistema, permitindo assim a coleta de informações para possíveis mudanças na modelagem da configuração para o Guia. 4.3 Extensão para Rede Social

Desde seu inicio, a ferramenta foca a sua expansão para uma rede social, tendo como Objeto Social o Guia Interativo, podendo assim futuramente suportar conteúdos para diversas áreas, sempre focado na educação de forma colaborativa. 4.4 - Modelo de arquitetura

O modelo apresentado na figura 2 demonstra a arquitetura pensada para o desenvolvimento do ambiente colaborativo, através da utilização do CMS Drupal como sua base.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

48

Page 51: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Figura 2 – Diagrama apresentando o modelo de Arquitetura.

5. Conclusão Acredita-se que tão logo seja iniciado o uso do Guia, mesmo que ainda sem a

expansão para rede social, ele auxilie o processo de educação levando alunos a pensar formas sustentáveis para fabricação de produtos. Seu aspecto colaborativo, até a implantação da rede social, se dará pela possibilidade dos professores alimentarem os conteúdos inicialmente fornecidos pelo grupo de estudos, graças à modelagem focada na inserção descentralizada da informação.

O Guia Interativo, assim que finalizado, será disponibilizado para utilização nas aulas de desenvolvimento de produtos no curso de Tecnologia de Alimentos da UTFPR - Campus Ponta Grossa. Referências BRASIL. Resolução CNE/CES 11 de 11 de março de 2002. Institui Diretrizes

Curriculares Nacionais do Cursos de Graduação em Engenharia. Diário Oficial da República Federativa do Brasil, Brasília, DF, 9 abr. 2002b. Seção 1, p. 32.

CARLETTO, M. R.. Avaliação de impacto tecnológico: alternativas e desafios para a educação crítica em engenharia. Tese (Doutorado) - Universidade Federal de Santa Catarina, Programa de Pós-Graduação em Educação Científica e Tecnológica. Florianópolis, SC, 2009.

OPENSOURCECMS. Votação dos usuários. Disponível em: <http://php.opensourcecms.com>. Acesso em: 12/2010

Rodrigues, P. T. M. CMS (Sistema de Gerenciamento de Conteúdo) Estudo de Caso da Intranet da Secretaria Municipal de Educação de Belo Horizonte. (PUC-MG) Monografia (Bacharel em Ciência da Informação) - Pontifícia Universidade Católica de Minas Gerais, Belo Horizonte, 2008. Pg.27 f.

Silveira, R. M. C. F. Inovação tecnológica na visão dos gestores e empreendedores de incubadoras de empresas de base tecnológica do Paraná (IEBT-PR): “Desafios e perspectivas para educação tecnológica”. 2007 Tese (Doutorado em Educação Cientifica e Tecnológica) – Programa de Pós-Graduação em Educação Cientifica e Tecnológica, Universidade Federal de Santa Catarina, Florianópolis, 2007. Pg.257 f.

TERRA, José Cláudio, GORDON Cindy. Portais corporativos: a revolução na gestão do conhecimento. 2. ed. São Paulo: Negócio, 2002.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

49

Page 52: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Otimização de consultas no PostgreSQL com métodos gulosos

Júlio Augusto M. Pereira1, Rodrigo Luiz Antoniazzi

2

1Ciência da Computação – Universidade de Cruz Alta (UNICRUZ)

Rodovia Municipal Jacob Della Méa, Km 5.6 – 98.020-290 – Cruz Alta – RS – Brazil

2Departamento de Ciência da Computação – Universidade de Cruz Alta (UNICRUZ)

Cruz Alta, RS – Brasil.

[email protected], [email protected]

Abstract. The models of databases relate they offer a high abstraction degree,

tending to transform simple query in great sequences of physical operations.

Many processes of those sequences can have your execution order altered in

search of the best result, giving margin to a great group of possibilities. Like

this, this work had for general objective: to verify ways to optimize the

consultations submitted to PostreSQL through gluttonous methods, going by

the following phases: to implement the method Prim for otimization of query

to compare your time of execution in relation to the algorithm of Kruskal and

the genetic algorithms of PostgreSQL. Like this, came an algorithm with time

of execution polinomial, Prim, to look for a larger regularity in your

executions, in substitution to the original methods of PostgreSQL when you

consult complex they are made.

Resumo. Os modelos de bancos de dados relacionais oferecem um alto grau

de abstração, tendendo a transformar simples consultas em grandes

seqüências de operações físicas. Muitos processos dessas seqüências podem

ter sua ordem de execução alterada em busca do melhor resultado, dando

margem a um grande conjunto de possibilidades. Assim, este trabalho teve por

objetivo geral: verificar maneiras de otimizar as consultas submetidas ao

PostreSQL através de métodos gulosos, passando pelas seguintes fases:

implementar o método Prim para otimização de consultas; comparar seu

tempo de execução em relação ao algoritmo de Kruskal e os algoritmos

genéticos do PostgreSQL. Assim, apresentou-se um algoritmo com tempo de

execução polinomial, Prim, para buscar uma regularidade maior em suas

execuções, em substituição aos métodos originais do PostgreSQL quando

consultas complexas são efetuadas.

1. Introdução

Os primeiros sistemas de bancos de dados (em rede e hierárquicos) eram baseados no

conceito de ligações, onde cabia ao programador a tarefa de descrever quais ligações

deveriam ser acessadas para retornar as devidas informações [Silberschatz e Korth,

1993]. Atualmente o mercado é dominado por bancos de dados que utilizam o modelo

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

50

Page 53: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

relacional, onde estão presentes nas próprias tabelas os seus atributos de

relacionamento, tornando as tarefas de junção e projeção de dados mais simples.

Os servidores de bancos de dados relacionais oferecem um alto grau de

abstração, tendendo a transformar simples consultas em grandes seqüencias de

operações físicas para processamento interno. Muitos processos dessas seqüências

podem ter sua ordem de execução alterada, dando margem a um grande conjunto de

possibilidades. Cada uma das possibilidades recebe o nome de plano de execução. O

principal fator que determina a complexidade de um plano de execução é o número de

tabelas envolvidas, pois as possibilidades aumentam com a inserção de novas tabelas.

Com um número elevado de tabelas em uma consulta, torna-se necessária uma estratégia

de ligação entre todas as tabelas para garantir uma rápida execução.

O SGBD PostgreSQL (site oficial: http://www.postgresql.org) define o melhor

plano de duas maneiras: Até doze tabelas inseridas em uma consulta, todas as

possibilidades são testadas (buscas exaustivas). A partir deste número, para não

consumir tempo e espaço na resolução do melhor plano de execução, o SGBD passa a

utilizar um modelo de métodos genéticos. Embora não existam garantias concretas da

geração do melhor caminho, os métodos genéticos apresentam-se como uma alternativa

em relação ao modelo de buscas exaustivas por apresentarem um tempo de execução

reduzido.

Foi proposta por Guttoski [2006] a implementação do algoritmo de Kruskal para

a projeção do plano de execução. Tal algoritmo é de natureza gulosa, já que, durante sua

execução busca a melhor alternativa momentânea. Esta implementação é interessante,

pois apresenta tempo de execução polinomial, representando uma vantagem em

comparação aos algoritmos genéticos, os quais não apresentam tempo de resposta bem

definido.

Neste trabalho foi abordada outra técnica para a geração de um plano de

execução: o algoritmo de Prim. Algoritmo guloso que possui um sistema diferenciado

para adição de tabelas no plano de execução. Foram comparadas neste trabalho as duas

técnicas de otimização gulosas e os algoritmos genéticos originais do PostgreSQL.

Este artigo está disposto da seguinte forma: Os mecanismos convencionais de

otimização estão dispostos na segunda seção. Na terceira seção, são relatados alguns

fundamentos de estudos de grafos e os algoritmos de Kruskal e Prim. Já na quarta seção

é apresentada a metodologia empregada e resultados dos experimentos. A quinta seção

discute os resultados obtidos em função dos métodos utilizados.

2. Otimizações de consultas

Para Silberschatz e Korth [1993], a função do otimizador é buscar a melhor

estratégia para executar as expressões enviadas ao banco de dados, porque diferentes

escolhas na formação da resposta podem ter uma diferença de tempo de execução

considerável. Um exemplo simples de tabelas do banco de dados e sua possível

otimização pode ser visto a seguir na Figura 1:

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

51

Page 54: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Figura 1. Relacionamento entre tabelas

A Figura 1 apresenta duas tabelas: Conta e Pessoa. Cada pessoa pode ter várias

contas, mas uma conta pertence exclusivamente a uma pessoa. As contas presentes no

banco de dados estão ligadas a cada pessoa através do atributo cod_pessoa. A seguir

será analisada uma possível execução de consulta:

SELECT CONTA.id, CONTA.saldo

FROM CONTA, PESSOA

WHERE CONTA.cod_pessoa = PESSOA.id AND PESSOA.nome = ‘Paulo Freire’

Embora não apresente erros em sua estrutura, a consulta acima é alterada durante

a sua execução. Supondo-se que existam trinta e cinco mil pessoas cadastradas na base

de dados e existam quarenta mil contas bancárias, a cláusula FROM propõe a

multiplicação entre os dados de uma tabela pelos da outra, mas isto não ocorre na

prática, pois existem restrições na consulta. Cabe à cláusula WHERE efetuar as devidas

restrições. Esta definirá a junção apenas quando o cod_pessoa da tabela conta for igual

ao valor contido no código da pessoa (atributo id). Evitando que a consulta apresente

como resposta um bilhão e quatrocentos milhões de linhas (resultado da multiplicação

de todos os dados de uma tabela por outra). No entanto, ainda existem quarenta mil

contas bancárias e estas se vinculam a tabela pessoa. Caso a ordem da cláusula WHERE

não fosse invertida o banco de dados verificaria todas as pessoas (e suas devidas contas),

em busca da pessoa chamada Paulo Freire. Como ocorre a inversão pelo otimizador, o

sistema gasta menos tempo para apresentar a resposta, pois existe apenas uma pessoa

com o nome Paulo Freire, e cabe ao sistema apenas selecionar as contas relativas a esta

pessoa.

A programação dinâmica busca a melhor forma de executar uma determinada

consulta. O SGBD utiliza a uma série de passos definidos e bem limitados para

encontrar a resposta ideal. Caso uma consulta envolva muitas tabelas, o otimizador

efetua o trabalho em partes: analisa as tabelas em duplas através de programação

dinâmica e gera o resultado em uma nova tabela (temporária). Este resultado é

processado com a próxima tabela, gerando uma nova tabela temporária, assim

sucessivamente até efetuar todas as operações necessárias.

Quando existem muitas condições de ligação entre tabelas inclusas, o otimizador

gasta tempo demasiadamente para realizar as devidas escolhas, já que para cada nova

junção o esforço aumenta exponencialmente, como explica Guttoski [2006]. O

otimizador deve escolher quais junções efetuar primeiro, necessitando muito tempo para

projetar o caminho com menor custo para a execução da consulta. Este gasto de tempo

pode tornar-se superior ao tempo que leva um método aleatório para achar uma resposta

aceitável e próxima da ótima, pois, segundo Steinbrunn et al. [1997], técnicas de

programação dinâmica não são as ideais para problemas complexos. Para estes casos,

faz-se necessário um plano de otimização que gere uma resposta aceitável e em um

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

52

Page 55: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

curto espaço de tempo. O PostgreSQL conta com o Genetic Query Optimizer (GEQO),

módulo que utiliza algoritmos genéticos.

O funcionamento destes algoritmos pode ser resumido da seguinte forma:

Inicialmente gera-se um conjunto de possíveis soluções de forma aleatória (em

algoritmos genéticos, dá-se o nome de população). Também de forma aleatória é

selecionado um par de elementos (gerando um novo caminho), fazendo a combinação

entre eles (buscando a evolução genética). O resultado desta combinação é então

inserido na população. Com base na evolução genética, espera-se que o resultado desta

combinação seja melhor que seus antecessores. Os piores planos de execução (com

custo maior) são eliminados. Ao final, os resultados podem ficar próximos de um

resultado ótimo. Já os algoritmos de Prim e Kruskal necessitam utilizar grafos para o

seu funcionamento.

3. Métodos analisados

Os grafos consistem em uma estrutura de elementos (chamados de vértices ou

nós) e um conjunto de ligações (chamadas arcos ou arestas), conforme Tenenbaum et al.

[1995]. Normalmente é possível representar muitas estruturas através da teoria de

grafos: cidades e suas estradas, aeroportos e o custo das suas passagens, redes de

computadores e os cabos para ligação entre os terminais, entre outros. A utilização de

grafos neste trabalho foi necessária, pois os algoritmos de Kruskal e Prim trabalham

baseados em grafos para gerar as árvores de resposta.

No algoritmo de Kruskal ocorre uma ordenação inicial do grafo baseado em suas

arestas (da mais leve para a mais pesada). Em seguida cada aresta de menor custo é

adicionada na resposta. Com a segunda adição e as demais, ocorre uma verificação, se a

seleção da aresta inclui algum vértice já adicionado ocorre a ligação de todos os

elementos. Quando ocorre esta ligação, dá-se a formação de uma floresta parcial, já que

se tem um grupo de vértices específico selecionado. Durante a execução deste algoritmo

podem existir diversas florestas parciais. Após a junção de todas as florestas parciais,

tem-se uma árvore geradora mínima (uma árvore que liga todos os vértices, buscando as

arestas de menor custo para as ligações). Para Tenenbaum et al. [1995], a complexidade

deste algoritmo é O(E log E). Já para Cormen et al. [2002], a complexidade é dada por

O(E log V), quando o número de arestas é menor que o número de vértices ao quadrado.

Esta complexidade é mesma apresentada pelo algoritmo de Prim em suas

implementações iniciais.

O processamento do algoritmo de Prim ocorre de maneira um pouco diferente.

Durante o processo de execução este algoritmo não gera florestas separadas, ele

adiciona na resposta um vértice ainda não incluso através de uma aresta de um vértice já

adicionado na árvore de resposta. Conforme explicado por Cormen et al. [2002], o

tempo de execução do algoritmo de Prim pode ser melhorado se utilizada uma boa

técnica para a verificação dos elementos vizinhos aos já inseridos na árvore geradora,

podendo produzir a seguinte complexidade: O (E + V Log V). Neste trabalho foi

implementado o algoritmo de Prim para a produção do plano de execução.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

53

Page 56: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

4. Metodologia empregada e resultados dos experimentos

Esta seção relata a metodologia utilizada para a avaliação dos métodos gulosos

em execução de consultas. São avaliados os métodos gulosos descritos anteriormente e

também o mecanismo original de otimização de consultas para grande número de

tabelas (GEQO). As características de hardware do computador utilizado para os testes

são descritas a seguir: (a) Processador: 2.1GHz Turion 64 X2 Mobile ZM-80; (b)

Memória: 3 Gigabytes, DDR2; (c) Disco rígido: Disco SATA 2, 250 Gigabytes. Quanto

ao software utilizado, têm-se: (a) Sistema operacional Slackware 13.1; (b) Sistema de

arquivos EXT-4; (c) SGBD: PostgreSQL 8.3.10. Das diversas ferramentas disponíveis

para análise de teste, foram utilizadas as métricas do Benchmark TPC-H. Na figura a

seguir são mostradas as tabelas deste Benckmark:

Figura 2. Tabelas do Benckmark TPC-H

A ferramenta DBT-3 é baseada no Benchmark TPC-H e compatível com o

PosgreSQL. Todas as consultas utilizadas foram enviadas diversas vezes para

processamento, gerando uma média de tempo em milissegundos conforme a tabela

abaixo:

Tabela 1. Média de tempo total das consultas

Prim Kruskal GEQO

Q2 405896 416133 404824

Q3 15597 16069 20058

Q5 248416 247821 17230

Q8 16459 4810 9746

Q9 30596 26866 21253

Q10 9114 9731 8558

Q11 856,2 856,6 978

Q18 33826 34549 32818

A Tabela 1 apresenta o tempo total de execução, ou seja, desde a geração do

plano até a execução do mesmo (final do processamento da consulta). Também foi

avaliado o tempo de execução apenas dos métodos (ou seja, a geração dos planos), sem

levar em consideração o tempo total da consulta. Neste caso, os métodos gulosos

apresentam um tempo de execução inferior, conforme a tabela abaixo:

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

54

Page 57: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Tabela 2. Média de tempo de execução dos algoritmos

PRIM KRUSKAL GEQO

Q2 0.000611 0.000620 0.017166

Q3 0.000233 0.000240 0.005408

Q5 0.000476 0.000480 0.017233

Q8 0.000500 0.000521 0.037372

Q9 0.000612 0.000655 0.018093

Q10 0.000275 0.000303 0.006668

Q11 0.000431 0.000437 0.006340

Q18 0.000325 0.000348 0.007973

Considerando-se apenas os tempos de execução dos métodos, nota-se uma

vantagem considerável dos algoritmos gulosos, pois os algoritmos genéticos apresentam

consumo de tempo elevado para seu processamento. Com o aumento do número de

tabelas, as diferenças de tempo de execução total das consultas entre estes métodos

podem ser acentuadas.

5. Considerações finais

Considerando-se apenas o tempo de execução dos algoritmos, o algoritmo de

Prim apresentou-se mais rápido em todas as consultas em relação ao de Kruskal.

Embora o tempo de execução do algoritmo de Kruskal seja maior, percebe-se que seus

planos de execução têm uma qualidade superior em relação ao algoritmo de Prim, pois

algumas consultas executam mais rapidamente (tem-se como exemplo a consulta Q8).

Isto acontece devido à característica do algoritmo de Kruskal ser a inserção de vértices

na árvore geradora mínima independente de tal vértice ter ligação com os elementos já

inseridos na árvore. Para a elaboração de um plano de execução, esta propriedade é

importante, pois garante que junções com maior custo serão efetuadas ao final da

execução do método, garantindo uma execução em menor tempo.

Considerando-se o tempo de consulta entre os algoritmos genéticos e o Prim,

observou-se uma eficiência maior dos primeiros, embora todos os planos dos métodos

gulosos sejam gerados mais rapidamente e com maior regularidade. Acredita-se que,

com o aumento do número de tabelas envolvidas, o algoritmo de Prim apresente tempo

total de execução menor em razão de sua complexidade. Assim, entende-se ser

interessante trabalhos futuros relacionados a exploração de consultas com um número

elevado de tabelas.

Referências

BINI, T. (2006) “Aplicação do algoritmo de Kruskal na otimização de consultas com

múltiplas junções relacionais”, Dissertação de mestrado em Informática na

Universidade Federal do Paraná, PR.

CORMEN, T., LEISERSON, C.; RIVEST, R.; CLIFFORD, S. (2002) “Algoritmos”,

2.ed. Rio de Janeiro: Campus.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

55

Page 58: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

GUTTOSKI, P. (2006) “Otimização de consultas no PostgreSQL utilizando o algoritmo

de Kruskal”, Dissertação de Mestrado em Informática na Universidade Federal do

Paraná, PR.

SILBERSCHATZ, A.; KORTH, H. (1993) “Sistemas de bancos de dados”, 2.ed. São

Paulo: Makron Books.

STEINBRUNN, M.; MOERKOTTE, G.; KEMPER, A. (1997) “Heuristc and

Randomized Optimization for the Join Ordering Problem”, Artigo da revista The

VLDB Journal, Volume 6, número 3. Passau, Alemanhã.

TENENBAUM, A.; LANGSAM, Y.; AUGENSTEIN, M. (1995) “Estrutura de dados

usando C”, São Paulo: Pearson Education do Brasil Ltda.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

56

Page 59: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Identificação Contextualizada de Objetos e Pessoas na Arquitetura ClinicSpace

Alexander F. do Rego1, Iara Augustin1, Vinicius Maran1, Alencar Machado2 1 Programa de Pós Graduação em Informática (PPGI) – Universidade Federal de Santa

Maria (UFSM) CEP 97.105-900 – Santa Maria – RS – Brasil

2 Universidade Federal do Pampa (UNIPAMPA) – Campus Alegrete CEP 97.546-550 – Alegrete – RS – Brasil

{fiabane,august,viniciusm}@inf.ufsm.br, [email protected]

Abstract. The health systems of the future point to the use of pervasive computing, which aims to help its users in theirs daily activities. Therefore, the services provided by these systems should strive to meet requirements as pro-activity and activities’s context, when they are performed. The identification of active agents/participants of these scenarios needs to be adapted to meet these requirements. So, it is proposed a model of contextualized identity, adapting the information and linking data connected with the case for other tasks in order to enable a transparent flow of execution of daily activities’s user.

Resumo. Os sistemas de saúde do futuro apontam para o uso da computação pervasiva, a qual visa auxiliar os usuários em suas atividades cotidianas. Nesse sentido, os serviços disponibilizados devem procurar atender requisitos como a pró-atividade e o contexto em que as atividades são executadas. Assim, a identificação dos elementos atuantes/participantes desses cenários deve ser adaptada para atender a esses requisitos. Sendo assim, propõe-se um modelo de identificação contextualizada, adaptando a informação e vinculando os dados desse processo à outras tarefas, a fim de viabilizar um fluxo transparente de execução das atividades do usuário.

1. Introdução Com o crescimento do uso de dispositivos móveis pelas pessoas, aumento da capacidade computacional (processamento, memória, recursos de imagem) destes dispositivos e a disseminação das redes sem fio, a construção de sistemas que tenham como base os conceitos propostos pela computação ubíqua [WEISER, 1991] vão se tornando possível. Na visão ubíqua, a computação está imersa no meio físico de uma forma onipresente, não impondo restrições quanto a sua utilização, e deve ser: (a) invisível e transparente, através de métodos intuitivos não constrangendo o usuário a efetuar passos complicados, mantendo a atenção na tarefa e não na utilização do ambiente computacional; e (b) pró-ativa, identificando quem (usuário) faz parte do cenário, e propondo recursos e serviços conforme o seu perfil de execução das tarefas.

Atualmente, é preciso despender esforços na construção de um modelo de projeto e programação, tendo em vista que as tecnologias atuais não atendem aos requisitos para o desenvolvimento integral desses espaços pervasivos [AUGUSTIN;

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

57

Page 60: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

LIMA; YAMIN, 2006]. Com essa motivação, o Grupo de Sistemas de Computação Móvel (GMob) está desenvolvendo o projeto ClinicSpace que visa construir um protótipo de uma ferramenta de programação orientada ao usuário-final (médico) para gerenciamento e personalização das suas atividades. Ambientes clínicos são ambientes pervasivos e dinâmicos, onde o contexto em que acontece as tarefas médicas torna-se fator importante nas decisões tomadas pelos sistemas que visam auxiliar os profissionais em suas atividades. E identificar pró-ativamente os objetos/elementos que participam do cenário de execução (contexto) torna-se um requisitos importante. Por isso, propõe-se um modelo de identificação contextualizada de objetos e pessoas. Esse modelo visa, também, atender a necessidade de identificação dos elementos de contexto da arquitetura ClinicSpace.

O restante do artigo está organizado da seguinte forma: o item 2 resume a arquitetura do projeto ClinicSpace; o item 3 apresenta o modelo de identificação contextualizada; o item 4 analisa os trabalhos relacionados; e o item 5 apresenta as considerações finais e a agenda de pesquisa.

2. Arquitetura ClinicSpace Utilizando conceitos e integrando tecnologias da Mobile, Pervasive and Ubiquitous Computing, End-User Programming e Contex-Aware Computing, a fim de viabilizar computacionalmente o cenário e os requisitos descritos, está sendo desenvolvida uma arquitetura chamada ClinicSpace. A arquitetura é estruturada em camadas, que inicia na visão do usuário-final (médico) e termina na camada de execução e gerenciamento do ambiente pervasivo pelo middleware EXEHDA [YAMIN et al, 2005], o qual é integrado à arquitetura.

Figura 1: Componentes ClinicSpace (MACHADO, 2011).

A arquitetura para desenvolvimento e gerenciamento das tarefas, segundo o perfil de cada usuário é mostrada na Figura 1. Atualmente, a arquitetura ClinicSpace é composta por: (a) Interface de Edição de Tarefas e Contexto (IETC); (b) Subsistema Gerenciador Distribuído de Tarefas (SGDT) [FERREIRA, 2009]; (c) bases de suporte: banco de dados de contexto, banco de dados pervasivo de informações do paciente; (d) pEHS – sistema pervasivo de informações em saúde [VICENTINE et al, 2010]; (e) Middleware EXEHDA de gerenciamento do ambiente pervasivo [YAMIN et al, 2005]. O Subsistema Gerenciador Distribuído de Tarefas (SGDT) [FERREIRA, 2009], que busca seguir a idéia de modularização definida no EXEHDA, faz a mediação entre o

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

58

Page 61: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

middleware de controle pervasivo de ambientes (EXEHDA), o Sistema Eletrônico de Saúde Pervasivo (pEHS), as bases de dados, e a Interface de Edição, viabilizando o acesso às informações de forma transparente, de acordo com as tarefas programadas pelo usuário (médico).

Utilizando e analisando as entidades descritas nesse item, modelou-se a identificação contextualizada de objetos e pessoas; mais especificamente, a identificação dos elementos de contexto que compõem as tarefas modeladas na arquitetura ClinicSpace.

3. Serviço de Identificação de Objetos e Pessoas na Arquitetura ClinicSpace Em sistemas automatizados, a identificação pró-ativa é uma das áreas centrais na modelagem desse serviço [HOLMSTROM; SANTIAGO; LENDARIS, 2005]. O reconhecimento e a obtenção automática de informações sobre os elementos atuantes possibilita vincular essa ação a outras, fazendo com que haja um fluxo transparente na execução das tarefas. Existem diversas propostas de identificação de objetos e pessoas, que agrupam diversas tecnologias de forma automatizada [MING; MA, 2009] [GIANNAROU; STATHAKI, 2007] [HUB; HARTTER; ERTL, 2006], porém essas propostas objetivam apenas a localização dos elementos (sejam eles objetos ou pessoas) e informações estáticas sobre esses elementos, além de terem custo elevado de implantação. Em um ambiente clínico, a entrada e saída de pacientes, a colaboração entre os profissionais, a alteração e acesso a informações dos pacientes ocorre constantemente. Assim, percebe-se a necessidade da identificação de objetos e pessoas com acesso às informações, segundo o contexto em que é realizada essa tarefa. Portanto, o contexto [DEY; ABOWD, 2006] é de grande relevância na identificação, pois influencia no acesso e na apresentação da informação.

Figura 2: Modelo de Identificação Contextualizado.

O modelo de identificação contextualizado para ambientes pervasivos proposto é ilustrado na Figura 2. O ponto central desse processo de identificação de objetos e pessoas é o módulo de identificação que implementa o fluxo de identificação. O usuário (a) inicia a tarefa de identificação; (b) o módulo de identificação verifica que um processo de identificação está ocorrendo, busca o contexto em que a tarefa está sendo realizada e o associa ao processo e, ainda, permite a associação com outras tarefas e a adaptação da informação segundo o contexto; (c) por fim, retorna as informações

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

59

Page 62: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

vinculadas ao objeto/pessoa e ou associa esses dados com outras tarefas disponibilizadas pelo sistema ao usuário. O processo de contextualização da identificação é dado pelo conceito de informação pública/privada. A parte pública da informação, que fica armazenada na tecnologia adotada (RFID, 2D Barcode, etc.), consiste em informações sobre o objeto (quando este não é conhecido do sistema) e ou referência a base de dados do sistema; a parte privada são as informações advindas do contexto em que é executada a tarefa de identificação. Assim, o módulo de identificação trata a informação devolvendo-a ao usuário segundo o contexto em que a tarefa foi executada, permitindo associar essa identificação com outras tarefas.

4. Análise dos Trabalhos Relacionados Identificação contextualizada é tema de alguns projetos recentes na área de computação pervasiva. O projeto pioneiro da área de computação pervasiva, Aura1, visa proporcionar a cada usuário um conjunto invisível de serviços de computação, que persiste independentemente da sua localização. Não há, propriamente dita, a tarefa de identificação, mas a localização dos usuários/dispositivos através da triangulação dos pontos de acesso da rede wireless [SMALL; SMAILAGIC; SIEWIOREK, 2000]. Já o projeto p-LearNet2 (Pervasive Learning Networks) visa explorar o potencial da comunicação ubíqua e pervasiva, em redes heterogêneas, no campo da aprendizagem humana e aborda a identificação contextualizada. Esse projeto viabilizou o sistema PerZoovasive [ROUILLARD; LAROUSSI, 2008], que provê a descrição de cada animal do zoológico (através da leitura do QR Code [ISO/IEC 18004:2006]), segundo um contexto particular: (a) a tarefa escolhida (lição ou questionário), (b) nível do usuário (aluno) e (c) a língua do usuário, que pode ser obtida pela seleção na aplicação. Esse sistema inspirou a construção do modelo genérico de identificação contextualizada descrito neste artigo.

Na área de saúde pervasiva, o projeto ABC3 apresenta uma proposta para utilização de Computação Baseada em Tarefas destinadas aos Ambientes de Saúde. Porém, mesmo havendo identificação, via tags RFID, e a associação com a atividade [BARDRAM, 2009] a informação não é adaptada. Outro trabalho, é a aplicação Allergy-check [ADELMANN; LANGHEINRICH; FLOERKEMEIER, 2006] que realiza a leitura do código de barras de um medicamento e o programa retorna se ele é alérgico, segundo as substâncias cadastradas em seu perfil. A identificação é feita através (a) da leitura do código de barras 1D e (b) da análise realizada pelo software dessas informações. No conceito desse software existe o contexto (usuário), porém não há adaptação da informação nem vinculação dos dados da identificação com outras funcionalidades.

A Tabela 1 apresenta um comparativo entre os projetos e o proposto, usando como critérios de comparação: a identificação, se contextualizada ou não; a adaptação ao contexto, se presente ou não, a associação com outras tarefas/funcionalidades, se presente ou não.

1 www.cs.cmu.edu/~aura 2 http://p-learnet.univ-lille1.fr/project 3 http://activitybasedcomputing.org/

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

60

Page 63: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

Tabela 1: Comparativo entre projetos relacionados.

Identificação Contextualizada

Identificação Contexto Adaptação da informação

Associação com outras tarefas/funcionalidades

ABC X X X

Aura X X

PerZoovasive X X X

Allergy-check X X

ClinicSpace X X X X

5. Considerações Finais e Agenda de Pesquisa Sistemas pervasivos voltados a saúde visam auxiliar os usuários finais automatizando suas tarefas. O projeto ClinicSpace objetiva esse fim, porém buscando o equilíbrio entre pró-atividade (agir em nome do usuário) e a personalização das tarefas, a fim de diminuir a rejeição enfrentada pelos sistemas de saúde atuais. Nesse ambiente, a identificação é uma tarefa necessária e a sua realização, muitas vezes, é vinculada a outras atividades feitas pela equipe médica, como requisição de exames. Informações, ainda mais relacionadas aos pacientes, necessitam ser adaptadas segundo o contexto em que se encontram, no intuito de não causarem constrangimento e de contribuírem efetivamente. Tendo em vista esses fatores, foi criado um modelo genérico de identificação, a fim de atender essas necessidades, o qual está sendo inserido na arquitetura ClinicSpace.

Dessa forma, os próximos passos em relação a pesquisa são a modelagem de um cenário de uso para validar o potencial da idéia, realizar as modificações necessárias para implantação do serviço de identificação contextualizada na arquitetura ClinicSpace e a publicação dos resultados.

Referências ADELMANN, R.; LANGHEINRICH, M.; FLOERKEMEIER, C. A Toolkit for Bar-

Code-Recognition and Resolving on Camera Phones – Jump Starting the Internet of Things. Proceedings of the workshop on Mobile and Embedded Interactive Systems (MEIS'06) at Informatik 2006. GI Lecture Notes in Informatics Series (LNI). Dresden, Germany, 2006.

AUGUSTIN, I.; LIMA, JOÃO CARLOS D. and YAMIN, A. C. 2006. Computação Pervasiva: como Programar Aplicações. In: X SIMPOSIO BRASILEIRO DE LINGUAGENS DE PROGRAMAÇÃO (SBLP), 2006, Itatiaia, RJ. Anais... [S.l.]: SBLP, 2006.

BARDRAM, J. E. Activity-based computing for medical work in hospitals. ACM Transactions on Computer-Human Interaction (TOCHI), v.16 n.2, p.1-36. 2009. doi: 10.1145/1534903.1534907.

DEY, A., and ABOWD, G., The Context Toolkit: Aiding the Development of Context-Aware Applications, In Proceedings of Human Factors in Computing Systems: CHI 99, Pittsburgh, PA: ACM Press, pp.434-441. 2006.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

61

Page 64: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,

FERREIRA, Giuliano L.; SILVA, Fábio L.; LIBRELOTTO, Giovani R. and AUGUSTIN, Iara. Adaptando o Middleware EXEHDA para o Tratamento de Atividades Clínicas. In: XXXV Conferencia Latinoamericana de Informática (CLEI 2009). CLEI.

GIANNAROU, S.; STATHAKI, T. Object Identification in Complex Scenes using Shape Context Descriptors and Multi-Stage Clustering. Digital Signal Processing, 15th International Conference on , vol., no., pp.244-247. 2007. doi: 10.1109/ICDSP.2007.4288564.

HOLMSTROM, L.; SANTIAGO, R.; LENDARIS, G.G. On-line system identification using context discernment. Neural Networks, 2005. IJCNN '05. Proceedings. 2005 IEEE International Joint Conference on , vol.2, no., pp. 792- 797 vol. 2, 31 July-4 Aug. 2005. doi: 10.1109/IJCNN.2005.1555953.

HUB, A.; HARTTER, T.; ERTL, T. Interactive tracking of movable objects for the blind on the basis of environment models and perception-oriented object recognition methods, Proceedings of the 8th international ACM SIGACCESS conference on Computers and accessibility, October 23-25, 2006, Portland, Oregon, USA. doi:10.1145/1168987.1169007.

ISO/IEC 18004:2006 - Information Technology – Automatic Identification and Data Capture Techniques - Bar Code Symbology - QR code, 2006.

MACHADO, A.; AUGUSTIN, I. Associando Contexto as Tarefas Clínicas na Arquitetura ClinicSpace. In: Simpósio Brasileiro de Sistemas de Informação (SBSI), Salvador – BA. 2011.

MING, A.; MA, H. A collaborative surveillance system for role identification. Computer Supported Cooperative Work in Design, 2009. CSCWD 2009. 13th International Conference on , vol., no., pp.306-311, 22-24 April 2009 doi: 10.1109/CSCWD.2009.4968076.

ROUILLARD, J.; LAROUSSI, M. PerZoovasive: Contextual Pervasive QR codes as Tool to Provide an Adaptative Learning Support. In CSTST '08: Proceedings of the 5th international conference on Soft computing as transdisciplinary science and technology, pp. 542-548. doi: 10.1145/1456223.1456332. 2008.

SMALL, J.; SMAILAGIC, A.; SIEWIOREK, D.P. Determining User Location For Context Aware Computing Through the Use of a Wireless LAN Infrastructure, Pittsburgh, USA: Institute for Complex Engineered Systems. Carnegie Mellon University, Pittsburgh, PA 15213. 2000.

VICENTINI C, F., ALENCAR M., FERREIRA G., SILVA, L., AUGUSTIN, I. PEHS – Arquitetura de um Sistema de Informação Pervasivo para Auxílio às Atividades Clínicas. Revista Brasileira de Computação Aplicada RBCA, Vol 2 no 2 (2010)

YAMIN, A. et al. EXEHDA: adaptive middleware for building a pervasive grid environment. In: Frontiers in Artificial Intelligence and Applications: Self-Organization and Autonomic Informatics (I), vol. 135. Amsterdam: IOS Press, 2005. p. 203-219.

WEISER, M. The Computer of 21st Century, In: Scientific American, 1991, p 3-11.

Anais do X Simposio de Informatica da Regiao Centro/RS - SIRC2011ISSN: 2175-0955 Santa Maria - RS, Outubro de 2011

62

Page 65: X S IR C /R S · (fdrossi, rosanawagner, sergio)@al.iffarroupilha.eu.br Abstract. Mashups are applications developed to integrate available resources and information on the Internet,