temporal reasoning for planning and scheduling in … · temporal reasoning for planning and...

7
Temporal Reasoning for Planning and Scheduling in Complex Domains: Lessons Learned Mark S. Boddy* [email protected] Honeywell Technology Center, MN65-2200 3660 Technology Drive Minneapolis, MN 55418 Abstract Over the past five years, we have implemented and applied efficient, general-purpose temporal reasoning as a substrate for building planning and scheduling systems. We have also investigated the kinds of tem- poral reasoning that will be most useful, and for what problems. Our results confirm that temporal reasoning is a sufficiently self-contained activity to be implemented entirely independently of the overly- ing application, modulo someassumptions about how problem-solving is to proceed. We have also shown that constraint-based temporal reasoning supports a ’%ast-commitment" style of planning and scheduling that is efficacious in a wide variety of complex problem domains. There have been some surprises, as well, for example in the fact that causal reasoning in general, and projection in particular, havebeenless useful than weanticipated. In this paper, we sketch the design, implementation, and semantics of our current temporal reasoning en- gine, loosely based upon Dean’s Time MapManager (TMM), discuss how that engine has been applied to range of planning and scheduling problems, and draw some conclusions. The primary lesson to be drawn is that constraint-based temporal reasoning provides an effective basis for building planningand scheduling systems, particularly in applications where problem- solving is only weakly directed by domain-specific so- lution methods. Introduction The research and implementations described in this pa- per could plausibly be described as an extended exper- iment testing a hypothesis first advanced more than ten years ago by Tom Dean, to the effect that "tempo- ral reasoning" was a commonly-needed capability that could usefully abstracted and implemented in a sepa- rate module, which could then be used over and over again in different applications (Dean 1984). Our pre- liminary result is a confirmation of Dean’s hypothesis, though just what functions are required of or useful *The work described here was supported in part by ARPA and the Air Force RomeLaboratory under con- tract F30602-90-C-0102. in a temporal reasoner has undergone some modifica- tion. For example, causal reasoning in general, and projection in particular, have been less useful than we anticipated. In this paper, we sketch the design, implementation, and semantics of our current temporal reasoning en- gine, loosely based upon Dean’s Time Map Manager (TMM), discuss how that engine has been applied to range of planning and scheduling problems, and draw some conclusions. The primary lesson to be drawn is that constraint-based temporal reasoning provides an effective basis for building planning and scheduling systems, particularly in applications where problem- solving is only weaklydirected by domain-specific solu- tion methods. The version of the TMM described here, developed under a contract as part of Phase I of the Planning Initiative, is presented more fully in (Schrag, Carciofini, & Boddy1992). Time map managers In this section, we briefly discuss the history, archi- tecture, and implementation of the temporal reasoning system implemented at Honeywell as part of Phase I of the Planning initiative. This system was a reimplemen- tation of Dean’s Time Map Manager (TMM) (Dean McDermott 1987). The TMM, conceived as a founda- tion for building planning and scheduling systems, in- cludes capabilities for reasoning about both qualitative and metric temporal constraints, as well as two forms of causal reasoning: projection and persistence, all in the presence of incremental change in a dynamic, envi- ronment. The version of the TMM described here, de- veloped under a contract as part of Phase I of the Plan- ning Initiative, is presented more fully in (Schrag, Car- ciofini, & Boddy 1992). The semantics of the system are described in (Schrag, Boddy, & Carcioflni 1992). The TMM provides users and application programs (e.g., planners and schedulers) with the following func- tionality: ¯ Qualitative and metric constraints between time points. ¯ Causal reasoning. Boddy 77 From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

Upload: phammien

Post on 19-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Temporal Reasoning for Planning and Schedulingin Complex Domains: Lessons Learned

Mark S. Boddy*[email protected]

Honeywell Technology Center, MN65-22003660 Technology DriveMinneapolis, MN 55418

Abstract

Over the past five years, we have implemented andapplied efficient, general-purpose temporal reasoningas a substrate for building planning and schedulingsystems. We have also investigated the kinds of tem-poral reasoning that will be most useful, and forwhat problems. Our results confirm that temporalreasoning is a sufficiently self-contained activity tobe implemented entirely independently of the overly-ing application, modulo some assumptions about howproblem-solving is to proceed. We have also shownthat constraint-based temporal reasoning supports a’%ast-commitment" style of planning and schedulingthat is efficacious in a wide variety of complex problemdomains. There have been some surprises, as well, forexample in the fact that causal reasoning in general,and projection in particular, have been less useful thanwe anticipated.

