Verified Commit 8d9cce12 authored by Theo von Arx's avatar Theo von Arx
Browse files

Improve 'Scheduling with timing constraints

parent eb329184
......@@ -88,13 +88,14 @@ guarantees that a feasible schedule exists for this latency.
Model all timing constraints using relative constraints:
& \tau(v_j)\geq \tau(v_i)+l_{ij} \quad && \Rightarrow \quad \tau(v_j)-\tau(v_i) \geq l_{ij} \\
& \tau(v_j) \leq \tau(v_i)+l_{ij} \quad && \Rightarrow \quad \tau(v_i)-\tau(v_j) \geq -l_{ij} \\
& \tau(v_j) = \tau(v_i)+l_{ij} \quad && \Rightarrow (\tau(v_j)-\tau(v_i) \leq l_ij) \wedge (\tau(v_j)-\tau(v_i)\geq l_{ij})\\
\intertext{$v_j$ should start \textbf{no earlier} than $l_{ij}$ after the start of ${v_i}:$}
\tau(v_j)\geq \tau(v_i)+l_{ij} \quad & \Rightarrow \quad \tau(v_j)-\tau(v_i) \geq l_{ij} \\
\intertext{$v_j$ should start \textbf{no later} than $l_{ij}$ after the start of ${v_i}:$}
\tau(v_j) \leq \tau(v_i)+l_{ij} \quad & \Rightarrow \quad \tau(v_i)-\tau(v_j) \geq -l_{ij} \\
\intertext{$v_j$ should start \textbf{exactly} $l_{ij}$ after the start of ${v_i}:$}
\tau(v_j) = \tau(v_i)+l_{ij} \quad & \Rightarrow (\tau(v_i)-\tau(v_j) \geq -l_{ij}) \wedge (\tau(v_j)-\tau(v_i)\geq l_{ij})
Represent those restrictions as a \textcolor{red}{weighted constraint graph} $G_C=(V_C,E_C,d)$ related to a sequence graph $G_S=(V_S,E_S)$ that contains nodes $V_C=V_S$ (the operations) and a weighted, directed edge for each time constraint. $d(v_i,v_j)$ means $\tau(v_j)-\tau(v_i) \geq d(v_i,v_j)$. ($d(v_i,v_j)$ ist das Gewicht vom Pfeil $v_i$ nach $v_j$) \newline
There is no valid schedule for the given timing constraints (assuming you have unlimited resources) if there is a positive circle (=the sum of all weights in the circle is positive) in the weighted graph.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment