250 likes | 388 Views
ANADOLU ÜNİVERSİTESİ Endüstri Mühendisliği Seminerleri, 12.10.2012. Capacity and Working Time Determination in a Reservation System. Deniz Türsel Eliiyi , Assoc. Prof. Dr. Izmir University of Economics, Department of Industrial Systems Engineering
E N D
ANADOLU ÜNİVERSİTESİ • Endüstri Mühendisliği Seminerleri, 12.10.2012 Capacity and Working Time Determinationin a ReservationSystem DenizTürselEliiyi, Assoc. Prof. Dr. Izmir University of Economics, Department of Industrial Systems Engineering To appear in: Engineering Optimization
Outline • Preliminaries • Practical importance and motivation • Problem definition • Complexity results • An efficient heuristic algorithm • Computational results • Conclusion and Future work
Job 3(w3) Job 1(w1) Job 2(w2) r1 r2 d1 r3 d2 d3 Time Fixed Job Scheduling • Assumptions • All parameters known • No more arrivals • A m/c can process at most one job at a time • A job can be processed by at most one machine at a time • All machines are eligible to process all jobs • Machines are available at all times. • n jobs • Ready time: rj • Deadline: dj • Processing time: pj= dj- rj • Weight: wj(k) • Pa :Set of available jobs in interval a. • Identical parallel machines • Cost : ck
Fixed Job SchedulingThe Operational Problem (OFJS) • Algorithm for the number maximizing OFJS problem (Bouzina and Emmons, 1996) • Algorithm for the weight maximizing OFJS problem (Bouzina and Emmons, 1996): Conversion to MCNF problem O(mn log n)
Fixed Job SchedulingThe Tactical Problem (TFJS) • Fleet planning: • Dantzig and Fulkerson (1954) • Gertsbakh and Stern (1978) • Computer wiring: • Hashimoto and Stevens (1971):ck= c The minimum number of machines required to carry out all jobs =The maximum job overlap of the jobs • Gupta et al. (1979) • Eliiyi (2004): O(n log n) algorithm for arbitrary ck
FJS: NP-hard generalizations • Working Time: • Spread Time: • Sk: Start time of machine k • Fk: Finish time of machine k • Eligibility: Each machine is eligible to process only a subset of jobs. job 3(w3) job 1(w1) M/c k job 2(w2) r1 d1 r2 d2 r3 d3 p1 p2 p3 S T
Practical Importance Areas of use include all kinds of reservation systems: • Tactical capacity planning of aircraft maintenance personnel • Hotel reservation systems / Renting bungalows • Car rental • Textile workshops • Operating room scheduling in hospitals • Bus Driver Scheduling Problem • Earth-observing satellites • Automated manufacturing systems
Previous Work Working Time Constraints: • Fischetti M., Martello S., Toth P., 1989 : Tactical • Eliiyi D.T., Azizoğlu M., 2009, 2011 : Operational Spread Time Constraints: • Fischetti M., Martello S., Toth P., 1987 : Tactical • Eliiyi D.T., Azizoğlu M., 2006, 2011 : Operational Eligibility Constraints: • Kroon L.G. et al. 1995 : Operational • Kroon L.G. et al. 1997 : Tactical • Kolen A.J.W., Kroon L.G., 1991 : Operational • Kolen A.J.W., Kroon L.G., 1992 : Tactical • Eliiyi D.T., Azizoğlu M., 2009 : Operational • Eliiyi D.T., Korkmaz A.G., Çiçek A.E., 2009 : Operational Nice Surveys: • Kovalyov M.Y., Ng C.T., Cheng T.C.E., 2007, “Fixed interval scheduling: Models, applications, computational complexity and algorithms”, European Journal of Operational Research, 178, 331-342. • Kolen A.J.W., Lenstra J.K., Papadimitriou C.H., Spieksma F.C.R., 2007, “Interval scheduling: A survey”, Naval Research Logistics, 54, 530 – 543.
Motivation • Capacity planning of a reservation system directly affects total profit • Existing studies in literature use the tactical FJS for capacity planning: • Long term forecasts of job reservations necessary • Ignores cancellations or possible changes in job ready times and deadlines • Requires rescheduling • Studies handle operational and tactical problems separately • Integrated decision ofcapacity planning and scheduling • Significantly important in systems showing seasonal demand changes • Eliiyi (2010): An iterative approach thatuses the operational model is proposed for determining the best capacity expansion level ina sewing workshop
Problem Definition • Three simultaneous decisions in a reservation environment: • the capacity level of the system • job-machine assignments • working time for eachmachine • Applications: • Multi-server data transfersystem where the servers have unit-time operating costs • Seasonal workforce paid on an hourly basis • Travel agency renting hotel rooms for its customers • Objective: Maximize the net profit while determiningthe number of servers and their respective working times as well as the processed job subset. • Working time: A decision variable
Problem Definition • n jobs • Ready time: rj • Deadline: dj • Processing time: pj= dj- rj • Weight: wj • m: upper bound (external or internal) on the number of identical parallel machines • Operating cost per unit time (or rental costs): ck • Pa :Set of available jobs in interval a.
Computational Complexity USING THEN: Equivalent to FJS problem with generalweights, NP-hard in the strong sense (Eliiyi, Azizoglu, 2009) where
Polynomially Solvable Special Cases • Limited number of machines, identical operating costs: • Problem reduces to the operational FJS • Can be solved in O(mn log n) time by a MCNF formulation. • Single machine: • Problem reduces to the operational FJS with single machine • Can be solved in O(n) time by a shortest path fomulation.
A simple & effective heuristic approachO(n log n + nm) (S0) Index the potential m machines in nondecreasing order of their ck. Index the jobs in nondecreasing order of their rj. Set ZLB = 0, XLB= , A = unassigned job set = {1,...,n} (S1) For k = 1,..., m: Formulate a shortest path problem for the kthmachine with |A| jobs, resulting in ZSP (k) = objective function value and XSP(k) = scheduled job set If ZSP(k) ≥ 0 and XSP(k) then ZLB = ZLB + ZSP(k), XLB = XLBXSP(k), update A else Go to (S2) If A = go to (S2) (S2) Solution: ZLB , XLB
Computational Experiment • n = 100, 200, 500, 1000, 2000 • rj ~ U(0,200) • pj~ U(4,10) • Three levels for job weights: • wj = pj , j • wj~ U(4,10) • wj~ U(4,20) • Two levels for operating costs: • ck~ U{1, 1.25, 1.5, 1.75, 2}, ck ~ U{0.5, 0.625, 0.75, 0.875, 1}, k • 10 problem instances for each setting: 300 instances • PC with 4 GB Ram and 1.8 GHz, Windows 7 • IBM ILOG CPLEX 12.1 solver for optimal solutions
Results c
Results c
Results c
Observations • The algorithm provides very high quality solutions in practically no time, especially for large instances: An average 1.8% optimality gap is attained over all instances. • The optimality gap closes for larger instances, and the algorithm performs better than CPLEX for n = 2000. • CPLEX could not solve 40 of the instances to optimality in the 1200-second time limit, for some it could not even obtain an initial lower bound for the problem. • The optimal solution is obtained in 51 of the 300 instances, and for 34 instances the algorithm finds a better solution than CPLEX within the given time limit.
Observations • The algorithm favors solutions with more number of used machines and more jobs processed. • Applications may require high number of jobs with many machines, and the developed algorithm seems very promising in generating high quality solutions for very large problem instances. • The algorithm performs robustly in terms of solution time for different levels of parameters including weight and cost.
Conclusion and Future Work • A new strongly NP-hard problem in a reservation system where the jobs have fixedready times and deadlines: • The objective is to maximize the net profit from the processedjob subset while determining the capacity level and the working times of the machines. • A heuristic algorithm that performs excellently up to 2000 jobs in very small computation times • Potential research for related problems: • Problem with side constraints (spread time, eligibility) • Both fixed and operating costs for machines