EN FR
EN FR
TASC - 2016
Overall Objectives
Application Domains
Bilateral Contracts and Grants with Industry
Bibliography
Overall Objectives
Application Domains
Bilateral Contracts and Grants with Industry
Bibliography


Section: New Software and Platforms

GCCat on time series

Global Constraint Catalog, Volume II, time-series constraints

Keywords: Constraint Programming - Sequence - Transducer - Global constraint

Functional Description

The second volume of the Global Constraint Catalogue is devoted to time-series constraints. Within the context of Constraint Programming, time-series constraints go back to the work of Goldin and Kanellakis. This volume contains 626 constraints, which are explicitly described in terms of automata with accumulators. Checkers and propagators for all these constraints were synthesised from 22 transducers.

As in the first volume, the global constraints described in this second volume are not only accessible to humans, who can read the catalogue when searching for some information. It is also available to machines, which can read and interpret it. This is why there also exists an electronic version of this catalogue where one can get, for all time-series constraints, a complete description in terms of meta-data used in the first volume. In fact, unlike the first volume, all the meta-data of the electronic version as well as all text and figures of this second volume were automatically generated. While this second volume is by no means supposed to contain all possible time-series constraints, it contributes in the context of time-series constraints to the systematic reconstruction of the Global Constraint Catalogue that we have previously advocated. This reconstruction is based on the following methodology:

  • First reuse, adapt or come up with abstractions, which allow to concisely represent structures and properties of time series as abstract combinatorial objects. In our context these abstractions essentially correspond to:

    1. Transducers where letters of the output alphabet are interpreted as semantic letters indicating how to recognise pattern occurrences.

    2. Transducers glue matrices expressing the relationship between the prefix, the suffix and the full sequence passed to a transducer.

    3. Properties associated to regular expressions corresponding to fragments of the input language of our transducers.

  • Second, create from these abstract combinatorial objects a data base of concrete combinatorial objects.

  • Third, synthesise concrete code for various technologies, languages, tasks from this data base of concrete combinatorial objects. In this context, correctness and efficiency of the synthesised code are essentially side product of:

    • The correctness of the formulae of our data base which is itself based on the wellformedness of our abstractions.

    • The generality behind our abstract combinatorial objects.

The time-series catalogue is done in the following way:

  • All time-series constraints are now defined in a compositional way from a few basic constituents, i.e., patterns, features, aggregators, and predicates, which completely define the meaning of a constraint, where patterns are defined using regular expressions.

  • Constraint names are now constructed in a systematic way as the concatenation of pattern name, feature name, and aggregation or predicate name.

  • Given a pattern p, checkers and constraints are now systematically synthesised from a transducer that, given an input sequence over the input alphabet {<,=,>}, compares two adjacent values of a time-series and determines an output sequence over a output semantic alphabet describing how to recognise the occurrences of p.

  • For each time-series constraint associated with a pattern p, the generation of an automaton with accumulators is completely driven by the transducer associated with pattern p as well as by decoration tables describing for each semantic letter of the output alphabet of the transducers how to generate accumulator updates. Code optimisation is ensured by using decoration tables that depend on properties of the pattern, of the feature, and of the aggregator associated with the time-series constraint.

  • Lower and upper bounds of characteristics of time-series that appear in the restriction slot of a time-series constraint are synthesised from a few parameterised formulae that only depend on a restricted set of characteristics of the regular expression associated with the pattern.

  • Parametrised glue matrices are provided for each transducer that corresponds to reversible time-series constraints. A concrete glue matrix is given for each reversible time-series constraint.

  • Linear invariants are systematically obtained by applying the Farkas Lemma to the automata with accumulators that were synthesised. They consist of linear constraints typically linking consecutive accumulator values, e.g., see the legend of the second automaton of the constraints, which are generated even with non-linear accumulator updates. Missing linear invariants will be completed later on.

  • Last but not least, time-series constraints were used for generating time-series verifying a conjunction of constraints both in the context of Constraint Programming and in the context of Linear Programming.

  • In the context of sequential pattern mining, time-series constraint checkers can be used to identify and extract patterns from fixed sequences. While the time-series catalogue may need to be extended in order to capture more patterns, having a possibly large set of fixed time-series constraints is a natural safeguard to prevent overfitting when dealing with few sequences, at a price of not finding patterns that are not covered by the catalogue.

  • Finally, both SICStus and MiniZinc code are synthesised. The later allows using time series constraints on many plate forms such as Choco, Gecode, ORtools, Cplex or Gurobi and is available Electronic Constraint Catalogue.

  • Participants: Ekaterina Arafailova, Nicolas Beldiceanu, Rémi Douence, Mats Carlsson, Pierre Flener, Maria Andreina Francisco Rodriguez, Justin Pearson, Helmut Simonis

  • Contact: Nicolas Beldiceanu

  • URL: https://arxiv.org/abs/1609.08925