• Aucun résultat trouvé

Chapitre 4.1 Optimisation des énergies mixtes

V. Discussion

Com base no problema e objetivos, foi feito levantamento bibliográfico sobre os assuntos da tese para compor o referencial teórico. Em seguida investigou-se trabalhos correlatos com a presente tese. A descrição resumida dos trabalhos correlatos bem como o método usado na investigação encontram-se na subseção 1.4 da introdução. Os critérios para a seleção dos trabalhos investigados, bem como a análise comparativa dos trabalhos selecionados com o presente trabalho são apresentados no capítulo de discussão, na subseção 5.8. Esse levantamento bibliográfico e a investigação dos trabalhos correlatos auxiliaram o cumprimento do primeiro objetivo específico elencado na introdução, na subseção 1.2.2.

3.3 Segunda etapa: desenvolvimento do experimento inicial com ciclo completo e concepção da primeira versão do modelo

Com o objetivo de obter dados para verificação da factibilidade inicial da proposta dessa pesquisa foi realizado um experimento com ciclo completo, desde o recebimento de um conjunto arbitrário de termos de consulta do usuário, passando pela geração de redes de informação intermediárias, até a síntese do mapa conceitual resultante. Usando o método de inspeção visual, descrito na seção 2.5.3 do referencial teórico, e atuando de forma experimental no refinamento dos parâmetros de cálculo e transformação executados por cada um dos módulos de software independentes, foi possível obter dados para a concepção da primeira versão do modelo de RI. Os resultados desse experimento bem como a primeira versão do modelo encontram-se na subseção 4.4.

Nessa etapa, várias métricas de redes complexas foram empregadas empiricamente no experimento enquanto método exploratório com o objetivo de descobrir melhores caminhos. As que foram efetivamente adotadas para obtenção dos resultados estão descritas na subseção 4.4. Não houve implementação de software nessa etapa. Foram usados módulos de software independentes e prontos para a execução completa do experimento:

 SPARQL: linguagem de consulta usada para acessar triplas RDFs da DBpedia;  SNORQL: terminal de consulta usado para acessar dados da DBpedia;

 Gephi: software usado na análise e inspeção visual das redes de informação juntamente com os algoritmos de métricas, particionamento e layout;

 Semantic Web Import63: software usado para transformar as consultas feitas à DBpedia em redes de informação;

 CmapTools: software usado para formatar e apresentar o mapa conceitual resultante.

Essa etapa auxiliou o cumprimento do segundo e terceiro objetivos específicos elencados na introdução, subseção 1.2.2.

3.4 Terceira etapa: prototipagem e concepção do modelo aprimorado

À luz da equação fundamental da CI de Brookes, apresentada no referencial teórico – subseção 2.1.4, e discutida na subseção 5.1, e baseado nos paradigmas da CI, apresentados no referencial teórico – subseções 2.1.2 e 2.4.1, e discutidos na subseção 5.1.3, e também a partir dos resultados obtidos no experimento realizado, foram concebidos um protótipo para automatizar quase por completo o processo de RI e uma versão aprimorada do modelo de RI. Tanto o protótipo quanto o modelo foram sendo aperfeiçoados em um processo cíclico de investigações e experimentações onde o resultado de um contribuía para o aprimoramento do outro. Esse processo exploratório e cíclico, de desenvolvimento do modelo e do protótipo, consumiu mais de um ano de pesquisa até se atingir um ponto de equilíbrio. Esse método de pesquisa foi determinante para a descoberta de parâmetros de cálculos e transformações de análise de redes que melhorassem empiricamente a síntese do mapa conceitual resultante. O modelo aprimorado, o algoritmo do protótipo bem como os resultados de sua execução são apresentados na subseção 4.5.

O protótipo permitiu: a execução de maior número de testes; a descoberta de outros elementos de análise de redes complexas; a inclusão de mais iterações no algoritmo que faz a retroalimentação64 para reiteradas expansões e reduções da rede, até a obtenção do mapa conceitual resultante; flexibilização da quantidade de termos fornecidos pelo usuário; e

63 Semantic Web Import é um plugin do Gephi que facilita a captura de RDFs em bases LOD e a sua

transformação numa rede complexa. Disponível em:

<https://marketplace.gephi.org/plugin/semanticwebimport/>.

aumento da alterabilidade, para permitir reconfigurações ágeis do algoritmo. O protótipo também trouxe aprimoramentos adicionais, como a inserção de heurísticas para melhoria da leitura do mapa conceitual resultante, e a possibilidade de validação com um grupo de usuários, apresentado na próxima etapa.

