Agenti

Dal latino agentis. Un agente è qualcuno che agisce in nome di qualcun altro, con il potere di agire su delega.

Agenti autonomi

Un agente ha uno scopo preciso, è delegato, e sa cosa deve fare (ha il potere e permesso di agire). È un’entità computazionale autonoma collocata in un ambiente, che:

  • è in grado di percepire anche solo parzialmente l’ambiente in cui si trova
  • ha solo una rappresentazione parziale dell’ambiente
  • è in grado di agire nel suo ambiente
  • è guidato da una serie di tendenze
  • può interagire direttamente con altri agenti, portando alla creazione di strutture di più alto livello
  • possiede abilità e può fornire servizi
  • può essere in grado di riprodurre se stesso

Un agente è un’unità computazionale (programma software, robot) che può essere in grado di percepire ed agire nel suo ambiente e ha un comportamento autonomo che almeno parzialmente dipende dalla sua esperienza personale.

Gli stati di un agente possono essere costanti o variabili nel tempo.

Un agente è descritto da due paradigmi:

Paradigma debole

Un agente è un sistema:

  • autonomo
  • reattivo (percepisce l’ambiente e reagisce ai cambiamenti)
  • proattivo (comportamento diretto ad obiettivi)
  • abilità sociale (comunicazione con altri agenti/umani)

Paradigma forte

Alle proprietà del paradigma debole, si aggiungono proprietà più “umane”:

  • conoscenza
  • intenzioni
  • emozioni
  • senso di obbligo
  • scopi

Di un agente si guarda:

  • mobilità in un ambiente
  • verdicità, correttezza nel riprodurre le informazioni
  • benevolenza, correttezza nelle azioni
  • razionalitò, coerenza tra azioni e obiettivi

Esistono diverse classi di agenti:

  • Logic-based: decisione realizzata tramite deduzioni logiche
  • Reactive: decisione realizzata tramite forme di mappatura diretta della situazione all’azione
  • Belief-desire-intention (BDI): decisione dipende dalle manipolazioni delle strutture dati che rappresentano aspettative, desideri e intenzioni dell’agente
  • Layered: decisione realizzata attraverso vari livelli, ciascuno dei quali è più o meno esplicitamente dotato di capacità cognitive riguardo l’ambiente

Gli agenti vengono descritti tramite un comportamento teleonomico (diretto verso uno scopo) oppure riflessivo (regolato sulle proprie percezioni).

Si possono suddividere in agenti cognitivi, e agenti reattivi (embodied). Gli agenti cognitivi hanno una rappresentazione esplicita del mondo, e possono reagire basandosi su rappresentazioni del mondo, memorizzare situazioni da analizzare, pianificare il proprio comportamento, prevedere le conseguenze delle proprie azioni e costruire piani per ottimizzare il lavoro.

Gli agenti reattivi/embodied, invece, si basano su una rappresentazione simbolica del mondo, e possono reagire ad eventi, non possiedono piani prestabiliti e possono far emergere comportamenti complessi anche se modellati con regole semplici.

Sistemi multiagente

Un sistema multiagente è un sistema dove più agenti comunicano tra loro. Questi sistemi esistono perché un solo agente in grandi ambienti non è abbastanza, e le informazioni che può memorizzare sono limitate. Gli agenti embedded sono utilizzati nei sistemi di controllo automatici multi-agente, dove gli agenti si coordinano per svolgere il lavoro.

Swarm intelligence

La swarm intelligence è un gruppo di componenti espressi da un grande numero di individui, che collettivamente esegue un compito, e dove nessun singolo individuo può essere definito intelligente. L’intelligenza collettiva emerge dalle interazioni tra gli agenti, e quindi è il sistema che nel complesso lavora in modo intelligente. L’intelligenza è quindi valutata ad alto livello. In questo gruppo, gli individui non hanno una visione globale dell’ambiente in cui sono.

Sistema adattivo Spessosi basa su scelte casuali degli individui, in modo da raggiungere schemi di auto organizzazione, di sfuggire ai minimi locali e di reagire ai cambiamenti ambientali. Per questo nessuna configurazione è quella finale.

Un sistema parte da una situazione di disordine, per poi arrivare in una situazione di ordine dopo un certo tempo. I sistemi di swarm intelligence si possono auto organizzare e possono cambiare il comportamento globale per reagire agli stimoli ambientali. Ci possono essere 3 meccanismi:

  • individui: percepiscono l’ambiente e reagiscono ad un semplice meccanismo azione-reazione
  • interazioni: comunicazioni indirette
  • ambiente: ambiente in cui vivono gli individui e con cui possono interagire- Può avere proprietà proprie e processi attivi in grado di modificare le proprie caratteristiche

In un sistema così si possono trovare:

  • retroazioni positive di attivazione o rinforzo, per le quali il comportamento di un individuo può sollecitare altri individui a comportamenti simili, affinchè molti individui si comportino in maniera organizzata.
  • retroazioni negative di controllo o inibizione, per le quali il comportamento di un singolo può evitare che altri individui convergano sul medesimo comportamento così da impedire che il sistema raggiunga un equilibrio stabile.

Per raggiungere l’auto organizzazione sono necerrarie grandi masse di individui, in modo da esplorare vaste zone e tollerare malfunzionamenti locali. Dal momento che gli individui interagiscono in modo locale, si perde la definizione di risultato e la configurazione finale non può essere predetta.

  • Sincronizzazione: lucciole
  • Ordinamento: ant sorting
  • Procacciamento delle risorse: ant foraging
  • Movimento librato: boids/stormi
  • Costruzione magazzini: termiti

appevo