Algoritmo MiniMax. Minimax

Documentos relacionados
Jogos vs. Problemas de Procura

IA: Busca Competitiva. Ricardo Britto DIE-UFPI

Jogos de Tabuleiro e Busca Competitiva

Departamento de Informática. Análise de Decisão. Métodos Quantitativos LEI 2006/2007. Susana Nascimento

Sistemas de Apoio à Decisão

Jogos de Tabuleiro e Busca Competitiva

TEORIA DOS JOGOS E APRENDIZADO

Actividade 2 Intensidade da luz

Trabalho de Implementação Jogo Reversi

Alternativamente pode ser pensado como uma forma de maximizar o minimo ganho possível.

Técnicas de Computação Paralela Capítulo III Design de Algoritmos Paralelos

CONCEITOS. Evento: qualquer subconjunto do espaço amostral. Uma primeira idéia do cálculo de probabilidade. Eventos Teoria de conjuntos

Microeconomia II. Cursos de Economia e de Matemática Aplicada à Economia e Gestão

HEX CONEXÕES EXTREMAS EM LADRILHOS HEXAGONAIS

6. Programação Inteira

Estatística II Antonio Roque Aula 9. Testes de Hipóteses

Eventos independentes

COMO CALCULAR O PRINCIPAL INDICADOR PARA MEDIR A EFICIÊNCIA FINANCEIRA DE UMA

FILOSOFIA SEM FILÓSOFOS: ANÁLISE DE CONCEITOS COMO MÉTODO E CONTEÚDO PARA O ENSINO MÉDIO 1. Introdução. Daniel+Durante+Pereira+Alves+

LUAS ALIANÇA RUHRUHH. Documento Publicado em 23/01/2013 (Não revisado)

MATEMÁTICA A - 12o Ano Probabilidades - Triângulo de Pascal Propostas de resolução

OBSERVANDO AS DIFERENÇAS DE TEMPO NAS EXECUÇÕES DE ALGORITMOS EM PROCESSADORES DIFERENTES

Este procedimento gera contribuições não só a φ 2 e φ 4, mas também a ordens superiores. O termo por exemplo:

Um sistema bem dimensionado permite poupar, em média, 70% a 80% da energia necessária para o aquecimento de água que usamos em casa.

Avaliação de projetos de investimento

Gerenciamento de memória

Jogos simultâneos. Roberto Guena. 19 de agosto de 2011 USP. Roberto Guena (USP) Jogos simultâneos 19 de agosto de / 34

Universidade Católica Portuguesa. Faculdade de Ciências Económicas e Empresariais. Tel.: Fax: fbranco@fcee.ucp.

Monopólio. Microeconomia II LGE108. Características do Monopólio:

Discussão de Sistemas Teorema de Rouché Capelli

Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas ICEB

A presente seção apresenta e especifica as hipótese que se buscou testar com o experimento. A seção 5 vai detalhar o desenho do experimento.

Nome: N.º: endereço: data: Telefone: PARA QUEM CURSA O 9 Ọ ANO EM Disciplina: MaTeMÁTiCa

Sumário. 1. Instalando a Chave de Proteção Novas características da versão Instalando o PhotoFacil Álbum 4

Golden Game Um Jogo de Logística

Sistemas de Tempo Real: Conceitos Básicos

Metodologia para seleção de amostras de contratos de obras públicas (jurisdicionados) utilizando a programação linear aplicativo Solver

Planejamento e Análise de Sistemas de Produção

UNIVERSIDADE FEDERAL DE SANTA MARIA COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA Curso de Eletrotécnica

RQ Edição Fevereiro 2014

Unidade 11 - Probabilidade. Probabilidade Empírica Probabilidade Teórica

AGES FACULDADE DE CIÊNCIAS HUMANAS E SOCIAIS DIRETORIA DE ENSINO CÁLCULOS PARA 100%

Exercícios de Matemática para o ENEM (Habilidades 2 e 4)

Mercado e a concorrência

OS LEILÕES COMO INSTRUMENTOS DE REGULAÇÃO ECONÓMICA * Novembro, 2004.

Problemas de Valor Inicial para Equações Diferenciais Ordinárias

CUSTOS DA QUALIDADE EM METALURGICAS DO SEGMENTOS DE ELEVADORES PARA OBRAS CÍVIS - ESTUDO DE CASO

Aula 2 - Cálculo Numérico

Inteligência Artificial. Metodologias de Busca

Microeconomia II. Cursos de Economia e de Matemática Aplicada à Economia e Gestão

Pedro Ribeiro 2014/2015

CURSO: ADMINISTRAÇÃO Prof Dra. Deiby Santos Gouveia Disciplina: Matemática Aplicada OFERTA DE MERCADO

A otimização é o processo de

Processos Estocásticos

2ª Lista de Exercícios

