Agent intelligent - Intelligent agent

En intelligence artificielle , un agent intelligent ( IA ) est tout ce qui perçoit son environnement, prend des mesures de manière autonome afin d'atteindre des objectifs et peut améliorer ses performances grâce à l' apprentissage ou utiliser des connaissances . Ils peuvent être simples ou complexes — un thermostat est considéré comme un exemple d'agent intelligent, tout comme un être humain, tout comme tout système répondant à la définition, comme une entreprise , un État ou un biome .

Diagramme d'agent réflexe simple

Les principaux manuels d'IA définissent « l'intelligence artificielle » comme « l'étude et la conception d'agents intelligents », une définition qui considère le comportement orienté vers un objectif comme l'essence de l'intelligence. Les agents orientés vers un but sont également décrits à l'aide d'un terme emprunté à l' économie , « agent rationnel ».

Un agent a une "fonction objective" qui encapsule tous les objectifs de l'IA. Un tel agent est conçu pour créer et exécuter tout plan qui, une fois terminé, maximisera la valeur attendue de la fonction objectif. Par exemple, un agent d' apprentissage par renforcement a une « fonction de récompense » qui permet aux programmeurs de façonner le comportement souhaité de l'IA, et le comportement d'un algorithme évolutif est façonné par une « fonction de forme physique ».

Les agents intelligents en intelligence artificielle sont étroitement liés aux agents en économie , et des versions du paradigme de l'agent intelligent sont étudiées en sciences cognitives , en éthique , en philosophie de la raison pratique , ainsi que dans de nombreuses modélisations socio-cognitives interdisciplinaires et simulations sociales informatiques .

Les agents intelligents sont souvent décrits schématiquement comme un système fonctionnel abstrait similaire à un programme informatique. Les descriptions abstraites des agents intelligents sont appelées agents intelligents abstraits ( AIA ) pour les distinguer de leurs implémentations dans le monde réel. Un agent intelligent autonome est conçu pour fonctionner en l'absence d'intervention humaine. Les agents intelligents sont également étroitement liés aux agents logiciels (un programme informatique autonome qui effectue des tâches pour le compte des utilisateurs).

Définition de l'intelligence artificielle

L'informatique définit la recherche en IA comme l'étude des agents intelligents . Le principal manuel d'IA définit un « agent » comme :

  • "Tout ce qui peut être considéré comme percevant son environnement à travers des capteurs et agissant sur cet environnement à travers des actionneurs"

définit un « agent rationnel » comme :

  • "Un agent qui agit de manière à maximiser la valeur attendue d'une mesure de performance basée sur l'expérience et les connaissances passées."

et définit le domaine de la recherche en « intelligence artificielle » comme :

  • "L'étude et la conception d'agents rationnels"

Une définition similaire de l'IA est donnée par Kaplan et Haenlein : « La capacité d'un système à interpréter correctement des données externes, à apprendre de ces données et à utiliser ces apprentissages pour atteindre des objectifs et des tâches spécifiques grâce à une adaptation flexible. »

Padgham & Winikoff (2005) conviennent qu'un agent intelligent est situé dans un environnement et répond (en temps opportun, mais pas nécessairement en temps réel) aux changements de l'environnement. Cependant, les agents intelligents doivent également poursuivre de manière proactive des objectifs de manière flexible et robuste. Les souhaits facultatifs incluent que l'agent soit rationnel et qu'il soit capable d' analyser la croyance-désir-intention .

Avantages de cette définition

Philosophiquement, il évite plusieurs lignes de critique. Contrairement au test de Turing , il ne fait en aucun cas référence à l'intelligence humaine. Ainsi , il n'y a pas besoin de discuter si elle est ( par exemple, « vrai » vs « simulé » intelligence « synthétique » intelligence vs « de artificielle »), et ne signifie pas qu'une telle machine a un esprit , la conscience ou vraie compréhension (c. -à- cela n'implique pas " l' hypothèse forte de l'IA " de John Searle ). Il n'essaie pas non plus de tracer une ligne de démarcation nette entre les comportements « intelligents » et les comportements « inintelligents » - les programmes n'ont besoin d'être mesurés qu'en fonction de leur fonction objective.

Plus important encore, il présente un certain nombre d'avantages pratiques qui ont contribué à faire avancer la recherche sur l'IA. Il fournit un moyen fiable et scientifique de tester des programmes ; les chercheurs peuvent comparer directement ou même combiner différentes approches de problèmes isolés, en se demandant quel agent est le mieux à même de maximiser une « fonction de but » donnée. Cela leur donne également un langage commun pour communiquer avec d'autres domaines — comme l'optimisation mathématique (qui est définie en termes de « buts ») ou l' économie (qui utilise la même définition d'un « agent rationnel »).

