Ambiente e Pesquisa Competitiva

Inteligência Artifical

By Pedro Pereira07-10-2024

Agentes, Ambiente e Pesquisa em Contextos Competitivos

1. Agentes e o Ambiente

Um agente é uma entidade que percebe o ambiente através de sensores e atua nele utilizando atuadores para atingir objetivos. A relação entre o agente e o ambiente define os desafios enfrentados na tomada de decisões.

1.1 Características do Ambiente

Os ambientes podem ser classificados de acordo com as seguintes dimensões:

  • Acessível vs. Inacessível:
    • Um ambiente acessível permite ao agente obter toda a informação necessária para a tomada de decisões (e.g., tabuleiro de xadrez).
    • Num ambiente inacessível, o agente trabalha com informação incompleta ou parcial (e.g., tráfego urbano).
  • Determinístico vs. Não-determinístico:
    • Num ambiente determinístico, as ações produzem sempre os mesmos resultados (e.g., resolução de puzzles).
    • Num ambiente não-determinístico, as ações podem ter resultados imprevisíveis (e.g., condução autónoma em condições adversas).
  • Estático vs. Dinâmico:
    • Ambientes estáticos não mudam enquanto o agente decide (e.g., sudoku).
    • Ambientes dinâmicos podem mudar independentemente das ações do agente (e.g., trânsito em tempo real).
  • Discreto vs. Contínuo:
    • Num ambiente discreto, o conjunto de estados e ações possíveis é finito (e.g., jogos de tabuleiro).
    • Num ambiente contínuo, estados e ações podem variar continuamente (e.g., controlo de drones).
  • Episódico vs. Não-episódico:
    • Em ambientes episódicos, a experiência do agente é dividida em episódios independentes (e.g., classificação de imagens).
    • Em ambientes não-episódicos, as ações têm impacto cumulativo (e.g., planeamento estratégico).

2. Pesquisa em Contextos Competitivos

Nos contextos competitivos, a pesquisa é frequentemente aplicada a jogos, onde o objetivo é maximizar os ganhos de um jogador e minimizar os do adversário.

2.1 Jogos como Problemas de Pesquisa

Os jogos são modelados como problemas de pesquisa em árvores ou grafos, com estados representando configurações do jogo e ações conectando estados sucessivos.

2.2 Algoritmo Minimax
  • Descrição:
    O algoritmo minimax é usado para jogos determinísticos de soma zero com dois jogadores. Assume que ambos os jogadores agem racionalmente:
    • O jogador que toma a vez tenta maximizar o seu ganho.
    • O adversário tenta minimizar o ganho do outro jogador.
  • Exemplo: Jogos como xadrez ou damas.
2.3 Poda Alpha-Beta (Pruning)
  • Descrição:
    Uma otimização do minimax que elimina partes da árvore de decisão que não podem influenciar o resultado final, reduzindo o número de estados avaliados.
  • Vantagem: Mantém a mesma solução ótima, mas com menos cálculos.
  • Exemplo: É amplamente usada em jogos de tabuleiro como o xadrez, onde o espaço de busca é vasto.
2.4 Decisões Imperfeitas em Tempo Real
  • Em jogos com limites de tempo, é impossível explorar a árvore de busca completa.
  • Estratégias:
    • Cut-off em profundidade: Limitar a profundidade máxima explorada.
    • Funções de avaliação heurística: Estimam a qualidade de um estado sem explorar até o final do jogo.

3. Jogos Determinísticos vs. Estocásticos

  • Determinísticos:
    • Não envolvem elementos de aleatoriedade.
    • Exemplos: Xadrez, damas.
  • Estocásticos:
    • Incluem incertezas, como lançamentos de dados ou cartas.
    • Exemplos: Monopólio, póquer.
3.1 Jogos Estocásticos com Informação Perfeita
  • Descrição:
    Todos os jogadores têm acesso completo à informação do jogo, mas os resultados são afetados por fatores aleatórios.
  • Algoritmo Expectiminimax:
    • Uma extensão do minimax para jogos estocásticos.
    • Inclui nós de "expectativa", que representam médias ponderadas dos resultados de ações aleatórias.
    • Exemplo: Gamão.
3.2 Jogos Estocásticos com Informação Imperfeita (Parcial)
  • Descrição:
    Cada jogador tem apenas uma visão parcial do estado do jogo, criando desafios adicionais.
  • Algoritmos:
    • Miniminimax: Uma variação do minimax adaptada para incertezas.
    • Teoria dos Jogos: Modela interações estratégicas entre agentes racionais, frequentemente usando equilíbrios de Nash.
    • Exemplo: Póquer (onde as cartas dos outros jogadores são desconhecidas).

Desafios e Considerações

  • Complexidade Computacional:
    Jogos como xadrez têm espaços de busca gigantescos, exigindo otimizações como poda alpha-beta.
  • Incerteza e Aleatoriedade:
    Nos jogos estocásticos, é essencial integrar modelos probabilísticos para lidar com o acaso e a informação parcial.
  • Jogos em Tempo Real:
    Requerem decisões rápidas, muitas vezes baseadas em aproximações heurísticas.

Apresentação de conteúdos concisos.