Cos'è un agente basato su utility?

Definizione di agenti basati su utility

Un agente basato su utility è un sistema intelligente che utilizza una funzione di utility per prendere decisioni razionali massimizzando l'utilità attesa dei possibili risultati. La funzione di utility prevede matematicamente l'utilità di tutte le potenziali azioni che l'agente di intelligenza artificiale (AI) può intraprendere.

L'obiettivo di un agente basato su utility è massimizzare la funzione di utilità con ogni azione. Per raggiungere il suo obiettivo, l'agente AI utilizza i risultati della funzione di utility per scegliere l'azione successiva più vantaggiosa.

Componenti di agenti basati su utility

I componenti principali di un agente basato su utility sono:

  • Funzione di utility
     

  • Sensori
     

  • Modello interno
     

  • Meccanismo di selezione dell'azione
     

  • Attuatori

Funzione di utility

Una funzione di utility è un'equazione matematica che rappresenta come l'agente dovrebbe valutare il beneficio di qualsiasi possibile azione che possa intraprendere. Si tratta essenzialmente del sistema di valori dell'agente e rappresenta il modo in cui l'agente dà priorità ai fattori rilevanti quando fa delle scelte. 

Le utility assegnano un valore numerico a ciascun risultato di un'azione potenziale, quantificando le preferenze che l'agente dovrebbe mantenere. Gli agenti basati su utility utilizzano la funzione utility per negoziare ambienti complessi, valutare compromessi e massimizzare l'utilità delle loro scelte. 

Una buona funzione utility tiene conto di molteplici fattori, come la sicurezza, l'efficienza, l'allocazione delle risorse e i costi opportunità multi-obiettivo. La funzione di utility è la pietra angolare di un agente basato su utility ed è ciò che lo distingue dai diversi tipi di Agente AI.

Sensori

Gli agenti basati su utility utilizzano sensori per rilevare i loro ambienti reali. I sensori possono essere fisici, come le telecamere e i termometri, o digitali, come le connessioni API e le simulazioni. L'agentic AI perception utilizza algoritmi complessi per filtrare i dati ambientali e isolare i punti dati più importanti e rilevanti per prendere decisioni informate.

Modello interno

Gli agenti basati su utility mantengono un modello interno semplificato del loro ambiente reale. Il modello viene creato e aggiornato sulla base dei dati percepiti dai sensori dell'agente. Tracciando i dati ambientali nel tempo, il modello interno può anche dedurre dati non osservabili sull'ambiente dell'agente.

Modelli di transizione di stato

Molti agenti basati su utility utilizzano un modello di transizione di stato del mondo, che stabilisce gli stati possibili per l'ambiente e i criteri su quando e come cambia da uno all'altro. I modelli di transizione di stato mostrano come un sistema o un ambiente dinamico può cambiare nel tempo. Modelli di transizione di stato più avanzati calcolano la probabilità che l'ambiente cambi il suo stato attuale in qualsiasi momento. 

La funzione di utility assegna un valore a ogni stato e l'agente mira a spostare l'ambiente nello stato futuro con l'utilità più alta. I modelli di transizione di stato sono particolarmente utili in ambienti stocastici o dinamici, dove l'agente deve ragionare sulle probabilità piuttosto che sulle certezze.

Meccanismo di selezione delle azioni

Il meccanismo di selezione dell'azione è il processo decisionale dell'AI componente dell'agente. Basandosi sullo stato attuale del modello interno, l'agente genera una lista di tutte le azioni potenziali che può intraprendere. Gli algoritmi di selezione delle azioni utilizzano la funzione di utility per valutare tutte le diverse azioni e ottimizzare la scelta dell'agente per il massimo beneficio complessivo.

In alcune implementazioni moderne, i modelli linguistici di grandi dimensioni (LLM) sono utilizzati per ragionare su obiettivi complessi e di alto livello o per interpretare input ambigui prima di convertirli in calcoli di utility strutturati.

Attuatori

Gli attuatori, o elementi di prestazione, permettono all'agente di agire sul proprio ambiente. Gli attuatori fisici possono essere un ARM su una linea di produzione, un termostato che controlla la temperatura di una casa smart o un intero veicolo autonomo. Gli attuatori virtuali o digitali possono essere una connessione API, un'interfaccia di chatbot o un output software.

Il flusso di lavoro dell'agente basato su utility

Gli agenti basati su utility condividono un workflow interno standard che guida il loro comportamento:

  1. Percezione
     

  2. Modellazione interna
     

  3. Generazione di azioni
     

  4. Previsione dell'esito
     

  5. Valutazione dell'utility
     

  6. Selezione delle azioni

  7. Azione

Un diagramma che mostra come funziona un agente basato su utility

1. Percezione

