AMU  :: L2  :: Bioinformatique appliquée  :: année 2012/2013

TD2 - Alignements par paires et matrices de substitutions


Contenu

[Retour à la table des matières]

Prérequis

Pour vous guider durant l'exécution des exercices, nous vous renverrons, tout au long du TD, à différentes sections de la page de définition des concepts.

Ce TD repose sur les supports de cours suivants.

[Retour à la table des matières]

Ressources

Ce tutoriel est basé sur les site web suivants.

Acronym Type Description+URL
Entrez Multi-database A collection of biomolecular databases maintained at the NCBI (USA), accessible via an interface called Entrez.
http://www.ncbi.nlm.nih.gov/Entrez/
UniProt Protein sequences UniProt - the Universal Protein Resource
http://www.uniprot.org/
dnadot Dot plots Draw nucleic acid dot plots, convenient for DNA/RNA alignment
http://www.vivo.colostate.edu/molkit/dnadot/
dotlet Dot plots Nice interface to dot plot, supporting DNA + proteins, substitution matrices, and displaying a histogram of window score values. Clear help page and very nice examples (low complexity, RNA secondary structure, ...).
http://myhits.isb-sib.ch/cgi-bin/dotlet
Alignment applet Dynamical programming algorithm A didactic tool to reproduce in a step-by-step mode the dynamical programming procedure
http://lectures.molgen.mpg.de/PracticalSection/AliApplet/index.html
PSA Sequence alignment EBI Pairwise Sequence Alignment tools (needle, water, ...)
http://www.ebi.ac.uk/Tools/psa/
BLOSUM Substitution matrices Series of BLOSUM matrices in various formats, with all the detail of computation + the software to build them.
ftp://ftp.ncbi.nih.gov/repository/blocks/unix/blosum/blosum.tar.Z
Standard ambiguity codes http://www.dnabaser.com/articles/IUPAC%20ambiguity%20codes.html
[Retour à la table des matières]

Objectifs pédagogiques

Le but général de ce TD est d'apprendre à manipuler les programmes permettant d'aligner une paire de séquences (nucléiques ou peptitdiques), et d'interpréter les résultats des alignements.

Les exercices nous amèneront progressivement à explorer les concepts suivants:

  1. alignements par matrice de pixel (dot plot);
  2. calcul du score d'un alignement;
  3. alignements globaux et locaux;
  4. matrices de substitutions (facultatif);
  5. algorithme de programmation dynamique (facultatif)

Au fil des exercices, nous tenterons progressivement de comprendre les mécanismes de l'alignement, et de nous guider dans le choix des programmes et des paramètres.

[Retour à la table des matières]

Dot plot

Contexte

Le dot plot est une représentation graphique qui permet de repérer les régions similaires entre deux séquences ou au sein d'une même séquence. Il ne fournit pas à proprement parler un alignement, mais permet déjà de détecter des similarités locales.

Buts de cet exercice

  1. Comprendre ce que représentent les éléments d'un schéma dot plot.
  2. Interpréter un graphique dotplot pour analyser la structure d'un gène.
  3. Interpréter d'autres types de particularités des séquences, que peuvent révéler un graphique dotplot.
[Retour à la table des matières]

