L3 BOE

Biologie Evolutive

Liste des cours et versions :

Histoire de l'idée d'évolution 05-01-2025

Quelques vidéos qui reprennent des points vus en cours: Voir ici      

Pour compléter le cours, le texte de la sixième édition "De l'origine des espèces". Il s'agit de la dernière édition publiée du vivant de Darwin. Elle diffère par plusieurs points de la première édition.

     Darwin C (1906 - original publication 1876) De l’origine des espèces. Schleicher Frères, Paris, France

Description du monde vivant 11-12-2024

     Pour compléter le cours:

     Casane D, Laurenti P (2013) Why coelacanths are not 'living fossils': a review of molecular and morphological data. Bioessays 35: 332-338 doi 10.1002/bies.201200145


Reconstruction de phylogénies 15-01-2024

     Un article en français qui est un peu ancien mais qui est une bonne synthèse:

     Lopez P, Casane D, Philippe H (2002) Phylogénie et évolution moléculaires. médecine/sciences 18: 1146-1154 doi 10.1051/medsci/200218111146


Histoire de l'homologie 18-08-2024

Des concepts importants à comprendre: Téléonomie et Téléologie.

Espèce et spéciation 10-01-2021

Biogéographie 25-09-2024

Evolution de la détermination du sexe 25-01-2021

Evolution de l'autopode 12-12-2024

Oiseaux et dinosaures 26-12-2020


Compter le temps 15-09-2024


Diapos du TP


Énoncés des TD 2024-2025


TD 2: Pourquoi les hommes sont plus grands que les femmes ?

          Lien pour charger le film à visionner avant le TD 2

     Au fur et à mesure du visionnage du film, notez toutes les hypothèses testées

     et comment elles sont réfutées ou non.

Pensez à télécharger les vidéos dès maintenant car j'ai peur que le serveur du labo ne soit surchargé si tout le monde les télécharge au dernier moment.


TD 3: La coévolution

     Pour répondre aux premières questions, vous pouvez vous aider de ce cours:

     Cours sur quelques concepts de l'écologie


Code R permettant de modéliser la résistance à la TTX chez la couleuvre et la production de TTX chez les tritons

Pour info, il n'y a pas d'erreur dans l'exécution du code... Testé le 6/2/2024

Bien sûr, il s'agit d'un modèle extrèmement simple qui est loin de représenter tout ce que l'on connait de l'évolution de ces caractères. Il est bon de se rappeler de cet aphorisme de Georges Box:

All models are wrong but some are useful

In Box, G. E. P. (1979), "Robustness in the strategy of scientific model building", in Launer, R. L.; Wilkinson, G. N. (eds.), Robustness in Statistics, Academic Press, pp. 201–236.


Pour l'utiliser, il faut installer R (https://cran.r-project.org) et pour que ce soit un peu plus simple à utiliser, vous pouvez aussi installer RStudio Desktop qui est une IDE (integrated development environment) pour R (https://rstudio.com/products/rstudio/).

Lancez Rstudio, et ouvrez une page pour un nouveau script R. Copiez le code suivant et vous pouvez alors l'exécuter (ctrl+A et ctrl+R sur Windows et cmd+A et cmd+R sur MacOSX).


# Fonction qui permet d'afficher deux histogrammes superposés avec des légendes

hist_both <- function(tritons.synthese, couleuvres.resistance, maxx=100, maxy=100, iteration="") {

  hist(couleuvres.resistance, xlim=c(0, maxx), ylim=c(0, maxy), breaks = seq(from=0, to=100, by=2),

       col=rgb(red = 0.5, green = 0.5, blue = 0.5, alpha = 0.5),

       xlab="Quantité de TTX", ylab="Nombre", main=iteration)

  par(new=TRUE)

  hist(tritons.synthese, xlim=c(0, maxx), ylim=c(0, maxy), breaks = seq(from=0, to=100, by=2),

       col=rgb(red = 0., green = 0., blue = 0.6, alpha = 0.5), xlab="", ylab="", axes = FALSE, main="")

  legend(x="topleft", legend=c("Synthèse TTX chez le triton", "Résistance TTX chez la couleuvre"),

         col=c(rgb(red = 0., green = 0., blue = 0.6, alpha = 0.5),

               rgb(red = 0.5, green = 0.5, blue = 0.5, alpha = 0.5)), pch=15, bty="n")

}


taille.population.couleuvre <- 100

taille.population.triton <- 100

Nombre.iterations <- 100


# Population initiale tirée dans une loi normale de moyenne 20 pour la résistance et 40 pour la synthèse

