Control optimization module¶
Config¶
class ConfigRewardFunction¶
- class rostok.trajectory_optimizer.control_optimizer.ConfigRewardFunction(bound: tuple[float, float] = (-1, 1), iters: int = 10, sim_config: dict[str, str] = <factory>, time_step: float = 0.001, time_sim: float = 2, flags: list = <factory>, criterion_callback: ~typing.Callable[[dict[int, rostok.virtual_experiment.simulation_step.SimulationDataBlock], ~rostok.virtual_experiment.robot.Robot], float] | None = None, get_rgab_object_callback: ~typing.Callable[[], ~pychrono.core.ChBody] | None = None, params_to_timesiries_callback: ~typing.Callable[[~rostok.graph_grammar.node.GraphGrammar, list[float]], list] | None = None)¶
- bound¶
tuple (lower bound, upper bound) extend to joints number
- Type:
tuple[float, float]
- iters¶
number of iteration optimization algorithm
- Type:
int
- sim_config¶
config passed to Chrono engine
- Type:
dict[str, str]
- time_step¶
simulation step
- Type:
float
- time_sim¶
simulation duration
- Type:
float
- flags¶
List of stop flags, breaks sim
- Type:
list
- criterion_callback¶
calls after simulation (SimOut, Robot) -> float
- Type:
Callable[[dict[int, rostok.virtual_experiment.simulation_step.SimulationDataBlock], rostok.virtual_experiment.robot.Robot], float]
- get_rgab_object¶
calls before simulation () -> ObjectToGrasp
- params_to_timesiries_array¶
calls before simulation to calculate trajectory (GraphGrammar, list[float]) -> list[list] in dfs form, See class SimulationStepOptimization
Control optimizer¶
class ControlOptimizer¶
- class rostok.trajectory_optimizer.control_optimizer.ControlOptimizer(cfg: ConfigRewardFunction)¶
- create_reward_function(generated_graph: GraphGrammar, visualize=False) Callable[[list[float]], float] ¶
Create reward function
- Parameters:
generated_graph (GraphGrammar) –
- Returns:
Function of virtual experemnt that returns reward based on criterion_callback
- Return type:
Callable[[list[float]], float]