Fonctions de deux variables réelles et recherche d'extrema
Cours complet · mathématiques appliquées (ECG 2e année), chapitre 9 · prépa ECG, 2e année
Travailler ce chapitre sur Adloun Exercices corrigés de ce chapitre
Une entreprise choisit un niveau de capital et un niveau de travail ; un investisseur répartit sa mise entre deux actifs ; un producteur fixe deux prix. Dans tous les cas, une grandeur à optimiser dépend de deux variables, et la dérivée d'une fonction d'une variable ne suffit plus.
Ce chapitre étend le calcul différentiel à deux variables, puis répond à la question qui l'a motivé : où se trouve le maximum, et comment le reconnaître ? La réponse fait appel au chapitre 3 — ce sont les valeurs propres d'une matrice qui trancheront.
Le programme est catégorique sur deux points : « le domaine de définition sera systématiquement » dans les deux premiers paragraphes, et « tous les résultats concernant les fonctions réelles de deux variables réelles seront admis ». Aucune démonstration de continuité, aucun problème de domaine. Ce chapitre est un chapitre de méthode.
9.1 Continuité et lignes de niveau
La distance euclidienne entre deux points de est
est continue en lorsque
Les fonctions coordonnées et sont continues. Somme, produit et quotient (à dénominateur non nul) de fonctions continues sont continus. Les fonctions polynomiales de deux variables sont continues sur . La composée d'une fonction continue à valeurs dans un intervalle par une fonction continue sur est continue.
La ligne de niveau de est .
Pour la fonction de production de Cobb-Douglas sur les valeurs strictement positives, la ligne de niveau s'écrit : une courbe décroissante et convexe, dite isoquante — l'ensemble des combinaisons capital-travail donnant la même production.
9.2 Dérivées partielles, gradient, hessienne
est la dérivée en de la fonction partielle , obtenue en gelant . De même en gelant . On dit que est de classe si ces deux dérivées existent et sont continues ; est alors continue.
, et de même pour les trois autres. est de classe si ces quatre dérivées existent et sont continues. La matrice hessienne est alors
Si est de classe sur , alors pour tout ,
En particulier, la matrice hessienne est symétrique — donc diagonalisable, par le chapitre 3.
C'est cette phrase qui rend tout le chapitre possible. La hessienne est symétrique, donc elle a toujours deux valeurs propres réelles, et ce sont leurs signes qui décideront de la nature d'un point critique.
Soit . Alors
constante ici — c'est le cas de toutes les fonctions polynomiales de degré . Elle est bien symétrique, conformément à Schwarz.
9.3 Recherche d'extrema
admet un maximum local en s'il existe tel que pour tout point à distance moins de . Le maximum est global sur une partie si l'inégalité vaut pour tout point de .
Une fonction continue sur une partie fermée et bornée de est bornée et atteint ses bornes sur cette partie.
Le programme est explicite : « la détermination de la nature topologique d'un ensemble n'est pas un objectif du programme et devra toujours être indiquée ». Un énoncé dira donc « soit le disque fermé… », et l'on pourra appliquer le théorème sans le justifier.
Si est de classe sur un ouvert et admet un extremum local en , alors
Un tel point est appelé point critique.
Soit de classe sur un ouvert et un point critique. Notons les valeurs propres de .
- Si et : minimum local.
- Si et : maximum local.
- Si et sont non nulles et de signes opposés : point col — pas d'extremum.
Si l'une des valeurs propres est nulle, le critère ne conclut pas. Il faut alors revenir à l'étude directe de au voisinage du point — le plus souvent en regardant le long de quelques droites bien choisies.
Pour une matrice symétrique , la somme des coefficients diagonaux vaut et le produit se lit directement. Si le produit est négatif, les signes sont opposés : c'est un col. S'il est positif, les deux valeurs propres ont le signe de cette somme. Un seul calcul suffit donc à conclure dans presque tous les cas.
Soit .
Points critiques. et . Le système donne puis , donc et : unique point critique , où vaut .
Nature. . On vérifie et : les valeurs propres sont et , toutes deux strictement positives.
Conclusion. admet un minimum local en , de valeur . Il est même global : la hessienne étant constante et à valeurs propres positives, est convexe sur .
Python : Points critiques et nature
import numpy as np
H = np.array([[2., 1.], [1., 2.]])
print(np.linalg.eigvalsh(H)) # [1. 3.] <- toutes deux > 0 : minimum
def f(x, y): return x**2 + x*y + y**2 - 3*x
print(f(2, -1)) # -3.0
for dx in (-0.1, 0, 0.1):
for dy in (-0.1, 0, 0.1):
assert f(2+dx, -1+dy) >= f(2, -1) - 1e-12
print("minimum confirme au voisinage")
eigvalsh est la version pour matrices symétriques : elle rend des valeurs propres réelles triées. Le balayage du voisinage corrobore le critère — il ne le remplace pas, un pas de ne prouvant rien.