Introdução
Introdução
Inteligência Computacional
Estrutura da Apresentação
Estrutura da Apresentação
InícioInteligência
Artificial...
O que se estuda!
Como foi estudado...
(Sistemas Especialistas)
Estrutura da Apresentação
Estrutura da Apresentação
Inteligência Computacional
Algoritmos Genéticos
Redes Neurais
Lógica Fuzzy
Inteligência Artificial x Computacional
Inteligência Artificial x Computacional
•
Inteligência...
•
Inteligência
Artificial
– -
Símbolos, Lógica Clássica, Conhecimento
• (
Sistemas Especialistas
)
– - O que se faz em IA!(
Problemas da IA
)
– -Histórico
(como chegamos até aqui...)
•
Inteligência Computacional
– Redes Neurais
– Algoritmos Genéticos
Conceitos Básicos
Conceitos Básicos
A INTELIGÊNCIA É SÓ HUMANA?
A INTELIGÊNCIA É SÓ HUMANA?
Em um primeiro momento, a inteligência era geralmente associada a
Em um primeiro momento, a inteligência era geralmente associada a
uma característica unicamente humana, de representação de
uma característica unicamente humana, de representação de
conhecimentos e resolução de problemas, refletindo um ponto de
conhecimentos e resolução de problemas, refletindo um ponto de
vista altamente antropocêntrica. Mas, ainda assim, nós, humanos,
vista altamente antropocêntrica. Mas, ainda assim, nós, humanos,
não compreendemos a nós mesmos, como funciona nossa
não compreendemos a nós mesmos, como funciona nossa
“inteligência” e nem mesmo a origem de nossos pensamentos.
“inteligência” e nem mesmo a origem de nossos pensamentos.
Hoje em dia, para muitos pesquisadores, a idéia de inteligência
Hoje em dia, para muitos pesquisadores, a idéia de inteligência
passou a ser associada com a idéia de sobrevivência.
passou a ser associada com a idéia de sobrevivência.
Fogel
Fogel: “Inteligência pode ser definida como a capacidade de um : “Inteligência pode ser definida como a capacidade de um sistema de adaptar seu comportamento para atingir seus objetivos
sistema de adaptar seu comportamento para atingir seus objetivos
em uma variedade de ambientes”.
Inteligência - Conceitos Básicos
Inteligência - Conceitos Básicos
“
“I propose to consider the question, ‘Can machines think?’ I propose to consider the question, ‘Can machines think?’ This should begin with definitions of the meaning of the terms
This should begin with definitions of the meaning of the terms
‘machine’ and ‘think’.”
‘machine’ and ‘think’.” A. TuringA. Turing, Computing Machinery , Computing Machinery and Intelligence, 1950
and Intelligence, 1950
“
“Se queres discutir comigo, define primeiro teus termos.” Se queres discutir comigo, define primeiro teus termos.”
Descartes Descartes
O QUE É INTELIGÊNCIA?
O QUE É INTELIGÊNCIA?
Helm
Helm: “A atividade inteligente consiste na compreensão do : “A atividade inteligente consiste na compreensão do essencial de uma situação e numa resposta reflexa
essencial de uma situação e numa resposta reflexa
apropriada”.
apropriada”.
Piaget
Inteligência Artificial
Inteligência Artificial
Área de Pesquisa Multidisciplinar:
Biologia
Computação
Engenharia
- Estuda maneiras de simular/obter comportamento
inteligente!
- Fazer as máquinas realizarem tarefas que requerem
inteligência!
PROBLEMAS DE PESQUISA EM IA
PROBLEMAS DE PESQUISA EM IA
• Resolução de problemas (planejamento)Resolução de problemas (planejamento)• Quebra-cabeças, Jogos,Quebra-cabeças, Jogos,
• Problemas que requerem conhecimento especialistaProblemas que requerem conhecimento especialista
• Raciocínio por senso-comumRaciocínio por senso-comum
• Percepção (visão e fala)Percepção (visão e fala)
- reconhecimento de imagens, de voz reconhecimento de imagens, de voz
• Processamento de linguagem naturalProcessamento de linguagem natural
• Extração de conhecimento(Knowledge Data Discovery,Aprendizado)Extração de conhecimento(Knowledge Data Discovery,Aprendizado)
• Desenvolver sistemas que auxiliem no aprendizado de alunosDesenvolver sistemas que auxiliem no aprendizado de alunos
• Paralelização de linguagens de IAParalelização de linguagens de IA
• Distribuição da resolução de problemasDistribuição da resolução de problemas
Áreas de Pesquisa em IA
Áreas de Pesquisa em IA
> Intelligent Information Systems > Intelligent Software Engineering > Intelligent Agents
> Intelligent Networks > Intelligent Databases
> Brain Models(Neural Networks) > Evolutionary Algorithms
> Data mining
> Machine Learning > Reasoning Strategies
> Automated Problem Solving
> Distributed AI Algorithms and Techniques > Distributed AI Systems and Architectures > Expert Systems > Fuzzy Logic > Genetic Algorithms > Heuristic Searching > Knowledge Acquisition > Knowledge Discovery > Knowledge Representation
> Knowledge-Intensive Problem Solving Techniques > Languages and Programming Techniques for AI > Software Tools for AI
> Integration of AI with other Technologies > Evaluation of AI Tools
> Social Impact of AI
> Applications - Computer Vision > Applications - Signal Processing > Applications - Military
> Applications - Surveillance > Applications - Robotics > Applications - Medicine
> Applications - Pattern Recognition > Applications - Face Recognition
> Applications - Finger Print Recognition > Applications - Finance and Marketing > Applications - Stock Market
Histórico
Histórico
•
•Formalmente a área foi criada em 1956 quando o nome foi cunhado Formalmente a área foi criada em 1956 quando o nome foi cunhado
(Darthmouth College).
(Darthmouth College).
•
• Entretanto, por 2000 anos filósofos estudaram como o ver, apreender, Entretanto, por 2000 anos filósofos estudaram como o ver, apreender, recordar e raciocinar pode ser realizado?
recordar e raciocinar pode ser realizado?
•
• O desejo de criar artefatos capazes de reproduzir um comportamento O desejo de criar artefatos capazes de reproduzir um comportamento inteligente encontra suas origens em tempos remotos:
inteligente encontra suas origens em tempos remotos:
- Autômatos (relógios, jogador de xadrez, Frankenstein)
- Autômatos (relógios, jogador de xadrez, Frankenstein)
- Analytical Engine, Babbage, 1842 - “Ela seria capaz de
- Analytical Engine, Babbage, 1842 - “Ela seria capaz de
compor peças musicais de qualquer grau de complexidade e
compor peças musicais de qualquer grau de complexidade e
extens
extensãão” (comentário de Lady Lovelace)o” (comentário de Lady Lovelace) Precursores da IA
Precursores da IA
• George Boole, inventou a álgebra booleana, Suas idéias se incorporam George Boole, inventou a álgebra booleana, Suas idéias se incorporam como base da matemática e da filosofia.
como base da matemática e da filosofia.
• Alan Turing, propôs um teste para decidir se um computador exibe Alan Turing, propôs um teste para decidir se um computador exibe inteligência.
Histórico
Histórico
•
• Época Pré-históricaÉpoca Pré-histórica (até 1875, Camillo Golgi visualizou o neurônio) (até 1875, Camillo Golgi visualizou o neurônio)
•ObjetivoObjetivo: criar mecanismos apresentando comportamento inteligente.: criar mecanismos apresentando comportamento inteligente.
•MetodologiaMetodologia: Mecanismos usando mecânica de precisão.: Mecanismos usando mecânica de precisão.
•LimitaçõesLimitações: Complexidade, dificuldades de construção.: Complexidade, dificuldades de construção.
•Época AntigaÉpoca Antiga (1875-1943) (McCulloch & Pitts) (1875-1943) (McCulloch & Pitts)
• ObjetivoObjetivo: Entender a Inteligência Humana.: Entender a Inteligência Humana.
• MetodologiaMetodologia: Estudos de psicologia e neurofisiologia.: Estudos de psicologia e neurofisiologia.
•LimitaLimitaçõçõeses: Grandes distâncias entre a psicologia e a neurofisiologia.: Grandes distâncias entre a psicologia e a neurofisiologia.
•Época Pré-Clássica Época Pré-Clássica (1943-1956)(1943-1956)
•ObjetivoObjetivo: Simular a : Simular a inteligência inteligência humana - situações pré-determinadas.humana - situações pré-determinadas.
•MetodologiaMetodologia: Inspiração na Natureza, Nascimento da Cibernética: Inspiração na Natureza, Nascimento da Cibernética
Histórico
Histórico
•Época Clássica Época Clássica (1956-1970)(1956-1970)
•Objetivo: Simular a inteligência Humana e expandir ao máximo as aplicações Objetivo: Simular a inteligência Humana e expandir ao máximo as aplicações
da IA.
da IA.
•Metodologia: Solucionadores gerais de problemas e lógica.Metodologia: Solucionadores gerais de problemas e lógica.
•LimitaçõesLimitações: Subestima: Subestimaçãção da complexidade computacional dos problemas.o da complexidade computacional dos problemas.
•Época RomânticaÉpoca Romântica (1970-1980) (1970-1980)
•Objetivo: Simular a inteligência humana em situações pré-determinadas.Objetivo: Simular a inteligência humana em situações pré-determinadas. •Metodologia: formalismos de representação de conhecimento Metodologia: formalismos de representação de conhecimento
adaptados ao tipo de problema, mecanismos de ligação procedural
adaptados ao tipo de problema, mecanismos de ligação procedural
visando maior eficiência computacional.
visando maior eficiência computacional.
•LimitaLimitaççõesões: Subestimação da quantidade de conhecimento necessária para : Subestimação da quantidade de conhecimento necessária para tratar mesmo o mais banal problema de senso comum.
Histórico
Histórico
• Época ModernaÉpoca Moderna (1980-1990) (1980-1990)•Objetivo: Simular o comportamento de um especialista humano ao Objetivo: Simular o comportamento de um especialista humano ao
resolver problemas em um domínio específico.
resolver problemas em um domínio específico. •Metodologia: Sistemas de regras, representação da incerteza, Metodologia: Sistemas de regras, representação da incerteza,
popularização do Prolog.
popularização do Prolog.
•LimitaçLimitaçõesões: Subestimação da complexidade do problema de aquisição : Subestimação da complexidade do problema de aquisição do conhecimento.
do conhecimento.
•
• Época AtualÉpoca Atual(Pós-Moderna? Contemporânea?) (1990-????)(Pós-Moderna? Contemporânea?) (1990-????) •
•Objetivo: Resolver problemas cada vez mais difíceis!Objetivo: Resolver problemas cada vez mais difíceis!
•Metodologia: Qualquer que funcione!(Metodologia: Qualquer que funcione!(Inteligência ComputacionalInteligência Computacional, , proveniente do simples fato que máquinas de inspiração
proveniente do simples fato que máquinas de inspiração
biológica resolvem problemas difíceis!)
biológica resolvem problemas difíceis!)
Inteligência Computacional
Inteligência Computacional
–
O que é “Inteligência Computacional”?
–
Áreas de Aplicação
–
Lógica Nebulosa (Fuzzy)
–
Redes Neurais
–
Algoritmos Genéticos
–
Conclusões
O que é Inteligência Computacional?
O que é Inteligência Computacional?
“Técnicas e sistemas computacionais que
imitam aspectos humanos, tais como:
percepção, raciocínio, aprendizado,
Inspiração na Natureza
Inspiração na Natureza
Sistemas Especialistas -
inferência humana
Lógica Fuzzy
-
processamento lingüístico
Redes Neurais
-
neurônios biológicos
Algoritmos Genéticos -
evolu
ção biológica
Sistemas Híbridos -
aspectos combinados
Novos Sistemas Computacionais
Novos Sistemas Computacionais
Suporte à Decisão
Classificação de Dados
Reconhecimento de Padrões
Previsão
Otimização
Controle
Modelagem
Planejamento
Descoberta de Conhecimento
Automação Inteligente I
Automação Inteligente I
Planejamento da Produção
Monitoração do Controle
Detecção e Diagnóstico de Falhas
Manutenção Preventiva
Simulação e Modelagem de Processos
Robótica
Reconhecimento de Imagens, Voz
Automação Inteligente II
Automação Inteligente II
Planejamento da Produção: Algoritmo Genético busca a
ordem das tarefas que otimiza a produção (tempo, recursos,
custos, etc) e satisfaz as restrições
Detecção e Diagnóstico de Falhas: Redes Neurais são
treinadas com dados históricos para prever antecipadamente
falhas em equipamentos; Sistema Especialista ou Lógica
Nebulosa dá o diagnóstico e indica procedimentos.
Manutenção Preditiva: Redes Neurais são treinadas com a
leitura dos sensores para apontar a perspectiva de falhas em
programas de manutenção preventiva.
Robótica: Navegação de Robôs móveis por Redes Neurais,
Automação Inteligente III
Automação Inteligente III
Simulação e Modelagem de Processos: Rede Neural é
treinada para representar a dependência entre o estado e
uma medida de qualidade de um processo. Após treinada, a
RN atua como um modelo do processo industrial.
Reconhecimento de Imagens, Voz: Redes Neurais treinadas
com padrões de imagens/voz são usadas para fins de
segurança, seleção e identificação.
Inferência/Predição de Propriedades: Redes Neurais são
treinadas para modelar a relação entre as variáveis de
entrada de um processo e as propriedades físicas de um
produto, permitindo que o operador possa influenciar no
processo sem ter que esperar pela análise laboratorial de
amostras.
Áreas de Aplicação em Negócios
Áreas de Aplicação em Negócios
Avaliação de Financiamento
Previsão de Demanda de Produtos
Avaliação de Risco
Perfil do Consumidor
Gerência de Carteira
Previsão de Ativos Financeiros
Detecção de Fraude (Cartões de Crédito, Sistemas de Telefonia)
Planejamento da Produção e Distribuição
Sistemas Especialistas
Sistemas Especialistas
Conceitos Básicos:
São programas que armazenam e manipulam o
conhecimento adquirido de um especialista.
=
-> Requer entrevistas e observações para extrair o
conhecimento.
-> Conhecimento é representado em formato
Representação do Conhecimento
Representação do Conhecimento
Regras de produção:
Regra 1:
IF <condição_1> AND <condição_2>...
THEN <ação_A> AND <ação_B> ....
Exemplos:
IF carro = BMW AND cidade = São Paulo
THEN seguro = 10% valor carro
IF carro = Fiat AND cidade = Curitiba
Organização de Sistemas Especialistas
Organização de Sistemas Especialistas
Aquisição de Conhecimento
Máquina de Inferência
Base de Conhecimento IF Carro = BMW AND cidade = SP
THEN seguro = 10%
IF Carro = Fiat AND cidade = CWB THEN seguro = 5% Memória de Trabalho carro = Fiat cidade = Curitiba Sistema de Explicações
Avaliação
Avaliação
Adequada para aplicações onde:
o conhecimento (o especialista) é acessível,
as regras são conhecidas
e fáceis de serem formuladas por este especialista,
Avaliação
Avaliação
Vantagens
utiliza representação
explícita do conhecimento
programas fáceis de ler e
de compreender
capazes de gerar
justificativas (explicações)
Desvantagens
ausência de mecanismo
automático de aprendizado
processo longo e caro de
extração do conhecimento
exigência de declarações
precisas dos especialistas
Lógica Nebulosa
Lógica Nebulosa
Técnica inteligente que tem como
objetivo modelar o modo aproximado
de raciocínio, imitando a habilidade
humana de tomar decisões em um
ambiente de incerteza e imprecisão
Lógica Nebulosa
Lógica Nebulosa
Permite que os sistemas inteligentes de
controle e suporte à decisão lidem com informações
imprecisas (nebulosas - fuzzy)
Exemplos:
• investimento de alto risco
• pressão média
• fluxo muito intenso
• temperatura alta
• muito jovem
Conjunto Nebuloso
Conjunto Nebuloso
Indica uma definição (imprecisa) de um termo lingüístico
(também impreciso) utilizado comumente pelas pessoas:
Ex: A cantina externa é perto daqui!
Conjuntos Nebulosos e Pertinência
Conjuntos Nebulosos e Pertinência
Você é Alto, Baixo ou de estatura mediana?
Resposta CRISP(Não Fuzzy, rígida):
- Até 1,65 é baixo! De 1,85 acima é alto! Entre os dois, mediano!
Resposta Fuzzy(nebulosa, não rígida):
Lógica Fuzzy - Controle
Lógica Fuzzy - Controle
se (x1(distância até a esquina) é grande) e (x3(ângulo com a parede) é nulo) e (x2 e x4 (distâncias laterais) não são pequenas)
Lógica Nebulosa - Avaliação
Lógica Nebulosa - Avaliação
Técnica utilizada em aplicações:
• onde o conhecimento envolve
conceitos subjetivos e intrinsicamente
imprecisos;
• e onde deseja-se obter explicações
Lógica Nebulosa - Avaliação
Lógica Nebulosa - Avaliação
Vantagens
facilidade de lidar com
dados imprecisos.
facilita a descrição das
regras pelos especialistas.
menor número de regras.
explicação do raciocínio.
Desvantagens
especificação das funções
de pertinência.
necessidade de um
especialista e/ou dados
históricos.
Redes Neurais
Redes Neurais
Modelo Computacional inspirado nos
neurônios biológicos e na estrutura do
cérebro, com capacidade de adquirir,
armazenar e utilizar conhecimento
Relação com a Natureza
Relação com a Natureza
Cérebro
Neurônio Biológico
Rede de Neurônios
10 bilhões neurônios
Aprendizado
Generalização
Associação
Reconhecimento de Padrões
Redes Neurais Artificiais
Neurônio Artificial
Estrutura em Camadas
centenas/milhares
Aprendizado
Generalização
Associação
Reconhecimento de
Padrões
Neurônio Biológico x Artificial
Rede Neural Artificial
Avaliação
Avaliação
Indicada para o reconhecimento de
padrões em aplicações com dados
ruidosos ou incompletos, e quando
regras claras não podem ser
facilmente formuladas.
Avaliação
Avaliação
Vantagens
modelagem de sistemas
não lineares
aprendizado automático
tolerante a dados
ruidosos e incompletos
resposta rápida e
precisa
modelos compactos
Desvantagens
ausência de explicações
sensível a quantidade de
dados disponível
Algoritmos Genéticos
Algoritmos Genéticos
Algoritmo de busca/otimização inspirado na
seleção natural e reprodução genética.
Combina sobrevivência do mais apto e
cruzamento aleatório de informação
Qual a finalidade de Algoritmos Genéticos?
Algoritmos Genéticos empregam um processo
adaptativo e paralelo de busca de soluções em
problemas complexos.
Analogia com a Natureza
Analogia com a Natureza
Evolução Natural
Indivíduo
Cromossoma
Reprodução Sexual
Mutação
População
Gerações
Meio Ambiente
Algoritmo Genético
Solução
Representação
Operador Cruzamento
Operador Mutação
Conjunto de Soluções
Ciclos
Problema
Qual a finalidade de Algoritmos Genéticos?
Qual a finalidade de Algoritmos Genéticos?
Adaptativo
– informação corrente influencia a busca futura
Paralelo
– várias soluções consideradas a cada momento
Problema Complexo
– de difícil formulação matemática ou com grande
espaço de busca (grande número de soluções)
Operações Básicas
Operações Básicas
Seleção: privilegia os indivíduos mais aptos
Reprodução: indivíduos (palavras binárias) são
reproduzidas com base na aptidão
Crossover: troca de genes (pedaços de palavras)
Avaliação
Avaliação
Aplicado em problemas complexos de
otimização – de difícil modelagem
matemática, com variedade de regras e
condições, ou com grande número de
Avaliação
Avaliação
Vantagens