• Nem Talált Eredményt

A framework for defining scheduling problems

4 Real life example: rostering problem

Rostering is a popular practical scheduling problem. Here, there are daily shifts for a given time period which have to be performed by employees. The goal is to assign the employees to the shifts with minimizing the operation cost and fulfilling some predefined regulations. This problem arises in many industrial field like public transportation, nurse rostering, call centers, etc. Besides the trivial rules (each shift must be performed and an employee can work only at most one shift at a day) there can be totally different rules

depending on the application area. Even concentrating only one rostering type, like driver rostering, the regulations can be various by the country or the transportation company.

The rostering is a single stage scheduling problem with parallel machines where the objective is usually minimizing the number of employees and the salary cost. Sometimes some penalty values are also involved in the cost function by soft constraints. This optimization problem is NP-hard [9] and many solution methods are published (pilot rostering [3], nurse rostering [1], call center [5] and driver rostering).

In rostering problem there can be several different regulations, but some of them are common. Here, we show a short list of them using GMM for demonstration purpose.

1. Each employee can have at most one shift per day. Let merge structure R(1) be a matrix where each column stands for one day in the planning period and each row represents one employee. The matrix has value 1 in (i,k) if employee i has a shift on day k and zero otherwise. At first, each shift is assigned to one fictive employee, so each row contains one 1. Here, a shift assignment to employees means the merge of two rows (i and j) of fictive or real employees. The checking function f(1) returns true if the dot product of the two corresponding rows equal to zero, i.e. the rows cannot have 1 in the same column. The merge operation g(1) is equal to (R(1)iR(1)j (OR operation of the two merged rows).

2. The number of continuous working days is bounded with value D. The structure R(2) is the same as R(1) and g(2) is the same as g(1). The f(2) merges row i and j with g(2) and checks all parts with the length of D+1. If any of the above subrow does not contain at least one zero, f(2) returns false.

3. There must be at least T resting time between any two consecutive shifts for each employee. Let R(3) be similar to R(1) but here each component contains two values as start (ws) and end (we) working time on the given day (it comes from the start and end time of the shifts). If an employee has no shift in a day, ws is 1440 and we is 0. The f(3) merges the two corresponding rows with g(3) and checks for each day if the difference of ws in the day and we in the previous day is at least T. If this value is less than T on any day f(3) return false. The g(3) generates the merged row setting ws to the minimum of ws values in the two rows and setting we to the maximum of we values correspondingly.

In the rostering problem there can be many other rules about resting days, free weekends, shift types, etc., which can be similarly formulated.

5 Conclusion

Scheduling is one of the most studied optimization problems for decades and there is a significant demand in industrial area for effective optimization methods. However, the published methods are rarely used for practical cases. The main reason of this is that the artificial soliton methods are too rigid for the various real life circumstances. Here, a

general model is presented for rule definition for scheduling problems which is the most crucial and time consuming part of the practical problem solving. In this model, each rule is defined as an individual unit which is independent from other rules as well as from the optimization method itself. In this way, the problem definition is more flexible and suitable for real applications.

Acknowledgment

Attila Tóth acknowledges the support of the National Research, Development and Innovation Office - NKFIH Fund No. SNN-117879.

Miklós Krész acknowledges the European Commission for funding the InnoRenew CoE project (Grant Agreement #739574) under the Horizon2020 Widespread-Teaming program and the support of the EU-funded Hungarian grant EFOP-3.6.2-16-2017-00015.

References

1. E. Burke, P. De Causmaecker, G. Berghe, H. Van Landeghem, The State of the Art of Nurse Rostering, J. Sched. 7 (2004) 441–499.

2. Chen B., Potts C.N., Woeginger G.J. (1998) A Review of Machine Scheduling: Complexity, Algorithms and Approximability. In: Du DZ., Pardalos P.M. (eds) Handbook of Combinatorial Optimization. Springer, Boston, MA

3. M. Gamache, F. Soumis, A method for optimally solving the rostering problem, in: G. Yu (Ed.), OR in Airline Industry, Kluwer Academic Publishers, Boston, 1998, pp. 124–157.

4. R.L. Graham, E.L. Lawler, J.K. Lenstra and A.H.G. Rinnooy Kan, Optimization and approximation in deterministic sequencing and scheduling: a survey, Annals of Operations Research 5 (1979), 287-326.

5. T. Grossman, D. Samuelson, S. Oh, T. Rohleder, Call centers, Technical Report, Haskayne Sch. Business, Univ. Calgary. (1999).

6. Juhos, I., Tóth, A., van Hemert, J.: Binary merge model representation of the graph colouring problem. Evolutionary Computation in Combinatorial Optimization. Volume 3004 of LNCS., Springer (2004) 124–134

7. Juhos, I., van Hemert, J.I.: Improving graph colouring algorithms and heuristics using a novel representation. Lecture Notes in Computer Science, vol. 3906, pp. 123–134. Springer, Berlin (2006)

8. J.K. Lenstra, A.H.G. Rinnooy Kan and P. Brucker, Complexity of machine scheduling problems, Annals of Operations Research 1 (1977), 343-362.

9. J.K. Lenstra, A.H.G.R. Kan, Complexity of vehicle routing and scheduling problems, Networks. 11 (1981) 221–227.

10. K. Nurmi, J. Kyngas, and G. Post. Driver rostering for bus transit companies. Engineering Letters, 19(2):125–132, December 2011.

11. Michael L. Pinedo, Scheduling: Theory, Algorithms, and Systems, Springer International Publishing, 2016

12.Tóth, A., Krész, M. A flexible optimization framework for driver scheduling, Proceedings of the 11th International Symposium on Operational Research SOR '11. (2011) 346 p.

A heuristic approach for kidney exchange