Third edition of Artificial Intelligence: foundations of computational agents, Cambridge University Press, 2023 is now available (including the full text).
9.3.2 Policies
A policy specifies what the agent should do under all contingencies. An agent wants to find an optimal policy - one that maximizes its expected utility.
A policy consists of a decision function for each decision variable. A decision function for a decision variable is a function that specifies a value for the decision variable for each assignment of values of its parents. Thus, a policy specifies what the agent will do for each possible value that it could sense.
- Always bring the umbrella.
- Bring the umbrella only if the forecast is "rainy."
- Bring the umbrella only if the forecast is "sunny."
There are eight different policies, because there are three possible forecasts and there are two choices for each of the forecasts.
- Never check for smoke, and call only if there is a report.
- Always check for smoke, and call only if it sees smoke.
- Check for smoke if there is a report, and call only if there is a report and it sees smoke.
- Check for smoke if there is no report, and call when it does not see smoke.
- Always check for smoke and never call.
In this example, there are 1,024 different policies (given that each variable is binary). There are 4 decision functions for CheckSmoke. There are 28 decision functions for Call; for each of the 8 assignments of values to the parents of Call, the agent can choose to call or not.