Um agente baseado em utilidade é um sistema inteligente que utiliza uma função de utilidade para tomar decisões racionais, maximizando a utilidade esperada de resultados possíveis. A função de utilidade prevê matematicamente a utilidade de todas as possíveis ações que o agente de inteligência artificial (IA) pode realizar.
O objetivo de um agente baseado em utilidade é maximizar a função de utilidade com cada ação. Para promover seu objetivo, o agente de IA utiliza os resultados da função de utilidade para escolher a próxima ação mais benéfica.
Os principais componentes de um agente baseado em utilidade são:
Função de utilidade
Sensores
Modelo interno
Mecanismo de seleção de ações
Atuadores
A função de utilidade é uma equação matemática que representa como o agente deve avaliar o benefício de quaisquer ações possíveis que possa adotar. É essencialmente o sistema de valores do agente e representa como o agente prioriza fatores relevantes ao fazer escolhas.
As funções de utilidade atribuem um valor numérico a cada resultado de uma ação potencial, quantificando as preferências que o agente deve manter. Agentes baseados em utilidade usam a função de utilidade para negociar ambientes complexos, avaliar compensações e maximizar a utilidade de suas escolhas.
Uma boa função de utilidade leva em conta várias considerações, como segurança, eficiência, alocação de recursos e custos de oportunidade multiobjetivos. A função de utilidade é a base de um agente baseado em utilidade e é o que os separa de diferentes tipos de agentes de IA.
Agentes baseados em utilidade utilizam sensores para perceber seus ambientes do mundo real. Os sensores podem ser físicos (como câmeras e termômetros) ou digitais (como conexões e simulações de APIs). A percepção da IA agêntica utiliza algoritmos complexos para filtrar dados ambientais e isolar os pontos de dados mais importantes e relevantes para decisões informadas.
Agentes baseados em utilidade mantêm um modelo interno simplificado de seu ambiente real. O modelo é criado e atualizado com base nos dados percebidos pelos sensores do agente. Ao acompanhar os dados ambientais ao longo do tempo, o modelo interno também pode inferir dados não observáveis sobre o ambiente do agente.
Muitos agentes baseados em utilidade utilizam um modelo de transição de estado do mundo, que estabelece os possíveis estados para o ambiente e os critérios para quando e como ele muda de um para outro. Os modelos de transição de estado mostram como um sistema ou ambiente dinâmico pode mudar com o tempo. Modelos de transição de estado mais avançados calculam a probabilidade de o ambiente mudar seu estado atual a qualquer momento.
A função de utilidade atribui um valor a cada estado, e o agente visa migrar o ambiente para o estado futuro com a maior utilidade. Os modelos de transição de estado são especialmente úteis em ambientes estocásticos ou dinâmicos, onde o agente deve raciocinar sobre probabilidades em vez de certezas.
O mecanismo de seleção de ação é o componente de tomada de decisão de IA do agente. Com base no estado atual do modelo interno, o agente gera uma lista de todas as possíveis ações que pode executar. Os algoritmos de seleção de ações utilizam a função de utilidade para avaliar todas as diferentes ações e otimizar a escolha do agente para obter o máximo benefício geral.
Em algumas implementações modernas, grandes modelos de linguagem (LLMs) são usados para raciocinar sobre objetivos complexos e de alto nível ou para interpretar entradas ambíguas antes de convertê-las em cálculos estruturados de utilidade.
Os atuadores, ou elementos de desempenho, permitem que o agente atue em seu ambiente. Os atuadores físicos podem ser um braço robótico em uma linha de fabricação, um termostato controlando a temperatura de uma casa inteligente ou um veículo autônomo inteiro. Os atuadores virtuais ou digitais podem ser uma conexão de API, interface de chatbot ou saída de software.
Agentes baseados em utilidade compartilham um fluxo de trabalho interno padrão que orienta seu comportamento:
Percepção
Modelagem interna
Geração de ações
Previsão de resultados
Avaliação de utilidade
Seleção de ações
Ação
O agente usa seus sensores para perceber seu ambiente e coletar dados. Esses dados são usados para informar ao agente sobre seu próprio estado e o estado atual de seu ambiente.
Usando as percepções atuais de seus sensores, o agente atualiza seu modelo interno de seu ambiente em tempo real. Isso dá ao agente uma compreensão de seu ambiente e quaisquer fatores relevantes que afetam seu processo de tomada de decisão.
O agente usa algoritmos de pesquisa e otimização para gerar uma lista de possíveis ações que pode realizar, com base no estado de seu modelo interno. As técnicas de geração e seleção de ações incentivam o agente a considerar ideias novas e usar experiências passadas com resultados comprovados como referência para manter um desempenho confiável.
Na prática, muitos agentes não geram explicitamente uma lista completa de ações possíveis. Em vez disso, usam métodos de otimização ou reforço para avaliar as prováveis melhores ações dentro de um espaço de ações contínuo.
Para cada ação gerada na etapa anterior, o agente utiliza seu modelo de transição de estado para prever o resultado esperado. O modelo calcula a probabilidade de um determinado estado ser alcançado quando o agente executa uma ação específica.
O mecanismo de seleção de ação do agente aplica a função de utilidade a cada ação gerada e ao resultado provável associado. A função retorna uma pontuação de utilidade numérica para cada escolha possível. Pontuações mais altas representam maior utilidade geral.
O agente seleciona a ação que leva ao resultado com o maior benefício geral, conforme determinado pelas preferências da função de utilidade. Como o objetivo do agente é maximizar sua função de utilidade, o processo de seleção de ações leva o agente a agir de forma a atender aos objetivos do sistema de IA com o qual o agente está sendo usado.
O agente seleciona a ação que leva ao resultado com o maior benefício geral, conforme determinado pelas preferências da função de utilidade. Como o objetivo do agente é maximizar sua função de utilidade, o agente age de forma a atender aos objetivos do sistema de IA com o qual o agente está sendo usado.
Agentes baseados em utilidade são ideais para tarefas complexas com várias diretrizes concorrentes. Isso pode incluir:
Casas inteligentes: agentes baseados em utilidade podem alimentar os sistemas inteligentes em uma casa inteligente, avaliando prioridades como conforto, custos de energia e sustentabilidade.
Carros autônomos: os veículos autônomos representam uma série de problemas complexos para engenheiros de aprendizado de máquina. Os carros controlados pelo agente devem lidar com motoristas humanos, pedestres, obstáculos, clima, fechamentos de estradas e muitas outras condições em um ambiente dinâmico. A solução de problemas nesse cenário exige uma função de utilidade bem elaborada.
Saúde: por conseguirem conciliar diversas considerações em busca do máximo benefício, os agentes baseados em utilidade podem auxiliar na formulação de planos de tratamento e no gerenciamento de custos.
Robótica: os robôs também precisam avaliar vários fatores na busca do máximo benefício. Os bots de entrega têm muitas das mesmas considerações que os veículos autônomos.
Sistemas de recomendação e preços: a função de utilidade permite que o agente pondere fatores como as preferências do usuário, hora do dia e do ano e tendências maiores para manter o usuário entretido. Em sistemas de IA generativa, uma abordagem baseada em utilidade pode orientar a geração de conteúdo que melhor corresponda à intenção do usuário, ao contexto e aos objetivos de engajamento de longo prazo.
Sistemas de preços: da mesma forma, os agentes baseados em utilidade podem gerenciar sistemas de preços dinâmicos para maximizar compras e receitas para uma empresa.
Automação da logística e da cadeia de suprimentos : as cadeias de suprimentos complexas devem equilibrar fatores como eficiência, custos, risco, qualidade e outros. As empresas podem adaptar a função de utilidade de um agente logístico para priorizar os fatores mais importantes para a empresa dele e criar um sistema escalável.
Agentes baseados em utilidade e agentes baseados em objetivos são úteis em situações em que o agente deve trabalhar em direção a um resultado de longo prazo. No entanto, a diferença é que, enquanto agentes baseados em utilidade buscam maximizar a utilidade de suas escolhas, agentes baseados em objetivos buscam objetivos específicos. São motivados pela realização de objetivos.
Enquanto um agente baseado em objetivos trata todos os estados de alcance de objetivos como igualmente desejáveis, um agente baseado em utilidade pode diferenciar entre eles por grau, permitindo uma tomada de decisão mais sutil. Agentes baseados em utilidade podem gerenciar múltiplos objetivos conflitantes e manter o desempenho mesmo diante de resultados incertos.
Agentes baseados em utilidade são resilientes, capazes de navegar por problemas complexos e ambientes em mudança, enquanto entregam resultados consistentes. Os benefícios dos agentes baseados em utilidade incluem:
Adaptabilidade: agentes baseados em utilidade utilizam funções de utilidade fluidas em vez de sistemas fixos baseados em regras, como as regras de condição-ação. Eles podem se adaptar às mudanças nas condições e a novas tarefas em que os agentes de reflexo simples de nível inferior e os agentes de reflexo baseados em modelos podem ter dificuldades com a programação rígida baseada em regras.
Flexibilidade: agentes baseados em utilidade podem lidar com sucesso com prioridades concorrentes para tomar decisões que ainda levam a bons resultados. Agentes baseados em objetivos concentram-se de forma singular em um objetivo específico e podem ter dificuldade em considerar outras diretrizes.
Confiabilidade: as funções de utilidade levam os agentes baseados em utilidade a tomar decisões racionais mesmo quando os resultados são incertos. As decisões tomadas por esses agentes provavelmente serão as que levam a resultados mais benéficos no longo prazo.
Embora os agentes baseados em utilidade sejam capazes em muitos ambientes, eles nem sempre são a melhor escolha. Suas limitações incluem:
Rigidez: sem um elemento de aprendizado, os agentes baseados em utilidade não podem aprender com suas ações e atualizar suas funções de utilidade e modelos de transição de estado de forma autônoma. Adicionar um elemento de aprendizado permite que eles melhorem por meio do aprendizado por reforço, mas os define mais formalmente como agentes híbridos ou mesmo agentes de aprendizado.
Demandas computacionais: as funções de utilidade são algoritmos complexos, e executá-las continuamente requer computação e energia significativas. Sem computação suficiente, os agentes baseados em utilidade podem ser muito lentos para uso em tempo real em situações urgentes.
Complexidade: funções de utilidade eficazes são difíceis de projetar, e um agente baseado em utilidade é tão eficaz quanto sua função de utilidade. Os engenheiros deaprendizado de máquina devem converter com sucesso seu sistema de valores em uma equação numérica que force o agente a fazer escolhas apropriadas.
Considerações éticas: a escolha baseada em utilidade representa uma preocupação ética. Quem determina o sistema de valores para o agente (especialmente, como acontece com os carros autônomos) se for um agente com a capacidade de potencialmente prejudicar seres humanos? À medida que os agentes inteligentes se tornam mais autônomos e difundidos, é crítico definir quem determina seus sistemas de valores subjacentes e como esses valores se alinham com a ética social.
Para superar alguns desses desafios, agentes baseados em utilidade são frequentemente integrados em sistemas multiagentes, onde diversos agentes especializados colaboram, compartilham informações e equilibram objetivos conflitantes. Nessas arquiteturas, a função de utilidade de cada agente contribui para a estratégia de otimização coletiva do sistema.
Crie, implemente e gerencie assistentes e agentes de IA potentes que automatizam fluxos de trabalho e processos com a IA generativa.
Construa o futuro do seu negócio com soluções de IA em que você pode confiar.
Os serviços de IA da IBM Consulting ajudam a reinventar a forma como as empresas trabalham com IA para gerar transformação.