CAPÍTULO III APELACIÓN Y QUEJA
SUSTENTAN EL TRASLADO
and tasks
A decomposition rule encodes a way of breaking down a complex problem into a number of simpler sub-problems in such a way that solving all of the sub-problems will solve the complex problem. This section describes how decomposition rules use sub-goals or sub-tasks to solve goals or tasks.
3.2.1
Decomposition rules can encode how to decompose
goals or tasks
The complex problem that a decomposition usually breaks down is either a goal or a task. Both kinds of decomposition rules are useful to an agent. A rule that decomposes a goal is directly useful to an agent that wants to satisfy that goal because it provides a way of simplifying the problem. A rule that decomposes a task is also useful, although less directly. It pro- vides the agent with a way of achieving a particular state change which it can in turn use to transform the current state into one that satisfies the goal it is trying to achieve. A rule that decomposes tasks will tend to be more specific than one that decomposes goals. This is because a task will always include a precondition that will not only describe the state change but also constrain the state in which the task, and by extension the rule, is appli- cable; a rule that decomposes goals does not need to have a precondition and can be more general.
For any given goal or task that the agent knows how to achieve, the agent usually knows multiple different decomposition rules for achiev- ing it. This is because the best way to achieve a goal or task changes in different states, and a different decomposition rule is most appropriate. To allow the agent to select the most appropriate decomposition rule for achieving a goal or task in a given state, each decomposition rule has a precondition specifying what states it is applicable in.
3.2.2
Goal decomposition rules are too constrained
A goal decomposition rule specifies a way of achieving a particular goal in a particular state. However, goals are very rarely completely unachieved. Usually, some aspects of the goal are already satisfied in the current state. For example, if the agent’s goal is a hot cup of milk, then it most likely will not need to make a cup or create any milk because those objects will already exist; instead, it will only need to combine them and alter their
properties. Decomposition rules describe how to satisfy the unachieved parts of goals.
A goal decomposition rule describes how to achieve a particular goal, and so its precondition must specify not only the unachieved parts of the goal, but also all of the achieved parts that will remain unchanged. For example, the rule for heating a cup of coffee in the microwave would in- clude in its precondition the constraints that the agent is trying to satisfy the goal of having a hot cup of coffee, and that the coffee is cold in the current state. This would make the rule inapplicable for any other goal. However, the change achieved by the decomposition rule could also be useful for satisfying other goals that are unachieved in the same way. For example, the method for heating wet laundry in the microwave is the same as for heating a cup of coffee.
Because goal decomposition rules are constrained to apply to particu- lar goals, the agent would need to learn separate, redundant decomposi- tion rules for each kind of object it would want to heat. Rules that decom- pose tasks specify only the change that occurs, and so they can be re-used for different goals that are unachieved in the same way.
3.2.3
Decomposition rules decompose complex problems
into actions, sub-tasks, or sub-goals
The standard way that a rule decomposes a goal or a task is by breaking it down into a sequence (that is usually ordered) of actions, sub-tasks, or sub-goals.
The simplest kind of decomposition rule decomposes the problem of satisfying a goal or achieving a task into a sequence of directly executable atomic actions. In effect, they are almost identical to macro actions, with the only difference being that their sequence of atomic actions does not have to be completely ordered. Clearly, these rules by themselves do not scale very well to more complex problems. It is not feasible to store a
separate directly executable plan of atomic actions for every goal or task that the agent could be interested in and for every possible state the agent could find itself in.
A more sophisticated decomposition rule decomposes a goal or task into a sequence of sub-tasks. Rather than committing to a particular se- quence of atomic actions to execute, the rule specifies the sequence of state changes (and their order) that the agent needs to achieve to achieve the main task or to satisfy the main goal. Because the decomposition rule only specifies what the required state changes are and not how to achieve them, the agent can make use of any other rules it may have that specify how to decompose tasks to achieve the necessary state changes. The agent can use further decomposition rules to achieve sub-tasks and sub-sub-tasks, breaking the original problem down into increasingly smaller and simpler parts.
A final kind of decomposition rule is one that decomposes a goal or task into a sequence of sub-goals. Such a decomposition rule makes even fewer commitments than one that decomposes into sub-tasks. Not only does it not specify particular atomic actions to execute, it also does not specify state changes. Instead, it merely specifies what the agent should make sure is true (or make sure is false) in intermediate states without assuming what sequence of changes would actually be performed.
3.2.4
Rules that decompose into sub-tasks over-commit to
future states
Decomposition rules that break a problem down into a sequence of sub- tasks or state changes make more commitments to future states than rules that break a problem down into a sequence of sub-goals. Because tasks specify a state change, they inherently make assumptions about the state they will be achieved in. A rule that decomposes into sub-tasks will, in essence, make predictions about the states the sub-tasks will be achieved
in. However, the Human Planning Domain is fundamentally unpredictable: at any moment in time an unexpected and potentially disruptive event can occur. Furthermore, depending on the complexity of the problem being decomposed, the time between the decomposition of the parent rule and the beginning of the execution of its last sub-task can be arbitrarily long. This makes predictions about future states particularly unreliable.
If an agent strives to achieve a state change in a state that is different than the one it predicted when it generated the sub-task, then the state change will often no longer be the best way (or even a possible way) of achieving what the agent wants. For example, if the agent planned to achieve the sub-task of boiling some water with a kettle in order to make a cup of tea, but when it got to the kitchen it noticed that there was already a pot of boiling water on the stove, then to achieve the necessary state- change specified in the sub-task, it would needlessly boil water with a kettle rather than making use of the water in the pot.
3.2.5
Rules that decompose tasks into sub-goals are most
appropriate to the Human Planning Domain
In the HPD the agent often needs to achieve rich, complex goals that may be partially unsatisfied in many different ways. This makes decomposi- tion rules that decompose tasks preferable because they need to encode only a single non-redundant method for achieving one particular state change making them much easier to learn.
The HPD is also unpredictable and unexpected events can occur at any time. This makes decomposition rules that decompose into sub-tasks un- reliable because they depend on the predictions of future states of their sub-tasks. Decomposition rules that decompose into sub-goals are prefer- able because they do not over-commit to the future and so are less likely to be derailed by unexpected events. It is better to compare a sub-goal to the current state when it comes time to satisfy it rather than trying to perfectly
predict the appropriate state change an arbitrary time in the future.
When an agent tries to satisfy a goal, it can use the difference between the current state and the goal to determine the desired state change. The agent can then search through all of its decomposition rules to find the most appropriate rule that will achieve this state change, and it is not lim- ited to searching only through the decomposition associated with the goal it is trying to satisfy. The decomposition, in turn, does not make unneces- sary assumption about the uncertain future states, and only specifies the sub-goals the agent should strive to satisfy. Both HOPPER and TADPOLE use rules of this form. Section 3.5 describes how these rules are repre- sented in more detail.
3.2.6
Previous systems have decomposed goals and proce-
dures
Previous systems that have used decomposition rules for planning have not made a clear distinction between tasks and goals.
HTNs [38] use rules that decompose procedures1 into sub-procedures
to generate plans. A procedure is a task decomposition rule that does not explicitly specify the task’s effects. These rules are most appropriate for deterministic domains and are not suitable for TADPOLE and HOPPER.
As explained above, decomposing into sub-tasks and, by extension, into sub-procedures is not appropriate in an unpredictable domain be- cause such rules over-commit to future states. However, this has not been an issue for HTNS because they have mostly been applied to deterministic and predictable domains where future states can be predicted perfectly.
The critical problem with decomposing procedures in a nondetermin- istic domain is that they do not specify their effects. This means that when it is achieving a sub-procedure, the agent has no way of knowing what
1HTNs refer to procedures as tasks, but I use the term procedures to distinguish them
sub-effect it is trying to achieve. If an unexpected event were to derail the agent’s plan, it would have no way of adjusting the plan to deal with the disruption. Not specifying what the effects of procedures are also means the agent cannot use such rules in novel situations to achieve a particu- lar effect. Furthermore, these rules are very difficult to learn. The agent has no way of knowing whether a new decomposition it learns is a new method for achieving the same procedure, or whether the new decompo- sition corresponds to a completely new procedure.
Because TADPOLE learns its decomposition rules by observing a teacher and HOPPER executes them in an unpredictable domain, HTN rules are not the appropriate representation for them.
Icarus [31] has been applied in very reactive domains and the repre- sentation of its decomposition rules more closely matches that of the rules used by TADPOLE and HOPPER. However, although Icarus uses task de- composition rules to specify the effects of atomic actions, it decomposes goals into sub-goals at higher levels of abstraction. As explained above, goal decomposition rules are difficult to learn and contain redundant in- formation making them an inappropriate representation for the decompo- sition rules used by TADPOLE and HOPPER.