You are on page 1of 20

Inteligncia Artificial

Disciplina CC9910
Professor: Carlos Eduardo Thomaz

e-mail: cet@fei.edu.br
http://www.fei.edu.br/~cet

Material de Aula: Moodle (slides = resumo) + livro(s)

Inteligncia Artificial

Disciplina CC9910
Ementa: Disponvel no moodle.

Critrio de Avaliao:
CC9910 Engenharia Eltrica
Mdia = (P1+P2)/2

A P1 e a P2 valem 10.0 pontos cada uma.

1
Inteligncia Artificial

Bibliografia

Livro Texto:
Russell Stuart J.; Norvig, Peter. Inteligncia Artificial. Traduo da
2a. edio. Editora Campus, 2004.
Complementar:
Rezende, Solange O. Sistemas inteligentes : fundamentos e
aplicaes . Barueri, Editora Manole, 2003.
Rich, Elaine; Knight, Kevin. Inteligncia Artificial. So Paulo,
Makron Books, Segunda Edio, 1994.
von Wangenheim, Christiane G.; von Wangenheim, Aldo
Raciocnio baseado em casos. Barueri, Editora Manole, 2003.
Araribia, G. Inteligncia Artificial - um curso prtico. So Paulo,
LTC, 1989.
Apt, K., From Logic Programming to Prolog. Prentice Hall, 1997..

Inteligncia Artificial

Inteligncia Artificial

O que Inteligncia?
A palavra intellegentia est relacionada com o verbo intellegere, formado de
inter (prefixo que quer dizer entre) e legere (verbo que significa juntar,
reunir, mas tambm colher, escolher). Portanto, inter-legere quer dizer
escolher entre, ou seja, entre vrias opes escolher uma delas. Assim,
inteligente aquele que sabe escolher, discernir, colher o conhecimento.

A INTELIGNCIA a capacidade de escolha, de


discernimento, de colher o saber, o
conhecimento.

2
Inteligncia Artificial

Inteligncia Artificial

O que Inteligncia Artificial ?

Inteligncia Artificial

Inteligncia Artificial
O que Inteligncia Artificial ?
Tcnicas computacionais que simulam a
inteligncia ?!?!? Muito vago !

Mas o que Inteligncia ?


Uma ameba inteligente ? Por qu ?
Um virus inteligente ? Por qu ?
Um rato inteligente ? Por qu ?
Um cachorro inteligente ? Por qu ?
O homem inteligente ? Por qu ?

3
Inteligncia Artificial

Definio de Inteligncia
Caractersticas da Inteligncia Humana
Envolve: conhecimento; raciocnio; pensamento; idias; etc.
Capacidade de resolver problemas
Capacidade de compreender uma situao
Capacidade de aprender coisas novas
Capacidade de atingir objetivos
Capacidade de Criao

No temos uma definio geral e


completa para o que seja inteligncia.
De onde ento surgiu o termo I.A. ?

Inteligncia Artificial

Origem da Inteligncia Artificial


O termo Artificial Intelligence foi cunhado por John McCarthy em
1956 durante o seminrio de Darthmouth (Intelectuais e
pesquisadores do MIT, CMU, Stanford e IBM)
Pensaram no nome de Racionalidade Computacional, mas o que
pegou mesmo foi I.A. !!!!!

4
Inteligncia Artificial

Definio de IA
Assim, vejamos algumas definies de IA:
IA a parte da cincia da computao que se preocupa em
desenvolver sistemas computacionais inteligentes, i.e.,
sistemas que exibem caractersticas, as quais ns associamos
com a inteligncia no comportamento humano - e.g.
compreenso da linguagem, aprendizado, raciocnio,
resoluo de problemas, etc." A Barr; E.A Feigenbaum (1981).

IA o estudo de idias que permitem os computadores


serem inteligentes Winston (1984).

IA o estudo de faculdades mentais atravs do uso de


modelos computacionais Charniak; McDermott (1987)

Inteligncia Artificial

