From: AAAI Technical Report SS-03-03. Compilation copyright © 2003, AAAI (www.aaai.org). All rights reserved. STCSP: A Representation Model for Sequential Patterns Aomar Osmani Laboratoire LIPN-CNRS UMR7030 99, Avenue J.-B. Clément, F-93430 Villetaneuse. {ao@lipn.univ-paris13.fr} Abstract Temporal constraint satisfaction problem is a useful formalism for representing and reasoning about temporal occurrences and their temporal relationships. In this paper, we present a new temporal constraint satisfaction problem to deal with sequential patterns (STCSP). The problem is represented as a constraint satisfaction problem with sequential valuated variables, where multiple sequential values are attributed for each variable. Several classes of STCSP can be defined: qualitative/quantitative intervals/points and any combination of them. We will introduce the STCSP in the case of qualitative points. The main results are: (i) a new formalization of the sequential patterns problems, (ii) the definition of the usual problems: finding solution, checking the consistency, answering queries about scenarios that satisfy some classes of constraints, etc., (iii) the algorithm for reasoning about qualitative point STCSP with a particular evaluation function. Introduction The serial behavior is essential in many fields of the artificial intelligence, particularly in planning (Moi98), reasoning (Kui94), robotics (PFL+ 00; natural language (Pro01; SWea96), SOS+ 99), speech recognition (JUA93), adaptive control (Mee95), prediction of temporal series (HBM01; BJGG+ 02), biological applications (Pil00; JbAK01; OHTT01; MA01), weather prediction (Hop01; Hop02), telecommunication networks (ORC+ 99; CD99; Osm99; Rie96), market places (Tes92), multiagents systems (Moi98; RPBA02), training of navigation (SP99), e-commerce (Tes92), anomalies detection (LC98), data mining in great databases (AS95; D.J01). The treatment of the sequences or the sequence-mining is the discovery of sets of characteristics shared through time by a great number of objects ordered in time (D.J01). It is an interdisciplinary problem which uses in particular artificial intelligence, databases, cognitive sciences, and c 2003, American Association for Artificial IntelliCopyright gence (www.aaai.org). All rights reserved. engineering techniques. There are several approaches for sequences representation and sequences reasoning. These approaches depend on the problem formulation (Example possibility or not to take into account actions), the type of considered objects: points or/and intervals, the type of reasoning: qualitative or quantitative and the type of the considered problem: prediction, recognition, or sequences generation. Several types of formalisms are currently used like Markov’s models (Bau72; FAN97; JBS99), symbolic planning systems (AC90), neural networks (FGS95; GHL95), associative networks (ea88; KS88), dynamic programming (BT96; BC96), reinforcement learning (Bel57; Lin92), probabilistic prediction (OH97), graphs models, interval algebra, temporal difference approaches (SB97), linear regression (BER90), chronicles (DG94), inductive logical programming (aSD94), etc. Some works combine various approaches for the sequences learning problem: symbolic rules systems and neural networks (SP98), symbolic planning and reinforcement learning (DB97), etc. The work published by Ron Sun and Lee Giles (Se02) gives a progress report on the sequence learning problem formulation. It gives a comparison of various models, their capacities and their limits, the implementations, the empirical comparisons and their uses in concrete applications. Our interest is to use a Constraint Satisfaction Problem (CSP) approach to deal with sequence representation and sequence reasoning. A classical CSP problem is specified by providing a set of variables, the corresponding domain values for each variable, and a set of constraints on the variables. Solving an instance of a CSP problem consists in assigning values to variables such that all constraints are satisfied simultaneously (Tsa93). Each constraint is defined over some subset of the original set of variables and limits the combinations of values that the variables can take in this subset. The number of affected variables is the arity of the constraint. Any n-ary constraint can be expressed as a binary constraint. Hence, binary CSPs are, in sense, representative of all CSP problems. For a comprehensive overview on the CSP see (Kum92). An exhaustive study can also be found in (Tsa93). The Temporal CSP (TCSP) (SV98) is a particular class of CSP where variables represent times and constraints represent sets of possible temporal relations between them. The purpose of this paper is to present a TCSP approach to deal with sequential patterns. One of the originalities of this framework is the possibility to represent and to reason about time evolution and multiple variables values. Let us consider the following examples: Example 1 I read the newspaper (I1 ) when I take my breakfast (I2 ). After breakfast I will take the bus to go to my office (I3 ). Example 2 I read the newspaper when I take my breakfast. After breakfast I take the bus to go to my office. Before starting my work (I4 ) I read my newspaper. In example 1, each variable has only one instantiation. If we consider interval algebra representation (All83), we will have the following expression: (I2 during I1 ) ∧ (I1 bef ore I3 ) In example 2, variable I1 has two instantiations among the time: (I2 during I1 ) ∧ (I1 bef ore I3 )∧ (I3 bef ore I2 ) ∧ (I2 bef ore I4 ) If we consider the classical TCSP consistency algorithms, this situation is wrong. This type of situation is essential in several applications like alarm diagnosis (Osm99; OL00). To present this problem, we will consider in this paper a particular STCSP: qualitative point STCSP. The paper is organized as follows: Section 2 presents the usual problems concerned with sequences. Section 3 introduces the model. Section 4 defines some fundamental concepts. In section 5, we describe the qualitative point STCSP with the frequency evaluation function. Conclusions are given in section 5. STCSP problems These are various sequences patterns problems: looking for more frequent solutions, verifying the frequency of a given sequence, etc. The main studied ones are (Se02): • Prediction problem: given a pattern [(a1 , . . . , an ), R], we want to predict the object an+j , j > 0 such that (∀i ∈ 1..n) ai < an+1 . When j=1, we make predictions based only on the immediately preceding object; • Sequence generation. This task has the same formulation as the prediction problem but consider the following situation: given a pattern [(a1 , . . . , an ), R], we want to generate an object an+j such that (∀i ∈ 1..n) ai < an+1 ; • Sequence recognition. This problem consists in verifying the consistency of a given pattern [(a1 , . . . , an ), R]. The response will be either the pattern is valid or not, according to a set of pre-defined criteria. Example 3 To illustrate the differences between the prediction and the recognition problems, let us consider the following sequence: (a1 , a2 , a1 , a2 , a1 , a3 , a1 , a1 ). If we consider the recognition problem with a frequency evaluation function (see section ) and a threshold=2 then the response for the question: find all the maximal frequent subsequences will be the sequence (a1 , a2 ). If the question is the following prediction question: if we observe object a1 which is the possible immediate observation, the response will be a1 ∨ a2 ∨ a3 . In other word we can not predict anything. To reason about STCSP, we need to define different kinds of objects. Our first work is to define the following classes: • Qualitative point reasoning about patterns. In this case only Vilain and Kautz (VK86; VKV90) point relations are defined between objects; • Quantitative point reasoning about patterns; • Qualitative intervals reasoning about patterns. In this case interval algebra is used; • Quantitative point reasoning about patterns with interval of occurrence. In this case objects are temporal points but the occurrence period is an interval; • Quantitative intervals reasoning about patterns. Note that it is possible to consider any combination of these cases. The second consideration is the definition of the evaluation function. This function depends on the considered goal. The most used one is the sequence frequency. But, there exists several other evaluation functions like prediction function, similarity function. When evaluation functions are used, different types of constraints may be used to select significant sequences. For instance, the most used constraint for frequency evaluation function is a fixed threshold. In a given application we consider that a sequence is frequent if and only if the number of its occurrence is greater then an a priori fixed threshold. For each considered object expressed in a given language and for each given evaluation function with predefined constraints, there exists a set of solvers or algorithms to solve considered problems. The next section gives the generic model to describe sequential patterns. STCSP model We define a Sequence Temporal Constraint Satisfaction Problem (STCSP) as a 5-uplet M =< O, L, f, C, S > Where: O: describes the considered objects (for example, qualitative/quantitative points and/or intervals). In this paper we define O as a set of temporal points; L: defines the considered sequence language. For the qualitative point sequences case, we use Vilain and Kautz point algebra. A sequence will be defined as a couple (vector of objects, matrix of relations). Each element of the matrix will be a disjunction of the following qualitative relations between points: {<, >, =}. The algebraic operations in the point algebra are defined in (VKV90). We will use in this paper the following notations: (a1 , a2 , . . . , an ) indicates a sequence a1 < a2 < . . . < an . {a1 , a2 , . . . , an } indicates that for all event ai and aj , if ai is the same event as aj then if i < j then ai < aj , otherwise ai may have any other relation with aj . [(a1 , . . . , an ), R] defines any pattern (a1 , . . . , an ) such that: • if i < j and ai is the same event as aj then ai < aj ; • R defines the matrix relations between objects ai for i ∈ 1..n. f : f defines the evaluation function. The evaluation functions define the applicable operations on the temporal sequences. The most used one is the computation of the sequences frequency: f (M, M1 ) defines the frequency of the subFor sequence M1 in the sequence M . = 2. instance, f ( (a1 , a2 , a1 , a2 ), a1 ) f ( (a1 , a2 , a1 , a2 ), (a1 , a2 )) = 3 if we accept redundancy, and f ( (a1 , a2 , a1 , a2 ), (a1 , a2 )) = 2 otherwise. Other useful functions in sequential patterns reasoning may be defined. For instance, we can consider the ”prediction function” defined as follows: f (M, M1 , n) defines what sequence with the length n we can predict in the sequence M after the observation M1 . For example, f ( (a1 , a2 , a3 , a1 , a2 , a3 ), (a1 , a2 ), 1) = a3 . C defines the constraints applied to defined functions. C is used to select the significant patterns. For instance, if we consider the function computing the frequency, the constraint C may contains fixed or dynamic threshold which indicates that the sequence is frequent or no. S: Solver. There is at least one solver for each evaluation function. S defines algorithms applied on the evaluation function. Definitions and properties In this section we will introduce some fundamental concepts. Some concepts are not completely defined because they depends on the kind of model M. First, we present poset, which is the basic concept to reason about sequences then we introduce some relations and some operations on sequences. Poset : partially ordered sets A partially ordered set (A, ) consists of a nonempty set A and a binary relation on A such that satisfy properties (P 1)−(P 3). Sets equipped with a relation such are called partially ordered sets (poset). For all s,p,q, we have: (P1) Reflexivity: s s (P2) Antisymmetry: s p and p s imply that s = p (P3) Transitivity: s p and p q imply that s q (P4) Linearity: for all p, q ∈ S p q or q p When elements are not comparable, we use the symbol k to denote the non-comparability; we write s k p iff s 6 p and p 6 s. Let S be an ordered set. S is a sequence if, for all p, q ∈ S, p and q are comparable. An alternative name is a linearly ordered set (property (P4)). Lemma 1 With the induced order, any subset of a sequence is a sequence. Relations between sequences Order-isomorphisms This property is used to determine when two ordered sets are the same. Two poset S and P are order-isomorphic denoted P ∼ = S if there exists a map φ from P onto S such that x y in P if and only if φ(x) φ(y) in S. Then φ is called an order-isomorphism. φ is necessary bijective 1 : using reflexivity and antisymmetry of in Q then in P, φ(x) = φ(y) ⇔ φ(x) φ(y) and φ(y) φ(x) ⇔ x and y x ⇔ x = y Lemma 2 On the other hand, not every bijective map between ordered sets is an order-isomorphism. Theorem 1 Let S be a set of objects and R a set of relations on S. If objects of S are comparables with R objects and R is a linear order set then (S, R) is a linear order. Example 4 if we consider S as a qualitative points, R = {<, =, >} as possible relations between objects of S, and (topologic relation) linear order defined between elements of R, then (S, R) is a linear order. Definition 1 (Subsequence) A partial order set S is a subsequence of a poset P, denoted S ⊆ P , if • there exists an injective application φ from P onto S such that if x y in S then φ(x) φ(y) in P; • each object of S and P is represented by pair (identifier, time). For all x = (ix , tx ), φ(x) = (ix , φ(tx )). Example 5 if we consider the model presented in section , then [(a, c), (<, <)] ⊆ [(a, b, c, a), (<, =, <, <)] The subsequence concept is very important to deal with sequences but this concept is still ambiguous. According to the considered model M and the kind of application, several constraints maybe added to refine the definition of the subsequence. The most used constraints are: subsequences without gap or with bounded gaps. • subsequence without gap: S v P if S ⊆ P , and for all x, y ∈ S such that x y, if 6 ∃z ∈ S such that x z y then 6 ∃t ∈ P such that φ(x) t φ(y). In the case where is a poset (= {α1 , . . . , αn }), the last condition becomes: x αi y, if 6 ∃z ∈ S such that x αj z αk y then 6 ∃t ∈ P such that φ(x) αl t αm φ(y) 1 It’s inverse φ−1 is also an order-isomorphism. for all i, j, k, l, m ∈ {1..n} (gaps in objects and gaps in relations are prohibited). • subsequence with bounded gap: the bounds formulation depends on the type of the considered model M. For instance, if we consider qualitative points model then possible bound maybe the maximal number of objects in the sequence P separating two contiguous objects in the sequence S: for all x, y ∈ S such that x y, if 6 ∃z ∈ S such that x z y then there exists at the most ti,i∈{1,...,θ} ∈ P such that φ(x) ti φ(y). Definition 2 (order-isomorphic subsequence)A partial order set S is an order isomorphic subsequence of a poset P, denoted S ∼ =⊆ P , if there exists a poset S 0 such that: S∼ = S 0 , and S 0 ⊆ P . The order-isomorphic subsequence is useful, for instance, to express that a sequence S is quasi-subsequence of a sequence P : if there exists a similarity function between objects of S ∪ P , then φ maybe used to substitute similar objects. This substitution must guaranty that S is similar to S 0 and S 0 ⊆ P , in which case S becomes quasi-subsequence of P . Occurence This relation, denoted C(s, s1 ), gives the number of all possible instances of the sequence s1 in the sequence s. For instance, if we consider the quelitative point model, C( (a, b, c, b, a), (a, b) ) = 2. It also useful to define the number of all possible instances of the sequence s1 in the sequence s without redundency. It’s denoted C⊥ (s, s1 ) and it is mean that each object of s appear at most in one instance s1 . For instance, if we consider the quelitative point model, C⊥ ( (a, b, c, b, a), (a, b) ) = 1. Similarity between sequences This relation, denoted S, quantify the similarity between pair of sequences. This comparison concerns the local structure of considered primitives (it’s studied in many domains (Bis95)), and the relational structure between them. The function S S: sequences X sequences→ [0..1] (s1 , s2 ) 7→ (s1 , s2 ) has the following properties: • S(s, s) = 1; • antisymetric. From geometric model point of view, the similarity relation is usually symmetric, assume minimality (S(A, B) ≥ S(A, A) = 0) and the triangle inequality (S(A, B) + S(B, C) ≥ S(A, C)). But, we use a more general meaning of this word (Tve77). Tversky criticized geometric models on the grounds that violations of all three assumptions are empirically observed (WFCK99).One alternative formula proposed by Tversky is S(A, B) = θf (A∩B)−αf (A−B)−βf (B −A). The similarity is defined as a linear combination of the common and distinctive features. The terms α, β and θ reflect the weights given to the common and distinctive features. • Some works consider that S(s1 , s2 ) = 1 means : s1 is perfectly included in s2 . If S(s1 , s2 ) = S(s1 , s2 ) = 1 then s1 is equivalent to s2 . In this case, the similarity function can be seen as an extension of the subsumption function. Operations Intersection: ∩. The intersection between sequences is defined as follows: s1 ∩ s2 = s3 such that s3 ⊆ s1 and s3 ⊆ s2 and there exists no s 6= s3 such that s3 ⊆ s, s ⊆ s1 , and s ⊆ s2 . Other forms of intersections maybe defined according to the type of the considered subsequence concept. For instance, if we consider the subsequence without gap (v), then the previous definition of the intersection will be the same by replacing the standard subsequence(⊆) by the subsequence without gap (v). Example 6 Let us consider the qualitative point model: • (a, b, c, a, f ) ∩ (d, b, h, t, a, d) = (b, a) • = [(a, b, a, b), (<, <, <)] ∩ [(a, b, c, a, g), (=, <, <, = )] = [(b, a), (<)], • = [(a, b, c), (<, <)] ∩ [(f, a, b, g, c(<, =, =, =)] = [(), ()], Union: ∪. disjoint union is defined as follows: s1 ∪s2 is the ordered set formed by defining x ⊆ y in s1 ∪s2 if and only if: x, y ∈ s1 and x ⊆ y in s1 or x, y ∈ s2 and x ⊆ y in s2 . Linear sum: ⊕. Linear sum is defined as follows: s1 ⊕s2 is the ordered set formed by defining x ⊆ y in s1 ⊕s2 if and only if: x, y ∈ s1 and x ⊆ y in s1 or x, y ∈ s2 and x ⊆ y in s2 or x, ∈ s1 and y ∈ s2 and x ⊆ y. ∪ and ⊕ are associative. Projection: π . Let us consider Ps1 (s) the ordered set containing only all possible instances of s1 in s. For instance, if we consider the qualitative point model, P(a,b) (a, b, c, b, a) = (a, b, b). The projection of s1 into s2 , denoted π(s1 , s2 ), if defined as follows: π(s1 , s2 ) = Ps2 (s1 ) Example 7 The projection of the sequence (a, b, c, b, a) in the sequence (a, b) in the qualitative point model gives all possible instances of (a, b) in the sequence (a, b, c, b, a): π(a, b, c, b, a), (a, b)) = (a, b, b) In some applications, we need also the projection without redundancy π⊥ . Let us consider P⊥s1 (s) the ordered set containing only all possible instances of s1 in s such that each object of s appears at most in one instance s1 . π⊥ (s, s1 ) = P⊥s1 (s) For instance, π⊥ (a, b, c, b, a), (a, b)) = (a, b). Composition: ◦. Let us consider C(s1 , s2 ) the common part of the sequences s1 and s2 . For instance, if we consider the maximal prefix matching between s1 = ((a, b, f, b), (< , <, =, <)) and s2 = ((a, d, b, a, b, d), (<, <, <, <, =)) then C(s1 , s2 ) = (a, b, b) ((a,b,f,b) with (a, d, b, a, b, d)). The composition operation between s1 and s2 is defined as a composition relation between objets of s1 − C(s1 , s2 ) and s2 − C(s1 , s2 ) as defined in the model M with the respect to the relations between objects defined in s1 and s2 . Example 8 If we consider the qualitative point model (see section ), s1 ((a, b, f, b), (<, =, <), and s2 = ((a, d, b, a, b, d), (<, <, <, <, =)) then Constraint Network A qualitative point STCSP network of M =< O, L, f, C, S > is a multi-valuated graph G = (N, V ) where each node n ∈ N represents an object of O and V is a set of couple (time point relation, position). Example 9 Let us consider the following temporal pattern [(a1 , a2 , a3 , a3 , a4 ), (=, <, <, =)]. Figure gives the corresponding STCSP network. s1 ◦ s2 = ((a, d, b, f, a, b, d), (<, <, <, <, <, =)) NB : we use qualitative point composition table (VK86) with the restrictions induced by the previous relations between objects in s1 and s2 . Qualitative point STCSP In temporal patterns problems, the patterns database is the main source of information shared between objects. This situation is not the case with classical TCSP. In the STCSP usually all relationships between objects are extracted from an Apriori given instance of the problem. In fact, in this kind of applications only simple relations are defined between objects. Let us consider the sequence [(a1 , . . . , an ), R] such that ri,j is the relation between ai and aj . To simplify the representation we may omit the relationship in the arcs: an oriented arc corresponds to the relation ”<”. The non oriented arc refers to the relation ”=” (see figure (b) ). Qualitative point STCSP algorithms (∀i)(∀j) ri,j ∈ {<, =, >} R is a symmetric matrix, where ri,i = {=}. If we organize the pattern [(a1 , . . . , an ), R] such that: (∀i) ri,i+1 ∈ {=, <} Then: Property 1 The definition of only the relations ri,i+1 in the matrix R for the temporal pattern [(a1 , . . . , an ), R] is sufficient to generate all the atomic relations between objects. Prove: For all i, if we know the relations between ai , ai+1 and ai+1 , ai+2 then the possible relations between ai , ai+2 will be: ri,i+2 = {=}, if ri,i+1 = {=} and ri+1,i+2 = {=}, ri,i+2 = {<} if ((ri,i+1 = {=} and ri+1,i+2 = {<}) or ri,i+1 = {<} and ri+1,i+2 = {=})). If we consider that the elements ri,i+1 (i≥0) of the matrix R are defined then assume that if the relations rj,j+1 for j ∈ i..i + n are atomic then ri,i+n is atomic. If the relations ri,i+n and ri+n,i+n+1 are atomic then using the first part of the prove the relation ri,i+n+1 exists and is atomic a. Theorem 2 The definition of the matrix R, in the case of qualitative points STCSP network, assures that the cloture is consistent and that the cloture network is also an atomic network. The representation of temporal [(a1 , . . . , an ), R] will be simplified as [(a1 , . . . , an ), (r1,2 , . . . , ri,i+1 , . . . , rn−1,n )] Figure 1: The qualitative point TSCSP network. pattern follows: The type of the selected algorithms depends on the considered application and the kind of problem to solve. Let us consider the following model: M =( qualitative point, Vilain and Kautz algebra, frequency evaluation function, threshold, S). In the addition to the problems presented in section , the solver S of our given problem contains deux classes of algorithms: generic ones, like: • checking the θ-consistency of a given pattern, • checking the θn -consistency of the network, • finding all solutions, • finding minimal set of solutions. used in most applications and specific ones related to particular situations. For specific algorithms let us consider the telecommunication network monitoring real problem. The telecommunication network equipments generate an infinite sequences of alarms2 . These alarms arrive to the supervision center. One considered problem is the detection of ”regular” sequences of alarms received by the supervisor center when a known breakdown situation is happened. 2 To simplify the problem, we define an alarm as an event in the network received by the supervisor center identified by the alarm name, equipement identifiers, and the time when the event is happening. Definition 3 A pattern p = [(a1 , . . . , an ), R] is θconsistent in the network G if there exists at least θ instances ”without redundancy” 3 of the pattern p in G. The algorithm allN extGen(G uses the point algebra composition operation to generate for each value of all variables in the STCSP, possible successors). Example 10 In the following network G = [(a, b, a, b), (< , <, <)], the pattern p = [(a, b), (<)] is 2-consistant: (a,b,a,b), and (a,b,a,b). But, if we consider the redundancy there are three instances of p in G: (a,b,a,b), (a,b,a,b), and (a,b,a,b). Example 12 Let us consider the following network: G = [(a1 , a2 , a3 , a3 , a4 ), (=, <, <, =)]. After the application of the allN extGen() algorithm, the resulting network will be: Ga = [(a1 , a2 , a3 , a3 , a4 ), (r1,2 = r3,4 = {=}, r3,3 = {< }, r2,3 = {=}, r1,3 = r1,4 = r2,4 = {<})] (see figure 12). Definition 4 A network G is θ-consistent if there is at last one θ-consistent pattern p = [(a1 , . . . , an ), R] in the network G. G is θn -consistent if there exist at last one θconsistent pattern p of the length n in G 4 . Example 11 In the following network G = [(a, b, a, b), (< , <, <)], the pattern p = [(a, b), (<)] is 2-consistent. But it is not 3-consistant. However, if we consider the redundancy there are three instances of p in G. Checking the θ-consistency algorithm A temporal pattern s is θ-consistent on the network G if there are more that θ instances of s in G such that the intersection between instances of s is empty. Figure 2: (a) Example of STCSP network (b) application of the algorithm AllNextGen() on (a). Algorithm 1 Checking the θ-consistency of a given pattern Input : The global network: G = [(a1 , . . . , am ), (ra1,2 , dots, ram−1,m )] s = [(b1 , . . . , bn ), (r1,2 , . . . , rn−1,n )] s is θ-consistent? Output : begin 1 result = 0; 2 Ga = AllNextGen(G); // for all values of variable computes the possible successors 3 currentNodeG= s1 ; // (such that aj = s1 ) starts the generation from the heat of s 4 treeSolutionsRoot = VirtualRootNode; //TreeSolution includes the tree of potential solutions 5 treeSolutions.add(virtualNode,s1 ); 6 currentSolution =s1 ; 7 currentPositionInGa = ai ; 8 while ((result 6= θ) and (currentNodeG has next Node)) do 9 for all next node nd of currentPositionGa do 10 if ((currentNodeInGa, nd)=(si , si+1 )) 11 treeSolutions.add(si , si+1 ); 12 if (i=n) 13 result++; 14 for (j=n downto 1) do 15 treeSolutions.delete(sj ); 16 if (the node (sj−1 , s1 ) exists) treeSolutions.add(virtualRoot, s1 ); 17 treeSolutions.delete(sj , a) for all a 6= s1 ; 18 if (result= θ) return (s is θ-consistent in G; // (end) 19 if (currentNodeG has not next Node) 20 return (s is θ-inconsistent in the G; // (end) EndAlgorithm 3 Each label of each arc of G appears in at most in one instance of the pattern p. 4 The pattern length is the number of objects instances in the pattern. Finding θ-solutions algorithm This algorithm generates all possible θ-solutions of the network. We propose an incremental algorithm which first computes arc θ-solutions, then path θ-solutions, then 4th θ-solutions, etc. Definition 5 A network G is arc θ−consistent if there is at less one arc with θ labels. Definition 6 A network G is path θ−consistent if there is at less one sequence s of the length 3 such that s is θ−consistent in G. Definition 7 A network G is n θ−consistent if there is at less one sequence s of the length n such that s is θ−consistent in G. The proposed finding θ−solutions algorithm uses the following properties: (1) the trivial one is if the temporal pattern s is θ−consistent then all subpatterns of s are also θ−consistent, (2) if we have all θ−consistent solutions of the length n then solutions of the length n + 1 may be matching sequences of length n sharing the same prefix subsequence of the length (n-1). The same propriety is applied in Apriori algorithm proposed in (AS95). Algorithm 2 Finding θ-solutions Input : network G Output : all θ− solutions begin 1 solutions = ∅ ; stepSolutions =0; l =1 ; 2 for all arc in G if (θ ≤ nbLabels of (si , sj , l) then 3 solutions =solutions ∪(si , sj , l); stepSolutions++; 4 while (stepSolutions 6= 0) do 5 stepSolutions =0; l++; 6 for all couple (si , sj ) such that si = ((a1 , . . . , al−1 , a), (r1,1 , . . . , r1,l−1 , ra ))and sj ((a1 , . . . , al−1 , b), (r1,1 , . . . , r1,l−1 , rb )) check the θ− consistency of the sequences s = ((a1 , . . . , al−1 , a, b), (r1,1 , . . . , r1,l−1 , ra , r)) such that r = {<, =, >} 8 for each case if s if θ−consistent then 9 solutions=solutions ∪s; 10 stepSolutions++; EndAlgorithm 7 checking the minimal θ-consistency algorithm The previous algorithm for checking the θ− consistency may be used with the following operation: after the line (9) we add solutions = solutions/{si , sj }. Both of them may be generated from the solution s. checking the θn -consistency algorithm A network G is θn -consistent if there exists a θ-consistent sequence s of the length n. It’s possible to propose a more efficient algorithm. We can also us the finding θ− solutions algorithm and stop the computation when the value of l is n. Conclusion This paper presents a new formulation of the sequential pattern problem using constraint satisfaction problems formalism. A classification of the main kinds of considered objects is presented. A brief introduction is proposed for the qualitative point STCSP, and a network representation is given. Some problems and associated resolution algorithms are proposed. This work is still in progress, and raises many questions especially how to manage and which kind of knowledge we can explore when we consider systems where the values of variables change with time. References P. Agre and D. Chapman. What are plans for? In P. Maes, ed. Designing Autonomous Agents. Elsevier, New York, 1990. James F. Allen. Maintaining knowledge about temporel intervals. Communications of the ACM, 26(11):832–843, 1983. R. Agrawal and R. Srikant. Mining sequentiel motifs. In International Conference on Data Engineering (ICDE), Taipei, Taiwan. Expanded version is available as IBM Research Report RJ9910, October 1994, 1995. N. Lavrac an S. Dzeroski. Inductive Logic Programming. Ellis Horword, New York, 1994. L. E. Baum. An inequality and associated maximization technique in statistical estimation for probabilistic functions of a markov process. In Inequalities, pages 1–8, 1972. D.J. Berndt and J. Clifford. Finding patterns in time series: A dymanic programming approach. In Advances in knowdelge Discovery and Data Mining. U. M. Fayyad, G. Pietesky-Shapiro, P.Smyth, & R.Uthurusamy, editors. MIT Press, 1996. R. Bellman. Dynamic programming. In Princeton University Press, Princeton, NJ., 1957. G. CASELA ET R.L. BERGER. Statistical Inference. Brooks/cole, Pacific Grove, CA, 1990. G. Bisson. Why and how to define a similarity measure for object based representation systems, 1995. Z. Bar-Joseph, G. Gerber, D.K. Gifford, , and T.S. Jaakkola. A new approach to analyzing gene expression time series data. In 6th Annual Int. Conf. on Research in Comp. Molecular Biology, 2002. D. Bertsekas and J. Tsitsiklis. Neuro-dynamic programming. Athena Scienti c, Belmont, MA., 1996. T. V. Duong C. Dousson. Discovering chronicles with numerical time constraints from alarm logs for monitoring dynamic systems. In IJCAI, pages 620–626, 1999. R. Dearden and Boutilier. Abstraction and approximate decision theoretic planning. Artificial Intelligence, 89:pp.219–283., 1997. C. Dousson and M. Ghallab. Suivi et reconnaissance de chroniques. revue francaise dintelligence artificielle, 8:29– 61, 1994. D.J.ZAKY. On spade:an efficient algorithm for mining frequent sequences. Machine Learning, 42:31–60, 2001. I. Guyon et al. Storage and retrieval of complex sequences in neural networks. Physical Review A,, 38:6365–6372, 1988. Y. Fujiwara, M. Asogawa, and Kenta Nakai. Prediction of mitochondrial targeting signals using hidden markov models. Genome Informatics, 1997. P. Frasconi, M. Gori, and G. Soda. Recurrent neural networks and prior knowledge for sequence processing. Knowledge Based Systems, 8(6), 1995. C.L. Giles, B.G. Horne, and T. Lin. Learning a class of large unite 435 395 456 408 state machines with a recurrent neural network. In Neural Networks 8 (9), pages 1359– 1365, 1995. Bernard Hugueney and Bernadette Bouchon-Meunier. Time-series segmentation and symbolic representation from process-monitoring to data-mining. In CI01, LNCS volume 2206, pages 118–123, 2001. F. Hoppner. Discovery of temporal patterns - learning rules about the qualitative behaviour of time series. In Proc. of the 5th European Conference on Principles and Practice of Knowledge Discovery in Databases, Lecture Notes in Artificial Intelligence 2168, Springer. Freiburg, Germany, pages 192–203, Sept 2001. F. Hoppner. Learning dependencies in multivariate time series. In Proc. of the ECAI’02 Workshop on Knowledge Discovery in (Spatio-) Temporal Data, Lyon, France, pages 25–31, 2002. T.K. Jenssen, L.M. berg, M.L. Andersson, and J. Komorowski. Methods for large-scale mining of networks of human genes. In Proceedings of the SIAM Conference on Data Mining. Chicago, IL, USA,, 2001. S.D. Johnson, D.S. Battisti, and E.S. Sarachik. Empirically derived markov models and prediction of tropical sea surface temperature anomalies. In Journal of Climate, 1999. L.R. RABINER ET B.H. JUANG. Fundamentals of Speech Recognition. Prentice Hall, Englewood Cliffs, New Jersey, 1993. D. Kleinfeld and H. Sompolinsky. Associative neural network models for the generation of temporal patterns. Biophysics Journal, 54:1039–1051, 1988. B. Kuipers. Qualitative Reasoning: Modeling and Simulation with Incomplete Knowledge. Artificial Intelligence. MIT Press, 1994. V. Kumar. Algorithms for constraints satisfaction problems: a survey. AI Magazine, 13 1::32–44, 1992. L.TERRAN and E. CARLA. Temporal sequence learning and data reduction for anomaly detection. 5th ACM Conference on Computer and Communications Security, San Francisco, California, USA, 3-5:150–158, 1998. L. Lin. Self-improving reactive agents based on reinforcement learning, planning, and teaching. Machine Learning, 8:293–321, 1992. L. Masotti M.A. Andrade, R. Casadio. Tools for automated protein annotation protein sequence analysis. In in the Genomic Era. Bologna (Italia): CLUEB, 2001. L. Meeden. An incremental approach to developping intelligent neural network controllers for robots. In Adaptive behavior, 1995. Katsuhiro Moizumi. The mobile agent planning problem. PhD thesis, Thayer School of Engineering, Dartmouth College, November 1998. B.M. OPPER and D. HAUSSLER. Worst case prediction over sequences under log loss. In The Mathematics of Information Coding, Extraction and Distribution, Springer Verlag, 1997. T. Ono, H. Hishigaki, A. Tanigami, and T. Takagi. Automated extraction of information on proteinprotein interactions from the biological literature. Bioinformatics, 17:155–161, 2001. A. Osmani and F. Lévy. A constraint-based approach to simulate fault in telecommunication networks. In (IEA/AIE-2000), 2000. A. Osmani, L. Rozé, M.O. Cordier, P. Dague, F. Lévy, and E. Mayer. Supervision of telecommunication networks. In (ECC-99), 1999. A. Osmani. Diagnostic à base de modèles pour la supervision de pannes dans un réseau de télécommunications & raisonnement sur les intervalles. PhD thesis, Laboratoire LIPN, Institut Galilée, Université de Paris XIII, 1999. A. Popescul, G.W. Flake, S. Lawrence, L. Ungar, and C.L. Giles. Clustering and identifying temporal trends in document databases. In IEEE Advances in Digital Libraries Conference, Washington, D.C., May 2000. V. Pillet. Méthodologie d’extraction automatique d’information à partir de la littérature scientifique en vue d’alimenter un nouveau système d’information. Application à la génétique moléculaire pour l’extraction d’information sur les interactions. PhD thesis, Science de l’information et de la communication, 2000. D. M. Proux. une stratégie d’extraction d’informations dans des corpus spécialisés par application de méthodes d’analyse linguistique de surface et de représentation conceptuelle des structures sémantiques. PhD thesis, faculté des sciences et techniques, université de Bourgogne, 2001. M. Riese. Model-Based Diagnosis of communication protocols. PhD thesis, Swiss Federal Institute of Technology, Lausanne, 1996. Simeon J. Simoff et Ingrid Slembek Robert P. Biuk-Aghai. Knowledge-assisted reverse engineering of virtual work processes. UPGRADE Vol. III, No. 1,, 2002. R. Sutton and A. Barto. Reinforcement Learning. MIT Press, Cambridge, MA., 1997. R. Sun and L. Gilles editors. Introduction to sequence Learning. (a completer), 2002. A. Stentz, M. Ollis, S. Scheding, H. Herman, C. Fromme, J. Pedersen, T. Hegadorn, R. McCall, J. Bares, and R. Moore. Position measurement for automated mining machinery. In Proceedings of the International Conference on Field and Service Robotics, pages 299–304, August 1999. R R. Sun and T. Peterson. Autonomous learning of sequential tasks: experiments and analyses. IEEE Transactions on Neural Networks, 6(9):1217–1234, 1998. R. Sun and T. Peterson. Multi-agent reinforcement learning: weighting and partitioning. Neural Networks, 12(45):127–153, 1999. Eddie Schwalb and Lluı́s Vila. Temporal constraints: A survey. Constraints: An International Journal, 3(2– 3):129–149, 1998. (ed.) S. Wermter et al. Connectionist and Statistical Approaches to Natural Language Processing. Springer, Heidelberg, Germany, 1996. T. Tesauro. On practical issues in temporal difference learning. Machine Learning, 8:257–277, 1992. E. Tsang. Foundations of constraint satisfaction. Academic press, Essex, 1993. S. Tversky. Features of similarity. Psychological Review, 84:327–352, 1977. M. Vilain and H. Kautz. Constraint propagation algorithms for temporal reasoning. pages 377–382, 1986. M. Vilain, H. Kautz, and P. Van Beek. Constraint propagation algorithms for temporal reasoning: A revised report. In D. S. Weld and J. de Kleer, editors, Readings in Qualitative Reasoning about Physical Systems, pages 373–381. Kaufmann, 1990. Robert A. Wilson and (ed.) Franck C. Keil. The MIT Encyclopedia of the Cognitive Sciences. MIT Press, 1999.