L'agente utilizza i suoi sensori per rilevare l'ambiente e raccogliere dati. Questi dati vengono utilizzati per informare l'agente sul proprio stato e sullo stato attuale del suo ambiente.

2. Modellazione interna

Utilizzando le percezioni attuali dei suoi sensori, l'agente aggiorna il suo modello interno dell'ambiente in tempo reale. Ciò consente all'agente di comprendere l'ambiente circostante e tutti i fattori rilevanti che influenzano il suo processo decisionale.

3. Generazione di azioni

L'agente utilizza algoritmi di ricerca e ottimizzazione per generare una lista di potenziali azioni che può intraprendere, basandosi sullo stato del suo modello interno. Le tecniche di generazione e selezione delle azioni incoraggiano l'agente a prendere in considerazione idee nuove e a fare riferimento a esperienze passate con risultati comprovati per mantenere prestazioni affidabili. 
 
In pratica, molti agenti non generano esplicitamente una lista completa di azioni possibili. Piuttosto, utilizzano metodi di ottimizzazione o di rinforzo per valutare le probabili azioni migliori all'interno di uno spazio d'azione continuo.

4. Previsione del risultato

Per ogni azione generata nel passaggio precedente, l'agente utilizza il suo modello di transizione di stato per prevedere l'esito atteso. Il modello calcola la probabilità che un certo stato venga raggiunto quando l'agente compie un'azione specifica.

5. Valutazione dell'utility

Il meccanismo di selezione delle azioni dell'agente applica l'utility a ogni azione generata e al risultato probabile associato. La funzione restituisce un punteggio numerico di utility per ogni possibile scelta. Punteggi più alti rappresentano una maggiore utilità complessiva.

6. Selezione dell'azione

L'agente seleziona l'azione che porta all'esito con il maggior beneficio, determinato dalle preferenze dell'utility. Poiché l'obiettivo dell'agente è massimizzare la sua utility, il processo di selezione delle azioni porta l'agente ad agire in modo tale da favorire gli obiettivi del sistema AI in cui l'agente viene utilizzato.

7. Azione

L'agente seleziona l'azione che porta all'esito con il maggior beneficio, determinato dalle preferenze dell'utility. Poiché l'obiettivo dell'agente è massimizzare la sua utility, l'agente agisce in modo da promuovere gli obiettivi del sistema AI in cui viene utilizzato.

Casi d'uso degli agenti basati su utility

Gli agenti basati su utility sono ideali per compiti complessi con più direttive concorrenti. Questi possono includere: 

  • Case intelligenti: gli agenti basati su utility possono fungere da base per i sistemi di una casa intelligente, soppesando priorità come comfort, costi energetici e sostenibilità. 

  • Auto a guida autonoma: i veicoli autonomi pongono una serie di problemi complessi per gli ingegneri del machine learning. Le auto controllate da un agente devono avere a che fare con conducenti, pedoni, ostacoli, condizioni meteorologiche, chiusure stradali e molte altre condizioni in un ambiente dinamico. La risoluzione dei problemi in questo contesto richiede una funzione di utility ben fatta. 

  • Sanità: poiché possono gestire varie considerazioni per ottenere il massimo beneficio, gli agenti basati su utility potrebbero aiutare nella formulazione di piani di trattamento e nella gestione dei costi. 

  • Robotica: i robot devono anche valutare vari fattori per ottenere il massimo beneficio. I bot per le consegne devono tenere in considerazione molti degli stessi aspetti dei veicoli autonomi. 

  • Sistemi di raccomandazione e prezzi: la funzione utility permette all'agente di valutare fattori come le preferenze dell'utente, l'orario del giorno e dell'anno e le tendenze più ampie per intrattenere l'utente. Nei sistemi di AI generativa, un approccio basato su utility può guidare la generazione di contenuti che meglio si adattino all'intento dell'utente, al contesto e agli obiettivi di coinvolgimento a lungo termine. 

  • Prezzi: allo stesso modo, gli agenti basati su utility possono gestire sistemi di prezzi dinamici per massimizzare gli acquisti e i ricavi di un'azienda. 

  • Automazione della logistica e della supply chain: le supply chain complesse devono bilanciare fattori quali efficienza, costi, rischio, qualità e altro ancora. Le imprese possono personalizzare la funzione di utility di un agente logistico per dare priorità ai fattori più importanti per la propria attività e creare un sistema scalabile.

Agenti basati su utility e agenti basati su obiettivi a confronto

Gli agenti basati su utility e gli agenti basati su obiettivi sono entrambi utili in situazioni in cui l'agente deve lavorare per un risultato a lungo termine. Tuttavia, la differenza è che mentre gli agenti basati su utility cercano di massimizzare l'utilità delle loro scelte, gli agenti basati su obiettivi perseguono obiettivi specifici. Sono motivati dal raggiungimento degli obiettivi. 

