iat001 - Inteligência Artificial

Propaganda
1
INTELIGÊNCIA ARTIFICIAL
2
INTELIGÊNCIA ARTIFICIAL
• Ramo da computação que procura permitir uma máquina
simular “comportamento inteligente”, através de
algoritmos e técnicas que simulem situações consideradas
específicamente humanas, tais como:
→ Compreensão de linguagem natural
→ Reconhecimento de padrões
→ Jogos de estratégia
→ Demonstração automática de teoremas
→ Otimização de sistemas de recuperação
→ Programação automática
→ Robótica
→ Sistemas de consulta especializados
• O que é “comportamento inteligente” ?
→ O conceito de “ser inteligente” é bastante impreciso,
mesmo entre os seres humanos.
3
Comportamento Inteligente .... Aprendizado
Although it is impossible to give succint definitions or
descriptions of intelligence, it is clear that intelligence is
associated with a specialization of knowledge, and that
involves the ability to learn and to adapt to the environment
Aprendizado
Raciocínio
Auto correção (adaptação)
4
Comportamento Inteligente .... Aprendizado
O pássaro...
(1-2)
(3)
(4-5)
(6)
(7-8)
(9)
Ataca e come borboleta de sabor agradável...
Ataca uma de sabor desagradável...
Come apenas parte do espécime...
Reage ao mau gosto da borboleta...
Vomita, bebe água e vomita novamente...
Se recupera... e daí em diante passa a rejeitar exemplares de sabor desagradável
Fonte: Amabis Martho e Mizuguchi, Biologia. volume 3 – Genética, evolução e ecologia – São Paulo,
Ed. Moderna, 1979
5
INTELIGÊNCIA ARTIFICIAL
• Ramo do conhecimento que trata, entre outras coisas, do
projeto e da construção de computadores e robôs
inteligentes.
• Computador inteligente possui qualquer uma das
habilidades mentais que fazem uma pessoa ser considerada
inteligente. Algumas habilidades:
Capacidade de raciocinar e fazer inferências
Capacidade de resolver problemas
Capacidade de acumular e de usar conhecimentos
Capacidade de falar línguas humanas tais como o inglês
e o português
Capacidade de planejar as próprias ações e de prever o
resultado delas
Capacidade de aprender com a experiência
Capacidade de ver, ouvir e interpretar corretamente
símbolos sensoriais
6
INTELIGÊNCIA ARTIFICIAL
IA - Sistemas que agem racionalmente
7
Teste de Turing
Se o operador humano A faz perguntas – de qualquer
natureza - ao operador humano B e ao Computador com
software “inteligente” e, pelo padrão de respostas recebido,
NUNCA sabe quem é o operador humano e quem é a
máquina. Neste caso Turing considera a máquina
“inteligente”
8
Teste de Turing
9
O filósofo John Searle e a Sala Chinesa
(contra-argumento ao Teste de Turing)
Um humano que compreende inglês permanece numa sala isolada.
Este humano não fala/compreende nada de chinês (nem mesmo os ideogramas)
Na sala existe apenas uma “interface de entrada” (input) com o exterior da sala por
onde se passa, em ideogramas chineses, uma história e perguntas sobre a história .
Na sala existe um dispositivo (output) para saída em papel das respostas escritas a
mão pelo humano
Na sala existe um conjunto de instruções (rule ledger), escritas em inglês, sobre os
procedimentos a serem adotados para cada tipo de dados apresentado através da
“interface de entrada” (input)
•
Perguntas:
O humano é inteligente ?
O sistema [ Humano + input + rule ledger + output ] é inteligente ?
O observador externo acredita que o humano sabe chinês... É verdade ou
não ?
10
Dos anos 60 aos 90
• Desde os anos 50, uma grande dose de otimismo original
com IA foi perdida, tendo sido substituída por uma dose de
realismo
• O objetivo do estudo da IA não é mais criar um robô tão
inteligente quanto um humano, mas em vez disso usar
algoritmos, heurísticas e metodologias baseadas nos
modos pelas quais o cérebro humano soluciona problemas
(agir racionalmente !!!!)
11
“componentes” da IA
12
Pesquisa Heurística X Algoritmica
13
Pesquisa Heurística X Algoritmica
Problema: procurar uma vaga perto da universidade
Se você fosse o motorista arriscaria tentar uma vaga melhor
(mais próxima à universidade) ?
14
Definição de PROBLEMA para IA
PROBLEMA em IA ⇒ Uma busca em um espaço de
estados com o objetivo de partir de um estado inicial e se
chegar a um estado-meta (estado final).
• O processo de busca pelo espaço de estados ocorre, de
modo geral, por regras que causam movimentação de uma
“configuração” de espaço de estados para outra
“configuração” de espaço de estados
15
PROBLEMA para IA – Exemplo 1
“Problema” = Jogar Xadrez
• Estruturas de dados:
→ “Configuração inicial” das peças no tabuleiro
→ “Configuração final” das peças no tabuleiro
→ Descrever todas as regras de movimento legal das peças
→ Como descrever cada uma das 10120 possíveis posições
no tabuleiro nas regras ?
→ Problema de Jogar Xadrez: movimentação dentro de um
espaço de estados onde cada estado é uma “configuração”
legal
16
PROBLEMA para IA – Exemplo 2
“Problema” das 8 rainhas
17
PROBLEMA para IA – Exemplo 2
“Problema” das 8 rainhas
18
PROBLEMA para IA – Exemplo 3
“Problema” das jarras de água
Definição: Tem-se duas jarras de água, uma de 4 litros e uma
de 3 litros. Nenhuma delas tem qualquer marcação de
medidas. Há uma torneira que pode ser usada para encher as
jarras com água. Problema: como proceder para encher a
jarra de 4 litros com exatamente 2 litros de água ?
• Estruturas de dados:
→ Par ordenado (x,y) onde x = 0, 1, 2, 3 ou 4 e y = 0, 1, 2
ou 3 representa o espaço de estados do problema
→ “Configuração inicial” : (0,0)
→ “Configuração final” : (2,0)
19
PROBLEMA para IA – Exemplo 3
“Problema” das jarras de água
• Árvore de possibilidades para resolução do problema
20
PROBLEMA para IA – Exemplo 4
• Problema: Quebra-cabeça dos 8
21
PROBLEMA para IA – Exemplo 5
“Problema” do caixeiro viajante
Definição: Um vendedor tem uma lista de clientes que precisa
visitar exatamente uma vez. Há estradas diretas entre cada par
de clientes da lista. Problema: Encontre a rota que o
vendedor deverá seguir para que a viagem seja a menor
possível, e que comece e termine na loja de origem do
vendedor.
Primeira tentativa de solução: Combinatória de possibilidades
de ordem de visitação considerando n clientes.
Por exemplo, tendo-se como ponto de partida a loja S do
vendedor e sendo necessário visitar os clientes A, B, C e
D temos:
n = 4 clientes a serem “combinados” (A, B, C e D)
Pn = n! = 4! = 24 possíveis “combinações”
Rota: S _ _ _ _ S
22
PROBLEMA para IA – Exemplo 5
“Problema” do caixeiro viajante
23
PROBLEMA para IA – Exemplo 5
“Problema” do caixeiro viajante
Supondo que o tempo gasto para geração e cálculo do custo
de cada rota numa máquina hipotética seja da ordem de 1
µs (10-6 segundos). Assim, considerando-se n clientes a
visitar temos:
Esse tempo envolve a execução das instruções de controle
do programa, de acesso aos dados, cálculo das distâncias,
comparações, chamadas a subrotinas, etc.
24
IA – Técnicas de busca
Em princípio, as técnicas de busca da solução para
PROBLEMA em IA envolvem a navegação pelos ramos
das árvores de possibilidade até que se encontre a solução
Mas, se a árvore de possibilidades for “grande”, a busca da
solução ótima pode se tornar inviável computacionalmente
falando... Usam-se então técnicas heurísticas onde a
solução é obtida em tempo computacional aceitável e cuja
solução – espera-se – seja “próxima” da solução ótima.
25
IA – Técnicas de busca
• Podemos dizer, de modo geral, que as técnicas de busca
para a solução de problemas em IA são análogas à situação
acima onde Johnnie Walker tem que procurar o vale mais
profundo.
• As técnicas de IA (heurísticas) na maioria das vezes
acharão soluções de mínimo local que, contudo são
“próximas” da solução ótima do problema
26
IA – Técnicas de busca
• Quais os ramos “corretos” a serem percorridos para se
chegar ao resultado “ótimo” ?
• Se forem muitos ramos, somente usando alguma heurística
é que se achará uma solução “próxima da solução ótima”.
27
IA – Técnicas de busca
28
IA – Representação de conhecimento
Usando lógica matemática
• Lógica proposicional
Conectivos: E - ∧ OU - ∨ NÃO - ¬
Se...Então... - → Se e somente se ↔
Exemplos: p = João é médico q = João é estudioso
p ∧ q, p ∨ q, p → q, p ↔ q, ¬q
• Lógica de predicados (1a ordem)
Conectivos: ∧ , ∨ , ¬ , → , ↔
Quantificadores: ∀ - “Para todo”
∃ - “Existe ao menos um”
Exemplo: Predicados
H - (...) ser humano
V - (...) ser vegetal
Objeto:
∀x(Hx → Mx)
Hs
∀x∀y (Hx ∧ Vy→ Gxy)
Hs → ∃xMx
M - (...) ser mortal
G - (...) gosta de (...)
s – Sócrates
“Todo humano é mortal”
“Sócrates é humano”
“Todo humano gosta de vegetal”
“Se Sócrates é humano, então
existe ao menos um objeto que é
mortal”
29
30
IA – Representação de conhecimento
Usando lógica matemática
31
IA – Representação de conhecimento
Usando regras de produção
• Regras de produção ⇒ Representam relações AtributoValor (A-V) ou Objeto-Atributo-Valor (O-A-V)
32
IA – Representação de conhecimento
Usando redes semânticas
• Estrutura de GRAFO ⇒ NÓS e ARCOS
• Tríade Objeto-Atributo-Valor (O-A-V)
Ex.: “Todo carro é um veículo”
“Todo carro tem rodas, e um veículo é um meio de
transporte”
33
IA – Representação de conhecimento
Usando redes semânticas
34
IA – Representação de conhecimento
Usando redes semânticas
35
IA – Técnicas de busca
/*--------------------- */
/* Base de Conhecimento */
/*----------------------*/
clauses
/*--> Fatos <--*/
cachorro(pluto).
gato(tom).
humano(socrates).
humano(mane).
vegetal(abacateiro).
vegetal(limoeiro).
vegetal(mamoeiro).
/*--> Regras <--*/
mortal(X) :- mamifero(X).
mortal(X) :- faz_fotossintese(X).
mamifero(X) :- humano(X).
mamifero(X) :- cachorro(X).
mamifero(X) :- gato(X).
faz_fotossintese(X) :- vegetal(X).
tem_raiz(X) :- vegetal(X).
→
Consulta : “o mamoeiro é mortal ?” mortal(mamoeiro)
36
IA – Técnicas de busca
Heurística é qualquer método ou técnica criada, ou
desenvolvida, para resolver um determinado tipo de
problema.
Meta-Heurísticas são consideradas heurísticas de uso geral
ou uma heurística das heurísticas.
Os métodos utilizados para resolver problemas de
otimização combinatória (excluindo os algoritmos
exponenciais) podem ser assim classificados:
Heurísticas: (a) Míopes ou gulosas, (b) Locais e (c)
Partição ou agrupamento
Métodos enumerativos: não exaustivos, do tipo “Branchand-Bound” e Programação Dinâmica
Métodos de Programação Linear e Não-Linear:
Simplex, Pontos Interiores, Algoritmo dos Elipsóides,
etc.
Métodos Estocásticos: Simulated Annealing, Tabu
Search, etc
Métodos Analógicos: Redes Neurais e Algoritmos
Genéticos.
37
IA e Agentes Inteligentes
38
IA e Agentes Inteligentes
39
IA e Agentes Inteligentes
40
IA e Agentes Inteligentes
41
Exemplos de Agentes Inteligentes
42
IA e Mineração de dados (data mining)
(Revista Byte – Outubro/1995 –págs. 96-110)
• Há ouro em seus dados, mas você não consegue vê-lo.
Pode ser uma percepção tão simples (e tão lucrativa)
quanto se dar conta de que compradores de comida para
bebês são também compradores de fraldas.
• A mineração de dados (data mining) deixa que o poder dos
computadores faça o trabalho de joeirar as imensas
quantidades de dados armazenados. Uma busca incansável
e persistente pode encontrar a minúscula pepita de ouro em
uma montanha de entulho de dados.
• Imagine agentes inteligentes à solta sobre dados de
pesquisas médicas ou informações sobre partículas
subatômicas. Os computadores podem revelar novos
tratamentos para doenças ou novas visões sobre a natureza
do universo.
43
IA e Mineração de dados (data mining)
44
IA e Mineração de dados (data mining)
45
IA e Mineração de dados (data mining)
46
IA e Mineração de dados (data mining)
47
IA e Mineração de dados (data mining)
48
IA e Mineração de dados (data mining)
Download