Accessibility Tools

- Le blog participatif de bioinformatique francophone depuis 2012 -

Dans l'antre des réseaux : Principes et perspectives dans la biologie

Avant d'aller plus loin sur ce billet, je sou­haite pré­ci­ser que je ne connais abso­lu­ment pas tout sur la théo­rie des graphes. Ceci n'est qu'une modeste intro­duc­tion, visant soit à ins­pi­rer de nou­velles idées pour de futurs articles, soit à sus­ci­ter un simple "Hmmm… inté­res­sant." chez le lec­teur. Mes connais­sances sont assez limi­tées à ce sujet, les cours que j'ai eues com­men­çant à dater.

La théorie des graphes : Kezako ?

La théo­rie des graphes est un sujet de recherche en mathé­ma­tiques et infor­ma­tique qui étu­die… les graphes. Sur­pre­nant, non ? Elle prend racine avec Euler et le pro­blème des ponts de König­sberg, en 1736.

Les sept ponts de König­sberg (Leon­hard Euler, Solu­tio pro­ble­ma­tis ad geo­me­triam situs per­ti­nen­tis, 1741)

La manière dont on m'a pré­sen­té le pro­blème en cours est la sui­vante : trou­ver un che­min reliant toutes les lettres (ABCD) en uti­li­sant les ponts (abc­defg). Puis, on a com­plexi­fié en indi­quant que les ponts se détrui­saient après un pas­sage. Enfin, on nous a deman­dé de tra­cer le che­min le plus court entre deux lettres (entre C et B, par exemple).

Pour les plus vifs d'entre nous (je ne vous indi­que­rai pas si j'en fai­sais par­tie 😉 ), la solu­tion pour repré­sen­ter ce pro­blème s'imposait. Mais cer­tains dans l'amphi se sont amu­sés à des­si­ner les che­mins en l'air, en essayant de rete­nir quels ponts étaient déjà uti­li­sés ou non.

Pour pou­voir répondre aux énigmes le plus sim­ple­ment pos­sible, il fal­lait des­si­ner notre pre­mier graphe ou réseau.

les sept ponts de Königsberg, modélisé sur Cytoscape
Les sept ponts de König­sberg, modé­li­sé sur Cytos­cape

Il n'est pas beau ce pre­mier réseau ? Un peu de ter­mi­no­lo­gie s'impose tout de même : les ellipses en rouge sont des nœuds (ou som­mets pour les plus puristes) tan­dis que les liens sont des arêtes (les arcs). C'est quand même plus simple de répondre aux ques­tions pré­cé­dem­ment posées, non ? Et, qu'on se le dise, c'est plus joli.

Complexifions un petit peu…

C'est génial, on a notre pre­mier réseau, mais on en fait quoi ? Il ne peut pas faire grand-chose à part repré­sen­ter som­mai­re­ment une pauvre île qui a cinq pauvres ponts.

Et si… Ima­gi­nons, nous sommes un jour de mar­ché, l'île est bon­dée comme pas pos­sible. La milice locale décide que les ponts n'iront que dans un sens, per­met­tant une régu­la­tion de la cir­cu­la­tion. Quel impact cela aura sur notre réseau ?

les sept ponts de Königsberg, modélisé sur Cytoscape en graph orienté

