Hello,
First of all thanks to the developers for your work in the creation of this very powerful optimization tool, it's proving a very interesting library in the problems I'm trying to tackle. I really appreciate its versatility.
I'm using casadi for a problem in which an external library computes the symbolic update in the state given by the x_next = Phi(x, u) [SX, SX] -> [SX], where Phi is of casadi.Function type.
The notation is the following:
- x is the complete state including positions q and velocities v
- u is the command torque at the joints (nu = 2)
Additionally I'm using the casadi.Opti class to express/solve the OCP
I've already tested some OCP on simple cases but I came up with a problem when trying to solve a problem for a floating base system.
The
state includes a quaternion that ideally can be properly integrated by such external
library so that the transition between one state and the following is
well determined (through the transition law Phi), but it makes the
position and the velocity vectors have different dimension (nq = 9, nv = 8) (so internally Phi is already taking care of the proper integration of the quaternion and
the unity constraint).
This said, when trying to launch the solver I have the following error which I'm not sure on how to interpret but I suspect is related to the introduction of the quaternion, since the entry [3,3] is indeed connected to the position of the first element of the quaternion.
The error is the following
:
[...]
CasADi - 2021-02-11 15:44:47 WARNING("solver:nlp_hess_l failed: NaN detected for output hess_gamma_x_x, at nonzero index 9 (row 3, col 3).") [.../casadi/core/oracle_function.cpp:265]
Number of Iterations....: 0
[ ...]
RuntimeError: Error in Opti::solve [OptiNode] at .../casadi/core/optistack.cpp:167:
.../casadi/core/optistack_internal.cpp:999: Assertion "return_success(accept_limit)" failed:
Solver failed. You may use opti.debug.value to investigate the latest values of variables. return_status is 'Invalid_Number_Detected'
I'd very very grateful if someone could explain me what the function hess_gamma_x_x is about and if you have some suggestion on how to debug/solve this problem