teoria dos jogos

54
INTELIGÊNCIA ARTIFICIAL EDKALLENN LIMA BACHAREL EM SISTEMAS DE INFORMAÇÃO (UFAC) ESPECIALISTA EM DESENVOLVIMENTO WEB E COMPUTAÇÃO FORENSE. PPGI-UFAM 2º Semestre de 2015.

Upload: edkallenn-lima

Post on 15-Apr-2017

545 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Teoria dos jogos

INTELIGÊNCIA ARTIFICIAL

EDKALLENN LIMABACHAREL EM SISTEMAS DE INFORMAÇÃO (UFAC)ESPECIALISTA EM DESENVOLVIMENTO WEB E COMPUTAÇÃO FORENSE.

PPGI-UFAM2º Semestre de 2015.

Page 2: Teoria dos jogos

Busca Competitiva ou Teoria dos Jogos

Inteligência Artificial

Page 3: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Agenda Notas históricas Jogos - Teoria dos Jogos Tipos de Jogos Algoritmos de jogos e programas de computador Árvore de Jogo - Decisões ótimas em jogos -

Decisões imperfeitas Jogos Estocásticos - Jogos parcialmente

observáveis Programas de Jogos de última geração Equilíbrio de Nash Dilema dos prisioneiros

Page 4: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

O que pensamos quando imaginamos a “teoria dos jogos”?

Page 5: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Mas a teoria dos jogos é muito mais do que apenas diversão e jogos

É uma teoria com fortes fundamentos matemáticos com desdobramentos em diversos ramos do conhecimento.

Como Economia, Negócios, Biologia, Computação e Engenharia, Logística, Filosofia, Política e até mesmo defesa nacional!

Page 6: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Um pouco de História Registros antigos sobre teoria dos jogos remontam ao

século XVIII Em correspondência dirigida a Nicolas Bernoulli, James

Waldegrave analisa um jogo de cartas chamado “le Her” e fornece uma solução que é um equilíbrio de estratégia mista

No início do século XIX, há o trabalho de Augustin Cournot sobre duopólio

Em 1913, Ernest Zermelo publicou o primeiro teorema matemático da teoria dos jogos

Émile Borel, que reinventou as soluções minimax publicou artigos sobre jogos estratégicos e achava que guerra e economia podiam ser estudadas de maneira semelhante

Page 7: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Um pouco de História Neste início a Teoria dos Jogos chamou pouca atenção Isso mudou com o grande matemático John Von Neumann Em 1928 ele demonstrou que todo jogo finito de soma zero

com duas pessoas possui uma solução em estratégias mistas

Junto com o economista Oskar Morgenstern, publicou o clássico “The Theory of Games and Economic Behaviour” em 1944 e, com isto, a teoria dos jogos invadiu a economia e a matemática aplicada

Em 1950, o matemático John Forbes Nash Júnior publicou quatro artigos importantes para a teoria dos jogos

Nash provou a existência de um equilíbrio de estratégias mistas para jogos não-cooperativos, denominado equilíbrio de Nash

Nash recebeu, em 1994, junto John Harsanyi, o Nobel de Economia.

Page 8: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Mas, o que são jogos?

Page 9: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Primeiro, o que jogos NÃO SÃO...

Aparentemente, temos uma noção intuitiva do que é um jogo

Mas definições intuitivas não funcionam como base para hipóteses científicas

Precisamos saber o que, formalmente, são os jogos

Ou o que eles não são...

Page 10: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos não são...

Decisões isoladas, ou de agente único não são jogos

Ex: decidir qual carro comprar Decisões isoladas tomadas por agentes

inteligentes/racionais baseadas em sensores e premissas

Ou seja, decisões isoladas não constituem jogos...

Page 11: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos, jogos, jogos...

Em ambientes multiagentes, há pouca previsibilidade Ações dos outros agentes É preciso tratar as contingências

Em ambiente competitivos, há conflito de objetivos Ex. negociação em comércio eletrônico

Nestes casos, temos “Busca contra adversário, ou simplesmente “jogo”

Page 12: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos, jogos, jogos...

Os ambientes competitivos em que os objetivos dos agentes estão em conflito e dão origem a problemas de busca competitiva são conhecidos como jogos (Russel & Novig, 2013)

A teoria de jogos (matemática), um ramo da economia, visualiza qualquer ambiente multiagente como um jogo, desde que o impacto de cada agente sobre os outros seja “significativo”, não importando se os agentes são cooperativos ou competitivos. (Russel & Novig, 2013)

Page 13: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos...

Em IA, os jogos mais comuns são de um tipo especializado denominado “jogos determinísticos de revezamento de dois jogadores de soma zero com informações perfeitas” (como o Xadrez)

Nesse tipo de jogo dois agentes agem alternadamente e em que os valores de utilidade no fim do jogo são sempre iguais e opostos (ou simétricos).

