Buscar

Unidade03

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Unidade 03 – Sistemas Baseados em Conhecimento 
1. Introdução 
 
 Um sistema inteligente requer conhecimento. Quando este conhecimento está voltado ao 
conhecimento humano, geralmente se apresenta em grandes volumes, com imprecisão, de 
maneira dinâmica e organizado de acordo com seu conteúdo. Dessa forma, quando o objetivo é 
desenvolver um sistema artificial baseado em conhecimento ele deve ter capacidade de 
generalização, deve ser compreensível e deve ser facilmente modificável. 
 Conceitualizar a palavra conhecimento é um processo bem mais amplo e que envolve 
outros conceitos tais como dado e informação. 
 Dados são fatos, imagens, sons que podem ou não ser úteis para uma determinada tarefa; 
assim, um dado é a estrutura fundamental sobre a qual um sistema de informação é construído. 
 Informação é um dado cuja forma e conteúdo são apresentados de forma que são úteis 
para uso em um processo de tomada de decisão. A transformação dos dados em informação é 
frequentemente realizada através da apresentação dos dados em uma forma compreensível para 
o usuário. Com isso, é possível perceber que uma informação é um dado que passou por um 
critério de seleção que o categorizou como relevante para um determinado processo. A utilidade 
da informação para um usuário final é um critério importante na avaliação da eficácia e da 
validade da mesma. 
 Uma vez diferenciados os conceitos de dado e informação neste momento é pertinente 
contextualizar o que é “conhecimento”. O conhecimento fornece a capacidade de resolver 
problemas, inovar e aprender baseado em experiências prévias. Estas experiências 
envolvem uma combinação de instintos, idéias, regras e procedimentos que guiam as ações e as 
decisões. O êxito do conhecimento em explicar a forma como as coisas acontecem é um critério 
importante na validação desse conhecimento. 
 A partir disso, pode-se afirmar: 
 Dado não é informação! 
 Informação não é conhecimento! 
 Conhecimento não é inteligência! 
 
Título: Unidade 3 
 
Autora: Profª. M. Sc. Luciana De Nardin 
 
 Inteligência não é sabedoria! 
E você concorda com tais afirmações? 
 
2. Introdução a Sistemas Baseados em Conhecimento (Knowledge-based systems) 
 
 Um exemplo clássico encontrado na literatura é uma análise com relação a West cujo 
problema é o seguinte: “A lei americana diz que é proibido vender armas a uma nação hostil. 
Cuba possui alguns mísseis e, todos eles foram vendidos pelo Capitão West, que é americano”. 
Assim, deseja-se descobrir se West é um criminoso ou não. 
 Para um ser humano resolver este problema seria necessário analisar: 
 Linguagem: é compreensível o que está escrito em português? 
 Conhecimento: o que se sabe sobre geopolítica e armas? 
 Inferência: um ser humano é capaz de raciocinar usando o conhecimento descrito em 
português? 
 Através do texto citado anteriormente em linguagem natural é possível extrair as 
informações mostradas na Tabela 01, 02 e 03. 
Tabela 01 – Conhecimento prévio sobre o problema 
Conhecimento prévio 
a) Todo americano que vende uma arma a uma nação hostil é criminoso. 
b) Todo país em guerra com uma nação X é hostil a X. 
c) Todo país inimigo político de uma nação X é hostil a X. 
d) Todo míssil é uma arma. 
e) Toda bomba é uma arma. 
f) Cuba é uma nação. 
g) EUA é uma nação. 
h) Cuba é inimigo político dos EUA. 
i) Irã é inimigo político dos EUA. 
Tabela 02 – Conhecimento do problema 
Conhecimento do problema 
j) West é americano. 
k) Existem mísseis em Cuba. 
l) Os mísseis de Cuba foram vendidos por West. 
 
 Tabela 03 – Novo conhecimento 
