Planning, Scheduling, and Plan Execution

advertisement
From: AAAI Technical Report WS-98-02. Compilation copyright © 1998, AAAI (www.aaai.org). All rights reserved.
Planning, Scheduling, and Plan Execution
for Autonomous Robot Office Couriers
Michael Beetz and MarenBennewitz
University of Bonn, Dept. of ComputerScience III,
Roemerstr. 164, D-53117 Bonn, Germany,
email: beetz, bennewit@cs.uni-bonn.de
a letter and thereby miss a deadline. Suchpreparation actions makethe performanceof individual jobs slower but
they can be expected to improvethe overall performance
significantly.
¯ Flexibility and Robustness. Schedules are to be generated based on partial information about the environment
and the tasks. For instance, incomplete task specifications like "pick up the letter from Wolframand deliver
it," lack proper descriptions of envelope as well as the
destination of the letter. Acting appropriately based on
partial information requires the robot courier to watch
out for opportunities and exploit them as well as detect
and avoid problems while executing scheduled activity.
¯ Experience. Information acquired through extended experience is exploited to computemore appropriate schedules. For instance, the time it takes for different people
to load or unload at different places.
It is important that the scheduler of an autonomousrobot
office courier is able to interleave delivery jobs, reschedule whenproblems are detected, and exploit opportunities.
The scheduler also has to be able to predict whetherexploiting an opportunity that has just been detected might cause
failures in other activity threads such as missing deadlines
(BG98). What seems less important is the computation
schedules that guarantee minimalpath length because loading and unloading takes significant amountof time.
Our research on scheduling
everyday activity is carded out
in the context of FAXBOT,
a structured reactive controller
(SRC)(Bee98) that is designed
for robust and efficient execution of delivery plans on
the autonomous mobile robot
RHINO(see Fig. 1), an RWi
B21 robot. RHINOis equipped
Fig. 1: Themobilerobot
with three PCs connected to the
RHINO
university-wide computer networkvia a tether-less radio link. Its sensor systemcontains
24 ultra-sonic proximity sensors, two laser range finders,
Abstract
Thispaperinvestigates issues in the integrationof planning,
scheduling, and plan execution in the context of control
systems for autonomousrobot office couriers. Suchcontrol systems have to meet challenging requirements. They
mustavoid late deliveries and achieve long-termefficiency
instead of restricting themselvesto the optimizationof problem solving episodes. Becauserobotsacting in humanworking environments
are often forced to scheduletheir activities
without having completeinformation their control systems
mustreliably and efficiently execute scheduledactivity in
changingand partly unknown
situations. In particular, the
control systemsmustbe able to exploit opportunities, flexibly avoid problems,and integrate command
revisions for
currentlyactive tasks.
Wepropose to implementsuch control systems for scheduled activity by employingconcurrent reactive plans that,
whileperformingtheir actions, reschedulethe course of action whenevernecessary. The plans have a modular and
transparent representation whichpermits easy transformations by transformationrules. It is these rules that implement
the controller’s schedulingandschedulerepair methods.
Introduction
To carry out their jobs reliably and efficiently manyautonomous mobile service robots acting in human working
environments have to view their jobs as everyday activity.
Weconsider a particular instance of everyday activity: performing office courier service. Scheduling everyday activity differs in important aspects from manyother scheduling tasks such as job shob scheduling (FS84), space shuttle scheduling (DSB94),or transportation scheduling in the
following aspects:
¯ Amortized cost and utility ofplans. The goal of scheduling everydayactivity is the optimization of long-term efficiency rather than problem-solving episodes. Therefore, a competent office courier distributes for instance
empty envelopes according to an expected consumption
profile while performing its delivery jobs. Distributing
the envelopes beforehand decreases the chances that the
robot must search for empty envelopes before delivering
67
and a CCDstereo color camerasystem.
FAXBOT
operates in a part of an office building containing a large hallway,several offices, a library, and a classroom(see Figure 2). FAXBOT
uses a symbolically annotated 3Dworldmodelof its environment
that contains floor
plan informationfor walls, doorways,and roomsand static
pieces of furniture. Theworld modelprovides all the information required by the RHINO
navigation systemto exhibit fast and collision free navigationand accurate robot
localization (TBB+98).It also contains detailed geometric modelsof the furniture items that can be used for their
recognition. Finally, the worldmodelstores symbolicinformationthat is used to interpret natural languagecommands
and as domainknowledgefor mission planning.
FAXBOT
operates over extendedperiods of time and carries out a scheduleof multiple jobs, whichcan be changed
at any time. Jobs are issued via electronic mail using
stronglyrestricted natural language.
An Extended
Example
Considerthe followingexperimentthat is carried out by
RHINO
using FAXBOT’s
scheduling capabilities. RHINO
receives two commands:
"put the red letter on the meeting table in roomA-111on the desk in roomA-120"and
"deliver the green bookfromthe librarian’s desk in room
A-110to the desk in roomA-114."
Wheneverthe jobs change FAXBOT
computesan appropriate schedulevery fast. FAXBOT’s
initial scheduleis to
pick upthe red letter first, then pickup the greenbook,then
deliver the red letter, andthe greenbookafterwards.If the
secondjob involvedalso a red letter to be delivered, then
the schedulerwouldfirst carry out the first job completely
and then carry out the secondjob. This is done to avoid
carrying twored letters at the sametimeand therebyyield
possible confusions.
Fig. 3. Default
schedule,
Fig. 2: Environment
of the office courier
To accomplish its commands
FAXBOT
uses a library of
routine plans. Theroutine plan for deliveries specifies that
RHINO
is to navigateto the pickupplace, wait until letter is
loaded,navigateto the destinationof the delivery, and wait
for the letter to be unloaded.
The maincontributions of this paper are that we show
(1) the installation of modularandtransparent schedules
complexconcurrent and reactive robot control programs;
(2) explain the designof schedulesand controllers that allowfor the opportunisticand robust executionof scheduled
activity; and (3) describe novel plan transformationtechniques for schedulingand reschedulingeverydayactivity.
The remainderof this paper is organizedas follows. The
section 2 presents an examplein whichFAXBOT
schedules
its delivery jobs basedon partial informationand reschedules its activities to avoidtask failures andexploit opportunities. The section 3 gives a glimpseof the plan representation used by FAXBOT
and presents the control structures used for the implementationand revision of activity
schedules. Section4 presents technical details of FAXBOT’s
activity scheduler and showshowscheduling methodsare
implemented
as declarative plan transformationrules. Section 5 describes howthe FAXBOT
controller accomplishes
the behaviorof the robotthat is describedin Section2.
68
Fig. 4. Schedulethat
avoids carrying twored
letters.
Proposing a schedule also implies makingassumptions
about whether and whendoors are open or closed. Thus
when adopting the schedule FAXBOT
assumes that the
doors of the rooms A-110, A-Ill, A-114, and A-120
are open. To performthe necessary adaptations flexibly,
FAXBOT
monitors the assumptionsunderlying its schedule
while performingits deliveries: wheneverit passes a door
it estimates the openingangle of that door and revises the
scheduleif necessary.
Fig. 5: Complete
trajectory for the twodeliveries
Figure 5 pictures RHINO’s
trajectory during the accomplishmentof the twodelivery jobs. Initially, all doors in
the environmentare open. FAXBOT
starts with the delivery
of the red letter and headsto the meetingtable in A-111
wherethe letter is loaded(step 2). At this moment
the door
of A-120is closed. Thus, whenFAXBOT
enters the hallway
to deliver the red letter at Michael’sdesk, it estimatesthe
opening angle of the door of roomA-120. At this moment
FAXBOT
detects that the door has been closed and that it
cannotcompletethe delivery(step 3). A failure is signalled.
Since FAXBOT
does not knowwhen room A-120 will
be openagain, it revises the schedulesuch that it delivers
the greenbookfirst and accomplishes
the failed delivery as
an opportunity. ThusFAXBOT
navigates to the librarian’s
desk in A-110to pick up the green book to roomA-114
(step 4). At this momentroomA-120is openedagain.
FAXBOT
heads towards A-114to deliver the green bookit
passes roomA-120(step 5). At this point the door estimation processsignals an opportunity: A-120is open!Therefore, FAXBOT
interrupts its current deliveryto completethe
deliveryof the red letter. Afterthe deliveryof the red letter
is completed(step 6), FAXB
OTcontinuesthe delivery of the
green book(step 7). The behavior generated by FAXBOT
all doorsstay openis shownin Fig. 6 and the one if A-120
is closed but not openedagain in Fig. 7.
declares its subtasks as user commands
and causes the generation of failure and success reports upontheir termination.
WITH-POLICY
v B, anothercontrol structure, means"execute
the primaryactivity B suchthat the executionsatisfies the
policy v" Policies are concurrentprocessesthat run while
the primaryactivity is active and interrupt the primaryif
necessary.
Events that require RHINO
to perform actions such as
"passinga door"are handledthroughfluents, programvariables that signal changesof their values and therebyenable
control threads to react to asynchronousevents. The RPL
statement WHeNEVeR
F B is an endless loop that executes B
wheneverthe fluent p gets the value "true" WAIT-FOR
F, another controlabstraction,blocksa threadof controluntil the
fluent F becomestrue.
PrimaryActivities and Policies
The FAXBOT
controller carries out two kinds of subplans:
primaryactivities, actions taken to accomplishthe robot’s
missionand policies, whichmonitorand maintainthe conditions necessaryfor the successfuland efficient execution
of the primaryactivities.
Primaryactivities include for examplethe navigationto
places whereobjects are to be picked up and delivered. A
policy might, for instance, monitorthe doors the robot is
Fig. 6. Trajectoryif
Fig. 7. Trajectoryif
passing to detect whetherthey are openor closed. Another
A-120stays open.
A-120is closed again.
policy mightmonitorhowwell the robot knowsits position
The behaviorexhibited by FAXB
OTdemonstratesthe foland invokeactive localization whenevernecessary. Primary
lowingcapabilities of FAXBOT’s
scheduler and its integraactivities musthandle interrupts and, due to the possible
tion into the overall controller: interleavingdeliverytasks,
side-effects of policies, these activities haveto makesuitrevising scheduleswhile they are executed, and exploiting
able preparationsfor their successfulcontinuationafter reopportunities.
activation.
Policies are best viewedas constraints on the execution
The FAXBOTController
of primaryactivities. Constraints such as "wheneveryou
FAXBOT’s
delivery routines are implementedin RPL(Repass a door estimate the openingangle of the door using
active Plan Language)(McD91).RPLprovides conditionits laser rangefinders" and opportunitiessuchas "complete
als, loops, programvariables, processes, and subroutines.
the delivery to roomA-120as soon as you learn the ofRPLalso places high-level constructs (interrupts, monitors)
fice is open"whichare both necessaryfor carrying out the
to synchronizeparallel physical actions and makeplans rejobs opportunistically,are specified using the aPEconstruct
active and robust by incorporating sensing and monitoring
WITH-POUCY.
Events like "passing a door" are detected by
actions, and reactions triggered by observedevents at the
fluents that trigger actions like estimatingthe doorangle.
programmer’s
disposal. The RPLconstructs used to specify
Whena delivery gets interrupted because FAXBOT
has descheduledactivity are the PLAN-,
WITH-POLICY-,
WHENEVER-, tected that the door to A-120is open, that opportunityhas
and WAIT-FOR-Statements;
but see(McD91)
for a complete
the side effect of movingthe robot into the office A-120.
description.
Theinterrupted delivery plan has therefore to be replanned
ThePLAN-Statement
has the form(PLAN
STEPSCONSTRAINTS). before it canbe continued.
STEPshave the form (:TAGNAME
SUBPLAN)
and tag SUBPLAN
The Structure of the FAXBOT
Controller
with the nameNAME.constraints have the form (:ORDER
S~ S2) whereSis are nametags of the plan steps. Steps
TheFAXBOT
controller is structured in a modularand transare executedin parallel except whenthey are constrained
parent waysuch that automatic plan transformationtechotherwise. The :ORDER
constraints makesure that a subseniques can retrieve parts of the plan easily and modifythe
quent step is started only if all steps computing
the inputs
plan without makingit opaquefor subsequentplan revision
have been completed. The TOP-LEVEL
command
indicates
processes.
69
Thealgorithmfor orderingthe navigation tasks is also
simple.Essentially,it sorts the destinationnorthof the hallwayin ascendingand south of the hallway in descending
order (the environment
is picturedin Figure2). After this
initial sort the scheduleriteratively resolvesproblemssuch
as misseddeadlines or confusionscaused by carrying objects that lookidentical.
WITH-POLICY :TAG OPPORTUNISTIC-PRIMARIES
TOP-LEVEL
:TAG ACTIVE.PRIMARIES
PLAN
SCHEDULE-DELIVERIES
( delivs)
1 for each Loc in Delivs
2
do ifNorth-of?(Loc, Hallway)
3
then North ~-- North O {Loc}
4
else South ~ South U {Loc}
5 North +-- Sort(North, >)
6 South +-- Sort(South,<)
7 for each Loc in North
8
do ifEast-of?(Loc, Robot)
9
then East ~ East U {Loc}
10
else West <--- West U {Loc}
11 Schedule ~ Append(West, South, East)
12 while-~Conflict-free(Schedule
13
do Schedule ~-- Remove-a-Conflict(Schedule)
14 return Schedule
TOP-LEVEL
:ORDER
Theoverall plan of the FAXBOT
controller consists of the
plan bodytagged PRIMARY-ACTMTIES
that contains the plans
for accomplishingthe user commands
and the surrounding
policies that specifythe constraints on the executionof the
primaryactivities. Theprimaryactivities are separatedinto
the opportunistic primaries and the active primaries. The
active primariesare the ones that the robot is able to accomplish without help. The order in which the subplans
of the active primariesare executedis given by the order
constraints that specify a (partial) order on the navigation
tasks containedin the active primarytasks. Theopportunistic primariesare the ones that robot cannot accomplishautonomously.To completethemit has to wait for enabling
conditions. For example, because FAXBOT
has no action
for openingdoors it mighthaveto wait for doors to openin
order to completeits deliveries. Theopendoor mightbe an
opportunity to completea user command.
Becauseof the hierarchical structure of office environmentsthis simple heuristic algorithmfor computingschedules workssurprisingly well. Theoptimalscheduleasks the
robotto visit everyoffice withthe orderof the offices being
clockwise(or anti-clockwise)starting at the office closest
to the robot. The Voronoidiagramsof offices have often
almosttree structure (with fewcycles) so that the deskscan
be easily reachedfromthe doorand the center of the room.
There are various cases for whichthis algorithm produces suboptimal schedules. For instance, you can place
n destinationson a circle (equallyspaced).In this setting,
the algorithmasks the robot to go backandforth on the circle andtake a route that is longerthan necessary.Thealgorithm can be extendedeasily so that it computes
with a high
probability nearly optimal schedulesfast. The questionis
whetherhavingnearly optimal schedulescauses the robot to
accomplishits tasks moreefficiently. Oftentighter schedules fail moreoften. In our opinion it is morepromising
to learn scheduling heuristics from experience. Information relevant for schedulingthat can be learned fromexperience include the expectedduration of loadingand unloading, whenpeople are usually in their offices, whendoors
are openor closed, and so on.
The schedulingroutine is implementedas a plan transformationrule that can be applied to FAXBOT’S
overall plan
while the plan is executed (BM97;BM94).Wewill diagram
plan-transformationrules
The FAXBOT Scheduler
The scheduling methodtakes constraints, resources, and
deadlines into accountand tries to minimizethe numberof
interruptions for people. Themethodcarries out a sequence
of steps: (1) the schedulerextracts all navigationtasks from
the structuredreactive plan; (2) it computes
an efficient total order on the navigationtasks that (if possible)meetsall
givendeadlinesavoidsoverloadingthe robot; (3) it installs
the scheduleinto the structured reactive plan; and (4) installs a monitoringprocess that monitorsall the assumptions madeby the schedulerand triggers a reschedulingprocess wheneveran assumptionis detected to be violated.
The extraction step is simple because all navigation
tasksare requiredto havetheform(ACHIEVE
(LOC
RHINO
Ioc))
(BM92).In the extraction step every navigation task
tagged witha uniquenamethat can be later used to specify
the order on the navigationtasks. A moredifficult issue in
the extraction step is guessingthe destinations of navigation tasks that are not completelyspecified. (McD92)
describes a techniquefor guessingdestinations of navigation
tasks basedon MonteCarlo simulationsof the plan.
(pl ATcp ==pat) F
--’~--I curia
pt’
L
0
1.) ?PRIM-ACTIVITIES
AT PRIMARY-ACTIVITIES
2.) ?ACTIVE-PRIMARIES
AT ACTIVE-PRIMARIES
(PLAN ?CMDS?CONSTRAINTS)
/
(a)
UNSCHEDULED-PLAN-BUG
(?ROOT-TASK?ACTIVE-PRIMARIES)
A NAVIGATION-TASKS
(b)
(?ACTIVE-PRIMARIES?NAV-TASKS)
^SCHEDULE?NAV-TASKS(?SCHED-CONSTRAINTS)
(c)
1.) WITH-POLICY
WHENEVER
(NO.__.~(AND I?SCHED-ASSMTS))
(d)
^ SCHEDULING-ASSUMPTIONS
SIGNAL(UNSCHEDULED-PLAN-BUG
(?NAV-TASKS?SCHED-ASSMTS))
(?ROOT-TASK?ACTIVE-PRIMARIES))
?PRIM-ACTIVITIES
2.) PLAN ?CMDS!?CONSTRAINTSI?SCHED-CONSTRAINTS
Figure8: Planrevisionrule for the the installation of task schedules.
wherecondis the applicabilitycondition,(pt ATcp =-- pat) the
input plan schemaand pl’ the output plan schemaof the
rule. Theapplicability conditionis a conjunctionof literals. Theinput plan schemaconsists of a pattern variable
to which the subplan with code path cp is boundand an
optionalpattern pat that is matchedagainst the subplanpl.
Therule is applicableif the applicationconditionholds and
the plan pl with code path cp matchesthe pattern pat. The
resulting plan fragmentpl’ replaces the input fragmentin
the revisedplan.
Figure 8 showsthe formalization of the transformation
rule that schedulesoffice delivery tasks. The transformation rule revises the primaryactivities by addinganother
global policy that generates an unscheduledplan bugwhenever an assumptionunderlyingthe current scheduleis detected as violated. Therule also revises the active primaries by adding the ordering contraints of the schedule
to the constraints of the primaryactivities. Thescheduling
rule is applicableundera set of conditionsspecifyingthat
(a) Thereis a bug of the category"unscheduledplan;" (b)
Thenavigationtasks containedin the active primaries are
?NAV-TASKS;(C) ?SCHED-CONSTRAINTS
ale orderingconstraints
on ?NAV-TASKS
such that any order whichsatisfies ?SCHEDCONSTRAINTS
will accomplishthe active primary tasks fast
and avoid deadline violations and overloadingproblems;
(d) ?NAV-TASKS
can be accomplished
if ?SCHED-ASSTS
are satisfied. The rule is applied wheneverthe set of user commandschanges.
Robust and Efficient
Schedules
To accomplish robust and efficient execution of schedules we (1) explicitly record and monitor scheduling assumptions;(2) install opportunisticdeliverytasks; and (3)
reschedulethe primaryactivities while they are executed
whenevera brokenschedulingassumptionis detected.
Currently, we only consider one kind of schedulingassumptionsand opportunities: the state of doors. To monitor these assumptions, the FAXBOT
controller employsa
global policy: wheneverthe robot passes a door it estimates
the openingangle of this door. The openingangles of each
door are stored in an fluent that has twodependentfluents:
one signalling that the dooris closed and one that the door
is open.
The schedulingassumptionsof the active primaries are
that all roomsthat are destinationsof navigationtasks are
open. Schedulingassumptionsare handled by a policy of
the followingform:
WITH-POLICYSEQWAIT-FOR.(CLOSED(ROOMt)
V...
V CLOSED(ROOM,i))
SIGNAL(CLOSED-DOOR-BUG
...)
Plan Body
Thuseach violated scheduling assumptiontriggers the
application of the schedulingtransformationrule shownin
Figure 9. In order to apply schedulingtransformationsto
the primaryactivities while the primaryactivities are executed, the primaryactivities haveto be restartable (BM96).
Restartability meansthat the robot controller canrepeatedly
start executinga plan, interrupt the execution,and start it
anew,andthe resulting behaviorof the robot is verysimilar
to the behaviorof executingthe plan onlyonce. Restartability facilitates the smoothintegration of plan revisions into
ongoingactivities: a partially executedrestartable plan can
be revised by terminatingthe plan and starting the newplan
that containsthe revisions.
In practice, however,restartable plans workdifferently.
Consider,for example,a plan for the deliveryof an object.
Todeterminewhichparts of the plan can be skipped, it is
sufficient to knowthe object’s location and someaspects
of the robot’s state (like its location andwhatit carries).
Becausethe FAXBOT
controller updates the object descriptions wheneverit perceives and "manipulates"the object,
FAXBOT
can determinethe state of execution based on the
descriptionof the object to be delivered.
Toact efficiently, FAXBOT
has to exploit opportunities.
A necessarypreconditionof exploiting opportunitiesis that
FAXBOT
is able to specify whatopportunities are. Onekind
of opportunity that FAXBOT
Canexploit is the opportunistic completionof delivery tasks. Supposea user command
cannot be completedbecause the roomwherethe object is
to be deliveredis closed. In this case, the executionof the
active primaryplan for accomplishing
the delivery fails and
the plan is installed as an opportunisticprimary.
The revision of the FAXBOT
controller that is triggered
71
1 .) ?ACT-PRIMARIES
AT ACTIVE-PRIMARIES
2.) ?OPP-PRIMARIES
AT OPPORTUNISTIC-PRIMARIES
CLOSED-DOOR-BUG
(?CMD-FAILURE ?DOOR-FCT?ROOM
(?TLC) ?FAILED-TASK)
^TLC-NAME(?TLC ?TLC-NAME)
^ ROOT-TASK(?ROOT
?FAILED-TASK)
1.) ?REM-ACT-PRIMAR~IES
A DELETE-ACTIVE-PRIMARY-TLC-PLAN
2.) TOP-LEVEL
(?ROOT ?TLC-NAME?REMAINING-TLC-PLANS)
:TAG ?TLC-NAME
^TAGGED-SUBTASK(?ROOT
?TLC-NAME?TLC-TASK)
SEQ WAIT-FOR(OPEN(?ROOM)) A RPL-EXP(?TLC-TASK
?TLC-PLAN)
?TLC-PLAN
I?OPP-PRIMARIES
Figure9: Planrevision rule for deliverytasks that cannotbe completedbecauseof closed doors.
by closed doors is accomplishedby the plan transformation
rule listed in Figure9. Theplan revision rule is triggered
by a "closed door" bug that causes a user command
to fail.
Therule deletes the failed plan for the user command
from
the active primaryactivities and addsthe plan to the opportunistic primaryactivities.
has been closed in the meantime.BecauseFAXBOT
cannot
completethe delivery of the red letter the corresponding
command
fails. This failure triggers the replanningpolicy
P-3. Because FAXBOT
cannot foresee when room A-120
will be openagain it transformsthe completionof the delivery into an opportunity. Thus as soon as FAXBOT
notices roomA-120to be openit interrupts its current misFAXBOT’s
Scheduling Methodsat Work
sion, completesthe deliveryof the red letter, andcontinues
with the remainingmissionsafter the red letter has been
This section describes how FAXBOT
accomplishes the
courier jobs described earlier. In the beginning, FAXBOT successfullydelivered.
carries out no primaryactivities. Its outermostpolicy enrevisions ]
(P’l)
WITH-POLICY[ integratecommand
sures that newcommands
are received and processed.
i
(P-l)
WITH-POLICY
[ replan/reschedule when necessary J
WITH-POLICy[
integrate
......
d revisions[
(P-l)
WITH-POLICY[
replan/reschedule when necessary I
[ PR,MARY
ACT,V,T,ES
(P-2)
i
I
PRIMARYACTIVITIES
Uponreceiving the two commands
the policy P-1 puts
plans for the commands
into the active primaryactivities of
the SRC.The insertion of the commands
triggers the scheduler of the policyP-2 that ordersthe navigationtasks in the
primaryactivities. Theschedulingpolicy also addsan additional policy I)-3 that monitorsthe assumptionsunderlying
the schedule, that is that the roomsA-110,A-111,A-114,
and A-120are open.
WITH-POLICY
integratecommandrevisions
WITH-POLICY
WITH-POLICY
(p3)
WITH-POLICY
[ ~ach~duMwh~n~ HO,~, I I L
(P-l)
(P-Z)
(P-3)
NAV-4
After FAXBOT
has picked up the red letter fromthe meeting table and left roomA-Ill, it notices that roomA-120
’
2oi I
I
:rAa~;ii
: ; I
:! ii’:~’,,’
rXo
II
Discussion
Ourresearch on schedulingthe activities of an autonomous
robotoffice courierare still in an earlystage. Sofar wehave
only performedsomesimple experimentsto validate that
the FAXBOT
controller and its scheduler work;that is that
it can reliably monitorscheduling assumptionsand schedule delivery jobs duringtheir execution(see our examplein
the secondsection). In the future weplan to comparethe
behavior generated by the FAXBOT
controller with alternative controllersthat applydifferent (re)schedulingstrategies. Wealso needto examinemorecarefully the literature
on robust scheduling,in particular (ZF94).
In this paper we have mainly focussed on the application of schedulingtechniquesto plans that control an autonomousmobileservice robot. As such the contributions
of this paper lie mainlyin the representation of complex
concurrentand reactive plans that facilitate schedulingoperations, the specification of plan revision methodsin the
form of plan transformationrules, and the application of
these scheduling methods while the robot carries out the
scheduled activity.
FAXBOT
accomplishes its jobs successfully because its
subplans are madeinterruptable and restartable using highlevel control structures that specify synchronized concurrent reactive behavior. FAXBOT
achieves adaptivity through
plan revision and scheduling processes, implemented as
policies, that detect opportunities, contingent situations,
and invalid assumptions. Plan revision techniques are able
to perform the required adaptations because of the modular and transparent specification of concurrent and reactive
behavior. In particular the distinction of policies and primaryactivities increases the modularity significantly. Policies enable FAXBOT
to specify opportunistic behavior and
to achieve reliable operation while makingsimplifying assumptions.
There are manyopen issues that we would like to investigate more carefully in the near future. These issues
include the development of more sophisticated scheduling methods(ZF94), the application of learning techniques
to acquire useful information that can be exploited by
heuristic
scheduling methods (HC92b; HV98a; HV98b;
ZDD+92),and a thorough experimental investigation on
the effects of different scheduling techniques on the behavior exhibited by autonomousservice robots (HC92a).
References
M.Beetz. Structured reactive controllers for service robots in
humanworkingenvironments. In G. Kraetzschmarand G. Palm,
editors, HybridInformationProcessingin Adaptive Autonomous
Vehicles.Springer,1998.to appear.
D. Hart andP. Cohen.Predicting andexplainingsuccessand task
duration in the phoenixplanner. In J. Hendler,editor, AIPS-92:
Proc.of the First InternationalConference
on Artificial Intelligence PlanningSystems, pages 106-115. Kaufmann,San Mateo,
CA, 1992.
A. Howeand P. Cohen.Isolating dependencies on failure by
analyzingexecutiontraces. In J. Hendler,editor, AIPS-92:Proc.
of the First InternationalConferenceon Artificial Intelligence
Planning Systems, pages 277-278. Kaufmann,San Mateo, CA,
1992.
K. Haighand M. Veloso. Learning situation-dependent costs:
Improvingplanning from probabilistic robot execution. In To
appear in Autonomous
Agents 98, 1998.
K. Haighand M. Veloso.Planning, execution and learning in a
robotic agent. In to appearin FourthInternational Conference
on AI PlanningSystems, 1998.
D. McDermott.A reactive plan language. Research Report
YALEU/DCS/RR-864,
Yale University, 1991.
D. McDermott.
Transformationalplanning of reactive behavior.
Research Report YALEU/DCS/RR-941,
Yale University, 1992.
S. Thrun, A. BUcken,W.Burgard, D. Fox, T. Frrhlinghaus,
D. Hennig,T. Hofmann,M. Krell, and T. Schimdt.Maplearning
and high-speed navigation in RHINO.
In D. Kortenkamp,R.P.
Bonasso,and R. Murphy,editors, Al-basedMobileRobots: Case
studies of successful robot systems. MITPress, Cambridge,MA,
1998.to appear.
M. Zweben,E. Davis, B. Daun, E. Drascher, M. Deale, and
M. Eskey. Learningto improveconstraint-basedscheduling. Artificial Intelligence, 58:271-296,1992.
M. Zwebenand M. S. Fox. Intelligent Scheduling. MorganKaufmann, 1994.
M. Beetz and H. Grosskreutz. Causal modelsof mobile service
robot behavior. In R. Simmons,
M.Veloso,and S. Smith,editors,
to appear in Fourth International Conferenceon AI Planning
Systems, MorganKaufmann,1998.
M.Beetz and D. McDermott.
Declarative goals in reactive plans.
In J. Hendler,editor, First InternationalConferenceon AI Planning Systems, pages 3-12, MorganKaufmann,1992.
M. Beetz and D. McDermott.
Improvingrobot plans during their
execution. In Kris Hammond,
editor, SecondlnternationalConference on AI PlanningSystems, pages 3-12, MorganKaufmann,
1994.
M. Beetz and D. McDermott.Local planning of ongoing behavior. In Brian Drabble,editor, ThirdlnternationalConferenceon
AI Planning Systems, pages 3-12, MorganKaufmann,1996.
M. Beetz and D. McDermott.Expressing transformations of
structured reactive plans. In Recent Advancesin AI Planning.
Proceedings of the 1997 EuropeanConference on Planning,
pages 64-76. SpringerPublishers, 1997.
M. Drummond,
K. Swanson,and J. Bresina. Scheduling and execution for automatic telescopes. In M.Zwebenand M. Fox, editors, Intelligent Scheduling, pages 341-369.MorganKaufmann
Publishers, 1994.
M. S. Fox and S. Smith. Isis - a knowledge-basedsystem for
factory scheduling.Expertsystems, 1(I):25--49, 1984.
73
Download