Abstract
The resource-constrained project scheduling problem (RCPSP), one of the most challenging combinatorial optimization scheduling problems, has been the focus of a great deal of research, resulting in numerous publications in the last decade. Previous publications focused on the RCPSP, including several extensions with different objectives to be minimized and constraints to be checked. The present work investigates the integration of the routing, i.e., the transport of the resources between activities into the RCPSP, and provides a new resolution scheme. The two subproblems are solved using an integrated approach that draws on both a disjunctive graph model and an explicit modeling of the routing. The resolution scheme takes advantage of an indirect representation of the solution to define both the schedule of activities and the routing of vehicles. The routing solution is modeled by a set of trips that define the loaded transport operations of vehicles that are induced by the flow in the graph. The numerical experiments prove that the models and the methods introduced in this paper are promising for solving the RCPSP with routing.
Similar content being viewed by others
References
Adnen EA, Mohsen E (2016) An efficient new heuristic for the hoist scheduling problem. Comput Oper Res 67:184–192
Afsar HM, Lacomme P, Ren L, Prodhon C, Vigo D (2016) Resolution of a Job-Shop problem with transportation constraints: a master/slave approach. IFAC-PapersOnLine 49(12):898–903
Ahuja RV, Magnanti TL, Orlin JB (1993) Network flows: theory/applications. Prentice hall, Upper Saddle River
Alvarez-Valdés R, Tamarit JM (1993) The project scheduling polyhedron: dimension, facets and lifting theorems. EJOR 67:204–220
Artigues C, Roubellat F (2000) A polynomial insertion algorithm in RCPSP with cumulative constraints and multiple nodes. EJOR 127(2):297–316
Artigues C, Michelon P, Reusser S (2003) Insertion for static/dyn. RCPSP EJOR 149:249–267
Beasley JE (1983) Route-first cluster-second methods for vehicle routing. Omega 11:403–408
Blazewicz J, Lenstra JK, Rinooy Kan AHG (1983) Scheduling subject to resource constraints: classification and complexity. Discret Appl Math 5:11–24
Boudia M, Prins C, Reghioui M (2007) An effective memetic algorithm with population management for the split delivery vehicle routing problem. Hybrid Metaheuristics. Springer, Berlin Heidelberg, pp 16–30
Brucker P, Drexl A, Mohring R, Neumann K, Pesch E (1999) Resource-constrained project scheduling: notation, classification, models, and methods. EJOR 112(1):3–41
Brucker P, Knust S, Roper D, Zinde Y (2000) Scheduling UET task system with concurrency on two parallel identical processors. Math Methods Oper Res 53:369–387
Caumond A, Lacomme P, Moukrim A, Tchernev N (2009) An MILP for scheduling problems in a FMS with one vehicle. EJOR 199(3):706–722
Chassaing M (2015) Problèmes de transport à la demande avec prise en compte de la qualité de service. Doctoral dissertation. Blaise Pascal University, Clermont-Ferrand, N° d’ordre: D. U: 2631
Chen ZL (2010) Integrated production and outbound distribution scheduling: review and extensions. Oper Res 58(1):130–148
Cheng R, Gen M, Tsujimura Y (1996) A tutorial survey of job-shop scheduling problems using genetic algorithms—I representation. Comput Ind Eng 30:983–997
Chtourou S, Manier M-A, Loukil T (2013) A hybrid algorithm for the cyclic hoist scheduling problem with two transportation resources. Comput Ind Eng 65(3):426–437
Cordeau J-F, Laporte G (2003) A tabu search heuristic for the static multi-vehicle dial-a ride problem. Transp Res Part B Methodol 37:579–594
Dauzère-Pérès S, Lasserre JB (1995). A new mixed-integer formulation of the flow-shop sequencing problem. In: 2nd Workshop on models and algorithms for planning and scheduling problems, Wernigerode, Germany
Dell’amico M, Trubian M (1993) Applying tabu-search to the job-shop scheduling problem. Ann Oper Res 41:231–252
Demeulemeester E, Herroelen W (2002) Project scheduling—a research and book international series. Operations Research and Management Science, Kluwer Academic Publishers, Boston
Dongarra J (2014) Performance of various computers using standard linear equations software. Report CS-89-85, University of Manchester
Duhamel C, Lacomme P, Prodhon C (2011) Efficient frameworks for greedy split and new depth first search split procedures for routing problems. Comput Oper Res 38(4):723–739
Duhamel C, Lacomme P, Prodhon C (2012) A hybrid evolutionary local search with depth first search split procedure for the heterogeneous vehicle routing problems. Eng Appl Artif Intell 25(2):345–358
Feo TA, Resende MGC (1995) Greedy randomized adaptive search procedures. J Glob Optim 6(2):109–133
Firat M, Woeginger GJ (2011) Analysis of the dial-a-ride problem of Hunsaker and Savelsbergh. Oper Res Lett 39:32–35
Hartmann S, Briskorn D (2010) A survey of variants and extensions of the resource-constrained project scheduling problem. Eur J Oper Res 207(1):1–14
Herroelen W, De Reyck B, Demeulemeester E (1998) Resource-constrained project scheduling: a survey of recent developments. Comput Oper Res 25(4):279–302
Honglin Q, Sujing W, Qiang Xu (2016) A new method of cyclic hoist scheduling for multi-recipe and multi-stage material handling processes. Comput Chem Eng 90:171–187
Knust S (1999) Shop-scheduling problems with transportation. Ph.D. thesis. Fachbereich Mathematik/Informatik, Universität Osnabrück
Kolisch R, Padman R (2001) An integrated survey of deterministic project scheduling. OMEGA 29:249–272
Kreter S, Rieck J, Zimmermann JA (2016) Models and solution procedures for the resource-constrained project scheduling problem with general temporal constraints and calendars. Eur J Oper Res 251:387–403
Krüger D, Scholl A (2009) A heuristic solution framework for the resource constrained (multi-) project scheduling problem with sequence-dependent transfer time. EJOR 197(2):492–508
Laarhoven VPJM, Aarts EHL, Lenstra JK (1992) Job shop scheduling by Simulated Annealing. Oper Res 40(1):113–125
Lacomme P, Prins C, Ramdane-Cherif W (2001) Competitive genetic algorithms for the capacitated arc routing problem and its extensions. Lect Notes Comput Sci 2037:473–483
Lacomme P, Prins C, Ramdane-Chérif W (2004) Competitive memetic algorithms for arc routing problems. Ann Oper Res 131:159–185
Lacomme P, Larabi M, Tchernev N (2007) A disjunctive graph for the job-shop with several robots. In: MISTA conference, Paris, France
Lacomme P, Larabi M, Tchernev N (2013) Job-shop based framework for simultaneous scheduling of machines and automated guided vehicles. Int J Prod Econ 143(1):24–34
Lacomme P, Moukrim A, Quilliot A, Vinot M (2017) Formalisation linéaire d’un problème de RCPSP avec transport de ressources, 18ème congrès annuel de la Société française de Recherche Opérationnelle et d’Aide à la Décision (ROADEF). Metz, France
Matsuo H, Suh CJ, Sullivan RS (1988) A controlled search simulated annealing method for the general job-shop scheduling problem. Working Paper, 03–04–88, Graduate School of Business, University of Texas at Austin, Austin, Texas, USA
Nowicki E, Smutnicki C (1996) A fast taboo search algorithm for the job-shop problem. Manag Sci 42(6):797–813
Poppenborg J, Knust S (2016) A flow-based tabu search algorithm for the RCPSP with transfer times. OR Spectr 38(2):305–334
Prins C (2004) A simple and effective evolutionary algorithm for the vehicle routing problem. Comput Oper Res 31(12):1985–2002
Prins C (2009) A GRASP × evolutionary local search hybrid for the vehicle routing problem. Bio-inspir Algorithms Veh Rout Probl 161:35–53
Prins C, Lacomme P, Prodhon C (2014) Order-first split-second methods for vehicle routing problems: a review. Transp Res Part C Emerg Technol 40:179–200
Pritsker A, Watters L (1968). A zero-one programming approach to scheduling with limited resources. The RAND Corporation, RM-5561- PR
Pritsker A, Watters L, Wolfe P (1969) Multi-project scheduling with limited resources: a zero-one programming approach. Manag Sci 16:93–108
Quilliot A, Toussaint H (2012) Resource constrained project scheduling with transportation delays. IFAC Proc Vol 45(6):1481–1486
Roy B, Sussmann B (1964) Les problèmes d’ordonnancement avec contraintes disjonctives. Note DS no. 9 bis, SEMA, Paris
Weglarz J (1999) Project scheduling. Recent models, algorithms and applications. Kluwer, Boston
Weiss I, Schwindt C (2016) The resource transfer Problem: Modeling and solving integrated scheduling and routing problems. In: IEEE international conference on industrial engineering and engineering management (IEEM), 755–759)
Wolf S, Merz P (2007) Evolutionary local search for the super-peer selection problem and the p-hub median problem. Lect Notes Comput Sci 4771:1–15
Zhang Q, Manier H, Manier M-A (2012a) A modified disjunctive graph for job-shop scheduling problems with bounded processing times and transportation constraints. IFAC Proc 45(6):1377–1382
Zhang Q, Manier H, Manier M-A (2012b) A genetic algorithm with tabu search procedure for flexible job shop scheduling with transportation constraints and bounded processing times. Comput Oper Res 39(7):1713–1723
Acknowledgements
This work was carried out and funded within the framework of the ATHENA project (Reference: ANR-13-BS02-0006) and the Labex MS2T. It was supported by the French government through the “Investments for the future” program managed by the French National Research Agency (Reference: ANR-11-IDEX-0004-02).
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
1.1 A.1: MILP formulation for the RCPSPR
Data of the problem
- \( p_{i} \):
processing time of activity \( i \)
- \( b_{i} \):
number of resource required for activity \( i \)
- \( t_{ij} \):
transfer time from activity \( i \) to activity \( i \)
- \( V \):
set of activities to schedule
- \( E \):
set of couple of activities linked by a precedence constraints
- \( T \):
set of vehicle
- \( T_{i} \):
vehicle \( i \)
- \( C_{i} \):
capacity of vehicle \( i \)
Variables
- \( {\varphi }_{\text{ijk}} \):
number of resource \( k \) transferred from \( i \) to \( j \)
- \( {\text{z}}_{\text{ij}} \):
binary variable that value 1 if activity \( i \) is scheduled before activity \( j \)
- \( {\text{S}}_{\text{i}} \):
starting time of activity \( i \)
- \( y_{ijut} \):
amount of resource transported from activity \( i \) to \( j \) by vehicle \( u \) during the \( t^{th} \) transport operation
- \( x_{ijut} \):
binary variable such \( x_{ijut} = 1 \) if vehicle \( u \) make the transport of resource from activity \( i \) to \( j \) during the \( t^{th} \) transport operation
- \( a_{ijtpqv}^{u} \):
binary variable with \( a_{ijtpqv}^{u} = 1 \) if transport operation number \( t \) of vehicle \( u \) from activity \( i \) to \( j \) is scheduled before the transport operation number \( v \) of vehicle \( u \) from activity \( p \) to q.
The constraints numbered 1 to 9 in \( P1 \) are the classical RCPSP constraints (scheduling constraint), and constraints numbered 10 to 25 in \( P2 \) are the constraints tackling the transport.
1.2 A.2: CP formulation for the RCPSPR
The CP model was formulated from the MILP, and both CP data and CP decision variables have been introduced considering the same trend as the MILP, in order to favor readability first, and to facilitate second a better knowledge and understanding for researchers coming from the scheduling community and who are more experienced in MILP than CP. A CP model resembles an integer programming model in terms of syntax. It contains decision variables with their domains, a set of constraints, and possibly, an objective function. However, the CP modeling paradigm is much more expressive. In fact, the language is a superset of the integer linear programming modeling language. In addition to equality and inequality constraints between linear mathematical expressions, a CP model can contain nonlinear expressions, logical expressions, use decision variables as indices to other vectors of decision variables and include global constraints that capture a relationship between large sets of decision variables.
Disjunctive formulation of the CP
Cumulative formulation of the CP for the scheduling part
In the cumulative formulation, the activities are represented by interval variables. An interval variable represents an interval of time during which an activity is performed:
interval act[i in 0…n+1] size pi
The cumulative constraint to define \( f \) enforces that at each point in time, the cumulated resource demands of the set of activities that require the resource at this time, does not exceed a given limit.
cumulFunction f=sum (i in 1…n) pulse (act[i], bi)
The constraints to tackle the routing remain the same as the CP disjunctive formulation with the model \( P2 \).
1.3 A.3: Additional numerical experiments
Extra modeled should be investigated to get around MILP drawbacks that come from the large number of variables used and from the big-M constraints required for disjunctions of both scheduling and routing.
Cumulative constraint-based models have been proved to be efficient in RCPSP resolution (Kreter et al. 2016), and in several RCPSP variants providing results that compete with MILP formulation. Because, the transport operations are fully defined by exchange of resources between activities, the RCPSPR that requires the proper coordination of both activities and routing constraints, presents characteristics that do not favor cumulative model and by consequence resolution (Table 10).
To obtain a fair comparative study, the two models (disjunctive MILP formulation and CP disjunctive formulation) do not encompass any extra constraint that could strengthen the model and the two models have been solved using the CPLEX 12.7 package running on the same computer. The default parameters are used in the resolution of both MILP and CP: The results are introduced in Table 11 where * is used for optimal solution and \( t.l. \) for computational time exceeding 48 h.
The results prove the efficiency of constraint programming formulations first (that permit to obtain numerous optimal solutions) and that the CP optimizer of CPLEX competes with the MILP solver. The coordination between scheduling and routing operations should receive attention to strengthen both models. For example, the difference between starting time of \( i \) and starting time of \( j \), for two scheduling operations with a non-null flow (\( \varphi_{ij} \ge 0 \)), could be used to create new transportation constraints by a careful evaluation of the number of loaded and unloaded transport operations required, and by consequence, of the delay between \( S_{j} \) and \( S_{i} \). The linear constraint \( S_{j} \ge S_{i} + p_{i} + M\left( {z_{ij} - 1} \right) \) could be updated with \( S_{j} \ge S_{i} + p_{i} + \delta + M\left( {z_{ij} - 1} \right) \) where \( \delta \) is the extra delay (Fig. 17).
Table 12 reports the best solutions obtained by CPLEX MILP and CPLEX CP within the time that the GRASP \( \times \) ELS found its best upper bound. CPLEX MILP failed to provide a solution (except for instance LMQV_U5 and LMQV_C6), whereas CPLEX CP provides 7 solutions, with poor quality regarding the solutions of the GRASP \( \times \) ELS. For LMQV_U1, CPLEX CP provides a solution of 91 that is strongly larger than 74 which is the best solution found by GRASP \( \times \) ELS in 58 s. The CPLEX CP provides a first solution in shorten computational time than CPLEX MILP. Such results push us into considering that constraint programming is a promising method that could be used in investigating the RCPSPR.
Rights and permissions
About this article
Cite this article
Lacomme, P., Moukrim, A., Quilliot, A. et al. Integration of routing into a resource-constrained project scheduling problem. EURO J Comput Optim 7, 421–464 (2019). https://doi.org/10.1007/s13675-018-0104-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13675-018-0104-z