Section: Research Program
Time Scheduling
Cyberphysical systems are reactive systems whose correctness not only depends on a deterministic behavior but also on timing predictability. The timing parameters of a CPS are requirements that arise from the system’s specification (e.g. minimum throughput, maximum latency, deadlines) or timing properties of the physical and cyberparts that restrict the CPS implementation. The design of a CPS must ensure that these timing requirements will be met, even in the worstcase scenario, through the different components and their timing properties.
Scheduling theory
Realtime scheduling theory provides tools for predicting the timing behaviour of a CPS which consists of many interacting software and hardware components. Expressing parallelism among software components is a crucial aspect of the design process of a CPS. It allows for efficient partition and exploitation of available resources. In the realtime scheduling theory literature, many models of computation have been proposed to express such parallelism, for instance:

Set of independent periodic, sporadic, or aperiodic tasks where each realtime task is generally characterised with some timing parameters: deadline, period, first start time, jitter, etc. The periodic and sporadic task models (Scheduling algorithms for multiprogramming in a hardrealtime environment. C. L. Liu and J. W. Layland. Journal of the ACM 20(1), 1973.) are very well studied task models since they allow to analytically reason about the timing behaviour of tasks. More expressive task models (The digraph realtime task model. M. Stigge, P. Ekberg, N. Guan, and W. Yi. RealTime and Embedded Technology and Applications Symposium. IEEE, 2011.) such as the multiframe and the recurring realtime task models have also emerged.

Task graph models (Task graph scheduling using timed automata. Y. Abdeddaïm, A. Kerbaa, and O. Maler. International Symposium on Parallel and Distributed Processing. IEEE, 2003.) where precedence constraints among realtime tasks may exist.

Dataflow graph models such as synchronous dataflow (SDF (Synchronous dataflow. E. A. Lee and D. G. Messerschmitt. Proceedings of the IEEE, 1987.)) and cyclostatic dataflow (CSDF (Cyclestatic dataflow. G. Blisen, M. Engels, R. Lauwereins, and J. Peperstraete. Transactions on Signal Processing). IEEE, 1996.) models where the set of tasks (also called actors) communicate with each other through FIFO channels. When it fires, an actor consumes a predefined number of tokens from its inputs and produces a predefined number of tokens on its outputs. The scheduling problem is hence more complex since data dependencies must be satisfied.
The literature about realtime scheduling of sets of independent realtime tasks (A survey of hard realtime scheduling for multiprocessor systems. R. I. Davis and A. Burns. ACM Computing Survey 43(4), 2011.) provides very mature schedulability tests regarding many scheduling strategies, preemptive or nonpreemptive scheduling, uniprocessor or multiprocessor scheduling, etc. Historically, realtime systems where scheduled by cyclic executives (i.e. static scheduling). However, since this approach produces rigid and difficult to maintain systems and handles only periodic tasks, the research community has proposed many dynamic scheduling algorithms, which can be classified as fixedpriority scheduling (e.g. ratemonotonic scheduling, deadline monotonic scheduling) and dynamic priority scheduling (e.g. earliestdeadline first scheduling, least laxity scheduling). Multiprocessor scheduling can be further classified as partitioned scheduling (each task is allocated to a processor and no migration is allowed), global scheduling (a single job can migrate to and execute on different processors), or hybrid.
Scheduling of dataflow graphs has also been extensively studied in the past decades. Staticperiodic scheduling is the main scheduling approach, which consists in infinitely repeating a firing sequence of actors. This problem has been addressed with respect to many performance criteria: throughput maximisation (Throughput analysis of synchronous dataflow graphs. Ghamarian, A.H. et al. Application of Concurrency to System Design. IEEE, 2006), latency minimisation (Latency minimization for synchronous data flow graphs. A. H. Ghamarian, et al. Conference on Digital System Design Architectures, Methods and Tools. Euromicro, 2007.), buffer minimisation (Minimal memory schedules for dataflow networks. M. Cubric and P. Panangaden. International Conference on Concurrency Theory. Springer, 1993.), code size minimisation (Looped schedules for dataflow descriptions of multirate signal processing algorithms. S. S. Bhattacharyya and E. A. Lee. Journal of Formal Methods in System Design. Kluwer, 1994.), etc. Recently, realtime dynamic scheduling (fixedpriority and earliestdeadline first scheduling) of dataflow graphs has been addressed where actors are mapped to periodic realtime tasks and existing schedulability tests are adapted to synthesise the timing characteristics of actors (Affine dataflow graphs for the synthesis of hard realtime applications. A. Bouakaz, J.P. Talpin, and J. Vitek. International Conference on Application of Concurrency to System Design. IEEE Press, 2012.) (Hardrealtime scheduling of datadependent tasks in embedded streaming applications. M. Bamakhrama and T. Stefanov. International Conference on Embedded Software. ACM, 2011.)