Ou seja, se um ganha o outro perde

Page 14: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Tipo de jogo estudado pela IA Dois jogadores (Two-player) Soma-zero (Zero-sum): se um ganha, o outro

perde Discreto (discrete): todos os estados do jogo

bem como as decisões possíveis são valores discretos

Finite (finito): somente um número finito de estados e decisões

Determinístico (deterministic): sem “lançamento de dados”

Observável (perfect information): observável por ambos os jogadores

Page 15: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Teoria dos jogos A Teoria dos Jogos estuda cenários onde

existem vários interessados em otimizar os próprios ganhos, as vezes em conflito entre si.

Por exemplo, imagine que em sua empresa você tem dúvidas sobre qual ação tomar para aumentar o seu lucro: reduzir o preço, lançar outro produto ou fazer uma campanha de marketing?

Page 16: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Teoria dos Jogos

Teoria dos Jogos é isso: entender que sua decisão não é independente e ambos os ganhos dependem da combinação de muitas ações em cadeia até chegar em um equilíbrio.

Este equilíbrio é o chamado Equilíbrio de Nash

Page 17: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Teoria dos Jogos

Para pesquisadores de IA, a natureza abstrata dos jogos os torna um assunto atraente para estudo.

É fácil representar o estado de um jogo e, em geral, os agentes se restringem a um pequeno número de ações cujos resultados são definidos por regras precisas.

Os jogos físicos (como críquete, rúgbi ou futebol) têm descrições complicadas, uma faixa grande de ações e regras imprecisas

Page 18: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos e a atenção da IA

Com exceção do futebol de robôs, esses jogos físicos não atraíram muito interesse na comunidade de IA.

Page 19: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos e a IA

Jogos são interessantes porque são MUITO difíceis de resolver

Ex: o xadrez tem um fator médio de ramificação de cerca de 35, e as partidas com frequência chegam até a 50 movimentos por cada jogador

A árvore de busca tem aproximadamente 35100 ou 10154 nós (embora o grafo de busca tenha “apenas” cerca de 1040 nós distintos).

Page 20: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Formalmente

Elementos essenciais da formulação de um jogo Estado inicial: posições do tabuleiro + de

quem é a vez Estado final: posições em que o jogo

acaba Operadores: jogadas legais para um dado

estado da partida Função de utilidade (objetivo ou

payoff): valor numérico para os estados finais (pontuação) Xadrez = +1, 0, -1; gamão = [-192,+192]

Page 21: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Formalmente A teoria dos jogos pode ser definida como a teoria

dos modelos matemáticos que estuda a escolha de decisões ótimas sob condições de conflito.

O elemento básico em um jogo é o conjunto de jogadores que dele participam.

Cada jogador tem um conjunto de estratégias. Quando cada jogador escolhe sua estratégia,

temos então uma situação ou perfil no espaço de todas as situações (perfis) possíveis

Cada jogador tem (matematicamente) uma função utilidade que atribui um número real (o ganho ou payoff do jogador) a cada situação do jogo

Page 22: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Formalmente Há, portanto, o conjunto finito de jogadores: Cada jogador possui um conjunto finito de opções

denominadas estratégias puras O conjunto de todos os perfis de estratégia pura

formam, o produto cartesiano

Denominado espaço de estratégia pura do jogo. Para cada jogador , existe uma função utilidade

Que associa o ganho (payoff) do jogador a cada perfil

de estratégia pura

Page 23: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Ex: Dilema dos prisioneiros (Al e Bob)

Page 24: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Matriz de payoffs (Al e Bob)

Nesta matriz, os números de cada célula representam os payoffs de Al e Bob para as escolhas de Al e Bob

Page 25: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Outro exemplo (A batalha dos sexos) Um homem e a sua mulher desejam

sair para passear. O homem prefere assistir a um jogo de futebol enquanto

que sua mulher prefere ir ao cinema. Se eles forem juntos para o futebol, então o homem tem

satisfação maior do que a mulher. Por outro lado, se eles forem juntos ao cinema, então a

mulher tem satisfação maior do que o homem. Finalmente, se eles saírem sozinhos, então ambos ficam

igualmente insatisfeitos. Esta situação também pode ser modelada como um jogo

estratégico. Temos:

Page 26: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

A batalha dos sexos

Page 27: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Representação dos jogos Forma normal

O jogo (ou modo estratégia) normal é uma matriz a qual mostra os jogadores, estratégias, e pagamentos.

Para dois jogadores, um escolherá as linhas e o outro escolherá as colunas. Os pagamentos são registrados no seu interior

Nesta forma presume-se que cada jogador atue simultaneamente ou, ao menos, sem conhecer a ação dos outros.

