Conforme citado anteriormente, o desenvolvimento de estruturas que representassem de forma eficiente o conhecimento humano tem sido um problema de pesquisa que durante décadas tem demandado esforços da parte de estudiosos da Ciência da Computação. Mais recentemente a Ciência da Informação também tem incorporado este problema ao seu universo de pesquisas.
A seguir são apresentadas de forma sucinta algumas das soluções e ferramentas propostas por cada uma das áreas para o problema citado, tais como: Lógica, Redes Bayesianas, Redes Semânticas, Grafos Conceituais, Mapas Conceituais e Ontologias.
Conforme mencionado acima um dos desafios na construção de sistemas baseados em conhecimento está justamente na criação de mecanismos que consigam representar adequadamente o conhecimento do especialista. A Ciência da Computação buscou no ferramental da Lógica, mais precisamente na chamada lógica dos predicados ou lógica de primeira ordem, os recursos necessários para tratar este problema. A representação do conhecimento em nível lógico diz respeito à formalização do conhecimento.
A linguagem da lógica de primeira ordem permite fazer referência explícita a entidades ou objetos, e representar funções sobre essas entidades. Os predicados ou propriedades são declarações a respeito de entidades ou sobre as relações existentes entre elas. Embora a lógica de primeira ordem possua muitas limitações, ela permite fazer raciocínios com facilidade. É importante entender que na Ciência da Computação, representar conhecimento vai muito além de projetar bancos de dados, pois estes dados quando armazenados precisam estar conectados de forma a poder gerar informações. Outra dificuldade na representação diz respeito ao fato do conhecimento ter como características: ser volumoso, ser preciso e estar em constante evolução.
Segundo Nunes (2010), a utilização da lógica formal deve contemplar os aspectos acima de forma que os seguintes critérios sejam satisfeitos: o conhecimento a ser representado deve ser computável; ser compreendido pelas próprias pessoas que serviram como fonte de conhecimento; gere algoritmos que tornem possível a implementação de mudanças decorrentes da evolução que naturalmente acontece no mundo real que ele representa; possua capacidade de manipular as estruturas de forma a derivar novos conhecimentos a partir de conhecimentos antigos; e por último, atendendo a um requisito de processamento computacional, deve limitar as possibilidades combinatórias.
Ainda segundo a autora acima, através do uso de axiomas e regras de inferência da lógica de primeira ordem, é possível se obter a solução de problemas utilizando os fatos (conhecimento) existentes na base ou através da derivação de fatos a partir dos novos fatos que vão sendo disponibilizados. A este respeito, é importante esclarecer que a IA trabalha com dois tipos de
raciocínio:
a) Raciocínio monotônico, segundo o qual à medida que novos fatos (conhecimentos) se tornam disponíveis, caso eles sejam considerados consistentes com aqueles que foram definidos anteriormente, serão acrescidos ao sistema sem que nenhum dos fatos existentes sofra alteração. Neste tipo de raciocínio não existe mecanismo de revisão de crenças, ou seja, o sistema aumenta seu estoque de verdade à medida que o conhecimento é acrescentado e inferências são realizadas;
b) Raciocínio não monotônico, permite que uma inferência não-monotônica possa ser invalidada (derrotada) pela adição de novas informações que violem suposições feitas durante o processo de raciocínio original. Quando um fato novo é acrescentado à base ou um fato é removido, podem acabar ocorrendo contradições entre os fatos existentes, o que exige a necessidade de um mecanismo para lidar com tais conflitos.
No contexto das Redes Bayesianas, é importante destacar que esta técnica para representação do conhecimento deriva da utilização da fórmula matemática, desenvolvida em 1763 pelo Rev. Thomas Bayes, para o cálculo de probabilidades.
Os estudiosos da IA se defrontam diante de problemas cuja solução requer dois tipos de abordagens: o primeiro tipo diz respeito a problemas cujas variáveis são conhecidas e cuja solução deve ser encontrada seguindo um raciocínio lógico baseado nas variáveis conhecidas ou no conhecimento prévio; o segundo tipo trata de problemas onde algumas das variáveis não são totalmente conhecidas e neste caso a solução deve considerar um raciocínio probabilístico que se apóia na lógica das redes Bayesianas.
Sistemas baseados em redes Bayesianas são capazes de gerar automaticamente predições ou decisões mesmo na situação de inexistência de algumas variáveis ou elementos de informação, ou seja, é uma abordagem adequada para o tratamento das incertezas de um dado problema.
Um sistema que possua habilidade para lidar com situações de incerteza deve ser capaz de atribuir níveis de confiabilidade para todas as sentenças em sua base de conhecimento, e ainda, estabelecer relações entre as sentenças. As redes Bayesianas oferecem uma abordagem para o raciocínio probabilístico englobando teoria de probabilidades para a atribuição de níveis de confiabilidade e teoria de grafos para o estabelecimento das relações entre sentenças.
Percebe-se que redes Bayesianas representam uma abordagem adequada para a representação do conhecimento, fortemente embasada no cálculo computacional de probabilidades, no entanto situações que requerem cálculos que envolvam diversas probabilidades somadas à dificuldades na estruturação de inferências, podem acabar inviabilizando esta abordagem. Como alternativa, nestes casos, costuma-se utilizar abordagens heurísticas, fatores de incerteza ou lógica difusa.
Entre os tipos de problemas mais comuns que são resolvidos através desta abordagem, encontram-se a elaboração de diagnósticos na área médica.
Ainda no campo da representação do conhecimento, uma outra abordagem é a que utiliza Redes Semânticas, estruturas desenvolvidas no âmbito da Ciência da Computação com aplicações na área de Inteligência Artificial. Podem ser usadas na representação do conhecimento ou como ferramentas de suporte para sistemas automatizados de inferências sobre o conhecimento. Segundo Sowa (1992), uma rede semântica consiste em uma notação gráfica composta por nós interconectados por meio de um conjunto de arcos ou ligações. Os nós representam categorias, propriedades ou objetos, e as ligações definem relações: subconjuntos (subset) ou relações funcionais. Os nós podem também ser utilizados para representar predicados, classes, palavras de uma linguagem, entre outras possíveis interpretações, dependendo do sistema de redes semânticas em questão.
As redes semânticas podem apresentar características muito boas para determinados tipos de problemas, tais como problemas de reconhecimento de padrões, e de tratamento de linguagem natural. O uso de redes semânticas pode também trazer vantagens com relação à simplificação sobre a forma de representar o problema. Em alguns casos, podem ser estabelecidas relações de causa e efeito de forma bastante simplificada e intuitiva.
Figura 3 - Representação de uma rede semântica Fonte: http://www.comp.ita.br/~carlos/texts/12-RSframes.pdf
No caso de projeto de Sistemas Baseados em Conhecimento, uma das vantagens de utilizar uma descrição baseada em redes semânticas é que elas tendem a ilustrar relações de modo mais claro, além de mostrar naturalmente o conceito de herança ou hierarquia.
Os Grafos Conceituais representam uma técnica proposta por SOWA (SOWA, 2004) que possibilita fazer a representação de significado utilizando um formato logicamente preciso, humanamente legível e computacionalmente interpretável.
Um grafo conceitual é um grafo finito, conectado e bipartido. Por meio de um mapeamento direto para linguagem, grafos conceituais servem como uma linguagem intermediária para traduzir o formalismo orientado à computação de e para linguagens naturais, são formalmente definidos em uma sintaxe abstrata e independente de qualquer notação, mas o formalismo pode ser representado em várias notações diferentes.
Os Grafos Conceituais são grafos formados por dois tipos de nós: Conceitos e Relações. Os Conceitos são representados como caixas e são ligados através de outros tipos de nós, que representam as Relações entre os conceitos, e são representados por elipses.
Esta técnica tem sido utilizada em uma variedade de projetos de recuperação de informação, projeto de banco de dados, sistemas especialistas, e processamento de linguagem natural. Uma outra abordagem utilizada é a dos Mapas Conceituais. A teoria do mapa conceitual foi
desenvolvida em 1984 por Joseph D. Novak da Cornell University. Esta teoria foi concebida como uma forma de organizar e representar o conhecimento, e foi fundamentada na Teoria da Aprendizagem Significativa desenvolvida em 1980 pelo psicólogo e pedagogo norte- americano David Asubel, quem argumentou que o conhecimento apreendido por uma pessoa fica armazenado na estrutura cognitiva do indivíduo, podendo ser descrita como um conjunto de conceitos organizados de forma hierárquica que representam o conhecimento e as experiências adquiridas.
Lima (2004) define mapa conceitual como “uma representação que descreve a relação das idéias do pensamento, relação esta pré-adquirida ao longo do processo de aprendizagem na construção do conhecimento e que vai sendo arquivada na memória”.
O mapa conceitual é um diagrama que obedece a uma estrutura hierárquica, sendo capaz de representar conceitos e idéias sobre um dado assunto, estabelecendo através de referências cruzadas, as relações existentes entre os conceitos do domínio. Conclui-se portanto, que mapas conceituais têm como premissa apreender e organizar o processo cognitivo inerente a um dado tema, isto é reforçado pelo fato de que uma das principais funções da mente é interpretar o significado das informações adquiridas e transformá-las em conhecimento, o que se torna mais fácil quando estas são apresentadas visualmente.
Na literatura técnica é comum encontrar o conceito de mapa conceitual relacionado com termos como rede semântica, estrutura do conhecimento, estrutura cognitiva, mapa cognitivo e mapa mental.
Por último, vale destacar o papel das ontologias que vem sendo largamente utilizada na Ciência da Computação e Ciência da Informação com fins de representação do conhecimento. A seção 2.5 apresenta ampla discussão a este respeito, abordando conceituação teórica, finalidades, tipologias, e descrição e análise de metodologias para construção de ontologias. Nesta seção foram apresentados alguns suportes teóricos que tiveram como intuito adentrar na temática da representação do conhecimento, abordando definições, abordagens e pesquisas existentes, respectivamente nos campos da Ciência da Informação e da Ciência da Computação.