We create our problem domain-
Scientific Conference and produce the
plan for the domain with Metric-FF and LPG. Both planners are state
based with PDDL compatible which could resolve our problem involved
with time handling and resource management. After testing with a set of
files on our domain, we get conclusion as below.
Firstly, PDDL2.1 level 2 is good at numerics and it is able to handling
numeric value. By handling numeric, it is possible to add a currenttime
variable that simulate time. With Metric-FF and LPG which support PDDL
2.1 level 2, we can deal with time issue and battery problem. However,
the planners do not have a good performance on our domain. Some simple
problems with few goals can not be resolved in a short time and take a
lot of memory. In some case, they don't succefully make a plan. The
main reason is that these planners are not designed to do time
scheduling. So, the planner take too much time to order actions. We
do not recommend Metric-FF and LPG to handle time scheduling.
Secondly, PDDL 2.1 do not support an action with numeric parameters.
Instead, parameters should be in the form as objects in finit set. This
is a limitation in the case when time is sencentive.For example, we can
not pass a numeric value into Socialize(x)--x is a numeric value. One of
alternative ways is we have to add a precondition current-time=firingTime. We also introduce wait
actions that have the capability to wait until a fixed time like the
beginning of a presentation session. Waiting until a fixed time point
seems to be the only way to introduce operators that can consume
variable time duration.
Thirdly, Enforced Hill-Climbing
algorithm (EHC) used in Metic-FF play
an important role in plan research. Generaly, EHC improve performance
of the planner. But, in our domain, it is not the case. In our tests,
running Metric-FF without EHC (by using -E option) is generaly faster
and consume less memory.
Fourthly, LPG has two limitations in our problem domain. The bigger one
is that LPG can not make an identical result based on the same input
file. The reason may result from the randomly selection for path
search. But LPG uses best-first search algorithm which assure a
nondeterministic choosing. So we are quite confused with the result.
Another limitation is LPG does not support Equal operator. There is a
precondition in Make-Presentation and Assist-Presentation:
(= (currenttime) (time-pres-begin
?ses)). Because Equaloperator
is not fully supported, we believe that LPG assume that this condition
is always true.
Therefore, the robot always make a presentation without wait even the
time is not the current time yet. Also, for bigger problems, LPG fails
to resolve what Metric-FF was able to do. So, for this reason, we
prefer Metric-FF as LPG.
For our Scientific Conference domain, a Chronical combined with HTN approach
seems to more suitable for our scientic conference domain. If we choose
Chronical approach, the time problem in our domain will be easier to
resolved. The HTN will supply powerful methods to decomposit our tasks.
For example, Show-Poster Tasks needs two actions from common
sense: Fix-Poster and Remove-Poster. It is what HTN does if it is
applied on our domain. But in Metric-FF, we have to add a predicate
poster-fixed to link both actions.