• Aucun résultat trouvé

Approximation de la distance d’édition de graphes

En se basant sur la signature de nœuds, nous introduisons une approximation de la distance d’édition de graphes. Cette approximation est établie par la réduction du problème de la dis-tance d’édition de graphes en un problème d’affectation. Nous montrons aussi que la définition originale de la distance d’édition de graphes peut être établie en fonction de la solution optimale du problème d’affectation. Bien évidemment, vu que notre approximation calcule uniquement une solution sous-optimale de la distance d’édition de graphes, elle ne satisfait pas toujours les propriétés d’une métrique.

Nous proposons un algorithme qui utilise les signatures de nœuds pour définir un problème d’affection. Nous commençons par définir la distance entre deux ensembles de signatures de nœuds.

Distance d’ensembles de signatures des nœuds Soient A=(Va,Ea) et B=(Vb,Eb) deux graphes, étant donné la bijectionφ:Sγ(A)→Sγ(B). La distanceϕentre Sγ(A) et Sγ(B) est don-née par : ϕ(Sγ(A), Sγ(B)) =min φ X γ(ni)∈Sγ(A) dγ(γ(ni), φ(γ(ni)))

Étant donné queφest une bijection, les deux multi-ensembles Sγ(A)et Sγ(B)doivent contenir le même nombre d’éléments. Pour contourner ce problème, nous ramenons les deux ensembles des signatures Sγ(A) et Sγ(B) à une même taille. Pour ce faire, nous ajoutons au plus petit ensembleksignatures vides (i.e.γ(ǫ) = (∅,0,∅,∅)), aveck=

|Sγ(A)| − |Sγ(B)| .

Le calcul de la fonctionϕ(Sγ(A), Sγ(B))est équivalent à la résolution d’un problème d’af-fection qui est l’un des problèmes classiques de la recherche opérationnelle. Il consiste à trou-ver un couplage maximum (ou minimum) dans graphe biparti. Étant donné un graphe biparti complet g = (X ∪Y,X ×Y ) où à chaque arête xy un poids w(xy) est associé. Le problème d’affectation consiste à chercher l’appariement M de X vers Y ayant le poids minimal. Prenons un exemple du problème d’affectation. Soient trois ouvriersO1,O2 etO3et trois tâchesT1,T2

etT3. Pour qu’un produit soit prêt il faut que les trois tâches soient accomplies et chaque ouvrier se voit assigner une tâche. Le temps de mise en œuvre est donné par la matrice de coût dans la table 4.2. L’objectif est de minimiser le temps total de mise en œuvre. Ce problème peut être modélisé par un graphe biparti g = (X∪Y,X×Y ), avec X={O1, O2, O3}et Y={T1, T2, T3} (voir figure 4.3).

TABLE4.2 – Une matrice de coûts d’un problème d’affectation

O1 O2 O3

T1 15 12 8

T2 24 36 11

T3 23 20 25

4.4. Approximation de la distance d’édition de graphes

FIGURE4.3 – Un graphe biparti d’un problème d’affectation

Dans notre cas, étant donné deux graphes A=(Va,Ea) et B=(Vb,Eb), le problème d’affectation est défini par un graphe biparti g = (X∪Y,X×Y ), avec X=Sγ(A)et Y=Sγ(B). Les poids des arêtes xy ∈ X ×Y sont les distances entre les signatures de nœuds. Ainsi, une matrice de coûts est construite où chaque élément ij représente la distance entre lai-ème signature dans Sγ(A)et laj-ième signature dans Sγ(B). Pour résoudre ce problème d’affection, nous utilisons la méthode hongroise [146] (voir Annexe A) qui est connue comme l’une des méthodes les plus efficaces et les plus rapides dans la littérature [39, 181], avec une complexité en temps de O(n3). Une fois la méthode hongroise appliquée sur la matrice de coûts, nous obtenons une matrice de permutation P qui définit l’appariement optimal entre les deux graphes A et B. En se basant sur la matrice P nous définissons la distance ϕet nous ré-écrivons la distance entre les multi-ensembles de signatures comme suit :

