"O framework de integração do sistema DISCOVER" - Prati, Ronaldo Cristiano (2003)
Talvez uma das maiores capacidades do ser humano seja a sua habilidade de aprender a partir de observações e transmitir o que aprendeu para outros humanos. Durante séculos, a humanidade vem tentado compreender o mundo em que vive e, a partir desse novo conhecimento adquirido, melhorar o mundo em que vive. O desenvolvimento da tecnologia colocou a descoberta de conhecimento em um momento ímpar na história da humanidade. Com os progressos da Ciência da Computação, e, em particular, da Inteligência Artificial - IA - e Aprendizado de Máquina -AM, hoje em dia é possível, a partir de métodos de inferência indutiva e utilizando um conjunto de exemplos, descobrir algum tipo de conhecimento implícito nesses exemplos. Entretanto, por ser uma área de pesquisa relativamente nova, e por envolver um processo tanto iterativo quanto interativo, atualmente existem poucas ferramentas que suportam eficientemente a descoberta de conhecimento a partir dos dados. Essa falta de ferramentas se agrava ainda mais no que se refere ao seu uso por pesquisadores em Aprendizado de Máquina e Aquisição de Conhecimento. Esses fatores, além do fato que algumas pesquisas em nosso Laboratório de Inteligência Computacional - LABIC - têm alguns componentes em comum, motivaram a elaboração do projeto Discover, que consiste em uma estratégia de trabalho em conjunto, envolvendo um conjunto de ferramentas que se integram e interajam, e que supram as necessidades de pesquisa dos integrantes do nosso laboratório. O Discover também pode ser utilizado como um campo de prova para desenvolver novas ferramentas e testar novas idéias. Como o Discover tem como principal finalidade o seu uso e extensão por pesquisadores, uma questão principal é que a arquitetura do projeto seja flexível o suficiente para permitir que novas pesquisas sejam englobadas e, simultaneamente, deve impor determinados padrões que permitam a integração eficiente de seus componentes. Neste trabalho, é proposto um framework de integração de componentes que tem como principal objetivo possibilitar a criação de um sistema computacional a partir das ferramentas desenvolvidas para serem utilizadas no projeto Discover. Esse framework compreende um mecanismo de adaptação de interface que cria uma camada (interface horizontal) sobre essas ferramentas, um poderoso mecanismo de metadados, que é utilizado para descrever tanto os componentes que implementam as funcionalidades do sistema quanto as configurações de experimentos criadas pelos usuário, que serão executadas pelo framework, e um ambiente de execução para essas configurações de experimentos.