• Aucun résultat trouvé

Les Méthodes d’Alignement de Deux Séquences

Définition 1.1: Un système de score est le coût à attribuer aux opérations élémentaires (identité, substitution, délétion et insertion) de comparaisons de séquences

1.7.7 Les Méthodes d’Alignement de Deux Séquences

GOP(x) : la pénalité fixe d’ouverture d’insertion indépendante de la longueur (GOP : Gap Open Penalty)

GEP(x) : la pénalité d’extension pour un gap (GEP : Gap Extension Penalty) L : la longueur du gap.

Avec ce système, une longue insertion est plus pénalisante qu’une courte, ce qui revient en fait à minimiser l’introduction même d’une insertion. Autrement dit, on facilitera souvent dans un alignement le fait d'avoir peu d'insertions, éventuellement longues, plutôt que d'avoir beaucoup d'insertions d'un seul élément.

En général, La pénalité d’ouverture est plus grande que celle d’extension (inspiré des mécanismes évolutif)

Le score total d’un alignement avec gap est la somme des scores d’identité ou de substitution des résidus alignés auquel on retranche les pénalités d’ouverture et d’extension de gaps.

• Exemple :

Le score de cet alignement devient en utilisant une fonction affine avec : Si l’on considère l’exemple précédent :

Score (identité) = 2 Score (substitution) = 1 Score (GOP) = -2 Score (GEP) = -1

Le score de cet alignement serait alors :

SEQ1 : G A R F I E V H E L - - T F A T T C A T

SEQ2 : G A R F I E L T H E V A S Y F - - C A T score total 2+2+2+2+2+2 +1+1 +1+1 -2 -1 +1+1+1 -2 -1 +2+2+2 = 19 Une autre version de la fonction affine :

P = GO P + GEP * log (L) (1.3)

Dans la littérature, on trouve plusieurs forme de la fonction affine telle que la fonction affine généralisée et autres, mais la fonction affine (formule (1.2) est pour l’instant la plus utilisée par les méthodes d’alignement pour des raisons de complexité (O(mn) avec m et n tailles des séquences alignées).

Les différentes méthodes d’alignements considèrent que les gaps situés à la fin d’une séquence ne doivent pas pénaliser un alignement car ils sont considérés meilleurs que ceux introduits au milieu.

1.7.7 Les Méthodes d’Alignement de Deux Séquences

Il existe deux types d’alignements de séquences : global et local.

Le premier prend en considération l'ensemble des résidus de chacune des séquences. Si les longueurs des séquences sont différentes, alors la plus courtes va subir des insertions de gaps afin d’arriver à aligner les deux séquences d'une extrémité à l'autre. Cependant dans un alignement global, si uniquement des segments courts sont très similaires entre deux séquences, les autres parties des séquences risquent de diminuer le poids de ces régions. C'est pourquoi d'autres algorithmes d'alignements, dits locaux, basés sur la localisation des zones de similarité sont nés. Le but de ces alignements locaux est de trouver sans prédétermination de longueur les zones les plus similaires entre deux séquences. L'alignement local comporte donc une partie de

chacune des séquences et non la totalité des séquences comme dans la plupart des alignements globaux

v Alignement Global

Plusieurs méthodes ont été développées afin de réaliser un alignement global de deux séquences le plus correct que possible. Parmi ces méthodes et qui sont toujours utilisées on trouve des méthodes graphiques et autres qui utilisent la programmation dynamique.

§ Le DotPlot

C’est un outil graphique [Staden, 82] qui réalise l’alignement de deux séquences.

Ayant deux séquences X et Y à aligner. Une manière intuitive consistait en une présentation matricielle de l’alignement. La matrice de point (dot-matrix), peut être construite ainsi : - chacun des deux axes correspond à une séquence (Figure 1.19)

- une croix si xi = yj (où xj est un élément de la première séquence X et yj un élément de la deuxième séquence Y, sinon rien.

- Si une suite de croix consécutives dans une diagonale est observée alors ceci indique des identités (similitude) entre des parties des deux séquences.

Figure 1.19 : Dotplot de deux séquences

Cette méthode peut également être utilisée pour rechercher sur une séquence des répétitions directes ou des palindromes en comparant la séquence sur elle-même.

Cette méthode est très simple d’utilisation mais l’interprétation des résultats obtenus est difficile.

§ Méthode Exacte ou Programmation Dynamique

Pour pouvoir comparer deux séquences de longueur L, il faut un temps de calcul proportionnel à L². L'exploration de chaque position de chaque séquence pour la détermination éventuelle d'une insertion augmente le temps de calcul d'un facteur 2*L. La programmation dynamique est un moyen qui permet de limiter cette augmentation pour conserver un temps de calcul de O(L²). Elle est basée sur le fait que tous les évènements sont possibles et calculables mais que la plupart sont rejetés en considérant certains critères. Needleman et Wunsch (1970) sont les premiers à avoir introduit ce type d'approche pour un problème biologique et leur algorithme reste une référence dans le domaine.

§ Algorithme Needleman & Wunsch

Basé sur la programmation dynamique (la récursivité), cet algorithme [Needleman et Wunsch, 70] ne calcule pas la différence entre deux séquences mais la similarité. Considérons deux séquences A(1,n) B(1,m).

Un tableau à deux dimensions est rempli ligne après ligne (en partant de la dernière) et pour chaque ligne, colonne après colonne (en partant de la dernière) en obéissant à la règle suivante :

Le score S(i,j) est le nombre maximum de correspondance entre les deux parties de séquences A(i,n) et B(j,m) (en prenant tous les chemins possibles à partir de (i,j)) et en appliquant une fonction de score :

• score pour une identité =1

• score pour une substitution, une insertion ou délétion = 0 La formule de récurrence est :

S(i,j) = max (1.4)

La similarité entre les deux séquences est égale à la valeur de S(1,1) et l'alignement est un graphe qui a pour origine S(1,1) et parcourt la matrice pour des i et j croissant en recherchant l'élément maximal voisin.

Exemple : Soient deux séquences protéiques « VTEERDEF » et « ITSHEAL ».

On construit la matrice initiale (Figure 1.20.A) à partir d’une matrice de substitution PAM 250 puis on procède à la transformation en appliquant les formules de l’équation 1.2, on obtient alors la matrice transformée (figure 1.20.B)

A : Matrice initiale B : Matrice transformée

Figure 1.20 : Construction de la Matrice transformée

Le but est ensuite de trouver le meilleur alignement global, à partir de la matrice transformée (Figure 1.20.B). Pour cela, on établit dans la matrice un chemin qui correspond au passage des scores sommes les plus élevés, ceci en s'autorisant trois types de mouvements possibles et en prenant comme point de départ le score maximum présent dans la matrice transformée (pour cet exemple : 14). Needleman et Wunsch nomment ce passage le chemin des scores maximum (Figure 1.21.A).

Les mouvements autorisés pour tracer le chemin sont :

a) le mouvement diagonal qui correspond au passage de la case (i,j) à la case (i+1,j+1). C'est le mouvement privilégié.

b) le mouvement vertical qui correspond au passage de la case (i,j) à la case (i,j+1), ce qui donne une insertion sur la séquence en i.