Definio de IA
... mais algumas definies de IA:
"A inteligncia artificial (IA) simplesmente uma maneira de
fazer o computador pensar inteligentemente." Levine (1988).

"A arte de criar mquinas que executam funes que


requerem inteligncia quando executadas por pessoas."
Kurzweil (1990).

IA o estudo de como fazer os computadores realizarem


coisas que, no momento, as pessoas fazem melhor. E. Rich, K.
Knight (1993)

IA a coleo de problemas e metodologias estudadas pelos


pesquisadores de IA G.F. Luger; W.A Stubblefield, 1993.

5
Inteligncia Artificial

Definies de IA
... As definies so influenciadas:
Neurocincia (cerbro artificial)
Como o crebro processa informaes ?
Lgica Matemtica
O que pode ser computado ? Como representar e inferir
conhecimento ?
Filosofia
De onde vem o conhecimento ? Como criar regras formais para o
conhecimento ?
Psicologia
Como os seres humanos e os animais pensam e agem ?
Lingustica
Como a linguagem se relaciona ao pensamento ?
... Ou seja: QUALQUER CINCIA QUE TRABALHA, um pouco
que seja, COM A PALAVRA INTELIGNCIA

Inteligncia Artificial

Uma possivel definio de IA


Objetivo: desenvolver sistemas algortmicos capazes de
solucionar problemas que os humanos conseguem
resolver com baixa complexidade computacional

Definio incompleta...

Como seria uma definio completa de IA ?


Provavelmente um texto enorme considerando todas as
possibilidades e um etc... no final para incluir as coisas
novas que surgem a cada dia
(Prof. Flavio Tonidandel)

6
Inteligncia Artificial

Conhecimento
Mas como implementar um sistema de IA ?
Usando CONHECIMENTO

O que o Conhecimento ?
Informao formatada de maneira a permitir raciocnio
por um ser humano ou por uma mquina. So criadas a
partir de ontologias do mundo.

O que so Ontologias ?
o estudo das categorias das coisas que existem ou
podem existir em um certo domnio. Por categoria
entende-se: tipo, conceito, relao entre tipos, etc.. (John
F. Sowa Guided Tour of Ontology)

Inteligncia Artificial

Ainda no entendi o que so Ontologias...


Em Filosofia:
estudo do que existe no mundo

Em IA:
Categorias, Medidas, Objetos compostos, Tempo,
espao, mudanas, Eventos, Processos, Objetos
fsicos, Substncias, Crenas, etc...

Ontologias Genricas (Gerais)


usadas para representar grandes conjuntos de objetos e relaes
representam senso comum - conhecimento enciclopdico
codificadas dentro de algum formalismo

7
Inteligncia Artificial

Conhecimento
Como representar o conhecimento ?
Ns representamos conhecimento atravs da fala e da escrita.
Como podemos transferir esse conhecimento para um sistema inteligente
(computador, rob, etc) ?

EXEMPLO:
Como fazer o computador entender:
Todo homem que nasce em roma um romano
Todo mundo tem sua alma gema

A representao do conhecimento est em diversas reas da


computao:
Engenharia de Software (UML)
Banco de Dados (organizao das tabelas)

Inteligncia Artificial

Conhecimento
Podemos definir uma representao....
Sintaxe (modo de escrita ou notacao)
nasceu(X,Y)

Semntica (significado)
nasceu(X,Y) significa que X, uma pessoa, nasceu em Y,
uma cidade

A representao do exemplo acima est na forma


de predicado, usado em linguagens lgicas. Mas
existem outros tipos de representaes de
conhecimento

8
Inteligncia Artificial

Representaes de Conhecimento
Como representar o conhecimento ?
Frames
Regras de Produo
Tabelas Relacionais (Banco de Dados)
Lgica

Existem sistemas e tcnicas de aquisio automtica de