Novo conhecimento 
m) Cuba possui um míssel M1 
n) M1 é um míssel 
De K 
De K 
o) M1 é uma arma 
p) Cuba é hostil aos EUA 
q) M1 foi vendido a Cuba por West 
r) West é criminoso. 
De D e N 
De F, G, H E C 
De L, M e N 
De A, J, O, P e Q 
 
 Através das Tabelas 01, 02 e 03 é possível perceber que para um ser humano responder 
a questão se West é um criminoso ou não, seria um processo simples, porém, como uma máquina 
poderia resolver este problema? 
 De acordo com a IA para um sistema resolver este problema é necessário: 
 Identificar o conhecimento do domínio; 
 Representá-lo em uma linguagem formal; 
 Implementar um mecanismo de inferência para utilizá-lo. 
 Porém, para que tais etapas possam ser cumpridas algumas outras questões precisam 
ser respondidas, sendo elas: como adquirir esse conhecimento? Como representá-lo 
adequadamente? Como raciocinar com ele de maneira correta e eficiente? 
 Os sistemas baseados em conhecimento são desenvolvidos com o intuito de que sejam 
capazes de resolver problemas de forma parecida com que os seres humanos resolveriam. Em 
alguns problemas os seres humanos são mais bem sucedidos que as máquinas, porém, os 
computadores são melhores no que diz respeito à velocidade e consistência com que executam 
as tarefas. Assim, para que o computador seja capaz de resolver tarefas para as quais o ser 
humano é melhor, é preciso muni-lo de todo o conhecimento especializado comparável ao que 
um especialista humano possui. 
 Um sistema baseado em conhecimento (SBC) possui dois componentes chave que são: 
 Base de conhecimento; e, 
 Mecanismo de inferência ou de raciocínio. 
 A base de conhecimento (BC) contém todo o conhecimento sobre o domínio do 
problema. Esse conhecimento é formado por um conjunto de sentenças em linguagem de 
representação que modelam o problema que se deseja resolver, isto é, o conhecimento está 
representado em uma linguagem tratável pelo computador. 
 O mecanismo de inferência é um processador de um SBC cuja responsabilidade é realizar 
inferências sobre esta base e obter conclusões sobre o conhecimento nela contido. 
 O desenvolvimento de um SBC é uma forma de preservar, aproveitar e fazer uso da 
experiência dos membros de uma organização, uma vez, que o conhecimento de um especialista 
é capturado, organizado e disponibilizado na base de conhecimento durante a construção do 
SBC. 
 Assim, um SBC pode ser definido como um programa de computador que usa 
conhecimento representado explicitamente para resolver problemas que requerem uma 
quantidade razoável de conhecimento humano e especialização. 
 Duas operações são fundamentalmente utilizadas na resolução do problema, são elas: 
 Capacidade de raciocínio: como se chega a certas conclusões ou se gera 
conhecimento novo com base no conhecimento adquirido; 
 Método para resoluções de problemas: especialistas determinam as seqüências de 
operações de raciocínio para a resolução de problemas que encontram soluções 
rapidamente, assim, apenas conclusões relevantes ao problema devem ser 
consideradas. 
 
2.1 Características específicas de um SBC 
 
 Um SBC deve atender às seguintes características: 
1) Questionar o usuário, usando uma linguagem simples a fim de coletar as informações 
de que necessita; 
2) Desenvolver uma linha de raciocínio a partir de tais informações e do conhecimento 
previamente armazenado na base para encontrar soluções satisfatórias; 
3) Deve ser capaz de explicar seu raciocínio; 
4) Deve conviver com seus erros da mesma forma que um especialista humano faz. 
 
2.2 Níveis de conhecimento 
 
 Um SBC é composto pelos seguintes níveis: 
 
 Nível de Conhecimento: nesta etapa acontece a aquisição do conhecimento em 
estado puro, por exemplo: para um táxi automático deveria ser passada a seguinte 
informação, a ponte Princesa Izabel liga a Rua Imperatriz à Rua Nova; 
 Nível lógico ou de representação: neste nível acontece a formalização do 
conhecimento codificado em sentenças. Utilizando o exemplo do nível de 
conhecimento, sua formalização seria: liga(Ponte_PI, RI, RN); 
 Nível de máquina ou de implementação: neste nível acontece a definição final da 
