In computer science, an autonomous agent is a software program that acts for a user or another program in a relationship of agency, deriving its name from the Latin agere (to do). Unlike conventional programs that are invoked on demand, autonomous agents activate themselves, perceive their context, and decide when to perform actions to accomplish tasks. They are defined by their behavior rather than by methods and attributes, and they may operate alone or interact with other agents and people. Common examples include chatbots, shopping bots, and embodied systems like robots, which may exhibit human-like qualities such as natural language understanding.
The concept of an agent provides a way to describe a complex software entity capable of acting with a degree of autonomy. While all agents are programs, not all programs are agents. Key distinctions include persistence (running continuously and deciding when to act), autonomy (task selection and goal-directed behavior without human intervention), social ability (communicating and coordinating with other components), and reactivity (perceiving and responding to the environment). These attributes differentiate agents from arbitrary programs, objects, and expert systems, which lack such flexible and proactive behavior.
Historical Development
The intellectual roots of autonomous agents trace back to Hewitt's Actor Model (1977), which described self-contained, interactive, and concurrently-executing objects with internal state and communication capabilities. Software agent systems evolved directly from Multi-Agent Systems (MAS), which themselves emerged from Distributed Artificial Intelligence (DAI), Distributed Problem Solving (DPS), and Parallel AI. John Sculley's 1987 "Knowledge Navigator" video popularized the vision of end-users interacting with agents, though early implementations often failed due to top-down approaches. From the 1990s onward, the range of agent types broadened significantly, encompassing web-based applications and search engines.
Core Characteristics
Autonomous agents are not strictly invoked for a task but activate themselves. They may reside in a wait status on a host, perceiving context, and transition to run status when starting conditions are met. They do not require user interaction and may invoke other tasks, including communication. The concept of agency implies authority to decide which actions are appropriate. Agents can be autonomous or work collaboratively with other agents or people, and they may be distributed across physically distinct computers or mobile, relocating their execution onto different processors.
Types and Applications
Buyer agents, also known as shopping bots, travel across networks such as the internet to retrieve information about goods and services. They work efficiently for commodity products like CDs, books, and electronic components, and are often optimized for digital payment services. Other types include distributed agents that execute on separate machines and multi-agent systems where agents work together to achieve objectives that a single agent could not accomplish alone. In modern contexts, autonomous agents increasingly leverage large language models and generative AI to perform complex reasoning and task execution, with companies like OpenAI and Anthropic developing agentic frameworks.
Impact on Organizations and Users
Software agents can automate complex or repetitive tasks, offering significant benefits to end users. Implementing agents for administrative requirements often increases work contentment, as it frees individuals from mundane formalities and allows greater engagement in substantive tasks. This can support self-controlled work with reduced hierarchical interference. However, organizational and cultural impacts must be considered. Trust affliction, skills erosion, privacy attrition, and social detachment are potential downsides. Users delegating important tasks may lose information literacy skills, and agents require complete user profiles, raising privacy concerns. Over-reliance on agents for communication can lead to social detachment, where users view the world through their agents' perspectives.
Distinctions from Related Concepts
Intelligent agents, also known as rational agents, are not limited to computer programs; they may include machines, human beings, or communities of humans capable of goal-directed behavior. This broader definition contrasts with intelligent software agents, which are specifically computational. Expert systems differ from agents in that they are not coupled to their environment, not designed for reactive or proactive behavior, and do not consider social ability. Objects are less autonomous than agents, which exhibit flexible behavior and maintain at least one thread of control, often more. These distinctions help clarify the unique role of autonomous agents in artificial intelligence and machine learning research, where they represent a shift from passive tools to proactive digital actors.