a transducer-based model for representing functional constraints on integer sequences · 2018. 9....

15
A Transducer-Based Model for Representing Functional Constraints on Integer Sequences Ekaterina Arafailova, Nicolas Beldiceanu, Mats Carlsson, Remi Douence, Maria Andreina Francisco Rodriguez, and Helmut Simonis ModRef 18, August 26, 2018

Upload: others

Post on 23-Jan-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

A Transducer-Based Model forRepresenting Functional Constraintson Integer Sequences

Ekaterina Arafailova, Nicolas Beldiceanu, Mats Carlsson,Remi Douence, Maria Andreina Francisco Rodriguez, andHelmut Simonis

ModRef 18, August 26, 2018

Page 2: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Key Ideas

• Describe mechanism to define many global constraintsdeclaratively

• Seen as functional constraints on a sequencec(R, [X1,X2, ...,Xn])

• Automatically generate constraints from description

• Based on automata with registers• Provides basis for much more (not covered here):

• Bounds• Redundant constraints• Interaction of constraints

Insight Centre for Data Analytics Slide 2ModRef 18, August 26, 2018

Page 3: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Examples

• nb_strictly_decreasing_sequence(2, [1, 1, 0, 0, 1, 0, 0, 1])• max_width_group(2, [0, 1, 0, 1, 1])• nb_stretch(6, [0, 1, 1, 1, 0, 1, 0, 1])

Insight Centre for Data Analytics Slide 3ModRef 18, August 26, 2018

Page 4: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Why?

• Constraint solvers depend on global constraints forperformance

• But each constraint is an algorithm on its own

• Too many to implement

• Impossible to be confident in correctness

• Too many to remember

• We need a more systematic way to describe andimplement global constraints

Insight Centre for Data Analytics Slide 4ModRef 18, August 26, 2018

Page 5: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Note

• We describe the process based on integer sequences

• The derived mechanism also works as a constraint onfinite domain variables

Insight Centre for Data Analytics Slide 5ModRef 18, August 26, 2018

Page 6: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Computing with Integer Sequences

X1, ...,XnInteger Sequence

S1, ...,Sn−a+1Signature Sequence

Pattern Recognition on Signature Sequence

Adjustment with Trimming Parameters

Feature Computation Based on x1, ..., xn

f0,0, f1,0, ..., fp,0 f0,1, f1,1, ..., fp,1 Feature Values (p Features)

g0 g1

Aggregation Level 1

First Level Aggregate

Aggregation Level 2

h = R Result Value

Insight Centre for Data Analytics Slide 6ModRef 18, August 26, 2018

Page 7: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Signature Definition

• Time-Series: binary<,=, >

• Unary example: ∈, /∈ for value set V , max_width_group

• Other binary example :=, 6=, nb_stretch

• k-ary: Compute signature value from sub-sequences oflength k

• Unary classification

• Extended binary�, <,=, >,�

Insight Centre for Data Analytics Slide 7ModRef 18, August 26, 2018

Page 8: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

The Scheme

Integer Sequence

Signature Abstraction

Regular ExpressionSemantic Letters

Transducer Generator

TransducerParameters Instruction Set

Generator

Automaton

ImplementationRewriting Analysis Tools

Global ConstraintsCP/MIP models Properties

Data

Tools

Background

Generated

Insight Centre for Data Analytics Slide 8ModRef 18, August 26, 2018

Page 9: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

But you did all this already for time-series?

• This is a second-generation study• Time-series were a special case

• Specific, binary signature (<,=,>)• Initially hand-crafted transducers• Feature/Aggregator set limited• Only one feature considered per constraint

• Some issues were not dealt with elegantly• Mix-up of pattern recognized and feature value computed• Some pattern were not expressible

Insight Centre for Data Analytics Slide 9ModRef 18, August 26, 2018

Page 10: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Compare: Old vs New

bump_on_decreasing_sequence, Reg. expr ′ >><>>′, Signature′ <=>′

Old New

Insight Centre for Data Analytics Slide 10ModRef 18, August 26, 2018

Page 11: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Example Recognition ′ >><>>′

> > > < > >

out out out mb mb fe Old (Only for b=2)

m1r

mb m2r

mb mb f ,e,m2r New

Insight Centre for Data Analytics Slide 11ModRef 18, August 26, 2018

Page 12: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

The Generated Automaton

• Based on the generated transducer• Five registers

• Level 4: aggregated value h• Level 3: aggregated value g• Level 2: feature value of current confirmed, but

uncompleted pattern• Level 1: potential feature value of unconfirmed pattern• Level 0: potential feature value of unconfirmed pattern

Insight Centre for Data Analytics Slide 12ModRef 18, August 26, 2018

Page 13: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

The Micro-Instructions

Insight Centre for Data Analytics Slide 13ModRef 18, August 26, 2018

Page 14: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

The Macro-Instructions

Insight Centre for Data Analytics Slide 14ModRef 18, August 26, 2018

Page 15: A Transducer-Based Model for Representing Functional Constraints on Integer Sequences · 2018. 9. 14. · A Transducer-Based Model for Representing Functional Constraints on Integer

Limitations

• Complexity of scheme• Initial learning curve• Amortized over many constraints

• No guarantees about consistency levels achieved• More reasoning possible (similar to time-series results)• Better correct and slow than fast and wrong

Insight Centre for Data Analytics Slide 15ModRef 18, August 26, 2018