Skip to main content
Log in

An Efficient Filtering Algorithm for the Unary Resource Constraint with Transition Times and Optional Activities

  • Published:
Journal of Scheduling Aims and scope Submit manuscript

Abstract

This paper describes a unified global constraint to model scheduling problems with unary resources, i.e., each resource can process only a single activity at a time. In addition, the constraint enforces sequence-dependent transition times between activities. It often happens that activities are grouped into families with zero transition times within a family. Moreover, some of the activities might be optional from the resource viewpoint (typically in the case of alternative resources). The global constraint unifies reasoning with both optional activities and families of activities. The scalable filtering algorithms we discuss keep a low time complexity of \(\mathcal {O}(n \cdot \log (n) \cdot \log (f))\), where n is the number of tasks on the resource and f is the number of families. This results from the fact that we extend the \(\varTheta \)-tree data structure used for the Unary Resource constraint without transition times. Our experiments demonstrate that our global constraint strengthens the pruning of domains as compared with existing approaches, leading to important speedups. Moreover, our low time complexity allows maintaining a small overhead, even for large instances. These conclusions are particularly true when optional activities are present in the problem.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. In this paper we assume without loss of generality that \(p_{i}\) is constant.

  2. A more general case is when a positive transition \( tt _{f, f}^\mathcal {F}\) must occur between activities of the same family f. In this case, one can fall back to zero transition times within a family, assuming \( tt _{f, f}^\mathcal {F} \le tt _{f', f}^\mathcal {F} \forall f' \in tt ^\mathcal {F}\). One can artificially: (1) increase the duration of activities of the family f with \( tt _{f, f}^\mathcal {F}\); and (2) decrease the transition times from family f by \( tt _{f, f}^\mathcal {F}\). Yet, one cannot always perform this trick, so we keep the hypothesis in the rest of the paper that \( tt _{f, f}^\mathcal {F} = 0\).

  3. The approach of Grimes and Hebrard (2010) does not actually use a precedence graph structure explicitly, but reifies the precedence constraints and branches on the associated boolean variables.

  4. Practical implementations apply the symmetric rules by applying the original rules on mirrors of the original activities. The mirror activity m of an activity i is modeled with the variables \(s_{m} = - c_{i}\), \(c_{m} = - s_{i}\) and \(p_{m} = p_{i}\).

  5. Alternatively, as proposed in Vilım (2009a, b) in the case of the Edge-Finding algorithm, one could consider all activities of \(T\) and pretend the latest start time of optional activities amounts to \(+\infty \). All activities (including optionals) are then inserted in Q and the rest of the algorithm remains unchanged.

  6. Or as for the Detectable Precedence algorithm, one can pretend the latest start time of optional activities amounts to \(+\infty \) and insert all of them in Q.

  7. Notice that this is equivalent to what is proposed in Vilım (2009a, b). The author suggests handling optional activities by modifying the input data rather than the algorithm: \( lct _{o}\) is assumed to be \(+\infty \) for all optional activities \(o \in O\).

  8. Some processors also have a dedicated machine instruction.

  9. The approach can also be used for sets of activities. The description focuses here on families since it was initially used in the context of family-based transition times.

  10. Typically maximum 10.

  11. Accessible at http://sites.uclouvain.be/performance-profile/.

  12. The instances are available at http://becool.info.ucl.ac.be/resources/uttf-instances.

  13. Still, if it is available at a low cost, it can be beneficial to use it.

References

  • Allahverdi, A., Ng, C., Cheng, T. E., & Kovalyov, M. Y. (2008). A survey of scheduling problems with setup times or costs. European Journal of Operational Research, 187(3), 985–1032.

    Article  Google Scholar 

  • Artigues, C., Belmokhtar, S., & Feillet, D. (2004). A new exact solution algorithm for the job shop problem with sequence-dependent setup times. In J. C. Régin, & M. Rueher (Eds.), Integration of AI and OR techniques in constraint programming for combinatorial optimization problems (pp. 37–49). Springer.

  • Artigues, C., & Feillet, D. (2008). A branch and bound method for the job-shop problem with sequence-dependent setup times. Annals of Operations Research, 159(1), 135–159.

    Article  Google Scholar 

  • Baptiste, P., Laborie, P., Le Pape, C., & Nuijten, W. (2006). Constraint-based scheduling and planning. In F. Rossi, P. van Beek, & T. Walsh (Eds.), Handbook of constraint programming, Chap. 22 (pp. 759–797). Amsterdam: Elsevier.

    Google Scholar 

  • Baptiste, P., Le Pape, C., & Nuijten, W. (2001). Constraint-based scheduling: Applying constraint programming to scheduling problems, International Series in Operations Research & Management Science (Vol. 39). Berlin: Springer.

    Book  Google Scholar 

  • Barták, R. (2008). Search strategies for scheduling problems with optional activities. In Proceedings of CSCLP 2008 annual ERCIM workshop on constraint solving and constraint logic programming, Rome.

  • Barták, R., & Čepek, O. (2010). Incremental propagation rules for a precedence graph with optional activities and time windows. Transactions of the Institute of Measurement and Control, 32(1), 73–96.

    Article  Google Scholar 

  • Bellman, R. (1956). On a routing problem. DTIC Document: Technical report.

    Google Scholar 

  • Brucker, P. (1999). Complex scheduling problems. Zeitschrift Operations Research. 30, 99.

  • Brucker, P., & Thiele, O. (1996). A branch & bound method for the general-shop problem with sequence dependent setup-times. Operations-Research-Spektrum, 18(3), 145–161.

    Article  Google Scholar 

  • Cappart, Q., Thomas, C., Schaus, P., & Rousseau, L. M. (2018). A constraint programming approach for solving patient transportation problems. In International conference on principles and practice of constraint programming (pp. 490–506). Springer.

  • Christofides, N., Mingozzi, A., & Toth, P. (1981). State-space relaxation procedures for the computation of bounds to routing problems. Networks, 11(2), 145–164.

    Article  Google Scholar 

  • Dejemeppe, C. (2016). Constraint programming algorithms and models for scheduling applications. Ph.D. thesis, Université catholique de Louvain, Louvain-la-Neuve

  • Dejemeppe, C., Van Cauwelaert, S., & Schaus, P. (2015). The unary resource with transition times. In International conference on principles and practice of constraint programming (pp. 89–104). Springer

  • Dolan, E. D., & Moré, J. J. (2002). Benchmarking optimization software with performance profiles. Mathematical programming, 91(2), 201–213.

    Article  Google Scholar 

  • Focacci, F., Laborie, P., & Nuijten, W. (2000). Solving scheduling problems with setup times and alternative resources. In AIPS (pp. 92–101).

  • Gay, S., Hartert, R., Lecoutre, C., & Schaus, P.(2015). Conflict ordering search for scheduling problems. In International conference on principles and practice of constraint programming (pp. 140–148). Springer.

  • Gay, S., Schaus, P., & De Smedt, V. (2014). Continuous casting scheduling with constraint programming. In B. O’Sullivan (Ed.), Principles and practice of constraint programming (pp. 831–845). Springer.

  • Grimes, D., & Hebrard, E. (2010). Job shop scheduling with setup times and maximal time-lags: A simple constraint programming approach. In Integration of AI and OR techniques in constraint programming for combinatorial optimization problems (pp. 147–161). Springer.

  • Kruskal, J. B. (1956). On the shortest spanning subtree of a graph and the traveling salesman problem. Proceedings of the American Mathematical society, 7(1), 48–50.

    Article  Google Scholar 

  • Laborie, P. (2018). An update on the comparison of MIP, CP and hybrid approaches for mixed resource allocation and scheduling. In International conference on the integration of constraint programming, artificial intelligence, and operations research (pp. 403–411). Springer.

  • Laborie, P., & Rogerie, J. (2008). Reasoning with conditional time-intervals. In FLAIRS conference (pp. 555–560).

  • Laborie, P., Rogerie, J., Shaw, P., & Vilím, P. (2018). IBM ILOG CP optimizer for scheduling. Constraints, 23(2), 210–250.

    Article  Google Scholar 

  • Moore, E. (1959). The shortest path through a maze. In Proceedings international symposium on switching theory.

  • Team, Osca R. (2012). OscaR: Scala in OR. Retrieved from https://bitbucket.org/oscarlib/oscar.

  • Ozolins, A. (2018). Bounded dynamic programming algorithm for the job shop problem with sequence dependent setup times. Operational Research,. https://doi.org/10.1007/s12351-018-0381-6.

    Article  Google Scholar 

  • Van Cauwelaert, S., Lombardi, M., & Schaus, P. (2015) Understanding the potential of propagators. In International conference on integration of artificial intelligence (AI) and operations research (OR) techniques in constraint programming (pp. 427–436). Springer.

  • Van Cauwelaert, S., Lombardi, M., & Schaus, P. (2016). A visual web tool to perform what-if analysis of optimization approaches. Technical report, UCLouvain.

  • Van Cauwelaert, S., Lombardi, M., & Schaus, P. (2017). How efficient is a global constraint in practice? Constraints, 23, 210–250.

    Google Scholar 

  • Vilım, P. (2007). Global constraints in scheduling. Ph.D. thesis, Charles University in Prague, Faculty of Mathematics and Physics, Department of Theoretical Computer Science and Mathematical Logic, KTIML MFF, Universita Karlova, Malostranské námestı 2/25, 118 00 Praha 1, Czech Republic.

  • Vilım, P. (2009a). Edge finding filtering algorithm for discrete cumulative resources in o (kn log n). In I. P. Gent (Ed.), Principles and practice of constraint programming-CP (Vol. 5732, pp. 802–816). Springer.

  • Vilím, P. (2009b). Max energy filtering algorithm for discrete cumulative resources. In International conference on AI and OR techniques in constriant programming for combinatorial optimization problems (pp. 294–308). Springer.

  • Vilım, P., & Barták, R. (2012). Filtering algorithms for batch processing with sequence dependent setup times. In Proceedings of the 6th international conference on AI planning and scheduling, AIPS.

  • Warren, H. S. (2013). Hacker’s delight. London: Pearson Education.

    Google Scholar 

  • Wolf, A. (2009). Constraint-based task scheduling with sequence dependent setup times, time windows and breaks. GI Jahrestagung, 154, 3205–3219.

    Google Scholar 

  • Zampelli, S., Vergados, Y., Van Schaeren, R., Dullaert, W., & Raa, B. (2013). The berth allocation and quay crane assignment problem using a CP approach. In C. Schulte (Ed.), Principles and practice of constraint programming (pp. 880–896). Springer.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sascha Van Cauwelaert.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Van Cauwelaert, S., Dejemeppe, C. & Schaus, P. An Efficient Filtering Algorithm for the Unary Resource Constraint with Transition Times and Optional Activities. J Sched 23, 431–449 (2020). https://doi.org/10.1007/s10951-019-00632-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10951-019-00632-8

Keywords

Navigation