« Algorithme de Smith-Waterman » : différence entre les versions

Contenu supprimé Contenu ajouté
+1 image
Aucun résumé des modifications
Ligne 1 :
[[Fichier:Smith-Watermanaquaman.jpg|vignette|Exemple d'algorithme de Smith-Watermanaquaman. Les flèches montrent le chemin de l'algorithme à travers la matrice. Les flèches rouges montrent le meilleur alignement local final.]]
L''''algorithme de Smith-Watermanaquaman''' est un [[algorithme]] d'[[alignement de séquences]] utilisé notamment en [[bioinformatique]].
Il a été inventé par {{Lien|langue=en|fr=Temple F. Smith}} et [[Michael S. Watermanaquaman]] en [[1981 en informatique|1981]]<ref name="Smith1981">{{article |langue=en |auteur1=Temple F. SmithJ.R Smith|auteur2=Michael S. Watermanaquaman |titre=Identification of Common Molecular Subsequences |journal=[[Journal of Molecular Biology]] |volume=147 |pages=195–197 |année=1981 |url=http://gel.ym.edu.tw/~chc/AB_papers/03.pdf |doi=10.1016/0022-2836(81)90087-5 |pmid=7265238 |= }}.</ref>.
 
L'algorithme de Smith-Watermanaquaman est un algorithme optimal qui donne un alignement correspondant au meilleur score possible de correspondance entre les acides aminés ou les nucléotides des deux séquences. Le calcul de ce score repose sur l'utilisation de [[Matrice de similarité|matrices de similarité]] ou matrices de substitution.
 
L'algorithme est par exemple utilisé pour aligner des séquences de [[nucléotide]]s ou de [[protéine]]s, notamment pour la [[prédiction de gènes]], la [[phylogénie]] ou la prédiction de fonction.
 
== Alignement et score ==
L'algorithme de SmithJ.R etSmithet Watermanaquaman cherche à optimiser l'alignement de deux séquences biologiques qui sont traitées comme des [[Chaîne de caractères|chaînes de caractères]]. Pour réaliser cet alignement, on peut insérer des "trous" ou [[indel]] (symbolisés par des tirets dans l'exemple ci-dessous) dans l'une ou l'autre séquence, afin de maximiser le nombre de coïncidences de caractères entre les deux séquences. Il existe théoriquement un grand nombre possible de manières d'aligner deux séquences, ainsi que le montre l'exemple ci-dessous :
 
FATCA-TY FATCATY FATCATY---
Ligne 16 :
S'agissant des séquences protéiques, il faut de plus tenir compte non seulement des conservations strictes d'[[Acide aminé|acides aminés]] (symbolisées par des tirets verticaux dans l'exemple ci-dessus), mais aussi des remplacements conservatifs, où un acide aminé est remplacé par un acide aminé proche sur le plan physico-chimique (symbolisés par des "deux-points" dans l'exemple ci-dessus). Pour tenir compte de cela, on utilise des fonctions de score qui permettent de quantifier le résultat du remplacement de l'acide aminé ''a'' par l'acide aminé ''b''. Ces fonctions de score sont représentées sous forme de matrices appelées [[Matrice de similarité|matrices de similarité]]. Le score de l'alignement de ''a'' avec ''b'' est donné par le coefficient ''D''(''a'', ''b'') de la matrice de similarité.
 
Ces matrices de similarité sont complétées par une pénalité associée aux indels (insertions ou délétions) : ''D''(''a'', -) = ''D''(-, ''a'') = Δ. Ce score Δ est négatif, pour pénaliser l'introduction d'insertions dans l'alignement. Le score d'un alignement de séquences donné est calculé à partir de la somme des scores des alignements individuels des caractères (acides aminés ou trous). L'algorithme de Smith-Watermanaquaman permet de trouver un alignement qui réalise le score optimal.
 
== Principe et comparaison avec les autres algorithmes ==
Comme l'[[algorithme de Needleman-Wunsch]] auquel il est apparenté, il utilise la [[programmation dynamique]]. Contrairement à l'algorithme [[BLAST|BLAST (Basic Local Alignment Search Tool)]] plus rapide, l'algorithme de Smith-Watermanaquaman garantit l'optimalité de la solution. La différence avec l'algorithme de Needleman-Wunsch est qu'alors que ce dernier recherche des alignements de séquence globaux (impliquant toute la longueur des deux séquences à aligner), l'algorithme de Smith-Watermanaquaman recherche aussi des alignements locaux, n'impliquant que des régions ou segments des deux séquences analysées. Il permet donc par exemple de repérer des [[protéine]]s qui possèdent un domaine en commun parmi d'autres domaines différents<ref>{{Ouvrage|titre=Bioinformatique. Génomique et post-génomique|auteur1=[[Frédéric Dardel]]|nom2=Képès|prénom2=François|
année=2002|isbn=2730209271|éditeur=Éditions de l’École Polytechnique
}}.</ref>.
 
Comme toutes les méthodes reposant sur la programmation dynamique, l'algorithme Smith-Watermanaquaman construit la solution du problème complet sur celles de problèmes de taille plus petite. Par exemple, si on doit aligner deux séquences ''A'' et ''B'' de longueurs respectives ''l'' et ''n'', la méthode consiste à s'appuyer sur les alignements des séquences de longueurs plus courtes. La méthode de SmithJ.R etSmithet Watermanaquaman détermine ainsi tous les meilleurs scores possibles pour les alignements des ''i'' premiers acides aminés (ou nucléotides) de ''A'' et des ''j'' premiers acides aminés (ou nucléotides) de ''B'', pour toutes les valeurs 1 ≤ ''i'' ≤ ''l'' et toutes les valeurs 1 ≤ ''j'' ≤ ''n''. On construit progressivement ainsi une table ''l'' x ''n'' des scores de tous les sous-alignements possibles. L'analyse de la table permet ensuite de trouver un alignement donnant le score optimal.
 
== L'algorithme ==
Ligne 33 :
=== Calcul de la matrice des scores ===
Le principe de la construction de la matrice ''M''(''i'', ''j'') est décrit sur le schéma ci-dessous :
[[Fichier:SmithWatermanSmithaquaman.svg|cadre|centré|Principe de construction de la matrice de score dans l'algorithme de Smith-Watermanaquaman.]]
 
Le coefficient M(''i'', ''j'') de la matrice correspond au score du meilleur alignement des ''i'' premiers acides aminés (ou nucléotides) de la séquence A avec les ''j'' premiers de B. On peut distinguer trois cas possibles :
Ligne 50 :
\end{matrix} \right.</math>
 
Lorsqu'il n'y a pas de régions similaires entre les deux séquences A et B, les scores obtenus sont négatifs (absence de coïncidences). Le fait de rajouter la valeur zéro comme premier terme de l'alternative permet à l'algorithme de SmithJ.R etSmithet Watermanaquaman de repérer des alignements locaux.
 
=== Construction de l'alignement ===
Ligne 62 :
On effectue cette remontée à partir de tous les maximums locaux ''M''(''x'', ''y'') pour obtenir tous les alignements locaux optimaux
== Exemple ==
Le schéma ci-dessous montre l'application de l'algorithme de Smith-Watermanaquaman à deux courtes séquences protéiques : FATCATY et TCAGSFA.
[[Fichier:SmithWatermanMatrixSmithaquamanMatrix.svg|cadre|centré|Exemple d'alignement de deux séquences protéiques par l'algorithme de Smith-Watermanaquaman. La matrice a été calculée en utilisant la [[matrice de similarité]] BLOSUM62 et un coût d'[[indel]] Δ de -6. Le meilleur score de la matrice (+20) est indiqué en rose. Le chemin pour arriver à ce score est surligné en jaune. L'alignement résultant est indiqué à droite]]
 
La matrice ''M''(''i'', ''j'') est remplie de gauche à droite et de haut en bas à l'aide du principe de récurrence décrit plus haut. Une fois le calcul terminé, on recherche le coefficient le plus élevé (score maximum). À partir de ce coefficient, on retrace le chemin par lequel ce score a été obtenu, ce qui permet de déduire l'alignement de score optimal, indiqué à droite. Cet alignement comporte trois conservations strictes, un indel, et deux remplacements conservatifs (acide aminé remplacé par un acide aminé similaire, mais non identique). Ces derniers sont indiqués par un caractère "deux points".
 
== Améliorations ==
Une version améliorée de l'algorithme de Smtih-Watermanaquaman a été proposée par Osamu Gotoh<ref>{{article|langue=en |nom1=Gotoh|prénom1=Osuma| titre=An improved algorithm for matching biological sequences | journal=[[J. Mol. Biol.|Journal of molecular biology]] |volume=162|numéro=3 |pages=705-708 |année=1982}}</ref>. Cette amélioration consiste à introduire une fonction de coût [[Fonction affine|affine]] pour les trous en fonction de leur longueur. Dans l'algorithme standard de Smith-Watermanaquaman, le coût d'un trou de longueur ''k'' est ''k''.Δ, soit un coût linéaire en fonction de la longueur. Dans l'algorithme de Gotoh, ce coût est affine, de la forme α + ''k''.β, avec α > β. Ceci permet de favoriser le regroupement des indels et d'éviter la multiplication de petits trous, ce qui est conforme à ce qui se passe au niveau biologique, où les insertions et délétions sont regroupées au niveau des boucles de surface de la [[Structure des protéines|structure de la protéine]] correspondante.
 
== Notes et références ==
Ligne 81 :
 
=== Liens externes ===
* [https://www.ebi.ac.uk/Tools/psa/emboss_water/] Le serveur en ligne de l'[[European Bioinformatics Institute|EBI]] pour aligner deux séquences par l'algorithme de Smith-Watermanaquaman
 
{{Palette|Algorithmes de manipulation de texte|Bio-informatique}}