Minimum d'une fonction a plusieurs variables : Algorithme de Levenberg-Marquardt
-
Aazerty21 dernière édition par
Bonjours,
Je fait des recherches pour faire un programme sur Maple concernant les moindres carrés. Mon but est de faire un programme qui puisse me donner l'équation d'un plan ou d'un cylindre à partir d'un ensemble de points.
Exemple du plan
P:ax+by+c*z+d=0
Soit un point M1(x1, y1, z1) mesuré.
Le but est de minimiser la distance entre le point M1 mesuré et le plan.
Soit minimiser (|ax1+by1+c*z1+d|/racine(a^2+b^2+c^2))^2Lorsque j'ai n points mesurés c'est la somme que je doit minimiser :
**M1(x1, y1, z1), M2(x2, y2, z2), ..., Mn(xn, yn, zn)
f(a,b,c,d)=
(|ax1+by1+cz1+d|/racine(a^2+b^2+c^2))^2 +
(|ax2+by2+cz2+d|/racine(a^2+b^2+c^2))^2 + ... +(|axn+byn+c*zn+d|/racine(a^2+b^2+c^2))^2**Mes inconnues sont a, b, c et d.
Méthode de résolution
Pour minimiser la fonction f il y a une méthode : l'Algorithme de Levenberg-Marquardt.
J'ai regardé sur Wikipedia ils disent : (http://fr.wikipedia.org/wiki/Algorithme_de_Levenberg-Marquardt)
Citation
L’algorithme de Levenberg-Marquardt, ou algorithme LM, permet d'obtenir une solution numérique au problème de minimisation d'une fonction, souvent non-linéaire et dépendant de plusieurs variables.Cependant dans les explications ils montrent une fonction avec un seul paramètre a et non plusieurs variables.
Alors comment faire lorsque j'ai quatre paramètres ?
De plus que représente le vecteur p ? C'est un vecteur à combien de dimension ?
Si vous connaissez une autre méthode que celle de Levenberg-Marquardt je suis également preneur !
Merci d'avance.