VERAP: VERification Approchée de systèmes Probabilistes

36
1 VERAP: VERification Approchée de systèmes Probabilistes Michel de Rougemont Université Paris II & LRI http://www.lri.fr/~mdr/verap/

description

VERAP: VERification Approchée de systèmes Probabilistes. Michel de Rougemont Université Paris II & LRI http://www.lri.fr/~mdr/verap/. Equipes de Recherche. Université Paris-Sud Algorithmes et Complexité F. Magniez M. de Rougemont M. Santha M. Tracol (thésard depuis 2007) - PowerPoint PPT Presentation

Transcript of VERAP: VERification Approchée de systèmes Probabilistes

Page 1: VERAP:  VERification Approchée de systèmes Probabilistes

1

VERAP: VERification Approchée de systèmes Probabilistes

Michel de Rougemont

Université Paris II & LRI

http://www.lri.fr/~mdr/verap/

Page 2: VERAP:  VERification Approchée de systèmes Probabilistes

1. Université Paris-Sud• Algorithmes et Complexité

• F. Magniez• M. de Rougemont• M. Santha• M. Tracol (thésard depuis 2007)• 2 Nouveaux thésards en 2009: X. Zeitoun et C. Konrad

• Test formel/Parallélisme• M.C. Gaudel• T. Hérault• S. Peyronnet• F. Zaidi

2. Université Paris VII: Logique mathématique• A. Durand• R. Lassaigne

Equipes de Recherche

Page 3: VERAP:  VERification Approchée de systèmes Probabilistes

3

Sujets

Systèmes probabilistes:– Chaines de Markov étiquetées– MDP: Markov Decision Processes– Réseaux de capteurs

Vérification approchée:– Test de propriété – Black-Box Checking– Conformance Testing– MC probabiliste

Page 4: VERAP:  VERification Approchée de systèmes Probabilistes

4

http://www.lri.fr/~mdr/verap/

Page 5: VERAP:  VERification Approchée de systèmes Probabilistes

5

I

I

III

I

I

II

Page 6: VERAP:  VERification Approchée de systèmes Probabilistes

6

Tâches et Fonctionnement de Verap

1. AD: Approximate Distance.

2. AVP: Approximate Verification of a Property.

3. EPE: Estimation of the Probability by approximate Enumeration.

4. ABCT: Approximate Black-Box and Conformance Testing.

5. ST: Streaming Testers.

Fonctionnement:• Rdv toutes les 2 semaines, • Workshop tous les trimestres.

Page 7: VERAP:  VERification Approchée de systèmes Probabilistes

7

Plan

1. AD et AVP: Approximate Verification of a Property.

– Système Markovien: approximation de la probabilité de satisfaire une formule,

– MDP (non déterminisme et probabilités): approximation sur les traces.

– Réseaux de capteurs: représentation compacte (démo)

2. EPE et ABCT: Approximate Black-Box and Conformance Testing.

3. ST: Streaming Testers.

Page 8: VERAP:  VERification Approchée de systèmes Probabilistes

8

I. Chaines de Markov et MDPs [AVP]

Vérifier: Pr[Après chaque a il y a un b]>0.9 ? Pour toute stratégie,Pr[Densité de a >0.3 ]=1? Pr[Après chaque a il y a un b]>0.9 ?

Pr[Densité de a >0.3 ]=1?

t u

a a

: .5b

: .5b b

s

t

v

u

a

a

: .5b

: .5b b

cs v

a

σ(t)=b, σ(v)=b

Page 9: VERAP:  VERification Approchée de systèmes Probabilistes

1a. Vérification probabiliste classique

VERAP 9

Système(représentation

Succincte)

Modèle

Propriétéou suited’actions

Formuleou trace

ModelChecker

probabiliste

Probap

Input:• chaîne de Markov étiquetée (avec actions)• formule temporelle ou trace

Output:• probabilité de satisfaction de la formule ou de la trace

Complexité: polynomiale dans la taille du modèle (explosion combinatoire)

Page 10: VERAP:  VERification Approchée de systèmes Probabilistes

Schéma probabiliste d’approximation

VERAP 10

Générateur aléatoire de

chemins

Schéma d’approximation A

Formule ou trace

Paramètres e,∂

Pr[(p-e) ≤ A ≤ (p+e)] ≥ 1 - ∂e : paramètre d’approximation (erreur absolue)∂ : paramètre de confiance (algorithme probabiliste)Le schéma est pleinement polynomial si le temps de calcul est poly(|input|, 1/e, log (1/∂))Le générateur aléatoire n’utilise qu’une représentation succincte du système

