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:a*x+b*y+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 (|a*x1+b*y1+c*z1+d|/racine(a^2+b^2+c^2))^2
Lorsque 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)=
(|a*x1+b*y1+c*z1+d|/racine(a^2+b^2+c^2))^2 +
(|a*x2+b*y2+c*z2+d|/racine(a^2+b^2+c^2))^2 + ... +(|a*xn+b*yn+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 )
Lalgorithme 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.
