rofunc.planning_control.lqr.ilqr_3d#

iLQR for a 3D viapoints task (batch formulation)

Refers to https://gitlab.idiap.ch/rli/robotics-codes-from-scratch by Dr. Sylvain Calinon

1.  Module Contents#

1.1.  Classes#

iLQR_3D

1.2.  Data#

kin

1.3.  API#

rofunc.planning_control.lqr.ilqr_3d.kin = None#
class rofunc.planning_control.lqr.ilqr_3d.iLQR_3D(cgf)[source]#

Initialization

fkin(x)[source]#

Forward kinematics for end-effector (in robot coordinate system)

error(f, f0)[source]#

Input Parameters: f = end_effector transformation matrix f0 = desired end_effector poses

Output Parameters: error = position and orientation error

Jacobian(x)[source]#

Jacobian with analytical computation (for single time step)

Input Parameters: x = joint values

Output Parameters: Jacobian for single time step of joint values x

f_reach(robot_state, Mu, Rot, specific_robot=None)[source]#

Error and Jacobian for a via-points reaching task (in object coordinate system)

Input Parameters:

robot_state: joint state Mu: via-points Rot: object orientation matrices

Returns: f = residual vectors / error J = Jacobian of f

get_matrices()[source]#
set_dynamical_system()[source]#
get_u_x(Mu: numpy.ndarray, Rot: numpy.ndarray, u: numpy.ndarray, x0: numpy.ndarray, Q: numpy.ndarray, R: numpy.ndarray, Su0: numpy.ndarray, Sx0: numpy.ndarray, idx: numpy.ndarray, tl: numpy.ndarray)[source]#
solve(Mu, Rot, u0, x0, for_test=False)[source]#