forma com que a implementação irá acontecer, ou seja, quais estruturas de dados 
serão utilizadas para representar o conhecimento em uma linguagem de máquina.Por exemplo: listas, tabelas, etc. 
 
2.3 Linguagens de Representação de Conhecimento 
 
 Uma linguagem de representação do conhecimento é definida por: 
 
 Uma sintaxe que descreve as configurações que podem constituir sentenças daquela 
linguagem; 
 Uma semântica que associa cada sentença aos fatos no mundo que ela representa: 
 Cada sentença faz uma afirmação a respeito do mundo; 
 O sistema acredita nas sentenças que correspondem a sua configuração interna. 
 Um mecanismo de inferência é um conjunto de regras para gerar novas 
implicações a partir de um conjunto de expressões. 
 
2.4 Raciocínio, Lógica e Inferência 
 
 O raciocínio é um processo de construção de novas sentenças a partir de sentenças 
existentes. Um raciocínio plausível garante que as novas sentenças representam fatos que se 
seguem dos fatos representados pelas sentenças existentes na base de conhecimento. O 
raciocínio plausível implementa ainda a relação “implicação” entre sentenças. 
 A Figura 01 ilustra uma representação do mundo real. 
 
 
 
Figura 01 – Representação do mundo real 
 
 Ainda na Figura 01 é possível perceber que, enquanto no mundo real fatos seguem-se de 
fatos, quando se utiliza uma representação simbólica, os fatos se transformam em sentenças e, 
sentenças implicam em sentenças; o que significa que, uma sentença é uma representação 
semântica de fatos. 
 A inferência pode acontecer de três maneiras distintas, sendo: 
 Dedução: um conjunto de fatos associado a um conjunto de regras de inferência 
geram novos fatos, ou seja, ele parte de uma premissa maior para uma menor. 
Exemplo: em todo lugar que há fogo, há fumaça. Aqui tem fogo, logo tem fumaça. 
 Abdução: é o inverso da dedução. Para [Pierce, 1975] o raciocínio abdutivo é a chave 
das grandes descobertas científicas revolucionárias. Exemplos: há fumaça, portanto, 
provavelmente, há fogo. Todos os livros daquela caixa são de matemática. Este livro 
provém daquela caixa, portanto, provavelmente, este livro é de matemática. 
 Indução: parte-se dos fatos para gerar regras. A indução ocorre quando 
generalizamos a partir de certo número de casos em que algo é verdadeiro e, 
inferimos que regra será verdadeira. Exemplo: Se a Sheila morena não canta bem, a 
Sheila loira não canta bem, então, nenhuma dançarina canta bem. 
 O pensamento em todos os níveis apresenta uma grande similaridade aos três tipos de 
raciocínio apresentados. Resumidamente, a indução de qualquer classe, não pode gerar idéias 
novas, mas, pode confirmar ou rejeitar hipóteses. Só a abdução é capaz de introduzir idéias 
novas e é o primeiro passo da inferência científica, mesmo muitas vezes sendo ineficaz, é o 
único responsável pelas descobertas com que o homem tenta explorar e explicar o mundo 
[Pierce, 1975]. A indução é o mais eficaz dos argumentos uma vez que representa o passo 
conclusivo do raciocínio. 
 
 
 
 
2.5 Representação do Conhecimento 
 
 Diversas estruturas podem ser usadas para representar conhecimento. As Tabelas 04 e 
05 ilustram as vantagens e desvantagens das mais comuns e que serão abordadas no decorrer 
desta disciplina. 
 
Tabela 04 – Vantagens de algumas formas de representação do conhecimento 
Representação Vantagens 
 
Lógica Formal 
Os fatos existem na base de conhecimento independente de seu 
uso. 
Existe a garantia de que todas e somente as conseqüências 
válidas serão obtidas. 
 
 
Sistema baseado em 
Regras 
Sintaxe simples. 
Simples de interpretar. 
Altamente modular. 
Altamente flexível (fácil de aumentar informações ou modificá-
las). 
Redes Semânticas 
Fácil de rastrear relações. 
Altamente flexível. 
 
 
Frames 
Adequado para interpretar hierarquias. 
Tem grande poder de expressão. 
Facilidade em adicionar atributos para novas propriedades e 
relações. 
Facilidade em detectar valores não informados. 
 