7 - Análise de redes Pesquisa Operacional CAPÍTULO 7 ANÁLISE DE REDES. 4 c. Figura Exemplo de um grafo linear.

Gráficos. Incluindo gráficos

Gestão de sombras. Funcionamento eficiente de sistemas fotovoltaicos parcialmente ensombrados com OptiTrac Global Peak

Economia II. A Procura Agregada de Bens e Serviços e a Função IS. Francisco Camões / Sofia Vale / Vivaldo Mendes. Setembro 2007

ESAPL IPVC. Licenciatura em Engenharia do Ambiente e dos Recursos Rurais. Economia Ambiental

Artigo Março 2005 AC05102LIS/ENG Engenharia Preventiva Inspecção Periódica de Edifícios Luís Viegas Mendonça João de Sousa Rodolfo 2005 SpyBuilding

CAPÍTULO 2. Grafos e Redes

Notas sobre a Fórmula de Taylor e o estudo de extremos

Matemática SSA 2 REVISÃO GERAL 1

Projecto de Programação por Objectos 2007/08 Escalonamento em Multi-processador por Programação Evolutiva MEBiom/MEEC 1 Problema

Eduardo Camponogara. DAS-5103: Cálculo Numérico para Controle e Automação. Departamento de Automação e Sistemas Universidade Federal de Santa Catarina

Introdução à Inteligência Artificial 2007/08

Seu pé direito nas melhores faculdades

XXV OLIMPÍADA ECC 2014

Sumário. Decisões óptimas em jogos (minimax) Cortes α-β Decisões imperfeitas em tempo real

Aula 4 Estatística Conceitos básicos

Inteligência Artificial. Minimax. Xadrez chinês. Xadrez chinês. Exemplos de Jogos. Exemplo de função de avaliação: Prof. Paulo Martins Engel

3. ANÁLISE DE RISCO NA CONSTRUÇÃO CIVIL

Resolução eficaz de problemas: quatro exemplos

CURSO de CIÊNCIAS ECONÔMICAS - Gabarito

OS CONTRATOS DE OPÇÃO

UTILIZAÇÃO DE SOFTWARES NA RESOLUÇÃO DE UM PROBLEMA DE PROGRAMAÇÃO LINEAR. Cintia da Silva Araújo, Tiago de Souza Marçal, Magda Aparecida Nogueira

Cap. 8 Mantendo o suprimento. André Jun Nishizawa

Notação. Quantidades Económicas de Encomenda. 1.1 Quantidade Económica de Wilson. 1.1 Quantidade Económica de Wilson

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

COMO PROGRAMAR SEU TIME

ELEMENTOS BÁSICOS NA ELABORAÇÃO DO ORÇAMENTO DE CAPITAL

1. A corrida de vetores numa folha de papel.

Análise de Arredondamento em Ponto Flutuante

B D. Árvores Ordenadas

Eng Civil Washington Peres Núñez Dr. em Engenharia Civil pela Universidade Federal do Rio Grande do Sul

C5. Formação e evolução estelar

Testedegeradoresde. Parte X. 38 Testes de Ajuste à Distribuição Teste Chi-Quadrado

2.ª Chamada de Gestão da Informação

