Como apresentado na aula passada, um agente racional pode ser definido formalmente como:

“For each possible percept sequence, a rational agent should select an action that is expected to maximize its performance measure, given the evidence provided by the percept sequence and whatever built-in knowledge the agent has.” - Peter Norvig em Artificial Intelligence : A Modern Approach

No esquema abaixo é possível observar a estrutura de um agente racional e como ele deverá ser implementado considerando seus sensores e atuadores. Note também como as percepções e as ações são colhidas/executadas no ambiente através destes sensores e atuadores. É importante então compreender como o ambiente pode ser compreendido, para assim facilitar a construção do agente como um todo.

Ambiente Completamente Observável ou Parcialmente Observável

Um ambiente é completamente observável se aquilo que seu agente pode perceber em qualquer ponto no tempo for completamente suficiente para tomar a melhor decisão. Para fazer a tomada de decisão não é necessário considerar o que já aconteceu neste ambiente. Xadrez é um jogo em que é o ambiente é completamente observável. Já um ambiente parcialmente observável só é possível observar apenas uma fração do estado atual do mesmo. Um exemplo de ambiente parcialmente observável é o jogo Truco.

Ambiente Único Agente ou Multiagente

Um ambiente é único se apenas um agente está atuando nele, caso existam mais agentes este ambiente é multiagente. Observe que a partir do momento que um ambiente é considerado multiagente é possível classificá-lo como competitivo ou cooperativo.

Ambiente Determinístico ou Estocástico

Um ambiente é considerado determinístico se apenas as ações de seu agente determinam o resultado obtido, caso contrário é estocástico. Observe que se um ambiente é parcialmente observável ele pode parecer estocástico. O uso da palavra estocástico comumente implica uma probabilidade relacionada ao resultado obtido.

Ambiente Episódico ou Sequencial

Um ambiente é considerado episódico se a experiência de determinado agente pode ser dividido em episódios atômicos, além disso em cada episódio o agente recebe uma percepção e então faz uma única ação. Observe que também o próximo episódio não depende de nenhuma ação tomada anteriormente.

Em ambientes sequenciais uma decisão pode influenciar as ações futuras. Por não haver necessidade de planejamento é mais fácil a implementação de IAs episódicas que sequenciais. 

Ambiente Estático ou Dinâmico

Se o ambiente pode se alterar enquanto o agente está tomando uma decisão, então ele o ambiente é dinâmico, caso contrário é um ambiente estático. Ambientes estáticos são mais fáceis de serem trabalhados, já que não é necessário considerar que o ambiente está mudando enquanto o agente toma uma decisão. Por definição, qualquer jogo por turnos é um ambiente estático.

Ambiente discreto ou contínuo

A distinção se um ambiente é discreto ou contínuo é feita verificando como o tempo e as ações e percepções são feitas no ambiente.

Ambiente conhecido e desconhecido

Essa característica é mais relativa ao agente do que ao ambiente em si, porém deve ser considerada na hora que está sendo analisado o ambiente em que o agente atuará. Basicamente essa característica diz se um ambiente é conhecido pelo agente ou desconhecido pelo mesmo.

Exemplificando:

  • Como os seguintes jogos podem ser classificados?
    • League of Legends
    • Heartstone
    • Paciência
    • The Sims

Jogo Simétrico ou Assimétrico

Além dessas características formais que diferenciam os ambientes em que agentes tradicionais operam é importante considerar que em jogos o game design / level design já que ele tem grande influência no comportamento e percepção do agente que está sendo criado. Um jogo é considerado simétrico se todos estão utilizando o mesmo conjunto de regras. Já um jogo pode ser considerado assimétrico se o conjunto de regra muda conforme o jogador.

  • Exemplo de jogos simétricos: Xadrez, Poker, Damas, Uno, Civilization
  • Exemplo de jogo assimétricos: Mario, Contra, Tower Defenses…