Tabela 05 – Desvantagens de algumas formas de representação do conhecimento 
Representação Desvantagens 
Lógica Formal Ineficiência com grandes bases de conhecimento 
 
Sistema baseado em Regras 
Ineficiente para sistemas grandes 
Nem todo o conhecimento pode ser expressado por meio de 
regras 
Inadequado para representar conhecimento descritivo 
estruturado 
Redes Semânticas 
Conhecimento embutido nos nós pode ser ambíguo 
Dificuldade para lidar com exceções 
Dificuldade em programar 
Frames 
Dificuldade em programar 
Inadequado para fazer inferência 
 
 
3. Engenharia do Conhecimento 
 
 O papel da área da engenharia de conhecimento é estudar como construir uma boa BC, 
uma vez que, uma boa BC é fundamental para um bom sistema baseado em conhecimento. 
 O responsável por construir a BC é o engenheiro de conhecimento que irá determinar 
quais conceitos são importantes no domínio escolhido e, irá criar representações dos objetos e 
suas relações no domínio dado. 
 Uma BC de conhecimento tem dois consumidores diretos: os usuários e o mecanismo 
responsável por realizar a inferência e gerar novos conhecimentos. Dessa forma, ela deve: 
 Ser clara e correta; 
 Representar apenas objetos e relações relevantes; 
 Idealmente, deve ser codificada separada do procedimento de inferência devido a 
quesitos como, reusabilidade, modularidade, etc.; 
 Melhorar a eficiência do processo de inferência. 
 Vale destacar que o mecanismo de inferência deve fornecer a mesma resposta, 
independente da forma com que a base foi codificada. 
 
4. Sistemas Especialistas 
 
 Sistemas especialistas (SE) são sistemas baseados em conhecimento que empregam o 
conhecimento humano para resolver problemas que requerem a presença de um especialista e 
pertencem a área de aplicação de mais sucesso dentro da IA. 
 Entre seus principais benefícios na automação pode-se destacar: 
 Provê alta qualidade de serviço: 
 Substancial aumento de desempenho; 
 Serve de repositório armazenando conhecimentos que poderão ser utilizados no 
futuro, uma vez que a experiência dos especialistas é perdida com o tempo, 
especialmente, no momento em que eles se especializam em outro assunto ou 
quando trocam de emprego. Um SE nunca esquece um procedimento, nem mesmo 
em seus mínimos detalhes. 
 Possui a mesma velocidade e dinâmica de um especialista humano só que 24 horas 
por dia durante todos os dias; 
 Provê baixo custo do serviço pela produtividade adquirida: 
 Significativo aumento de produtividade: um SE pode levar uma pessoa de pouca 
experiência para o nível de um especialista, executando tarefas mais rapidamente 
e mais facilmente; 
 Reduz os custos com funcionários especializados, pois, com SE’s uma tarefa de 
grande complexidade pode ser realizada por funcionários que não sejam experts, 
mas, que tenham um sistema de apoio à decisão, e os especialistas podem ficar 
dedicados a tarefas realmente complexas; 
 SE’s podem trabalhar melhor do que um especialista humano, pois, podem 
combinar a capacidade do especialista com a velocidade e precisão de uma 
máquina. Além disso, podem fazer uma análise detalhada e completa de uma 
situação que dificilmente um ser humano seria capaz de fazer. Se um SE for bem 
estruturado, ele não cometerá erros que eventualmente o ser humano poderia 
cometer. Por fim, um SE seria capaz de fazer tarefas detalhadas e repetitivas – que 
um especialista humano talvez as desprezasse, em uma situação em que as chances 
de resolver um problema fossem muito pequenas. 
 Prove gerenciamento e supervisão com maior flexibilidade: 
 Quando o SE se encarrega de resolver problemas de gerência com grande precisão 
