  Complex Event Recognition applications exhibit various types of uncertainty,
ranging from incomplete and erroneous data streams to imperfect complex event
patterns. We review Complex Event Recognition techniques that handle, to some
extent, uncertainty. We examine techniques based on automata, probabilistic
graphical models and first-order logic, which are the most common ones, and
approaches based on Petri Nets and Grammars, which are less frequently used. A
number of limitations are identified with respect to the employed languages,
their probabilistic models and their performance, as compared to the purely
deterministic cases. Based on those limitations, we highlight promising
directions for future work.