Se os jogadores têm alguma informação acerca das escolhas dos outros jogadores, o jogo é habitualmente apresentado na forma extensiva

Page 28: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Representação dos jogos Forma Extensiva

A forma extensiva de um jogo tenta capturar jogos onde a ordem é importante.

Os jogos aqui são apresentados como árvores (como apresentado na figura a esquerda). Onde cada vértice (ou nodo) representa um ponto de decisão para um jogador.

O jogador é especificado por um número listado no vértice. Os pagamentos são especificados na parte inferior da árvore.

Page 29: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Tipos de Jogos Mais comuns:

Jogos de soma nula e soma não-nula Jogos Simétricos e assimétricos Jogos cooperativos Jogos transparentes (de informação perfeita ou complete

information, onde os payoffs são conhecidos, mas as ações não)

Jogos Estratégicos (estáticos) jogadores fazem um lance sem saber as jogadas dos outros

Jogos simultâneos e sequenciais (uma vez; repetidos-finitos e infinitos)

Jogos Perfect Information (Informação perfeita:- todos os jogadores conhecem os movimentos prévios feitos por todos os outros jogadores)

Jogos infinitamente longos

Page 30: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos soma zero (soma nula)

Um jogo de soma zero se refere a jogos em que o ganho de um jogador representa necessariamente na perda para o outro jogador

O benefício total para todos os jogadores, para cada combinação de estratégias, sempre somam zero

Exemplos: Poker, Go e Xadrez. O Dilema do prisioneiro é um jogo de

soma diferente de zero.

Page 31: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos simultâneos e sequenciais

Jogos simultâneos são jogos onde ambos os jogadores movem-se simultaneamente, ou se eles não se movem simultaneamente, ao menos os jogadores desconhecem previamente as ações de seus adversários (dilema prisioneiro)

Jogos sequenciais (ou dinâmicos) são jogos onde o próximo jogador tem conhecimento da jogada de seu antecessor (jogo da velha)

Page 32: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos simétricos e assimétricos

Jogo simétrico é aquele no qual os pagamentos para os jogadores em uma estratégia particular dependem somente da estratégia escolhida, e não de quem está jogando. Ex: Prisioneiro, caça ao veado

Os jogos assimétricos mais comuns são jogos onde existem grupos de estratégias diferentes para cada jogador

Page 33: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Informação perfeita, imperfeita e completa

Um jogo é de informação perfeita se todos os jogadores conhecem os movimentos prévios feitos por todos os outros jogadores

A maioria dos jogos estudados na teoria dos jogos são de informação imperfeita

Muitos dos jogos populares são jogos de informação perfeita incluindo xadrez, go.

Informação completa requer que cada jogador conheça as estratégias e pagamentos dos outros jogadores, mas não necessariamente suas ações

Page 34: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Algoritmo minimax

Ideia: maximizar a utilidade (ganho) supondo que o adversário vai tentar minimizá-la (todos jogam otimamente!) O agente é MAX e o adversário é MIN

Minimax faz busca cega em profundidade Ele utiliza recursividade simples dos valores

minimax de cada estado sucessor, implementando diretamente as equações da definição.

A recursão percorre todo o caminho descendente até as folhas da árvore e, depois, os valores minimax são propagados de volta pela árvore, à medida que a recursão retorna.

Page 35: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Ex: Jogo da Velha

Page 36: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Melhoramento do minimax

Para melhorar (combinar duas técnicas)1) Podar a arvore onde a busca seria

irrelevante: poda alfa-beta (alfa-beta pruning)

2) Substituir a profundidade n de min-max(n) pela estimativa de min-max(n): função de avaliação

Page 37: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Funções de utilidade

Funções de Utilidade são, essencialmente, heurísticas!

A função de utilidade deve refletir todos os aspectos vinculados aos possíveis resultados de um jogo, incluindo o sentimento de satisfação de um jogador frente ao que ocorre com seus adversários.

Para o jogo da velha, a árvore de jogo é relativamente pequena, menos de 9! = 362.880 nós terminais.

Page 38: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Árvore de Busca Mas, para o xadrez, há mais de 1040 nós, de

modo que é melhor pensar na árvore de jogo como sendo uma construção teórica que não podemos perceber no mundo físico.

Mas, independentemente do tamanho da árvore de jogo, é trabalho de MAX a busca de uma boa jogada.

Usamos o termo árvore de busca para uma árvore que está sobreposta à árvore de jogo completa, examinando os nós o suficiente para permitir que um jogador determine que lance fazer.

Page 39: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

A poda (o corte)

A poda nos permite ignorar partes da árvore de busca que não fazem diferença para a escolha final

As funções de avaliação de heurísticas nos oferecem a oportunidade de fazer uma aproximação da verdadeira utilidade de um estado sem realizar uma busca completa.

Page 40: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Exemplo de poda

