Skip to main content

A Constraint Based Approach to Cyclic RCPSP

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6876))

Abstract

A cyclic scheduling problem is specified by a set of activities that are executed an infinite number of times subject to precedence and resource constraints. The cyclic scheduling problem has many applications in manufacturing, production systems, embedded systems, compiler design and chemical systems. This paper proposes a Constraint Programming approach based on Modular Arithmetic, taking into account temporal resource constraints. In particular, we propose an original modular precedence constraint along with its filtering algorithm. Classical ”modular” approaches fix the modulus and solve an integer linear sub-problem in a generate-and-test fashion. Conversely, our technique is based on a non-linear model that faces the problem as a whole: the modulus domain bounds are inferred from the activity-related and iteration-related variables. The method has been extensively tested on a number of non-trivial synthetic instances and on a set of realistic industrial instances. Both the time to compute a solution and its quality have been assessed. The method is extremely fast to find close to optimal solutions in a very short time also for large instances. In addition, we have found a solution for one instance that was previously unsolved and improved the bound of another of a factor of 11.5%.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   109.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   149.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Artigues, C., Demassey, S., Néron, E.: Resource-constrained project scheduling - Models, Algorithms, Extensions and Applications. Wiley, Chichester (2008)

    Book  Google Scholar 

  2. Ayala, M., Artigues, C.: On integer linear programming formulations for the resource-constrained modulo scheduling problem (2010), http://hal.archives-ouvertes.fr/docs/00/53/88/21/PDF/ArticuloChristianMaria.pdf

  3. Bhattacharyya, S.S., Sriram, S.: Embedded Multiprocessors - Scheduling and Synchronization (Signal Processing and Communications), 2nd edn. CRC Press, Boca Raton (2009)

    Google Scholar 

  4. Blachot, F., de Dinechin, B.D., Huard, G.: SCAN: A Heuristic for Near-Optimal Software Pipelining. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 289–298. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  5. Chen, H., Chu, C., Proth, J.-M.: Cyclic scheduling of a hoist with time window constraints. IEEE Transactions on Robotics and Automation 14(1), 144–152 (1998)

    Article  Google Scholar 

  6. Crama, Y., Kats, V., van de Klundert, J., Levner, E.: Cyclic scheduling in robotic flowshops. Annals of Operations Research 96, 97–124 (2000), 10.1023/A:1018995317468

    Article  MathSciNet  MATH  Google Scholar 

  7. Dasdan, A.: Experimental analysis of the fastest optimum cycle ratio and mean algorithms. ACM Transactions on Design Automation of Electronic Systems (TODAES) 9(4), 385–418 (2004)

    Article  Google Scholar 

  8. Dechter, R.: Temporal constraint networks. Artificial Intelligence 49, 61–95 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  9. Draper, D.L., Jonsson, A.K., Clements, D.P., Joslin, D.E.: Cyclic scheduling. In: Proc. of IJCAI, pp. 1016–1021. Morgan Kaufmann Publishers Inc., San Francisco (1999)

    Google Scholar 

  10. de Dinechin, B.D.: From Machine Scheduling to VLIW Instruction Scheduling (2004), http://www.cri.ensmp.fr/classement/doc/A-352.ps

  11. Eichenberger, A.E., Davidson, E.S.: Efficient formulation for optimal modulo schedulers. ACM SIGPLAN Notices 32(5), 194–205 (1997)

    Article  Google Scholar 

  12. Georgiadis, L., Goldberg, A.V., Tarjan, R.E., Werneck, R.F.: An experimental study of minimum mean cycle algorithms. In: Proc. of ALENEX, p. 13 (2009)

    Google Scholar 

  13. Hagog, M., Zaks, A.: Swing modulo scheduling for gcc (2004)

    Google Scholar 

  14. Hanen, C., Munier, A.: Cyclic scheduling on parallel processors: an overview, pp. 193–226. John Wiley & Sons Ltd., Chichester (1994)

    Google Scholar 

  15. Hanen, C.: Study of a np-hard cyclic scheduling problem: The recurrent job-shop. European Journal of Operational Research 72(1), 82–101 (1994)

    Article  MATH  Google Scholar 

  16. Kudlur, M., Mahlke, S.: Orchestrating the execution of stream programs on multicore platforms. In: Proc. of PLDI, vol. 43, pp. 114–124 (May 2008)

    Google Scholar 

  17. Le Pape, C., Couronné, P.: Time-versus-capacity compromises in project scheduling. In: Proc. of the 13th Workshop of the UK Planning Special Interest Group (1994)

    Google Scholar 

  18. Lee, E.A., Messerschmitt, D.G.: Synchronous Data Flow. Proceedings of the IEEE 75(9), 1235–1245 (1987)

    Article  Google Scholar 

  19. Li, Z., Ierapetritou, M.: Process scheduling under uncertainty: Review and challenges. Computers and Chemical Engineering 32(4-5), 715–727 (2008); Festschrift devoted to Rex Reklaitis on his 65th Birthday

    Article  Google Scholar 

  20. Llosa, J., Gonzalez, A., Ayguade, E., Valero, M.: Swing Modulo Scheduling: A Lifetime-Sensitive Approach. In: PACT 1996, pp. 80–87 (1996)

    Google Scholar 

  21. Llosa, J., Gonzalez, A., Ayguade, E., Valero, M., Eckhardt, J.: Lifetime-sensitive modulo scheduling in a production environment. IEEE Trans. on Comps. 50(3), 234–249 (2001)

    Article  Google Scholar 

  22. Parhi, K.K., Messerschmitt, D.G.: Static rate-optimal scheduling of iterative data-flow programs via optimum unfolding. IEEE Transactions on Computers 40(2), 178–195 (1991)

    Article  Google Scholar 

  23. Peterson, J.L.: Petri Net Theory and the Modeling of Systems. Prentice Hall PTR, Englewood Cliffs (1981)

    MATH  Google Scholar 

  24. Rau, R.B.: Iterative modulo scheduling: An algorithm for software pipelining loops. In: Proc. of MICRO-27, pp. 63–74. ACM, New York (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bonfietti, A., Lombardi, M., Benini, L., Milano, M. (2011). A Constraint Based Approach to Cyclic RCPSP. In: Lee, J. (eds) Principles and Practice of Constraint Programming – CP 2011. CP 2011. Lecture Notes in Computer Science, vol 6876. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23786-7_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-23786-7_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-23785-0

  • Online ISBN: 978-3-642-23786-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics