1
ALGORITHME SUR LES GRAPHES EN BIOINFORMATIQUE
Synth `
ese sur le r ´
earrangement des g ´
enomes : algorithme
de Kaplan, Shamir et Tarjan (1997)
Benjamin Dev `
eze
Universit´e Pierre et Marie Curie, Master IAD, synth`ese d’articles (AAGB)
R´
ESUM ´
ELe pr ´
esent document consti-
tue une br `
eve introduction au probl `
eme du
r´
earrangement des g ´
enomes et dresse une synth `
ese
de l’algorithme de Kaplan, Shamir et Tarjan qui per-
met de trouver le nombre minimal de renversements
n´
ecessaires pour ordonner une permutation avec
signe en temps quadratique [KST97].
Mots-cl ´
es : bioinformatique ; r ´
earrangement des
g´
enomes ; tri ; renversements avec signe
INTRODUCTION
Nous allons ici traiter du probl`
eme de tri par renversement
avec signe, il convient donc de rappeler bri`
evement en quoi
il consiste, quelles sont ses applications en biologie et de
dresser un rapide historique des r´
esultats relatifs `
a cette
question.
PR ´
ESENTATION DU PROBL `
EME Une permu-
tation sign´ee est une permutation π= (π1, ..., πn)sur les
entiers {1, ..., n}, o `
u chaque nombre est sign´
e. Un renverse-
ment,ρ(i, j)sur πtransforme la permutation comme suit :
π0=πρ(i, j) = (π1, ..., πi1,πj,πj1, ..., πi, πj+1, ..., πn).
Le nombre minimum de renversement n´
ecessaire pour pas-
ser d’une permutation `
a une autre se d´
enomme distance de
renversement entre les deux. Le probl`
eme du tri par ren-
versement avec signe consiste `
a trouver pour une permu-
tation donn´
ee, la s´
equence de renversements de longueur
minimale permettant de la transformer en la permutation
identit´
e i.e. (+1,+2, ..., +n). Le nombre de renversements
minimal est not´
ed(π). Voyons comment ce probl`
eme inter-
vient en biologie.
INT ´
ER ˆ
ET BIOLOGIQUE Avec l’augmentation
rapide des donn´
ees g´
enomiques `
a notre disposition, il
est dor´
enavant possible de comparer les g´
enomes des
diff´
erentes esp`
eces. Dobzhanskky et Sturtevant (1935) ont
montr´
e des inversions chez la drosophile. D`
es la fin des
ann´
ees 1980, Jeffrey Palmer a exhib´
e que les g´
enomes mi-
tochondriales du navet et du chou avaient 99% de similarit´
e
entre leurs g`
enes mais que cependant ces s´
equences ´
etaient
diff´
erentes dans l’ordre des g`
enes. Cette ´
etude fut `
a l’ori-
gine d’une analyse syst´
ematique des r´
earrangements des
g´
enomes dans l’´
evolution mol´
eculaire. Les g`
enes le long
d’un chromosome peuvent ˆ
etre vus comme des nombres
sign´
es1ce qui nous rapproche du probl`
eme que nous venons
de d´
ecrire. Palmer et d’autres ont montr´
e que les diff´
erences
dans l’ordre des g´
enomes pouvaient ˆ
etre expliqu´
ees par un
petit nombre de renversements. L’analyse de ces renver-
sements nous permet d’´
etudier l’histoire de l’´
evolution des
esp`
eces. D`
es lors, la distance de renversement entre deux
permutations repr´
esentatives des deux g´
enomes `
a´
etudier
mesure leur distance ´
evolutive.
´
ETAT DE L’ART Nous pr´
esentons ici de mani`
ere suc-
cinte et chronologique les r´
esultats du domaine.
Algorithme de 2-approximation (Kececioglu and San-
koff, 1995), conjecture que le probl`
eme est NP-difficile.
Algorithme de 1.75-approximation (Bafna and Pevz-
ner, 1996).
– D´
emonstration que le probl`
eme non sign´
e est NP-
difficile (Caprara, 1999).
Algorithme de 1.5-approximation (Christie, 1998).
Algorithme de 1.375-approximation (Hannenhalli,
1998).
La d´
emonstration que le probl`
eme non sign´
e est NP-
difficile fut pr´
esent´
ee pour la premi`
ere fois par Caprara en
1999 dans [Cap99]. Cela signifie qu’il est conjectur´
e que
le probl`
eme ne peut ˆ
etre r´
esolu par un algorithme dont le
temps d’ex´
ecution est born´
e par un polynˆ
ome en la taille
de l’entr´
ee du probl`
eme. L’article pr´
esente de mani`
ere tr`
es
claire les graphes de points de rupture et les notions es-
sentielles qui s’y rattachent. L’auteur proc`
ede de mani`
ere
classique en th´
eorie de la complexit´
e en ´
etablissant qu’un
probl`
eme est NP-difficile par la transformation polynomiale
d’un probl`
eme connu NP-difficile vers le probl`
eme dont
l’on veut d´
emontrer qu’il appartient `
a cette classe. Les
probl`
emes consid´
er´
es sont le probl`
eme du nombre minimal
de renversement (MIN-SBR), le probl`
eme de recherche du
nombre maximal des arrˆ
etes disjointes des cycles dans le
graphe des points de rupture associ´
e`
a une permutation
(MAX-ACD) (on excusera cette traduction tr`
es approxima-
tive), et le probl`
eme du partitionnement de l’ensemble des
arrˆ
etes d’un graphe hamiltonien en un nombre maximal de
cycles (MAX-ECD). Partant du fait que MAX-ECD est NP-
difficile, l’auteur ´
etablit l’´
equivalence entre MAX-ECD et
MAX-ACD, on en d´
eduit que MAX-ACD est ´
egalement NP-
difficile. Enfin par une r´
eduction entre MAX-ACD et MIN-
SBR on conclut que MIN-SBR est NP-difficile.
Hannenhalli et Pevzner (1995) montre que le
probl`
eme du tri par renversement avec signe est poly-
nomial, en O(n4).
Berman et Hannenhalli (1996) ont trouv´
e un algo-
1en fonction de leur direction
2
rithme en O(n2α(n)), ou α(n)est l’inverse de la fonc-
tion de Ackermann.
Kaplan, Shamir et Tarjan (1997) ont trouv´
e un algo-
rithme en O(n2)que nous allons ´
etudier ci-apr`
es.
ALGORITHME DE KAPLAN ET AL.
L’algorithme de Kaplan, Shamir et Tarjan [KST97] est une
´
el´
egante am´
elioration des m´
ethodes pr´
ec´
edentes. L’objectif
n’est pas ici d’en faire une analyse d´
etaill´
ee mais de tenter
d’en d´
egager les points les plus saillants. Pour ce faire, nous
suivrons globalement le mˆ
eme plan que celui de l’article.
NOTATIONS ET D ´
EFINITIONS PR ´
ELIMINAIRES
Nous consid´
erons comme acquises les notions de points de
rupture et d’adjacences. Le nombre de points de rupture
d’une permutation est not´
eb(π). De toute ´
evidence un ren-
versement ρ(i, j)agit sur les paires (πi1, πi)et (πj, πj+1).
Graphe des points de rupture
Le graphe de points de rupture B(π)d’une permutation
`
a n entiers πest un graphe aux arrˆ
etes color´
ees comprenant
n+2 entiers car on ajoute 0et n+1 aux deux extr´
emit´
es. On
relie les noeuds dans l’ordre donn´
e par πavec des arrˆ
etes
noires et les noeuds dans l’ordre donn´
e par l’idendit´
e par
des arrˆ
etes grises. On d´
efinit alors une transformation udes
permutations avec signe vers les permutations sans signe.
Chaque noeud positif xest remplac´
e par les deux noeuds
2x1et 2xtandis que chaque noeud n´
egatif xse voit sub-
stituer 2xet 2x1. Il y a d`
es lors une unique d´
ecomposition
de B(π)en cycles dans lesquels alternent les arrˆ
etes grises
et noires. On pose c(π)le nombre de cycles de B(π). Le tri
par renversement de πest ´
equivalent au tri par renverse-
ment de u(π)en utilisant des renversements pairs (de la
forme ρ(i, j)avec i impair et j pair) et il s’agit d`
es lors d’abor-
der ce probl`
eme.
Il est possible de classer les effets sur le nombre de cycles
et de points de rupture des diff´
erentes op´
erations de renver-
sement. Nous ne les d´
etaillons pas ici, notons simplement
qu’un certain nombre d’op´
erations sont qualifi´
ees de propres
Une arrˆ
ete grise est orient´ee si un renversement sur cette
arrˆ
ete est propre, sinon elle ne l’est pas.
Graphe de recouvrement
Le graphe de recouvrement d’une permutation π, not´
e
OV (π)est le graphe de recouvrement d’intervalles des
arrˆ
etes grises de B(π). L’ensemble des sommets d’OV (π)
correspond `
a l’ensemble des arrˆ
etes grises de B(π)et
deux sommets sont connect´
es si leurs arrˆ
etes associ´
ees se
croisent. Une composante connexe d’OV (π)qui contient
une arrˆ
ete orient´
ee est nomm´
ecomposante orient´ee, elle est
nomm´
ee composante non-orient´ee dans le cas contraire.
Soit X un ensemble d’arrˆ
etes grises de B(π),min(X) =
min{i|(πi, πj)X},max(X) = max{j|(πi, πj)X}. Les
auteurs d´
emontrent alors le lemme suivant : si M est un en-
semble d’arrˆ
etes grises de B(π)qui correspond `
a une com-
posante connexe d’OV (π)alors min(M)est pair et max(M)
est impair. Ceci conduit au corollaire suivant : les compo-
santes connexes d’OV (π)correspondent `
a l’ensemble des
arrˆ
etes grises constituant chaque cycle. Cela permet de
d´
emontrer que la partition impos´
ee par les composantes
connexes d’OV (π)sur l’ensemble des arrˆ
etes grises est iden-
tique `
a celle impos´
ee dans les travaux de Pevzner et Han-
nenhalli.
Obstacles
Informellement les obstacles sont des composantes
connexes qui ne contiennent pas d’autres composantes
connexes. La d´
efinition propos´
e dans l’article est plus simple
que celle d’Hannenhalli et Pevzner. Les obstacles peuvent
ˆ
etre identifi´
es en alignant sur un cercle les arrˆ
etes grises
intervenant dans les composantes non-orient´
ees de OV (π).
Notons h(π)le nombre d’obstacles de la permutation π. Han-
nenhalli et Pevzner ont d´
emontr´
e que pour une permutation
π,d(π) = b(π)c(π) + h(π)ou d(π) = b(π)c(π) + h(π) + 1.
ALGORITHME Etant donn´
e une permutation πavec
h(π)>0, il est possible d’effectuer t=ph(π)/2qrenver-
sements afin de transformer πen π0tel que h(π0) = 0 et
d(π0) = d(π)t. C’est ce que fait l’algorithme d`
es lors
qu’OV (π)pr´
esente des composantes non-orient´
ees. D`
es lors,
OV (π0)n’a que des composantes orient´
ees. Il est possible de
supprimer les obstacles d’une permutation en O((n)).Un
renversement qui ne cr´
ee pas d’obstacle est d´
enomm´
eren-
versement s ˆur. Il existe toujours un tel renversement dans
le voisinage d’une arrˆ
ete grise orient´
ee. Il s’agit donc d’utili-
ser un algorithme efficace permettant de trouver un renver-
sement s ˆ
ur d’une permutation ayant au moins une arrˆ
ete
grise orient´
ee. Cela peut se faire en O(n). Enfin il convient
d’it´
erer en trouvant `
a chaque it´
eration un renversement s ˆ
ur
et de l’effectuer tant que OV (π)n’est pas vide. Cela nous
donne comme complexit´
e finale du O(rn +(n)) avec r le
nombre de renversement n´
ecessaire au tri de π0.
En pratique l’algorithme prend en entr´
ee une s´
equence
π0de nnombres sign´
es et construit la permutation π=
u(π0). Ensuite tout l’algorithme travaille sur πet π1qui
sont maintenues `
a jour durant l’ex´
ecution.
Elimination des composantes orient´
ees
Posons N(e)l’ensemble des voisins de e dans OV (π),
ON(e)le sous-ensemble de N(e)contenant des arrˆ
etes
orient´
ees et UN (e)le sous-ensemble des arrˆ
etes non-
orient´
ees. Les auteurs prouvent que si un sommet orient´
e
eexiste dans OV (π)alors il existe un sommet orient´
ef
ON(e)tel que r(f)est propre et s ˆ
ur. Ils proposent un al-
gorithme permettant de trouver un renversement propre et
sˆ
ur dans une permutation qui contient au moins une arrˆ
ete
orient´
ee. Pour ce faire ils introduisent la notion de clique
joyeuse, nous renvoyons `
a l’article pour sa d´
efinition for-
melle. Ils d´
emontrent que dans une clique joyeuse il existe
un sommet d´
efinissant un renversement propre et s ˆ
ur.
Les auteurs proposent donc un algorithme permettant
de trouver une clique joyeuse dans un temps proportionnel
au nombre de sommets orient´
es travers´
es. Ils d´
emontrent la
validit´
e de l’algorithme par un classique invariant de boucle.
Une fois la clique joyeuse trouv´
ee par cette m´
ethode, il
convient de trouver le sommet de la clique qui a le maximum
de voisins non-orient´
es. Nous renvoyons ´
egalement `
a l’ar-
ticle pour les d´
etails de cette algorithme dont la complexit´
e
est proportionnelle `
a la taille de la clique `
a traiter auquel
s’ajoute le nombre de sommets non-orient´
es dans OV (π)soit
donc au final O(n).
Suppression des obstacles
3
La suppression des obstacles se fait en O(n)est s’av`
ere
relativement simple. L’algorithme repose sur deux lemmes
s’int´
eressant aux renversements permettant de regrouper
des obstacles jusqu’`
a ce qu’il n’y en ait plus et cela dans le
cas pair puis impair.
Algorithme final
La combinaison des diff´
erentes ´
etapes ´
etudi´
ees nous
donne finalement l’algorithme 1.
Algorithme 1 Renversement sign´
e(π)
1: Calculer les composantes connexes de OV (π)
2: Supprimer les obstacles
3: while πn’est pas tri´
edo
4: trouver une clique joyeuse Cdans OV (π)
5: trouver un sommet efCayant le plus de voi-
sins non-orient´
es
6: effectuer le renversement s ˆ
ur sur ef
7: mettre `
a jour πet la repr´
esentation de OV (π)
8: end while
9: Afficher la s´
equence de renversements trouv´
ee
L’algorithme propos´
e trouve la distance de renverse-
ment ren temps O((n) + rn)et donc en O(n2). La preuve
de validit´
e de l’algorithme d´
ecoule des diff´
erents th´
eor`
emes
et lemmes pr´
esent´
es aux diff´
erentes ´
etapes.
R´
EF ´
ERENCES
*
[Cap99] Alberto Caprara. Sorting permutations by rever-
sals and Eulerian cycle decompositions. SIAM
Journal on Discrete Mathematics, 12(1) :91–110,
1999.
[KST97] H. Kaplan, R. Shamir, and R. Tarjan. Faster and
simpler algorithm for sorting signed permutations
by reversals, 1997.
1 / 3 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !