storm_kit.mpc.utils.mpc_process_wrapper module

class ControlProcess(controller, control_space='acc', control_dt=0.01)[source]

Bases: object

close()[source]
get_command(t_step, curr_state, debug=False, control_dt=0.01)[source]
get_command_debug(t_step, curr_state, debug=False, control_dt=0.01)[source]

This function runs the controller in the same process and waits for optimization to complete before return of a new command Args: t_step: current timestep curr_state: current state to give to mpc debug: flag to enable debug commands [not implemented] control_dt: dt to integrate command to acceleration space from a higher order space(jerk, snap).

predict_next_state(t_step, curr_state)[source]
truncate_command(command, trunc_tstep, command_tstep)[source]
update_params(**kwargs)[source]
optimize_process(control_string, opt_queue, result_queue)[source]

This runs mpc in a seperate process.

Input: current_state: current state shift_steps: how much to shift from the previous optimization

Returns: command: command trajectory