356
Le logiciel R - Effectuer des analyses math´ ematiques
> h <- function(x,y) x * y^2 # Fonction de deux variables.
> x <- c(2,3)
> y <- c(1,4)
> attributes(numericDeriv(quote(h(x,y)),c("x","y")))$gradient
[,1] [,2] [,3] [,4]
[1,]
1
0
4
0
[2,]
0
16
0
24
SECTION 8.5
Optimisation
8.5.1 Fonctions d’optimisation
L’optimisation d’une fonction consiste ` a trouver l’endroit o` u elle atteint son
maximum ou son minimum. Le logiciel R dispose de plusieurs fonctions pour
cela, fond´ ees sur divers algorithmes : optimize(), optim(), nlm(), constrOptim(),
nlminb().
• Optimisation unidimensionnelle
La fonction optimize(), qui s’utilise uniquement dans un contexte unidimensionnel, nous semble ˆ etre la plus simple ` a manipuler. Donnons-en
un exemple. Supposons que l’on veuille calculer le minimum, ainsi que
l’endroit o` u il est atteint, de la fonction cos(x^2) sur l’intervalle [0, 2],
repr´ esent´ ee sur la figure suivante :
0.0
0.5
1.0
1.5
2.0
−1.0
−0.5
0.0
0.5
1.0
x
cos(x^2)
La fonction optimize() permet de r´ esoudre ce probl` eme de fa¸ con num´ erique.
Précédent

- 388/701

Suivant