Fonction objectif

Un agent auquel est assignée une « fonction d'objectif » explicite est considéré comme plus intelligent s'il entreprend systématiquement des actions qui maximisent avec succès sa fonction d'objectif programmée. L'objectif peut être simple ("1 si l'IA gagne une partie de Go , 0 sinon") ou complexe ("Réaliser des actions mathématiquement similaires à celles qui ont réussi dans le passé"). La « fonction d'objectif » encapsule tous les objectifs sur lesquels l'agent est amené à agir ; dans le cas des agents rationnels, la fonction encapsule également les compromis acceptables entre la réalisation d'objectifs contradictoires. (La terminologie varie ; par exemple, certains agents cherchent à maximiser ou à minimiser une « fonction d'utilité », une « fonction objectif » ou une « fonction de perte ».)

Les objectifs peuvent être explicitement définis ou induits. Si l'IA est programmée pour « l' apprentissage par renforcement », elle a une « fonction de récompense » qui encourage certains types de comportements et en punit d'autres. Alternativement, un système évolutif peut induire des objectifs en utilisant une « fonction de fitness » pour muter et répliquer de préférence des systèmes d'IA à haut score, de la même manière que les animaux ont évolué pour désirer de manière innée certains objectifs tels que trouver de la nourriture. Certains systèmes d'IA, tels que le plus proche voisin, au lieu de raisonner par analogie, ces systèmes ne reçoivent généralement pas d'objectifs, sauf dans la mesure où les objectifs sont implicites dans leurs données d'entraînement. De tels systèmes peuvent toujours être évalués si le système sans objectif est conçu comme un système dont le « objectif » est d'accomplir sa tâche de classification étroite.

Les systèmes qui ne sont pas traditionnellement considérés comme des agents, tels que les systèmes de représentation des connaissances, sont parfois englobés dans le paradigme en les présentant comme des agents qui ont pour objectif (par exemple) de répondre aux questions aussi précisément que possible ; le concept d'« action » est ici étendu pour englober « l'acte » de donner une réponse à une question. En tant qu'extension supplémentaire, les systèmes pilotés par mimétisme peuvent être présentés comme des agents qui optimisent une "fonction d'objectif" en fonction de la précision avec laquelle l'IA réussit à imiter le comportement souhaité. Dans les réseaux contradictoires génératifs des années 2010, un composant « encodeur »/« générateur » tente d'imiter et d'improviser la composition de texte humain. Le générateur essaie de maximiser une fonction encapsulant dans quelle mesure il peut tromper un composant antagoniste « prédicteur »/« discriminateur ».

Alors que les systèmes GOFAI acceptent souvent une fonction d'objectif explicite, le paradigme peut également être appliqué aux réseaux de neurones et à l' informatique évolutive . L'apprentissage par renforcement peut générer des agents intelligents qui semblent agir de manière à maximiser une « fonction de récompense ». Parfois, plutôt que de définir la fonction de récompense pour qu'elle soit directement égale à la fonction d'évaluation de référence souhaitée, les programmeurs d'apprentissage automatique utiliseront la mise en forme de la récompense pour donner initialement à la machine des récompenses pour les progrès incrémentiels de l'apprentissage. Yann LeCun a déclaré en 2018 que "La plupart des algorithmes d'apprentissage que les gens ont mis au point consistent essentiellement à minimiser une fonction objective". Les échecs AlphaZero avaient une fonction objective simple ; chaque victoire compte pour +1 point et chaque défaite compte pour -1 point. Une fonction objective pour une voiture autonome devrait être plus compliquée. L'informatique évolutive peut faire évoluer des agents intelligents qui semblent agir de manière à maximiser une "fonction d'aptitude" qui influence le nombre de descendants que chaque agent est autorisé à quitter.

La conception AIXI théorique et non calculable est un agent au maximum intelligent dans ce paradigme ; Cependant, dans le monde réel, l'IA est limitée par un temps et des ressources matérielles limités, et les scientifiques se font concurrence pour produire des algorithmes capables d'obtenir des scores de plus en plus élevés aux tests de référence avec du matériel du monde réel.

Classes d'agents intelligents

Classement de Russel et Norvig

Russell & Norvig (2003) regroupent les agents en cinq classes en fonction de leur degré d'intelligence et de capacité perçue :

