Jogos com Oponentes. Problemas de busca: não assumem a presença de um oponente

Documentos relacionados
Jogos com Oponentes. Problemas de busca: não assumem a presença de um oponente

Jogos com Oponentes. espaço de busca muito grande tempo para cada jogada

Jogos com Oponentes. March 7, 2018

Inteligência Artificial. 3º Quadrimestre de 2018

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

Fundamentos de Inteligência Artificial [5COP099]

Jogos. Geralmente o oponente tentará, na medida do possível, fazer o movimento menos benéfico para o adversário.

Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall.

INTELIGÊNCIA ARTIFICIAL 2008/09

Árvore de Jogos Minimax e Poda Alfa-Beta

3. Resolução de problemas por meio de busca

Busca Competitiva. Inteligência Artificial. Até aqui... Jogos vs. busca. Decisões ótimas em jogos 9/22/2010

Inteligência Artificial. Resolução de problemas por meio de algoritmos de busca. Aula VI Busca Competitiva

PMR Computação para Mecatrônica

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

IA: Busca Competitiva. Ricardo Britto DIE-UFPI

Algoritmos de retrocesso

Ernesto Costa e Anabela Simões, Inteligência Artificial: Fundamentos e Aplicações (2ª edição) FCA, Set chapter 9

Ex. 1) Considere que a árvore seguinte corresponde a uma parte do espaço de estados de um jogo de dois agentes: f=7 f=7 f=1 f=2

Algoritmos de retrocesso

CEFET/RJ Disciplina: Inteligência Artificial Professor: Eduardo Bezerra Lista de exercícios 02

Departamento de Ciência de Computadores - FCUP Primeiro Teste de Inteligência Artificial / Sistemas Inteligentes (Duração: 2 horas)

Local search + Adversarial Search

Técnicas de Desenho de Algoritmos

Inteligência Artificial (SI 214) Aula 6 Busca com Adversário. Prof. Josenildo Silva

Busca competitiva. Inteligência Artificial. Profª. Solange O. Rezende

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

Técnicas para Implementação de Jogos

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira

Aula 9 TECNOLOGIA EM JOGOS DIGITAIS PROGRAMACAO E INTEGRACAO DE JOGOS I. Marcelo Henrique dos Santos

J2 Velha. Uma Implementação Java do Jogo da Velha Utilizando o Algoritmo MiniMax. Universidade Federal do ABC ufabc. André Filipe de Moraes Batista

Jogos de Tabuleiro e Busca Competitiva

Introdução à Inteligência Artificial. Procura em contextos competitivos jogos (cont.)

Jogos de Tabuleiro e Busca Competitiva

Algoritmo Minimax Russel and Norvig, AIMA slides

PCS Inteligência Artificial

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

Estratégias de Busca: Métodos Informados. March 9, 2015

Inteligência Artificial

Universidade Federal do Ceará Pós-Graduação em Modelagem e Métodos Quantitativos Mestrado Acadêmico na Área Interdisciplinar

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS

Teoria de Jogos. Algoritmo Minimax e Alfa-Beta AED

Jogo de Damas. Alunos: Sávio Mendes de Figueiredo Sômulo Nogueira Mafra

Inteligência Artificial

Busca em Espaço de Estados a

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

Estratégias informadas de Busca. March 3, 2016

Aprendizado por Reforço

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR

Inteligência Artificial Alameda e Taguspark

Algoritmos de busca local e problemas de otimização

Inteligência Artificial

7 a Lista de Exercícios Assunto: Funções e passagem por referência com vetor e matriz (Tópico 7)

EXPLORANDO GRAFOS 1. Grafos e Jogos uma introdução

Exemplos. Jogo dos oito :-) Mundo dos blocos (ex: torre de Hanoi) Poblema das rainhas. Criptoaritmética. Missionários e Canibais.

Jogos em Teoria dos Jogos e em

CEFET/RJ Inteligência Artificial (2017.2) Professor: Eduardo Bezerra Lista de exercícios 03