In this paper, we sketch the design, implementation,and semantics of our current temporal reasoning en-gine, loosely based upon Dean’s Time Map Manager(TMM), discuss how that engine has been applied to range of planning and scheduling problems, and drawsome conclusions. The primary lesson to be drawnis that constraint-based temporal reasoning providesan effective basis for building planning and schedulingsystems, particularly in applications where problem-solving is only weakly directed by domain-specific so-lution methods.

IntroductionThe research and implementations described in this pa-per could plausibly be described as an extended exper-iment testing a hypothesis first advanced more thanten years ago by Tom Dean, to the effect that "tempo-ral reasoning" was a commonly-needed capability thatcould usefully abstracted and implemented in a sepa-rate module, which could then be used over and overagain in different applications (Dean 1984). Our pre-liminary result is a confirmation of Dean’s hypothesis,though just what functions are required of or useful

*The work described here was supported in part byARPA and the Air Force Rome Laboratory under con-tract F30602-90-C-0102.

in a temporal reasoner has undergone some modifica-tion. For example, causal reasoning in general, andprojection in particular, have been less useful than weanticipated.

In this paper, we sketch the design, implementation,and semantics of our current temporal reasoning en-gine, loosely based upon Dean’s Time Map Manager(TMM), discuss how that engine has been applied to range of planning and scheduling problems, and drawsome conclusions. The primary lesson to be drawnis that constraint-based temporal reasoning providesan effective basis for building planning and schedulingsystems, particularly in applications where problem-solving is only weakly directed by domain-specific solu-tion methods. The version of the TMM described here,developed under a contract as part of Phase I of thePlanning Initiative, is presented more fully in (Schrag,Carciofini, & Boddy 1992).

Time map managersIn this section, we briefly discuss the history, archi-tecture, and implementation of the temporal reasoningsystem implemented at Honeywell as part of Phase I ofthe Planning initiative. This system was a reimplemen-tation of Dean’s Time Map Manager (TMM) (Dean McDermott 1987). The TMM, conceived as a founda-tion for building planning and scheduling systems, in-cludes capabilities for reasoning about both qualitativeand metric temporal constraints, as well as two formsof causal reasoning: projection and persistence, all inthe presence of incremental change in a dynamic, envi-ronment. The version of the TMM described here, de-veloped under a contract as part of Phase I of the Plan-ning Initiative, is presented more fully in (Schrag, Car-ciofini, & Boddy 1992). The semantics of the systemare described in (Schrag, Boddy, & Carcioflni 1992).

The TMM provides users and application programs(e.g., planners and schedulers) with the following func-tionality:

¯ Qualitative and metric constraints between timepoints.

¯ Causal reasoning.

Boddy 77

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

Figure 1: A simple temporal database

¯ Database monitors for temporal conditions and pro-tections.

¯ Optimizations for large temporal databases.

The structure and capabilities of the TMM are de-scribed in more detail below.

Temporal RelationsThe TMM lets users assert constraints between pairsof time points, resulting in a partial ordering amongthe points. TMM supports queries regarding neces-sary and possible temporal relations among the timepoints. The truth of facts over intervals of time is rep-resented by tokens, which may include properties ofpersistence beyond their observed endpoints. In thecurrent implementation, tokens may persist both for-ward and backward in time. The truth of a propositionover an interval is determined based on the ordering oftoken endpoints and the token’s persistence properties.For example, Figure 1 is a simple temporal database,involving three tokens of three different types. In thisexample, P is true over the interval bounded by thevertical lines, and persists into the future. (not P) be-comes true at a later time, and clips the forward per-sistence of P. The statement "P and Q" is true for aninterval defined by the overlap of the tokens labelled Pand Q.

Causal ReasoningThe TMM currently supports reasoning about thechanging state of the world as activities occur usingtwo forms of inference:

¯ The persistence assumption. As described above,users of the rFMM specify that certain facts are be-lieved to be true over specific intervals of time. Inaddition, they can specify that those facts can beassumed to remain true until something occurs tomake them false.

¯ Projection. This is inference of tile form: given anevent F and a set of preconditions Pt, P9 .... Pk, anda result R, whenever the preconditions are believedto be true for the entire event I: R is believed tobecome true immediately following I:.