Page 41: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Decisões ótimas em jogos Em um problema de busca normal, a solução ótima

seria uma sequência de ações que levasse a um estado objetivo — um estado terminal que representa uma vitória.

Por outro lado, em um jogo, MIN tem alguma relação com esse estado.

Portanto, MAX deve encontrar uma estratégia de contingência que especifique o movimento de MAX no estado inicial e depois os movimentos de MAX nos estados resultantes de cada resposta possível de MIN

E depois os movimentos de MAX nos estados resultantes de cada resposta possível de MIN a esses movimentos, e assim por diante.

Page 42: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Decisões ótimas em jogos

Uma árvore de jogo de duas jogadas. Os nós ∆ são “nós de MAX”, nos quais é a vez de MAX

efetuar um movimento, e os nós ∇ são “nós de MIN”. Os nós terminais mostram os valores de utilidade para MAX;

os outros nós estão identificados com seus valores minimax.

Page 43: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Complexidade do minimax O algoritmo minimax executa uma exploração

completa em profundidade da árvore de jogo. Se a profundidade máxima da árvore é m e

existem b movimentos válidos em cada ponto, a complexidade de tempo do algoritmo minimax é O( bm). (exponencial)

A complexidade de espaço é O( bm) para um algoritmo que gera todos os sucessores de uma vez ou O( m) para um algoritmo que gera ações, uma de cada vez.

É claro que, em jogos reais, o custo de tempo é totalmente impraticável

Page 44: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Jogos estocásticos

Na vida real, existem muitos eventos externos imprevisíveis que podem nos colocar em situações inesperadas.

Muitos jogos refletem essa imprevisibilidade, incluindo um elemento aleatório, como o lançamento de dados.

Nós os chamamos de jogos estocásticos.

Page 45: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Equilíbrio de Nash

Uma solução estratégica ou equilíbrio de Nash de um jogo é um ponto onde cada jogador não tem incentivo de mudar sua estratégia se os demais jogadores não o fizerem.

Page 46: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Equilíbrio de Nash

Page 47: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Programas de jogos de última geração

Xadrez: Deep Blue (aposentado) derrotou o campão mundial Gary Kasparov. 30 processadores em paralelo usando busca alfa-beta. Buscava 30 bilhões de posições por movimento 14 camadas de profundidade

Hydra (sucessor do Deep Blue). Executa em cluster de processador de 64 bits em forma de chips FPGA 200 milhões de avaliações por segundo, mas alcança 18

camadas de profundidade RYBKA, vencedor do campeonato Mundial de Xadrez de

computador de 2008/2009 (Intel Xeon de 8-core e 3,2 Ghz) Função de avaliação melhorada A partir de então, os avanços são no software

Page 48: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Deep Blue da IBM

Page 49: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Programas de jogos de última geração

Damas: CHINOOK, executa em PC’s e utiliza busca alfa-beta

Derrotou o campeão humano em 1990 Base de dados de 39 trilhões de posições finais

Gamão: inclusão da incerteza no lançamento dos dados torna a busca profunda um luxo dispendioso

Programas buscam melhorar a função de avaliação Go: o jogo de tabuleiro mais popular da Ásia

O tabuleiro 19X19 gera um fator de ramificação de 361, um valor assustador para os métodos de busca alfa-beta comuns

A função de avaliação é difícil por causa do controle de território

Os programas atuais, em tabuleiro 9 x 9 estão ainda em nível amador.

Page 50: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Amplitude da Teoria dos Jogos

Conflitos entre países, entre grupos sociais e entre grupos étnicos;

Políticas de preço, de mercado financeiro e de expansão de mercado;

Políticas de impostos e taxas; Políticas sociais e de saúde; Campanhas eleitorais e outras disputas de

poder entre facções políticas; Práticas esportivas; Dinâmica de comportamento animal.

Page 51: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Conclusões

A Teoria dos Jogos é uma área excitante (e enorme) para se trabalhar dentro da IA

Ela ilustra várias questões importantes da IA

Além de servir para inúmeras outras áreas da ciência e da humanidade.

Page 52: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

OBRIGADO!

Page 53: Teoria dos jogos

Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima

Referências AIMA: Ler capítulo “Adversarial Search” Tutorial “Game Tree Search Algorithms, including

Alpha-Beta Search”, disponível em http://www.autonlab.org/tutorials/

Russell, S., e P. Norvig. Inteligência artificial. CAMPUS - RJ, 2004.

Sartini et al. Uma introdução a Teoria dos Jogos. II Bienal da SBM – Universidade Federal da Bahia. 2004.

http://www.pucsp.br/~logica/Fuzzy.htm http://www.matematicauva.org/semana2011/

palestras/carpegiani.pdf

Page 54: Teoria dos jogos

Perguntas e Discussão