Lista 2 Sistemas Inteligentes (INE5633) 2014s2

2284-ELE/5, 3316-IE/3

Resolução de Problemas através de Busca. Prof. Júlio Cesar Nievola PPGIA - PUC-PR

Sistemas Baseados em Conhecimento

INF 1771 Inteligência Artificial

Enunciados dos Exercícios Cap. 2 Russell & Norvig

INF 1771 Inteligência Artificial

1/ 36. Computação 1 - Python Aula 1 - Teórica: Introdução

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers

Sociedades de Agentes

8 Experimentos. de pelo menos uma solução. 2 Na verdade, poderíamos definir uma função que retorna o conjunto de equilíbrios de

Inteligência Artificial PCS3438. Escola Politécnica da USP Engenharia de Computação (PCS)

PCS Gabarito da 1a. lista

Inteligência Artificial Alameda e Taguspark

Trabalho Prático. Bruno Coswig Fiss Kauê Soares da Silveira. Disciplina INF Inteligência Artificial. Professor: Paulo Martins Engel

Sistemas Inteligentes / Inteligência Artificial, Outros Métodos de Procura

Jogos e Busca. Silvio Lago

Artifical (utilizando o Jogo da Velha)

Inteligência Artificial 04. Busca Sem Informação (Cega) Capítulo 3 Russell & Norvig; Seções 3.4 e 3.5

Busca com Adversários: Jogos. Maria Carolina Monard

Estratégias informadas de Busca. February 19, 2018

Computação I - Python Aula 1 - Teórica: Introdução

Inteligência Artificial

Inteligência Artificial Taguspark

Outras estratégias de Busca. February 27, 2017

Anatomia do motor de um programa de xadrez. Hugo Vinicius M. D. Santana Orientador: José Coelho de Pina

Romildo Martins da S Bezerra Julho 2001

Inteligência Artificial: 3. Resolução de problemas por meio de busca. Capítulo 3 Russell e Norvig; Seções 3.1, 3.2 e 3.3

Técnicas Inteligência Artificial

Instituto de Informática. Departamento de Informática Aplicada

DAINF - Departamento de Informática

Inferência em Redes de Crenças Sejam Z i pais de Y i e z i, um conj de valores para Z i. e E Y i X

Backtracking. Backtracking

Técnicas Inteligência Artificial

Busca Local. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

Algoritmo MiniMax. Minimax

Jogos. Jogos. Jogo. Jogo. Óptimo alvo investigação

Colégio de Nossa Senhora da Bonança

Inteligência Artificial

Exemplo de aprendizagem máquina

Microsoft Faculty Connection

Transcrição:

istemas Inteligentes, 10-11 1 Jogos com ponentes Problemas de busca: não assumem a presença de um oponente Jogos: oponente INCERTEZA! Incerteza porque não se conhece as jogadas exatas do oponente e não por causa de falta de informação. Jogos diferentes de busca por duas razões principais: espaço de busca muito grande tempo para cada jogada Ex: xadrez, em média fator de ramificação = 35 em média, 50 jogadas para cada jogador, onde de cada jogada devemos selecionar 1 de 35 35 100 nós!!!

istemas Inteligentes, 10-11 2 Jogos Um jogo pode ser definido como um tipo de problema de busca com os seguintes componentes: estado inicial: configuração do tabuleiro e indicação de quem é a vez função para gerar os sucessores: retorna uma lista de pares com jogadas possíveis e estado resultante (a,s no algoritmo) teste de terminação Função utilidade (utility function) que devolve o valor numérico do jogo. Ex: ganhou, empatou, perdeu. Jogo com dois jogadores: MIN e MA MA inicia o jogo

istemas Inteligentes, 10-11 3 Jogos: Minimax MINIMA-VALUE(n) = UTILITY (n) max s successors(n) MINIMA-VALUE(s) min s successors(n) MINIMA-VALUE(s) if n is a terminal state if n is a MA node if n is a MIN node

