Abstract
This paper proposes a global cumulative constraint for cyclic scheduling problems. In cyclic scheduling a project graph is periodically re-executed on a set of limited capacity resources. The objective is to find an assignment of start times to activities such that the feasible repetition period λ is minimized. Cyclic scheduling is an effective method to maximally exploit available resources by partially overlapping schedule repetitions. In our previous work [4], we have proposed a modular precedence constraint along with its filtering algorithm. The approach was based on the hypothesis that the end times of all activities should be assigned within the period: this allows the use of traditional resource constraints, but may introduce resource inefficiency. The adverse effects are particularly relevant for long activity durations and high resource availability. By relaxing this restriction, the problem becomes much more complicated and specific resource constrained filtering algorithms should be devised. Here, we introduce a global cumulative constraint based on modular arithmetic, that does not require the end times to be within the period. We show the advantages obtained for specific scenarios in terms of solution quality with respect to our previous approach, that was already superior with respect to state of the art techniques.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
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
Bhattacharyya, S.S., Sriram, S.: Embedded Multiprocessors - Scheduling and Synchronization (Signal Processing and Communications), 2nd edn. CRC Press (2009)
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)
Bonfietti, A., Lombardi, M., Benini, L., Milano, M.: A Constraint Based Approach to Cyclic RCPSP. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 130–144. Springer, Heidelberg (2011)
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)
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. (1999)
de Dinechin, B.D.: From Machine Scheduling to VLIW Instruction Scheduling (2004), http://www.cri.ensmp.fr/classement/doc/A-352.ps
Eichenberger, A.E., Davidson, E.S.: Efficient formulation for optimal modulo schedulers. ACM SIGPLAN Notices 32(5), 194–205 (1997)
Hagog, M., Zaks, A.: Swing modulo scheduling for gcc (2004)
Hanen, C., Munier, A.: Cyclic scheduling on parallel processors: an overview, pp. 193–226. John Wiley & Sons Ltd. (1994)
Hanen, C.: Study of a np-hard cyclic scheduling problem: The recurrent job-shop. European Journal of Operational Research 72(1), 82–101 (1994)
Kudlur, M., Mahlke, S.: Orchestrating the execution of stream programs on multicore platforms. In: Proc. of PLDI, vol. 43, pp. 114–124 (May 2008)
Llosa, J., Gonzalez, A., Ayguade, E., Valero, M.: Swing Modulo Scheduling: A Lifetime-Sensitive Approach. In: PACT 1996, pp. 80–87 (1996)
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)
Lombardi, M., Bonfietti, A., Milano, M., Benini, L.: Precedence Constraint Posting for Cyclic Scheduling Problems. In: Achterberg, T., Beck, J.C. (eds.) CPAIOR 2011. LNCS, vol. 6697, pp. 137–153. Springer, Heidelberg (2011)
Baptiste, P., Le Pape, C., Nuijten, W.: Constrains-based scheduling: applying Constraint Programming to Scheduling. Kluwer (2001)
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)
Rau, R.B.: Iterative modulo scheduling: An algorithm for software pipelining loops. In: Proc. of MICRO-27, pp. 63–74. ACM (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bonfietti, A., Lombardi, M., Benini, L., Milano, M. (2012). Global Cyclic Cumulative Constraint. In: Beldiceanu, N., Jussien, N., Pinson, É. (eds) Integration of AI and OR Techniques in Contraint Programming for Combinatorial Optimzation Problems. CPAIOR 2012. Lecture Notes in Computer Science, vol 7298. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29828-8_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-29828-8_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29827-1
Online ISBN: 978-3-642-29828-8
eBook Packages: Computer ScienceComputer Science (R0)