couleuvres.resistance <- rnorm(taille.population.couleuvre, mean=20, sd=3)

tritons.synthese <- rnorm(taille.population.triton, mean=40, sd=3)


# Je fais tourner le modèle sur Nombre.iterations itérations

for (iteration in 1:Nombre.iterations) {

  

  hist_both(tritons.synthese, couleuvres.resistance, maxy=40, iteration=as.character(iteration))

  

  # Rencontre des couleuvres et des tritons

  rencontres <- floor(min(taille.population.couleuvre, taille.population.triton)/2)

  couleuvres <- sample(1:taille.population.couleuvre, rencontres, replace = FALSE)

  tritons <- sample(1:taille.population.triton, rencontres, replace = FALSE)

  

# Je regarde qui meurt, couleuvre ou triton

  mort.couleuvre <- ifelse(couleuvres.resistance[couleuvres] < tritons.synthese[tritons], TRUE, FALSE)

  mort.triton <- !mort.couleuvre

  

# Je les fais mourir

  if (any(mort.couleuvre)) couleuvres.resistance[couleuvres[mort.couleuvre]] <- NA

  if (any(mort.triton)) tritons.synthese[tritons[mort.triton]] <- NA

  

  couleuvres.resistance <- na.omit(couleuvres.resistance)

  tritons.synthese <- na.omit(tritons.synthese)

  

  # S'il y a eu des morts chez les couleuvres, je fais de la reproduction

  if (length(couleuvres.resistance) < taille.population.couleuvre) {

    # Reproduction non-sexuée

    nouvelles.couleuvres <- sample(couleuvres.resistance, taille.population.couleuvre-length(couleuvres.resistance), replace = TRUE)

    # Mutation

    nouvelles.couleuvres <- rnorm(taille.population.couleuvre-length(couleuvres.resistance), nouvelles.couleuvres, sd=3)

    couleuvres.resistance <- c(couleuvres.resistance, nouvelles.couleuvres)

    # J'élimine les valeurs aberrantes

    couleuvres.resistance <- ifelse(couleuvres.resistance < 0, 0, couleuvres.resistance)

    couleuvres.resistance <- ifelse(couleuvres.resistance > 100, 100, couleuvres.resistance)

  }

  

  # S'il y a eu des morts chez les tritons, je fais de la reproduction

  if (length(tritons.synthese) < taille.population.triton) {

    # Reproduction non-sexuée

    nouveaux.tritons <- sample(tritons.synthese, taille.population.triton-length(tritons.synthese), replace = TRUE)

    # Mutation

    nouveaux.tritons <- rnorm(taille.population.triton-length(tritons.synthese), nouveaux.tritons, sd=3)

    tritons.synthese <- c(tritons.synthese, nouveaux.tritons)

    # J'élimine les valeurs aberrantes

    tritons.synthese <- ifelse(tritons.synthese < 0, 0, tritons.synthese)

    tritons.synthese <- ifelse(tritons.synthese > 100, 100, tritons.synthese)

  }

  

  Sys.sleep(0.5)

}



TD 4: Déchiffrer les mystères de la vie

          Lien pour charger le film à visionner avant le TD 4

Deux articles qui peuvent vous servir à répondre à certaines critiques décrites dans le film:

Casane D, Laurenti P (2014) Syllogomanie moléculaire : l’ADN non codant enrichit le jeu des possibles. Médecine & Science 30: 1177-1183


Papadopoulos, C., Chevrollier, N. & Lopes, A. 2022. Exploring the peptide potential of genomes. Methods Mol Biol, 2405, 63-82.


Patrick Laurenti et Didier Casane sont chercheurs dans le laboratoire EGCE de l'Université Paris Saclay et Anne Lopes est chercheur au laboratoire I2BC aussi à l'Université Paris Saclay.

Au cours du visionnage du film, notez tous les faits et hypothèses qui

pourraient remettre en cause l'évolution selon les personnes interviewées.

Sur la base de vos connaissances, quelles réponses pouvez-vous apporter ?

Voir aussi le texte sur Téléonomie et Téléologie.

_______________________

Au sujet de Pierre Theilhard de Chardin:

https://m.facebook.com/story.php?story_fbid=pfbid09THaB6va6ruU4NLvyo7r1XrY8qV93bC9Cg3csguDYLgLf7DJwY42cCu8ZtRoMHg8l&id=814012935

__________________________________


Pensez à télécharger les vidéos dès maintenant car j'ai peur que le serveur du labo ne soit surchargé si tout le monde les télécharge au dernier moment.


Sujets de 2018-2019:

1ère session

2ème session