c) le mouvement horizontal qui correspond au passage de la case (i,j) à la case (i+1,j), ce qui donne une délétion dans la séquence en j.

Dans cet exemple, les pénalités pour les insertions ne sont prises en compte. On obtient l’alignement optimal suivant :

Si ai= bj +1 S(i, j+1) -1 + s(ai, bj), sinon S(i, j+1) + s(ai, bj) Si ai+1= bj+1 S(i+1,j+1) -1 + s(ai, bj), sinon S(i+1,j+1) + s(ai, bj) Si ai+1 = bj S(i+1,j) -1 + s(ai, bj), sinon S(i+1, j) + s(ai, bj) Avec évidemment S(n+1, j) = S(i, m+1) = 0

A : Le chemin des scores maximum B : L’alignement optimal obtenu Figure 1.21 : Passage de la matrice vers l’alignement

v Alignement Local

Ce type d’alignement est favorable aux séquences divergentes car un alignement global serait non significatif. Pour l’alignement Local, Smith et Waterman une méthode exacte qui permet d’aligner deux séquences en essayant d’aligner des segments communs ou motifs.

§ L'algorithme Smith & Waterman

L'algorithme de Smith et Waterman [Smith et Waterman, 81] est décrit pour l’alignement local de deux séquences. Il identifie les sous séquences maximales de deux séquences par programmation dynamique.

La différence essentielle de cet algorithme avec l'algorithme de Needleman et Wunsch est que n'importe quelle case de la matrice de comparaison (initiale) peut être considérée comme point de départ pour le calcul des scores sommes et que tout score somme qui devient inférieur à zéro stoppe la progression du calcul des scores sommes et il sera réinitialisé par la valeur 0. La case concernée peut être considérée comme nouveau point de départ. Cela implique que le système de score choisi possède des scores négatifs pour les mauvaises associations qui peuvent exister entre les éléments des séquences.

L'équation utilisée pour le calcul de chaque score somme pendant la transformation de la matrice initiale prend alors l'expression suivante:

S(i,j) = max (1.5)

Où S(i,j) est le score somme de la case d'indice i et j, Sc le score élémentaire de la case d'indice i et j de la matrice initiale issu d’une matrice de substitution et P la pénalité donnée pour une insertion.

Exemple :Si l’on considère les séquences de l’exemple précédent, la Figure 1.22.A montre la matrice initiale construite à partir d’une matrice de substitution PAM250 et où l’on a conservé que les scores positifs ou nuls et éliminé les scores négatifs. Le score des pénalités

Sc(i,j)+ S(i+1, j+1) Sc(i,j)+ max S(x, j+1) -P Sc(i,j)+ max S(i+1, y) - P

d’insertion/délétion est fixé à la valeur 6. La transformation de matrice initiale donnera après application des formules de l’équation 1.3, la matrice transformée suivante (Figure 1.22.B):

A : Matrice initiale B : Matrice transformée

Figure 1.22 : Construction de la matrice transformée

Pour déterminer l’alignement local optimal, on démarre à partir de la case qui possède le meilleur score et on se dirige vers la diagonale de préférence. Sinon on effectue les mouvements décrits précédemment pour l’algorithme Needleman et Wunsch.

A : le chemin optimal B : l’alignement local optimal Figure 1.23 : Déter mination de l’alignement optimal

La construction du chemin correspondant à l’alignement local optimal, il débute à la position où se trouve le score maximum de la matrice transformée ici c’est le score 9.

Si les régions trouvées entre les deux séquences recouvrent la totalité de celles-ci, alors on peut considérer l'alignement local comme étant un alignement global.