scheduling and timetabling lecture 1 han hoogeveen
play

Scheduling and Timetabling, Lecture 1 Han Hoogeveen, Utrecht - PowerPoint PPT Presentation

Scheduling and Timetabling, Lecture 1 Han Hoogeveen, Utrecht University 1 What to expect in this course Two parts: How to solve real-life planning problems from logistics Machine scheduling (more theory oriented) 2 Grading Three different


  1. Scheduling and Timetabling, Lecture 1 Han Hoogeveen, Utrecht University 1

  2. What to expect in this course Two parts: How to solve real-life planning problems from logistics Machine scheduling (more theory oriented) 2

  3. Grading Three different components Oral exam: counts for 50% Presentation: counts for 25% Take-home assignments: counts for 25% 3

  4. Literature There is neither a book, nor a reader Instead: Journal papers These papers appear on the website: http://www.cs.uu.nl/docs/vakken/stt/ 4

  5. Consultancy skills Goal: find out what the actual problem is (requirements) Translate this into a model that you can work on Make assumptions (check them afterwards if possible) Formulate hard constraints Formulate soft constraints Identify objective Identify what you can change and what is given. Check the model by consulting the ‘problem owner’ . (This can be extremely frustrating ...). Subject of Assignment 1 : Assign IC3s and IC4s for operating the railway line Den Helder - Nijmegen for an entire day. 5

  6. On line capacity planning for car repairs Master’s study of Jules van Kempen 6

  7. Description Mercedes dealers Rüttchen and EMA: 30+ franchises Share one workplace for repairs and maintenance The receptionists plan repairs The head of the workplace assigns the planned repairs to capable mechanics 7

  8. Customer on the phone Receptionist Hears what is wrong Estimates how much capacity of what kind is needed Checks the available capacity in the workplace Makes an appointment with the workplace 8

  9. Not satisfactory Planning done by hand (using a planboard), customer is waiting on the phone = ⇒ not quite optimal. 9

  10. Automization project Goal: support the receptionist in checking capacity and planning repairs Project group formed IT company hired Contacted CWI in Amsterdam for algorithmic support Jules was added to the project group 10

  11. Requirements 1 Each planning question must be answered within a few seconds (customer is waiting) 2 The model used must be as close to reality as possible (given the time constraint) 11

  12. Required functionalities Questions that must be answered Can it be repaired in a given interval? What is the earliest time at which it can be ready? What is the earliest time at which it can be ready, given that the repair takes no more than T units of time? N.B. The planning is done on the capacity level. 12

  13. Demands by the receptionist More options for the receptionist Force planning (even if there is no capacity) to help stranded cars (and preferred customers). Insight into the planning: For each type of capacity the possible capacity shortage the amount of capacity available the amount of capacity that has already been assigned 13

  14. Capacity Several kinds of repairs are distinguished APK Maintenance Ligth/Heavy, Repair . . . For each kind of repair a mechanic needs a qualification 14

  15. Defining capacity The receptionist only performs a capacity check (detailed planning is left to the head of the workplace) = ⇒ Assumption : Mechanics with the same collection of qualifications may be grouped together and their capacities are combined. The capacity of a mechanic is computed as the amount of time available times (100 − bufferpercentage)%. Capacity of a group of mechanics can be assigned to a task only if they have the right qualifications. 15

  16. Repairs Repairs have the following characteristics Release date (time at which the driver brings the car) Deadline (time at which the driver picks up the car) Model requirements We can only assign capacity to a repair during a time interval that is between the release date and deadline. A set of repairs fits only if it causes no additional shortage of capacity in any interval. 16

  17. Repairs (2) Each repair is built up by a list of subtasks, characterized by The type of work required The time (= amount of capacity) required Type of work and duration are ‘guessed’ by the receptionist without seeing the car. The buffer is used to cope with mistakes in the estimate; if necessary, then work overtime. Further characteristics of a subtask The minimum number of mechanics who can work on this subtask The maximum number of mechanics who can work on this subtask 17

  18. Assumptions Preemption is allowed Different parts of a repair can be executed by different groups 18

  19. Constraints Different subtasks of the same repair can never be executed at the same time. At any point in time, for any subtask, no fewer than the minimally required number of mechanics may work at this subtask. At any point in time, for any subtask, no more than the maximally allowed number of mechanics may work at this subtask. 19

  20. Solving the problem The goal is to assign capacity to subtasks such that all constraints are met. Since preemption is allowed, this can be converted into a feasible schedule. Key observation: work with time intervals, which are such that the situation remains the same within the interval = ⇒ let each change point correspond to a bound. These change points correspond to changes in availability of the car: release date and deadline availability of mechanics 20

  21. Solving the problem (2) Solution method: linear programming. Decide on the amount of capacity of interval group IG that you assign to subtask j . The release dates and deadlines are worked into the model by assigning no capacity to subtask j in interval i if j is not available in interval i . A set of tasks can be executed in the designated intervals if and only if there is no shortage of capacity. Then the outcome value of the LP-model will be equal to the total amount of work required by all subtasks. Compute the capacity shortage as the total amount of work required minus the total capacity assigned. The release date is usually provided by the car owner, but the optimal deadline must be set by the receptionist. 21

  22. Required functionalities Questions that must be answered Can it be repaired in a given interval? What is the earliest time at which it can be ready? What is the earliest time at which it can be ready, given that the repair takes no more than T units of time? 22

  23. A given interval Now the owner has specified the release date and the deadline. 1 Solve the LP-model without the new task and compute the shortage. 2 Solve the LP-model with the new task and compute the shortage. If the shortage has not increased, then this new task fits. N.B. There can be shortage, because of the planning of the forced repairs. 23

  24. As early as possible The customer chooses the release date. We want to find the earliest deadline such that the task fits Compute the smallest value of the deadline that is theoretically possible Check whether it fits. If it does not fit, then use the additional shortage to compute a new guess for the earliest deadline, etc. 24

  25. The customer waits for it The customer specifies a release date and a maximum time during which he wants to wait. Given these, we compute the first deadline and check whether it fits. As long as it does not fit, increase the release date by t units of time and check again ( t specifies the desired accuracy). 25

  26. Remaining capacity per qualification Compute the shortage for the current set of tasks Add a big task that just needs an amount of Q of capacity of the given qualification. Compute the additional shortage and subtract this from Q . This gives the remaining capacity for this qualification. 26

  27. Results The LPs were solved using an alpha version of QSopt (because of the antique operating system the program had to run on). No real test data available; tested on random data (but similar to the real data). The time needed is at most a few seconds (more than good enough). The project group was very much satisfied with these results. 27

  28. Questions? 28

  29. Consultancy skills Goal: find out what the actual problem is (requirements) Translate this into a model that you can work on Make assumptions (check them afterwards if possible) Formulate hard constraints Formulate soft constraints Identify objective Identify what you can change and what is given. Check the model by consulting the ‘problem owner’ . 29

  30. Example 1: Orthopedic department Hospital They perform several types of surgery; 15 different groups of patients. General scheme: Admitted on some day t Surgery in operating theatre follows after some ‘preparation’ Patient recovers for a number of days (needs bed and care) Patient leaves when fully recovered. The department has its ‘own’ beds and nurses. Current, observed problem: unequal work loads per day. Goal : Make it better. 30

  31. Model (1) How can we influence the solution? 31

  32. Model (2) Assumptions: 32

  33. Model (3) Hard constraints: 33

  34. Model (4) Soft constraints: 34

  35. Model (5) Objective: 35

  36. Example 2: Cutting flowers Mother plants are planted some months before harvesting; cuttings are cut from these mother plants weekly. The number of mother plants to plant is based on forecasts; you must plant enough to fulfil the forecasts for the demand. For each variety, the majority of sales takes place in the ‘peak weeks’, which is a period of approximately 10 weeks. In each week you must cut enough cuttings to satisfy the sales contracts; remaining cuttings can be sold on the market. 36

Recommend


More recommend