e velocidade, o supervisor do sistema (humano) não precisa ser um especialista o 
que provê maior flexibilidade e rodízio na função; 
 Treinamento pessoal: 
 Os SE’s são capazes de fornecer informações detalhadas de diversos níveis, sobre 
qual procedimento foi utilizado para encontrar determinada solução. Esta pode ser 
a maior ajuda no treinamento de pessoas inexperientes. Além disso, existemSE’s 
construídos essencialmente para prover treinamento, possuindo até didática. 
 Entretanto, SE’s também podem gerar problemas. Com a introdução de procedimentos 
autônomos os trabalhadores podem se sentir inseguros (achando que irão perder o emprego 
para a máquina). Para evitar isso, pode ser interessante realizar uma migração lenta e 
responsável do sistema humano para a automação mantendo a supervisão como tarefa do ser 
humano. 
 
 
4.1 Conceitos básicos 
 
 É interessante definir alguns conceitos da linguagem utilizada em SE’s. São eles: 
 Expertise: representa vasto conhecimento adquirido através de longo treinamento, 
leitura ou experiência do especialista em determinado assunto; 
 Especialista: é quem possui o conhecimento, experiência, métodos ou habilidade de 
aplicar o expertise para dar conselhos e resolver problemas; 
 Transferência de conhecimento: passo em que o expertise é transferido do 
especialista para a máquina; 
 Engenheiro de conhecimento: é o responsável por guiar a aquisição e 
representação do expertise, bem como, por implementar e refinar o sistema; 
 Usuário: é um cliente não-especialista, um aprendiz ou até mesmo o próprio 
especialista, que fornece os dados sobre um problema específico e pede uma 
explicação ao sistema. 
 É fundamental que o especialista seja capaz de reconhecer e formular um problema, 
apresentar solução rápida e apropriada para o problema, explicar a solução apresentada, 
aprender por experiência, quebrar algumas regras quando forem necessárias (“jogo de cintura” 
que o ser humano possui), determinar a relevância dos fatos e a relação entre eles. 
 
4.2 Exemplo de um SE 
 
 Suponha que exista um SE na venda de carros que possui a base de conhecimento como a 
mostrada na Figura 02. 
 
 
 
Figura 02 – Base de conhecimento de um SE especialista na venda de Carros 
 As questões a seguir ilustram como o usuário irá interagir com o sistema. De acordo com 
as respostas fornecidas pelo usuário (apresentadas em negrito) uma solução será apresentada 
utilizando a BC descrita na Figura 02. 
1) Tem preferência por qual marca de automóvel? 
a. Marca A 
b. Marca B 
c. Marca C 
d. Marca D 
e. Não importa 
2) Qual a motorização desejada? 
a. 1.0 
b. 1.4 
c. 1.8 
d. 2.0 
Carro (Nome do Carro, Marca, motorização, número de portas, valor, ano de fabricação) 
Carro (Palio, Marca C, 1.0, 4, 30.000, 2008) 
Carro (Uno, Marca C, 1.0, 2, 15.000, 2007) 
Carro (EcoSport, Marca D, 2.0, 4, 50.000, 2009) 
Carro (Gol, Marca A, 1.4, 2, 32.000, 2006) 
e. Não importa 
3) Qual o número de portas desejado? 
a. Duas portas 
b. Quatro portas 
c. Não importa 
4) Qual valor você deseja pagar? 
a. Até R$ 15.000,00 
b. De R$ 15.000,00 a R$ 30.000,00 
c. Acima de R$ 30.000,00 
d. Não importa 
5) Quantos anos de uso o carro deve ter? 
a. No máximo 2 
b. No máximo 5 
c. No máximo 10 
d. Não importa 
 
 A partir das respostas escolhidas pelo usuário (Marca C, 1.0, 4, 15.000, 2) o sistema irá 
buscar na BC por uma solução que atenda as necessidades especificadas. Consultando a Figura 
02 é possível perceber que nenhuma resposta será retornada, uma vez que nenhum automóvel 
na BC tem as características desejadas. Porém, se alguma das respostas for um pouco mais 
flexível (por exemplo, o número de portas), então, uma solução será retornada (Uno). 
 Dessa forma, é possível perceber que quanto mais específica for a consulta maior a 
