 
 
 
 
 
   
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.
 t. A continuous durative action is a durative action with at least one continuous effect.
t. A continuous durative action is a durative action with at least one continuous effect.
 be a set of ground continuous effects for a planning instance,
 be a set of ground continuous effects for a planning instance,  , and
, and 
 be a state. The continuous update function defined by
 be a state. The continuous update function defined by  for state
 for state  is the function
 is the function 
 , where
, where  is dim
 is dim , such that:
, such that:
 
 
 is the update function generated for an action
 is the update function generated for an action  with:
 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.
 be a planning instance that includes continuous durative actions and
 be a planning instance that includes continuous durative actions and  be a plan for
 be a plan for  . The induced continuous plan for
. The induced continuous plan for  is a triple,
 is a triple,  , where
, where  is
 is  ,
,  is the set of invariant constraints:
 is the set of invariant constraints:
![\begin{displaymath}Invs = \{ (Q,t,t+d) \, \vert \, (t,a[d]) \in P \, \mbox{and} ...
...mall {\tt {(over all Q)}}} \, \mbox{is an invariant for} \, A\}\end{displaymath}](img160.png) 
 and
 and  be two consecutive times in the happening sequence for
 be two consecutive times in the happening sequence for  . The set of active continuous effects over
. The set of active continuous effects over 
 is:
 is:
![\begin{displaymath}\{ Q \, \vert \, (t,a[d]) \in P, (t_{i},t_{i+1}) \subseteq [t,t+d] \, \mbox{and $Q$\ is a continuous effect of $a$}\}\end{displaymath}](img162.png) 
 is the set of systems of continuous effects:
 is the set of systems of continuous effects:
 
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.
 be a planning instance that includes continuous durative actions,
 be a planning instance that includes continuous durative actions,  be a plan for
 be a plan for  ,
,  be the induced continuous plan for
 be the induced continuous plan for  ,
, 
 be the happening sequence for
 be the happening sequence for  and
 and  be the initial state for
 be the initial state for  . The trace for
. The trace for  is the sequence of states
 is the sequence of states 
 defined as follows:
 defined as follows:
 then
 then  is the state resulting from applying the happening at
 is the state resulting from applying the happening at  in the simple plan
 in the simple plan  to the state
 to the state  .
.
 then let
 then let  be the the state formed by substituting
 be the the state formed by substituting 
 for the numeric part of state
 for the numeric part of state  , where
, where  is the continuous update function defined by
 is the continuous update function defined by  for state
 for state  . Then
. Then  is the state resulting from applying the happening at
 is the state resulting from applying the happening at  in the simple plan
 in the simple plan  to the state
 to the state  . If
. If  is undefined for any element in
 is undefined for any element in  then so is the trace.
 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.
 be a planning instance that includes continuous durative actions,
 be a planning instance that includes continuous durative actions,  be a plan for
 be a plan for  ,
,  be the induced continuous plan for
 be the induced continuous plan for  and
 and 
 be the trace for
 be the trace for  . For each
. For each 
 let
 let  be the continuous update function defined by
 be the continuous update function defined by  for
 for  .
.  is invariant safe if, for each
 is invariant safe if, for each  that is defined and for each
 that is defined and for each 
 such that
 such that 
![$[(t_{i},t_{i+1})] = I \subseteq (t,u)$](img176.png) , then
, then 
 ,
, 
 where
 where  is the logical state in
 is the logical state in  .
. 
In this definition, the symbols ![$[(..)]$](img179.png) are used to mean that the interval
 are used to mean that the interval  can be closed or open at either end.
 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.
 containing continuous durative actions, for planning instance
 containing continuous durative actions, for planning instance  , with induced continuous plan
, with induced continuous plan  .
.  is executable if the trace for
 is executable if the trace for  is defined,
 is defined, 
 , and it is invariant safe.
, and it is invariant safe.
 containing durative actions, for planning instance
 containing durative actions, for planning instance  is valid if it is executable, with trace
 is valid if it is executable, with trace 
 and
 and  satisfies the goal in
 satisfies the goal in  .
.
 
 
 
 
