Projet Personel Encadré, ENIB : Cinématique inverse

Pour introduire ce post, je vais citer wikipedia (Oui, c’est le mal je sais, mais au moins je ne perdrais personne des la premiere ligne :))

« La cinématique inverse (souvent abrégée IK, de l’anglais inverse kinematics) est un procédé par lequel on peut déterminer les positions et rotations d’articulations d’un modèle afin d’obtenir une pose.

Le terme « cinématique inverse » renvoie au fait que l’étude cinématique se fait généralement à partir des paramètres des articulations, afin de déterminer l’évolution de la pose. »

http://fr.wikipedia.org/wiki/Cinématique_inverse

Durant ce projet, l’un des buts était l’implémentation d’une fonction permettant de calculer la pseudo inverse d’une matrice non carrée. Apres quelques recherches, les algorithmes SVD (pour Singular Value Decomposition) et Greville sont apparus etre les plus a meme de remplir ce role. Je ne vais pour le moment pas rentrer trop en detail dans le reste du projet, mais je voulais surtout que ces deux algorithmes soient disponibles (j’avais pas mal cherché du code a ce moment la, sans réussite) Les 2 fonctions sont implémentées en C++ avec l’aide de la library GSL Library.

Dans l’archive, vous trouverez l’implementation des algorithmes Greville et SVD, ainsi qu’un simple code de test permettant de tester leurs performances respectives. Pour aller plus vite, voici un graph a propos de la vitesse d’execution des 2 algorithmes.

pour 500.000 itérations

> Télécharger l’archive <

Seconde partie: