← Reference · Nestor G Pestelos Jr · Print this page
Artificial Intelligence · Agent Theory
Agent (Russell and Norvig Definition)
The textbook definition of an agent, its components, its rivals, and its mapping onto LLM-based agents.
Reference entry · last updated September 8, 2026
An agent, in the definition given by Stuart Russell and Peter Norvig in Artificial Intelligence: A Modern Approach, is anything that can be viewed as perceiving its environment through sensors and acting upon that environment through actuators. [1] The definition is deliberately broad. It covers a thermostat, a chess program, a robot, and a person, and it says nothing about intelligence, autonomy, or goals. Those properties are added by later definitions and by the notion of a rational agent. This entry covers the definition itself and how it applies to the LLM-based agents that the term now usually refers to.
1. First Principles: The Definition and Its Parts
The definition names four things. An environment is the world the agent operates in. Sensors deliver percepts, the agent's inputs at a given instant. Actuators carry out actions that change the environment. The agent is whatever sits between them and chooses actions from percepts. [1]
Russell and Norvig separate two further ideas. The agent function is an abstract mapping from every possible percept sequence to an action. It is a mathematical description of behavior. The agent program is the concrete implementation that runs on some physical architecture and computes that function. Two programs can implement the same agent function, and a lookup table could in principle implement any of them, so the interesting engineering question is how compactly a program can realize a good function. [1]
The wording has changed across editions. The first edition (1995) used "effectors"; Franklin and Graesser quote it in that form from page 33. Later editions, including the fourth (2020), use "actuators". The structure of the definition is otherwise unchanged. [1, 2]
The definition can be read as a minimal statement of the perception-action loop:
- The environment is in some state.
- Sensors produce a percept from that state.
- The agent program selects an action given the percept and, usually, the percept history.
- Actuators apply the action, changing the environment state.
Nothing in the loop requires the agent to be intelligent, to learn, or to have goals. That is why Russell and Norvig immediately introduce rationality as a separate criterion.
2. Rational Agents and the Performance Measure
A rational agent is one that, for each possible percept sequence, selects the action expected to maximize a performance measure, given the evidence in the percept sequence and whatever built-in knowledge it has. The performance measure is defined by the designer over environment states, not over the agent's own opinion of how well it is doing. Rationality is judged on expected outcomes with the information available, so an agent can be rational and still fail when the environment withholds information. [1]
Russell and Norvig summarize the design problem with the acronym PEAS: Performance measure, Environment, Actuators, Sensors. Specifying the four fixes the task before any program is written. They also classify environments along axes such as fully versus partially observable, deterministic versus stochastic, episodic versus sequential, static versus dynamic, discrete versus continuous, and single-agent versus multi-agent. The hardest combination, partially observable and stochastic and sequential and dynamic and continuous and multi-agent, describes the textbook's taxi-driving example and many real settings in which an agent acts. [1]
3. Russell and Norvig's Classification of Agent Programs
The textbook orders agent programs by how much internal structure they use to choose an action. [1, 6]
Simple reflex agent:
Selects an action from the current percept alone, using condition-action rules. It has no memory of earlier percepts.
Model-based reflex agent:
Maintains an internal state that tracks aspects of the world it cannot currently see, updated with a model of how the world changes and how its own actions affect it.
Goal-based agent:
Adds goal information and chooses actions that lead toward goal states, which may require search or planning over sequences of actions.
Utility-based agent:
Replaces binary goals with a utility function over states, so it can trade off conflicting goals and act under uncertainty by maximizing expected utility.
Learning agent:
Adds a learning element that improves the performance element from feedback, plus a critic that supplies that feedback and a problem generator that proposes exploratory actions.
The classification is about the agent program, not the agent function. Any of the five can implement the same external behavior in principle; they differ in what they must store and compute to do so.
4. Rival Definitions from the 1990s
Franklin and Graesser's 1996 survey collected the definitions then in use and argued that the Russell and Norvig version, taken alone, admits almost any program, because whether something "perceives" and "acts" depends on what is chosen as the environment. They proposed a stricter definition: an autonomous agent is a system situated within and a part of an environment that senses that environment and acts on it, over time, in pursuit of its own agenda and so as to effect what it senses in the future. The additions are persistence over time and an agenda of the agent's own. [2]
The same survey quotes three other definitions from the period. [2]
- Maes (1995): autonomous agents are computational systems that inhabit some complex dynamic environment, sense and act autonomously in it, and by doing so realize a set of goals or tasks for which they are designed.
- Hayes-Roth (1995): intelligent agents continuously perform three functions: perception of dynamic conditions in the environment, action to affect those conditions, and reasoning to interpret perceptions, solve problems, draw inferences, and determine actions.
- Wooldridge and Jennings (1995): a hardware or, more usually, software-based computer system with autonomy, social ability, reactivity, and pro-activeness. Franklin and Graesser quote this from page 2 of the original paper; the paper itself is cited here through their survey.
Each rival definition adds a property that Russell and Norvig leave out: goals, reasoning, autonomy, or social interaction. Russell and Norvig's choice to keep the base definition minimal and move those properties into rationality and the agent-program taxonomy is what makes it durable. A new kind of agent can be described in its terms before anyone agrees on how autonomous or intelligent it is.
5. Mapping the Definition onto LLM-Based Agents
Grootendorst and Alammar adopt the Russell and Norvig definition as the foundation for LLM-based agents on the grounds that the fundamentals of agents stay fixed while the working definition in industry keeps changing. They map the four parts as follows. [3]
| Russell and Norvig term | LLM-based agent component |
|---|---|
| Agent program | A reasoning language model, extended by memory, tools, and planning modules. |
| Actuators | The tools the model can request: search, code execution, file edits, APIs. |
| Sensors | The model's input channels, including image and audio understanding where the model supports them. |
| Environment | The digital surroundings the tools act on, and the user, who usually initiates the task with a request. |
Two refinements matter in practice. First, the language model by itself is only the agent program's core. A model with memory and tools is what Anthropic calls an "augmented LLM"; Grootendorst and Alammar treat that as a building block and reserve "agent" for the system that also plans and reflects. [3, 4] Second, the model cannot operate the actuators directly. It emits text that expresses an intent to call a tool, and host software parses that text, decides whether the call is permitted, executes it, and returns the result. In Russell and Norvig's terms, the actuator is the host's tool layer, not the model's output. [3]
Read this way, a typical coding agent is a goal-based or utility-based agent in the taxonomy above, with a learned rather than hand-written agent program, operating in a partially observable, sequential, dynamic environment.
The placement of LLM-based agents within the five-type taxonomy is this entry's reading, not a claim made by either cited textbook.
6. What the Definition Does Not Settle
Autonomy. The definition says nothing about how much freedom the agent has. Grootendorst and Alammar treat autonomy as a spectrum, from a model that executes a single step while choosing among tools to a loop with no guardrails, and count both as agents as long as the system shows goal-directed behavior and makes decisions. Mitchell and colleagues argue that fully autonomous agents should not be developed at all. Both positions are compatible with the Russell and Norvig definition, which is one reason it remains the neutral starting point. [3, 5]
Where the agent boundary lies. Franklin and Graesser's objection still applies. Whether a chat model with retrieval "acts on" its environment depends on what counts as the environment. The stricter definitions, and the augmented-LLM distinction above, exist to draw that line.
Evaluation. The performance measure is defined by the designer, and the definition does not say how to measure it for a system whose actions are sequences of tool calls. That is the subject of agent evaluation, which judges outcomes and trajectories separately.