conhecimento que trabalham com diversas representaes
de conhecimento. Alm de ferramentas que auxiliam na
representao, verificando inconsistncias e desempenho.
EXEMPLOS:
KEE, ART, Babylon, Flex, entre outros
Capitulos 2 e 3 do livro Sistemas Inteligentes, Solange Rezende

Inteligncia Artificial

Frames

CONHECIMENTO HERDVEL:
(rede semntica) tem_parte
Pessoa
Nariz

_um
cor_uniforme
time
Azul Jogador de Barcelona
Futebol

Possveis mecanismos de inferncia:


Herana de atributos

9
Inteligncia Artificial

Regras de Produo

CONHECIMENTO PROCEDIMENTAL

Regra Segura-o-Jogo
Se: segundo tempo de jogo
Fez 1 gol
Adversrio fez 0 gols

Ento: recua time

O conhecimento procedimental pode ser representado por programas.


Mecanismo direto de inferncia

Inteligncia Artificial

Tabelas Relacionais

CONHECIMENTO RELACIONAL SIMPLES:

Tabela de um banco de dados


Atleta Altura Peso Esporte
Romrio 1,30 m 60 Kg Futebol
C.Cielo 2,00 m 50 Kg Natao
Ronaldo 1,80 m 200 Kg Futebol
Felipe Massa 1,00 m 30 Kg Automob.

Possveis mecanismos de inferncia:


Atleta mais pesado Ronaldo
Atleta mais baixinho Felipe Massa

10
Inteligncia Artificial

Lgica
CONHECIMENTO INFERENCIAL

Usa-se alguma teoria lgica. Ex. a Lgica de Predicados

x: atleta(x) pessoa(x)
x: rei(x) filho(y,x) prncipe(y)

Possveis mecanismos de inferncia:


Regras de inferncia
Ex: Modus Ponens

Inteligncia Artificial

Lgica de Primeira Ordem


OPERADORES:
: implicao matemtica
: E (AND) lgico
: OU (OR) lgico
: negao (NOT)
: para todos
: existe

Valores verdades das frmulas bsicas


P Q P PQ PQ PQ
F F T F F T
F T T T F T
T F F T F F
T T F T T T

11
Inteligncia Artificial

Lgica de Primeira Ordem (LPO)


.Marcos era um homem
Homem(Marcos)

.Marcos nasceu em pompia


Pompeano(Marcos)

.Todos que nasceram em Pompia eram romanos


x: Pompeano(x) Romano(x)

.Csar era um soberano


Soberano(Csar)

.Todos os romanos eram leais a Csar ou odiavam-no


x: Romano(x) leal(x,Csar) odeia(x,Csar)

.Todo mundo leal a algum


x y : leal(x,y)

Inteligncia Artificial

Regras de Inferncia - LPO

Modus Ponens: , / diz que a sentena


pode ser derivada de
E-eliminao: 1 2 ... n por inferncia.
i
Eliminao de dupla negao:

Resoluo unidade: ,

sempre que algum fato na BC casar com o padro acima da linha, a regra
de inferncia conclui o padro abaixo da linha.
uma regra de inferncia sound (preserva a verdade) se a concluso
verdade em todos os casos onde as premissas so verdadeiras

12
Inteligncia Artificial

Extrao e Aprendizagem de Conhecimento

Deduo (Modus Ponens) ,



Ex: Pompeano(Marcos) Romano(Marcos), Pompeano(Marcos)
Romano(Marcos)
Em uma prova de Teorema:
Pompeano(Marcos)
Pompeano(Marcos) Romano(Marcos)
Romano (Marcos) aplicando Modus Ponens em 1 e 2

RESOLUO: regra generalizada da MODUS PONENS


Usa unificao ;
Combina muitas inferncias em uma s (aceita operadores E);
Usada no PROLOG
x: Pompeano(x) Romano(x) Pompeano(Marcos)

Romano(Marcos) x/Marcos

Inteligncia Artificial

Extrao e Aprendizagem de Conhecimento


Abduo ,

EX:
x: bebdo(x) anda_torto(x), anda_torto(joo)
bebdo(joo).

