TP1 : Dot Plot et Programmation dynamique

Ce TP issu d'un TP de Jean-Stéphane Varré (LIFL, Lille).

I. Introduction

Les logiciels que nous allons utiliser sont majoritairement issus de la suite EMBOSS (EMBOSS homepage). Ils sont disponible à plusieurs endroits :

Pour ce TP, nous allons utiliser EMBOSS Explorer sur le site de Wageningen Bioinformatics (centre de bioinformatiques de Wageningen), au Pays-bas. Nous verrons l'utilisation de Galaxy plus tard dans le module.
Dans l'interface EMBOSS Explorer, vous obtenez l'aide en suivant le lien read 'the manual'.
Il existe deux modes, l'un simple, l'autre dit avancée. Dans la version simple, seuls quelques paramètres peuvent être modifiés, les autres étant choisis par défaut. Nous utiliserons systématiquement la version avancée.

Flèche vers le haut

II. Recherches avec le dotplot et les outils d'alignement

II-1. Premiers tests

Nous allons principalement utiliser tout au long de ce TP les 4 logiciels suivants : dotpath, dotmatcher, stretcher et matcher. Il est conseillé d'ouvrir un logiciel par onglet de votre navigateur et ne les fermer qu'à la fin du TP.

Nous allons utiliser deux logiciels pour effectuer les dotplots :

  • dotpath qui permet de dessiner un dotplot avec une taille de fenêtre fixée (param.=windowsize) ;
  • dotmatcher qui permet de filtrer les fenêtres avec un seuil (param.=threshold).

Et les deux autres pour les alignements :

  • stretcher pour l'alignement global ;
  • matcher pour l'alignement local.

Aller sur EMBOSS Explore et regarder les différentes logiciels qui sont mis à disposition (mode simple/avancé, manuel, options, ...).
Préparer votre navigateur pour l'utilisation de ces 4 logiciels.
Flèche vers le haut

II-2. Introns / exons

