• No se han encontrado resultados

83En nuestra vida cotidiana, ocurren cambios en la materia que nos rodea

PROYECCIÓN CURRICULAR DE DÉCIMO AÑO

83En nuestra vida cotidiana, ocurren cambios en la materia que nos rodea

Dornhege et al. [40] introduce a feature that they call semantic attachments, Semantic attachments allow for numeric and other types of non-propositional state variables, whose values are computed by calling a function. These functions are “external” to the planner in the sense that their meanings are not defined in the planning model (i.e. the way those values are computed is opaque to the rest of the planner). They return the new values for a given input without having any more information about the planning domain and problem than the input that they get. This allows us to integrate efficient (separately developed) tools, such as motion planners, to calculate values of a subset of variables. Semantic attachments are, therefore, a framework for integrating a planner employing well-known planning techniques such as heuristic state-space search (also called high-level, symbolic or task planner by the authors), with low-level solvers or reasoners for sub-problems.

An example from robotics is a class of problems which involve combining high-level planning (i.e. deciding on which actions to perform) with motion planning. These examples include taking the dishes out of the washer and stacking them to dry, building a model of a house or rearranging furniture in a room to a specific configuration. While symbolic planner is capable of generating a high-level plan, it is incapable of solving the sub-problems, such as determining the specific motion trajectories, which can be computed using specialised tools. The task planner is suitable for deciding on which objects to move, while the motion planner is suitable for finding a path through which to move (i.e. deciding onhow the chosen actions are performed).

The function is invoked to provide information to the higher level planner during the planning process and only if relevant to the planner. There are two kinds of semantic attachments –condition checkers, which tests whether some action precondition is satisfied, and effect applicators, which compute changes to state variables. For example, an effect applicator for a “put down” action in a domain where a robot is manipulating objects, a low-level rea- soner would be called to determine the new position of an object and update the state variables representing the position (i.e. three variables representing the position and three variables representing the orientation). There is a requirement that both the condition checker and effect applicator are deter- ministic. The condition checker must always terminate and return a truth value, which should always be the same for identical parameters and world states (in that sense condition checkers compute derived predicates). Effect applicators must always terminate and result, for identical parameters and states, in identical settings of the state variables they act on. The authors, however, stated that they want to remove this restriction and enable the planner to branch over an initially unknown, but finite number of outcomes. An interesting domain illustrating the concept is an extension of the Lo- gistics domain from International Planning Competition. The domain mod- els a logistics problem, in which trucks are required to deliver packages from one place to another. In the original formulation, each truck can carry un- limited number of packages. This problem becomes more challenging if the trucks have defined capacities, the packages have defined sizes and we allow the trucks to carry as many packages as they can fit. Both storage spaces and the sizes of the packages are three dimensional, having height, length and width. To determine whether an arrangement of packages can fit in a truck, it is not enough to simply sum up their volumes and see whether it is less than the capacity (it is easy to see that two cube-shaped boxes of volume v would not fit into a cube shaped space of volume 2v). Although symbolic planners cannot solve the three-dimensional packing problem, there are, however, specialised algorithms that are capable of computing this. The

2.4. SEMANTIC ATTACHMENTS AND PMT 35

action of picking up a package might have a precondition with a semantic attachment that uses a solver to determine whether all of the packages can fit into the truck. The modelling of this domains has a number of parallels with our use of numeric constraints that we will describe in Chapter 3 – the specialised solver, which is unaware of the planning aspect of the problem, is used to determine the validity of a given state. In the extended logistics domain, the state is defined by the discrete variables determining which truck or city is which package in, while in the PSR domain used in Chapter 3, the discrete variables are the positions of the switches. As a side effect, the solver also computes values of the secondary variables. In this case those are the exact positions of the packages inside the truck, while in PSR those are the variables like flows of power in the lines, phase angles on the busbars and generations in the generators.

While semantic attachments are similar to our use of LP solver when dealing with numeric state constraints or Piecentini’s use of solvers for power networks, there is an important difference. With state constraints, states are defined by primary discrete variables, and a solver capable of dealing with the constraints computes some properties of the state (such as values of sec- ondary variables), but it does not change values of primary state variables. In contrast, semantic attachments allow for action applicators to manipu- late state variables (whose values can still be altered by actions). Condition checking, such as determining whether the boxes can fit into the truck, how- ever, means determining whether a set of constraints is satisfiable.