Hasard et incertitude, les défis qu’ils posent

Il y a un numéro spécial du Pour la Science (N°385 Novembre 2009 Hasard et incertitude, les défis qu’ils posent) que l’on m’a signalé. D’abord Jude, puis des collègues, enfin deux amis.

En allant chercher mon Canard Enchainé j’en ai attrapé un exemplaire en me disant que le sujet n’allait pas vieillir le temps que je finisse Les Mondes Darwiniens (lecture que je savoure en prenant presque autant de notes qu’il y a du texte.

Avant de le mettre au frigo j’ai feuilleté, histoire de savoir ce que je manque en lecture immédiate et bien sûr la première phrase de l’abstract du papier de Jean-Jacques Kupiec L’ADN entre hasard et contraintes a attiré mon attention :

Depuis quelques années, le dogme de la biologie moléculaire est remis en cause. Loin d’être un programme génétique gouvernant l’organisme, l’ADN est un générateur aléatoire de protéines soumis à des contraintes sélectives imposées par son environnement.

Je ne peux imaginer que Kupiec, ou n’importe quel biologiste, puisse ne pas connaître le dogme central de la biologie moléculaire (je sais qu’on a des surprises, je sais). Je pars du principe que les gens savent de quoi ils parlent.

Intrigué par l’assertion de Kupiec j’ai jeté un coup d’oeil à son papier. J’ai beaucoup aimé et il est certain que je reviendrai pour une lecture beaucoup plus attentive. Seulement, il n’est pas question du dogme de la biologie moléculaire ! L’accroche est du genre mauvais journalisme scientifique et elle dessert un article par ailleurs intéressant; ça m’a rappelé pourquoi j’évite soigneusement les revues de vulgarisation scientifique ou certains livres grand public.

  1. #1 par Nox le octobre 30, 2009 - 5:30

    Yo,

    S’ils font ça avec la bio et la physique je te laisse imaginer ce que je trouve en psychologie y compris sociale. Après lecture j’ai souvent l’envie de me tirer une balle (où plutôt de tirer une balle au journaliste, faut pas déconner…).

    Néanmoins puisque le sujet abordé et le hasard et l’incertitude (en sciences) et que c’est pile poil ce qui m’intéresse j’irai acheter : merci pour l’info !

    Nox

  2. #2 par Oldcola le octobre 30, 2009 - 6:19

    Salut Nox,
    tes remerciements directement reversés à Jude.

    STP, pas de balles ;-)

  3. #3 par Tom Roud le novembre 1, 2009 - 10:16

    Oh, je suis sûr que l’article de Desplan (que je n’ai pas lu mais dont je connais les travaux) sur la nécessité du choix stochastique dans la formation des récepteurs visuels va te convaincre de la nécessité du stochastique en biologie…

  4. #4 par Oldcola le novembre 1, 2009 - 10:25

    Salut Tom,

    parce qu’il faut me convaincre “du stochastique en biologie” ?!

  5. #5 par Tom Roud le novembre 1, 2009 - 10:30

    Bah je ne sais pas, je n’ai peut-être pas bien compris ce billet, mais pour revenir sur un débat d’il y a quelques semaines, je crois que tu n’étais pas le dernier à aimer la métaphore “cellule=ordinateur”; au moins on voit clairement avec ces histoires qu’une cellule est un étrange ordinateur qui ne donne pas toujours le même résultat pour le même problème !

  6. #6 par Oldcola le novembre 1, 2009 - 10:55

    J’adore le parallèle entre une cellule et un ordinateur en tant que systèmes de traitement d’information. Et je connais plein de programmes qui à chaque run donnent des résultats différents. Même des tout petits et simples scripts, JeanWalker en est un.

    Je connais même des algorithmes génétiques, basés sur des approches stochastiques.

    Ou des ordinateurs qui savent planter de façon stochastique ;-)

    Sérieusement, pourquoi un système de traitement d’information non téléologique n’utiliserait pas des algorithmes stochastiques ?
    On utilise cette approche de plus en plus, elle est excellente.

  7. #7 par Tom Roud le novembre 2, 2009 - 4:01

    pourquoi un système de traitement d’information non téléologique n’utiliserait pas des algorithmes stochastiques ?

    Ça dépend des algorithmes stochastiques. Par exemple, les algorithmes génétiques sont peut-être très trendy et utiles pour moucher des crétins créationnistes, mais pour la plupart des problèmes où ils sont utilisés, je ne sais pas s’ils sont si utiles/puissants que ça comparés à d’autres algorithmes Monte Carlo d’optimisation (recuit simulé par exemple). Je sais bien qu’on aime beaucoup les algorithmes génétiques sur les blogs de science, mais qu’ils ne sont pas forcément la panacée quand les problèmes deviennent un peu compliqués (notamment quand il y a beaucoup de minima locaux).

    Après, pour la biologie, le meilleur exemple d’algorithme stochastique est peut-être le système immunitaire qui fait une vraie sélection darwinienne pour garder les bons anticorps capables de différencier soi du non-soi.

  8. #8 par Oldcola le novembre 2, 2009 - 8:16

    Ça dépend des algorithmes stochastiques, en effet.
    Je n’ai pas insisté sur le genre à utiliser, je pense que la facilité avec la quelle on peut poser des hypothèses conditionne le choix.

    Les algorithmes génétiques sont certainement trendy, mais aussi très utiles quand tu veux analyser un système en évitant de faire des hypothèses ‘à la noix’. Pour éviter les minima locaux il faut payer le prix : recombiner.
    Le cros problème que je leur trouve (qui est lié avec les minima locaux) est que si les ‘solutions’ sont bonnes, elles sont rarement optimales. 
    Mais, comme tu le signales, il y a d’autres approches qui permettent parfois de fignoler les résultats.

    Reste que les approches stochastiques sont utilisables et utiles pour le traitement d’infos, en biologie comme en informatique.

    Le système immunitaire est un très bel exemple et il y a des systèmes pour l’étude des interactions cible-médicament in silico qui en sont inspirés.

    Pour revenir à ta remarque initiale, penses-tu toujours que l’on devrait me ‘convaincre’ de l’utilité des modélisations stochastiques en biologie ?

  9. #9 par judem le novembre 2, 2009 - 10:08

    @Tomroud et OldCola:

    1) Monte Carlo avec recuit simulé par exemple, c’est ce qu’on voit juste avant les algo génétiques et après les champs de Markov dans le DEA que j’ai fait., et on utilise tout ça au Labo. Le problème du nombre de minima locaux et de leurs répartitions relatives est un problème dans tous les cas. Les AG te permettent de donner de meilleurs résultats, surtout lorsque les contraintes ou la formulation te font sortir des cas où les autres méthodes marchent bien ou sont simplement utilisables, mais ça demande un certain doigté. Le problème est plutôt qu’il n’y a pas, pour l’instant, de méthodologie universelle pour être efficace.

    2) L’aspect stochastique intervient beaucoup dans mon sous-domaine de l’IA. Par ailleurs, si tu veux en utiliser sans passer par du générateur “pseudo-”, tu peux considérer des architectures analogiques et là t’es gâté au niveau bruit … on utilise ce genre d’architectures au Labo. Mais là on en revient à des discussions qu’on a déjà eu.

  10. #10 par Oldcola le novembre 2, 2009 - 11:39

    Salut Jude,

    merci pour les infos. Un de ces jours je regarderai ce que les “Monte Carlo avec recuit simulé” sont, surtout si tu peux me pointer vers une source suffisamment simple pour le pauvre biomol que je suis.

    Avec des AG qui utilisent la recombinaison à des taux élevés j’ai eu des résultats surprenants; mais les temps des runs sont prohibitifs pour la majorité des cas.

    Je ne suis pas sûr que Tom partait dans le domaine des analogiques, au contraire, mais je me trompe peut-être.

  11. #11 par judem le novembre 2, 2009 - 12:14

    Je vois plus tard pour la source, les trucs pédagogiques c’est pas forcément facile à trouver.

    Pour les runs, t’exécutes sur quoi ?

  12. #12 par Oldcola le novembre 2, 2009 - 12:24

    Ah Jude, tu me mets encore le nez dans le fait que je suis un programmeur du dimanche 29 février !

    Applescripts, sur Mac. Voilà, t’es content là, même les poules rigolent. Même moi j’en rigole.

    Tiens, j’y pense maintenant, faudrait te donner un lien vers Cynet et qu’on discute la partie Dreams, ça pourrait t’intéresser.

  13. #13 par judem le novembre 2, 2009 - 3:01

    Y’a la prog d’un côté, de préférence en utilisant un language te permettant des joyeusetés genre pointeurs sur pointeurs.

    Mais ça n’est qu’un aspect. Les processeurs des PC d’aujourd’hui contiennent des millions de transistors (regroupés par bloc) qui sont en général non utilisés, sauf par des applications spécifiques. Y’a même des blocs pour lesquels tu peux charger un paquet de variables en parallèle (64*64 par exemple) et appliquer des opérations très lourdes en simultané et en un coup d’horloge (ou quelques coup selon le cas) ! Y’a des librairies sur les sites des constructeurs pour ça (intel par exemple, des milliers d’opérations mathématiques, de traitement du signal, d’IA etc. sont directement câblées dans les processeurs). Y’a mieux : j’ai un collègue qui utilise directement deux cartes graphiques (nvidia en l’occurence) pour ses calculs d’AG, ça dépote pas mal … en effet, les cartes graphiques réalisent un nombre impressionnant de calculs par coup d’horloge et par seconde, il suffit de les utiliser comme moteurs de calculs plutôt que comme carte graphique ! Après tu peux évidemment clusteriser les PC et cie. Encore mieux : tu utilises des FPGA (matrices de blocs de transistors reprogrammables pour faire simple) de manière à obtenir des processeurs spécifiques pour ton application. Si le FPGA est suffisamment gros, tu dupliques autant de fois que possible à l’intérieur et tu obtiens un cluster spécialisé dans une seule puce !

  14. #14 par Tom Roud le novembre 3, 2009 - 3:44

    “Pour éviter les minima locaux il faut payer le prix : recombiner.”

    Mouais, j’ai un peu pratiqué, je pense que ce n’est pas si simple dans le sens où la recombinaison ne va que rarement te sortir de minima locaux efficacement (i.e. de façon exploitable ensuite par l’algorithme). Si le paysage d’évolution est simple, recombiner va accélérer la convergence, mais dans le cas contraire, cela va dépendre beaucoup de la taille de la population, de la structure du problème et du taux de recombinaison. Bref, il y a autant d’ad hoc dans les algorithmes génétiques que dans les autres algorithmes, et c’est bien normal : il n’y a pas de free-lunch
    http://tomroud.com/2007/01/09/le-no-free-lunch-theorem/

    Sinon, en fait, non, tu as l’air convaincu de l’intérêt du stochastique en biologie a priori.

  15. #15 par Oldcola le novembre 3, 2009 - 7:39

    Je sais que des merveilles existent, mais si elles me font envie elles sont bien en dehors de mes compétences et de mes besoins.
    J’ai pris note pour le prochain dimanche 29 février.

  16. #16 par judem le novembre 9, 2009 - 9:54

    Faut que je balaie à l’occasion ce qu’il peut y avoir de pédagogique rapport à ta demande, toutes mes sources sont des sources de matheux, pas très pédagogiques …

  17. #17 par oldcola le novembre 9, 2009 - 10:44

    Salut,
    j’ai lu ici ce qu’était un recuit et je me suis rendu compte que j’en faisais sans le savoir ! Je manque de vocabulaire pour ce genre de choses, mais pas d’idées ;-)

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Twitter picture

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Connexion à %s

Suivre

Get every new post delivered to your Inbox.

Joignez-vous à 371 followers