These forms of inference are handled completely auto-matically: the user specifies which facts are persistentand asserts a set of projection rules, and the requisiteinference is performed by the system.

As Dean and Boddy show in (Dean & Boddy1987), reasoning about projection and persistence withpartially-ordered points is an NP-complete problem.

78 ARPI

The current implementation employs a decision proce-dure which approximates corrects inference in a poly-nomial algorithm. The approximation is sound but in-complete: the system never concludes incorrectly thata proposition P necessarily holds at some point t, butmay fail to conclude that relation when it does in facthold. 1

Nonmonotonic Reasoning and DatabaseMonitorsTMM supports two basic kinds of nonmonotonic rea-soning:

¯ Possibly true temporal relations between time points(which may be invalidated by additional con-straints), and

¯ Assumed truth of a temporal proposition over aninterval based on a time token’s persistence (whichmay be invalidated by the addition of a contradic-tory token, which clips the proposition during thatinterval).

In addition, the database itself is "nonmonotonic", inthe sense that information can be deleted, and theinference performed by the system thus far will bechecked to ensure that it continues to be supportedby the current state of the database. 2

The existence of specified database properties aschanges are made over time can be tracked throughthe use of monitors. The existing types of TMMdatabase monitors are temporal conditions and protec-lions. Temporal conditions monitor whether specifiedrelations among points can be derived from the currentstate of the database, maintaining this information asthe database changes. Protections do the same thingfor the truth of some fact over an interval. Betweenthem, these two mechanisms provide support for mon-itoring the continued validity of previous inference, ortriggering demons based on complex properties of thetemporal database.

EfficiencyCurrent and planned TMM optimizations for handlinglarge databases include the use of a global referencepoint where appropriate (rather than forcing its useas some systems do), limiting search to that necessaryto prove or disprove a query, caching search resultsfor later use, graph decomposition, temporal indexing,lazy monitor evaluation, and algorithms that are de-signed to search only those parts of the database thatmay result in useful answers.

Temporal reasoning for planning and

schedulingOur efforts in building or extending plarming andscheduling systems using the temporal reasoning capa-

1See (Schrag, Boddy, & Carciofini 1992) for a more com-plete discussion.

~This capability (temporal reason maintenance) is de-scribed in (Dean & McDermott 1987).

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

bilities of the TMM and its descendants started with afairly complete picture of what was desired and whatwas required to achieve those desires. These desideratawere in some measure untested, and part of what wehave done is to validate them.

We are interested in providing solutions to large,complex planning and scheduling problems. A "solu-tion" as we use the term is not simply an implementa-tion of an algorithm for solving a particular constraintsatisfaction or constrained optimization problem. Fornanny domains, constructing plans or schedules is anextended, iterated process that may involve negotia-tion among competing agents or organizations, choicesmade for reasons not easily implementable in an auto-mated system, and last-minute changes when events donot go as expected. In such an environment, the pro-cess by which a plan or schedule is constructed must beconsidered in any attempt to provide a useful system.

SchedulingIn addition to the difficulties attendant upon provid-ing support for scheduling as a process, the more cir-cumscribed problem of generating a single scheduleis becoming increasingly complex. Application do-mains may involve large problem instances, context-dependent activity effects, complex resource struc-tures, and user preferences that may or may not besusceptible to automation. The operational customersfor scheduling systems are increasingly sophisticatedabout the nature of their applications and the schedul-ing problems involved, and thus less and less willingto settle for gross simplifications in how the problem issolved. To provide an effective solution, a schedulingsystem must be expressive enough to represent or re-flect these domain complexities as well as supportingthe process by which a schedule is constructed.

The assumptions underlying our scheduling work areas follows:

1. Explicitly modelling the constraints resulting fromspecific scheduling decisions makes the schedule eas-ier to construct and modify.

2. Representing only those relationships required bythe current set of constraints (the decisions madeso far) provides a more useful picture of the currentstate of the scheduling effort.

The main consequence of this approach is that thescheduler does not manipulate totally-ordered time-lines of activities and resource utilization. Instead, theevolving schedule consists of a partially ordered set ofactivities, becoming increasing ordered as additionalconstraints are added (or less so, as those decisions arerescinded).

In our approach, which we call Constraint EnvelopeScheduling (CES), schedules are constructed by a pro-cess of "iterative refinement," in which scheduling de-cisions correspond to constraining an activity eitherwith respect to another activity or with respect to some

I I I I I~ ~ "- ~pPl P2 PS P4 P8 10

p’?

Figure 2: Gradual hardening of a partial order

timeline. The schedule becomes more detailed as activ-ities and constraints are added. Undoing a schedulingdecision means removing a constraint, not removingan activity from a specified place on the timeline. Fig-ure 2 depicts the process by which a partially orderedschedule is gradually refined into an executable, totallyordered schedule.

This increased flexibility comes at a cost. The ex-plicit representation of partially-ordered activities inthe time map makes reasoning about resource usageand other state changes more complicated. Causal rea-soning and resource profiles both depend on precise or-derings of facts and activities in time, that is, on whatpropositions are true and what activities occur when.For a given partial order, we can determine what factsmight possibly or necessarily hold at a point, in someor all of the total orders consistent with the given par-tial order. With even a very simple causal model, thisis an NP-complete problem (Dean ~ Boddy 1988).

We finesse this problem in several ways. First isby using the approximate reasoning described in theprevious section, implementing strong and weak rea-soning as approximations for what is possibly or nec-essarily true, given the current partial order. For cer-tain classes of inference, in particular problems involv-ing resource capacity or the aggregate duration of mu-tually exclusive activities, strong and weak (even ex-act "necessary" and "possible")reasoning occasionallyprovides insufficient information. For these cases, thereare two possible approaches: simulation (sampling) totally-ordered sequences, or some kind of static graphanalysis to determine better bounds on the system’sbehavior. The end result in either case is an estimateof the likelihood that further constraints on the partialorder will uncover inconsistencies requiring thc sched-uler to backtrack to earlier choices.

Despite the approximate nature of this reason-ing, we are still ahead of the game: where theleast-commitment approach to scheduling can at leastprovide approximate answers in support of schedul-ing decisions (e.g. what order activities should oc-

Boddy 79

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

cur in), timeline schedulers make the same decisionsarbitrarily--putting an activity on the timelinc is astronger commitment than constraining it to occur(say) between two other activities, or within a giventime window.

PlanningTMM support for efficient reasoning about partial or-ders was initially intended to support nonlinear plan-ning. The original intuition behind nonlinear planningwas the happy thought that we could plan by a processof adding orderings only as required to ensure that ourplan has the right effects. This "least commitment"approach was extended to other forms of constraintsin constraint-posting planning (e.g., (Stefik 1981)). an incremental process of eliminating possible plansfrom a set defined by the current set of constraints,constraint-posting planning exactly parallels CES.

The fact that actions take time was abstracted outin the earliest domain models, but metric time anddurations are slowly being incorporated. This kindof reasoning tends to be computationally expensive.Forbin, Deviser, and Sipe all suffer from performanceproblems limiting the size of the problems to whichthey can be applied. In addition, various peoplehave implemented "temporal reasoning systems" inan attempt to isolate and optimize reasoning aboutthe relations among actions, or between actions andother processes (Allen 1983; Dean & McDermott 1987;Arthur & Stillman 1992). OPlan-2 contains a separatercasoning module (the time point network manager)with similar functionality (’rate, Drabble, & Kirby1992).

The correct level of integration between a plannerand a temporal reasoning system such as the TMMis an open question. For example, in doing projec-tion, the TMM builds data dependencies that lookmuch like causal links in an SNLP-style planner, butwithout the bookkeeping required to explore the set ofpossible links in a systematic manner (McAllester Rosenblitt 1991). An SNLP-style planner could makeuse of the lower-level temporal reasoning capabilities ofthe TMM without employment of the causal reasoningmachinery. Backstrom and Nebel provide additionalarguments that projection may not be a useful form ofinference to support current generative planning tech-niques (Nebel & Backstrom 1992).

ApplicationsPlanning and scheduling tools using the TMM havebeen developed for a wide variety of domains, includingoperations planning for a Space Shuttle science mod-ule, satellite data analysis and retrieval for NASA’sMission to Planet Earth, and processor and comnmni-cation scheduling for the Boeing 777 Flight Manage-ment System, and batch scheduling. These systemsrun the gamut from predominantly manual to com-pletely automatic.

80 ARPI

Spacehab: The Kronos scheduler was developed forthe purpose of assisting humans in scheduling exper-iments for a science module that has flown on sev-eral Space Shuttle missions. The scheduling processis largely manual. Activities are manually selected tobe added to the schedule. Constraints such as execu-tion windows and predecessor/successor relationshipsare enforced automatically. The availability of neededresources is also checked automatically--a real bene-fit, since resource requirements can be complex--butthe choice of resource assignment is left up to the hu-man user, unless there is only a single consistent as-signment. Possible and necessary resource conflicts aredetected and presented to the user for resolution, ei-ther through the addition of ordering links betweenactivities, or by changing resource assignments. These"resource bounds" are the visible manifestation of theenvelope of schedules consistent with the current set ofconstraints.

EOSDIS NASA’s Earth Observing System (EOS)is a multi-year, multi-billion-dollar project aimed atgathering scientific information about the Earth’s en-vironment through satellite-based remote sensing. TheEOS Data and Information System (EOSDIS) willbe responsible for archiving and analyzing the re-sulting data. EOSDIS functions include managingmission information, archiving and distributing data,and generating and disseminating scientific data prod-ucts (Dozier & Ramapriyan 1990). We have providedtwo separate applications in support of this process.The first is the Data Archiving and Distribution Sched-uler (DADS), which schedules the retrieval of datafrom terabyte tape archives, its staging on disk duringprocessing, and eventual distribution to the interestedparties (Short et al. 1995). DADS includes an interfaceto an execution and dispatch system, through whichthe schedule is updated automatically as the courseof events diverges from that predicted in the currentschedule. This updating capability highlights one ofthe strengths of the least-commitment CES approach.As long as the course of events does not diverge toofar from that predicted, the system simply updates theprojected start and end times of activities as appropri-ate. When a deadline or some other commitment isthreatened, that fact is detected and the system willreschedule, either automatically or by prompting a hu-man user to make a decision.

The other system we have provided is an extensionof an existing NASA planning tool for image analysis,based on Nonlin. Our extension of this tool in a systemcalled PlaSTiC (Boddy et al. 1995), adds the ability tobacktrack in planning based on estimates on the dura-tion of planning (sub)tasks at any level in the planninghierarchy. These duration estimates are ultimately de-rived from worst-case bounds on execution times forthe primitive subtasks involved, but can also be mod-ified directly based on previous experience. Tile esti-

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

mates are updated automatically as the system runs,permitting a smooth response to a changing computa-tional environment.

Avionics scheduling Another of the applications towhich we have applied constraint envelope schedulingis the generation of static schedules for processing timeand bus communications, involving safety-critical ap-plications running on flight hardware on a commer-cial airplane. The schedule is static for reasons havingto do with verifiability and repeatability of behavior,and ultimately with FAA certification for flight safety.This problem is both large and complex. In a typicalproblem instance, there are approximately 30000 ac-tivities. There are six processors, all between 80% and90% loaded, with processes periodic at rates between5 Hz and 80 Hr. Data communication is specified be-tween processes, not between process instances. Tomake matters worse, we are constructing a schedulefor a 200 mS "frame" which itself runs at 5 Hz. Com-munication from one instance of this frame to the nextis entirely legal, and so there is in some sense a circularmodel of time, in which constraints on activities latein the frame may affect activities early in the frame.

The system constructed for this problem generatesan initial schedule entirely automatically--the problemis too big for any but the most abstract level of manualintervention. Rescheduling is a more interactive pro-cess, in which the user may specify preferences regard-ing what in the existing schedule will change. Thesepreferences are structured according to how changes inthe schedule affect the certification level of various sys-tem functions. Further information on implementationdetails is available in (Boddy & Goldman 1994).

Batch manufacturing The term batch manufactur-ing is used for a range of manufacturing processes bestcharacterized in terms of what they are not. Batchmanufacturing processes are neither continuous nordiscrete. Batch processes usually involve the manu-facture of "stuff" measurable and divisible by volumeor weight, but in discrete lots of limited size. Prod-ucts commonly manufactured using batch processes in-clude cosmetics, plastics, and beer, among many oth-ers. Batch manufacturing "presents special challengesfor scheduling systems, including the unpredictabilityof batch manufacturing processes, the dynamic natureof the environment, and the nature of batch manu-facturing plants, which typically involve a wide vari-ety of shared resources. The Honeywell Batch Sched-uler (Goldman & Boddy 1996) is a prototype batchscheduling system for batch applications, designed toaccommodate the uncertain, dynamic nature of batchmanufacturing processes, as well as the complex re-source and process models that are required. The sys-tem has met with considerable success, and has servedas a valuable source of data regarding the strengthsand weaknesses of our scheduling technology.

Lessons learnedThe implementations described in the last section haveserved to test, and largely confirm, our initial assump-tions regarding the useful attributes of a temporalreasoning system to support planning and scheduling.A constraint-based, least-commitment approach is infact useful across a wide range of domains, and for awide variety of interaction styles, involving both hu-man users and other automated components. Thereare a few additional lessons to he drawn, as well.

For example, any effective scheduling system for amoderately complex domain needs to support the userin constructing an initial schedule, modifying an exist-ing schedule, and detecting and characterizing infeasi-bility. The last of these functions is not unanimouslyrecognized as crucial, or necessarily achievable (con-sider the popularity of unsystematic heuristic-repairtechniques for scheduling), but we have found it tobe of great importance. The initial stages of solvinga scheduling problem can involve an extended periodin which those responsible for generating the initialschedule requirements must be persuaded to modifythose requirements to achieve consistency. In at leastone case, the opening moves in this process involveddecreasing required processor loading from somethingover a hundred percent. So, we do systematic search.

To support both culprit identification in inconsis-tent problems and incremental rescheduling, we needto be able to refer to previous scheduling decisions, andto associate them with specific effects on the current(partial) schedule. Our current approach to providingthe necessary functionality is to restrict search opera-tions (~scheduling decisions") to those implementableas added variables for which the assignment can bereflected in the underlying CSP as explicitly addedconstraints (this is a specialized form of propagation).There are some potential difficulties with this ap-proach, including first and foremost the choice of whatsearch variables to add, so as to structure the prob-lem in the appropriate way. This approach presentsa significant problem for our use of Constraint LogicProgramming tools such as CHiP or ILog Solver.

Another observation we can make is that thereis a very significant qualitative distinction betweenscheduling domains that are strongly "temporal" andthose that are not. In particular, a lot of fairly elabo-rate machinery that we have developed for use on thestrongly temporal problems is much less useful whenthe real difficulty is in terms of, say, resource assign-ment.

Dynamic backtracking

Our scheduling tools use an extended variant of Gins-berg’s Dynamic Backtracking algorithm (Ginsberg1993). One of these extensions was to enable thesearch engine to report the set of inconsistent vari-ables involved, should it fail to find a solution. Thisprovides the culprit identification necessary, while the

Boddy 81

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

systematic search ensures that inconsistencies will bedetected.

The second extension that we made was necessitatedby the nature of scheduling problems, or at least ofhow we represent them. Ginsberg’s algorithm involvesgenerating eliminations: explanations of why a givenvalue for some variable is ruled out given the currentpartial assignment. The assumption that eliminationsare available by inspection does not work for complextemporal constraints: frequently we discover that agiven ordering is infeasible only through some form ofpropagation. Accordingly, we have extended the al-gorithm to handle unsuccessful attempts to assign agiven value to a variable. In this case., the search en-gine undoes the assignment (including removing anyadded constraints), records an elimination explanationfor that value, and reports failure back to the sched-uler.

Empirically, this extended implementation of Gins-berg’s algorithm has been invaluable. Some of ourscheduling problems involve some tens of thousandsof variables representing choices on ordering, resourceassignments, and other relationships. Given the diffi-culty of localizing variable interaction, sorting relatedvariables to be close to each other is impractical orimpossible. Despite considerable effort, we have notmanaged to find variable or value ordering heuristicsthat result in backtrack-free solutions (though we douse a variant of Smith’s "slack" heuristic for value or-dering (Smith & Cheng 1993)).

For these reasons, having a search method thatleaves intact that part of a partial assignment not in-volved in a given inconsistency is crucial. One of theways in which we might have run into trouble usingdynamic backtracking has not materialized, either: in-consistencies typically involve less than 30 variables.This means that the elimination bookkeeping is keptwithin bounds, as well.

Related workThe idca that schedules should be constructed "fromthe side," looking at part or all of the schedule his-tory rather that just sweeping forward or backwardin time, has been implemented in several schedul-ing systems, e.g. (Fox 1990; Biefeld & Cooper 1989;Smith et al. 1986). Typically, these systems also sup-port an iterative process of schedule refinement or re-pair. Recent work on COMPASS provides a protocolfor allowing different agents to modify the same sched-ule, wherein commitments made by one agent cannotbe affected by the actions of any other. Researchin constraint-based scheduling (Fox & Smith 1984;Smith et al. 1990; Sadeh & Fox 1990) has demon-strated the advantages of considering the structure ofproblem constraints over time and using this structureto dynamically focus decision-making on the most crit-ical decisions. However, these systems have historicallyhad a weak model of the interaction of activities and

82 ARPI

the evolving state of the domain.Research in generative planning has focused on the

construction of activity networks that bring about de-sired goal states, given basic representations of the ef-fects of actions in the world. Classical domain model-ing assumptions (Fikes, Hart, & Nilsson 1972) make difficult to reason about the duration of activities, con-tinuously varying quantities, and resource consump-tion. The consequence of these limitations is that au-tomatic planners have not had much success in ap-plications to significant planning and scheduling prob-lems (Dean, Firby, & Miller 1988; Vere 1983). Re-cent work addressing the integration of constraints andclassical planning may result in a resolution of some ofthese issues (Muscettola 1993; Penberthy & Weld 1993;Tate, Drabble, & Kirby 1992).

Summary and discussionWe have made successful application of our imple-mented temporal reasoning capabilities to planningand scheduling in a wide variety of domains, support-ing a wide range of intcraction styles. One of theprimary strengths we see in this approach is in thatrange: being able to move smoothly across a contin-uum from manual to automatic problem-solving is avaluable characteristic for an operational system. Inour experience, users desire for automation increaseswith increasing familiarity with and trust in the toolthey have bccn given, as well as with an increasing un-derstanding of how to solve the problem at hand usingthat tool.

Our experiences confirm that temporal reasoningis a sufficiently self-contained activity to be imple-mented entirely independently of the overlying appli-cation, modulo some assumptions about how problem-solving is to proceed. We have identified the followingfunctionality as useful in any substrate for providingeffective planning and scheduling solutions in complexdomains:¯ Systematic search, or at least feasibility checks.

¯ Culprit identification on the detection of inconsis-t.encies (why is the problem as specified infeasible?).

¯ Incremental rescheduling.

¯ Support for a mix of manual and automatic schedul-ing.

¯ A clear mapping from some feature of the currentstate of the schedulc to the decisions responsible forthat feature.

We have constructed a variety of flexible and power-ful scheduling tools, where the necessary extensions tothe TMM were small in comparison to the size of theTMM itself, consisting primarily of interface supportand activity and resource models. We have also shownthat constraint-based temporal reasoning supports a"least-commitment" style of planning and schedulingthat is efficacious in a wide variety of complex problemdomains.

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.

There have been some surprises, as well, for examplein the fact that causal reasoning in general, and projec-tion in particular, have been less useful than we antic-ipated. Reasoning about scheduling with state is oneplace that projection might come in handy) but, as inplanning, scheduling is frequently more of a synthetictask than an analytic one. So, for example, insteadof reasoning using projection about what states holdwhen, we might specify the state desired at a givenpoint in time, then constrain further development ofthe schedule so that that specification is satisfied. Pro-jection could be an important capability for planningin the presence of exogenous events, for simulation, or

for diagnosis.Our current work in planning and scheduling ad-

dresses several areas, including research on schedulingwith state information and the integration of optimiza-tion methods with our current system, new systemcapabilities, such as a negotiation-based distributedscheduling architecture, and further extensions to theefficiency and expressive power of the basic software.

ReferencesAllen, J. 1983. Maintaining knowledge about temporalintervals. Communications of the A CM 26:832-843.Arthur, R., and Stillman, J. 1992. Tachyon: A modeland environment for temporal reasoning. Notes of AAAIWorkshop on Implementing Temporal Reasoning, 1-13.Biefeld, E., and Cooper, L. 1989. Scheduling withchronology-dixected seaxch. In Proc. AIAA Computers inAerospace VII, 1078-1087.

Boddy, M., and Goldman, R. 1994. Empirical resultson scheduling and dynamic backtracking. In Proceedingsof the International Symposium on Artificial Intelligence,Robotics, and Automation for Space.Boddy, M.; White, J.; Goldman, R.; and Short, N. 1995.Integrated planning and scheduling for earth science dataprocessing. In Hostetter, C. F., ed., Proceedings of the1995 Goddard Conference on Space Applications of Artifi-cial Intelligence and Emerging Information Technologies,91-101. Available as NASA Conference Publication 3296.Dean, T., and Boddy, M. 1987. Incremental causal reason-ing. In Proceedings AAAI-87 Sixth National Conferenceon Artificial Intelligence, 198-201.Dean, T., and Boddy, M. 1988. Reasoning about partiallyordered events. Artificial Intelligence 36:375-400.