Sauvegarder sur votre disque les séquences nucléiques xl-actin-DNA.fa et xl-actin-mRNA.fa, elles sont au format FASTA (comme l'indique leur extension).
Essayer le logiciel dotpath avec la taille de fenêtre par défaut et en sélectionnant ou déselectionnant l'option 'Display the overlapping matches'. Essayer avec d'autres tailles de fenêtre.
En déselectionnant l'option 'Display the overlapping matches', vous demandez au logiciel de ne conserver que les fenêtres non chevauchantes.
Que constatez-vous ?
En fait, la première séquence est l'ADN d'un gène de l'actine chez Xenopus laevis et la seconde l'ADNc de ce même gène.
Combien le gène compte-t-il d'exons ?
Essayer le logiciel dotmatcher avec les paramètres par défaut. Faites varier le paramètre de seuil jusqu'à retrouver le résultat obtenu avec dotpath.
Les matrices disponibles dans EMBOSS se trouvent ici.
Jouez sur le paramètre de la matrice de score et observez le résultat.
Le seuil, ou threshold, en paramètre de dotmatcher correspond au score d'alignement au delà duquel la fenêtre est affichée. C'est pour cela qu'en faisant varier les matrices on obtient des dotplots différents.
Pour repérer exactement les sites d'épissage, faites un alignement global de ces deux séquences avec stretcher. Testez ce logiciel en fixant comme pénalité d'ouverture de gap 12 et comme pénalité d'extension de gap 1.
Que retrouvez-vous ?
À quelles positions se trouvent les introns et les exons ?
Cela est-il cohérent avec les données contenues dans la fiche GenBank de cette séquence ?
Flèche vers le haut

II-3. Séquence nucléique / séquence protéique

Nous allonst maintenant aborder un exemple chez l'homme et la souris : les séquences nucléiques et protéiques des gènes pl6.
Récupérez les quatre séquences pl6_human.adn, pl6_mouse.adn, pl6_human.seq et pl6_mouse.seq.
Construisez le dotplot des séquences ADN puis le dotplot des séquences protéiques avec dotmatcher.
Sur quel type de séquence la similarité est-elle la plus visible ?
Comparez maintenant les séquences avec l'algorithme d'alignement global stretcher.
Notez les pourcentages de similarité dans chaque cas.
Sur quel type de séquence la similarité est-elle la plus visible ?
Conclusion ?
Flèche vers le haut

II-4. Conservation de domaine

Vous allez maintenant comparer deux autres séquences: ce sont deux facteurs de transcription krox 24 et sp1, contenus dans les fichiers krox24.seq et sp1.seq.
Construisez un dotplot avec dotmatcher de ces deux séquences.
Vous devez observer une similarité locale : c'est un motif doigt de zinc, impliqué dans la liaison à l'ADN.
Comparez ensuite les deux séquences avec un alignement local en utilisant matcher. Retrouver le résultat précédent.
Vérifiez dans les fiches de ces deux séquences les bornes exactes des motifs doigt de zinc dans chacune d'elle : krox24 et sp1
Flèche vers le haut

II-5. Analyse d'une séquence

Le dotplot peut également être utilisé pour étudier les régularités structurelles d'une séquence. Vous allez tester cette approche sur les deux exemples suivants.

1. Localisation de répétitions :

Analysez avec dotpath la séquence de rétrotransposon de tabac contenue dans le fichier ben2.seqn (activez l'option 'Display the overlapping matches').
En jouant sur le paramètre de taille de fenêtre, identifiez le nombre de répétitions significatives ?
Coupez votre séquence en deux tel que chaque moitié contienne une répétition. Faite un alignement local avec matcher de ces 2 moitiés pour identifiez plus précisément le motif répété.
En vous aidant de la fiche de cette séquence, pouvez-vous suggérer quel est ce motif répété ?

2. Faible complexité :

Pour illustrer la présence de régions de faible complexité, nous allons étudier la séquence contenue dans le fichier falciparum.seq avec dotmatcher. En faisant varier les paramètres, vous devez observer quatre tâches.
À quoi cela correspond-il ?
Flèche vers le haut

II-6. Programmation dynamique live

Vous pouvez jeter un coup d'oeil sur ce site web si votre ordinateur vous le permet (Applet Java)....
Il permet de réaliser un calcul d'alignement local, de visualiser la matrice de programmation dynamique et le backtracking.
Changez les séquences et les paramètres. Par exemple, reprenez les données de l'exercice 2 du TD1.
Flèche vers le haut

III. Significativité des scores

Le logiciel prss permet de tester la significativité entre deux séquences. Il crée une séquence aléatoire de même composition que la seconde séquence fournie et effectue un algorithme d'alignement. Il répète cela plusieurs fois.

Recupérer le fichier test qui contient 2 séquences relativement éloignées. Testez prss avec ces deux séquences.
Pour lire le résultat, il faut trouver le score d'alignement entre les 2 séquences, généralement en dessous de s-w (pour smith-waterman) et le nombre attendu de fois où le score d'alignement avec une séquence mélangée dépasse ce score, généralement pas loin, en dessous de E(nombre).
Le résultat est-il celui attendu ?
Refaites le même test mais avec deux séquences proches (par exemple avec les séquences protéiques d'homme et de souris de l'exercice II-3).
Flèche vers le haut

IV. Enzymes TPP - Thiamine Phosphate dependent enzymes - (FACULTATIF)

Copier les séquences des deux protéines ILV1_TOBAC et ILVB_ARATH.
Afin d'avoir une idée de la ressemblance entre ces séquences, effectuez un dotplot avec dotpath.

IV-1. Pénalités associées aux gaps

Effectuez un alignement global avec le logiciel stretcher en prenant comme paramètres : pénalité d'ouverture de gap = 2, pénalité d'extension de gap = 2, matrice de scores = EPAM60.
Enregistrez le fichier résultat et retenez la valeur du score et du % d'identité (ou plus simplement laissez cet onglet ouvert et effectuez la prochaine recherche dans un autre onglet).
L'alignement obtenu est spécifique aux valeurs de paramètres.
Effectuez maintenant un alignement global avec le logiciel stretcher en prenant comme paramètres : pénalité d'ouverture de gap = 12, pénalité d'extension de gap = 2, matrice de scores = EPAM60. Comparez le résultat avec l'alignement précédent.
Quelles différences remarquez-vous ?
Quelle est celui des deux alignements qui vous paraît le plus pertinent ?
Nous voyons ici l'effet des fonctions de gaps. D'autre part, cela met en évidence qu'un alignement de meilleur score n'est pas forcément le meilleur alignement entre deux séquences.
Flèche vers le haut

IV-2. Alignement local

Les alignements locaux sont souvent plus utiles que les alignements globaux. Les séquences proches partagent le plus souvent des régions similaires et non leur totalité.
Nous allons tenter d'identifier si un fragment inconnu de protéine est relatif à la protéine précédente ILV1_TOBAC.
Récupérer la séquence inconnue suivante: fragment_inconnu.
Effectuez un alignement global avec stretcher entre ce peptide et ILV1_TOBAC avec comme paramètres la matrice de score EBLOSUM45 et le jeu de pénalités de gaps 12/2.
Que pensez-vous de cet alignement ?
Comment expliquez-vous ce résultat ?
Faites maintenant un alignement local avec matcher avec les mêmes paramètres. Choisissez de voir les 10 meilleurs alignements locaux (paramètre 'Number of alternative matches'). Observez combien des alignements de scores proches ou identiques peuvent être différents.
Afin de vérifier si ces alignements locaux sont pertinents, il faudrait rechercher les domaines correspondant aux séquences traitées. Vous verrez cela dans les cours et TP suivants.
Flèche vers le haut

IV-3. Alignement local avec des protéines de taille similaire

Faites un alignement local avec matcher entre ILV1_TOBAC et ILVB_ARATH (matrice EBLOSUM62, gaps 12/2, 10 alignements).
Que dire du premier alignement ?
Les autres alignements permettent de mettre en avant quelques conclusions trop hatives qui pourraient être faites à partir des résultats d'un alignement local.
Observez les alignements numéro 6 et 8. Comparez leurs scores, leurs pourcentages d'identité et leurs longueurs.
Quelles conclusions peut-on en tirer ?
Flèche vers le haut

IV-4. Matrices de score (A FAIRE APRES LE CM2 lors de la séance de TP du 7/02)

Copier la protéine PDC1_MAIZE.
Les séquences précédentes (ILV1_TOBAC et ILVB_ARATH) sont de la famille des enzymes Thiamine Pyrophosphate (TPP). PDC1 est également de cette famille mais plus éloignée.
Effectuez un alignement global entre ILVB_ARATH et PDC1_MAIZE avec stretcher avec comme paramètres : matrice=EBLOSUM62, ouverture de gap=12, extension de gap=2.
Remarquez combien le score de cet alignement et le pourcentage d'identité sont faibles.
Pensez-vous que ce soit un bon alignement ?
Pensez-vous que la matrice BLOSUM62 soit adéquat dans ce cadre ?
Quelle matrice pourrait être meilleure ? Pourquoi ?
Refaites cet alignement avec une matrice que vous pensez être meilleure. (Les matrices disponibles dans EMBOSS se trouvent ici)
Qu'en pensez-vous ?
Essayons avec les matrices PAM.
Construisez les alignements avec EPAM30 et EPAM350.
Quel est le meilleur alignement ?
Était-ce prévisible ?

En confrontant les résultats de l'alignement avec les structures secondaires, on dispose d'un critère de décision supplémentaire pour juger de la validité d'un alignement.

Il faut retenir que les matrices de scores affectent les résultats d'un alignement et qu'il est difficile de juger de la qualité d'un alignement de deux séquences. Le choix de la matrice dépend de la divergence qu'ont les deux séquences étudiées, les meilleurs résultats étant obtenus lorsque on utilise la matrice la plus sensible par rapport au niveau de divergence réel des séquences.