Bonjour,
Je me casse un peu les dents sur un pb d'ajustement de fonction (curve fitting, scipy.optimize.curve_fit).
Le contexte: je réfléchi à un actuateur à câbles tendus, donc en gros, avec 3 câbles donc 3 longueurs a,b,c je positionne mon point dans l'espace x,y,z.
Comme le câble s'enroule en hélice, mes points de départ se déplacent latéralement, et comme le câble ne part pas toujours verticalement, ça ajoute aussi des variations.
Bref, modéliser ça, c'est un poil coton et dépendant de la qualité de réalisation.
Donc je me dis que je pourrai au choix me calculer ou me mesurer sur une grille 3D, la longueur de câbles pour chacun des 3 câbles. Et me faire un gentil ajustement de fonction polynomiale.
Pour info, la projection dans l'espace abc des points xyz ressemble à un cube déformé (un peu en yoyo) embroché et vrillé sur l'axe 1,1,1, les plans perpendiculaires à la brochette ressemblent à des coupelles.
Bref, j'essaie avec un polynôme du 3ème degré (en x,y,z, ça fait du monde).
Résultat bof, je passe au 4ème, mieux mais quand même 8% d'écart, au 5eme, ah, moins 4%, allez soyons fous, passons au 6ème degré (je vous dis pas le nombre de tetmes)...
Badaboum, j'ai explosé la chose (écarts de 3000%, une paille, je vous dis).
Bref, pas très raisonnable...
Ensuite, je me suis dis, bah, j'ai des nuages de points, peut-être que je peux trouver THE lib pour me faire un fitting par morceaux (un peu dans l'esprit des courbes de Bezier, sauf que j'ai les points de passage, mais pas les points de contrôle.
Donc si quelqu'un a une idée de génie (et son mode d'emploi), je suis très intéressé et reconnaissant.
(Même déjà envers ceux qui m'ont lu jusqu'ici)
(Je suis décalé en terme d'horaire et ce n'est pas (du tout) dans le cadre de mon taf, donc je répondrai, promis mais pas toujours du tac au tac.)
Je me demande si un petit réseau neuronal (un peu spécialisé/préorienté? (comment?)) pourrait faire le taf... (fitting, ajustement, apprentissage, délire de ma part...?)
-----