A \(O(n \log ^2 n)\) Checker and \(O(n^2 \log n)\) Filtering Algorithm for the Energetic Reasoning

  • Yanick Ouellet
  • Claude-Guy QuimperEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10848)


Energetic reasoning is a strong filtering technique for the Cumulative constraint. However, the best algorithms process \(O(n^2)\) time intervals to perform the satisfiability check which makes it too costly to use in practice. We present how to apply the energetic reasoning by processing only \(O(n \log n)\) intervals. We show how to compute the energy in an interval in \(O(\log n)\) time. This allows us to propose a \(O(n \log ^2 n)\) checker and a filtering algorithm for the energetic reasoning with \(O(n^2 \log n)\) average time complexity. Experiments show that these two algorithms outperform their state of the art counterparts.


Energetic Reasons Monge Matrices Compulsory Energy Resource-constrained Project Scheduling Problem (RCPSP) Range Tree Data Structure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.



In memory of Alejandro López-Ortiz (1967–2017) who introduced me to research, algorithm design, and even Monge matrices. – C.-G. Q


  1. 1.
    Aggoun, A., Beldiceanu, N.: Extending chip in order to solve complex scheduling and placement problems. Math. Comput. Model. 17(7), 57–73 (1993)CrossRefGoogle Scholar
  2. 2.
    Baptiste, P., Le Pape, C.: Constraint propagation and decomposition techniques for highly disjunctive and highly cumulative project scheduling problems. Constraints 5(1–2), 119–139 (2000)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Baptiste, P., Le Pape, C., Nuijten, W.: Constraint-Based Scheduling. Kluwer Academic Publishers, Dordrecht (2001)CrossRefGoogle Scholar
  4. 4.
    Beldiceanu, N., Carlsson, M.: A new multi-resource cumulatives constraint with negative heights. In: Van Hentenryck, P. (ed.) CP 2002. LNCS, vol. 2470, pp. 63–79. Springer, Heidelberg (2002). Scholar
  5. 5.
    Bonifas, N.: A \(O(n^2 \log (n))\) propagation for the energy reasoning. In: ROADEF 2016 (2016)Google Scholar
  6. 6.
    de Berg, M., Cheong, O., van Kreveld, M.J., Overmars, M.H.: Computational Geometry: Algorithms and Applications, 3rd edn. Springer, Heidelberg (2008). Scholar
  7. 7.
    Derrien, A., Petit, T.: A new characterization of relevant intervals for energetic reasoning. In: O’Sullivan, B. (ed.) CP 2014. LNCS, vol. 8656, pp. 289–297. Springer, Cham (2014). Scholar
  8. 8.
    Fahimi, H., Quimper, C.G.: Linear-time filtering algorithms for the disjunctive constraint. In: AAAI, pp. 2637–2643 (2014)Google Scholar
  9. 9.
    Gay, S., Hartert, R., Lecoutre, C., Schaus, P.: Conflict ordering search for scheduling problems. In: Pesant, G. (ed.) CP 2015. LNCS, vol. 9255, pp. 140–148. Springer, Cham (2015). Scholar
  10. 10.
    Kameugne, R., Fotso, L.P.: A cumulative not-first/not-last filtering algorithm in \(O (n^2log (n))\). Indian J. Pure Appl. Math. 44(1), 95–115 (2013)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Kaplan, H., Mozes, S., Nussbaum, Y., Sharir, M.: Submatrix maximum queries in Monge matrices and partial Monge matrices, and their applications. ACM Trans. Algorithms (TALG) 13(2), 338–355 (2017)MathSciNetGoogle Scholar
  12. 12.
    Kolisch, R., Sprecher, A.: PSPLIB-a project scheduling problem library: OR software-orsep operations research software exchange program. Eur. J. Oper. Res. 96(1), 205–216 (1997)CrossRefGoogle Scholar
  13. 13.
    Levitin, A.: Introduction to the Design & Analysis of Algorithms, 3rd edn. Pearson Education Inc., Boston (2012)Google Scholar
  14. 14.
    Lopez, P., Esquirol, P.: Consistency enforcing in scheduling: a general formulation based on energetic reasoning. In: 5th International Workshop on Project Management and Scheduling (PMS 1996) (1996)Google Scholar
  15. 15.
    Mercier, L., Van Hentenryck, P.: Edge finding for cumulative scheduling. INFORMS J. Comput. 20(1), 143–153 (2008)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Prud’homme, C., Fages, J.-G., Lorca, X.: Choco Documentation. TASC, LS2N, CNRS UMR 6241 and COSLING S.A.S. (2017)Google Scholar
  17. 17.
    Schutt, A., Wolf, A.: A new \({\cal{O}}(n^2\log n)\) not-first/not-last pruning algorithm for cumulative resource constraints. In: Cohen, D. (ed.) CP 2010. LNCS, vol. 6308, pp. 445–459. Springer, Heidelberg (2010). Scholar
  18. 18.
    Schutt, A., Wolf, A., Schrader, G.: Not-first and not-last detection for cumulative scheduling in \({\cal{O}}(n^3\log n)\). In: Umeda, M., Wolf, A., Bartenstein, O., Geske, U., Seipel, D., Takata, O. (eds.) INAP 2005. LNCS (LNAI), vol. 4369, pp. 66–80. Springer, Heidelberg (2006). Scholar
  19. 19.
    Sethumadhavan, S.: A survey of Monge properties. Master’s thesis, Cochin University of Science and Technology (2009)Google Scholar
  20. 20.
    Tesch, A.: Exact energetic reasoning in \(O(n^2 \log ^2 n\)). Technical report, Zuse Institute Berlin (2016)Google Scholar
  21. 21.
    Tesch, A.: A nearly exact propagation algorithm for energetic reasoning in \(\cal{O}(n^2 \log n)\). In: Rueher, M. (ed.) CP 2016. LNCS, vol. 9892, pp. 493–519. Springer, Cham (2016). Scholar
  22. 22.
    Vilím, P.: Timetable edge finding filtering algorithm for discrete cumulative resources. In: Achterberg, T., Beck, J.C. (eds.) CPAIOR 2011. LNCS, vol. 6697, pp. 230–245. Springer, Heidelberg (2011). Scholar
  23. 23.
    Wolf, A., Schrader, G.: \({\cal{O}}(n \log n)\) overload checking for the cumulative constraint and its application. In: Umeda, M., Wolf, A., Bartenstein, O., Geske, U., Seipel, D., Takata, O. (eds.) INAP 2005. LNCS (LNAI), vol. 4369, pp. 88–101. Springer, Heidelberg (2006). Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Université LavalQuébec CityCanada

Personalised recommendations