introduction à la bioinformatique · 2013. 3. 13. · introduction à la bioinformatique bernard...

37
Introduction à la BioInformatique Bernard Bellon 1995-1996 Sommaire - Introduction 2 Schéma d'un ordinateur Langage de programmation Interface utilisateur - Système d'exploitation 7 Unix Système de fichiers - Communications et réseaux 11 Internet Courrier électronique World Wide Web - Analyse des séquences biologiques 17 Introduction Banque de données 18 Ressemblance des séquences 21 Méthodes globales Méthodes locales Méthodes approchées Matrice de substitution 26 Phylogénie 28 - Bibliographie 37 ___________________________________________________________________________ Maîtrise de Biochimie - BioInformatique 1996

Upload: others

Post on 20-Feb-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

  • Introduction

    à la

    BioInformatique

    Bernard Bellon 1995-1996

    Sommaire

    - Introduction 2

    Schéma d'un ordinateur

    Langage de programmation

    Interface utilisateur

    - Système d'exploitation 7

    Unix

    Système de fichiers

    - Communications et réseaux 11

    Internet

    Courrier électronique

    World Wide Web

    - Analyse des séquences biologiques 17

    Introduction

    Banque de données 18

    Ressemblance des séquences 21Méthodes globalesMéthodes localesMéthodes approchées

    Matrice de substitution 26

    Phylogénie 28

    - Bibliographie 37

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Introduction

    Ces quelques pages ne sont pas un cours exhaustif sur "l'utilisation" de l'informatique sous

    tous ses aspects dans la biologie, mais une sensibilisation qui introduira quelques notions

    (système informatique, réseau, banques et logiciels en biologie moléculaire) avec des

    illustrations particulières. Je vous ouvre les portes et vous laisse libre pour la visite.

    Quelques notions sur l'ordinateur, les systèmes d'exploitation et les fonctionnalités d'un

    réseau seront explicitées avant de passer à l'analyse de séquences biologiques.

    Un ordinateur

    On peut considérer que ce schéma représente aussi bien un micro ordinateur qu'un ordinateur: seules la

    capacité des différentes mémoires et la vitesse de traitement diffèrent.

    L'unité centrale est un ensemble d'organes électroniques effectuant les opérations demandées

    à la machine: celles-ci sont réalisées par un jeu d'instructions particulier à chaque machine.

    Elles sont des opérations élémentaires, logiques, ou caractérisant le mouvement des données

    entre mémoire et les organes d'entrée ou sortie. La vitesse de traitement d'une opération

    élémentaire peut varier jusqu'à un facteur cent suivant les machines.

    Cette unité centrale peut être décomposée, fonctionellement et physiquement, en trois unités:

    - l'unité arithmétique et logique (UAL)

    - les registres (mémoires internes à l'unité centrale)

    - l'unité de commande qui assure le décodage et le séquencement des instructions à

    l'intérieur de l'unité centrale.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Chacune de ces sous-unités varie suivant les machines; l'unité centrale est construite pour

    travailler sur un quantum d'information appelé le mot-machine (8, 16, 32, 64 bits); ce mot est

    aussi en général le quantum d'information qui peut être échangé entre l'unité centrale et la

    mémoire ou les entrées sorties: ces échanges se font par l'intermédiaire de "bus" qui relie les

    différentes unités. Trois "bus" essentiels peuvent être distingués: "bus" de données,

    d'adresses, de commandes; c'est ici que se trouve le goulot d'étranglement des ordinateurs.

    La mémoire centrale est directement reliée à l'unité centrale, et contient le ou les programmes

    ainsi que les données sur lesquelles travaillent les programmes. La taille de la mémoire peut

    aller de quelques MOctet à quelques centaines de MOctet (1K=210=1024).

    Les organes d'entrées sorties servent à faire communiquer la machine avec le monde

    extérieur: clavier, imprimantes, modem, connexion réseau, mémoires secondaires. Ces

    dernières sont des bandes magnétiques, des disques magnétiques, des disques : leur capacité

    varie nettement en fonction des machines, de quelques dizaines de MOctet à quelques

    milliers de MégaOctet (GigaOctet). La vitesse de transmission entre ces périphériques et

    l'unité centrale peut facilement varier d'un facteur 1 à 1000 suivant la nature du matériel.

    Lorsqu'un ordinateur est en fonctionnement il est toujours sous le controle d'un programme,

    que ce soit des logiciels d'exploitation ou des programmes spécifiques.

    Parenthèse sur les langages de programmation

    Un algorithme est une méthode de résolution de problèmes dont on peut dire qu'elle s'arrête

    au bout d'un temps fini et fournit une réponse; il est obtenu par combinaison d'opérations

    élémentaires qui s'enchaînent dans un ordre déterminé. Cette méthode permet de savoir si le

    problème est décidable ou non. Un langage est un moyen de description et de

    communication, d'un algorithme en particulier. Une machine est un objet (réel ou théorique)

    capable de mémoriser un algorithme, d'exécuter les opérations élémentaires qui le composent,

    de les enchaîner dans l'ordre imposé par l'algorithme.

    Par exemple une oeuvre musicale est un algorithme, la partition la description de celui-ci, le

    langage étant la notation musicale, la machine ou l'opérateur étant les musiciens et leurs

    instruments.

    La connaissance d'un langage n'est pas une condition suffisante à la résolution des problèmes:

    elle permet seulement la traduction d'un algorithme; la connaissance du langage permet de

    savoir les règles syntaxiques et les opérateurs de ce dernier.

    L'unité centrale d'un ordinateur exécute des instructions élémentaires dans un format trés

    particulier; les premiers utilisateurs écrivaient leurs programmes dans ce langage; ceci était

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • très long et fastidieux. Ces langages sont dits de bas niveau. Depuis se sont développés des

    langages de haut niveau qui permettent une écriture plus rapide, plus directement

    compréhensible et non dépendante de la machine: pour que celle-ci exécute ces programmes

    il existe deux solutions: soit un interpréteur analyse une unité fragmentaire du programme et

    si la syntaxe est correcte la traduit en langage de bas niveau et la fait exécuter par la machine,

    soit un programme appelé compilateur analyse tout le programme source et le traduit en

    langage de bas niveau (programme objet) exécutable par la machine. Les langages interprétés

    auront des vitesses d'exécution plus faibles puisqu'à chaque fois une analyse et une traduction

    seront nécessaires, mais ils offriront l'interactivité avec l'utilisateur car l'interpréteur et le

    programme source sont en mémoire simultanément.

    Le premier langage de haut niveau développé fut le FORTRAN abréviation de FORmula

    TRANslation orienté vers le calcul scientifique: c'est un langage compilé et le premier

    compilateur a pris une dizaine d'année-hommes de mise au point. Il est toujours trés utilisé

    car sa bibliothèque de sous-programmes prêts à l'emploi est de très loin la plus vaste. Se sont

    développés ensuite simultanément différents langages: le plus connu d'entre eux et que tous

    les micro ordinateurs possèdent est le BASIC, soit interprété, soit compilé. Mais des

    chercheurs travaillant sur la logique et les grammaires ont alors décrié ces langages qui dès

    que le programme était conséquent conduisaient à des "plats de nouilles" et ont développé des

    langages structurés adaptés à une analyse descendante des problèmes qui leur semblait le seul

    moyen de contrôle de la justesse et de lisibilité d'un programme; on passe d'Algol 68 à Ada

    en passant par Pascal et Modula. Parallèlement des langages d'un autre type permettant la

    manipulations d'expressions symboliques ont vu le jour, les plus fameux sont Lisp et Prolog,

    on peut ajouter de plus que Prolog est un langage de PROgrammation LOGique.

    Les langages de programmation les plus utilisés de nos jours sont le langage C, résultant

    d'une adaptation des langages structurés avec le langage de bas niveau et économie

    d'expression, et les langages de type "objet" par exemple C++.

    L'interface utilisateur

    Le coté que l'utilisateur affuble de convivial ou d'austère. Nous avons deux types de

    présentation que ce soit au niveau du systèmes d'exploitation ou des logiciels.

    - l'une de type télétype ou vt100, où l'utilisateur tape des commandes prédéfinies au clavier

    - l'autre, de type WYSIWYG (what you see is what you go) avec des fenêtres, des icônes,

    des menus et items, et dont les actions sont déclenchées à l'aide d'un pointeur (la souris)

    Dans le premier cas l'utilisateur doit apprendre la syntaxe des diverses actions qui lui sont

    offertes.

    Dans le second cas, l'interface fait beaucoup plus appel à l'intuition de l'utilisateur et les

    actions prédéfinies sont activées par l'utilisation de la souris.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Interface utilisateur de type télétype ou vt100

    Interface utilisateur de type vt100 sur une station

    - ls : commande shell qui liste les fichiers ou répertoires dans le "répertoire de travail"

    - ps -ef : commande qui affiche les processus en cours

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Interface utilisateur convivial (fenêtres, menu, icônes ..)

    Interface utilisateur du Macintosh : bureau électronique

    - Répertoire

    - Menus avec item

    - Icônes

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Système d'exploitation

    De façon très béotienne, nous pouvons partager les ordinateurs en deux catégories, micro-

    ordinateur "Personal Computer" et les ordinateurs, "station" ou "mainframe" : la première

    possédant un système d'exploitation mono-utilisateur et la seconde un système d'exploitation

    multi-tâches et multi-utilisateurs. Remarquons toutefois que l'évolution des performances des

    ordinateurs permet à la première catégorie d'évoluer vers des systèmes multi-tâches.

    Les systèmes d'exploitation pour les micro-ordinateurs sont nombreux (MacOS, DOS,

    Windows, OS2 ..) alors que pour les systèmes multi-tâches et multi-utilisateurs on peut noter

    deux systèmes essentiels Unix et VMS.

    Lorsque vous utilisez un micro-ordinateur avec un système classique, vous avez accès à

    toutes les informations en ce sens que vous pouvez enlever ou ajouter des logiciels, lire ou

    détruire ou créer des fichiers, modifier certains parmètres du système et vous êtes le seul à

    utiliser les capacités de la machine.

    Dans le cas de systèmes multi-tâches et multi-utilisateurs, l'utilisation des ressources est

    soumises à plusieurs contraintes :

    - identification (nom d'utilisateur, mot de passe)

    - restriction d'utilisation (notion de super utilisateur, de privilèges, de groupe, d'espace de

    travail).

    - vous n'êtes plus seul à utiliser les ressources de la machine

    En travaux pratiques, vous utiliserez des stations dont le système d'exploitation est le système

    UNIX dont nous allons voir quelques caractéristiques principales.

    Le système UNIX a été créé vers les années 1970 dans les laboratoires de recherche de la

    firme A.T. T. Ce système a subi depuis de nombreux changements, en particulier sa réécriture

    en langage C. Deux versions constituent la référence de la quasi totalité des systèmes

    existants à ce jour, la version des laboratoires A.T & T. et la version de l'Université de

    Berkeley dont la différence essentielle se situe au niveau de la gestion de la mémoire et au

    niveau de la communication entre processus. L'une des évolutions majeures d'UNIX depuis

    ses origines a été l'intégration du système X-window (fenêtres, menus, icons, souris) dans

    l'environnement.

    Le système d'exploitation UNIX

    Les caractéristiques d'UNIX sont un système d'exploitation multi-tâches et multi-utilisateurs

    et indépendant de toute architecture de machine et de tout constructeur. Sa conception est

    modulaire et basée sur trois couches bien définies :

    - le noyau qui comprend toutes les fonctions nécessaires d'un système d'exploitation

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • (allocation du processeur, gestion mémoire, gestion des ressources, entrées/sorties ..)

    - l'interface utilisateur, appelée shell qui remplit un double rôle, celui d'interpréteur

    de commandes et celui d'un langage de programmation

    - l'ensemble des outils disponibles tels que les langages de programmation et leurs

    bibliothèques, les outils spécifiques de développement dans un environnement particulier

    (Xwindow).

    Les deux facettes du système UNIX les plus apparentes à l'utilisateur sont le système de

    fichiers et l'interpréteur de commandes (shell). Vous trouverez dans le polycop "Abrégé

    Unix" l'essentiel des commandes et des outils dont vous aurez besoin. Citons ici quelques

    points importants.

    Le système de fichiers

    Le système n'impose aucune structure particulière aux fichiers sauf pour certains le

    concernant directement. Il ne fait aucune supposition quant à leur contenu et leur utilisation,

    cela ne regarde que les programmes qui construisent ou qui exploitent les fichiers. Chaque

    fichier est décrit par un enregistrement appelé i-node qui précise son type, sa taille, la date de

    création et de sa dernière modification, le numéro du propriétaire et du groupe, les

    permissions, les liens .... Les i-nodes sont rangés dans une table et chacun est identifié par un

    numéro.

    UNIX distingue trois sortes de fichiers :

    - le type répertoire, ou catalogue (directory) est un fichier dont le contenu est une liste de

    couples (nom, numéro d'un i-node) dont chacun est un renvoi à un fichier. Les répertoires

    définissent un structure d'arbres sur l'ensemble des noms de fichiers. Tout fichier est donc

    accessible par au moins un nom appartenant à un répertoire, sauf un fichier particulier de type

    répertoire qui est la racine et qui n'a pas de nom.

    - le type fichier spécial qui correspond aux unités matérielles d'entrée/sortie. Du point de

    vue du programmeur, les procédures de lecture ou écriture sont les mêmes que celles qui

    permettent l'échange d'information avec un périphérique quelconque.

    - le type fichier ordinaire qui correspond à tous les autres fichiers. Pour l'utilisateur, deux

    distinctions que le système ignore : les fichiers de texte qui sont éditables, imprimables,

    affichables et les fichiers binaires qui ne le sont pas.

    De nombreuses commandes du shell ainsi que les programmes font référence à des noms de

    fichier pour trouver l'information désirée. Il est important de savoir écrire correctement un

    nom de fichier et en particulier dans les deux écritures référence absolue et référence relative.

    La manière de nommer les noms de fichier utilise la structure arborescente des répertoires

    avec comme caractère séparateur le caractère "slash" /.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • usr

    racine

    bin

    biologie physique

    res seq mount

    actin.seq lip.seqlip.res

    Exemple d'arborescence :

    les noms de répertoire sont

    écrits en gras

    Nous allons expliciter les divers types de référence en nous appuyant sur cet exemple. Tout

    nom de fichier figure dans un répertoire qui, s'il n'est pas la racine, figure à son tour dans un

    autre répertoire.

    - Références absolues

    La référence absolue d'un nom de fichier s'écrit à l'aide du chemin qui mène au fichier

    considéré en partant de la racine : le chemin absolu s'écrira (racine)/usr/biologie/seq/ et le

    fichier "lip.seq" sera désigné par (racine)/usr/biologie/seq/lip.seq. Le répertoire racine n'ayant

    pas de nom nous l'écrirons : /usr/biologie/seq/lip.seq. Le caractère "/" tout seul est une

    référence absolue à la racine du système de fichiers.

    - Références relatives

    Pour alléger les références aux fichiers, un répertoire joue un rôle particulier, c'est le

    répertoire de travail. Un chemin qui ne commence pas par le caractère "/" est un chemin

    relatif : son premier élément est recherché dans le répertoire de travail. Supposons que le

    répertoire de travail soit biologie; le chemin relatif menant au fichier lip.seq est seq, et le

    fichier "lip.seq" sera désigné par seq/lip.seq

    - Auto-références

    Chaque répertoire contient deux noms spéciaux avec un rôle prédéfini. "." renvoie au

    répertoire lui-même et ".." renvoie au répertoire ancêtre ou père. Les chemins peuvent être

    exprimés à l'aide de ces deux références particulières.

    Le fichier "lip.seq" peut être désigné par ./seq/lip.seq si le répertoire de travail est biologie.

    Le fichier "lip.res" peut être désigné par ../res/lip.res si le répertoire de travail est seq.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Tout utilisateur d'un système UNIX possède un numéro d'utilisateur unique et un numéro de

    groupe commun à plusieurs utilisateurs. Les permissions des fichiers (lecture, écriture,

    exécution) sont définies relativement à trois domaines : le propriétaire du fichier, le groupe

    comprenant les utilisateurs du même groupe que le propriétaire, et les autres. Les permissions

    sont listées dans l'ordre propriétaire, groupe, autres et pour chaque domaine sont écrites la

    permission de lecture (r), écriture (w) et exécution (x). Bien évidemment, le propriétaire a

    seul le pouvoir de modifier les permissions. Chaque programme ou logiciel attribue des

    permissions spécifiques lors de la création de fichiers.

    Le shell

    Le shell est l'interprète des commandes d'UNIX, c'est un programme qui dialogue avec tout

    utilisateur. Dès que la procédure de connexion (login) est terminé, il prend le contrôle, lit les

    commandes que vous tapez, les interprète et lance les actions adéquates. Plusieurs interprètes

    sont disponibles : le Korn shell, le Bourne shell et le C shell. Sur les stations que vous

    utiliserez, les trois shells sont disponibles et par défaut lorsque vous établirez une connexion,

    c'est le processus C shell qui sera activé (défini par l'administrateur du système).

    Toute activité sous UNIX s'exécute dans le cadre d'un processus. Tout processus (appelé

    fils) est créé par un autre processus (appelé père). Par exemple lorsque vous lancerez une

    commande permettant d'utiliser votre terminal comme un terminal X (fenêtre, souris,

    menus..), vous lancerez un processus. Lorsque vous lancez une commande classique, vous

    créez un processus fils et ne revenez au processus père qu'une fois la commande terminée.

    Une commande peut être lancée en arrière plan (mode détaché) de telle façon que le

    processus va se dérouler en parallèle vis à vis du processus père. Après le lancement de la

    commande en arrière plan, vous revenez tout de suite au processus père sans attendre que le

    processus fils soit terminé. Lancer une commande en arrière plan s'obtient en écrivant la

    commande suivie d'un espace et d'un et commercial "&".

    La totalité des commandes prédéfinies (et la plupart du temps des programmes) suivent les

    conventions suivantes :

    - le nom d'une commande est suivi par un nombre quelconque d'options de la forme

    ° -caractère --> option qui n'exige aucune valeur

    ° -caractère valeur --> option qui demande une valeur

    - si aucune option ne comporte de valeurs, on doit les regrouper

    - l'ordre des noms de fichier dépend de la nature de la commande

    Un exemple ls [options] nom...nom

    Affiche le contenu des répertoires et les informations sur les fichiers indiqués. Si aucun nom

    n'est indiqué, c'est le contenu du répertoire de travail (ou courant) qui est affiché.

    De nombreuses options existent, les plus utiles sont les suivantes :

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • - a affiche tous les fichiers y compris ceux commençant par un point

    - l format de sortie long : dans l'ordre nous avons le type (d pour répertoire), les

    permissions, le nombre de liens pour un fichier ou le nombre d'entrées pour un répertoire, le

    propriétaire, le groupe, la taille en octets, la date de dernière modification et enfin le nom du

    fichier.

    - R affichage récursif de tous les sous-répertoires

    % cd /usr/biologie

    % ls -al

    -rwxr-x--x 1 ber biol 820 Jul 28 14:40 mount

    drwxr-x--- 7 ber biol 120 Jun 21 15:32 res

    drwxr-x--- 12 ber biol 160 May 22 20:17 seq

    Communications et réseaux

    Au début les ordinateurs servaient essentiellement à faire des calculs. Depuis quelques

    années, la dimension de communication (échanges de données, partage de ressources) est

    devenue partie intégrante de l'informatique et celle-ci se développe de plus en plus.

    L'échange de données entre ordinateurs est rapidement devenue une nécessité autant pour les

    scientifiques que les militaires. Vers 1970, la DARPA (Defense Advanced Research Projects

    Agency) travailla à développer une technologie d'interconnexion qui déboucha dans les

    années 1977 à la mise en place du réseau ARPANET. Ce réseau fût ensuite divisé en deux

    réseaux ARPANET pour poursuivre la recherche et MILNET pour la partie militaire.

    La DARPA encouragea le monde scientique à adopter leur norme et les protocoles furent

    partie intégrante du système Unix à partir de la version 4.

    Vers les années 1986, un réseau mondial fut mis en place, c'est le réseau Internet. La

    représentation la plus simple est une visualisation sous forme de poupées russes ou sous la

    forme d'un arbre avec une racine virtuelle mondiale (Ebone).

    En France, le réseau Internet a été mis en place pour les grands organismes d'Etat (Université,

    Recherche ..), il porte le nom de Renater et chacune des régions a mis en place son réseau

    connecté à Renater, dans la région PACA il porte le nom de R3T2

    La figure de la page suivante est une représentation "virtuelle" du réseau mondial.

    La communication entre les différents noeuds est réalisée par des routeurs ou des passerelles

    En partant de la salle informatique où les machines sont connectées au réseau nous pouvons

    considérer l'empilement des réseaux suivants :

    - réseau local de la salle

    - réseau luminy (par l'intermédiaire d'un routeur)

    - réseau R3T2 Marseille (routeur et par l'intermédiaire d'une passerelle : France

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • TELECOM)

    - dans le cas d'une communication extérieure à la région, le noeud R3T2 a été supprimé et

    le raccordement se fait sur la région Parisienne qui est en liaison directe avec le noeud

    français principal qui peut redistribuer sur d'autres régions ou sur le monde.

    Vous trouverez souvent les noms suivants pour désigner les réseaux

    - LAN (Local Area Network)

    - MAN (Metropolitan Area Network)

    - WAN (Wide Area Network)

    Schéma virtuel du réseau Internet

    backbone international

    R3T2 Région PACA

    NiceMarseille

    Aquarel Autre région

    St Charles Luminy

    Salle Info IBDM

    LIM

    2 Mb2 Mb

    10 Mb

    34 Mb

    34 Mb

    USA

    Suisse

    Vous êtes ici

    IMT

    domaineuniv-mrs.fr

    2 Mb

    34 Mb

    CNRS

    10 Mb

    La connexion est dite par paquets commutés avec remise au mieux. Ceci signifie que lorsque

    deux machines échangent de l'information, une ligne physique (comme dans le cas du

    téléphone) n'est pas ouverte entre les deux machines. L'information est transmise à travers les

    différents noeuds jusqu'à arriver au réseau local où se trouve la machine destinataire.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Bien évidemment, cette interconnexion est organiséee et obéit à certaines règles. En tant

    qu'utilisateur vous devez connaitre la signification de :

    - une carte Ethernet (avec un numéro Ethernet unique par construction), la liaison physique

    - un numéro I.P. (Internet Protocol) pour cette interface (souvent par abus de langage

    attribué à la machine) unique, codé sur 4 octets, et aussi un nom symbolique (non

    obligatoire). Ces numéros sont gérés par une autorité et vous devez faire une demande.

    - le protocole ou couche T.C.P/I.P. sur votre machine doit connaître l'adresse I.P. du routeur

    (souvent appelé Gateway) et l'adresse I.P. du serveur de noms (DNS).

    L'une des fonctions principale du serveur de noms est d'établir la correspondance entre nom

    symbolique domainisés et adresse I.P. (vous avez déjà vu des adresse symboliques : par

    exemple la machine ylumin.univ-mrs.fr). La machine dont le nom est ylumin, se trouve dans

    le domaine univ-mrs.fr ou encore dans le sous-domaine univ-mrs du domaine fr

    Les fonctionnalités de l'interconnexion sur Internet

    L'échange d'informations entre les machines est bâtie sur le schéma client/serveur. Le

    logiciel serveur et le logiciel client dialoguent suivant un protocole bien défini, classé par

    service et dont le numéro est défini par les serveur (certains protocoles classiques ont un

    numéro prédéfini). Les services les plus connus sont

    - Connexion par telnet sur une machine Unix distante (port 23)

    - Courrier électronique (SMTP géré par les programmes sendmail). (port 25)

    - Service ftp (file transfer protocole) : échange de fichiers

    - Service gopher (accés à des documents sur différents serveurs)

    - Service des News (système de conférences électroniques)

    - Service Wais (Base de données indexée)

    - Service WWW, le dernier né et le plus utilsé

    Les plus utilisés sont sans aucun doute le courrier électronique et le service WWW.

    Le courrier électronique

    Pour pouvoir envoyer un courrier à un correspondant, il faut connaître son adresse

    électronique (e-mail) et bien évidemment pour en recevoir , il faut avoir soi-même une

    adresse électronique.

    Une adresse se présente sous la forme @.

    - La partie locale identifie une personne (nom d'utilisateur sur une machine Unix) ou une

    liste de diffusion.

    - La partie domaine est une suite d'entités hiérachisée séparées par des points (cela n'est pas

    forcément le nom symbolique domainisé d'une machine).

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Exemple d'un message

    _____________________________________________

    Date: Mon, 26 Feb 1996 18:27:53 +0100X-Sender: [email protected] (Unverified)Mime-Version: 1.0To: Bellon Bernard From: Olivier Cahagne Subject: Re: Bases de Donnees medicales

    - Corps du message -

    ___________________________________________________

    L'entête du message comporte des champs prédéfinis dont les plus importants sont :

    -date, To (adresse du destinataire) , From (adresse de l'expéditeur)

    Sur une machine Unix où le processus "sendmail" est actif, vous pouvez envoyer du courrier

    avec le programme de base "mail" ou "mailx", et sauf contre-indication votre adresse sera

    celle correspondant au nom d'utilisateur que vous avez et l'adresse sera celle de la machine.

    De nombreux logiciels de courrier sont disponibles sur les micro--ordinateurs, ceux-ci sont

    incapables d'envoyer directement un courrier, ils "passent" par l'intermédiaire d'une machine

    capable de dialoguer avec sendmail (Unix ..). Dans ce cas, ils ne vous faudra pas oublier dans

    les paramètres de réglages de définir votre e-mail. Ces logiciels sont très utilisés car ils sont

    beaucoup plus conviviaux que ceux trouvés sous Unix et de plus, il est très facile d'annexer

    des documents qui ne sont pas de type ASCII direct (fichier Word, Excel de Macintosh ou

    PC) à votre courrier. De même en réception de documents annexés au courrier, après un

    réglage permanent de paramètres, tout se passe automatiquement.

    Remarque : dans des sous-réseaux, certains systèmes (MacOS, Windows) possèdent un

    système fonctionnel de messagerie, mais ils n'entrent pas dans le cadre normalisé d'Internet

    Le World Wide Web

    C'est le dernier système d'échanges d'information du modèle client/serveur, qui a pour

    origine un projet du CERN, et qui peut se définir comme un système d'information réparti

    hypermédia.

    Le serveur gère et héberge l'information sous forme de fichiers. Les documents fournis par

    le serveur sont dans le format HTML (HyperText Markup Langage) qui contient non

    seulement du texte, des images mais aussi des liens vers d'autres fichiers ou d'autres serveurs.

    Cela permet d'avoir un système d'information distribué avec un partage de la mise à jour :

    vous verrez par exemple pour une fiche d'une séquence de la banque Swiss-Prot (serveur en

    Suisse), des liens vers Medline qui est distribué par un serveur aux Etats-Unis, des liens vers

    la Banque EMBL (en Angleterre), des liens vers des journaux etc ....

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Le client, avec son interface fenêtres, icônes, menu, zone de liens et souris est non

    seulement capable d'adresser des requêtes à un serveur WWW, mais aussi à des serveurs de

    type ftp, gopher, wais, news. La convivialité de l'interface et sa multi-fonctionnalité en font le

    système de choix pour les échanges d'information. Soulignons de plus que les serveurs

    WWW sont capables d'avoir une interaction directe avec un client par l'intermédiare des

    "formes". Cela permet de mettre à la disposition de tout le monde des logiciels implantés sur

    une machine sans que les utilisateurs potentiels soient des utilisateurs déclarés sur cette

    machine. Vous utiliserez en T.P. ce système pour faire des recherches dans les banques de

    séquences, pour soummettre votre séquences à un programme d'alignement sur les banques

    etc..

    Client WWW (Netscape pour Macintosh)

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Les adresses des serveurs que vous indiquez à votre logiciel client sont de la forme :

    ://[port]/

    - protocole : http, ftp, gopher, wais, news

    - adresse machine nom symbolique ou adresse I.P.

    - port : numéro du service (si aucun port n'est indiqué, c'est le numéro prédéfini qui est

    utilisé par exemple pour WWW : 80)

    - reference locale : désigne un fichier ou répertoire qui sont définis par rapport au type de

    serveur

    Attention : pour les news, l'adresse de la machine est un machine qui sert les news et la

    référence locale n'existe pas. La plupart de ces serveurs ne permettent l'accès qu'à certains

    domaines (si vous n'êtes pas dans un des domaines, le serveur vous indiquera que vous n'avez

    pas la permission de lui "parler").

    Pour les bases wais, l'adresse de la machine est un machine qui sert une base wais et la

    référence locale n'existe pas,. Certains clients WWW ne peuvent communiquer directement

    avec une base wais, ils doivent passer par une machine intermédiaire (appelée proxy), la

    définition de celle-ci étant à mettre dans les préférences de votre logiciel client

    Remarque finale : la mise en réseau de machines (que ce soit des micro-ordinateurs ou des

    ordinateurs, des imprimantes etc ..) permet le partage des ressources, par exemple de fichiers

    entre diférentes machines :

    - NFS (Network File System) sous Unix

    - Appletalk sous MacOS

    - BNU sous Windows

    Sur les ordinateurs de la salle Informatique, vos fichiers ne sont pas enregistrés sur le disque

    dur du poste sur lequel vous travaillez, mais sur la machine principale serveur.

    Sur les micro-ordinateurs, vous avez déjà surement pratiquer le partage de fichiers avec les

    micro voisins ou le partage d'imprimantes.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • BioInfo : analyse des séquences biologiques

    Introduction

    La conjonction du développement des ordinateurs, de leurs performances technologiques, de

    la diminution de leurs prix, du développement des langages de programmation, du

    développement des techniques de séquençages de fragments d'ADN a provoqué l'introduction

    de l'informatique dans les laboratoires de biologie.

    Le nombre de séquences publiées devenant vertigineux chaque laboratoire ne peut avoir une

    remise à jour rapide des séquences publiées, on assiste alors, vers les années 1980, à la

    création de quelques banques de séquences qui effectuent une remise à jour permanente. Les

    banques les plus utilisées à ce jour sont GENBANK, PIR, EMBL, SWISS-PROT.

    Il existe une myriade de logiciels, implantés sur différentes machines depuis le micro

    ordinateur jusqu'à des ordinateurs "très puissants", écrits dans tel ou tel langage, traitant tel ou

    tel problème. En France deux centres serveurs nationaux a été mis en place l'un au C.I.T.I.2 à

    Paris, l'autre au pôle BioInformatique de Villejuif. Jusqu'à ces dernières années, la plupart des

    biologistes, lorsqu'il avaient besoin d'accéder à des banques ou d'utilser des programmes

    gourmands en ressouces utilisaient ces deux serveurs.

    Le réseau Internet et la mise à disposition d'informations et de ressources informatiques par

    de nombreux laboratoires a modifié cette attitude et nombreux sont les biologistes qui

    utilisent ces ressources distribuées.

    Après avoir énuméré les quelques grandes catégories de logiciels, nous nous intéresserons

    plus particulièrement aux banques de séquences biologiques, au problème de recherche dans

    les banques, de séquences "ressemblantes" à une séquence prédéfinie, et à un logiciel de

    construction d'arbre phylogénétique et d'alignement. Vous avez à votre disposition des

    informations complémentaires sur des serveurs de type W3 : celles-ci vous sont indiquées par

    le sigle √ suivie de l'adresse.

    1 - Accés et manipulations de données

    - Recherche dans les banques (séquences, clones, ..)- Edition de séquences

    2 - Séquences nucléiques

    - Fréquences dinucléotides, codons ..- Recherche de signaux, de motifs (promoteurs, site d'épissage, ..)- Prédiction de cadre de lecture ouvert, traduction- Séquençage (assemblage, primer ..)- Carte de restriction- Prédiction de structure des ARN de transfert

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • - Recherche de répétitions- Alignements de séquences

    3 - Séquences protéiques

    - Analyse et calcul (PM, composition en aa, protéolyse ..- Prédiction de structure secondaire- Alignement de séquences

    4 - Recherche dans les banques

    - Alignements- Méthode globale (Needleman)- Méthode locale (Smith-Waterman)- Méthode approchées (Blast, Fasta)- Spécifique structure 3D

    - Autre- Recherche de motifs, de consensus- Recherche de protéines ressemblantes / à une composition en aminoacides

    5 - Phylogénie

    - Méthodes phénétiques (Phylip, Méthode NJ ..)- Méthodes statistiques

    Ne sont pas cités tous les logiciels développés autour de certaines techniques spécifiques

    (Cristallographie, R.M.N., ..) et ceux pilotant des manipulations (séquenceur, HPL, PCR,

    etc..)

    Séquences √ http://www-biol.univ-mrs.fr/biologie/seq.htmlSouches, clônes √ http://www-biol.univ-mrs.fr/biologie/cata.htmlGénomes √ http://www-biol.univ-mrs.fr/biologie/genome.htmlLogiciels √ http://www-biol.univ-mrs.fr/biologie/logligne.htmlBibliographie √ http://www-biol.univ-mrs.fr/biologie/biblio.html

    Banques de données

    Vous avez à votre disposition, tout un ensemble de banques de données disponibles qui vont

    de la bibliographie aux séquences, clones, cellules. Certaines sont encore indépendantes l'une

    de l'autre, mais de plus en plus des systèmes de gestion permettant des interelations entre

    elles sont mis en place. Leurs structures informatiques, non visibles pour l'utlisateur lambda,

    peuvent être très différentes, toutefois une normalisation pour ce qui est visible de l'utilisateur

    est réalisé.

    Les banques de séquences traditionelles sont pour les acides nucléiques Genbank et EMBL

    et pour les protéines PIR et Swiss-Prot et pour les structures cristallographiques PDB (Protein

    Data Bank : 4162 Coordinate Entries / 3865 proteins / 285 nucleic acids / 12 carbohydrates).

    Certains laboratoires ou consortions ont créé leurs propre sous-banques spécifiques par

    rapport à des propriétés biologiques ou autres (par exemple Aids, FlyBase, Kabat (Sequences

    of Proteins of Immunological Interest), NRSub (Non redondant Bacillus Subtillis),

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • EPDEukaryotic Promoter Database, ...)

    Toutes ces banques sont accessibles sur Internet à l'aide de clients WWW. Il existe deux

    sortes de serveurs :

    - ceux dédiés à une banque particulière

    - ceux intégrant un ensemble de banques et de données bibliographiques. Dans cette série,

    l'un des plus complet est le système SRS (√http://www.infobiogen.fr/srs/srsc/) qui enprincipe a un serveur par pays Européen. Bien évidemment ces serveurs prennent une partie

    de leurs informations sur les serveurs dédiés à une information sectorisée.

    Voici l'évolution du nombre de séquences pour trois banques classiques

    EMBL Release Entrées Nb nucléotides

    1 06/1982 568 585433 33 12/1992 89100 111413979 37 12/1993 146576 158171400 41 12/1994 230950 226259607 45 12/1995 622566 427620278

    Genbank Release Nb Nucléotides Entrées 3 Dec 82 680338 60674 Dec 92 120242234 9708480 Dec 93 163802597 15074486 Dec 94 230485928 23777592 Dec 95 425860958 620765

    Swiss-Prot Release Entrées Nb amino-acides 2.0 09/86 3939 900 163 24.0 12/92 28154 9 545 427 27.0 10/93 33329 11 484 420 30.0 10/94 40292 14 147 368 32.0 11/95 49340 17 385 503

    L'information contenue dans une fiche de séquence biologique est à peu près la même quelle

    que soit la banque, les seules différences qui vont s'estomper rapidement sont au niveau de

    liens vers d'autres serveurs (information distribuée). Par exemple dans les fiches de Swiss-

    Prot, vous trouvez des liens vers d'autres banques principales accessibles sur d'autres serveurs

    (Genbank, EMBL, Ecocyc, PDB, PRODOM (domaine protéique), SWISS-2D..), vers

    Medline, vers certains journaux (par exemple J.B.C. (Journal of Biological Chemistry)).

    Les fiches des différentes banques obéissent au même schéma :

    - suite de paragraphe composé de trois éléments :

    - le nom du champ ou encore définition des mots clés : doit être en début de ligne- séparateur (peut être trois blanc, deux points ..)- la valeur du champ- très souvent, il existe un marqueur de fin de séquence

    Dans la fiche suivante extraite de Swiss-Prot, les valeurs de champ écrites en gras sont des

    liens vers d'autres serveurs.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Une fiche classique de banques de séquence

    ID HUNB_DROME STANDARD; PRT; 758 AA.AC P05084;DT 01-APR-1988 (REL. 07, CREATED)DT 01-APR-1988 (REL. 07, LAST SEQUENCE UPDATE)DT 01-OCT-1993 (REL. 27, LAST ANNOTATION UPDATE)DE HUNCHBACK PROTEIN.GN HB.OS DROSOPHILA MELANOGASTER (FRUIT FLY).OC EUKARYOTA; METAZOA; ARTHROPODA; INSECTA; DIPTERA.RN [1]RP SEQUENCE FROM N.A.RC STRAIN=OREGON-R;RA TAUTZ D., LEHMANN R., SCHNUERCH H., SCHUH R., SEIFERT E.,RA KIENLIN A., JONES K., JAECKLE H.;RL NATURE 327:383-389(1987).CC -!- FUNCTION: HUNCHBACK IS A GAP CLASS SEGMENTATION PROTEIN.CC -!- SUBCELLULAR LOCATION: NUCLEAR.DR EMBL; Y00274; G8055; -. [EMBL / GenBank]DR PIR; A29253; A29253.DR TRANSFAC; T00395; -.DR FLYBASE; FBGN0001180; HB.DR PROSITE; PS00028; ZINC_FINGER_C2H2.DR PRODOM [Domain structure / List of seq. sharing at least 1 domain]DR SWISS-2DPAGE; GET REGION ON 2D PAGE.KW DEVELOPMENTAL PROTEIN; GAP; ZINC-FINGER; METAL-BINDING; DNA-BINDING;KW REPEAT; NUCLEAR PROTEIN.FT DOMAIN 235 349 ZINC-FINGERS I.FT DOMAIN 700 757 ZINC-FINGERS II.FT ZN_FING 240 262 C2H2-TYPE.FT ZN_FING 269 291 C2H2-TYPE.FT ZN_FING 297 319 C2H2-TYPE.FT ZN_FING 325 349 C2H2-TYPE.FT ZN_FING 705 727 C2H2-TYPE.FT ZN_FING 733 757 C2H2-TYPE.SQ SEQUENCE 758 AA; 83112 MW; 66E54365 CRC32; MQNWETTATT NYEQHNAWYN SMFAANIKQE PGHHLDGNSV ASSPRQSPIP STNHLEQFLK QQQQQLQQQP MDTLCAMTPS PSQNDQNSLQ HYDANLQQQL LQQQQYQQHF QAAQQQHHHH HHLMGGFNPL TPPGLPNPMQ HFYGGNLRPS PQPTPTSAST IAPVAVATGS SEKLQALTPP MDVTPPKSPA KSSQSNIEPE KEHDQMSNSS EDMKYMAESE DDDTNIRMPI YNSHGKMKNY KCKTCGVVAI TKVDFWAHTR THMKPDKILQ CPKCPFVTEF KHHLEYHIRK HKNQKPFQCD KCSYTCVNKS MLNSHRKSHS SVYQYRCADC DYATKYCHSF KLHLRKYGHK PGMVLDEDGT PNPSLVIDVY GTRRGPKSKN GGPIASGGSG SGSRKSNVAA VAPQQQQSQP AQPVATSQLS AALQGFPLVQ GNSAPPAASP VLPLPASPAK SVASVEQTPS LPSPANLLPP LASLLQQNRN MAFFPYWNLN LQMLAAQQQA AVLAQLSPRM REQLQQQNQQ QSDNQEEEQD DEYERKSVDS AMDLSQGTPV KEDEQQQQPQ QPLAMNLKVE EEATPLMSSS NASRRKGRVL KLDTLLQLRS EAMTSPEQLK VPSTPMPTAS SPIAGRKPMP EEHCSGTSSA DESMETAHVP QANTSASSTA SSSGNSSNAS SNSNGNSSSN SSSNGTTSAV AAPPSGTPAA AGAIYECKYC DIFFKDAVLY TIHMGYHSCD DVFKCNMCGE KCDGPVGLFV HMARNAHS//

    Interrogation des banques de données

    La structure physique des banques peut aller d'un seul fichiers à une série de fichiers dont

    certains sont le regroupement des séquences sur certains critères (appartenance à une espèce),

    d'autres des index de mots-clés. Ce ne sont pas des bases de données et leur interrogation ne

    peut être que des requêtes simples avec des combinaisons de mot-clés à l'aide des opérateurs

    de connexion et, ou .

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Certains laboratoires ont créé à patir des banques, des bases de données (relationnelle ou

    objet) de telle façon à optimiser la gestion et surtout à permettre des requêtes beaucoup plus

    complexes comprenant des relations, des unions et intersections d'ensemble, etc.. . Citons en

    exemple :

    - système ACNUC (- système ACEDB

    Ressemblance de séquences

    La caricature du biologiste moléculaire, la plus actuelle, montrerait un biologiste ayant

    "péché" une séquence et s'exclamerait à quoi tu ressembles ou en quoi diifères-tu!

    Nous ne poserons pas la question de la pertinence de tout cartographier et de tout séquencer,

    sainte quête, en vue d'obtenir le secret de la vie, mais simplement nous allons feuilleter

    quelques pages du bréviaire.

    Deux points de vue pour répondre à la question de la similarité entre deux séquences :

    1 - l'analyse du mathématicien qui considère une séquence comme un mot construit à partir

    d'un alphabet et qui a des méthodes opératoires pour établir des fontions de mesure

    2 - l'analyse ou aussi l'expertise du biologiste qui se référera, au delà des réponses

    précédentes, à d'autres connaissances que la séquence primaire : toutes les propriétés

    biologiques

    Voici quelques classiques de la biologie moléculaire : aucune démonstration ne sera donnée,

    vous les trouverez dans les articles originaux. Dans cette catégorie de programmes, nous

    trouvons : alignement de 2 séquences, de plusieurs séquences, alignement d'une séquence

    contre une banque, recherche de consensus

    La première image

    Une représentation matricielle de points (dot-matrix), construite ainsi :

    - une croix si xi=yj (où xj est un élément de la première séquence et yj un élément de la

    deuxième séquence, sinon rien. La vision d'une suite croix consécutives dans une diagonale

    souligne des identités entre des parties des deux séquences

    M Q N W E T T A T T N Y E Q H N A W Y N N x x x x W x x E x x T x x x x V ? T x x x x T x x N x x Y x x D ? Q x x H x

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • L'expert biologiste peut indiquer qu'une substitution de valine par alanine ne change pas les

    propriétés biologiques (de même E par D).

    Méthodes globales

    La première analyse mathématique

    Levenshtein introduit en 1965 (Levenshtein 1965) deux concepts très proches de distance

    entre deux séquences A et B; l'un définit la distance comme le nombre minimum de

    substitutions, de délétions ou insertions requises pour transformer A en B, l'autre comme le

    nombre minimum de délétions ou insertions. Une distance définie ainsi a les propriétés d'une

    distance métrique, à savoir:

    ° d(A,B) ≥ 0

    ° d(A,B)=0 si A=B

    ° d(A,B)= d(B,A)

    ° d(A,B) + d(B,C) ≥ d(A,C)

    Cette distance se calcule de manière récursive (on parle de programmation dynamique) :

    Soient les séquences A de n lettres et B de m lettres; d(A,B)=d(an,bm) avec

    d(ao,bo)=0, si i

  • Exemple pédagogique:

    A C G T G C G C p(8,6)= (7,6) p(7,6)= (6,5) 0 1 2 3 4 5 6 7 8 p(6,5)= (5,4) p(5,4)= (4,3) C 1 1 1 2 3 4 4 5 5 p(4,3)= (3,2) p(3,2)= (2,1) G 2 2 2 1 2 2 3 3 4 p(2,1)= (1,0) p(1,0)= (0,0) A 3 2 3 2 2 3 3 4 5 G 4 3 3 2 3 2 3 3 4 La distance est de 4: on peut obtenir B à C 5 4 3 3 3 3 2 3 3 partir de A par 2 délétions et T 6 5 4 4 3 4 3 3 4 2 substitutions.

    L'alignement métrique proposé est:

    A C G T G C G C LCS = CGGC (longest common subsequence)

    | | ^ | | ^

    - C G A G C T -

    Le premier algorithme pour biologiste (Needleman S. and Wunsch C. 1970)

    Basé aussi sur la programmation dynamique, il ne cacule pas la différence entre deux

    séquences mais la similarité. Considérons deux séquences A(1,n) B(1,m)

    A B C N J R O C L C R P M A J Le jeu est de finir de remplir ce tableau C J N R C 3 3 4 3 3 3 3 4 3 3 1 0 0 K 3 3 3 3 3 3 3 3 3 2 1 0 0 C 2 2 3 2 2 2 2 3 2 3 1 0 0 R 2 1 1 1 1 1 2 1 1 1 2 0 0 B 1 2 1 1 1 1 1 1 1 1 1 0 0 P 0 0 0 0 0 0 0 0 0 0 0 1 0

    Le tableau 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 maximun 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 la valuation suivante :

    - score pour une identité 1- score pour une substitution, une insertion ou délétion 0

    La formule de récurrence est :

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • si ai= bj+1 S(i,j+1) -1 + s(ai,bj), si non S(i,j+1) + s(ai,bj)S(i,j) = max si ai+1= bj+1 S(i+1,j+1) -1 + s(ai,bj), si non S(i+1,j+1) + s(ai,bj)

    si ai+1= bj S(i+1,j) -1 + s(ai,bj), si non S(i+1,j) + s(ai,bj)avec évidemment S(n+1, j) = S(i, m+1) = 0

    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.

    C'est une heuristique en ce sens qu'aucune démonstration n'indique qu'il calcule le maximum

    de similarité. De plus, le nombre de séquences primaires augmentant, deux problèmes se sont

    rapidement posés :

    - la connaissance de séquences de famille de protéines montre qu'un score de substitution

    identique pour toutes les paires d'amino acides n'est pas réaliste (par exemple substituer un

    acide aspartique par un acide glutamique n'entraîne pas les mêmes conséquences biologiques

    que substituer un acide aspartique par une lysine, ...) : voir plus loin le paragraphe sur les

    matrices de substitution.

    - le score à attribuer à une série d'insertion ou de délétion est-il la somme simple des scores

    de chacun des phénomèmes.

    Ceci définit des formules de score s(ai,bj) pour chaque paire d'amino acides plus

    sophistiquées et l'introduction de score de délétion ou insertion faisant intervenir la longueur

    de segment délété ou inséré par une formulaire linéaire (a +b(longueur)).

    A partir de là, l'algorithme précédent a été modifié et d'autres ont apparu (en particulier, celui

    de Sellers (1974) qui est une modification de celui de Levenstein). Smith F. et Waterman

    (1991) ont comparé ces différents algorithmes et indiqué l'équivalence de certains (en

    particulier celui de Sellers et celui de Needleman S. et Wunsch C) et ils ont défini les

    conditions que doivent respecter les scores pour que la mesure (différence ou similarité) soit

    une métrique (inégalité triangulaire respectée). Ils ont montré que si les scores utilisés pour

    chaque paire d'amino acide est une métrique, alors la similarité ou la différence entre deux

    séquences, calculées suivant les formules de récurrence précédentes est une métrique. A

    moins de modifications importantes, cet algorithme n'est pas utlisé pour l'alignement sur une

    banque.

    Méthodes locales

    L'algorithme le plus utilisé est celui de Smith et Waterman (1981) qui identifie les sous-

    séquences maximales de deux séquences par programmation dynamique. Un matrice de score

    est construite à l'aide d'une formule de récurrence (en reprenant les mêmes notations):

    S(i-1, j-1) + s(ai, bj)S(i,j) = max S(i-k, j) - Wk

    S(i, j-k) - Wk0avec évidemment S(i, 0)= S(0, j) = 0

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • S(i,j) est le maximum de similarité entre deux segments se terminant en Ai et Bj. Une

    séquence maximale est identifiée en trouvant l'élément maximal du tableau et en le

    parcourant pour des indices décroissants jusqu'à la valeur nulle et en recherchant l'élément

    voisin maximal. Dans l'article original, le score d'une identité est nul, celui d'un mismatch

    -1/3 et Wk est égal à 1+ (1/3)k

    Méthodes approchées

    Lorsque l'alignement d'une séquence est réalisé contre une banque, le problème du temps de

    calcul devient prédominant. Les algorithmes précédents sont trop gourmands en ressource. La

    façon de voir la ressemblance a été posée d'une manière différente pour contourner cet

    obstacle et des heuristiques ont été proposées.

    FASTA (Lipman D. and Pearson W - Wilbur W.)

    Ces deux auteurs ont fait les remarques suivantes :

    - les ressemblances recherchées au "niveau biologique" concernent des fragments de

    séquences

    - de plus, dans ces fragments, la fréquence de substitution est beaucoup plus grande

    que celle d'insertion ou délétion

    Leur programme est basé sur la méthode de la diagonale, que l'on peut approcher

    intuitivement par la représentation "dot-matrix". La ressemblance se définit par comparaison

    de paire de fragments de chacune des séquences (fragment : partie de même longueur de

    chacune des deux séquences, en dot-matrix c'est un morceau d'une diagonale). Ces deux

    parties contiennent des mots communs séparés par des zones de substitution. Un fonction

    score est attribué pour un fragment et la ressemblance est mesurée par le fragment de score

    maximum.

    L'algorithme se divise en 4 étapes :

    - précodage des séquences en k-uple : mots de longeur k (4 acides nucléiques, 2 pour les

    protéines). Ceci permet une efficacité beaucoup plus grande pour la deuxième étape

    - recherche du fragment de plus haut score pour chaque diagonale qui est le score de la

    diagonale (fragment = suite de mots séparés par de régions de substitution dont la longueur

    maximale est prédéfinie (paramètre M))

    - les scores des dix meilleures diagonales vont être recalculés en utilisant une matrice de

    subtitution (PAM 250). C'est ce score qui est listé dans les résultats sous l'appellation

    init1dans les programmes antécédents à FASTA (FASTP ..). Pour FASTA, ce score (initn)

    est recalculé en essayant d'enchaîner à partir de la meilleure diagonale les fragments restants

    des 9 autres diagonales en tenant compte des insertions ou délétions dues au changement de

    diagonale.

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • - Les résulats sont classés par rapport au score précédent, et pour les meilleurs, un

    alignement et un nouveau score (Opt) entre la séquence requête et la séquence de la banque,

    sont calculés à partir de l'algorithme de Needleman et Wunsch légèrement modifié.

    BLAST (Altschul S. et al. - Karlin S. and Altschul S.)

    L'idée originale est de combiner à l'algorithme de recherche de paires de segments

    homologues entre deux séquences une statistique qui permet de les classer.

    La recherche se fait en plusieurs étapes :

    - recherche de mots communs (w-mer) entre la séquence requête et les séquences de la

    banque (celle-ci peut se faire à l'aide de matrice de substitution). Par défaut c'est Blosum62

    qui est utilisée

    - pour les mots "communs" supérieurs à un certain score (Expected), le mot est étendu si

    possible à droite et à gauche et si le nouveau score obtenu est supérieur au "cut-off" S, le

    segment est alors retenu (mis dans la liste des HSP : high scoring pair)

    - pour une séquence de la banque pour laquelle au moins un segment satisfait à la condition

    précédente, une valeur ("p-value"), basée sur une statistique de Poisson, qui évalue la

    probablité que deux séquences "au hasard" aient en commun ces HSP, est calculée et les

    résultats sont triés par valeur croissante.

    Il est à remarquer que les valeurs de E et S sont en relation. La valeur par défaut de S est

    calculée à partir de la valeur de E. Quant à la valeur par défaut de E, elle est le nombre de fois

    qu'un tel segment est attendu "au hasard" dans la banque (10 pour la valeur par défaut). Il est

    évidemment dépendant de la taille de la banque, de la fréquence des lettres (acides

    nucléiques, ammino acides)

    Le fait d'utiliser des matrices de substitution dans la première étape, pose un problème pour

    des segments déclarés ressemblant entre deux séquences alors qu'au niveau biologique cela

    n'a peut être pas de sens. Deux filtres sont prédéfinis

    - région de faible complexité (SEG)

    - région de répétitions internes (XNU)

    Ces filtres vous permettent par exemple d'éliminer des ressemblances dues uniquement à des

    régions acides ou basiques, etc.

    Matrice de substitution

    La recherche de ressemblances entre séquences, leur alignement mettent en jeu des relations

    entre entre les constituants élémentaires des séquences, les nucléotides et les amino acides.

    Les matrices de substitution sont écrites pour exprimer de telles relations. Quels sont les

    critères les plus utilisés :

    - identité : matrice unitaire

    - code génétique

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • - propriétés chimiques des amino acides

    - substitutions observées dans des structures 3D supperposables (matrice de Risler)

    - substitutions observées dans des alignements de protéines (matrice PAM, Blosum)

    Le dernier critère, qui est le plus utilisé, a un défaut originel qui vient du fait que pour

    fabriquer des alignements, on utilise très souvent des programmes qui font intervenir une

    matrice de substitution. Les deux catégories de matrices les plus utilisées sont PAM et

    Blosum.

    PAM (Dayhoff M. et al.)

    Ces matrices sont construites par étude de segments proches (moins de 15 % de différences)

    de séquences de protéines homologues. Les fréquences observées de substitutions (ou

    probabilité conditionelle : appelées "odd") sont transformées en logarithme de probabilité,

    normalisé en unité d'évolution. Le logarithme est utilisé pour que dans les programmes de

    recherche de ressemblance, la somme de ces éléments donne le logarithme de la probabilité

    pour la séquence entière (le modèle étant Markovien : indépendance de fréquences de

    substitution).

    Les éléments diagonaux de la matrice indique une évolution sans substitution.

    Pour PAM1, leur somme est telle qu'elle correspond à une probabilité de 99/100 (1 mutation

    pour 100 résidus : d'où le nom PAM acepted point mutation)

    L'indépendance des fréquences et les éléments de la matrice étant des logarithmes de

    fréquences, nous pouvons calculer PAM(N) en élevant PAM1 à la puissance N, par exemple

    pour PAM120, il faut multiplier PAM1 par elle-même 120 fois.

    BLOSUM (Henikoff S. and Henikoff J.)

    Ces matrices sont construites par étude de séquences de protéines et les séquences sont

    découpées en blocs (2000 au total) par rapport au pourcentage d'amino acides inchangés.

    Une matrice "d'odds" est calculée à partir des blocs d'alignement pour chaque valeur de

    similitude, et ensuite chaque élément est transformé en unité d'information en prenant le

    logarithme du rapport de la valeur observée à la valeur qu'on obtiendrait au hasard. Cette

    matrice est ensuite normalisée. Ces matrices sont désignées par blosum(N) (blosum pour

    blocks substitution matrix) où N représente le pourcentage de similitude. Les

    correspondances entre blosum et PAM, basées sur la théorie de l'information sont :

    - PAM250 -> blosum45 PAM160 -> blosum62 PAM120 -> blosum80

    Phylogénie

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Une première lecture de livres ou publications sur la phylogénie laisse une impression de

    discipline confuse. Une relecture accentue cette impression et l'on peut dire sans se tromper

    qu'ils existent au moins autant de méthodes d'approches que de phylogénéticiens. Nous

    n'aborderons qu'un cas particulier de méthode phénétique, souvent désignée sous le nom de

    phylogénie moléculaire. On peut quand-même tenter une classification en mettent en exergue

    leurs ressemblances et leurs différences.

    La phylogénie peut se définir comme "le cours historique de la descendance des êtres

    organisés" s'appuyant sur le concept de base de la descendance avec modification.

    Le support formel de la représentation, admise par tous, est l'arbre phylogénétique.

    - Les feuilles y représentent les "espèces" étudiées ou les taxons

    - les noeuds internes, les ancêtres virtuels ayant divergé

    - les arêtes, les liens de filiation. Les arêtes sont valuées.

    En général, les arbres sont ternaires (noeud interne a trois arêtes) et peuvent être enracinés;

    dans ce cas l'arbre est "orienté", il possède une origine qui est un noeud unaire appelé racine

    ou ancêtre.

    Un dendrogramme est un arbre additif enraciné, dont tous les chemins de la racine à chacune

    des feuilles ont la même longueur.

    DendrogrammeA B C

    A

    C

    D

    B

    E

    Arbre sans racine

    noeud

    arête

    feuille arbre : graphe connexe sans cycle

    X-arbre : on ajoute aux sommets réels (lestaxons) des sommets latents qui sont desancêtres virtuels (intermédiare virtuel)

    arbre additif : arbre phylogénétique dont lesarêtes sont valuées

    Cette représentation est le support formel de la "ressemblance" ou de la différence entre les

    objets d'étude (espèces, organismes) de la phylogénie. Là est le problème crucial et là se

    situent les différences entre phylogénéticiens. De l'anatomie comparée à la l'étude des

    caractères biologiques moléculairse, en passant par l'ontogénie et la paléontologie, le concept

    de ressemblance a été approché de manières différentes selon l'école de systématique :

    - pour les cladistes, il convient d'identifier les états primitif (plésiomorphe) et dérivé

    (apomorphe) des caractères homologues

    - pour les systématiciens phénéticiens, adepte de la taxinomie numérique, la combinaison de

    taxons ne peut être fondée que sur la base de similitude globale exprimée par des indices de

    similitudes.

    - pour les sytématiciens évolutionnistes, la similitude globale seule ne peut fournir la base

    de la reconstruction phylogénétique en raison de "fausses similitudes" ou homoplasies

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • (convergence : apparition indépendante de caractères proches et réversion : apparition d'un

    caractère ayant l'apparence de la morphologie ancestrale) et l'on doit prendre en compte

    uniquement la similitude de traits homologues.

    Nous allons nous intéresser uniquement à deux méthodes phénétiques que vous trouverez

    dans le programme "clustalv" qui permettent d'exprimer des relations de proximité à partir

    d'un indice de similarité basé sur un seul caractère : la comparaison des séquences primaires

    pour une protéine appartenant à la même famille (par exemple la lipase pancréatique).

    Nous supposons que nous pouvons définir et calculer une distance entre deux séquences

    protéiques (distance d'édition, etc.), et donc par exemple construire le tableau suivant pour 5

    séquences:

    1 2 3 4 5

    2 d12 0

    3 d13 d23 0

    4 d14 d24 d34 0

    5 d15 d25 d35 d45 0

    6 d16 d26 d36 d46 d56

    indice d'écart : d(i,j) = d(j,i)d(i,j) ≥ 0 et d(i,i)=0

    distance : d(i,j) = 0 ⇒ i = j

    distance métrique : d(i,j) ≤ d(i,k) + d(k,j)

    distance ultramétrique :d(i,j) ≤ max(d(i,k), d(j,k))

    Nous voulons passer d'une représentation d'un graphe complet (tableau double entrée) à la

    représentation par un arbre phylogénétique.

    Intuitivement nous allons passer d'un espace à (n-1) dimensions (ici 4) à un espace de

    dimension 2 : cela ne peut se faire que par une approximation.

    Plusieurs méthodes peuvent être appliquées : probabiliste, analyse en composante principale,

    classifications hiérarchiques. Les plus employées sont les dernières, basées soit sur la

    meilleure approximation tableau arbre, ou encore sur l'application d'une récurrence :

    Meilleure approximation

    - par exemple approximation des moindres carrés entre le tableau et l'arbre additif à

    construire

    Récurrence

    - la classification hiérachique descendante, basée sur la dichotomie : l'ensemble de

    séquences est partagé en deux sous-ensembles, chacun regroupant les séquences les plus

    proches entre elles. A chacun des deux sous-ensembles, on applique la même règle

    précédente et cela jusqu'à épuisement.

    - la classification hiérachique ascendante : une paire de séquences (ou OTU) sont

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • regroupées suivant un critère, ce regroupement définit un nouvel objet séquence (OTU) et

    l'on recommence la même opération avec les (n-1) objets restants après avoir recalculé un

    nouveau tableau, et ainsi de suite jusqu'à épuisement. Les méthodes vont se différencier par le

    critère de regroupement et par la méthode de calcul pour passer d'un tableau de n objets à un

    tableau de (n-1) objets.

    Dans le programme "clustalv", vous avez deux constructions par classification hiérarchique

    ascendante :

    - à partir du tableau, on définit une ultramétrique (lien moyen : l'arbre construit sera un

    dendrogramme) et la règle de regroupement concerne les deux OTU les plus proches (valeur

    minimale dans le tableau)

    - la règle de regroupement concerne les deux OTU qui produise l'arbre minimal

    Lien moyen (UPGMA)

    Cette méthode rentre dans le cadre des distances ultra-métriques. Pour passer d'un tableau

    de n objets, à un tableau de (n-1) objets où on a regroupé les objets 1 et 2 par exemple, un

    élément du nouveau tableau est calculé ainsi :

    d(i,(12)) = (n1*d(i,1) + n2*d(i,2))

    n1 + n2 où nk est le nombre d'éléments dans le sous-arbre (ou

    OTU) k

    on peut aussi définir :

    - lien simple d(i,(12)) = min [ d(i,1) , d(i,2) ]

    - lien complet d(i,(12)) = max [ d(i,1) , d(i,2) ]

    Cette méthode qui pose que les séquences à regrouper sont les plus proches (valeur minimale

    dans le tableau) sous-entend l'hypothèse de "l'horloge moléculaire" : taux de mutation

    proportionnelle au temps évolutif et identique sur toutes les branches de l'arbre

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Exemple :

    a b c d ea 0b 1 0 on regroupe a et b en Ac 2,1 1,2 0d 3,3 2,3 1,2 0e 2,8 3 2,5 3,4 0-------------------------------------------------- A c d eA 0c 1,65 on regroupe c et d en Bd 2,8 1,2e 2,75 2,5 3,4-------------------------------------------------- A B eAB 2,225 on regroupe A et B en Ce 2,75 2,95-------------------------------------------------- C eCe 2,85

    d'où le dendrogramme ou encore

    a b c d e

    A BC

    0,5 0,6

    1,421,11

    a b c d e

    Méthode NJ (Neighbor-joining : Saitou N. and Nei M. 1987)

    C'est une méthode de construction d'un arbre phylogénétique sans racine à partir d'un indice

    d'écart (par exemple distance ou dissimilarité entre séquences). Elle est basée sur la recherche

    d'une paire d'OTU (operational taxonomic units) qui minimisent la longueur totale des

    branches de l'arbre et ceci à chaque étape de regroupement.

    Nous avons un indice de proximité D sur un ensemble X de n séquences, représenté par un

    tableau à deux entrées. Nous voulons passer à une représentation par un X-arbre additif libre

    telle que la valuation sur l'arbre L (longeur des chemins entre deux feuilles) soit une "bonne

    approximation" de D. (Cela est possible sans problème si l'indice est une distance métrique)

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • Indice de proximité (D) Arbre phylogénétique additif (L)

    1 2 3 4 5

    2 d12

    3 d13 d23

    4 d14 d24 d34

    5 d15 d25 d35 d45

    6 d16 d26 d36 d46 d56

    →1

    5

    42

    3

    6

    a b c d

    Si D distance métrique : OK

    Figure 1

    L15 = L1a + L5a etc .. et Lij pour i, j ∈{1..5} soit une bonne approximation deDij

    Pour faire ceci, nous allons procéder en (n-2) cycles en répétant le processus suivant :

    - regrouper les deux OTU les plus proches en créant une arête interne entre cette paire et le

    reste des OTU suivant le critère de minimisation de la longueur de l'arbre obtenu

    - calculer la valuation intermédiaire

    - regrouper la paire dans le tableau de dissimilarité et recalculer celui-ci par le lien moyen

    Critère de sélection d'une paire d'OTU les plus proches

    Pour tous les couples d'OTU, la valeur de Sij, longueur de l'arbre pour une topologie où i et j

    sont regroupés en une paire, est calculée à partir des valeurs de dissimilarité Dkl.

    Toutes ces longueurs d'arbre sont calculées en adaptant la formule d'un arbre en étoile à un

    arbre avec une arête interne.

    Pour un arbre en étoile : S0 = ∑i=1

    N

    L iX = 1N-1 ∑i

  • Indice de dissimilarité Valeur de Sij (longueur de l'arbre pourune toplogie où i et j sont regroupés

    1 2 3 4 5

    2 d12

    3 d13 d23

    4 d14 d24 d34

    5 d15 d25 d35 d45

    6 d16 d26 d36 d46 d56

    1 2 3 4 5

    2 S12

    3 S13 S23

    4 S14 S24 S34

    5 S15 S25 S35 S45

    6 S16 S26 S36 S46 S56

    et la paire sélectionnée pour le regoupement est celle qui minimise la valeur de Sij.

    Regroupement d'une paire d'OTU et création d'une arête interne

    Schématiquement nous passons de la topologie en étoile à une topologie où une arête

    interne est créée (ici c'est S15 qui est supposé minimum).

    Etoile Création d'une arête interne

    X

    1

    2

    34

    5

    6

    →X Y

    1

    5

    6

    4

    32

    a

    Figure 2 Valuation de L1a et L5a

    Estimation de la longueur des arêtes LiX , LjX , LXY

    LXY = 1

    2(N-2) [ ∑k=1, k≠i, k≠j

    N

    (Dik + Djk ) - (N-2) D12 - 2N-3 ∑k

  • Remarque : seuls LiX et LjX sont calculés pour chaque cycle, sauf au dernier pour lesquel

    on a une trichotomie.

    Préparation du tableau de dissimilarité pour le cycle suivant

    Nous passons d'un tableau avec 6 OTU à un tableau à 5 OTU où la paire i, j est regroupée

    en un seul OTU (dans le cas de la figure 1 c'est 1 et 5 qui sont regroupés). Les nouveaux

    indices de similarité sont recalculés à l'aide de la distance de Fitch et Margoliash :

    D(i-j)k = ( Dik + Djk - Dij) / 2

    Cycle suivant

    En appliquant le même processus, deux OTU vont être regroupés, par exemple, si S23 est

    minimal :

    Etoile Création d'une nouvelle arête interne

    X

    1-5

    2

    34

    6

    → X Y2

    3

    6

    4

    1-5d

    Figure 3 Valuation de L2d et L3d

    ou encore :

    Etoile Création d'une nouvelle arête interne

    X2

    34

    61

    5

    →XY

    1

    5

    6

    4

    a

    3

    2

    d

    Figure 3 bis Valuation de L2d et L3d

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • On peut aussi avoir, par exemple, si c'est S(1-5)6 qui est minimal le schéma suivant:

    X2

    34

    61

    5

    → X Y

    1

    5 a

    3

    2b

    6

    4

    Figure 4 Valuation de Lab et L6b

    Deux propriétés importantes doivent être soulignées en rapport avec la minimalité de Sij :

    Critère d'un arbre d'évolution minimum

    Pour un arbre additif, le critère d'une paire d'éléments les plus voisins est :

    Les éléments 1 et 2 sont les plus proches si les relations d'inégalité suivantes sur l'indice

    d'écart sont satisfaites :

    ∀ i, j (i≠ 1, 2 et j≠ 1,2) : D12 + Dij < D1i + D2j et D12 + Dij < D1j + D2i

    Remarquons que ce crirère n'implique pas que D12 soit l'élèment minimal des Dij .

    Soit S12 la longueur de l'arbre où la paire (1-2) est regroupée par ajout d'une arête interne

    (voir pages précédentes)

    Théorême : La condition de minimalité de S12 est équivalente à la condition des plus proches

    voisins sur l'arbre additif.

    Estimation des longueurs de branches par les moindres carrés

    Nous avons vu que nous voulons passer d'une représentation par un indice de proximité D

    sur un ensemble X de n séquences, représenté par un tableau à deux entrées à une

    représentation par un X-arbre additif libre telle que la valuation sur l'arbre L (longeur des

    chemins entre deux feuilles) soit une bonne approximation de D. Le problème est d'obtenir

    une matrice A "la meilleur possible" telle que AL = D. La solution de cette équation par les

    moindres carrés est de minimiser l'expression :

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

  • 1

    2(N-2) ∑k=1, k≠i, k≠j

    N

    (Dik + Djk ) + 12 Dij + 1

    N-2 ∑k

  • Bibliographie

    Ressemblance- Altschul, Stephen F., Warren Gish, Webb Miller, Eugene W., Myers, and David J.Lipman (1990). Basic local alignment search tool. J. Mol. Biol. 215:403-10.

    - Karlin, Samuel and Stephen F. Altschul (1990). Methods for assessing the statisticalsignificance of molecular sequence features by using general scoring schemes. Proc. Natl.Acad. Sci. USA 87:2264-68.

    - Karlin, Samuel and Stephen F. Altschul (1993). Applications and statistics for multiplehigh-scoring segments in molecular sequences. Proc. Natl. Acad. Sci. USA 90:5873-7.

    - Levenshtein V. (1965) Binary codes capable of correcting deletions, insertions, reversals.Cybernetics and Control Theory 10 (8): 707-710

    - Needleman S. And Wunsch C. (1970) A general method applicable to the search forsimilarities in the amino acid sequence of two proteins. J. Mol. Biol. 48, 443-453

    - Pearson W and Lipman D. (1988) Improved tools for biological sequence comparison.Proc. Natl. Acad. Sci. USA 85, 2444-2448

    - Sellers P. (1974) On the theory and computation of evolutionary distances. SIAM J. Appl.Math. 26, 787-793

    - Smith T. and Waterman M. (1981) Identification of common molecular subsequence. J.Mol. Biol . 147, 195-197

    - Smith T. Waterman M. and W. Fitch (1981) Comparative biosequence metrics. J. Mol.Evol. 18, 38-46

    - Wilbur W. and Lipman D. (1983) Rapid similarity searches of nucleic acid and protein databanks. Proc. Natl. Acad. Sci. USA 80, 726-730

    - Wilbur W. and Lipman D. (1984) The context dependant comparison of biologicalsequences. SIAM J. APPL. MATH. 44, 557-567

    Matrices de substitution- Dayhoff M., Barker W. and Hunt L. (1983) Establishing homologies in protein sequences.Methods in Enzymol. 91, 524-545

    - Henikoff S. and Henikoff J. (1992) Amino acid substitution matrices from protein blocks.Proc. Nat. Acad. Sci. USA 89, 10915-10919

    - Risler J., Delorme M., Delacroix H and Henaut A. (1988) Amino acid substitutions instructurally related proteins - A pattern approach : determination of a new and efficientscoring matrix. J. Mol. Biol. 204, 1019-1029

    Phylogénie- Darlu P. et Tassy P. (1993) Reconstruction phylogénétique. Collection Biologie Théorique

    : Ed Masson

    - Fitch W. and Margoliash E (1967) Construction of phylogenetic trees. Science 155, 279-284

    - Saitou N. and Nei M. (1987) The Neighbor-joining method : a new method forreconstructing phylogenetic trees. Mol. Biol. Evol. 4 , 406-425

    ___________________________________________________________________________Maîtrise de Biochimie - BioInformatique 1996

    SommaireIntroductionSystèmes d'exploitationCommunications et réseauxAnalys des séquences biologiquesIntroductionBanque de donnéesRessemblance des séquencesMatrice de substitutionPhylogénie

    Bibliographie