Chaînes de Markov et Génération Aléatoire Aléa 2006 P. Duchon LaBRI Aléa 06 - Chaînes de Markov – p. 1/3 Génération aléatoire C (Cn ) classe (finie) d’objets discrets Génération aléatoire uniforme: produire un c ∈ C aléatoire uniforme. P(C = c) = 1/#C Aléa 06 - Chaînes de Markov – p. 2/3 Génération aléatoire C (Cn ) classe (finie) d’objets discrets Génération aléatoire uniforme: produire un c ∈ C aléatoire uniforme. P(C = c) = 1/#C Variante: p : C → R+ , et on veut un objet “avec probabilité proportionnelle à p(c)” p(c) P(C = c) = P 0) p(c 0 c ∈C Aléa 06 - Chaînes de Markov – p. 2/3 Génération aléatoire C (Cn ) classe (finie) d’objets discrets Génération aléatoire uniforme: produire un c ∈ C aléatoire uniforme. P(C = c) = 1/#C Variante: p : C → R+ , et on veut un objet “avec probabilité proportionnelle à p(c)” p(c) P(C = c) = P 0) p(c 0 c ∈C Méthodes “combinatoires”: décomposition et comptage des objets à engendrer Aléa 06 - Chaînes de Markov – p. 2/3 Génération aléatoire C (Cn ) classe (finie) d’objets discrets Génération aléatoire uniforme: produire un c ∈ C aléatoire uniforme. P(C = c) = 1/#C Variante: p : C → R+ , et on veut un objet “avec probabilité proportionnelle à p(c)” p(c) P(C = c) = P 0) p(c 0 c ∈C Méthodes “combinatoires”: décomposition et comptage des objets à engendrer Méthodes “Markov”: “on part de n’importe lequel des objets, et on mélange bien” Aléa 06 - Chaînes de Markov – p. 2/3 Chaîne de Markov V ensemble fini ou dénombrable Définition: Une chaîne de Markov (homogène) à valeurs dans V est une suite (Xn )n≥0 de variables aléatoires à valeurs dans V , telle qu’il existe une fonction f : V × V → [0, 1], pour laquelle on ait, pour tous n, x0 , . . . , xn , y , P(X0 = x0 , . . . , Xn = xn , Xn+1 = y) = P(X0 = x0 , . . . , Xn = xn )f (xn , y) Aléa 06 - Chaînes de Markov – p. 3/3 Chaîne de Markov V ensemble fini ou dénombrable Définition: Une chaîne de Markov (homogène) à valeurs dans V est une suite (Xn )n≥0 de variables aléatoires à valeurs dans V , telle qu’il existe une fonction f : V × V → [0, 1], pour laquelle on ait, pour tous n, x0 , . . . , xn , y , P(Xn+1 = y|X0 = x0 , . . . , Xn = xn ) = f (xn , y) = P(Xn+1 = y|Xn = xn ) Aléa 06 - Chaînes de Markov – p. 3/3 Chaîne de Markov V ensemble fini ou dénombrable Définition: Une chaîne de Markov (homogène) à valeurs dans V est une suite (Xn )n≥0 de variables aléatoires à valeurs dans V , telle qu’il existe une fonction f : V × V → [0, 1], pour laquelle on ait, pour tous n, x0 , . . . , xn , y , P(Xn+1 = y|X0 = x0 , . . . , Xn = xn ) = f (xn , y) = P(Xn+1 = y|Xn = xn ) Idée: la connaissance de la trajectoire (X0 , . . . , Xn ) n’est pas utile pour prédire Xn+1 : connaître la trajectoire n’apporte pas plus d’information que de connaître la seule valeur de Xn . Aléa 06 - Chaînes de Markov – p. 3/3 Chaîne de Markov V ensemble fini ou dénombrable Définition: Une chaîne de Markov (homogène) à valeurs dans V est une suite (Xn )n≥0 de variables aléatoires à valeurs dans V , telle qu’il existe une fonction f : V × V → [0, 1], pour laquelle on ait, pour tous n, x0 , . . . , xn , y , P(Xn+1 = y|X0 = x0 , . . . , Xn = xn ) = f (xn , y) = P(Xn+1 = y|Xn = xn ) Simulation: si on a déjà simulé n pas de la chaîne, simuler le n + 1-ème pas revient à choisir Xn+1 selon la loi (f (Xn , .)); on peut oublier les états précédents, la “règle” ne dépend que de l’état actuel. Aléa 06 - Chaînes de Markov – p. 3/3 Monsieur Jourdain. . . En fait, une chaîne de Markov n’est rien d’autre qu’une marche aléatoire (biaisée, en général) sur un graphe orienté (pondéré, à poids positifs) simple (avec boucles), où les poids des arcs sont les probabilités de transition (d’où la condition : la somme des poids des arcs sortant d’un sommet doit être 1). Aléa 06 - Chaînes de Markov – p. 4/3 Matrice de transition X une chaîne: sa matrice de transition est M : Mxy = f (x, y) = P(Xt+1 = y|Xt = x) C’est la matrice d’adjacence (pondérée) du graphe! Itération/Puissances: M n a pour coefficients (1) (n) Mxy = P(Xt+n = y|Xt = x) (somme des poids des chemins de x à y , de longueur n) Si la loi de probabilités de X0 est π = (πx )x∈V , la loi de Xn n’est autre que π (n) = π.M n (combinaison linéaire de (1)) Aléa 06 - Chaînes de Markov – p. 5/3 Choix d’une chaîne de Markov Pour définir une chaîne de Markov X, on doit normalement définir la distribution au temps 0 (loi de X0 ) la matrice (les lois) de transition. Dans la pratique, beaucoup de propriétés ne dépendent pas (ou peu) de la loi initiale, mais essentiellement des lois de transition; on parle de la chaîne X partant de u ou la chaîne X partant de v , si elles ont la même matrice de transition. Aléa 06 - Chaînes de Markov – p. 6/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . C’est équivalent à: il existe un n tel que P(Xn = v|X0 = u) > 0, c’est-à-dire qu’il existe un chemin de u à v dans le graphe Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . (accessibilité dans le graphe) Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . (accessibilité dans le graphe) Chaîne irréductible: La chaîne est dite irréductible si chaque état est accessible à partir de chaque autre état. Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . (accessibilité dans le graphe) Chaîne irréductible: La chaîne est dite irréductible si chaque état est accessible à partir de chaque autre état. (graphe fortement connexe) Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . (accessibilité dans le graphe) Chaîne irréductible: La chaîne est dite irréductible si chaque état est accessible à partir de chaque autre état. (graphe fortement connexe) Apériodicité: La chaîne est dite apériodique si, pour tout u, pgcd ({n : P(Xn = u|X0 = u) > 0}) = 1 Aléa 06 - Chaînes de Markov – p. 7/3 Ergodicité Accessibilité: Un état v est accessible à partir d’un état u si la chaîne, partant de u, a probabilité strictement positive de passer par v . (accessibilité dans le graphe) Chaîne irréductible: La chaîne est dite irréductible si chaque état est accessible à partir de chaque autre état. (graphe fortement connexe) Apériodicité: La chaîne est dite apériodique si, pour tout u, pgcd ({n : P(Xn = u|X0 = u) > 0}) = 1 (le pgcd des longueurs de cycles est 1) Aléa 06 - Chaînes de Markov – p. 7/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Si oui, est-elle unique ? Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Si oui, est-elle unique ? A-t-on alors automatiquement limn P(Xn = u) = πu ? Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Oui si V fini Si oui, est-elle unique ? A-t-on alors automatiquement limn P(Xn = u) = πu ? Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Oui si V fini Si oui, est-elle unique ? Oui si irréductible A-t-on alors automatiquement limn P(Xn = u) = πu ? Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Oui si V fini Si oui, est-elle unique ? Oui si irréductible A-t-on alors automatiquement limn P(Xn = u) = πu ? Oui si apériodique Aléa 06 - Chaînes de Markov – p. 8/3 Lois stationnaires Une loi de probabilités π sur V est stationnaire pour une chaîne de Markov (pour sa matrice de transition) si, lorsque l’état au temps 0 est distribué selon π , l’état au temps 1 est également distribué selon π . En d’autres termes, π.M = π , et on a donc π.M n = π (la chaîne partant de la distribution π est stationnaire). Existe-t-il une loi stationnaire ? Oui si V fini Si oui, est-elle unique ? Oui si irréductible A-t-on alors automatiquement limn P(Xn = u) = πu ? Oui si apériodique (C’est la dernière question qui est intéressante pour la génération aléatoire) Aléa 06 - Chaînes de Markov – p. 8/3 Si V est infini. . . 1 1/3 2/3 1/9 8/9 26/27 1/27 1/81 80/81 (Probabilité strictement positive de ne jamais revenir en arrière) Aléa 06 - Chaînes de Markov – p. 9/3 Si non irréductible. . . Si la chaîne entre dans une composante puits, elle n’en sortira plus A priori, une distribution stationnaire par composante puits Aléa 06 - Chaînes de Markov – p. 10/3 Si périodique. . . Si au temps 0 on part d’un sommet donné, aux temps impairs il sera impossible d’être en ce même sommet. lim P(X2n+1 = u|X0 = u) = 0 n lim P(X2n = u|X0 = u) > 0 n Aléa 06 - Chaînes de Markov – p. 11/3 Théorème ergodique Si une chaîne (à espace d’états fini) est irréductible et apériodique, alors quelle que soit la distribution de X0 , toutes les probabilités de présence tendent vers l’unique loi stationnaire. Cette loi accorde un poids strictement positif à chaque état. Aléa 06 - Chaînes de Markov – p. 12/3 Théorème ergodique Si une chaîne (à espace d’états fini) est irréductible et apériodique, alors quelle que soit la distribution de X0 , toutes les probabilités de présence tendent vers l’unique loi stationnaire. Cette loi accorde un poids strictement positif à chaque état. De plus, avec probabilité 1, pour tout état v , la proportion des instants entre 0 et N où la chaîne est dans l’état v tend vers π(v) (pour presque toutes les trajectoires, la moyenne dans le temps est identique à la moyenne dans l’espace). Aléa 06 - Chaînes de Markov – p. 12/3 Remarque sur l’apériodicité La périodicité est un faux problème: si M est (la matrice de transition d’)une chaîne irréductible, M 0 = (I + M )/2 a la même distribution stationnaire, et est irréductible (donc ergodique). Aléa 06 - Chaînes de Markov – p. 13/3 Remarque sur l’apériodicité La périodicité est un faux problème: si M est (la matrice de transition d’)une chaîne irréductible, M 0 = (I + M )/2 a la même distribution stationnaire, et est irréductible (donc ergodique). Simuler M 0 pendant N pas, revient exactement à simuler M pendant un nombre de pas aléatoire (indépendant de la trajectoire), de loi Bin(N, 1/2). Aléa 06 - Chaînes de Markov – p. 13/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? Ça veut dire quoi, “presque égale”? Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? Ça veut dire quoi, “presque égale”? C’est quoi, “assez grand”? Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? (souvent facile) Ça veut dire quoi, “presque égale”? C’est quoi, “assez grand”? Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? (souvent facile) Ça veut dire quoi, “presque égale”? (distance) C’est quoi, “assez grand”? Aléa 06 - Chaînes de Markov – p. 14/3 Génération aléatoire On peut envisager de transformer une chaîne de Markov ergodique en générateur aléatoire d’états : si on dispose d’une chaîne ergodique, dont la distribution limite (stationnaire) est π (par exemple, uniforme), et que l’on sait simuler, on obtient un générateur aléatoire suivant une loi “presque égale” à π en partant d’un état X0 quelconque, en simulant la chaîne pendant un temps N “assez grand”, et en retournant XN . Comment détermine-t-on π ? (souvent facile) Ça veut dire quoi, “presque égale”? (distance) C’est quoi, “assez grand”? (temps de mélange) Aléa 06 - Chaînes de Markov – p. 14/3 Exemple: Marche aléatoire sur un cycle Aléa 06 - Chaînes de Markov – p. 15/3 Exemple: Marche aléatoire sur un cycle Chaîne finie, graphe non orienté : une seule distribution stationnaire, qui ne peut être qu’uniforme par symétries. Aléa 06 - Chaînes de Markov – p. 15/3 Exemple: Marche aléatoire sur un cycle Chaîne finie, graphe non orienté : une seule distribution stationnaire, qui ne peut être qu’uniforme par symétries. Si n est pair : la chaîne est périodique de période 2, et il ne peut pas y avoir de convergence vers l’uniforme pour la chaîne partant d’un sommet donné. Aléa 06 - Chaînes de Markov – p. 15/3 Exemple: Marche aléatoire sur un cycle Chaîne finie, graphe non orienté : une seule distribution stationnaire, qui ne peut être qu’uniforme par symétries. Si n est pair : la chaîne est périodique de période 2, et il ne peut pas y avoir de convergence vers l’uniforme pour la chaîne partant d’un sommet donné. Si n est impair : la chaîne est apériodique, il y a bien convergence vers l’uniforme; Aléa 06 - Chaînes de Markov – p. 15/3 Exemple: Marche aléatoire sur un cycle Chaîne finie, graphe non orienté : une seule distribution stationnaire, qui ne peut être qu’uniforme par symétries. Si n est pair : la chaîne est périodique de période 2, et il ne peut pas y avoir de convergence vers l’uniforme pour la chaîne partant d’un sommet donné. Si n est impair : la chaîne est apériodique, il y a bien convergence vers l’uniforme; intuitivement, on se doute que, si n est grand, il va falloir “longtemps” pour que la chaîne “oublie” la parité de son sommet de départ. Aléa 06 - Chaînes de Markov – p. 15/3 Recherche des lois limites Problème : étant donnée une chaîne de Markov (qu’on peut supposer ergodique), identifier sa loi stationnaire. Aléa 06 - Chaînes de Markov – p. 16/3 Recherche des lois limites Problème : étant donnée une chaîne de Markov (qu’on peut supposer ergodique), identifier sa loi stationnaire. C’est naturellement l’unique vecteur propre gauche (à coefficients positifs, normalisé) de la matrice des probabilités de transition, pour la valeur propre 1. Aléa 06 - Chaînes de Markov – p. 16/3 Recherche des lois limites Problème : étant donnée une chaîne de Markov (qu’on peut supposer ergodique), identifier sa loi stationnaire. C’est naturellement l’unique vecteur propre gauche (à coefficients positifs, normalisé) de la matrice des probabilités de transition, pour la valeur propre 1. Condition d’équilibre : π = (πu )u∈V est la loi stationnaire si et seulement si, pour tout v , X π(u)puv = π(v) u Aléa 06 - Chaînes de Markov – p. 16/3 Recherche des lois limites Problème : étant donnée une chaîne de Markov (qu’on peut supposer ergodique), identifier sa loi stationnaire. C’est naturellement l’unique vecteur propre gauche (à coefficients positifs, normalisé) de la matrice des probabilités de transition, pour la valeur propre 1. Condition d’équilibre : π = (πu )u∈V est la loi stationnaire si et seulement si, pour tout v , X π(u)puv = π(v) u En particulier, si (et seulement si) le graphe (non orienté) est régulier, la marche aléatoire non biaisée laisse invariante la distribution uniforme. Aléa 06 - Chaînes de Markov – p. 16/3 Recherche des lois limites Problème : étant donnée une chaîne de Markov (qu’on peut supposer ergodique), identifier sa loi stationnaire. C’est naturellement l’unique vecteur propre gauche (à coefficients positifs, normalisé) de la matrice des probabilités de transition, pour la valeur propre 1. Condition d’équilibre : π = (πu )u∈V est la loi stationnaire si et seulement si, pour tout v , X π(u)puv = π(v) u Dans le cas d’un graphe orienté, la condition devient que les degrés entrants soient uniformes. Aléa 06 - Chaînes de Markov – p. 16/3 Lois limites: le cas réversible Proposition : si π est une distribution de probabilités qui vérifie, pour tout couple de sommets (u, v), la condition d’équilibre local (detailed balance condition) : π(u)pu,v = π(v)pv,u , alors π est une distribution stationnaire. Aléa 06 - Chaînes de Markov – p. 17/3 Lois limites: le cas réversible Proposition : si π est une distribution de probabilités qui vérifie, pour tout couple de sommets (u, v), la condition d’équilibre local (detailed balance condition) : π(u)pu,v = π(v)pv,u , alors π est une distribution stationnaire. Preuve : en sommant sur u, le membre droit devient π(v). Aléa 06 - Chaînes de Markov – p. 17/3 Lois limites: le cas réversible Proposition : si π est une distribution de probabilités qui vérifie, pour tout couple de sommets (u, v), la condition d’équilibre local (detailed balance condition) : π(u)pu,v = π(v)pv,u , alors π est une distribution stationnaire. Preuve : en sommant sur u, le membre droit devient π(v). (chaîne réversible - time-reversible) Aléa 06 - Chaînes de Markov – p. 17/3 Lois limites: le cas réversible Proposition : si π est une distribution de probabilités qui vérifie, pour tout couple de sommets (u, v), la condition d’équilibre local (detailed balance condition) : π(u)pu,v = π(v)pv,u , alors π est une distribution stationnaire. Preuve : en sommant sur u, le membre droit devient π(v). (chaîne réversible - time-reversible) Conséquence : si la matrice des probabilités de transition est symétrique, la distribution uniforme est stationnaire. Aléa 06 - Chaînes de Markov – p. 17/3 Lois limites: le cas réversible Proposition : si π est une distribution de probabilités qui vérifie, pour tout couple de sommets (u, v), la condition d’équilibre local (detailed balance condition) : π(u)pu,v = π(v)pv,u , alors π est une distribution stationnaire. Preuve : en sommant sur u, le membre droit devient π(v). (chaîne réversible - time-reversible) En particulier, sur un graphe (connexe) non régulier de degré maximum ∆, on obtient une marche aléatoire dont la distribution stationnaire est uniforme en posant puv = 1/∆ si u et v sont voisins puu = 1 − deg(u)/∆ Aléa 06 - Chaînes de Markov – p. 17/3 Choix d’une chaîne Étant donné un ensemble fini V , créer une chaîne de Markov d’ensemble d’états V dont la distribution converge vers la distribution uniforme, c’est “facile” : Aléa 06 - Chaînes de Markov – p. 18/3 Choix d’une chaîne Étant donné un ensemble fini V , créer une chaîne de Markov d’ensemble d’états V dont la distribution converge vers la distribution uniforme, c’est “facile” : définir un graphe non orienté, connexe, dont les sommets sont les éléments de V ; Aléa 06 - Chaînes de Markov – p. 18/3 Choix d’une chaîne Étant donné un ensemble fini V , créer une chaîne de Markov d’ensemble d’états V dont la distribution converge vers la distribution uniforme, c’est “facile” : définir un graphe non orienté, connexe, dont les sommets sont les éléments de V ; choisir arbitrairement des probabilités de transition symétriques pu,v = pv,u , strictement positives, le long des arêtes; Aléa 06 - Chaînes de Markov – p. 18/3 Choix d’une chaîne Étant donné un ensemble fini V , créer une chaîne de Markov d’ensemble d’états V dont la distribution converge vers la distribution uniforme, c’est “facile” : définir un graphe non orienté, connexe, dont les sommets sont les éléments de V ; choisir arbitrairement des probabilités de transition symétriques pu,v = pv,u , strictement positives, le long des arêtes; P compléter avec des boucles : pu,u = 1 − v6=u pu,v ; (il faut s’assurer que les probabilités de boucle soient positives) Aléa 06 - Chaînes de Markov – p. 18/3 Choix d’une chaîne Étant donné un ensemble fini V , créer une chaîne de Markov d’ensemble d’états V dont la distribution converge vers la distribution uniforme, c’est “facile” : définir un graphe non orienté, connexe, dont les sommets sont les éléments de V ; choisir arbitrairement des probabilités de transition symétriques pu,v = pv,u , strictement positives, le long des arêtes; P compléter avec des boucles : pu,u = 1 − v6=u pu,v ; (il faut s’assurer que les probabilités de boucle soient positives) pour peu qu’au moins un des pu,u soit strictement positif, c’est gagné, sinon il faut vérifier l’apériodicité. Aléa 06 - Chaînes de Markov – p. 18/3 Temps de mélange Pour évaluer l’écart entre deux distributions (par exemple, entre la distribution au temps n et la distribution limite), on utilise la distance de variation totale : 1X 0 0 D(π, π ) = max |π(A) − π (A)| = |π(u) − π 0 (u)| A⊂V 2 u∈V Aléa 06 - Chaînes de Markov – p. 19/3 Temps de mélange Pour évaluer l’écart entre deux distributions (par exemple, entre la distribution au temps n et la distribution limite), on utilise la distance de variation totale : 1X 0 0 D(π, π ) = max |π(A) − π (A)| = |π(u) − π 0 (u)| A⊂V 2 u∈V (t) D(pu,. , π). Pour u ∈ V et t ∈ N, on pose δu (t) = (δu (t) mesure combien la chaîne, partant de u, est encore loin de sa distribution limite au temps t.) Aléa 06 - Chaînes de Markov – p. 19/3 Temps de mélange Pour évaluer l’écart entre deux distributions (par exemple, entre la distribution au temps n et la distribution limite), on utilise la distance de variation totale : 1X 0 0 D(π, π ) = max |π(A) − π (A)| = |π(u) − π 0 (u)| A⊂V 2 u∈V Pour u ∈ V et t ∈ N, on pose δu (t) = (t) D(pu,. , π). Temps de mélange : τu () = min{t : δu (t0 ) ≤ pour tout t0 ≥ t} Aléa 06 - Chaînes de Markov – p. 19/3 Temps de mélange Pour évaluer l’écart entre deux distributions (par exemple, entre la distribution au temps n et la distribution limite), on utilise la distance de variation totale : 1X 0 0 D(π, π ) = max |π(A) − π (A)| = |π(u) − π 0 (u)| A⊂V 2 u∈V Pour u ∈ V et t ∈ N, on pose δu (t) = (t) D(pu,. , π). Temps de mélange : τu () = min{t : δu (t0 ) ≤ pour tout t0 ≥ t} (à partir de τu (), la chaîne partie de u ne sera plus jamais à distance plus grande que de π ) Aléa 06 - Chaînes de Markov – p. 19/3 Temps de mélange Pour évaluer l’écart entre deux distributions (par exemple, entre la distribution au temps n et la distribution limite), on utilise la distance de variation totale : 1X 0 0 D(π, π ) = max |π(A) − π (A)| = |π(u) − π 0 (u)| A⊂V 2 u∈V Pour u ∈ V et t ∈ N, on pose δu (t) = (t) D(pu,. , π). Temps de mélange : τu () = min{t : δu (t0 ) ≤ pour tout t0 ≥ t} Pour uniformiser les choses, on pose τ () = maxu∈V τu () (quelle que soit sa distribution de départ, à partir du temps τ () la chaîne ne sera plus jamais à distance > de π ) Aléa 06 - Chaînes de Markov – p. 19/3 Mélange rapide Typiquement, V = Vn (on définit une famille, indexée par des tailles, de chaînes sur des ensembles de plus en plus grands). On dit que cette famille de chaînes de Markov est rapidement mélangeante, si τ (n) () ne croît pas trop vite lorsque n tend vers l’infini et vers 0 : τ (n) () ≤ poly(n, log(1/)). (Typiquement, #Vn est exponentiel en n) Aléa 06 - Chaînes de Markov – p. 20/3 Mélange rapide Typiquement, V = Vn (on définit une famille, indexée par des tailles, de chaînes sur des ensembles de plus en plus grands). On dit que cette famille de chaînes de Markov est rapidement mélangeante, si τ (n) () ne croît pas trop vite lorsque n tend vers l’infini et vers 0 : τ (n) () ≤ poly(n, log(1/)). (Typiquement, #Vn est exponentiel en n) Deux questions naturelles : Aléa 06 - Chaînes de Markov – p. 20/3 Mélange rapide Typiquement, V = Vn (on définit une famille, indexée par des tailles, de chaînes sur des ensembles de plus en plus grands). On dit que cette famille de chaînes de Markov est rapidement mélangeante, si τ (n) () ne croît pas trop vite lorsque n tend vers l’infini et vers 0 : τ (n) () ≤ poly(n, log(1/)). (Typiquement, #Vn est exponentiel en n) Deux questions naturelles : comment prouve-t-on qu’une chaîne est, ou non, rapidement mélangeante ? Aléa 06 - Chaînes de Markov – p. 20/3 Mélange rapide Typiquement, V = Vn (on définit une famille, indexée par des tailles, de chaînes sur des ensembles de plus en plus grands). On dit que cette famille de chaînes de Markov est rapidement mélangeante, si τ (n) () ne croît pas trop vite lorsque n tend vers l’infini et vers 0 : τ (n) () ≤ poly(n, log(1/)). (Typiquement, #Vn est exponentiel en n) Deux questions naturelles : comment prouve-t-on qu’une chaîne est, ou non, rapidement mélangeante ? comment construire des chaînes les plus rapidement mélangeantes possible ? Aléa 06 - Chaînes de Markov – p. 20/3 Mélange rapide et valeurs propres Proposition: si la chaîne est réversible et si sa matrice de probabilités de transitions a pour valeurs propres 1 = λ0 > λ1 ≥ . . . ≥ λN −1 , en posant λ = max(|λ1 |, |λN −1 |) on a, indépendamment de l’état de départ, π(v) |P(Xt = v) − π(v)| ≤ λ minu π(u) t Aléa 06 - Chaînes de Markov – p. 21/3 Mélange rapide et valeurs propres Proposition: si la chaîne est réversible et si sa matrice de probabilités de transitions a pour valeurs propres 1 = λ0 > λ1 ≥ . . . ≥ λN −1 , en posant λ = max(|λ1 |, |λN −1 |) on a, indépendamment de l’état de départ, π(v) |P(Xt = v) − π(v)| ≤ λ minu π(u) t Conséquence: δ(t) ≤ λt / minu π(u), et 1 1 1 ln + ln τ () ≤ 1−λ minu π(u) Aléa 06 - Chaînes de Markov – p. 21/3 Mélange rapide et valeurs propres Proposition: si la chaîne est réversible et si sa matrice de probabilités de transitions a pour valeurs propres 1 = λ0 > λ1 ≥ . . . ≥ λN −1 , en posant λ = max(|λ1 |, |λN −1 |) on a, indépendamment de l’état de départ, π(v) |P(Xt = v) − π(v)| ≤ λ minu π(u) t Conséquence: δ(t) ≤ λt / minu π(u), et 1 1 1 ln + ln τ () ≤ 1−λ minu π(u) En d’autres termes, on a mélange rapide dès que β −α −n λ = 1 − Ω(n ) et π(u) = Ω(e ) Aléa 06 - Chaînes de Markov – p. 21/3 Preuve p Soit D la matrice diagonale Du,v = δuv π(u); la matrice A = D.P.D −1 est symétrique, avec les mêmes valeurs propres que P , donc diagonalisable dans une base orthonormale : X −1 A = D.P.D = λi E(i) 0≤i<N Aléa 06 - Chaînes de Markov – p. 22/3 Preuve p Soit D la matrice diagonale Du,v = δuv π(u); la matrice A = D.P.D −1 est symétrique, avec les mêmes valeurs propres que P , donc diagonalisable dans une base orthonormale : X −1 A = D.P.D = λi E(i) 0≤i<N (chaque matrice E(i) est la projection sur une direction propre, E(0) projette sur le vecteur π ) Aléa 06 - Chaînes de Markov – p. 22/3 Preuve p Soit D la matrice diagonale Du,v = δuv π(u); la matrice A = D.P.D −1 est symétrique, avec les mêmes valeurs propres que P , donc diagonalisable dans une base orthonormale : X −1 A = D.P.D = λi E(i) 0≤i<N t Pu,v = π(v) + s π(v) X t (i) (i) λ i eu ev π(u) 0<i<N Aléa 06 - Chaînes de Markov – p. 22/3 Preuve p Soit D la matrice diagonale Du,v = δuv π(u); la matrice A = D.P.D −1 est symétrique, avec les mêmes valeurs propres que P , donc diagonalisable dans une base orthonormale : X −1 A = D.P.D = λi E(i) 0≤i<N t Pu,v = π(v) + s π(v) X t (i) (i) λ i eu ev π(u) 0<i<N d’où t |Pu,v − π(v)| ≤ p π(v) π(u)π(v) λt X 0<i<N (i) (i) |eu |.|ev | λt π(v) ≤ minw π(w) Aléa 06 - Chaînes de Markov – p. 22/3 Conductance Pour une arête e = (u, v), Q(e) = π(u)pu,v représente la probabilité (stationnaire) d’être en u et de passer en v en une transition. Pour deux parties S et S 0 de V , on définit X 0 Q(S, S ) = Q(u, v) u∈S,v∈S 0 qui est la probabilité de passer de S à S 0 en un pas de la chaîne. La conductance de la chaîne est définie par Q(S, S) Φ = min π(S)≤1/2 π(S) (le minimum, sur tous les “petits” ensembles S , de la probabilité de sortir de S sachant qu’on est dans S ) Aléa 06 - Chaînes de Markov – p. 23/3 Conductance “Intuitivement” (Jerrum & Sinclair, 1989), si Φ n’est pas trop petite, aucune partie S de V n’est telle qu’il est “difficile” d’en sortir, donc la chaîne devrait mélanger assez rapidement. . . Théoreme (Jerrum, Sinclair) La seconde valeur propre d’une chaîne inversible, de probabilités de boucle au moins 1/2, vérifie Φ2 1 − 2Φ ≤ λ ≤ 1 − 2 Aléa 06 - Chaînes de Markov – p. 24/3 Chemins canoniques Une technique d’évaluation (minoration) de la conductance, est celle des chemins canoniques : pour chaque paire d’états (u, v), on choisit dans le graphe un chemin γuv de u à v (i.e., une suite de transitions possibles de la chaîne permettant de passer de l’état u à l’état v ). Aléa 06 - Chaînes de Markov – p. 25/3 Chemins canoniques Une technique d’évaluation (minoration) de la conductance, est celle des chemins canoniques : pour chaque paire d’états (u, v), on choisit dans le graphe un chemin γuv de u à v (i.e., une suite de transitions possibles de la chaîne permettant de passer de l’état u à l’état v ). La “charge” d’une transition e = (u, v) est alors X 1 ρ(e) = π(u)π(v)|γuv | Q(e) (u,v):e∈γuv avec Q(e) = π(u)pu,v = π(v)pv,u , et on pose ρ = max ρ(e) e Aléa 06 - Chaînes de Markov – p. 25/3 Chemins canoniques Théorème (Jerrum, Sinclair) Pour tout choix de chemins, on a 1 1 τ () ≤ ρ ln + ln minu πu Aléa 06 - Chaînes de Markov – p. 26/3 Chemins canoniques Théorème (Jerrum, Sinclair) Pour tout choix de chemins, on a 1 1 τ () ≤ ρ ln + ln minu πu (Le choix judicieux des chemins, et surtout l’analyse de ρ, sont assez complexes) Aléa 06 - Chaînes de Markov – p. 26/3 Quelques exemples colorations d’un graphe couplages d’un graphe Aléa 06 - Chaînes de Markov – p. 27/3 Colorations d’un graphe On considère un graphe G à n sommets, de degré maximal ∆, et un entier ∆0 > ∆. CG (états) : ensemble des ∆0 -colorations de G; Aléa 06 - Chaînes de Markov – p. 28/3 Colorations d’un graphe On considère un graphe G à n sommets, de degré maximal ∆, et un entier ∆0 > ∆. CG (états) : ensemble des ∆0 -colorations de G; π : distribution uniforme sur CG ; Aléa 06 - Chaînes de Markov – p. 28/3 Colorations d’un graphe On considère un graphe G à n sommets, de degré maximal ∆, et un entier ∆0 > ∆. CG (états) : ensemble des ∆0 -colorations de G; π : distribution uniforme sur CG ; transitions : entre deux colorations c et c0 si et seulement si c et c0 diffèrent en un seul sommet de G; on pose alors 1 Pc,c0 = 2n∆ 0 (Pc,c = . . . ≥ 1/2) Aléa 06 - Chaînes de Markov – p. 28/3 Colorations d’un graphe On considère un graphe G à n sommets, de degré maximal ∆, et un entier ∆0 > ∆. CG (états) : ensemble des ∆0 -colorations de G; π : distribution uniforme sur CG ; Algorithme de transition : c l’état courant; avec probabilité 1/2, poser c0 et terminer; choisir un sommet aléatoire uniforme u et une couleur aléatoire uniforme i; si i est une couleur légale pour u (i.e., aucun voisin de u n’est de couleur i), c0 est obtenu en recoloriant u en i, sinon c0 = c Aléa 06 - Chaînes de Markov – p. 28/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Si ∆0 est assez grand, le graphe des colorations est connexe; ∆0 ≥ ∆ + 1 suffit (étant données deux colorations c et c0 , on forme facilement un chemin de longueur au plus n∆ de c à c0 ) (exercice!) Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Si ∆0 est assez grand, le graphe des colorations est connexe; ∆0 ≥ ∆ + 1 suffit (étant données deux colorations c et c0 , on forme facilement un chemin de longueur au plus n∆ de c à c0 ) (exercice!) Donc dans ce cas, la chaîne converge vers la distribution uniforme sur CG . Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Si ∆0 est assez grand, le graphe des colorations est connexe; ∆0 ≥ ∆ + 1 suffit (étant données deux colorations c et c0 , on forme facilement un chemin de longueur au plus n∆ de c à c0 ) (exercice!) Donc dans ce cas, la chaîne converge vers la distribution uniforme sur CG . Que peut-on dire de la vitesse de convergence ? Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Si ∆0 est assez grand, le graphe des colorations est connexe; ∆0 ≥ ∆ + 1 suffit (étant données deux colorations c et c0 , on forme facilement un chemin de longueur au plus n∆ de c à c0 ) (exercice!) Donc dans ce cas, la chaîne converge vers la distribution uniforme sur CG . Que peut-on dire de la vitesse de convergence ? (Si ∆0 < 2∆: ?) Aléa 06 - Chaînes de Markov – p. 29/3 Colorations d’un graphe Pc,c0 = Pc0 ,c : la chaîne est inversible avec π comme distribution stationnaire. Les probabilités de boucles sont toutes au moins 1/2. Si ∆0 est assez grand, le graphe des colorations est connexe; ∆0 ≥ ∆ + 1 suffit (étant données deux colorations c et c0 , on forme facilement un chemin de longueur au plus n∆ de c à c0 ) (exercice!) Donc dans ce cas, la chaîne converge vers la distribution uniforme sur CG . Que peut-on dire de la vitesse de convergence ? Si ∆0 ≥ 2∆, mélange rapide, avec τ () ≤ n∆ ln(n/) si ∆0 > 2∆ Aléa 06 - Chaînes de Markov – p. 29/3 Couplages d’un graphe G un graphe (simple, non orienté, sans boucles, n sommets) dont les arêtes ont des poids w(e), CG ensemble des couplages (matchings) de G. Y w(m) = w(e) e∈m w(m) π(m) = P 0 m0 ∈CG w(m ) On fabrique facilement une chaîne de Markov ergodique, réversible, dont π soit la distibution stationnaire/limite. Aléa 06 - Chaînes de Markov – p. 30/3 Couplages: Chaîne de Markov Algorithme de transition: dans l’état m: Avec probabilité 1/2, ne rien faire (m0 = m); Choisir une arête e = (u, v) uniforme; Déterminer un nouveau couplage m00 : si e ∈ m, m00 = m − e si u et v sont libres dans m, m00 = m + e si un seul de u et v est libre dans m, et si l’autre est incident à une arête e0 , m00 = m − e0 + e sinon, m00 = m m0 = m00 avec probabilité min(1, w(m0 )/w(m)), sinon m 0 = m. Aléa 06 - Chaînes de Markov – p. 31/3 Couplages: Chaîne de Markov Algorithme de transition: dans l’état m: Avec probabilité 1/2, ne rien faire (m0 = m); Choisir une arête e = (u, v) uniforme; Déterminer un nouveau couplage m00 : si e ∈ m, m00 = m − e (↓-transition) si u et v sont libres dans m, m00 = m + e si un seul de u et v est libre dans m, et si l’autre est incident à une arête e0 , m00 = m − e0 + e sinon, m00 = m m0 = m00 avec probabilité min(1, w(m0 )/w(m)), sinon m 0 = m. Aléa 06 - Chaînes de Markov – p. 31/3 Couplages: Chaîne de Markov Algorithme de transition: dans l’état m: Avec probabilité 1/2, ne rien faire (m0 = m); Choisir une arête e = (u, v) uniforme; Déterminer un nouveau couplage m00 : si e ∈ m, m00 = m − e (↓-transition) si u et v sont libres dans m, m00 = m + e (↑-transition) si un seul de u et v est libre dans m, et si l’autre est incident à une arête e0 , m00 = m − e0 + e sinon, m00 = m m0 = m00 avec probabilité min(1, w(m0 )/w(m)), sinon m 0 = m. Aléa 06 - Chaînes de Markov – p. 31/3 Couplages: Chaîne de Markov Algorithme de transition: dans l’état m: Avec probabilité 1/2, ne rien faire (m0 = m); Choisir une arête e = (u, v) uniforme; Déterminer un nouveau couplage m00 : si e ∈ m, m00 = m − e (↓-transition) si u et v sont libres dans m, m00 = m + e (↑-transition) si un seul de u et v est libre dans m, et si l’autre est incident à une arête e0 , m00 = m − e0 + e (↔-transition) sinon, m00 = m m0 = m00 avec probabilité min(1, w(m0 )/w(m)), sinon m 0 = m. Aléa 06 - Chaînes de Markov – p. 31/3 Couplages: Chaîne de Markov Algorithme de transition: dans l’état m: Avec probabilité 1/2, ne rien faire (m0 = m); Choisir une arête e = (u, v) uniforme; Déterminer un nouveau couplage m00 : si e ∈ m, m00 = m − e (↓-transition) si u et v sont libres dans m, m00 = m + e (↑-transition) si un seul de u et v est libre dans m, et si l’autre est incident à une arête e0 , m00 = m − e0 + e (↔-transition) sinon, m00 = m m0 = m00 avec probabilité min(1, w(m0 )/w(m)), sinon m 0 = m. (algorithme de Metropolis) Aléa 06 - Chaînes de Markov – p. 31/3 Chemins canoniques pour les couplages On doit trouver, pour deux couplages m et m0 quelconques, un chemin γmm0 : une suite de transitions qui fasse passer de m à m0 , en essayant de faire en sorte que Aléa 06 - Chaînes de Markov – p. 32/3 Chemins canoniques pour les couplages On doit trouver, pour deux couplages m et m0 quelconques, un chemin γmm0 : une suite de transitions qui fasse passer de m à m0 , en essayant de faire en sorte que les chemins ne soient pas trop longs Aléa 06 - Chaînes de Markov – p. 32/3 Chemins canoniques pour les couplages On doit trouver, pour deux couplages m et m0 quelconques, un chemin γmm0 : une suite de transitions qui fasse passer de m à m0 , en essayant de faire en sorte que les chemins ne soient pas trop longs ils évitent de trop utiliser certaines transitions Aléa 06 - Chaînes de Markov – p. 32/3 Chemins canoniques pour les couplages On doit trouver, pour deux couplages m et m0 quelconques, un chemin γmm0 : une suite de transitions qui fasse passer de m à m0 , en essayant de faire en sorte que les chemins ne soient pas trop longs ils évitent de trop utiliser certaines transitions Par exemple, le choix consistant, pour passer de m à m0 , à passer systématiquement par le couplage vide est probablement mauvais : les arêtes incidentes au couplage vide seront très chargées. Aléa 06 - Chaînes de Markov – p. 32/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Aléa 06 - Chaînes de Markov – p. 33/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Ingrédients : définir un ordre total entre ces chemins et cycles; Aléa 06 - Chaînes de Markov – p. 33/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Ingrédients : définir un ordre total entre ces chemins et cycles; “détricoter” chacun des chemins et cycles, pour passer de m à m0 : Aléa 06 - Chaînes de Markov – p. 33/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Ingrédients : définir un ordre total entre ces chemins et cycles; “détricoter” chacun des chemins et cycles, pour passer de m à m0 : pour un cycle, commencer par une ↓-transition (on obtient un chemin) Aléa 06 - Chaînes de Markov – p. 33/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Ingrédients : définir un ordre total entre ces chemins et cycles; “détricoter” chacun des chemins et cycles, pour passer de m à m0 : pour un cycle, commencer par une ↓-transition (on obtient un chemin) pour un chemin, une suite de ↔-transitions, éventuellement suivie par une ↑- ou ↓-transition Aléa 06 - Chaînes de Markov – p. 33/3 Chemins canoniques pour couplages m et m0 étant donnés : Z = m ⊕ m0 Dans Z , chaque sommet est de degré 0, 1 ou 2 : ensemble de chemins et de cycles. Ingrédients : définir un ordre total entre ces chemins et cycles; “détricoter” chacun des chemins et cycles, pour passer de m à m0 : pour un cycle, commencer par une ↓-transition (on obtient un chemin) pour un chemin, une suite de ↔-transitions, éventuellement suivie par une ↑- ou ↓-transition (Jerrum & Sinclair: pour w(e) = λ, ρ ≤ 4m.n. max(1, λ)) Aléa 06 - Chaînes de Markov – p. 33/3