A abduo nos leva a uma inferncia plausvel.


Mas pode levar a erros:
Joo poderia estar doente ao invs de bebdo.
A abduo no gera uma concluso, como a deduo, mas sim uma
hiptese !
Abduo permite encontrar mais de uma resposta.
Para decidir por apenas uma hiptese, deve-se procurar
heursticas mais provveis
Ex de aplicao: Diagnstico Mdico.

13
Inteligncia Artificial

Extrao e Aprendizagem de Conhecimento


Induo
Inicialmente quantidade grande de observaes
Examinando as observaes descobre-se regras para prever o
comportamento de um certo fenmeno.
EX:
Chevette a mais de 200 Km/h capota na imigrantes
Fusca a mais de 200 Km/h capota na imigrantes
Gurgel BR 800 a mais de 200 Km/h capota na imigrantes
...
por induo: qualquer carro a mais de 200 Km/h capota na imigrantes

Se o nmero de observaes for insuficientes ou os dados relevantes forem


mal escolhidos, o mtodo leva a concluses erradas.
Uma amostragem de exemplos ampla e representativa elimina, ou diminui
muito, a chance de erro na concluso.

Inteligncia Artificial

Algumas Linguagens Lgicas existentes

LinguagemLgica O que permite descrever do mundo


Lgica proposicional(LPO) Fatos e relaes existentes
Lgica Temporal Fatos, relaes e tempo
Lgica de Transaes Fatos Relaes e Trasies de estados
Clculo de Eventos Fatos, Relaes, Eventos e Estados
Lgica Fuzzy Nveis de verdade (crena)

Todas com seus teoremas, axiomas e regras de inferncia


Desenvolvidas ao longo da Histria de IA ...

14
Inteligncia Artificial

Histrico da Inteligncia Artificial


(1943) - Primeiro Trabalho em IA - Modelo de Neurnios Artificiais
(McCulloch e Pitts)
(Inicio anos 50) - Mquina de Turing - Precursor do computador moderno
(1951) - Minsky e Edmonds- Primeiro computador baseado em Redes
Neurais
(1956) - Workshop em Dartmouth: Pesquisadores de Princeton, IBM, MIT e
CMU, a convite de John McCarthy, criaram o nome Inteligncia Artificial
(Dcada 50) - Newell e Simon desenvolveram o General Problem Solver
(GPS)
(1958) - John McCarthy desenvolveu o LISP
(1963) - Robinson descobriu o mtodo da resoluo: prova de teoremas
automtico: permitiu o surgimento do PROLOG posteriormente
(Dcada 60) - Primeiras barreiras para IA:
Intratabilidade dos problemas de IA (muitos NP-completos)
Pouco ou nenhum conhecimento do domnio

Inteligncia Artificial

Histrico da Inteligncia Artificial


(1965) - Zadeh introduz o uso de Lgica Fuzzy no Controle Moderno
(1969) - programa Dendral - inferia estrutura molecular a partir de um
espectrmetro de massa - primeiro sistema a usar conhecimento intensivo
(1969) Minsky and Papert ( MIT ) publicam um livro que pe em dvida a
capacidade de aprendizado dos perceptrons.
(Dcada de 60 e 70) - Aumento das pesquisas por esquemas e formalismos
lgicos para representao de conhecimento
(1972) - Redes Neurais auto-organizveis ( Kohonen )
(Dcada de 70) - Surgem sistemas especialistas, sistemas de planejamento
(clssico), sistemas de viso e aprendizado.
(Dcada de 80) - Primeiro sistema especialista de sucesso comercial - R1 -
ajudou a DEC a configurar ordens para novos computadores
(1981) - Japoneses anunciam a Quinta Gerao - computadores inteligentes
que rodavam Prolog
(Dcada de 80) - separao das sub-reas de IA - Pesquisa mais concentrada

15
Inteligncia Artificial

Histrico da Inteligncia Artificial


