TD sur les modèles non linéaires David Makowski, INRA 3octobre2014 1 TD1 : Modèles linéaires et non linéaires pour optimiser la dose d engrais 1.1 Objectif L objectif est d estimer les paramètres de trois modèles simulant la réponse du rendement du blé à la dose d engrais azotée (d). Les équations des modèles sont définies ci-dessous. Modèle 1 : modèle quadratique f(d) = 1 + 2 d + 3 d 2 Modèle 2 : modèle linéaire plus plateau f(d) = 1 si d> 2 f(d) = 1 + 3 (d 2 ) sinon Modèle 3 : modèle quadratique plus plateau f(d) = 1 si d> 2 f(d) = 1 + 3 (d 2 ) 2 sinon Des mesures de rendement ont été réalisées sur une parcelle de blé pour six doses d engrais : rendement = 5.1 t.ha 1 pour d =0 rendement = 7.5 t.ha 1 pour d = 50kg.ha 1 rendement = 9.2 t.ha 1 pour d = 100kg.ha 1 rendement = 9.8 t.ha 1 pour d = 200kg.ha 1 rendement = 9.6 t.ha 1 pour d = 250kg.ha 1 rendement = 9.7 t.ha 1 pour d = 300kg.ha 1 1.2 Questions Créer deux vecteurs incluant les doses et les mesures de rendement. Archiver ces vecteurs dans un data.frame 1
Estimer les paramètres du modèle quadratique avec les données en utilisant la fonction R lm. Afficher les résultats de l estimation. Faire un graphique présentant les données et la courbe de réponse du rendement calculée par le modèle quadratique. Utiliser plot et lines. Définir deux nouvelles fonctions R permettant de calculer un rendement en fonction d une dose d engrais à l aide du modèle linéaire plus plateau et du modèle quadratique plus plateau. Les paramètres des modèles doivent apparaître en tant qu arguments des fonctions. Estimer les paramètres des modèles linéaire plus plateau et quadratique plus plateau avec les données en utilisant l instruction nls. Afficher les résultats. Comparer graphiquement les courbes de réponse du rendement calculées à l aide des trois modèles. Déterminer les valeurs des plus petites doses permettant de maximiser le rendement avec les trois modèles. 2 TD2 : Illustration du principe de l analyse d incertitude avec un modèle de pathologie végétale Dans cette section, les principes de l analyse d incertitude et de l analyse de sensibilité sont illustrés avec un modèle non linéaire incluant cinq paramètres incertains en utilisant le logiciel R. L analyse d incertitude est réalisée à partir de tirages aléatoires dans des lois uniformes et l analyse de sensibilité globale est réalisée à l aide d une analyse de variance. 2.1 Description du modèle Nous considérons ici un modèle utilisé en pathologie végétale qui calcule la durée d humidité requise (en heures) pour qu un champignon puisse infecter une plante (Magarey et al. 2005). Ce modèle est utilisé pour identifier les zones climatiques qui offrent des conditions favorables au développement d espèces de champignons pathogènes pour des cultures ou des arbres (e.g., Efsa 2008). Nous considérons ici les infections induites par les pycnidiospores du champignon Guignardia citricarpa Kiely, une espèce pathogène des agrumes. Le modèle inclut une variable de sortie, notée y = W, représentant la durée d humidité. Cette variable est calculée en fonction d une variable d entrée qui correspond à la température de l air ( C) notée T, et cinq paramètres correspondant à trois seuils de température (la température minimale d infection T min, la température maximale d infection T max, la température optimale d infection T opt ) et deux seuils d humidité (durée minimale d humidité W min et durée maximale d infection W max. L équation du modèle est définie par : 2
W =min[w max, W min g(t ) ] avec g(t )=( T max T ) ( T T T opt min ) Tmax T max T opt T opt T min T min T opt Ce modèle peut être facilement programmé dans une fonction R, comme la fonction Wetness définie ci-dessous. Cette fonction permet de calculer la valeur de W en fonction des valeurs de la variable d entrée et des cinq paramètres. Wetness <- function(t, Tmin, Topt, Tmax, Wmin, Wmax) { gt <- ((Tmax-T)/(Tmax-Topt))*(((T-Tmin)/(Topt-Tmin)) ^((Topt-Tmin)/(Tmax-Topt))) W <- Wmin/gT W[W>Wmax] <- Wmax return(w) } 2.2 Incertitude dans les paramètres Les valeurs des paramètres du modèle pour le champignon Guignardia citricarpa Kiely ne sont pas parfaitement connues. Des experts ont défini des gammes de variation possibles pour les cinq paramètres présentées dans le Tableau 1 (Efsa 2008). Paramètre Valeur min. Valeur max. T min ( C) 10 25 T max ( C) 32 35 T opt ( C) 25 30 W min (h) 12 14 W max (h) 35 48 Table 1 Gammes d incertitude des valeurs des paramètres 2.3 Code R pour l analyse d incertitude : lois uniformes Etape 1 : Définition des distributions de probabilité des facteurs incertains Les facteurs incertains correspondent aux cinq paramètres. Les distributions de probabilités associées aux paramètres sont définies comme des lois 3
uniformes indépendantes avec des bornes inférieures et supérieures fixées aux valeurs reportées dans le Tableau 1. Etape 2 : Tirage aléatoire des valeurs des facteurs incertains 500 valeurs de paramètres sont tirées aléatoirement dans les distributions uniformes avec l instruction runif. Les valeurs ainsi générées sont stockées dans des vecteurs. Num <- 500 Tmin <- runif(num, 10, 15) Topt <- runif(num, 25, 30) Tmax <- runif(num, 32, 35) Wmin <- runif(num, 12, 14) Wmax <- runif(num, 35, 48) Etape 3 : Calcul des sorties du modèle La valeur de W est calculée pour les 500 séries de valeurs de paramètres et pour des températures T comprises entre 15 et 32 C avec un pas de 0.1 C définies dans un vecteur. Les simulations sont réalisées à l aide d une boucle qui permet d utiliser les 500 séries de valeurs de paramètres. Les valeurs simulées de W sont stockées dans une matrice. T_vec <- seq(from=15, to=32, by=0.1) W_mat <- matrix(nrow=num, ncol=length(t_vec)) for (i in 1:Num) { W_mat[i,] <- Wetness(T_vec, Tmin[i], Topt[i], Tmax[i], Wmin[i], Wmax[i]) lines(t_vec, W_mat[i,]) } Etape 4 : Description de la distribution de la variable de sortie L étape 3 permet d obtenir une distributions 500 valeurs de W pour chacune des températures T testées. Chacune de ces distributions est résumée à l étape 4 par : la moyenne des 500 valeurs les quantiles 0.01 et 0.99 (1er et 99ème percentiles) les quantiles 0.1 et 0.9 (1er et 9ème déciles) Les résultats sont présentés graphiquement. mean_vec <- apply(w_mat, 2, mean) Q0.01_vec <- apply(w_mat, 2, quantile, 0.01) Q0.1_vec <- apply(w_mat, 2, quantile, 0.1) Q0.9_vec <- apply(w_mat, 2, quantile, 0.9) Q0.99_vec <- apply(w_mat, 2, quantile, 0.99) 4
plot(c(0), c(0), pch=" ", xlab="temperature ( C)", ylab="wetness duration requirement (h)", xlim=c(10, 35), ylim=c(10, 60) lines(t_vec, mean_vec, lwd=3) lines(t_vec, Q0.9_vec, lty=2) lines(t_vec, Q0.1_vec, lty=2) lines(t_vec, Q0.99_vec, lty=9) lines(t_vec, Q0.01_vec, lty=9) 2.4 Analyse d incertitude avec des lois triangles Refaire l analyse d incertitude en supposant cette fois-ci que les paramètres sont distribués selon des lois triangles indépendantes. 5