Super ! On a main­te­nant un réseau orien­té (c'est son petit nom). Par exten­sion, le tout pre­mier réseau que je vous ai pré­sen­té est un réseau non orien­té.

On com­mence à avoir une belle repré­sen­ta­tion… Que pour­rions-nous ajou­ter de plus ? Eh bien, repre­nons notre his­toire de milice qui doit régu­ler la cir­cu­la­tion. Après quelques jours de mar­ché (oui, c'est un mar­ché gigan­tesque…), ils remarquent que les per­sonnes pré­fèrent uti­li­ser les ponts qui mènent au point A. Cela per­met un tra­jet plus court si on doit aller de B vers C (ou de C vers B), ce qui aug­mente fata­le­ment le tra­fic. De plus, les gens évitent le point D, car il y a sou­vent des rats morts à cet endroit. Il n'y aurait pas moyen de repré­sen­ter cela ?

Par­fait, on arrive à dis­tin­guer clai­re­ment qu'un nœud est pré­fé­ren­tiel­le­ment uti­li­sé que d'autre. On a donc un réseau pon­dé­ré.

Applications pratiques

Bon, je vous bas­sine avec cette his­toire de réseaux et de ponts, et vous seriez en droit de pen­ser ceci :

"Mais Ista, tu nous saoules avec ton his­toire de ponts et de milice. En plus, il n'y a aucun lien avec la bio­lo­gie !"

Et je vous répon­drai sûre­ment ceci :

"Détrom­pez-vous. Il y a un énorme lien avec la bio­lo­gie !"

Les appli­ca­tions de la théo­rie des graphes sont nom­breuses, et de plus en plus de domaines en ont besoin. On l'a d'abord uti­li­sée pour repré­sen­ter les inter­ac­tions sociales, afin d'observer les connexions sociales entre dif­fé­rentes per­sonnes. Il y a même une théo­rie qui a émer­gée, la théo­rie des six degrés de sépa­ra­tion. Elle sug­gère que cha­cun d'entre nous, sur Terre, est connec­té à n'importe quelle autre per­sonne (tou­jours sur Terre) par l'intermédiaire d'une chaîne de connais­sances qui ne compte pas plus de six liens inter­mé­diaires.

Chaque per­sonne est reliée à une autre par un maxi­mum de six inter­mé­diaires, la per­sonne à la base de la flèche connait la per­sonne à la pointe de la flèche (L'inverse peut être vrai).

Reve­nons aux autres appli­ca­tions. Les appli­ca­tions qu'on peut retrou­ver sont l'infrastructure et la logis­tique (pour les routes et réseaux de trans­port), l'informatique (struc­ture de don­nées), l'optimisation (che­min le plus court) et enfin, la bio­lo­gie.

Et oui, une des repré­sen­ta­tions les plus simples et claires de la bio­lo­gie passe par la théo­rie des graphes. Encore aujourd'hui, de nom­breux outils d'analyses se basent sur l'utilisation des réseaux. Un exemple peut-être ?

Applications biologiques /​ Bio-Info

Je vais vous faire une com­pa­rai­son très simple. Dans un pre­mier temps, vous allez lire le texte qui explique un sys­tème de régu­la­tion. Puis je vous mon­tre­rai le réseau asso­cié. Dites-moi dans les com­men­taires quelle méthode vous pré­fé­rez pour com­prendre ce sys­tème de régu­la­tion !

On sou­hai­te­rait étu­dier un réseau com­po­sé de 4 gènes :

G1n, Jag3r, V0dk4, et Port0 (Toutes res­sem­blances avec des élé­ments exis­tants sont bien sûr for­tuites ;)). Le gène G1n active la trans­crip­tion du gène Jag3r, tout en répri­mant Port0, et ce der­nier inhibe sa trans­crip­tion. V0dk4 active G1n et Jag3r, mais se fait inhi­ber par Port0. Jag3r, lui, réprime uni­que­ment Port0.

Voi­là, je vous laisse quelques ins­tants pour essayer d'imaginer le sché­ma. Ou alors…

Un exemple de régulation avec différent gènes.

Et voi­là, on a notre réseau de régu­la­tion, qui (à mon sens) est beau­coup plus direct et facile à com­prendre. D'un simple coup d'œil, on peut com­prendre quel(s) gène(s) active la trans­crip­tion, et quel(s) gène(s) réprime. Pas mal, non ?

C'est la fin de ce petit billet à pro­pos de la théo­rie des graphes. J'espère qu'il vous a plu et que vous avez pu apprendre de nou­velles choses. N'hésitez pas à essayer le petit jeu que je vous décris plus bas, dans votre labo­ra­toire, et je vais vous lais­ser sur un réseau. Sau­rez-vous iden­ti­fier ce que c'est ?

La réponse

Un petit jeu qui peut être amu­sant dans votre labo :

Deman­dez à chaque per­sonne de don­ner l'identité de trois per­sonnes avec qui elle passe le plus de temps. Enre­gis­trez les réponses, et construi­sez un réseau de connais­sances de votre labo­ra­toire… Vous seriez sur­pris de consta­ter com­ment les connexions humaines peuvent se tis­ser de façon sur­pre­nante et inat­ten­due. Et vous pour­rez véri­fier la théo­rie des six degrés de sépa­ra­tion.

Un immense mer­ci à Aze­rin, et ZaZo0o pour la relec­ture de ce billet et leurs avis construc­tifs !

Vous avez aimé ? Dites-le nous !

Moyenne : 5 /​ 5. Nb de votes : 5

Pas encore de vote pour cet article.

Partagez cet article



Pour continuer la lecture :


Commentaires

2 réponses à “Dans l'antre des réseaux : Principes et perspectives dans la biologie”

  1. Avatar de Denis Puthier
    Denis Puthier

    Bon­jour. Mer­ci beau­coup Ista pour ce super bou­lot et cette intro très didac­tique. Une remarque : à ma connais­sance, le réseau pon­dé­ré (weigh­ted graph) est plu­tôt consi­dé­ré comme un graphe dans lequel les arêtes portent les poids (cf matrice d'adjacence). Elles devraient donc etre plus ou moins larges quand on les repré­sente.
    Féli­ci­ta­tion, à nou­veau pour ce post.
    Denis

  2. Bon­jour,

    Mer­ci beau­coup pour votre com­men­taire !! Je suis en train de refaire un réseau avec les chan­ge­ments que vous avez indi­qué.

    A nou­veaux mer­ci beau­coup !!

Laisser un commentaire

Pour insérer du code dans vos commentaires, utilisez les balises <code> et <\code>.