Agents réflexes simples

Agent réflexe simple

Les agents réflexes simples n'agissent que sur la base de la perception actuelle, ignorant le reste de l'histoire de la perception. La fonction agent est basée sur la règle condition-action : "si condition, alors action".

Cette fonction d'agent ne réussit que lorsque l'environnement est entièrement observable. Certains agents réflexes peuvent également contenir des informations sur leur état actuel qui leur permettent de faire abstraction des conditions dont les actionneurs sont déjà déclenchés.

Les boucles infinies sont souvent inévitables pour de simples agents réflexes opérant dans des environnements partiellement observables. Remarque : Si l'agent peut randomiser ses actions, il peut être possible de s'échapper des boucles infinies.

Agents réflexes basés sur des modèles

Agent réflexe basé sur un modèle

Un agent basé sur un modèle peut gérer des environnements partiellement observables. Son état actuel est stocké à l'intérieur de l'agent en maintenant une sorte de structure qui décrit la partie du monde qui ne peut pas être vue. Cette connaissance de « comment fonctionne le monde » est appelée un modèle du monde, d'où le nom « agent basé sur un modèle ».

Un agent réflexe basé sur un modèle doit maintenir une sorte de modèle interne qui dépend de l'histoire de la perception et reflète ainsi au moins certains des aspects non observés de l'état actuel. L'historique des perceptions et l'impact de l'action sur l'environnement peuvent être déterminés en utilisant le modèle interne. Il choisit alors une action au même titre que l'agent réflexe.

Un agent peut également utiliser des modèles pour décrire et prédire les comportements d'autres agents dans l'environnement.

Agents basés sur des objectifs

Agent basé sur un modèle et basé sur des objectifs

Les agents basés sur des objectifs étendent davantage les capacités des agents basés sur des modèles, en utilisant des informations sur les « objectifs ». Les informations sur les objectifs décrivent les situations qui sont souhaitables. Cela fournit à l'agent un moyen de choisir parmi plusieurs possibilités, en sélectionnant celle qui atteint un état cible. La recherche et la planification sont les sous-domaines de l'intelligence artificielle consacrés à la recherche de séquences d'action qui atteignent les objectifs de l'agent.

Agents utilitaires

Agent basé sur un modèle, basé sur des utilitaires

Les agents basés sur des buts ne distinguent que les états buts et les états non buts. Il est également possible de définir une mesure du degré de désirabilité d'un état particulier. Cette mesure peut être obtenue grâce à l'utilisation d'une fonction d'utilité qui mappe un état à une mesure de l'utilité de l'état. Une mesure de performance plus générale devrait permettre une comparaison des différents états du monde en fonction de leur degré de satisfaction des objectifs de l'agent. Le terme utilitaire peut être utilisé pour décrire à quel point l'agent est « heureux ».

Un agent rationnel basé sur l'utilité choisit l'action qui maximise l'utilité attendue des résultats de l'action - c'est-à-dire ce que l'agent s'attend à obtenir, en moyenne, étant donné les probabilités et les utilités de chaque résultat. Un agent utilitaire doit modéliser et suivre son environnement, des tâches qui ont impliqué de nombreuses recherches sur la perception, la représentation, le raisonnement et l'apprentissage.

Agents d'apprentissage

Un agent d'apprentissage général

L'apprentissage a l'avantage de permettre aux agents d'opérer dans un premier temps dans des environnements inconnus et de devenir plus compétents que leurs seules connaissances initiales ne le permettent. La distinction la plus importante se situe entre l'« élément d'apprentissage », qui est chargé d'apporter des améliorations, et l'« élément de performance », qui est responsable de la sélection des actions externes.

L'élément d'apprentissage utilise les commentaires du « critique » sur la façon dont l'agent se comporte et détermine comment l'élément de performance, ou « acteur », doit être modifié pour faire mieux à l'avenir. L'élément de performance est ce que nous avons précédemment considéré comme l'agent tout entier : il perçoit et décide des actions.

Le dernier composant de l'agent d'apprentissage est le "générateur de problèmes". Il est chargé de proposer des actions qui conduiront à des expériences nouvelles et informatives.

Le classement de Weiss

Weiss (2013) définit quatre classes d'agents :

  • Agents basés sur la logique - dans lesquels la décision concernant l'action à effectuer est prise par déduction logique ;
  • Agents réactifs - dans lesquels la prise de décision est mise en œuvre sous une certaine forme de cartographie directe de la situation à l'action ;
  • Agents de croyance-désir-intention - dans lesquels la prise de décision dépend de la manipulation de structures de données représentant les croyances, les désirs et les intentions de l'agent ; et enfin,
  • Architectures en couches - dans lesquelles la prise de décision est réalisée via diverses couches logicielles, dont chacune raisonne plus ou moins explicitement sur l'environnement à différents niveaux d'abstraction.