Création de dot-plot à l’aide d’un tableur

  1. Ouvrez le second onglet de votre questionnaire (il apparaît au bas de la feuille, sous le titre "Dot plot" et observez la plage de cellules A1:O15.

  2. Dans la première ligne et colonne nous avons écrit la même séquence d'ADN.

  3. Dans chaque cellule i,j de cette plage, indiquez une fonction qui effectuera automatiquement la comparaison des bases i et j de la séquence, en indiquant "o" si les bases i et j sont identiques, et en laissant la cellule vide si ces bases diffèrent.

    • Utilisez la fonction =SI(test; Valeaur_si_vrai; Valeur_si_faux )

    • Utilisez les références absolues et relatives pour concevoir une formule que vous pouvez copier dans toutes les cellules de la matrice.

    • Si vous ne trouvez pas la réponse par vous-mêmes, vous pouvez vous inspirer de la formule de la cellule R2.

  4. Analysez les formules dans les cellules R2:AE15, et observez les diagonales qui s'affichent dans cette plage.

  5. Dans le troisième bloc (AI2:AV15), nous comparons la séquence originale avec la séquence réverse complementaire, qui se trouve dans la colonne AH. Que vous enseigne ce graphique ?

Questionnaire : Dot-plot - Création de dot-plot à l’aide d’un tableur

  1. Quelle formule avez-vous utilisée pour les cellules B2:O15 ? (Copiez ici la formule sans le signe "=")

  2. A quoi correspond la diagonale principale ?

  3. Quelle est la différence entre les dot-plots des zones B2:O15 et R2:AE15, du point de vue de la règle d'affichage ?

  4. Quelle est la différence entre les dot-plots des zones B2:O15 et R2:AE15, du point de vue du résultat obtenu ?

  5. A quoi correspondent les éléments diagonaux courts, clairement visibles du deuxième dot-plot?

  6. A quoi correspondent les éléments diagonaux courts de la zone AI2:AV15 ?

[Retour à la table des matières]

Comparaison d'un gène et son ARNm

  1. En partant de la fiche Uniprot décrivant l'opsine bleue humaine (P03999), identifiez la séquence du gène et celle de son ARNm, et sauvegardez ces deux séquences dans des fichiers séparés, en format fasta.

    • La base de donnéers Uniprot ne contient pas elle-même les séquences d'ADN ou ARN, mais chaque fiche de protéine contient une liste de références à d'autres bases de données (suivez le lien Cross-refs qui apparaît dans la barre grisée en haut de la fiche).

    • Uniprot présente généralement des liens multiples pour passer d'une protéine aux séquences génomiques correspondantes. Cependant, certains de ces liens pointent vers des séquences génomiques très longues, comme les chromosomes entiers ou les "scaffolds" (assemblages de fragments chromosomiques). Il faut donc essayer d'identifier la séquence génomique spécifique du gène.

    • D'après les longueurs des séquences, nous vous proposons d'analyser les deux séquences suivantes:

      • pour l'ADN génomique, la séquence Genbank L32835;
      • pour l'ARNm, la séquence RefSeq NM_001708.2

  2. Comparez les deux séquences à l’aide de l'outil dnadot. Faites varier la longueur de la fenêtre entre 5 et 15. Comparez et interprétez les résultats.

  3. Attention! Dans les boîtes de texte prévues pour les séquences (DNA number 1 et DNA number 2) il ne faut pas copier la ligne d’identification du fichier fasta (la ligne qui commence par ">"), car l'outil dnadot n'accepte que des séquences "brutes". Si vous incluez les en-têtes fasta des deux séquence, le programme tentera de les aligner, ce qui rendra le début du graphique difficile à interpréter !

    Activation des plug-ins java dans les salles de TD de Luminy

    Pour pouvoir utiliser les outils dnadot et dotlet dans les salles de TD de Luminy, il faut activer les plugin java dans les options du nagivateur Web.

    • Iceweasel
      1. Dans le menu, ouvrir Outils -> Modules complémentaires.
      2. Cliquer sur "Plugins" dans la partie gauche de l'écran/
      3. En bas de la liste des plugins, sur la ligne "Java(TM) Plug-in 1.6.0_26", cliquer sur le bouton activer.
    • Google Chrome
      1. Cliquer avec le bouton de droite sur le cadre qui affiche "Java est obsolète", et sélectionner "Activer ce plug-in"


    En 2013, même en activant les plugins, dnadot posait encore un problème technique sur certains ordinateurs de la salle de cours: la fonction "coller" est inactive.
    Solution temporaire: Voici la capture d'écran du résultat de dnadot pour cet exercice, avec une fenête de taille 15.

Questionnaire : Dot-plot - Comparaison d'un gène et son ARNm

  1. Quelle est la longueur de la séquence génomique analysée ?

  2. Quelle est la longueur de la séquence d’ARNm analysée ?

  3. En fixant la longueur de la fenêtre à 15 nucléotides, vous obtenez des éléments de lignes diagonales décalées. A quoi ces diagonales correspondent-elles ?

  4. A quoi correspondent les décalages entre les lignes diagonales ?

  5. Un petit fragment à la fin de l’ARNm s’aligne avec une portion au milieu du gène. A quoi ce fragment correspond-il ?

      Pour trouver la réponse, nous vous conseillons d'inspecter les résidus présents à l'extrémité 3' de la séquence d'ARNm.

  6. Cette correspondance résulte-t-elle vraisemblablement d'une homologie, ou du hasard?

  7. Quand vous diminuez la taille de la fenêtre, vous constatez que de nouvelles diagonales s'ajoutent à celles qui apparaissaient avec la fenêtre de taille 15. Pourquoi ?

  8. Temporaire: effet de la taille de la fenêtre sur le dot plot.
    w=3
    w=5
    w=7
    w=9
[Retour à la table des matières]

Dot plot de séquences protéiques - Les opsines

  1. Téléchargez à partir d'UniprotKB (et plus précisément, parmi les protéines reviewed de Swiss-Prot) les séquences protéiques humaines de la melanopsine et les opsines rouge (LWS) et verte (MWS).
  2. Utilisez Dotlet pour comparer
    • Pour entrer une séquence dans l'outil dotlet
      1. cliquez sur le bouton Input,
      2. collez la séquence dans la boîte du bas,
      3. indiquez un nom dans la boîte du haut.
    • Effectuez successivement cette opération pour chacune des trois séquences. Les noms des séquences que vous avez entrées s'ajouteront progressivement aux menus "horizontal" et "vertical".
    • Après avoir entré les 3 séquences, vous pouvez en sélectionner une dans le menu horizontal, et une autre dans le menu vertical.
  3. L'outil dotlet fonctionne pour certains binômes et pas pour d'autres.
    Solution temporaire: Voici les captures d'écran des résultats de dotlet pour cet exercice.

    Cliquez sur les images ci-dessous pour les afficher en meilleure résolution.

    Comparaison entre l'opsine rouge et l'opsine verte

    Comparaison entre l'opsine rouge et la mélanopsine

  4. Comparez les deux dot plots
    • Dotlet fournit une graphique où l'intensité de chaque pixel est corrélée avec le score de la fenètre centrée sur la pixel : plus le pixel est foncé, plus le score est élevé. Pour une bonne visualisation il faut ajuster les niveaux de gris.
    • L’histogramme à droite de dot-plot représente la fréquence de chaque score sur tous les pixels :
      1. les barres bleues correspondent à une échelle linéaire,
      2. les points violets représentent les mêmes données sur une l’échelle logarithmique.
    • Vous pouvez observer deux pics séparés sur la courbe violette:
      1. le pic de gauche (majoritaire) correspond au bruit du fond (basses valeurs de score obtenues en comparant des positions non-apparentées sur les séquences),
      2. le pic de droite (moins prononcé) correspond aux scores des régions similaires (hauts scores).
    • Faites glisser les curseurs du bas et du haut, pour les positionner juste après de chaque pic.
    • Pour plus d’information regardez l’onglet need help ?
    • Vous pouvez aussi visualiser deux morceaux de séquences alignées en positionnant votre curseur sur le dot-plot. Les deux fragments de séquences apparaissent au bas du graphique.

Questionnaire : Dot-plot - Comparaison des séquences protéiques

  1. Laquelle des deux comparaisons (opsine rouge-opsine verte ou mélanopsine-opsine) révèle la plus forte ressemblance ?
  2. Quelle matrice de substitutions semble a priori la plus appropriée pour la comparaison opsine rouge - opsine verte ?
  3. Pourquoi ?
  4. Comment pouvez-vous expliquer la forte similarité entre ces deux protéines ?
[Retour à la table des matières]

Calcul du score d'un alignement

Le but de cet exercice est de comprendre les la façon dont une matrice de substitution est utilisée pour calculer le score d'un alignement.

  1. Calculez les scores des deux alignements suivants à l’aide de matrices de substitution ci-dessous.
  2.   A T C G
    A 2 0 0 1
    T 0 2 1 0
    C 0 1 2 0
    G 1 0 0 2

    Pénalités :

    Alignment A :

    A T G T C A T A C G T
    A A G T C A - - - G T

    Alignment B :

    A T G T C A T A C G T
    A A G T C - - A - G T

    Questionnaire : Calcul de score des alignements

    1. Quel est le score de l’alignement A ?
    2. Quel est le score de l’alignement B ?
    3. EN vous basant sur ce score, quel alignement vous semble le plus pertinent ?
    4. Quel est l'intérêt d’utiliser des matrices de score pour aligner des séquences ?
    5. Quel alignement privilégieriez-vous du point de vue biologique ? Justifiez votre réponse.
[Retour à la table des matières]

Alignement global de deux opsines

Buts de cet exercice

Dans cet exercice, nous allons aligner les séquences par paires et mesurer les taux d'identité et de similarité entre quelues séquences d'opsines.

Le but est d’apprendre à choisir une matrice de substitution appropriée pour comparer deux séquences protéiques.

Sur base de note connaissance de la fonction des protéines analysées (toutes des opsines), on s'attend a priori à ce que la similarité de séquence couvre l'ensemble des séquences. Nous allons donc utiliser le logiciel needle, qui effectue un alignement global entre deux séquences.

  1. Téléchargez de Swissprot les séquences protéiques des opsines vertes et bleue de la souris et l'opsine bleue humaine.

    1. Ne sélectionnez que les séquences de la base de données SwissProt (la section d’Uniprot qui contient des séquences revues par les annotateurs, contrairement aux autre protéines qui sont annotées de façon automatique sur base de recherches de similarités de séquences).
    2. Dans Uniprot, utilisez l'option "Advanced search" pour collecter les séquences spécifiques d'un organisme (voir TD1).
    3. Attention! Uniprot contient certaines séquences courtes, qui ne correspondent qu'à des fragments de la protéine complète. Ces fragments peuvent facilement être incorporés dans un alignement, mais les statistiques de similarité ne reflèteront pas la situation biologique réelle. Pour cet exercice, nous allons écarter les séquences fragmentaires. A cet effet, vous pourriez ajouter, dans les paramètres avancés, une contrainte sur la longueur de la séquence (acceptez les séquences de 300 à 1000 résidus).
  2. Alignez l'opsin bleue de la souris avec opsin bleue humaine, et avec l'opsine verte de la souris (vous devrez donc effectuer séparément 2 alignements par paire), en utilisant les paramètres par défaut de needle.

    Pour chaque résultat, notez les valeurs des

    • scores bruts
    • % d'identité
    • % de similarité
    • % des gaps

    • Comme à priori on ne connait pas le % d’identité entre les séquences on choisit un matrice de substitution prévue pour les séquences d’un pourcenatge d'identité modéré.
    • Needle suggère par défaut la matrice BLOSUM62. (Cliquer sur le bouton "More options" dans "STEP2" pour voir les paramètres). Cette matrice est destinée pour la comparaison de protéines présentant au moins 62% d’identité.

  3. Observez le pourcentage d’identité entre chaque pair des protéines, et réaligner les si vous jugez qu’une autre matrice de substitution conviendrait mieux.

  4. Questionnaire : Alignement global avec l’algorithme Needleman et Wunsch

    1. Comparez les pourcentages d'identités et de similarités entre les alignements par défaut et determinez la matrice de substitution optimale pour chaque alignement (le détail des questions sera fourni dans le questionnaire).

    2. Expliquez les différences entre les alignements des mêmes séquences ontenus avec les matrices de substitutions différents.

[Retour à la table des matières]

Alignement global vs. alignement local

Dans cet exercice, nous alignerons la séquence du gène de l’opsine bleue humaine avec son ARNm, en utilisant deux algorithmes d'alignement par paire:

Le but de l'exercice est de comprendre les différences entre ces deux alignements, et d'évaluer l'impact de certains paramètres sur le résultat.

Vous allez utiliser deux programmes de la suite EMBOSS: needle, qui implémente l’algorithme d'alignement global publié par Needleman et Wunsch (1970) et water, l’algorithme d'alignement local publié par Smith et Watermann (1981).

Le but de l’exercice

  1. Récupérez les séquences du gène de Alpha-haemoglobin humaine (V00491) à partir de Genbank et la séquence de son ARNm (CAA23750) à partir d' EMBL-EBI.
  2. Alignez les ces séquences par needle, puis par water, en utilisant des paramètres par défaut.
  3. Comparez les deux alignements. (Répondez aux questions correspondantes dans le questionnaire)
  4. Faites varier les paramètres d’ouverture des gaps (Gap Open; go) et extension des gaps (Gap Extend; ge) de l'alignement local (water) et comparez les alignements obtenus avec les différents paramètres.
    • Gap open= 10, Gap Extend= 0.5 (paramètres par défault)
    • Gap open= 1, Gap Extend= 0.5
    • Les paramètres de pénalité de gaps sont accessibles en cliquant sur le lien "More options", dans la section "STEP2 - Set your pairwise alignment options".

    • Gap open=1, Gap Extend=1

Questionnaire : Alignement global vs. alignement local

  1. Comparez les deux alignements (global versus local) obtenus avec les paramètres par défaut: longueur d'alignement, nombre d'identités, pourcetages d'identités, différences marquantes entre les deux alignements.

  2. Différences les plus marquantes entre alignements global et local (1 ou 2 phrases)

  3. A quels éléments du gène correspondent les gaps?

  4. Pourquoi les scores des deux alignements sont-ils identiques, en dépit des différences soulignées ci-dessus (1 phrase)?

  5. Que se passe-t-il quand vous diminuez le score d'ouverture de gap à 1 et le score d'extension reste à 0.5? Pourquoi (2-3 phrases) ?

  6. Que se passe-t-il quand vous choisissez le score d'ouverture à 1 et le score d'extension à 1?

  7. Parmi les 3 choix de paramètres de l'alignement local que vous avez testés, le(s)quel(s) vous paraît le plus pertinent ? Justifiez en 1 phrase.

[Retour à la table des matières]

Exercice facultatif pour les mordus - Matrices de substitution

Les matrices de substitution associent un score à chaque paire de résidus. Pour ce premier exercice, l'ensemble des étudiants contribuera à construire une matrice de substitution en suivant les étapes suivantes :

  1. Alignement des deux séquences.

  2. Comptage des occurrences pour chaque paire de résidus → création de matrice de comptage.

  3. Transformation de matrice de comptages (= occurrences = fréquences absolues) en matrice de fréquences (relatives)

  4. Transformation de matrice des fréquences en lod-scores (voir définition du lod score).

Notes

Construction d'une matrice de substitution à partir d'alignements

Connectez-vous au site de Carl Hermann.

Le site Web propose à chacun une paire de protéines tirées au hasard dans une banque de données. Vous allez aligner ces protéines, et d'en dériver un matrice de comptages des alignements par résidus (substitutions, identités, gaps).

Sur base d'un seul alignement, cette matrice sera forcément très fragmentaire. Cependant, vos résultats seront automatiquement cumulés avec ceux des autres étudiants pour construire une matrice collective basée sur un nombre suffisant d'alignements. Vous comparerez ensuite la matrice que vous avez construite avec la matrice classique BLOSUM62. Vous pouvez répondre à des questions du questionnaire au fur et à la mesure.

Questionnaire : Matrices de substitution

[Retour à la table des matières]

Exercice facultatif pour les mordus - Programmation dynamique

From paths to scored alignemnts

In this exercise, we will get familiar with the algorithm used to find the optimal alignment between two sequences.

  1. Draw a matrix with the following sequences
    • STVSSTQV on the horizontal margin
    • ASKTEVSS on the vertical margin
  2. Draw an arbitrary path joining the top-left to the bottom-right corner of this matrix. At each step of the path, you can take 3 directions: right, bottom, or right-bottom diagonal. The other 5 directions are forbidden. Each student should draw a different path, so we explore a good variety of paths and evaluate the resulting scores.
  3. Write the alignment corresponding to your path.
  4. Score this alignment with the BLOSUM62 substutition matrix, and a gap penalty of -3 (for this exercise, we use the same penalty for gap opening and extension).
  5. Compare the paths, aligments and scores obtained by the different students.

Finding the optimal path by dynamical programming

In the exercise above, we evaluated the scores of a variety of possible alignments between two short peptidic fragments. We will now apply the dynamical programming algorithms, which guarantees to return the optimal alignment, i.e. the alignment maximizing the score, for a given substitution matrix and gap penalty.

  1. Open a connection to the alignment applet.
  2. Type your sequences in the options "first sequence" and "second sequence", respectively.
  3. Use the applet to build the optimal alignment.
  4. Compute the score of the resulting alignment.
  5. Compare this alignment with those obtained in the previous exercise.

Bibliographie

  1. Dayhoff, M. O., Schwartz, R. M. & Orcutt, B. (1978).
    A model of evolutionary change in proteins.
    Atlas of Protein Sequence and Structure 5, 345--352.

  2. Henikoff, S. & Henikoff, J. G. (1992).
    Amino acid substitution matrices from protein blocks.
    Proc Natl Acad Sci U S A 89, 10915-9.


Emese Meglécz (IMBE, Aix-Marseille Université) & Jacques van Helden (TAGC, Aix-Marseille Université).