Allen's interval algebra
For the type of boolean algebra called interval algebra, see Boolean algebra (structure)
Allen's interval algebra is a calculus for temporal reasoning that was introduced by James F. Allen in 1983.
The calculus defines possible relations between time intervals and provides a composition table that can be used as a basis for reasoning about temporal descriptions of events.
Formal description
Relations
The following 13 base relations capture the possible relations between two intervals.
Relation | Illustration | Interpretation |
---|---|---|
|
X takes place before Y | |
|
X meets Y (i stands for inverse) | |
|
X overlaps with Y | |
|
X starts Y | |
|
X during Y | |
|
X finishes Y | |
X is equal to Y |
Using this calculus, given facts can be formalized and then used for automatic reasoning. Relations between intervals are formalized as sets of base relations.
The sentence
- During dinner, Peter reads the newspaper. Afterwards, he goes to bed.
is formalized in Allen's Interval Algebra as follows:
In general, the number of different relations between n intervals is 1, 1, 13, 409, 23917, 2244361... OEIS A055203. The special case shown above is for n=2.
Composition of relations between intervals
For reasoning about the relations between temporal intervals, Allen's Interval Algebra provides a composition table. Given the relation between and and the relation between and , the composition table allows for concluding about the relation between and . Together with a converse operation, this turns Allen's Interval Algebra into a relation algebra.
For the example, one can infer .
Extensions
Allen's Interval Algebra can be used for the description of both temporal intervals and spatial configurations. For the latter use, the relations are interpreted as describing the relative position of spatial objects. This also works for three-dimensional objects by listing the relation for each coordinate separately.
Implementation
- A simple java library implementing the concept of Allen's temporal relations and the path consistency algorithm
- Java library implementing Allen's Interval Algebra (incl. data and index structures, e.g., interval_tree)
See also
References
- Allen, James F. (26 November 1983). "Maintaining knowledge about temporal intervals" (PDF). Communications of the ACM. ACM Press: 832–843. ISSN 0001-0782. doi:10.1145/182.358434.
- Nebel, Bernhard; Bürckert, Hans-Jürgen (1995). "Reasoning about Temporal Relations: A Maximal Tractable Subclass of Allen's Interval Algebra" (PDF). Journal of the ACM. 42: 43–66. doi:10.1145/200836.200848.
- van Beek, Peter; Manchak, Dennis W. (1996). "The design and experimental analysis of algorithms for temporal reasoning" (PDF). Journal of Artificial Intelligence Research. 4 (1996): 1–18. Bibcode:1996cs........1101V. arXiv:cs/9601101 [cs.AI].