Sistemi Multiagente

 

Un sistema multiagente o (sistema ad agenti multipli) è un insieme di agenti situati in un certo ambiente ed interagenti tra loro mediante una opportuna organizzazione. Un agente è cioè un'entità caratterizzata dal fatto di essere, almeno parzialmente, autonoma, sia essa un programma informatico, un robot, un essere umano, e così via.

Oggetto di ricerche da lunga data in intelligenza artificiale, i sistemi ad agenti multipli costituiscono un'interessante tipologia di modellazione di società, e hanno a questo riguardo vasti campi d'applicazione, che si estendono fino alle scienze umane e sociali (economia, sociologia, etc.).

 

Origine ed aspetti tecnici

I sistemi multiagente possono essere visti come crocevia di diverse discipline:

  • l'intelligenza artificiale per gli aspetti decisionali relativi all'agente;
  • l'intelligenza artificiale distribuita per la delocalizzazione dell'esecuzione;
  • i sistemi distribuiti per ciò che concerne le interazioni tra agenti;
  • l'ingegneria del software per quanto riguarda l'evoluzione verso componenti sempre più dotati di autonomia.

 

Nel campo della ricerca

Si distinguono generalmente tre tipi d'utilizzo: la simulazione di fenomeni complessi, la risoluzione di problemi, e la progettazione di programmi.

Si utilizzano i sistemi multiagente per simulare le interazioni esistenti tra agenti autonomi. Si cerca di determinare l'evoluzione del sistema al fine di prevederne l'organizzazione risultante. Per esempio, in sociologia, si possono modellare i differenti agenti che compongono una certa comunità. Attraverso la messa a punto dei vincoli, si può cercare di comprendere quale sarà la combinazione più efficace per pervenire al risultato atteso (ad es., la costruzione d'un ponte). Il fattore importante è il comportamento dell'insieme, non certo il comportamento individuale. Le applicazioni esistenti hanno riguardato la fisica delle particelle (agente = particella elementare), la chimica (agente = molecola), la biologia cellulare (agente = cellula), l'etologia (agente = animale), la sociologia e l'etnologia (agente = essere umano). L'autonomia consente in questi casi di simulare il comportamento esatto di ogni entità.

L'intelligenza artificiale distribuita è nata per risolvere i problemi di complessità dei grossi programmi monoblocco dell'intelligenza artificiale: l'esecuzione è pertanto non concentrata ma distribuita, ma il controllo rimane centralizzato. Al contrario, nei sistemi ad agenti multipli, ciascun agente possiede un controllo totale sul suo comportamento. Per risolvere un problema complesso, talvolta è in effetti più semplice concepire programmi relativamente piccoli (gli agenti) interagenti con un unico grosso programma monoblocco. L'autonomia permette al sistema di adattarsi dinamicamente ai cambiamenti imprevisti che intervengono nell'ambiente.

Allo stesso tempo, l'ingegneria del software si è evoluta in direzione di componenti sempre più autonomi. I sistemi ad agenti multipli possono essere visti come un raccordo tra ingegneria del software ed intelligenza artificiale distribuita, con l'apporto rilevante dei sistemi distribuiti. In rapporto ad un oggetto, un agente può prendere iniziative, può rifiutarsi di obbedire ad una richiesta, può spostarsi, etc.: l'autonomia consente al progettista di concentrarsi sul lato umanamente comprensibile del software.

 

fonte: Wikipedia

primi sui motori con e-max