Gap de longueur k: Pénalités linéaires: w = o + e k
o : pénalité pour l'ouverture d'un gap
e : pénalité pour l'extension d'un gap
Pondération des gaps (plus réaliste)
Estimation des paramètres sur des alignements "vrais" (par exemple basés sur l'alignement de structures connues)
Gap de longueur k:
Pénalités logarithmiques: w = o + e log(k)
w = f(log(k), log(PAM), résidus, structure)
PAM: la probabilité d'un gap augmente avec la distance évolutive
Résidus, structure: la probabilité d'un gap est plus forte dans une boucle (hydrophile) que dans le cœur hydrophobe des protéines
Similarité globale, locale
Similarité, distance, homologie
Deux séquences sont homologues ssi elles ont un ancêtre commun
30% d'identité entre deux protéines => homologie, sauf si
Fragment similaire court (< 100 aa)
Biais compositionnel (régions de faible complexité, par exemple riche en Pro, Ala)
Le nombre d'alignements
Waterman (1984) a donné la formule récursive permettant de calculer le nombre total d’alignements possibles entre deux séquences comportant m et n résidus :
D’autre part, Laquer (1978) a démontré que :
Le nombre total d’alignements possibles entre deux séquences de même longueur croît de façon exponentielle.
Algorithmes d'alignement de deux séquences
Algorithme: description d'une suite d'opérations pour atteindre un objectif
Calculer l'ensemble de tous les alignements possibles et garder celui de meilleur score
Trop long (nombre d'alignements = f(exp(L))
Pas efficace (on recalcule souvent les mêmes valeurs)
G T T A C G A G T T A C G A
G T T - G G A G T T G - G A
* * * * * *
Algorithme de programmation dynamique
Calcul de proche en proche de l'alignement optimal
Définition de la matrice de chemins
Les alignements peuvent être représentés sous la forme d’une trajectoire dans une matrice de chemins.
Soit deux séquences A et B de longueurs respectives m et n définissant une matrice de chemin S. Dans chaque case de cette matrice on va stocker S(i, j), le score optimum de la trajectoire permettant d’arriver à cette case.
Exemple de matrice de chemin
Construction récursive de la matrice
Soit la case de coordonnées (i, j). Quelle que soit la trajectoire retenue, elle passera forcément par l’une des trois cases la précédant, de coordonnées (i–1, j), (i–1, j–1), (i, j–1).
Supposons que l’on connaisse les scores optimums des trois cases précédentes, dans ce cas la valeur optimum du score dans la case (i, j) sera égale à :
Needleman et Wunsh, 1970
Bords de la matrice
Les cases situées sur le bord du haut ou le bord gauche de la matrice ne possèdent plus le total requis de trois cases précédentes.
Pour pallier ce problème on ajoute une ligne (0, j) et une colonne (i, 0) supplémentaires. Le balayage de la matrice ne se faisant plus qu’avec des indices ≥ 1 on ne rencontre plus de cases nécessitant un traitement particulier.
Bords de la matrice (suite)
La ligne et la colonne supplémentaires doivent être initialisées pour pouvoir construire la matrice.
Il existe plusieurs manières de faire selon la façon dont on veut comptabiliser les gains ou pertes d’éléments au niveau des extrémités.
En particulier, il faut savoir si on veut pénaliser ou non les éléments terminaux non appariés (ce que l’on appelle les extrémités flottantes).
- - - A T T C G T A T - - - T C G T
A T G A T T C G T A T G A T T C G T
* * * * * * * * * * * *
Bords de la matrice (fin)
Pénalisation des gaps terminaux
Pas de pénalisation des gaps terminaux
Alignement local (Smith-Waterman)
Initialisation des bords de la matrice de chemin à 0
Temps de calcul et occupation de la mémoire pour l'alignement de deux séquences de longueur n et m
Needleman-Wunsh
Temps: O(n m)
Espace mémoire: O(n m)
Amélioration: éliminer les chemins qui s'éloignent trop de la diagonale
Représentation graphique de régions d'identité ou de similarité entre deux séquences
Utilisation de fenêtres et de seuils pour réduire le bruit de fond
Visualisation des inversion, duplications, palindromes
Recherche rapide de similarités dans les banques de séquences
Comparaison d'une séquence à toute une banque de données de séquences, comparaisons entre deux banques …
Algorithmes exhaustifs (Smith-Waterman)
DAP, BLITZ, SSEARCH, …
Algorithmes basés sur des heuristiques
FASTA
1 - recherche de ‘ k-tuplets ’ identiques
2 - alignement global, ancré sur la région similaire
BLAST
1 - recherche de ‘ mots ’ similaires
2 - extension des blocs similaires
BLAST
Alignement par bloc ou alignement global : comparaison BLAST / FASTA
Stratégies de recherche de similarités: ADN ou protéine ?
Limites des recherches de similarité au niveau ADN
Alphabet réduit (4 lettres)
Dégénérescence du code génétique
Mais … tout n'est pas codant
régions régulatrices, ARN structuraux, ...
Différentes versions de BLAST adaptées à différents problèmes
blastp: protéine/protéine
blastn: ADN/ADN (utile pour non-codant)
blastx: ADN-traduit/protéine (utile pour séquences codantes non-identifiées; plus sensible que blastn)
tblastn: protéine/ADN-traduit (utile pour rechercher des homologues de gènes protéiques dans un génome non-entièrement annoté; plus sensible que blastn)
Choix de la matrice de substitutions
Différentes matrices de substitutions, adaptées à différentes distances évolutives
BLOSUM 62: convient pour une large gamme de distances évolutives
Parmi les similarités qui ont été détectées, quelles sont celles qui reflètent des relations biologiquement importantes, quelles sont celles qui sont simplement dues au hasard ?
Distribution des scores d'alignements locaux optimaux entre séquences non homologues
Probabilité qu'une similarité de score S soit simplement due au hasard
Traitement du bruit de fond: filtres et masques
Similarités sans intérêt biologique
Séquences de faible complexité (protéines, ADN):
40% des protéines ADN: microsatellites
15% du total des résidus exemple: CACACACACACACACACA
Ala, Gly, Pro, Ser, Glu, Gln
logiciels de filtrage: SEG, XNU, DUST
RSPPR--KPQGPPQQEGNNPQGPPPPAGGNPQQPQAPPAGQPQGPP
. ::: : :: : : ::::: : :: :.: :: : :::::
QGPPRPGNQQCPPPQGG--PQGPPRP--GNQQRP--PPQGGPQGPP
Séquences abondantes
3000 Immunoglobulines dans GenBank
106 Alu, 105 L1 dans le génome humain
logiciels de masquage: XBLAST, RepeatMasker
Bilan: quelle approche adopter ?
algorithme
matrices de substitution, pondération des gaps
stratégie de recherche (nucléique, protéique)
traitement du bruit de fond
complétude des banques de données
1 - logiciel rapide, paramètres par défaut
2 - filtrage éventuel
3 - changement des paramètres (matrices, W, k, etc.)
La généralisation de l’algorithme précédent au traitement simultané de plus de deux séquences est théoriquement possible mais inexploitable en pratique.
Pour un alignement de n séquences le nombre de chemins possibles pour chaque case est de 2n – 1.
On a une croissance exponentielle du temps de calcul et de l'espace mémoire requis en fonction du nombre de séquences.
Problème du choix d ’une fonction de score
Utilisation de méthodes heuristiques.
Alignement progressif
Approche consistant à construire itérativement l’alignement multiple en groupant des alignements de paires de séquences.
Ce genre de méthodes comporte trois étapes :
L’alignement des paires de séquences.
Le groupement des séquences.
Le groupement des alignements (alignement progressif).
CLUSTAL (Thompson et al., 1994), le programme d’alignements multiples le plus utilisé à l’heure actuelle utilise cette approche.
Pénalités initiales pour les gaps
CLUSTAL utilise une fonction de pénalité linéaire pour les gaps. De plus, les valeurs initiales de o et e sont corrigées en fonction de nombreux facteurs :
Le degré de similarité entre les séquences :
o %identité(A, B)
La longueur des séquences :
o log[min(m, n)]
La différence de longueur entre les deux séquences :
e 1.0 + log[n/m]
Ces pondérations sont prises en compte au moment de l’alignement des paires de séquences.
Pénalités en fonction de la position
CLUSTAL introduit également des pondérations qui sont dépendantes de la position des gaps.
Diminution de la pénalité à l’emplacement de gaps préexistants.
Augmentation de la pénalité au voisinage (8 résidus) de gaps préexistants.
Réduction de la pénalité au niveau de régions contenant des suites d’acides aminés hydrophiles (≥ 5 résidus).
Modification spécifiques en fonction des acides aminés présents (e.g., la pénalité est plus faible avec Gly, Asn, Pro).
Ces pondérations sont prises en compte au moment du groupement des alignements.