Levels of Agency Demo #
Note: This page may be best viewed on a desktop browser.
The word agency is used quite often in discussing AI systems, but it can be difficult to pin down exactly what it actually means. In particular, seemingly identical actors may have different levels of agency while acting in an identical fashion. In order to demonstrate this, here are three agents in a toy environment. In each environment, there is an agent (blue) and some food (green). At each moment, each agent receives the same information - its own position, and the position of the food - and determines whether it should travel up, down, left or right. E.g.
function move(selfPos, foodPos) {
// calculate desired direction ...
return "up"; // down, left, right
}
Click "start" to see the agents move towards the food, and try to determine the different movement functions for each.
As you can see, the agents behave identically, moving towards the food. So, from this scenario, it is not possible to determine which agent is most "agentic".
Let's look at another example, which on the surface seems quite similar - the food can now be moved by clicking on the environment. Try altering the position of the food and running the simulation again.
It should be apparent that the first agent is extremely simple - in fact, it probably shouldn't be considered an "agent" at all. Here is the code for the first agent's behavior:
function move() {
return "right";
}
Notably, in the first simulation, this simple behavior was indistinguishable from the behavior of the other two, "smarter" agents.
Let's turn our attention to the second two agents now. In the second simulation, agents B and C act identically. To distinguish between the behavior of these agents, let's add another wrinkle to the environment - a wall. Click and drag on the environment to add a wall between the agent and the food, then run the simulation to see the results.
After playing with a few configurations of walls and food, it should be apparent that agent C has much more agency than agent B. In particular, it is capable of planning ahead to accomplish its goals, versus B which naively moves towards the food.
This is a toy example, but it demonstrates the idea that agency is not always obvious.
Takeaway
❗️ It is often difficult to determine which agent is most "agentic" without either:
- Knowing the internal logic of the agent
- Adding additional factors to the environment
Playground
Here is a final environment where you can write your own agent code and see how it behaves. Happy experimenting!
Page last updated: November 5, 2024