Scheduling periodic tasks in a hard real-time environment
We consider a real-time scheduling problem that occurs in the design
of software-based aircraft control. The goal is to distribute tasks
$ au_i=(c_i,p_i)$ on a minimum number of identical machines and to
compute offsets $a_i$ for the tasks such that no collision occurs. A
task $ au_i$ releases a job of running time $c_i$ at each time $a_i +
kcdot p_i, , k in mathbb{N}_0$ and a collision occurs if two jobs are
simultaneously active on the same machine.
We shed some light on the complexity and approximability landscape of this problem.
Although the problem cannot be approximated
within a factor of $n^{1-varepsilon}$ for any $varepsilon>0$, an interesting restriction
is much more tractable: If the periods are dividing (for each $i,j$ one has $p_i |
p_j$ or $p_j | p_i$), the problem allows for a better structured representation of solutions, which leads
to a 2-approximation. This result is tight, even asymptotically.
Real-Time Scheduling
Periodic scheduling problem
Periodic maintenance problem
Approximation hardness
Approximation algorithm
1-3
Regular Paper
Friedrich
Eisenbrand
Friedrich Eisenbrand
Nicolai
Hähnle
Nicolai Hähnle
Martin
Niemeier
Martin Niemeier
Martin
Skutella
Martin Skutella
Jose
Verschae
Jose Verschae
Andreas
Wiese
Andreas Wiese
10.4230/DagSemProc.10071.13
Creative Commons Attribution 4.0 International license
https://creativecommons.org/licenses/by/4.0/legalcode