Agentes Inteligentes: Tipos, Arquiteturas e Ambientes

Classificado em Artes e Humanidades

Escrito em em português com um tamanho de 8,1 KB

O que é um Agente?

Agente

Qualquer entidade que está imersa ou situada num ambiente (físico, virtual ou simulado), percebe o seu ambiente através de sensores e age sobre ele através de atuadores. Possui objetivos próprios, explícitos ou implícitos, e escolhe as suas ações em função das suas perceções para atingir esses objetivos.

Agente Inteligente

É um software desenvolvido para automatizar e executar uma tarefa numa rede para o utilizador. Trata-se de uma ferramenta que economiza tempo no monitoramento e na recolha de informações solicitadas pela empresa. O utilizador define os parâmetros da missão que o agente executará autonomamente, comunicando os seus resultados.

Agente Racional

É aquele que faz a melhor coisa possível, seguindo o princípio da racionalidade: dada uma sequência percetiva, o agente escolhe, segundo os seus conhecimentos, as ações que melhor satisfazem o seu objetivo.

Limitações de um Agente Racional:

  • Sensores
  • Atuadores
  • Raciocinador

Propriedades e Descrição de Agentes

Propriedades Comuns

  • Autonomia (IA): Capacidade de operar sem intervenção humana direta.
  • Adaptabilidade e Aprendizagem (IA): Habilidade de se adaptar a mudanças e aprender com a experiência.
  • Comunicação e Cooperação (IA): Capacidade de interagir com outros agentes.
  • Personalidade (IA): Características que definem o comportamento do agente.
  • Continuidade Temporal: Existência contínua ao longo do tempo.
  • Mobilidade: Capacidade de se mover entre diferentes ambientes ou sistemas.

Modelo de Descrição PAGE

Um agente pode ser descrito pelo modelo PAGE:

  • P (Perceptions): Perceções que o agente recebe do ambiente.
  • A (Actions): Ações que o agente pode executar.
  • G (Goals): Objetivos que o agente visa alcançar.
  • E (Environment): Ambiente no qual o agente opera, incluindo outros agentes em sistemas multiagentes.

Ambientes de Agentes

Classes de Ambientes

  • Físico: Robôs.
  • Software: Softbots.
  • Realidade Virtual: Simulação do ambiente físico, habitado por softbots e avatares.

Propriedades de Ambientes

  • Acessível vs. Inacessível: Um ambiente é acessível quando os sensores do agente conseguem perceber o seu estado completo.
  • Determinista vs. Estocástico: Num ambiente determinista, o próximo estado é completamente determinado pelo estado atual e pela ação do agente.
  • Episódico vs. Sequencial: Num ambiente episódico, a experiência é dividida em episódios independentes, onde cada um consiste em perceber e agir.
  • Estático vs. Dinâmico: Um ambiente estático não muda enquanto o agente delibera sobre a sua ação. Um ambiente semiestático não muda, mas a pontuação (score) do agente pode mudar.
  • Discreto vs. Contínuo: Um ambiente discreto possui um número finito de perceções e ações. Num ambiente contínuo, esses valores mudam num espectro contínuo.

Arquiteturas de Agentes

De forma simplificada, um agente pode ser visto como um mapeamento de uma sequência percetiva para uma ação.

Agente de Tabela

Mapeia diretamente uma perceção para uma ação com base numa tabela explícita. Questiona-se se é verdadeiramente racional.

Limitações:

  • Exige tabelas muito grandes, mesmo para problemas simples (ex.: xadrez com 30^100 estados).
  • A construção da tabela pode ser inviável por falta de conhecimento ou tempo.
  • Não possui autonomia nem flexibilidade.

Ambiente ideal: Acessível, determinista, episódico, estático, discreto e de pequena escala.

Agente Reativo (ou de Reflexo Simples)

Opera com base em regras de condição-ação (ex.: se a velocidade > 60, então multar), oferecendo uma representação inteligível, modular e eficiente.

Desvantagens:

  • Não armazena o histórico de perceções.
  • Possui pouca autonomia.

Ambiente ideal: Essencial em ambientes dinâmicos. Funciona melhor em ambientes acessíveis, episódicos e de pequena escala.

Agente Reativo com Estado Interno

Mantém um estado interno para armazenar informações sobre o passado, permitindo lidar com ambientes parcialmente acessíveis. Exemplo: Tamagotchi.

Desvantagens:

  • Possui pouca autonomia, pois não tem objetivos explícitos.
  • Não encadeia regras de forma complexa.

Ambiente ideal: Determinista e de pequena escala.

Agente Cognitivo (Baseado em Objetivos)

Utiliza informações sobre os seus objetivos para escolher ações. É mais flexível e autônomo, pois pode adaptar as suas ações se o objetivo mudar.

Vantagens e Desvantagens:

  • Vantagens: Mais flexível e autônomo.
  • Desvantagens: Mais complicado e ineficiente; não lida bem com objetivos conflitantes.

Ambiente ideal: Determinista. Exemplo: alcançar o xeque-mate no xadrez.

Agente Otimizador (Baseado em Utilidade)

Escolhe a ação que maximiza uma função de utilidade, permitindo tomar decisões racionais mesmo com objetivos conflitantes (ex.: segurança vs. velocidade para um motorista).

Desvantagem:

  • Não possui adaptabilidade inerente.

Ambiente ideal: Sem restrições específicas.

Agente que Aprende

É capaz de melhorar o seu desempenho ao longo do tempo através da aprendizagem, adaptando-se a ambientes desconhecidos. Exemplo: um motorista que aprende a navegar numa cidade sem mapa.

Vantagem:

  • Possui alta adaptabilidade.

Ambiente ideal: Sem restrições específicas.

Inteligência Coletiva e IA Distribuída

Inteligência Coletiva

Refere-se a sistemas onde agentes simples, em conjunto, resolvem problemas complexos, com ou sem consciência do objetivo global. Proposta pelo cientista Marvin Minsky, esta área está em crescimento, e o próprio ambiente pode ser modelado como um agente.

IA Distribuída

Existem dois tipos principais de sistemas de IA Distribuída:

  • Resolução Distribuída de Problemas: Os agentes têm consciência do objetivo global e uma divisão clara de tarefas. Exemplos: robótica clássica, busca na web.
  • Sistemas Multiagentes: Os agentes não têm necessariamente consciência do objetivo global nem uma divisão clara de tarefas. Exemplos: n-puzzle, futebol de robôs.

Desenvolvimento e Aplicação

Como Desenvolver um Software Inteligente

  1. Projeto:
    • Modelar a tarefa em termos de ambiente, perceções, ações, objetivos e utilidade.
    • Identificar o tipo de ambiente.
    • Identificar a arquitetura de agente adequada à tarefa e ao ambiente.
  2. Implementação:
    • Desenvolver o simulador de ambientes.
    • Implementar os componentes do agente.
    • Testar o desempenho com diferentes instâncias do ambiente.

Por que Usar a Metáfora de Agentes?

A abordagem baseada em agentes é vantajosa porque:

  • Fornece metodologias de desenvolvimento para sistemas inteligentes, estendendo as da engenharia de software.
  • Oferece uma visão unificadora das várias subáreas da IA.
  • Ajuda a incorporar a IA em sistemas computacionais tradicionais.
  • Permite um melhor tratamento da interação com o ambiente.
  • Permite um tratamento natural da IA distribuída.

Entradas relacionadas: