© J. Christopher Beck Lecture 30: Scheduling Systems 1
© J. Christopher Beck Outline Databases & Knowledge-bases Optimization Module User Interface
Manufacturing Scheduling Systems Production planning, master scheduling Quantities, due dates Orders, demand forecasts Material requirements planning, capacity planning Scheduling and rescheduling Dispatching Capacity status Material requirements Schedule Shop orders, Release dates Scheduling constraints Detailed scheduling Scheduling performance Shop floor management Shop floor Job loading Data collection Shop status
© J. Christopher Beck Service Scheduling Systems Database Scheduling Yield management Customer Status Forecasts Pricing Data Orders, reservations Accept/ reject Database
© J. Christopher Beck Scheduling System Itself Database Interface Schedule Generator Schedule EditorPerformance Evaluator GUI DB KB ?
© J. Christopher Beck Database Plant layout, resources planned maintenance, calendars Jobs/process plans Recipe for each order Processing times, routings, etc. Bill of materials Set-up times Customer/Supplier details (priorities) DB
© J. Christopher Beck Database: Orders Ex: Paper Mill DB OrderCustomerCMTWDTBWGRFNSHQTYDDTPRDT PUR01410UZSOY CO /2505/24 PUR01411UZSOY CO /25 PUR01412UZSOY CO /01 TAM01712CYLEE LTDPR /2805/23 TAM01713CYLEE LTD /2805/23 TAM01713CYLEE LTD /07 EOR01310LENSTRA NVHLD /15 Comment Width Basis Weight GradeFinishQuantityDue dateDate produced
© J. Christopher Beck Schedule Generation Module Some sort of custom built “system” May be done by hand or with Excel! DB download up-to-date information Build schedule publish! iterate
© J. Christopher Beck Building Schedule Any (or none!) of the scheduling techniques we discussed in this course could be used It may be a mix of heuristics and human intervention or may be a more sophisticated system (e.g., based on CP or local search)
© J. Christopher Beck GUI Should allow wide range of interaction User should be able to schedule by hand (i.e., place activities where ever they like) change schedules make some decisions let the schedule builder do the rest let the schedule builder do everything
© J. Christopher Beck GUI The user knows more than the system! System needs to allow the user to make “bad” decisions from the systems point of view What-if analysis “If I put this job on this machine, what happens?” “If this machine goes down for maintenance …?”
© J. Christopher Beck GUI Provides schedule evaluation Does the schedule break any constraints? Multiple optimization criteria There might really be more than one criteria!