istemas Inteligentes, 10-11 4 Jogos: Algoritmo Minimax function MINIMA_DECISIN(state) returns an action inputs: state -> estado corrente no jogo v <- MA-VALUE(state) return the action in SUCCESSRS(state) with value v function MA-VALUE(state) returns a utility value if TERMINAL_TEST(state) then return UTILITY(state) v <- -infinito for a, s in SUCCESSRS(state) do v <- MA(v, MIN-VALUE(s)) return v function MIN-VALUE(state) returns a utility value if TERMINAL_TEST(state) then return UTILITY(state) v <- infinito for a, s in SUCCESSRS(state) do v <- MIN(v, MA-VALUE(s)) return v

istemas Inteligentes, 10-11 5 Jogos: Algoritmo Alfa-Beta function ALPHA-BETA-SEARCH(state) returns an action inputs: state -> estado corrente no jogo v <- MA-VALUE(state,-inf,+inf) % alfa inicia com -inf, % beta inicia com +inf return the action in SUCCESSRS(state) with value v function MA-VALUE(state,alfa,beta) returns a utility value inputs: state -> estado corrente no jogo alfa -> valor da melhor alternativa para MA beta -> valor da melhor alternativa para MIN if TERMINAL_TEST(state) then return UTILITY(state) v <- -infinito for a, s in SUCCESSRS(state) do v <- MA(v, MIN-VALUE(s,alfa,beta)) if (v >= beta ) then return v % momento da poda alfa <- MA(alfa,v) return v function MIN-VALUE(state,alfa,beta) returns a utility value inputs: state -> estado corrente no jogo alfa -> valor da melhor alternativa para MA beta -> valor da melhor alternativa para MIN if TERMINAL_TEST(state) then return UTILITY(state) v <- +infinito for a, s in SUCCESSRS(state) do v <- MIN(v, MA-VALUE(s,alfa,beta)) if (v <= alfa ) then return v % momento da poda beta <- MIN(beta,v) return v

istemas Inteligentes, 10-11 6 MA () Exemplo: jogo do galo (velha - BR ou tic-tac-toe - UK/US) MIN () MA ()... MIN ()............... TERMINAL Utility 1 0 +1...

istemas Inteligentes, 10-11 7 bservações: Exemplo: jogo do galo (velha - BR ou tic-tac-toe - UK/US) fator de ramificação dos nós mais próximos da raiz pode ser reduzido removendo estados simétricos fator de ramificação dos nós mais profundos da árvore de procura vai automaticamente sendo reduzido (sem necessidade de verificação de simetrias, porque o número de posições vagas no tabuleiro diminui se expandir todos os nós até o último nível da árvore, a função utilidade pode ser: 0 para empate, -1 para perdeu e +1 para ganhou se não expandir os nós até o último nível, pode utilizar a função utilidade que devolve o número de fileiras vazias para o MA menos o número de fileiras vazias para o MIN.

istemas Inteligentes, 10-11 8 to move A Exemplo: jogos com múltiplos jogadores (1, 2, 6) B (1, 2, 6) (1, 5, 2) C (1, 2, 6) (6, 1, 2) (1, 5, 2) (5, 4, 5) A (1, 2, 6) (4, 2, 3) (6, 1, 2) (7, 4,1) (5,1,1) (1, 5, 2) (7, 7,1) (5, 4, 5)

istemas Inteligentes, 10-11 9 bservações: Exemplo: jogos com múltiplos jogadores representação de valores para cada jogador em forma de vetor (tuplas), onde cada elemento indica a função utilidade para um jogador, na ordem de jogada algoritmo aplicado similar ao minimax complicações: mudanças dinâmicas de estratégia durante o jogo quando acontecem alianças entre jogadores para derrubar o jogador mais forte e mais tarde estas alianças desaparecem (jogo flutua entre cooperação e competição) quando no jogo é introduzido algum fator aleatório (jogos que envolvem dados, por exemplo)