probabilidade de que nenhuma resposta seja encontrada, a partir do momento que algumas 
restrições se tornam mais flexíveis a probabilidade de encontrar respostas aumenta! 
 
4.3 Arquitetura de um Sistema Especialista 
 
 Um SE é composto por um ambiente de desenvolvimento e um ambiente de consulta. 
Considerando estes dois ambientes, ele ainda pode ser decomposto nas seguintes partes ou 
módulos: 
 Subsistema de aquisição de conhecimento: este módulo é responsável por extrair 
o conhecimento do especialista e armazená-lo na BC; 
 Base de conhecimento: irá conter o conhecimento necessário para o entendimento 
e formulação da solução do problema. É formado pelo conhecimento do domínio 
mais a estrutura que irá inferir soluções e pode incluir: fatos (são sempre verdade), 
regras (que irão inferir novos fatos), frames (possível forma de representação do 
conhecimento) e heurísticas (soluções aceitáveis que deverão ser atingidas). Para 
isso, a base de conhecimento utiliza uma linguagem de representação do 
conhecimento; 
 Base de fatos ou memória de trabalho (blackboard): é a memória temporária (ou 
volátil). É sua função registrar a descrição do problema e as hipóteses ou decisões 
intermediárias. Possui três tipos de decisões: 1) plano: como atacar o problema; 2) 
agenda: lista de ações potenciais que estão esperando por execução e; 3) solução: 
hipóteses e alternativas que o sistema já tenha produzido; 
 Máquina de Inferência: é a parte da BC e da memória de trabalho cuja 
responsabilidade é chegar a uma conclusão. Ela possui três elementos principais: 1) 
interpretador: executa os itens da agenda aplicando as regras à BC; 2) Controlador 
da agenda (scheduler): ordena a agenda conforme as prioridades/estratégias; e, 3) 
verificador de consistência: verifica se a solução emergente é consistente e plausível; 
 Interface com o usuário: é o módulo que irá trabalhar direto com o usuário. Para 
ser eficiente deve ter um modelo intuitivo e ser simples de utilizar; 
 Subsistema de explicação: deve explicar o comportamento do SE através de 
questões como: por que certa pergunta foi feita ao SE? Como a conclusão foi 
alcançada? Por que alguma alternativa foi rejeitada? Qual é o plano para alcançar a 
solução? 
 A Figura 03 ilustra a arquitetura completa de um SE. 
 
Figura 03 – Arquitetura de um SE 
 
 
 
4.4 Problemas na construção de um SE 
 
 Para que um SE tenha um bom desempenho é fundamental que sua BC seja bem 
fundamentada e coerente. Entretanto, a tarefa de adquirir o conhecimento é que representa um 
dos maiores problemas, pois, existe uma dificuldade muito grande do especialista (humano) na 
hora de transferir seu conhecimento para o engenheiro de conhecimento que irá modelar a base. 
 Para o especialista algumas soluções são intuitivas ou mesmo “compiladas”, uma vez que 
ele as executa corriqueiramente, assim, ele sabe resolver o problema, mas, não é capaz de 
explicar a forma que utiliza. Isso acontece por que o conhecimento é tácito, ou seja, é um 
conhecimento que está implícito em sua mente e que para ser relatado deve ser explicado. Essa é 
inclusive uma dificuldade inerente aos seres humanos, pois, muitas vezes, as pessoas possuem 
conhecimentos que nem mesmo sabem que os têm. 
 Existe também o problema da utilização de um vocabulário próprio (jargão) pertinente a 
área que nem sempre o engenheiro de conhecimento está habituado, além, é claro, da 
dificuldade inerente de verbalizar sobre pressão. Essa pressão existe porque geralmente os 
especialistas são profissionais extremamente valiosos e requisitados dentro de uma empresa, o 
que gera uma grande dificuldade tê-los comprometidos plenamente com o propósito de 
desenvolver um SE. 
 Como último grande problema na aquisição de conhecimento pode que o conhecimento 
