Static scheduling of synchronous data flow programs for digital signal processing
IEEE Transactions on Computers
Static Rate-Optimal Scheduling of Iterative Data-Flow Programs Via Optimum Unfolding
IEEE Transactions on Computers
Lifetime-sensitive modulo scheduling
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Iterative modulo scheduling: an algorithm for software pipelining loops
MICRO 27 Proceedings of the 27th annual international symposium on Microarchitecture
Determining the minimum iteration period of an algorithm
Journal of VLSI Signal Processing Systems
Efficient formulation for optimal modulo schedulers
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Lifetime-Sensitive Modulo Scheduling in a Production Environment
IEEE Transactions on Computers
A comparative study of modulo scheduling techniques
ICS '02 Proceedings of the 16th international conference on Supercomputing
Constraint-Based Scheduling
Swing Modulo Scheduling: A Lifetime-Sensitive Approach
PACT '96 Proceedings of the 1996 Conference on Parallel Architectures and Compilation Techniques
Experimental analysis of the fastest optimum cycle ratio and mean algorithms
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Tabu Search Algorithms for Cyclic Machine Scheduling Problems
Journal of Scheduling
Sweep synchronization as a global propagation mechanism
Computers and Operations Research
Liveness and Boundedness of Synchronous Data Flow Graphs
FMCAD '06 Proceedings of the Formal Methods in Computer Aided Design
Resource-Constrained Project Scheduling: Models, Algorithms, Extensions and Applications
Resource-Constrained Project Scheduling: Models, Algorithms, Extensions and Applications
From precedence constraint posting to partial order schedules: A CSP approach to Robust Scheduling
AI Communications - Constraint Programming for Planning and Scheduling
Orchestrating the execution of stream programs on multicore platforms
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
A general model for cyclic machine scheduling problems
Discrete Applied Mathematics
Embedded Multiprocessors: Scheduling and Synchronization
Embedded Multiprocessors: Scheduling and Synchronization
IJCAI'99 Proceedings of the 16th international joint conference on Artificial intelligence - Volume 2
Survey: Complexity of cyclic scheduling problems: A state-of-the-art survey
Computers and Industrial Engineering
Proceedings of the Conference on Design, Automation and Test in Europe
Precedence constraint posting for cyclic scheduling problems
CPAIOR'11 Proceedings of the 8th international conference on Integration of AI and OR techniques in constraint programming for combinatorial optimization problems
SCAN: a heuristic for near-optimal software pipelining
Euro-Par'06 Proceedings of the 12th international conference on Parallel Processing
Some complexity results in cyclic scheduling
Mathematical and Computer Modelling: An International Journal
Hi-index | 0.00 |
Cyclic scheduling problems consist in ordering a set of activities executed indefinitely over time in a periodic fashion, subject to precedence and resource constraints. This class of problems has many applications in manufacturing, embedded systems and compiler design, production and chemical systems. This paper proposes a Constraint Programming approach for cyclic scheduling problems, based on modular arithmetic: in particular, we introduce a modular precedence constraint and a global cumulative constraint along with their filtering algorithms. We discuss two possible formulations. The first one (referred to as CROSS) models a pure cyclic scheduling problem and makes use of both our novel constraints. The second formulation (referred to as CROSS^@?) introduces a restrictive assumption to enable the use of classical resources constraints, but may incur a loss of solution quality. Many traditional approaches to cyclic scheduling operate by fixing the period value and then solving a linear problem in a generate-and-test fashion. Conversely, our technique is based on a non-linear model and tackles the problem as a whole: the period value is inferred from the scheduling decisions. Our approach has been tested on a number of non-trivial synthetic instances and on a set of realistic industrial instances. The method proved to effective in finding high quality solutions in a very short amount of time.