(1986) - Surgimento do algoritmo de retro-propagao ( Rumelhart &
McClelland ) - Novo flego para as Redes Neurais
(1987) - Redes Neurais de Hopfield
(Dcada de 90 at hoje) - Avanos em todas as reas de IA
Entusiasmo retomado
Pesquisas bem especficas em rea
Novas e eficientes tcnicas em quase todas as reas
Robtica avanada
Integrao de Sistemas Inteligentes

EXEMPLOS:
AIBO - Rob-cachorro interativo da SONY
QRIO - Rob humano interativo da SONY
Futebol de Robs (envolve diversas reas de IA)
etc....

Inteligncia Artificial

Paradigmas da Inteligncia Artificial


Simblico: metfora lingstica
ex. sistemas de produo, agentes,planejamento, aprendizado

Conexionista: metfora cerebral


ex. redes neurais e aprendizagem por reforo

Evolucionista: metfora da natureza


ex. algoritmos genticos, vida artificial e inteligncia coletiva

Estatstico/Probabilstico: metfora da incerteza


Ex. Redes Bayesianas e sistemas difusos (fuzzy)

16
Inteligncia Artificial

Controvrsias sobre IA
Sistemas Inteligentes: Sistemas que utilizam algum ou
alguns paradigmas de Inteligncia Artificial
Sistemas Baseados em Conhecimento: sistemas
inteligente que usam intensivamente conhecimento
Inteligncia Computacional: Engloba os paradigmas
conexionista, Evolucionista e Probabilistico
Sistemas Inteligentes Hibridos: Sistemas que usam dois
ou mais paradigmas em sua constituio

No h consenso sobre as definies


acima entre os pesquisadores de IA

Inteligncia Artificial

Aplicaes de IA
Matemtica: demonstrao de teoremas, resoluo simblica
de equaes, geometria, etc.
Pesquisa operacional: otimizao e busca heurstica em geral
Jogos: xadrez, damas, etc.
Processamento de linguagem natural: traduo automtica, verif.
ortogrficos e sintticos, interfaces para BDs, etc.
Sistemas tutores: modelagem do aluno, estratgias
pedaggicas, etc.
Percepo: viso, tato, audio, olfato, paladar...
Robtica (software e hardware): manipulao, navegao,
monitoramento, etc

Aplicaes especficas sero apresentadas nas


aulas especficas das sub-reas de IA

17
Inteligncia Artificial

Sub-reas de IA
Inteligncia Artificial Simblica
Representao do Conhecimento
Raciocnio Lgico
Planejamento
Aprendizado indutivo 1a. Parte do Curso
Data Mining * - Tpicos Avanados
Raciocnio Baseado em Casos
Sistemas Multi-Agentes
Linguagem Natural*
Satisfao de Restries*
outros

Inteligncia Artificial

Sub-reas de IA
Inteligncia Computacional
Redes Neurais
Lgica Fuzzy
Aprendizado por Reforo
Inteligncia Coletiva 2a. Parte do Curso
Algoritmos Evolutivos * - Tpicos Avanados
Viso Computacional
Sistemas Hibridos*
outros

18
Inteligncia Artificial

CAPTCHA: Completely Automated Public Turing test to tell Computers and Humans Apart
Play with it via the Visual Turing Test: www.newscientist.com/article/visual-turing-test/

Inteligncia Artificial

19
Inteligncia Artificial

Bibliografia desta Aula


Para aprofundamento nos assuntos desta aula, segue a
seguinte referncia bibliogrfica

Rich, E. (Inteligncia Artificial)


Captulos 1, 4, 5, 6 e 9
Russel & Norvig (Artificial Intelligence)
Captulos 1, 6, 7, 8, 9 e 10
Rezende, Solange (Sistemas Inteligentes)
Captulos 1 , 2 e 3

Alguns slides desta aula foram baseados nos slides: Paulo Eduardo Santos:
Fundamentos da Inteligncia Artificial, FEI, 2005

20