[ \ x Recordemos o caso mais simples de um VLVWHPD de duas HTXDo}HVOLQHDUHV nas duas LQFyJQLWDV [ e \.

Problemas Computacionais em LS

1. Explicando Roteamento um exemplo prático. Através da análise de uns exemplos simples será possível compreender como o roteamento funciona.

Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio

Exercícios resolvidos sobre Função de probabilidade e densidade de probabilidade

Módulo 2 Análise de Grupos de Interesse

Aula 11 Root Locus LGR (Lugar Geométrico das Raízes) parte I

Programas C com Repetição

Observação das aulas Algumas indicações para observar as aulas

Teoria dos Jogos 1. Economia e Estratégia para Empreendedores Paulo Coelho Vieira

Transcrição:

Algoritmo MiniMax Luís Carlos Calado 050509043 João Carlos Sousa 050509027 José Carlos Campos 060509007 Rodolfo Sousa Silva 050509069 1 Minimax Minimax (ou minmax) é um método usado na Teoria da Decisão, Teoria dos Jogos, Estatística e Filosofia para minimizar a perda máxima possível. Teorema Minimax Von Neumann foi um brilhante matemático nascido em Budapeste em 1903. Devido à demonstração do teorema minimax, Von Neumann foi considerado o pai da teoria dos jogos em 1926. 2

Minimax Este teorema surgiu a partir da Zero-Sum Game Theory: Para qualquer jogo para dois jogadores que respeite a teoria zero-sum, existe uma estratégia mista para cada jogador tal que o resultado esperado para os dois é o mesmo valor V quando os jogadores usam esta estratégia. V é o melhor valor que cada um pode esperar de uma jogada. Isto é, estas estratégias mistas são as estratégias óptimas para os dois jogadores. 3 Qual o exemplo mais simples para ilustrar o Minimax? 4

Xadrez Damas Go 5 Porque não aplicar o Minimax no Xadrez? Factor médio de ramificação: ~35 Tempo entre duas jogadas: 2,5 minutos (150 segundos) Computador: analisa 10 000 estados / segundo Estados analisáveis: 150 segundos * 10^4 estados = 1 500 000 Nº de estados à profundidade p: r^p = 35^p 35^4 = 1 500 625 (à profundidade 4, o computador já não analisa todas as jogadas) Um bom jogador humano consegue prever de 6 a 8 jogadas Conclusão: Minimax é demasiado custoso em tempo 6

Jogo do Galo OK 7 Algoritmo (Pseudo-código) Determinar SE { profundidade limite atingida OU Nivel é Minimizador OU Nivel é Maximizador } ENTÃO SE profundidade limite Calcular valor do estado corrente Retornar resultado SE Nivel Minimizador Aplicar minimax aos sucessores Retornar Mínimo SE Nivel Maximizador Aplicar minimax aos sucessores Retornar Máximo 8

- Processo de pesquisa com Minimax - Exemplo de árvore de pesquisa com profundidade 5 - Os valores da função Heurística são relativos ao jogador X Heurística = linhas/colunas/diagonais em aberto ->X - linhas/colunas/diagonais em aberto ->O 9 Exemplo Max Min Para cada nível MINimizador ou MAXimizador, escolher o MINímo ou MAXimo dos sucessores 10

Exemplo (continuação) Max Min 11 Será que o minimax em alguma altura realiza trabalho inútil? 12

Resposta? Sim Max Min 13 Cortes alfa-beta - Permite diminuir o número de nós visitados e de funções nos nós avaliados - Possui profundidade limitada - Inclui-se um limite inferior para valor a minimizar (beta -> valor mais baixo que o jogador min já assegurou), e um limite superior para o valor a maximizar (alfa -> valor mais alto do jogador max) - A pesquisa dos sucessores de um nó termina quando se verificar alfa>=beta 14

Algoritmo (Pseudo-código) alfa-beta(jogador, mundo, alfa, beta) SE o jogo terminou no estado actual do mundo devolve vencedor filhos = todas as jogadas possíveis a partir do estado actual SE jogador = MAX PARA cada filho avaliação = alfa-beta(adversário, filho, alfa, beta) SE avaliação > alfa ENTÃO alfa = avaliação (encontrou-se uma melhor jogada) SE alfa >= beta ENTÃO devolve alfa (ignora restante ramos) devolve alfa (esta é a melhor jogada) SENÃO jogador = MIN PARA cada filho avaliação = alfa-beta(adversário, filho, alfa, beta) SE avaliação < beta ENTÃO beta= avaliação (adversário encontrou uma melhor pior jogada) SE alfa >= beta ENTÃO devolve beta (ignora restante ramos) devolve beta (a melhor jogada do adversário) 15 Exemplo Max Min 16

Exemplo (continuação) Max Min 17 Contras Apesar de tudo o que foi referido, os cortes Alfa-Beta podem não trazer melhorias. Na prática, se as opções surgirem de uma determinada ordem (crescente no maximizador e decrescente no minimizador), os cortes Alfa-Beta não trazem melhorias. 18

Ordem de complexidade Se a profundidade máxima da árvore for m e em cada ponto houver b hipóteses possíveis (factor de ramificação): (*) com uma ordenação perfeita 19 Outra abordagem, Negamax 20

Negamax Este algoritmo é semelhante ao Minimax mas tira partido das heurísticas poderem ser as mesmas para o jogador e seu adversário (como é o caso do Xadrez). Enquanto que o Minimax maximiza a heurística do jogador e minimiza a do adversário, o Negamax nega (multiplica por -1) o valor da heurística correspondente ao nível onde teria de minimizar. Assim não precisa de saber o nível onde se encontra e maximiza sempre. 21 Exemplo 22

Exemplo (continuação) 23 Resumo - Minimax - Baseia-se na suposição de que o adversário escolherá sempre o movimento ideal, e nunca incorrerá ao erro; - Gera toda a árvore de busca, dentro do limite permitido; -O Algoritmo é completo apenas no caso de a árvore ser finita (ex.: Jogo do Galo); - O tempo gasto para determinar a decisão óptima é totalmente impraticável para qualquer jogo minimamente complexo, pois gera caminhos cuja possibilidade de serem seguidos é praticamente nula. 24

Resumo Corte alfa-beta - Eficiente para determinar quais os ramos que não devem ser explorados; - Não afecta o resultado final; - Uma boa ordenação dos nós aumenta ainda mais a sua eficiência, no entanto se isso não acontecer este algoritmo pode não trazer qualquer vantagem; 25? 26

Obrigado pela vossa atenção E Boa sorte para o teste 27