Upload
internet
View
108
Download
1
Embed Size (px)
Citation preview
1
Inteligência Artificial (introdução - Sistema Especialista)
Prof. Edson Emílio ScalabrinCurso de Ciência da Computação
CCET/[email protected]
2
Introdução
Em 1956, um pequeno grupo de cientistas da computação realizaram um seminário patrocinado pela IBM na Faculdade Dartmouth.
As discussões enfocaram-se nos esforços de pesquisa sobre a prova automática de teoremas e as novas linguagens de programação.
Eles discutiram também formas com que este trabalho poderia ser encaminhado para desenvolver um computador que poderia simular o raciocínio humano.
Esta conferência marcou o nascimento da Inteligência Artificial.
3
Introdução . . .
Definição 1.1: Inteligência Artificial• Um campo de estudo em ciência da computação que
tem como meta a construção de um computador que raciocina de forma semelhante aos seres humanos.
Objetivos da Inteligência Artificial (de um ponto de vista prático) tornar os computadores mais úteis para os seres humanos.
• Isto pode ser alcançado produzindo programas de computador que ajudem os humanos em suas tomadas de decisões, fazendo, por exemplo, uma recuperação inteligente de informação, ou simplesmente, fazendo computadores mais fáceis de usar com interface em linguagem natural.
entender melhor a inteligência humana. • A construção de um sistema de computação inteligente exige que entendamos como
nós, seres humanos, capturamos, organizamos e usamos o conhecimento na resolução de problemas.
4
Introdução . . .
Como o ser humano resolve seus problemas ?
Qual é a origem dos conhecimentos utilizados para resolver um problema ?• da nossa experiência e• de um processo formal de aprendizagem
5
Introdução . . .
Qual é a importância dos conhecimentos provenientes da experiência ?
• eles dão origem as heurísticas
OBS.:• Estes também são chamados de conhecimentos de
superfície e correspondem à resolução de “caso já visto”
Exemplo de modelagem • regras de produção
6
Introdução . . .
Exemplos de regras:Se < chove > então pegar um guarda-chuva
Se < não encontrar um guarda-chuva > então procurar uma impermeável
Se < está quente > então retirar a blusa
Funcionamento:• as regras são confrontadas à situações correntes fatos, e
uma ação correspondente é efetuada.• esse comportamento é facilmente reproduzido em
computadores nos sistemas especialistas ou ainda sistemas a base conhecimentos.
7
Introdução . . .
Qual é a importância dos conhecimentos provenientes de um processo formal ?
• Eles são representam o resultado do aprendizagem de teorias gerais que devem ser colocadas em práticas nos raciocínios.
OBS.:• Estes também são chamados de conhecimentos de
profundos
8
Sistema Especialista
Definição 1.2: Sistema Especialista• É um programa de computador projetado para modelar
a habilidade de resolução de problemas de um especialista humano.
9
Sistema EspecialistaDiagrama em blocos
Base de conhecimentos
Base de Fatos
Motor deinferência
a Base de Conhecimentos contém conhecimentos altamente especializados fornecidos pelo especialista na área do problema.
a Motor de Inferência é o processador de conhecimento modelado a partir do raciocínio do especialista.
• Ele trabalha com as informações disponíveis sobre um determinado problema e os conhecimentos armazenados na base de conhecimentos para inferir conclusões ou recomendações.
10
Sistema EspecialistaPor que construir um ?
Fator Esp. Humano Esp. Sistema
disponibilidade/tempo dia / trabalho sempre
geográfico local qualquer lugar
segurança Insubstituível substituível
perecível sim não
desempenho variável constante
velocidade variável constante(normalmente mais rápido)
custo alto razoável
11
Sistema EspecialistaPor que construir . . .
Substituir um especialista, algumas razões:
tornar as perícias sempre disponíveis (tempo e lugar) ; automatizar tarefas rotineiras que requerem um
especialista; reter os conhecimentos especializados, em particular, em
casos de aposentadoria, mudança de setor, etc.; baratear serviços especializados--especialista é caro; atuar em um ambiente hostil, quando uma perícia se faz
necessária.
12
Sistema EspecialistaPor que construir . . .
Assistir um especialista, algumas razões:
auxiliar o especialista em alguma tarefa rotineira para melhorar a produtividade;
auxiliar o especialista em alguma tarefa difícil para melhor administrar a complexidade;
tornar disponível ao especialista informações que são de difícil recordação ou memorização.
13
Sistema EspecialistaEstrutura de um Sistema Especialista
Raciocínio
Memória de longo termo Conhecimento de domínio
Memória de curto termo Caso/Fatos inferidosConclusões
RecomendaçãoCaso, Fatosconclusões
Especialista Humano
14
Sistema EspecialistaEstrutura de um Sistema Especialista
Motor deInferência
Memória de longo termo Conhecimento de domínio
Memória de curto termo Caso/Fatos inferidosConclusões
UsuárioCaso, Fatosconclusões
Sistema Especialista
15
Sistema EspecialistaBase de conhecimentos
Definição 2.1: Base de conhecimentos• parte de um sistema especialista que contém o
conhecimento do domínio.
Tarefa do engenheiro do conhecimento• obter o conhecimento do especialista e codificá-lo em
uma base de conhecimentos usando uma dada técnica de representação (e.g. regras).
16
Sistema EspecialistaBase de conhecimentos . . .
Exemplo de regras:
Regra 01:• Se o carro não ligar
Então o problema pode estar no sistema elétrico
Regra 02:• Se o problema pode estar no sistema elétrico
E a voltagem da bateria está abaixo de 10 voltsEntão a falha é uma bateria ruim
17
Sistema EspecialistaMemória de trabalho
Definição 2.2: Memória de trabalho• parte de um sistema especialista que contém os fatos
do problema que são descobertos durante a sessão de consulta.
Comentário:• A memória de trabalho contém todas as informações
sobre o problema que são fornecidas pelo usuário ou inferidas pelo sistema.
• Toda informação obtida durante uma consulta é freqüentemente chamada de contexto da sessão.
18
Sistema EspecialistaMotor de Inferência
Definição 2.3: Motor de Inferência• É o processador em um sistema especialista que confronta os
fatos contidos na memória de trabalho com os conhecimentos de domínio contidos na base de conhecimento para tirar conclusões sobre o problema.
Comentário: • O M.I. trabalha com os fatos contidos na memória de trabalho e o
conhecimento de domínio contido na base de conhecimento para derivar uma nova informação. Ele procura as regras para um casamento entre as suas premissas e as informações contidas na memória de trabalho. Quando o M.I. encontra um casamento, adiciona a conclusão da regra na memória de trabalha e continua ...
19
Sistema EspecialistaMecanismo e estratégia de inferênciaConsiderando uma regra:
• Se as premissas estão contidas na memória de trabalho, • Então aplica-se a regra, adicionando as conclusões MT• Senão passa para a próxima regra• Quando detecta-se que um objetivo foi atingido ou que
mais nenhuma regra se aplica, o processo de raciocínio é encerrado
Comentário: • as variações nesse mecanismo estão relacionadas a
escolha da primeira regra, a escolha próxima regra, . . .
20
Sistema EspecialistaExemplo de inferência
Regra 01: Se A = SIM Então B = SIM & C = SIM Regra 02: Se B = SIM Então D = 5 Regra 03: Se C = SIM Então E = 10 Regra 04: Se D > 2 Então G = 1024
A
B
G
D
C
E
A
B
G
D
C
E
1
3
4
52
Encadeamento para frente
Encadeamento para traz
21
Sistema EspecialistaExemplo de base de regras
Regra 01: Se distância > 5 km, pegaremos o carro
Regra 02: Se distância > 1 km e tempo < 15 minutos, pegaremos o carro
Regra 03: Se distância > 1 km e tempo > 15 minutos, iremos a pé
Regra 04: Se iremos de carro e o cinema é no centro da cidade, pegaremos um taxi
Regra 05: Se iremos de carro e o cinema não é no centro da cidade, pegaremos nosso próprio carro
Regra 06: Se iremos a pé e o tempo está ruim, pegaremos uma impermeável
Regra 07: Se iremos a pé e o tempo está bom, iremos em ritmo de passeio
22
Sistema EspecialistaShell SINTA
Cálculo de probabilidadesCaso 1:
• Quando deseja-se saber o valor final atribuído às variáveis na conclusão de um regra.
• Seja c1 o grau de confiança atribuído ao resultado final da premissa de uma regra r.
var = value CNF c1. c2.
• c2 é apenas uma referência, pois o valor final é dependente do resultado da premissa.
23
Sistema EspecialistaShell SINTA
Caso 1: exemplo continuação
• SE fumagina = simENTÃO suspeita de praga = mosca branca, grau de confiança (CNF) 70%.
Cálculo:• Supondo que o grau de confiança da igualdade
fumagina = sim é 80%, teremos que à variável suspeita de praga será atribuído o valor mosca branca, com o respectivo grau de confiança 0.80 * 0.70 = 0.56 = 56%.
24
Sistema EspecialistaShell SINTA
Caso 2: • Quando deseja-se calcular o grau de confiança
envolvendo o o operador E.
Cálculo :• Se possuímos duas igualdades var1 = value1 e var2 =
value2, com os respectivos graus de confiança c1 e c2, temos que a sentença var1 = value1 E var2 = value2 retornará como valor de confiança c1 x c2.
25
Sistema EspecialistaShell SINTA
Caso 2: exemplo continuação • SE estados das folhas = esfarelam facilmente
E presença de manchas irregulares = sim...
Cálculo:• Se o grau de confiança da igualdade estados das folhas
= esfarelam facilmente é 80% e o grau de confiança da igualdade presença de manchas irregulares = sim é 70%, temos que a conjunção das duas sentenças retornará um valor CNF de 56%.
26
Sistema EspecialistaShell SINTA
Caso 3: • Quando deseja-se calcular o grau de confiança com o
operador OU.
Cálculo :• Se possuímos duas igualdades var1 = value1 e
var2 = value2, com os respectivos graus de confiança c1 e c2, temos que a sentença var1 = value1 OU var2 = value2 retornará como valor de confiança c1 + c2 - c1 x c2.
27
Sistema EspecialistaShell SINTA
Caso 3: exemplo continuação
• SE besouros vermelhos = sim OU larvas marrons = sim ...
Cálculo :• Se o grau de confiança da igualdade besouros
vermelhos = sim é 80% e o grau de confiança da igualdade larvas marrons = sim é 70%, temos que a disjunção das duas sentenças retornará um valor CNF de 0.70 + 0.80 - 0.70 * 0.80 = 1.50 - 0.56 = 0.94 = 94%.
28
Sistema EspecialistaShell SINTA
Caso 4:• Quando deseja-se atualizar o grau de confiança de uma
variável que se encontra na memória de trabalho.
Situação• A variável doença possuía valor mofo preto com grau de
confiança 60%. Após a aplicação de outras regras chegou-se a uma outra atribuição doença = mofo preto, desta vez com CNF 50%.
Cálculo• O cálculo se dá da mesma forma que a regra do OU:
0.60 + 0.50 - 0.60 * 0.50 = 1.10 - 0.30 = 0.80 = 80%.
29
Sistema EspecialistaShell SINTA
Caso 5: • Quando uma variável recebe duas vezes o mesmo valor
em pontos diferentes da consulta.
Cálculo:• Em momentos diferentes de uma consulta, uma mesma variável var
pode receber o mesmo valor v, sendo que até à penúltima instanciação ela possuía grau de confiança c1, e a última atribuiu um CNF c2. Sendo assim, temos que o valor final de confiança para var = v será dado pela fórmula ca + cn - ca * cn, onde ca representa o grau de confiança antes da última mudança e cn o último grau de confiança atribuído.
30
Sistema EspecialistaShell SINTA
Notas• O sistema admite 50% como valor mínimo de confiança
para que uma igualdade seja considerada verdadeira.• Observe que as funções para conjunção e disjunção
utilizadas seguem a Teoria das Possibilidades, não envolvendo nenhum tratamento estatístico mais aprofundado.
• É possível mudar as fórmulas utilizadas.
31
Sistema EspecialistaExercício
Representar através de um grafo as regras da base SECAJU• encadeamento para frente• encadeamento para traz
Exercitar a Shell SINTA usando as regras da base SECAJU
Entrar com as regras para escolher o meio de transporte para ir ao cinema na Shell SINTA