We now present an example of a PDDL+ domain description, illustrating how continuous functions, driven by interacting processes, events and actions, can constrain the structure of plans. The example is based on a simplified model of a solar-powered lander. The actions of the system are durative actions that draw a fixed power throughout their operation. There are two observation actions, observe1 and observe2, which observe the two different phenomena. The system must prepare for these, either by using a single long action, called fullPrepare, or by using two shorter actions, called prepareObs1 and prepareObs2, each specific to one of the observation actions. The shorter actions both have higher power requirements over their execution than the single preparation action. The lander is required to execute both observation actions before a communication link is established (controlled by a timed initial literal), which sets a deadline on the activities.
These activities are all carried out against a background of fluctuating power supply. The lander is equipped with solar panels that generate electrical power. The generation process is governed by the position of the sun, so that at night there is no power generated, rising smoothly to a peak at midday and falling back to zero at dusk. The curve for power generation is shown in Figure 2.
The lander is equipped with a battery, allowing it to store electrical energy as charge. When the solar panels are producing more power than is required by the instruments of the lander, the excess is directed into recharging the battery (the charging process), while when the demand from instruments exceeds the solar power then the shortfall must be supplied from the battery (the discharging process). The charging process follows an inverse exponential function, since the rate of charging is proportional to the power devoted to charging and also proportional to the difference between the maximum and current levels of charge. Discharge occurs linearly at a rate determined by the current demands of all the lander activities. Since the solar generation process is itself a non-linear function of time during the day, the state of charge of the battery follows a complex curve with discontinuities in its rate of change caused by the instantaneous initiation or termination of the durative instrument actions. Figure 3 shows an example of a plan and the demand curve it generates compared with the supply over the same period.
Figures 5 and 6 show graphs of the battery state of charge for the two alternative plans shown in Figure 4.
The lander is subject to a critical constraint throughout its activities: the battery state of charge may never fall below a safety threshold. This is a typical requirement on remote systems to protect them from system failures and unexpected problems and it is intended to ensure that they will always have enough power to survive until human operators have had the opportunity to intervene. This threshold is marked in Figure 5, where it can be seen that the state of charge drops to approximately 20%. The lowest point in the graph is at a time 2.95 hours after dawn, when the solar power generation just matches the instrument demand. At this point the discharging process ends and the generation process starts. This time point does not correspond to the start or end of any of the activities of the lander and is not a point explicitly selected by the planner. It is, instead, a point defined by the intersection of two continuous functions. In order to confirm satisfaction of the constraint, that the state of charge may never fall below its safety threshold, the state of charge must be monitored throughout the activity. It is not sufficient to consider its value at only its end points, where the state of charge is well above the minimum required, since the curve might dip well below these values in the middle.
We will use this example to illustrate further points later in this paper. The complete domain description and the initial state for this problem instance can be found in Appendix C, while the two reports generated by VAL [Howey, Long, FoxHowey et al.2004] are available in the online appendices associated with this paper.
Derek Long 2006-10-09