expressado seja: 1) irrelevante: muitas vezes, quantidades enormes de informação supérfluas 
são coletadas para que só depois sejam organizadas; 2) incompleto: o especialista pode não se 
lembrar do conhecimento aprofundado sobre o problema ou pode “pular” partes importantes; 3) 
incorreto: por vontade própria (receio de sua substituição por um sistema) ou 
inconscientemente ele pode fornecer informações incorretas; e, 4) inconsistente: o especialista 
pode em um dado momento fornecer determinada informação e, a seguir, se contradizer 
fornecendo outra, afinal, não existe garantia da qualidade da solução apresentada. Além disso, a 
informação pode vir acompanhada de um grande nível deincerteza que também manifesta 
insegurança. 
 O grande desafio nesta fase é evitar informações irrelevantes sem bloquear a descoberta 
de conceitos adicionais. 
 
4.5 Métodos de aquisição de conhecimento 
 
 A parte mais sensível no desenvolvimento de um SE é, certamente, o processo de 
aquisição de conhecimento. Este processo não pode se limitar apenas a acrescentar novos 
conhecimentos à base, mas, é fundamental estabelecer relações entre os elementos que 
constituem o novo conhecimento e o conhecimento antigo. Fato este que faz com que esta etapa 
represente um “gargalo” na construção de SE’s [Rezende, 2005]. 
 Outro ponto importante neste processo é que dependendo da forma com que o 
conhecimento é adquirido podem acontecer erros de aquisição. Esses erros podem ser resultado 
da própria complexidade do conhecimento obtido, por exemplo, sensores que captam 
informações automaticamente e estão sujeitos a ruídos externos, ou podem ser gerados através 
da interferência humana. 
 As fontes de conhecimento usadas no processo da aquisição podem ser documentadas 
ou não. São consideradas fontes documentadas: livros, gráficos, filmes, relatórios, diagramas, 
manuais, entre outras. As fontes não documentadas são aquelas que residem na mente das 
pessoas e que atuam diretamente no domínio da aplicação do sistema [Costa & Silva, 2005]. 
 Quando o engenheiro utiliza fontes documentadas é interessante que ele conheça o 
domínio do problema para que seja capaz de extrair o conhecimento relevante. Caso não 
conheça, torna-se necessário recorrer a pessoas que trabalham diretamente com o assunto em 
questão. 
 Dessa forma, vários esforços têm sido feitos para sistematizar ou até mesmo automatizar 
este processo. Estes esforços resultaram em várias técnicas que podem ser classificadas em: 
manuais (mais utilizadas), semi-automáticas (bastante utilizadas em conjunto com técnicas 
manuais) e automáticas (bastante complexas de serem utilizadas). 
 Manual: a extração do conhecimento do especialista é realizada através de 
entrevistas, sejam elas estruturadas ou não, ou através da análise de protocolos e 
observação. Neste caso, o especialista irá “explicar” ao engenheiro do conhecimento 
e irá fornecer a documentação que também poderá contribuir neste processo. É 
fundamental que o engenheiro conheça sobre o assunto para que a conversa possa 
fluir a um nível um pouco mais adiantado. A Figura 04 ilustra essa situação. 
 
 
Figura 04 – Extração do conhecimento através de método Manual 
 
As técnicas manuais podem ser bastante problemáticas devido ao grande número de 
pessoas envolvidas (especialistas, engenheiros, programadores) [Rezende, 2005]. O 
processo de adquirir o conhecimento do especialista e transmiti-lo aos 
programadores pode gerar ruídos de comunicação entre as partes. 
 Semi-automático: os métodos semi-automáticos podem ser uma alternativa para 