Para a implementação do protótipo foi utilizada a metodologia de Modelo Incremental do Processo, pois, conforme características explicadas por Pressman (2005), existiam requisitos razoavelmente bem definidos e havia necessidade em fornecer um conjunto de funcionalidades antes do término para depois ir refinando e expandindo nas próximas versões. Também foi adotado o Modelo RAD (Rapid Application Development), pois, segundo Pressman, a ênfase é num ciclo rápido de desenvolvimento (modelagem: negócio, dados e processo; e construção), possui abordagem de construção baseada em componentes, sendo necessário que os requisitos sejam bem compreendidos e o objetivo do projeto restrito permitindo a criação de um sistema plenamente funcional dentro de um período curto de tempo. Esses dois modelos de desenvolvimento contribuíram para a construção do protótipo, principalmente pela necessidade de testar o protótipo de forma incremental e dinâmica ao longo de todo o processo.

Figura 36 – Frequência de commits do desenvolvimento do protótipo

Fonte: Gerado automaticamente pelo sistema GitHub

Foram ao todo sete meses de desenvolvimento em 2015, como pode ser observado na frequência de commits65 da Figura 36 criado automaticamente pelo sistema GitHub66, que

65 Commit, em Ciência da Computação, é um conjunto de alterações realiza num sistema durante a sua fase de

mantém e organiza o repositório no qual o protótipo foi desenvolvido. O código fonte completo do protótipo está organizado em 6 pacotes com 36 arquivos escritos na linguagem Java67, com 6.157 linhas de código ao todo. Além desses arquivos o projeto ainda possui 5 arquivos fonte entre configurações e modelos. O código completo está disponível para acesso público em https://github.com/hmcristovao/Prototype.

Nessa etapa, foram empregadas métricas de redes complexas que estão descritas na subseção 4.5 bem como, detalhes do algoritmo empregado e exemplos de execuções do protótipo. No desenvolvimento do protótipo foram empregadas as seguintes tecnologias de software:

 Java: linguagem de programação principal usada no desenvolvimento;

 Javacc68: usado na geração dos analisadores das entradas de dados, tais como o conjunto de termos, vocabulário controlado, configurações etc.;

 Eclipse69: ambiente central e organizador dos vários elementos usados no desenvolvimento;

 Github: usado no controle de versões, armazenamento online e para facilitar possíveis trabalhos cooperativos;

 Egit70: ferramenta usada para facilitar o uso do Github dentro do Eclipse;  Apache Jena71: usada na leitura dos dados ligados da DBpedia;

 JSON72: formato para auxiliar o intercâmbio de dados entre a base de dados ligados e a biblioteca Apache Jena;

 GraphStream73: usada para auxiliar a organização estrutural das redes intermediárias e execução de métricas;

 Gephi Toolkit74: usada na execução de métricas e exportação de redes complexas;

66 GitHub é sistema online para hospedagem e organização do trabalho cooperativo de desenvolvimento de

software. Disponível em: <https://github.com/>.

67 Java: linguagem de programa disponível em < http://www.oracle.com/technetwork/java/index.html>. 68 Javacc é um gerador de compiladores escritos em Java. Disponível em: <https://javacc.java.net/>. 69 Eclipse é um ambiente integrado de desenvolvimento. Disponível em: <https://eclipse.org/>. 70 Egit é uma extensão do Eclipse para permitir a integração com o GitHub. Disponível em:

<http://www.eclipse.org/egit/>.

71 Apache Jena é um ambiente para auxiliar desenvolvimentos no contexto da Web Semantica e dados ligados.

Disponível em: <https://jena.apache.org/>.

72 JSON (JavaScript Object Notation) é um formato para intercâmbio de dados, legível por humanos e maquinas.

Disponível em: <http://www.json.org/>.

73 GraphStream é uma biblioteca computacional para manipulação de grafos. Disponível em:

<http://graphstream-project.org/>.

74 Gephi Toolkit é uma biblioteca computacional para manipulação de grafos. Disponível em:

 CmapTools: usado na geração de layout semiautomático e apresentação visual do mapa resultante,

 Gephi: usado na fase exploratória de investigação e inspeção visual das redes intermediárias.

Essa etapa auxiliou o cumprimento do segundo, terceiro e quarto objetivos específicos elencados na introdução, subseção 1.2.2.