Teoria dos jogos

797 visualizações

Publicada em

Apresentação do Prof. Edkallenn, como aluno especial do Programa de Pós Graduação da UFAM (PPGI-UFAM), nível de Mestrado da Disciplina "Inteligência Artificial" - tema: Introdução à Teoria dos Jogos

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Teoria dos jogos

  1. 1. 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.
  2. 2. Busca Competitiva ou Teoria dos Jogos Inteligência Artificial
  3. 3. 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
  4. 4. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima O que pensamos quando imaginamos a “teoria dos jogos”?
  5. 5. 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!
  6. 6. 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
  7. 7. 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.
  8. 8. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Mas, o que são jogos?
  9. 9. 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...
  10. 10. 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...
  11. 11. 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”
  12. 12. 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)
  13. 13. 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
  14. 14. 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
  15. 15. 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?
  16. 16. 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
  17. 17. 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
  18. 18. 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.
  19. 19. 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).
  20. 20. 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]
  21. 21. 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
  22. 22. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Formalmente  Há, portanto, o conjunto finito de jogadores: 𝐺 = {𝑔1, 𝑔2, … , 𝑔 𝑛}  Cada jogador 𝑔𝑖 possui um conjunto finito 𝑆 = {𝑆𝑖1, 𝑆𝑖2, … , 𝑆𝑖𝑛} de opções denominadas estratégias puras  O conjunto de todos os perfis de estratégia pura formam, o produto cartesiano 𝑆 = 𝑖=1 𝑛 𝑆𝑖 = 𝑆1 × 𝑆2 × ⋯ × 𝑆 𝑛  Denominado espaço de estratégia pura do jogo.  Para cada jogador 𝑔1 ∈ 𝐺, existe uma função utilidade 𝑢𝑖: 𝑆 → ℝ 𝒔 ↦ 𝑢𝑖 𝒔  Que associa o ganho (payoff) 𝑢𝑖 𝒔 do jogador 𝑔1 a cada perfil de estratégia pura 𝑠 ∈ 𝑆
  23. 23. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Ex: Dilema dos prisioneiros (Al e Bob)
  24. 24. 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
  25. 25. 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:
  26. 26. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima A batalha dos sexos
  27. 27. 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
  28. 28. 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.
  29. 29. 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
  30. 30. 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.
  31. 31. 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)
  32. 32. 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
  33. 33. 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
  34. 34. 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.
  35. 35. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Ex: Jogo da Velha
  36. 36. 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
  37. 37. 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.
  38. 38. 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.
  39. 39. 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.
  40. 40. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Exemplo de poda
  41. 41. 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.
  42. 42. 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.
  43. 43. 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
  44. 44. 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.
  45. 45. 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.
  46. 46. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Equilíbrio de Nash
  47. 47. 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
  48. 48. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima Deep Blue da IBM
  49. 49. 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
  50. 50. 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.
  51. 51. 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.
  52. 52. Inteligência Artificial – PPGI - UFAM Aluno: Edkallenn Lima OBRIGADO!
  53. 53. 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/palestr as/carpegiani.pdf
  54. 54. Perguntas e Discussão

×