Escolar Documentos
Profissional Documentos
Cultura Documentos
Exemplos de PSR (CSP, Constraint Satisfaction Problem) Busca genrica aplicada a PSRs Backtracking Verificao forward Heursticas para PSRs
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Grafo de restries
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Problemas de organizao
Qual curso oferecido quando e onde? Configurao de hardware
Problemas de fluxo de transporte Planificao em fbricas Alocao de freqncias em reas, etc. Observe que muitos problemas reais envolvem variveis reais
Inteligncia Artificial CTC-15
Implementao
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Algoritmo Backtracking
Inteligncia Artificial
CTC-15
Ordenao de Variveis
Qual varivel deve ser escolhida para atribuio?
Heurstica de Grau: Selecionar varavel com maior nmero de restries VRM:Valores restantes mnimos selecionar varivel com menor nmero de valores no domnio
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Exemplo: 4 Rainhas
Estados: 4 rainhas em 4 colunas (44 = 256 estados) Operadores: Mover rainha em coluna Teste de objetivo: Nenhum ataque Avaliao: h(n) = nmero de ataques
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Resumo
PSRs constituem um tipo especial de problemas: estados definidos por valores de um conjunto fixo de varivei. E e teste de objetivo definido por restries nos valores das variveis Backtracking = busca em profundidade com
1. Ordem fixa de variveis 2. Apenas sucessores que atendam as restries
Verificao Forward previne nomeaes que levem a fracasso posterior Ordenamento de variveis e heursticas de seleo de valores ajudam significativamente Conflitos mnimos iterativo normalmente efetivo na prtica
Inteligncia Artificial CTC-15
Busca Competitiva
Jogos com adversrios
Formulao simples (aes bem definidas) Totalmente observvel (geralmente) Sinnimo de inteligncia
Primeiro algoritmo para jogar Xadrez criado em 1950 (Claude Shannon)
Inteligncia Artificial
CTC-15
Busca Competitiva
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Minimax
Inteligncia Artificial
CTC-15
Problemas do Minimax
Inteligncia Artificial
CTC-15
Funo Heurstica
Inteligncia Artificial
CTC-15
Aplicao do Minimax
Inteligncia Artificial
CTC-15
Poda Alpha-Beta
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Exerccio
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Algoritmo Expectminimax
Inteligncia Artificial
CTC-15
O comportamento no mais preservado se utilizarmos um escalonamento que apenas preserve a ordem das utilidades dos ns folhas Para tanto, deve-se utilizar uma transformao linear positiva (Teoria da deciso)
Inteligncia Artificial CTC-15
Algoritmos Expectminimax
A introduo do elemento ao acaso, faz aumentar enormemente a rvore de busca e o tempo para analisla A poda alfa-beta pode ser usada, porm muito menos efetiva Jogos com incerteza so muitas vezes tratados com outras tcnicas tais como Teoria da deciso, Modelo decisrio de Markov, e redes bayesianas que sero estudadas no segundo bimestre
Inteligncia Artificial
CTC-15
Busca e Otimizao
Toda tarefa de busca e otimizao possui vrios componentes, entre eles:
espao de busca, onde so consideradas todas as possibilidades de soluo de um determinado problema e funo de avaliao (ou funo de custo), uma maneira de avaliar os membros do espao de busca.
Existem muitos mtodos de busca e funes de avaliao. As tcnicas de busca e otimizao tradicionais iniciam-se com um nico candidato que, iterativamente, manipulado utilizando algumas heursticas (estticas) diretamente associadas ao problema a ser solucionado
Inteligncia Artificial
CTC-15
Computao Evolucionria
Inspira-se na Evoluo (biolgica) para criar mtodos de soluo de problemas de busca
Evoluo:
Seleciona indviduos mais aptos Indviduos mais aptos tem maior probabilidade de sobrevier e procriar Indivduos menos aptos tem maior probabilidade de morrerem antes de procriar
Inteligncia Artificial
CTC-15
Algoritmos Genticos
As tcnicas de computao evolucionria operam sobre uma populao de candidatos em paralelo, Algoritmos Gentiocs fazem busca em diferentes reas do espao de soluo, alocando um nmero de membros para a busca em vrias regies. Os Algoritmos Genticos (AGs) diferem dos mtodos tradicionais de busca e otimizao, principalmente em cinco aspectos:
1. Trabalham com uma codificao do conjunto de parmetros e no com os prprios parmetros. 2. Trabalham com uma populao e no com um s elemento. 3. Utilizam informaes de custo ou recompensa. 4. Utilizam regras de transio probabilsticas e no determinsticas. 5. So baseados na tcnica gerar-e-testar
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Funo de Avaliao
Funo de avaliao:
Prover uma medida de desempenho com respeito a um conjunto particular de parmetros. Deve ser relativamente rpida, uma vez que, em cada iterao, cada membro da populao avaliado e recebe um valor de aptido. A avaliao de um membro (cromossomo) representando um conjunto particular de parmetros independente da avaliao de qualquer outro membro
Inteligncia Artificial
CTC-15
Funo de Aptido
Funo de aptido:
Transforma a medida da funo de avaliao em alocao de oportunidades reprodutivas. sempre definida de acordo com outros membros da atual populao.
No algoritmo gentico cannico, aptido definida como fix=f(x)/f onde f(x) a avaliao associada ao cromossomo x e f a soma da avaliao (ou mdia) de todos os membros da populao. A aptido pode tambm ser associada classificao de um cromossomo na populao ou outras medidas.
Inteligncia Artificial CTC-15
Codificao
O cromossomo deve, de algum modo, conter informao sobre a soluo a qual representa. O modo mais usual de codificao a seqncia binria. O cromossomo, ento deve ser algo como:
Cada bit na seqncia (gene) pode representar uma caracterstica da soluo ou a srie como um todo pode representar um nmero.
Inteligncia Artificial
CTC-15
Pseudocdigo de um AG
[Incio] Gerar uma populao aleatria com n cromossomos
Inteligncia Artificial
CTC-15
Inteligncia Artificial
CTC-15
Elitismo
Elitismo o nome do mtodo, aliado seleo, que primeiro copia o melhor cromossomo (ou alguns melhores cromossomos) para a nova populao. O processo restante feito do modo clssico. O elitismo pode aumentar rapidamente o desempenho do AG porque evita que se perca a melhor soluo encontrada at o momento.
Inteligncia Artificial
CTC-15
Recombinao (Crossover)
Seleciona genes a partir dos cromossomos pais e cria uma nova prole. O modo mais simples: 1. escolher aleatoriamente algum ponto (locus entre genes) no cromossomo, 2. tudo que estiver antes desse ponto ser copiado do primeiro pai, 3. tudo que estiver depois ser copiado do segundo pai.
Existem outros meios de realizar recombinao, por exemplo, podemos escolher mais pontos de recombinao. Recombinaes desenvolvidas para problemas especficos podem melhorar o desempenho do AG.
Inteligncia Artificial
CTC-15
Mutaes
Mutao permite evitar que a populao fique presa em um mnimo (mximo) local. A mutao altera aleatoriamente a nova prole. Na codificao binria, podemos mudar alguns bits de 1 para 0 e de 0 para 1:
Parmetros - 1
Probabilidade de recombinao: indica o quo freqente a recombinao executada.
Se no ocorre recombinao, a prole a cpia dos pais. Se ocorre recombinao, a prole formada por partes dos pais. Se a probabilidade de recombinao 100%, ento toda a prole ser formada com recombinao. Se for 0%, a nova gerao ser formada por cpias exatas da populao anterior
A recombinao realizada com a esperana de que os novos cromossomos tenham partes boas dos cromossomos anteriores e talvez sejam melhores que seus pais. Entretanto aconselhvel deixar parte da populao sobreviver na gerao seguinte.
Inteligncia Artificial
CTC-15
Parmetros - 2
Probabilidade de mutao: indica o quo freqente partes dos cromossomos sofrero mutaes.
Se no ocorrer mutao (probabilidade de mutao = 0%), a prole no sofrer mudanas aps a recombinao. Se ocorrer mutao, parte dos cromossomos ser alterada. Se a probabilidade de mutao for 100%, todos os cromossomos sero alterados.
A mutao realizada para prevenir que o AG caia em um extremo local (mnimo ou mximo, depende das funes usadas), porm ela no deve ocorrer com muita freqncia, pois acarretaria em uma busca aleatria no espao de solues.
Inteligncia Artificial
CTC-15
Parmetros - 3
Tamanho da populao: indica quantos cromossomos existem em uma populao (em uma gerao).
Se existirem muito poucos cromossomos, o AG ter poucas possibilidades de realizar a recombinao e apenas uma pequena poro do espao de estados ser explorada. Se existirem muitos cromossomos, o AG ficar lento.
Pesquisas mostram que aps algum limite (que depende principalmente da codificao e do problema) no vantajoso aumentar o tamanho da populao pois no tornar o algoritmo mais rpido.
Inteligncia Artificial
CTC-15
Parmetros - 4
Intervalo de Gerao. Controla a porcentagem da populao que ser substituda durante a prxima gerao.
Com um valor alto, a maior parte da populao ser substituda, mas com valores muito altos pode ocorrer perda de estruturas de alta aptido. Com um valor baixo, o algoritmo pode tornar-se muito lento.
Inteligncia Artificial
CTC-15
Exemplo: 8 Rainhas
Codificao Cromossomos compostos por 8 nmeros (genes), a posio do gene indica a coluna, o valor do nmero indica a linha
Inteligncia Artificial
CTC-15
Exemplo: 8 Rainhas
Inteligncia Artificial
CTC-15
Exemplo: 8 Rainhas
Inteligncia Artificial
CTC-15
Recombinao: 8 Rainhas
Inteligncia Artificial
CTC-15
Exemplo: 8 Rainhas
Indviduos mais aptos (maior funo de aptido) tem maiores chances de serem selecionados
Inteligncia Artificial
CTC-15