L'intelligence artificielle distribuée (IAD) est le domaine de l'intelligence artificielle qui concerne la collaboration entre plusieurs agents intelligents pour accomplir des tâches complexes.
Contrairement à un seul système centralisé prenant toutes les décisions, l'IA distribuée répartit la charge de travail et de prise de décision entre plusieurs agents autonomes. C'est un domaine en plein essor, doté d'un fort potentiel d'innovation.
Tirant parti de la puissance de la collaboration, l'IA distribuée peut contribuer à la résolution de problèmes complexes, et à créer des systèmes plus intelligents et plus adaptables.
On distingue :
Bien que le terme intelligence artificielle distribuée soit souvent considéré comme un synonyme pour le champ d'études des systèmes multi-agents, le terme intelligence artificielle Décentralisée peut lui être préféré afin d'éviter toute confusion avec l'intelligence distribuée (intelligence en essaim).
Les systèmes d'IA distribuée présente, notamment, quatre spécificités :
Ces propriétés lui permettent de résoudre des problèmes nécessitant le traitement de jeux de données très volumineux.
Ces programmes consistent en des nœuds de traitement d'apprentissage autonomes (agents), qui sont distribués, souvent à très grande échelle.
Chaque nœud peut agir indépendamment. Les solutions partielles sont intégrées en communiquant entre les nœuds, souvent de manière asynchrone. Ces systèmes sont robustes et élastiques.
Ils ne nécessitent pas que toutes les données pertinentes soient agrégées en un seul endroit, contrairement aux systèmes d'intelligence artificielle monolithiques ou centralisés, qui ont des nœuds de traitement étroitement couplés et géographiquement proches.
En conséquence, ils fonctionnent souvent sur des sous-échantillons de très grands ensembles de données.
Enfin, l'ensemble de données source peut changer ou être mis à jour au cours de l'exécution d'un système.
L'intelligence artificielle distribuée est utilisée pour résoudre des problèmes complexes d'apprentissage, de planification et de prise de décision. La parallélisation des programmes permet d'exploiter le calcul à grande échelle et la distribution spatiale des ressources informatiques.
L'IA distribuée est utilisée dans une variété d'applications, dont par exemple :