Page 11: VERAP:  VERification Approchée de systèmes Probabilistes

Approximate Probabilistic Model Checker Richard Lassaigne and Sylvain Peyronnet (2008) Probabilistic verification and approximation.

Annals of Pure and Applied Logic, 152(1-3):122-131.

Méthode:• génération aléatoire de chemins de longueur k à partir d’une représentation succincte• estimation de type Monte-Carlo avec borne polynomiale (Chernoff) sur la taille de

l’échantillon

Résultats:• approximation de la probabilité de satisfaction de propriétés bornées en temps

polynomial• approximation de la probabilité de satisfaction de propriétés non bornées

(accessibilité, sûreté) en espace logarithmique• approximation de la probabilité d’une trace d’exécution en temps polynomial

VERAP 11

Page 12: VERAP:  VERification Approchée de systèmes Probabilistes

Distances entre Systèmes probabilistes [AD]

Métriques de bisimulation:• permettent de mesurer le degré d’équivalence entre deux modèles probabilistes

• l’équivalence considérée est la bisimulation sur les états• définies par J. Desharnais et al.• obtenues par point fixe à partir de la métrique de Kantorovich

Métriques de traces• Equivalence exacte de Tzeng est polynomiale• Equivalence approchée est difficile

đ-distance• Statistiques de processus ergodiques

• Lien avec l’approximation sur les mots

VERAP 12

Page 13: VERAP:  VERification Approchée de systèmes Probabilistes

13

1b. Markov Decision Processes [AVP] transitions non détermistes et probabilistes :

S : Etats :s,t,u,v

Σ: actions : a,b,c

P(u |t,b)=0.5

Stratégie σ résoud le non determinisme.

Exemple: σ(t)=b, σ(v)=b

Exécution: s,a,t,b,u,a,v

Trace: aba

s

t

v

u

a

a

a

: .5b

: .5b b

c

Page 14: VERAP:  VERification Approchée de systèmes Probabilistes

14

Stratégies σ

SD: σ(t)=b, σ(v)=c

Trace 1: abac ab abac ab …….

Trace 2: ab abac ab abac…….

s

t

v

u

a

a

: .5b

: .5b b

c

HR: dépendant de l’historique et

Randomisées,MR(k): Memoire k, Randomisées

SD: Stationaires Déterministes

MDP communiquant

a

1

.5

. ( ) .33

.17

x u stat trace

Page 15: VERAP:  VERification Approchée de systèmes Probabilistes

15

Résultat classique: k=1

Fréquence Etat-action :

Pour une classe K de stratégies:

Theorem (Puterman, Derman, Tsitsiklis )

Pour un MDP communiquant,

1[ . ( )]

lim si elle existe

T

x E u stat Trace

x x

KH x

H ( )

HR SDH Convex Hull H

Page 16: VERAP:  VERification Approchée de systèmes Probabilistes

16

Statistiques uniformes: k-gram

W=001010101110 longueur n,

u.stat: densité des sous-mots de longueur k, n-k+1 shingles

1

2

# nombre de "00...0"

# nombre de "00...1"

.. ..

n

n

2

.. ..

# nombre de "11...1"

kn

1

412, . ( )

411

2

k u stat W

1Remarque: . ( ) . ( ') ( , ') /

