The Semantics of Continuous Durative Actions

The introduction of continuous durative actions complicates the semantics. It is no longer possible to handle invariants by insertion of simple actions between other happenings in a plan to test their continued satisfaction. In fact, continuous effects can, in principle, cause an invariant to be satisfied over some parts of an interval and not over others. Ignoring invariants for a moment, updates to numeric values caused by continuous effects can be applied as discrete updates at time points within the interval over which they apply. These updates behave slightly differently to the discrete updates we have seen in durative actions with discrete effects, since it *is* possible for a continuous update to affect a variable that is concurrently affected by a discrete update, or examined by a precondition, without creating an inconsistency. For example, if the water heating action in Figure 14 is applied with the concurrent addition of an egg to the pan with a precondition that the temperature of the water is between 90 and 95 degrees then the value of the temperature can be examined at the moment of application of the action adding the egg. This is because the temperature change is actually happening over the interval between the start of the heating and the point at which the egg is added, rather than as a discrete update at the point the egg is added. The temperature is not actually changed at the instant of the addition of the egg.

In this section we summarise the semantics for continuous actions. Where the semantics for discrete durative actions is defined in terms of the familiar state-transition semantics, the continuous semantics introduces a different formulation.

and

where is the update function generated for an action with:

Definition 22 shows how the continuous effects of several continuous durative actions can be combined to create a single system of simultaneous differential equations whose solution, given an appropriate starting point, defines the evolution of the continuously varying values.

Let and be two consecutive times in the happening sequence for . The set of

and is the set of

The components of a continuous plan separate out the invariant conditions and continuous effects from the rest of the simple plan in order to allow correct application of the continuous updates and to allow confirmation that the invariants hold in the face of the continuous effects.

- If there is no element then is the state resulting from applying the happening at in the simple plan to the state .
- If then let be the the state formed by substituting for the numeric part of state , where is the continuous update function defined by for state . Then is the state resulting from applying the happening at in the simple plan to the state . If is undefined for any element in then so is the trace.

Definition 24 defines a trace in a similar fashion to the traces for simple plans and plans with durative actions. The key difference is the need to apply the continuous updates. These are handled by solving the systems of simultaneous differential equations across each interval in which they are active and then applying the result to update the numeric values across that interval. Of course, this is easier to describe than it is to do, since solving arbitrary simultaneous differential equations algorithmically is not generally possible. Under certain constraints this semantics can be implemented in order to confirm the validity of a plan automatically.

In this definition, the symbols are used to mean that the interval can be closed or open at either end.

From a semantic point of view, invariants must be checked at every point in the interval over which they apply. When the interval contains only finitely many discrete changes then the obligation can be met by considering only the finite number of points at which change occurs (a fact that is exploited for discrete durative action plan semantics in Definition 18). When there is continuous change the obligation is much harder to meet. In practice, the invariants can be checked by examining the possible roots of the function describing continuous change, but finding those roots can be very difficult in general. Again, suitable constraints on the forms of differential equations expressed in a domain can make the validation problem tractable.

The last two definitions simply assemble the components to arrive at analogous definitions to those for executability and validity of simple plans and plans with durative actions.