Mentre un agente basato su obiettivi tratta tutti gli stati di raggiungimento degli obiettivi come ugualmente desiderabili, un agente basato su utility può differenziarli in base al grado, permettendo un processo decisionale più sfumato. Gli agenti basati su utility possono gestire molteplici obiettivi contrastanti e mantenere le prestazioni anche di fronte a risultati incerti.

Benefici degli agenti basati su utility

Gli agenti basati su utility sono resilienti, capaci di affrontare problemi complessi e ambienti in evoluzione offrendo risultati costanti. I benefici degli agenti basati su utility includono: 

  • Adattabilità: gli agenti basati su utility utilizzano funzioni di utility fluide invece di sistemi fissi basati su regole come le regole condizione-azione. Possono adattarsi a condizioni mutevoli e a nuovi compiti dove agenti riflessi semplici di basso livello e agenti riflessi basati su modelli potrebbero avere difficoltà contro la loro rigida programmazione basata su regole.
     

  • Flessibilità: gli agenti basati su utility possono destreggiarsi con successo tra priorità concorrenti per prendere decisioni che portano comunque a buoni risultati. Gli agenti basati su obiettivi si concentrano singolarmente su un obiettivo specifico e potrebbero avere difficoltà a prendere in considerazione altre direttive.
     

  • Affidabilità: le funzioni di utility portano gli agenti basati su utility a prendere decisioni razionali anche quando i risultati sono incerti. È probabile che le decisioni prese da questi agenti siano quelle che portano a risultati più vantaggiosi a lungo termine.

Limitazioni degli agenti di utility

Sebbene gli agenti basati su utility siano efficaci in molti contesti, non sono sempre la scelta migliore. Le loro limitazioni includono: 

  • Rigidità: senza un elemento di apprendimento, gli agenti basati su utility non possono apprendere dalle loro azioni e aggiornare autonomamente le loro funzioni di utility e i modelli di transizione di stato. L'aggiunta di un elemento di apprendimento permette loro di migliorare attraverso l'apprendimento per rinforzo ma li definisce più formalmente come agenti ibridi o addirittura agenti di apprendimento.
     

  • Requisiti computazionali: le funzioni di utility sono algoritmi complessi e la loro esecuzione continua richiede notevoli risorse di calcolo ed energia. Senza un calcolo sufficiente, gli agenti basati su utility potrebbero essere troppo lenti per l'uso in tempo reale in situazioni sensibili al tempo.
     

  • Complessità: le funzioni di utility efficaci sono difficili da progettare e un agente basato su Utility è efficace solo quanto la sua funzione di utility. Gli ingegneri del machine learning devono convertire con successo il loro sistema di valori in un'equazione numerica che costringa l'agente a fare le scelte appropriate.
     

  • Considerazioni etiche: la scelta basata su utility pone una preoccupazione etica. Chi determina il sistema di valori per l'agente (soprattutto, come nel caso delle auto a guida autonoma) se si tratta di un agente con la capacità di danneggiare potenzialmente gli esseri umani? Man mano che gli agenti intelligenti diventano più autonomi e diffusi, è fondamentale definire chi determina i loro sistemi di valori sottostanti e come tali valori si allineino all'etica sociale. 
     

Per superare alcune di queste sfide, gli agenti basati su utility sono spesso integrati in sistemi multi-agente, dove diversi agenti specializzati collaborano, condividono informazioni e bilanciano obiettivi in competizione. In tali architetture, la funzione di utility di ogni agente contribuisce alla strategia di ottimizzazione collettiva del sistema.

Techsplainers | Podcast

Ascolta: "Cos'è un agente basato su utility?"

Segui Techsplainers su Spotify e Apple Podcasts.

Autori

Ivan Belcic

Staff writer

Cole Stryker

Staff Editor, AI Models

IBM Think

Soluzioni correlate
Agenti AI per il Business

Crea, implementa e gestisci assistenti e agenti AI potenti che automatizzano workflow e processi con l'AI generativa.

    Scopri watsonx Orchestrate
    Soluzioni per agenti AI IBM

    Costruisci il futuro della tua azienda con soluzioni AI di cui puoi fidarti.

    Esplora le soluzioni basate su agenti AI
    Servizi AI di IBM Consulting

    I servizi di AI di IBM Consulting aiutano a reinventare il modo in cui le aziende lavorano con l'AI per la trasformazione.

    Esplora i servizi di intelligenza artificiale
    Prossimi passi

    Sia che tu scelga di personalizzare app e competenze precostituite o di creare e implementare servizi di agenti personalizzati utilizzando uno studio di AI, la piattaforma IBM watsonx è la soluzione che fa per te.

    1. Scopri watsonx Orchestrate
    2. Esplora watsonx.ai