1. Compléter les multi-ensembles avec des signatures vides afin qu’ils aient la même cardi-nalité

2. Calculer la matrice carréedtelle qued[i][j]= distance entre les signaturesi∈Sγ(A)et j∈Sγ(A)

3. Appliquer la méthode hongroise pour calculer l’appariement bijectifφ: Sγ(A)→Sγ(B)

tel queP

i∈Sγ(A)d[i][φ(i)]soit minimal. 4. Retournerφ

Ainsi, nous définissons la distance entre deux multi-ensembles de signatures de nœuds comme suit :

ϕ(Sγ(A), Sγ(B)) = X γ(ni)∈Sγ(A)

Chapitre 4. Une distance d’édition basée sur la signature des nœuds

Étant donné que nous avons ajouté des signatures vides (i.e.γ(ǫ)) au plus petit ensemble de Sγ(A)et Sγ(B), nous pouvons ainsi développer l’équation (4.4) comme suit :

ϕ(Sγ(A), Sγ(B)) = X γ(ni)∈Sγ(A)/γ(ǫ),φ′(γ(ni))6=γ(ǫ) dγ(γ(ni), φ(γ(ni))) + X γ(ǫ)∈Sγ(A) dγ(γ(ǫ), φ(γ(ǫ))) + X γ(ǫ)∈Sγ(B) dγ′−1(γ(ǫ)), γ(ǫ)) (4.5)

avec dγ(γ(ni), φ(γ(ni))) la distance entre les signatures de deux nœuds de deux graphes A et B ; dγ(γ(ǫ), φ(γ(ǫ))) correspond à la distance entre la signature d’un nœud du graphe B appariée à une signature vide dans A ;dγ′−1(γ(ǫ)), γ(ǫ)) correspond à la distance entre la signature d’un nœud du graphe A appariée à une signature vide dans B.

Nous considérons que chacune de ces distances correspond à un coût d’édition d’opération effectuée sur les nœuds pour transformer le graphe A en B. Ainsi, dγ(γ(ni), φ(γ(ni))) cor-respond au coût de substitution du nœudni ∈ A par le nœud du graphe B ayant la signature φ(γ(ni)). De plus,dγ(γ(ǫ), φ(γ(ǫ)))correspond au coût d’insertion d’un nœud du graphe B, ayant la signatureφ(γ(ǫ)), dans A. Enfin,dγ′−1(γ(ǫ)), γ(ǫ))correspond au coût de suppres-sion du nœud, dont la signature est appariée à une signature vide, de A.

Ces considérations définissent, implicitement, un appariement sur les nœuds en se basant sur l’appariement optimal sur les signatures de nœuds. Il faut noter ici que même si notre ap-pariement sur les signatures est optimal, nous ne pouvons pas affirmer que l’apap-pariement résul-tant sur les nœuds est toujours optimal.

Finalement, en s’appuyant sur l’équation (4.1) qui calcule une distance d’édition de graphes à partir d’un appariement de nœuds, nous définissons, dans l’équation 4.6, notre approxima-tion de la distance d’édiapproxima-tion entre deux graphes A et B ayant, respectivement, les deux multi-ensembles des signatures des nœuds Sγ(A)et Sγ(B).

d(A, B) =ϕ(Sγ(A), Sγ(B)) + X e∈Er ζer(e) + X e∈Ei ζei(e) + X e∈Es ζes(e) (4.6)

Cette équation (4.6) est notre approximation de la distance d’édition entre les graphes. À notre connaissance, la grande majorité des algorithmes de distance d’édition de graphes re-quièrent des fonctions de coûts prédéfinies. Notre approche ne nécessite aucun paramètre et calcule les fonctions de coûts en faisant usage de la signature de nœud. En outre, notre approche réduit la distance d’édition de graphes en un problème d’affectation par le biais de signatures de nœuds.