180 likes | 296 Views
Revisão I – AP1. Prof. Alexandre Monteiro Recife. Contatos. Prof. Guilherme Alexandre Monteiro Reinaldo Apelido: Alexandre Cordel E-mail/ gtalk : alexandrecordel@gmail.com greinaldo@fbv.edu.br Site: http://www.alexandrecordel.com.br/fbv Celular: (81) 9801-1878.
E N D
Revisão I – AP1 Prof. Alexandre Monteiro Recife
Contatos • Prof. Guilherme Alexandre Monteiro Reinaldo • Apelido: Alexandre Cordel • E-mail/gtalk: alexandrecordel@gmail.com greinaldo@fbv.edu.br • Site: http://www.alexandrecordel.com.br/fbv • Celular: (81) 9801-1878
O que é inteligência Artificial? Inteligência Artificial O que diferencia inteligência artificial de inteligência natural?
Paradigmas da IA • Simbólico: metáfora lingüística/lógica • Sistemas de produção • Conexionista: metáfora cérebro • Redes neurais • Evolucionista: metáfora teoria da evolução natural • Algoritmos genéticos • Probabilista: probabilidade • Redes bayesianas • IA Distribuída: metáfora social • Sistemas multiagentes
O que é um agente • Agente é qualquer entidade que:? • percebe seu ambiente através de sensores (ex. câmeras, microfone, teclado, finger...) • age sobre ele através de atuadores (ex. vídeo, auto-falante, impressora, braços, ftp, ...) • Mapeamento: seqüência de percepções => ação Agente sensores ? a m b i e n t e modelo do ambiente Raciocinador atuadores
Propriedades de Ambientes de Tarefas • Classes de ambientes • Físico: robôs • Software: softbots • Realidade virtual (simulação do ambiente físico): softbots e avatares • Propriedades de um ambiente • Acessível (completamente observável) x inacessível (parcialmente observável) • Estático (não muda) x dinâmico (muda) – semidinâmico (ações) • Determinista (conhece próximo estado) x estocástico (ñ-determinista) • Discreto x contínuo • Episódico (só depende das ações anteriores) x não-episódico (seqüêncial) • tamanho: número de percepções, ações, objetivos,... • Discreto (xadrez) x contínuo (dirigir táxi) • Agente único x multiagente
Algoritmo Básico • Função agenteSimples (percept) retorna ação memória := atualizaMemória (memória, percept) ação := escolheMelhorAção(memória) memória := atualizaMemória (memória, ação) retorna ação • Arquiteturas • Agente tabela • Agente reativo simples • Agente reativo baseado em modelos • Agente baseado em objetivos • Agente baseado em utilidade • Agente com aprendizagem autonomia complexidade
Um problema de busca em IA pode ser definido em termos de... • um estado inicial • Em (Recife) • Estar (pobre) • um ou mais estados finais => definição do objetivo • Em (João Pessoa) • Estar (rico) • Espaço de Estados: • conjunto de todos os estados alcançáveis a partir do estado inicial por qualquer seqüência de ações. • pode ser representado como uma árvore onde os estados são nós e as operações são arcos. • Solução: • caminho (seqüência de ações ou operadores) que leva do estado inicial a um estado final (objetivo), passando de um estado para outro • Ex., dirigir de Recife a João Pessoa • Espaço de estados: todas as cidades da região de Recife a João Pessoa
Métodos de Busca • Busca exaustiva (sem informação ou cega) • Não sabe qual o melhor nó da fronteira a ser expandido = menor custo de caminho desse nó até um nó final(objetivo). • Busca heurística (com informação) • Estima qual o melhor nó da fronteira a ser expandido com base em funções heurísticas => conhecimento
Busca Cega • Estratégias para determinar a ordem de ramificação dos nós: 1.Busca em largura/extensão 2. Busca de custo uniforme 3. Busca em profundidade 4. Busca com aprofundamento iterativo (retrocesso) • Direção da ramificação: 1. Do estado inicial para um estado final 2. De um estado final para o estado inicial 3. Busca bi-direcional
Busca pela Melhor Escolha (BME) Best-FirstSearch • Busca genérica onde o nó de menor custo “aparente” na fronteira do espaço de estados é expandido primeiro • Duas abordagens básicas: 1. Busca Gulosa (Greedysearch) 2. Algoritmo A* e suas variantes • Algoritmo: Função-Insere - ordena nós com base na Função-Avaliação função Busca-Melhor-Escolha (problema,Função-Avaliação) retorna uma solução Busca-Genérica(problema, Função-Insere)
Algoritmos de Melhorias Iterativas • Dois exemplos clássicos • Subida da encosta (Hill-Climbing) • Têmpera simulada (SimulatedAnnealing)
Algoritmo BT • Começando com uma solução inicial s0, a cada iteração, • Um subconjunto V da vizinhança N(s) da solução corrente s é explorado • O membro s0de V com melhor valor nesta região segundo a função f(:) torna-se a nova solução corrente • mesmo que s0seja pior que s.
Evitando Ciclos • existe uma lista tabu T, a qual é uma lista de movimentos proibidos. • A lista tabu clássica contém os movimentos reversos aos últimos |T| movimentos realizados • |T| funciona como uma fila de tamanho fixo, • isto é, quando um novo movimento é adicionado à lista, o mais antigo sai. • Assim, na exploração do subconjunto V da vizinhança N(s) da solução corrente s, ficam excluídos da busca os vizinhos s0que são obtidos de s por movimentos m que constam na lista tabu
Introdução • Principal motivação para o estudo da computação evolutiva através de algoritmos genéticos é: • Otimização de processos complexo e que possuem um grande número de variáveis • O que é otimizar?
Algoritmos Genéticos • Funcionamento: GERAÇÕES População inicial População final Avaliação Seleção População atual Reprodução
Reprodução • Permite obtenção de novos indivíduos • Utiliza operadores genéticos • Transformam a população • Crossover (cruzamento ou recombinação) • Mutação
Crossover • Diversas variações • Um ponto • Mais comum • Dois pontos • Multi-pontos • Uniforme