You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
on cherche à créer un contracteur FwdBwd (sur une boîte) dont la contrainte s'exprime en fonction de la fonction/trajectoire a(·) représentée par le tube [a](·). Par exemple, une contrainte du type sin(a(x))=y.
ici, a(·) est vue comme un opérateur, on ne cherche donc pas à contracter son domaine [a](·) (la contraction de tubes étant une autre question, laissée à Tubex).
Le tube est donc plus simplement un tableau de données, une fonction d'inclusion définie par morceaux.
C'est en fait une situation qu'on rencontre couramment en robotique avec des données issues de capteurs.
Problèmes à identifier :
les dépendances entre IBEX et Tubex (seule dépendance souhaitée : Tubex dépend d'IBEX)
un tube devient un opérateur > des objets symboliques peuvent être créés avec > il faut anticiper leur dérivation, simplification formelle, arithmétique intérieure, etc.
The text was updated successfully, but these errors were encountered:
Une première piste sans rien toucher à IBEX (et donc sans altérer sa propre cohérence).
Est-il possible de :
hériter de ibex::Function pour en faire un objet TubeFunction
utiliser ce TubeFunction dans une composition de fonctions, sans passer par le parseur par chaînes de caractères ?
Par exemple :
Tube tube_a(tdomain, dt, ....); // create a Tube
TubeFunction a(tube_a); // create a function from the Tube object
Variable x(2);
Function f(x, sin(a(x[0])) - x[1]); // create the function sin(a(x))-y
Si oui, que faudrait-il surcharger de la classe Function pour permettre au CtcFwdBwd de fonctionner ?
C'est à dire : où implémenter la partie forward consistant à évaluer le tube, et celle du bwd consistant à l'inverser ? (deux fonctionnalités déjà implémentées dans Tubex)
Bonjour la IBEX Team,
Voici le besoin :
[a](·)
.FwdBwd
(sur une boîte) dont la contrainte s'exprime en fonction de la fonction/trajectoirea(·)
représentée par le tube[a](·)
. Par exemple, une contrainte du typesin(a(x))=y
.a(·)
est vue comme un opérateur, on ne cherche donc pas à contracter son domaine[a](·)
(la contraction de tubes étant une autre question, laissée à Tubex).Le tube est donc plus simplement un tableau de données, une fonction d'inclusion définie par morceaux.
C'est en fait une situation qu'on rencontre couramment en robotique avec des données issues de capteurs.
Problèmes à identifier :
The text was updated successfully, but these errors were encountered: