Learning Center
Plans & pricing Sign in
Sign Out
Get this document free

Scheduling and Planning - Is Scheduling a Solved Problem


									                  Planning and Scheduling

                        Stephen F. Smith

                        The Robotics Institute
                      Carnegie Mellon University
                         Pittsburgh PA 15213

Carnegie Mellon

        • What is Scheduling?
        • Current State of the Art: Constraint-Based
          Scheduling Models
        • Is Scheduling a Solved Problem?

Carnegie Mellon
                  What is Scheduling?

        Allocation of resources to activities over time so
          that input demands are met in a timely and cost-
          effective manner
        Most typically, this involves determining a set of
         activity start and end times, together with
         resource assignments, which
          • satisfy all temporal constraints on activity
            execution (following from process
          • satisfy resource capacity constraints, and
          • optimize some set of performance objectives to
            the extent possible
Carnegie Mellon
                A Basic Scheduling Problem

             op1        op1
                          2         op1

      rel1                                 dd1

                   R1         R2
                                                 i      j     st(i) + p(i) < st(j), where p(i)
                                                              is the processing time of op i

                op2           op2                i      R      j
                  1             2
                                                     st(i) + p(i) < st(j)     st(j) + p(j) < st(i)
        rel 2                        dd2
                                                 rel j < st(i), for each op i of job j
                                                 dd j > st(i) + p(i), for each op i of job j

Carnegie Mellon
     A More Complex Scheduling Problem


              Air-POE             Sea-POD    Destination


Carnegie Mellon
                  Scheduling Research:
                   The Last 10 Years

        • Major advances in techniques for solving
          practical problems
            • Constraint solving frameworks
            • Incremental mathematical programming models
            • Meta-heuristic search procedures
        • Several significant success stories
        • Commercial enterprises and tools

Carnegie Mellon
            Constraint-Based Scheduling

         Commitment       Active Data Base        Conflict
          Strategies/    (Current Schedule)       Handling
                        Constraint Propagation

           • Modeling Generality/Expressiveness
           • Incrementality
           • Compositional
Carnegie Mellon
                      What is a CSP?

        Given a triple {V,D,C}, where
            • V = set of decision variables
            • D = set of domains for variables in V
            • C = set of constraints on the values of
              variables in V
        Find a consistent assignment of values to all
          variables in V

Carnegie Mellon
                  A Basic CSP Procedure
        1. [Consistency Enforcement] - Propagate
          constraints to establish the current set vd of feasible
          values for each unassigned variable d
        2. If vd = Ø for any variable d , backtrack
        3. If no unassigned variables or no consistent
           assignments for all variables, quit; Otherwise
        4. [Variable Ordering] - Select an unassigned
           variable d to assign
        5. [Value Ordering] - Select a value from vd to assign
           to d.
        6. Go to step 1
Carnegie Mellon
        Formulating Scheduling Problems
                    as CSPs

        “Fixed times” model
           • Find a consistent assignment of start times to
           • Variables are activity start times
        Disjunctive graph model
           • Post sufficient additional precedence
             constraints between pairs of activities to
             eliminate resource contention
           • Variables are ordering decisions

Carnegie Mellon
       A Simple Job Shop Scheduling CSP
           Variables: start times (stj,i) - Domain: [0,12]

      Job1:        O1,1                    O1,2                 O1,3
                  [0,12]                 [0,12]               [0,12]

                                    R1                                            R3
      Job2 :        O2,1                     O2,2
                  [0,12]                   [0,12]
       Job3 :               O3,1                   O3,2                                     O3,3
                           [0,12]             [0,12]                                      [0,12]

                  Oi,j          Oi,k                       Oi,j           Rx        Ok,l
                Sti,j + Duri,j ≤ Sti,k            Sti,j + Duri,j ≤ Stk,l V Stk,l + Durk,l ≤ Sti,j

Carnegie Mellon
                  Constraint Propagation

        Deductive process of inferring additional
         constraints from existing constraints as decisions
         are made
        Two roles:
            • Early pruning of the search space by eliminating
              infeasible assignments
            • Detection of constraint conflicts

Carnegie Mellon
             Some Constraint Propagation
    K-consistency guarantees that any locally consistent
     instantiation of (K-1) variables is extensible to any K-th
      Example: 2-consistency (“arc-consistency”)

    Complexity: Enforcing K-consistency is (in general)
     exponential in K
      • Forward Checking: partial arc-consistency only
        involving constraints between an instantiated
                     variable and a non-instantiated one
Carnegie Mellon
         Temporal Constraint Propagation
          through Precedence Constraints
        Assume dui,j = 3 for all Oi,j
           • Before propagation:
                   O1,1              O1,2     O1,3
                  [0,12]           [0,12]    [0,12]

           • Forward propagation

                    O1,1              O1,2     O1,3
                   [0,12]          [3,12]    [6,12]
           • Backward propagation

                    O1,1              O1,2      O1,3
                   [0,6]            [0,9]     [6,12]

Carnegie Mellon
         Capacity Constraint Propagation

        Observation: Enforcing consistency with respect to
         capacity constraints is more difficult due to the
         disjunctive nature of these constraints
        Forward Checking:
                      O1,1         Scheduled to start at time 6


                                    Before propagation: [6,12]
                      O2,1          After propagation: [9,12]

Carnegie Mellon
            Pruning Operation Ordering
       Example: Erschler’s dominance conditions

        Conclusion: Oi cannot precede Oj
        In general: For any unordered pair of operations {Oi, Oj},
        we have four possible cases:
                  1. LSTi < EFTj and LSTj ≥ EFTi: Oi is before Oj
                  2. LSTj < EFTi and LSTi ≥ EFTj : Oj is before Oi
                  3. LSTi < EFTj and LSTj < EFTi : inconsistency
                  4. LSTi ≥ EFTj and LSTj ≥ EFTi: both options remain open
Carnegie Mellon
                             Edge Finding

        • S - a set of operations competing for resource R
        • O - an operation not in S also requiring R
    ((LFT(S) - EST(S) < Dur(O) + Dur(S))
                                                          EST(O) ≥ EST(S) + Dur(S)
      (LFT(S) - EST(O) < Dur(O) + EST(O))

                                     OP k

                                     OP j

                                     OP i

                               10              20             30

                   S = {OPi ,OP j}; O = OP k                      ≥
                                                    Start Time OP k 25
Carnegie Mellon
                  More Complex Temporal

        “Simple Temporal Problem” (STP) [Dechter91]
            • Edge-weighted graph of time points expressing
              constraints of the form: atpjtpib
            • Assuming no disjunction, allows incorporation of
                • Temporal relations:
                    • finish-to-start <0, ∞> (precedence)
                    • start-to-finish <t1,t2> (duration)
                    • Start-to-start <0,0> (same-start)
                    • ...
                • Metric bounds: offsets from time origin
            • Efficiently solved via all-pairs shortest path

Carnegie Mellon
           Constraint-Posting Scheduling
         • Conduct search in the space of ordering
             • variables - Ordering(i,j,R) for operations i
               and j contending for resource R
             • values - i before j, j before i
         • Constraint posting and propagation in the
           underlying temporal constraint network
           (time points and distances)

Carnegie Mellon
                Search Heuristics
          (Variable and Value Ordering)
      • Slack/Temporal Flexibility
         • Choose pair of activities with least sequencing
         • Post sequencing constraint that leaves the most slack
      • Resource Demand/Contention
         • Identify bottleneck resource
         • Schedule (or sequence) those activities contributing
           most to demand
      • Minimal critical sets
         • Generalization to multi-capacity resources

Carnegie Mellon
                      Search Control

        • Backtracking-based search
        • Least-Discrepancy Search
        • Iterative Re-starting with randomized heuristics
        • Local search - Tabu, GAs, etc.

Carnegie Mellon
                   The Broader Picture
     Constraint posting provides a framework for integrating
      planning and scheduling
        • contemporary temporal planners operate with analogous
          representational assumptions
        • E.g., IXTET, HSTS/RAX, COMIREM, …
        • “Constraint-Based Interval Planning” [D. Smith 00]
     Constraint posting is a relatively unexplored approach to
      scheduling with several advantages
        • more flexible solutions
        • simple heuristics can yield high performance solution
          techniques under a wide variety of problem constraints

Carnegie Mellon
                  Technological Strengths

        • Scalability
        • Modeling flexibility
        • Optimization
        • Configurable

        So, Is scheduling a solved problem?

Carnegie Mellon
                              What is Scheduling (Again)?
                Classic view:
                   • Scheduling is a puzzle solving activity-
                                    • Given problem constraints and objective criterion, figure
                                      out how to best tile the capacity over time surface with
                           • Research agenda - specify new puzzles and/or
                             provide new best solutions
                                                                          i         j
            OP1,1           OP1,2           OP1,3
                                                               st(i) + p(i) ≤ st(j), where p(i)
    rd1                                                       is the processing time of op i                       OP2,1 OP1,2
                      R1             R2               dd1                                                 R1
                                                                      i        R         j

                                                            st(i) + p(i) ≤ st(j) V st(j) + p(j) ≤ st(i)   R2   OP1,1     OP2,2   OP1,3
                    OP2,1           OP2,2

                                                             rd(j) ≤ st(i) for each op i of job j
          rd2                                       dd2

                                                                  Minimize ∑ |c(j) - dd(j)|

Carnegie Mellon
        What’s Missing from the Classical
              View of Scheduling
       Practical problems can rarely be formulated as static
         optimization tasks
          • Ongoing iterative process
          • Situated in a larger problem-solving context
          • Dynamic, unpredictable environment

Carnegie Mellon
                    Managing Change

        “Scheduling” is really an ongoing process of
          responding to change


               Project Crisis Action
             Management Planning

          • Unpredictable, Dynamic         • Predictable, Stable
              Environment                       Environment
          • Robust response                • Optimized plans
Carnegie Mellon
        Approaches to Managing Change

        • Build schedules that retain flexibility
        • Produce schedules that promote localized recovery
        • Incremental re-scheduling techniques (e.g., that
          consider “continuity” as an objective criteria)
        • Self-scheduling control systems

Carnegie Mellon
            Incremental Schedule Repair

        Several competing approaches to maintaining
          solution stability
            • Minimally disruptive schedule revision (temporal
              delay, resource area, etc.)
            • Priority-based change
            • Regeneration with preference for same decisions
        Little understanding of how these techniques stack
          up against each other
        Even less understanding of how to trade stability
          concerns off against (re)optimization needs

Carnegie Mellon
       Delayed-Commitment Scheduling
        Identify a contention peak and post a leveling constraint

               Activity 2                                   Activity 2
  R1         Activity 1
                                         R1   Activity 1

          • Retain flexibility implied by problem constraints
            (time and capacity)
          • Can establish conditions for guaranteed

Carnegie Mellon                                            Carnegie Mellon
                Building Robust Schedules

        Some open questions:
            •   Extended conditions for “Dispatchability”
            •   Robustness versus optimization
            •   Use of knowledge about domain uncertainties
            •   Local search with robust representations

Carnegie Mellon
                  Self-Scheduling Systems

         • Distribute decision-making among individual
           entities (machines, tools, parts, operators;
           manufacturers, suppliers)
         • Specify local behaviors and protocols for
         • Robust, emergent global behavior

Carnegie Mellon
          Morley’s GM Paint Shop System

                                  Bid           Booth   Bid parameters:
                                                        - same color as
               Dispatcher        Announcement            last truck
                                  (new truck)           - space in queue
                                                        - empty queue
 “If bid for same color then award              Booth
    else if empty booth then award                2
            else if queue space then award”

Carnegie Mellon

          •   Complexity reduction
          •   Simple, configurable software systems
          •   Robust to component failures
          •   More stable computational load
          • No understanding of global optima (or how to achieve
            global behavior that attends to specific performance goals)
          • Prediction only at aggregate level (can become unstable)

Carnegie Mellon
                Adaptive Systems:
          “Routing Wasps” in the Factory

          1       R-Wasp                            ST2
                              P(route|ST,ØT) = _________
                                                S T2 + ØT2
           .       Agent2
                                    B        C
           .                        A       Jobs   B
                  R-Wasp      A
        Machine   AgentN                       C             Stimulus:
          N                             B                       SB

                    Response Thresholds:
                       ØA, ØB, ØC, ...
Carnegie Mellon
          Updating Response Thresholds

       ØT = ØT – ∆1 if next job is same type as current job
       ØT = ØT + ∆2 if next job is a different type
       ØT = ØT – ∆3 if the machine is currently idle

       • Routing framework can be seen as an adaptive variant
         of Morley’s bidding rule
       • Experimental results showing significant performance

Carnegie Mellon
         Some Open Issues in Multi-Agent

        • Self-scheduling approaches do not preclude the use
          of advance schedules
            • How to incorporate?
        • Opportunistic optimization
        • Cooperative, distributed scheduling is a fact of life
          in many domains (geographic constraints,
          autonomous business entities, etc.)
            • How to negotiate and compromise?
            • Can self-interest be compatible with global performance

Carnegie Mellon
        Integrating Planning & Scheduling

       “Planning & scheduling are rarely separable”

                         Waterfall Model
                               Plan                   Schedule

                       Mixed-Initiative Model

Carnegie Mellon
                        Design Issues

        • Integrated search space versus separable sub-
        • Single solver versus interacting solvers
        • Resource-driven versus strategy-driven
        • Loose coupling versus tight coupling

Carnegie Mellon
                JFACC Planner/Scheduler

                                     Plan Server

                                       PLANS                Constraint
                                     SCHEDULES               Based
               (SRI)                 ANNOTATIONS            Scheduler

 Technological                          Experimental
 • Interleaved generation & repair      • Simple, low-cost info. exchanges yield
   of plans/schedules                      • Marked reduction in comp. time
 • Distributed architecture to             • Comparable plan/schedule quality
   support remote collaboration         • More complex models can improve
                                          performance further
Carnegie Mellon                      SRI International
           Some Challenges that Remain

        • Scheduling models that incorporate richer
          models of state
        • Can integrated P & S problems really be solved
          as one big optimization task?
            • The limitations of SAT-style approaches
        • How to achieve tighter interleaving of action
          selection and resource allocation processes
        • Managing change in this larger arena

Carnegie Mellon
                  Requirements Analysis

        “Scheduling is really a process of getting the
          constraints right”

        Current tools designed around a “Specify and
         Solve” model of user/system interaction
           • Inefficient problem solving cycle
        Mixed-Initiative solution models
           • Incremental solution of relaxed problems
           • Iterative adjustment of problem constraints,
             preferences, priorities

Carnegie Mellon
         Use of Relaxed Models to Identify
           Resource Capacity Shortfalls

Carnegie Mellon
            The AMC Barrel Allocator
      Domain: Day-to-Day Management of Airlift & Tanker Assets
       at the USAF Air Mobility Command (AMC)
      Technical Capabilities:
         • Efficient generation of airlift and tanker schedules
         • Incremental solution change to accommodate new
           missions and changes in resource availability over time
         • Flexible control over degree of automation
         • Selective, user-controlled constraint relaxation and
           option generation when constraints cannot be satisfied

Carnegie Mellon
                               Parameterizable Search
                                C141, [t1,t2]
                                                                                          Search Configurations
GenResources                                                                Feasible - <GenRequestedRes,GenIntervals,EvalMinCompletion >
                     305th      437th      60th       62nd                  Delay - <GenRequestedRes, GenDelayInts, EvalMinTardiness>
                     AMW        AMW        AW          AW                   Over-Allocate - <GenRequestedRes, GenOverInts,
GenIntervals                                                                                                         EvalMinOverUsage>
                                                                            Bump – <GenRequestedRes, GenBumpInts, EvalMinDisruption>
        I1,305   I2,305 ... I1,437 I2,437 ... I1,60   I1,60 ... I1,62 ...   Alternative-MDS - < GenAlternRes, GenIntervals,
                                                                            Composite Relaxations - …

   Feasible - <GenResources, GenIntervals, EvalMinCompletion>

Carnegie Mellon

Carnegie Mellon
           Mixed-Initiative Scheduling

        • Management of user context across
          decision cycles
        • Explanation of scheduling decisions
            • Why did you do this?
            • Why didn’t you do that?
        • Adjustable autonomy

Carnegie Mellon
           Research Directions for the
                 Next 10 Years

        • Deeper integration of AI and OR techniques
        • Robust schedules and scheduling
        • Global coherence through local interaction
        • Extension to larger-scoped problem-solving
        • Rapid construction of high performance
          scheduling services

Carnegie Mellon

To top