Dean, T., and McDermott, D. V. 1987. Temporal database management. Artificial Intelligence 32:1-55.

Dean, T.; Firby, R.; and Miller, D. 1988. Hierarchicaiplanning involving deadlines, travel time, and resources.Computational Intelligence 4:381-398.Dean, T. 1984. Planning and temporal reasoning underuncertainty. In Proceedings IEEE Workshop on Principlesof Knowledge.Based Systems. IEEE.Dozier, J., and Ramapriyan, H. 1990. Planning for thecos data and information system (eosdis). In The Scienceof Global Environmental Change. NATO ASI.Fikes, R.; Hart, P.; and Nilsson, N. 1972. Leaxning andexecuting generalized robot plans. Artificial Intelligence3:251-288.

Fox, M., and Smith, S. 1984. Isis: A knowledge-basedsystem for factory scheduling. Expert Systems 1(1):25-49.Fox, B. R. 1990. Non-chronologicai scheduling. In Proc.AI, Simulation, and Planning in High Autonomy Systems.IEEE Computer Society Press.Ginsberg, M. 1993. Dynamic backtracking. Journal ofArtificial Intelligence Research 1:25-46.Goldman, R. P., and Boddy, M. S. 1996. Constraint-based scheduling for batch manufacturing. IEEE Expert,to appear.McAllester, D., and Rosenblitt, D. 1991. Systematic non-lineax planning. In Proceedings of the Ninth National Con-ference on Artificial Intelligence, 634-639.Muscettola, N. 1993. Hsts: Integrating planning andscheduling. Technical Report CMU-RI-TR-93-05, TheRobotics Institute, Carnegie Mellon University.Nebel, B., and Backstrom, C. 1992. On the complexity oftemporal projection and plan validation. In ProceedingsAAAI-9~ Tenth National Conference on Artificial Intelli-gence, 748-753.Penberthy, J. S., and Weld, D. S. 1993. Temporal planningwith constraints (preliminary report). In Working Notes,A A A I Spring Symposium on Classical Planning, 112-116.Also available as a AAAI tech rpt, forthcoming.

Sadeh, N., and Fox, M. 1990. Variable and value order-ing heuristics for activity-based job-shop scheduling. InProceedings of the Fourth International Conference on Ex-pert Systems in Production and Operations Management,Hilton Head bland, S.C.Schrag, R.; Boddy, M.; and Caxciofini, J. 1992. Managingdisjunction for practical temporal reasoning. In Proceed-ings of the Third International Conference on Principlesof Knowledge Representation and Reasoning.Schrag, R.; Carciofini, J.; and Boddy, M. 1992. Trammanuai. Technical Report CS-R92-012, Honeywell SRC.Short, N.; Bedet, J.-J.; Bodden, L.; Boddy, M.; White,J.; and Beane, J. 1995. Constraint based scheduling forthe goddaxd space flight center distributed active archivecenter’s data archive and distribution system. In Proceed-ings of the Fourth NASA/Goddard Conference on MassStorage Systems and Technologies.Smith, S. F., and Cheng, C.-C. 1993. Slack-based heuris-tics for constraint satisfaction scheduling. In ProceedingsAAAI-93, 139-144. AAAI.Smith, S.; Ow, P.; LePape, C.; McLaren, B. S.; andMuscettola, N. 1986. Integrating multiple scheduling per-spectives to generate detailed production plans. In Pro-ceedings of the SME Conference on AI in Manufacturing.

Smith, S.; Ow, P.; Potvin, J.; Muscettola, N.; ; andMatthys, D. 1990. An integrated framework for gener-ating and revising fax.tory schedules. Journal of the Op-erational Research Society 41(6):539-552.Stefik, M. J. 1981. Planning with constraints. ArtificialIntelligence 16:111-140.

Tate, A.; Drabble, B.; and Kirby, R. 1992. Spacecraftcommand and control using ai planning techniques. Tech-nicai Report AIAI-TR-109, University of Edinburgh.Vere, S. 1983. Planning in time: Windows and durationsfor activities and goals. IEEE Transactions on PatternAnalysis and Machine Intelligence PAMI-5.

Boddy 83

From: ARPI 1996 Proceedings. Copyright © 1996, AAAI (www.aaai.org). All rights reserved.