Hiérarchies d'agents

Pour remplir activement leurs fonctions , les Agents Intelligents sont aujourd'hui normalement regroupés dans une structure hiérarchique contenant de nombreux « sous-agents ». Des sous-agents intelligents traitent et exécutent des fonctions de niveau inférieur. Pris ensemble, l'agent intelligent et les sous-agents créent un système complet qui peut accomplir des tâches ou des objectifs difficiles avec des comportements et des réponses qui affichent une forme d'intelligence.

Généralement, un agent peut être construit en séparant le corps en capteurs et actionneurs, et de sorte qu'il fonctionne avec un système de perception complexe qui prend la description du monde comme entrée pour un contrôleur et envoie des commandes à l'actionneur. Cependant, une hiérarchie de couches de contrôleur est souvent nécessaire pour équilibrer la réaction immédiate souhaitée pour les tâches de bas niveau et la lenteur du raisonnement sur des objectifs complexes de haut niveau.

Fonction mandataire

Un programme d'agent simple peut être défini mathématiquement comme une fonction f (appelée « fonction d'agent ») qui mappe chaque séquence de perceptions possible à une action possible que l'agent peut effectuer ou à un coefficient, un élément de rétroaction, une fonction ou une constante qui affecte les actions éventuelles :

La fonction d'agent est un concept abstrait car elle pourrait incorporer divers principes de prise de décision comme le calcul de l' utilité des options individuelles, la déduction sur les règles logiques, la logique floue , etc.

L' agent de programme , à la place, mappe chaque perception possible à une action.

Nous utilisons le terme percept pour désigner les entrées de perception de l'agent à un instant donné. Dans les figures suivantes, un agent est tout ce qui peut être considéré comme percevant son environnement à travers des capteurs et agissant sur cet environnement à travers des actionneurs.

Applications

Un exemple d' assistant en ligne automatisé fournissant un service client automatisé sur une page Web.

Les agents intelligents sont appliqués comme des assistants en ligne automatisés , où ils fonctionnent pour percevoir les besoins des clients afin d'effectuer un service client individualisé . Un tel agent peut consister essentiellement en un système de dialogue , un avatar , ainsi qu'un système expert pour fournir une expertise spécifique à l'utilisateur. Ils peuvent également être utilisés pour optimiser la coordination de groupes humains en ligne. Hallerbach et al. a discuté de l'application d'approches basées sur des agents pour le développement et la validation de systèmes de conduite automatisés via un jumeau numérique du véhicule en cours d'essai et une simulation de trafic microscopique basée sur des agents indépendants. Waymo a créé un environnement de simulation multi-agents Carcraft pour tester des algorithmes pour les voitures autonomes . Il simule les interactions de la circulation entre les conducteurs humains, les piétons et les véhicules automatisés. Le comportement des gens est imité par des agents artificiels basés sur des données de comportement humain réel. L'idée de base d'utiliser la modélisation à base d'agents pour comprendre les voitures autonomes a été discutée dès 2003.

Définitions et utilisations alternatives

« agent intelligent » est également souvent utilisé comme un terme marketing vague, parfois synonyme d’« assistant personnel virtuel ». Certaines définitions du 20e siècle caractérisent un agent comme un programme qui aide un utilisateur ou qui agit au nom d'un utilisateur. Ces exemples sont appelés agents logiciels , et parfois un « agent logiciel intelligent » (c'est-à-dire un agent logiciel intelligent) est appelé « agent intelligent ».

Selon Nikola Kasabov, les systèmes d'IA devraient présenter les caractéristiques suivantes :

  • S'adapter progressivement aux nouvelles règles de résolution de problèmes
  • Adaptez-vous en ligne et en temps réel
  • Sont en mesure d'analyser eux - mêmes en termes de comportement, l' erreur et le succès.
  • Apprendre et s'améliorer grâce à l'interaction avec l'environnement ( incarnation )
  • Apprenez rapidement à partir de grandes quantités de données
  • Disposer de capacités de stockage et de récupération d' exemples basées sur la mémoire
  • Avoir des paramètres pour représenter la mémoire à court et long terme, l'âge, l'oubli, etc.

Voir également

Remarques

Références en ligne

Autres références

Liens externes