Un agent autonome exerce des fonctions au sein d'un environnement pour atteindre des objectifs précis, sans être dirigé à le faire. Certains programmes informatiques agissent comme des agents autonomes, tout comme la robotique de pointe, des exemples de la vie artificielle, et les virus informatiques. De nombreux chercheurs effectuent des travaux dans ce domaine pour développer une meilleure compréhension des agents et de leurs capacités potentielles ainsi que des applications. Des revues spécialisées et des conférences annuelles offrent un moyen d'échange pour permettre aux gens de partager des informations et des résultats de recherche.
Distinction entre un agent autonome et programmes informatiques peut être difficiles. Dans certains cas, il y a chevauchement et les lignes de la définition peut être floue. En règle générale, il est nécessaire pour un agent d'être en mesure d'utiliser le raisonnement pour interagir avec un système. Cela inclut la possibilité à l'information sens, de le traiter et, dans certains cas, de le manipuler. Un agent autonome doit également comporter délibérément pour atteindre un but particulier.
Un exemple d'un agent autonome dans le logiciel pourrait être quelque chose comme un programme de gestion de la chaîne d'approvisionnement. Le programme porte sur les aspects de la chaîne d'approvisionnement et peuvent s'engager dans des activités telles que la commande et l'acheminement des fournitures, la planification du personnel, et en demandant camions. Toutes ces activités faciliter un objectif plus large du maintien de la chaîne d'approvisionnement se déplaçant d'une manière organisée. Cela diffère d'un système automatisé qui peut réagir de façon simpliste, peut-être il ordonne de nouvelles fournitures lorsque l'usine commence à s'épuiser, par exemple, en réponse à un déclencheur dans la programmation.
Plusieurs agents peuvent agir au sein d'un système unique et peut être coopérative ou indépendants les uns des autres. En robotique, les interactions des agents autonomes peuvent être importantes. Ils peuvent utiliser des capteurs pour ramasser l'entrée visuelle, les sons, et d'autres intrants de l'environnement. Cette information peut être coordonnée l'ensemble du système pour effectuer des tâches telles que la saisie et la manipulation des objets. Les systèmes peuvent aussi apprendre de leurs expériences pour développer des fonctions plus raffinés et de travailler les uns avec les autres pour atteindre les objectifs.
Les applications de cette recherche sont particulièrement importants dans des domaines comme la vie artificielle, le développement de la robotique complexes, et les programmes informatiques de pointe. Un agent véritablement autonome ne nécessite pas de sens à partir d'une source externe comme un programmeur ou un autre utilitaire, et peut effectuer des tâches complexes. L'automatisation de cette nature peuvent économiser des heures des travailleurs, selon le programme peut être en mesure de compléter les activités de manière efficace sans la participation des travailleurs. Automatisé de facturation médicale, par exemple, génère des factures et des documents sans avoir besoin d'un membre du personnel expérimenté pour gérer cette tâche.