minimizar o problema de ruído que existe no método manual. Neste caso, o 
especialista interage com uma ferramenta computacional que busca extrair o 
máximo de informação possível, porém, da maneira mais simplificada possível. A 
partir das respostas do especialista o engenheiro irá montar a base de 
conhecimento. Além de reduzir o contingente de pessoas envolvidas e o problema 
da comunicação entre essas pessoas, a aquisição semi-automática acelera o processo 
de construção da BC permitindo que o engenheiro e o especialista tenham respostas 
mais rápidas, pois, à medida que a BC vai sendo construída ela já pode ser testada e, 
possíveis erros podem ser identificados prematuramente [Costa & Silva, 2005]. A 
Figura 05 ilustra essa situação. 
 
 
Figura 05 – Extração do conhecimento através de método Semi-automático 
 
 Automático: os métodos automáticos fazem parte de uma área bem mais ampla que 
inclui a mineração de dados e o aprendizado de máquina através de técnicas como 
redes neurais, árvores de decisão e outros. Neste método são fornecidas bases de 
dados, casos, exemplos, soluções já adotadas e através de uma técnica de indução é 
gerado um conjunto de regras que será utilizado na BC. Este método dispensa 
completamente a necessidade de um engenheiro de conhecimento. As técnicas 
utilizadas são eficientes em processos de reconhecimento de padrões como imagens 
e voz, mas, não são completamente capazes de extrair o conhecimento complexo da 
mente humana e ainda não são capazes de explicar a forma com que o raciocínio foi 
utilizado para resolver determinado problema. Dessa forma, são bastante limitadas 
em alguns aspectos [Costa & Silva, 2005]. A Figura 06 esquematiza a forma com que 
a extração do conhecimento acontece. 
 
 
Figura 06– Extração do conhecimento através de método Automático 
 
4.6 Ferramentas para construção de um SE 
 
 Para construção de SE existem quatro opções de linguagens mais comumente utilizadas. 
São elas: 
 1) Shell: mais utilizado por sua simplicidade de manipulação. Exemplos: OPS, 
ExpertSintra, KAS, entre outras; 
 2) Linguagens de programação para IA: um exemplo clássico é PROLOG que é uma 
linguagem que pertence ao paradigma lógico; 
 3) Linguagens de programação gerais: especialmente as orientadas a objetos como 
C++ e Java; 
 4) Linguagens híbridas: que utilizam componentes de IA e trabalham com regras 
associadas a objetos como: CLIPS, JESS, NeOPUS, JEOPS, etc. 
 Para contribuir no processo de escolha da linguagem ideal para o domínio escolhido é 
fundamental analisar os seguintes critérios: facilidade de uso, flexibilidade, qualidade de 
interface para o sistema, desempenho e portabilidade. Analisados esses critérios é interessante 
escolher a linguagem que atenda, senão a todos, a pelo menos a maior parte deles. 
 
4.7 Aplicações 
 
 A Tabela 06 apresenta algumas aplicações de sucesso envolvendo SE’s e suas respectivas 
funções. 
Tabela 06 – Aplicações de sucesso em SE 
Área Nome Função 
Química CLONER Desenhar novas moléculas biológicas 
Eletrônica CADHELP Ensino para CAD 
Medicina PUFF 
ATTENDING 
Diagnosticar problemas pulmonares 
Ensinar administração de anestesias 
Engenharia STEAMER Ensinar a operar centrais termelétricas 
Sistemas de computadores YES/MVS Monitorar e controlar o sistema operacional 
MVS da IBM 
 
5. Bibliografia 
 
[Costa & Silva, 2005] Costa, W. S.; Silva, S. C. M. Aquisição de conhecimento: o grande desafio 
na concepção de sistemas especialistas. Revista Holos, ano 21, Setembro, 2005. 
[Pierce, 1975] Pierce, C. S. Semiótica e filosofia. São Paulo, Cultrix, Editora Universidade de São 
Paulo, 1975. 
[Rezende, 2005] Rezende, S. O. Sistemas Inteligentes: fundamentos e aplicações. Barueri: 
Manole, 2005. 
[Rich & Knight, 1994] Rich, E.; Knight, K. Inteligência Artificial. 2ª Ed., São Paulo: McGraw-Hill, 
1994. 
[Russell & Norvig, 2004] Russell, S.; Norvig, Peter. Inteligência Artificial. 2ª Ed. 2004.

Continue navegando