Functions | |
def | convert_to_qp |
Formulate the input parameters as a QP problem for the solver. | |
def | convert_to_qp_posture |
Formulate the input parameters as a QP problem for the solver. | |
def | D_matrices |
def | force_magnitude_cost_matrices |
def | joint_limit_bounds |
def | min_jerk_quadratic_matrix |
def | P_matrices |
def | solve_qp |
Set up and solve QP. | |
def | theta_phi_absolute_difference_bounds |
def hrl_haptic_mpc.epc_skin_math.convert_to_qp | ( | J_h, | |
Jc_l, | |||
K_j, | |||
Kc_l, | |||
Rc_l, | |||
delta_f_min, | |||
delta_f_max, | |||
phi_curr, | |||
delta_x_g, | |||
f_n, | |||
q, | |||
min_q, | |||
max_q, | |||
jerk_opt_weight, | |||
max_force_mag | |||
) |
Formulate the input parameters as a QP problem for the solver.
2012-12-28 JHawke: Changed the function definition to take joint limit bounds as inputs rather than a kinematics object.
Definition at line 196 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.convert_to_qp_posture | ( | J_h, | |
Jc_l, | |||
K_j, | |||
Kc_l, | |||
Rc_l, | |||
delta_f_min, | |||
delta_f_max, | |||
phi_curr, | |||
delta_x_g, | |||
f_n, | |||
q, | |||
min_q, | |||
max_q, | |||
jerk_opt_weight, | |||
max_force_mag, | |||
delta_theta_des, | |||
posture_weight, | |||
position_weight, | |||
orient_weight, | |||
force_weight, | |||
force_reduction_goal | |||
) |
Formulate the input parameters as a QP problem for the solver.
Now includes posture. NB: The P/D matrices don't make a lot of sense without seeing the maths. TODO: Fix this.
Definition at line 275 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.D_matrices | ( | delta_x_g, | |
delta_f_min, | |||
K_j, | |||
Rc_l, | |||
P3, | |||
P4_l | |||
) |
Definition at line 67 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.force_magnitude_cost_matrices | ( | P4_l, | |
K_j, | |||
force_idx_l, | |||
Rc_l, | |||
delta_fg | |||
) |
Definition at line 142 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.joint_limit_bounds | ( | min_q, | |
max_q, | |||
v | |||
) |
Definition at line 173 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.min_jerk_quadratic_matrix | ( | jerk_opt_weight, | |
K_j | |||
) |
Definition at line 63 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.P_matrices | ( | J_h, | |
K_j, | |||
Kc_l, | |||
Jc_l | |||
) |
Definition at line 100 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.solve_qp | ( | cost_quadratic_matrices, | |
cost_linear_matrices, | |||
constraint_matrices, | |||
constraint_vectors, | |||
lb, | |||
ub, | |||
debug_qp | |||
) |
Set up and solve QP.
In [3]: pp.QP? Docstring: QP: constructor for Quadratic Problem assignment 1/2 x' H x + f' x -> min subjected to A x <= b Aeq x = beq lb <= x <= ub
Examples of valid calls: p = QP(H, f, <params as kwargs>) p = QP(numpy.ones((3,3)), f=numpy.array([1,2,4]), <params as="" kwargs>="">) p = QP(f=range(8)+15, H = numpy.diag(numpy.ones(8)), <params as="" kwargs>="">) p = QP(H, f, A=A, Aeq=Aeq, b=b, beq=beq, lb=lb, ub=ub, <other params="" as="" kwargs>="">) See also: /examples/qp_*.py
INPUT: H: size n x n matrix, symmetric, positive-definite f: vector of length n lb, ub: vectors of length n, some coords may be +/- inf A: size m1 x n matrix, subjected to A * x <= b Aeq: size m2 x n matrix, subjected to Aeq * x = beq b, beq: vectors of lengths m1, m2 Alternatively to A/Aeq you can use Awhole matrix as it's described in LP documentation (or both A, Aeq, Awhole)
Definition at line 444 of file epc_skin_math.py.
def hrl_haptic_mpc.epc_skin_math.theta_phi_absolute_difference_bounds | ( | theta, | |
phi | |||
) |
Definition at line 187 of file epc_skin_math.py.