( , ') est la distance d'Edition avec déplacements

u stat W u stat W dist W W n

dist W W

1k

1...

1( ) avec échantillons

ii N

Y w X NN

Page 17: VERAP:  VERification Approchée de systèmes Probabilistes

17

Generalisation aux statistiques d’ordre k Theorem: Pour un MDP communiquant:

( )

[ . ( )]

H ( )

Kk

HR MR k

H x x E u stat Trace

H Convex Hull H

Hu.statk

1: . ( ) . ( )

n n k k nB w r u stat r u stat w

Page 18: VERAP:  VERification Approchée de systèmes Probabilistes

18

Existence d’une stratégie Input: MDP, wn , ε, λ

Theorem: Existence d’une stratégie est PESPACE dure, mais testable.

(M. de Rougemont and M. Tracol (2009) Statistical Analysis for Probabilistic Processes. In IEEE Logic In Computer Science. LICS 2009)

Tester: Sample wn :

Estimate the dist to H (linear program)

Decide: Pr[ n nB w

H

Y(w)

( ) ( )nY w ustat w

Page 19: VERAP:  VERification Approchée de systèmes Probabilistes

19

Soit F une propriété sur une classe K de structures U:

Un ε -testeur pour F est un algorithme probabiliste A tel que:• Si U |= F, A accepts• If U is ε far from F, A rejects with high probability

F is testable if there is a probabilistic algorithm A such that

• A is an ε -tester for all ε • Time(A) is independent of n=size(U).

Robust characterizations of polynomials, R. Rubinfeld, M. Sudan, 1994Property Testing and its connection to Learning and Approximation. O. Goldreich, S.

Goldwasser, D. Ron, 1996.

Tester usually implies a linear time corrector. (ε1, ε2)-Tolerant Tester

Testabilité d’une propriété

Page 20: VERAP:  VERification Approchée de systèmes Probabilistes

20

MDPs généraux

Union de polytopes: chaque H peut-être défini par un programme linéaire.

Valeur seuil pour chaque composante.

H1: .4

H2: .6

Page 21: VERAP:  VERification Approchée de systèmes Probabilistes

21

Equivalence de MDPs

Decider si les Polytopes sont proches avec des seuils proches.

Tester d’Equivalence : discrétiser les polytopes sur une grille de rayon ε. Verifier l’inclusion mutuelle.

Distance entre deux MDPs: distance géométrique.

1H

2H

Page 22: VERAP:  VERification Approchée de systèmes Probabilistes

22

II. Approximate Black-Box and Conformance Testing

ABCT: Approximate Black-Box and Conformance Testing.• Identifier une chaine de Markov, à partir d’un run ou de

statistiques?• Identifier un MDP?

P IUT

Black Box Checking

Conformance Testing

Model

Model Checking

Page 23: VERAP:  VERification Approchée de systèmes Probabilistes

23

Conformance Testing

Tester un critère de couverture: Couvrir toutes les arêtes d’un graphe donné de manière succincte (programme C) ?

EPE: Estimation of the Probability by approximate EnumerationPeut-on énumérer 99% des solutions avec un délai constant?

Page 24: VERAP:  VERification Approchée de systèmes Probabilistes

Random Walks in control graphs

• A random walk in the state space of a “model” (in a control graph, in a transition system etc) is

a sequence of states s0, s1, …, sn such that si is chosen uniformly at random among the successors of the state si-1,

• It is easy to implement and it only requires local knowledge of the graph.

• Numerous applications in– Testing (protocols [Mihail et Papadimitriou 1994], etc)– Simulation (Monte-Carlo, etc)– Model-checking ([Grosu 2004])

• In some variants, the choice among the successors may be biased.

Marie-Claude Gaudel, Alain Denise, Sandrine-Dominique Gouraud, Richard Lassaigne, Johan Oudinet and Sylvain Peyronnet (2008) Coverage-biased Random Exploration of Models. Electronic Notes in Theoretical Computer Science, 220(1):3-14.

Page 25: VERAP:  VERification Approchée de systèmes Probabilistes

Drawback of random walks

••

••

a

b

c

d

ef

Classical random walks, length 3:Pr(a; c; d) = 0.5 0.25 0.25 = 0.03125Pr(b; e; f) = 0.5Uniform random sampling of traces, length 3:Pr(a; c; d) = Pr(b; e; f) = 0.1

The resulting coverage is dependent on the topology…

Page 26: VERAP:  VERification Approchée de systèmes Probabilistes

Counting n-paths in a graph

Given any vertex v, let lv(k) be the number of paths of length k that start from v

• we are on vertex v with m successors v1, v2, . . . , vm

• condition for uniform path exploration: choose vi with probability lvi (k-1)/lv(k)

•v

•v ...

Page 27: VERAP:  VERification Approchée de systèmes Probabilistes

Counting labelled combinatorial structures

• Decomposable combinatorial structures– Atoms– Constructions : +, , SEQ, PSET, MSET, CYC– Cardinality constraints: SEQ≤3 , etc

• Let a combinatorial class C, which is decomposable,

Explicit formula for |Cn| => Uniform drawing in Cn

– Enumeration based on generating functions

• Theorem [Mainly, Flajolet & al., 1994] :

The counts {Cj|j= 0,…,n} can be computed in O(n 1+) arithmetic operations. Drawing UAR an element of size n is O(n.log n) in the worst case (and O(n) in our simple case)

Page 28: VERAP:  VERification Approchée de systèmes Probabilistes

Uniform generation of paths of length n

Given n• lv(0) = 1• for k s.t. n ≥ k > 0,

lv (k) lv '(k 1)v v'

••

••

a

b

c

d

ef

• Preprocessing:Computation of the lv(k), for all k ≤ n is linear in n but with big numbers… • Drawing is linear in n too.

• Space requirement: n |G|

Page 29: VERAP:  VERification Approchée de systèmes Probabilistes

Main results

• Experimental assessment of this method and of its limits (up to ± 10000 states, length ± 10000)

• Uniform generation of paths in very large models:– Given a model described as a set of concurrent

LTS/FSM/IOTS it is possible to get (a very good approximation of) the number of traces => global uniform random walks,

• without building the global model• using local uniform drawing of paths in the component LTS

• Combination of weaker coverage criteria (transitions, states, …) and random walks– Coverage-biased random walks, “randomised

coverage satisfaction”

Page 30: VERAP:  VERification Approchée de systèmes Probabilistes

Perspectives• Counting paths makes it possible to combine random

exploration and coverage criteria (testing, model-checking)

• Significant results for drawing paths UAR in concurrent models– work remains to be done on: – partial synchronisations– typology of concurrent architectures and synchronisation patterns– partial order reduction

• First results on “coverage satisfaction” assessment and improvement for randomised model-based testing

Page 31: VERAP:  VERification Approchée de systèmes Probabilistes

31

III. Streaming Testers

• Streaming vs Property testing

• Validity for XML streams• Checking wellformedness

– k passes implique espace in n1/k+1: optimal (article en préparation)

Property Tester Streaming Tester

Input access Random Sequential

Constraint # of input access • Space (memory)• # of passes

Input length Known Unknown

Page 32: VERAP:  VERification Approchée de systèmes Probabilistes

32

Testeurs de Flux XMLValidité Approchée de Flux XMLHuang Cheng, Li Jun and Michel de Rougemont (2008) Approximate validity of XML Streaming Data. In

9th International Conference on Web-age Information Management.

• Maintenir la décomposition de Rabin d’un arbre ordonné de degré arbitraire• Généralisation de k-grams

Page 33: VERAP:  VERification Approchée de systèmes Probabilistes

33

Démo AVP http://www.lri.fr/~mdr/verap/

Page 34: VERAP:  VERification Approchée de systèmes Probabilistes

34

Conclusion

1. AVP,AD: Testeurs de systèmes probabilistes – Approximate Probabilistic Membership– Approximate Equivalence

2. Black-Box Checking and Approximate Enumeration

3. Streamings Testers

VERAP: http://www.lri.fr/~mdr/verap/

Page 35: VERAP:  VERification Approchée de systèmes Probabilistes

Equivalence de trace

Chaîne de Markov étiquetée: M=(S, A , p0 , P)

• S espace des états, A ensemble d’actions, p0 distribution de probabilités initiale

• P: SxAxS → [0,1] fonction de transition probabiliste

Distribution sur les traces:

• Si σ = (s0,a1,s1,…,an,sn) est un chemin fini, alors μ(σ) = p0(s0) . ∏i=1n P(si-1 ,ai, si)

• La distribution sur les traces PM : A* → [0,1] est définie par PM (x) = ∑ { trace(σ)=x} μ(σ)

• Pour chaque n, la restriction de PM à An est une distribution de probabilités

Equivalence de trace:• 2 chaînes de Markov M et N avec ensemble d’actions A sont équivalentes

si pour toute trace x, PM(x) = PN(x)

• l’équivalence de 2 chaînes de Markov étiquetées peut être décidée en temps polynomial

(conséquence de l’algorithme de Tzeng sur les automates probabilistes)VERAP 35

Page 36: VERAP:  VERification Approchée de systèmes Probabilistes

đ-distance

Métrique sur la classe des processus ergodiques stationnaires:• définie par B. Ornstein et D. Weiss• candidate pour distinguer 2 processus ergodiques à partir de l’observation de

chemins finis échantillonnés pour chacun des processus• l’entropie est continue relativement à cette métrique

Propriété fondamentale des processus ergodiques:

la distribution théorique des suites de longueur k peut être déterminée par glissement d’une fenêtre de longueur k et par comptage des fréquences relatives le long d’un chemin échantillonné

Problème (travail en cours):

approximer cette distance pour les chaînes de Markov

VERAP 36