5.352. sliding_time_window
DESCRIPTION | LINKS | GRAPH |
- Origin
N.Β Beldiceanu
- Constraint
- Arguments
- Restrictions
- Purpose
For any time window of size , the intersection of all the tasks of the collection with this time window is less than or equal to a given limit .
- Example
-
The lower part of FigureΒ 5.352.1 indicates the different tasks on the time axis. Each task is drawn as a rectangle with its corresponding identifier in the middle. Finally the upper part of FigureΒ 5.352.1 shows the different time windows and the respective contribution of the tasks in these time windows. Note that we only need to focus on those time windows starting at the start of one of the tasks. A line with two arrows depicts each time window. The two arrows indicate the start and the end of the time window. At the left of each time window we give its occupation. Since this occupation is always less than or equal to the limit 6, the constraint holds.
Figure 5.352.1. Time windows and their use for the five tasks of the Example slot
- Typical
- Symmetries
can be decreased.
can be increased.
Items of are permutable.
One and the same constant can be added to the attribute of all items of .
can be decreased to any value .
- Arg. properties
Contractible wrt. .
- Usage
The constraint is useful for timetabling problems in order to put an upper limit on the total work over sliding time windows.
- Reformulation
The constraint can be expressed in term of a set of reified constraints and of linear inequalities constraints:
For each pair of tasks of the collection we create a variable which is set to the intersection of with the time window of size that starts at instant :
If (i.e.,Β and coincide):
.
If and (i.e.,Β for sure ends before the time window ):
.
If and (i.e.,Β for sure starts after the time window ):
.
Otherwise (i.e.,Β can potentially overlap the time window ):
.
For each task we create a linear inequality constraint .
- See also
common keyword: Β (temporal constraint).
related: Β (sum of intersections of tasks with sliding time window replaced by sum of the points of intersecting tasks with sliding time window).
- Keywords
constraint type: sliding sequence constraint, temporal constraint.
- Arc input(s)
- Arc generator
-
- Arc arity
- Arc constraint(s)
-
- Sets
-
- Constraint(s) on sets
- Graph model
We generate an arc from a task to a task if task does not start before task and if task intersects the time window that starts at the origin of task . Each set generated by corresponds to all tasks that intersect in time the time window that starts at the origin of a given task.
PartsΒ (A) andΒ (B) of FigureΒ 5.352.2 respectively show the initial and final graph associated with the Example slot. In the final graph, the successors of a given task correspond to the set of tasks that do not start before task and intersect the time window that starts at the origin of task .
Figure 5.352.2. Initial and final graph of the constraint
(a) (b)