Closed MyelinsheathXD closed 1 month ago
The GUI application utilizes an asynchronous planner. The ratio of simulation to planning step will be dependent on your hardware.
If you would like to run the simulation and planner synchronously, this can be achieved using the Python API.
Hello everybody! Recently I have managed to optimize the Humanoid Tracking task to run in real time (on 16 thread cpu ) by increasing physics time step size from 0.002 sec upto 0.016 sec . However the large time step made the simulation unstable during large scaled perturbations. My goal is to run MujocoMPC as efficient as possible for real time usage.
Right now. I am trying to optimize MPC problem solving time by one of these options:
So far I have tried these methods to achive this optimization:
Modifiying mujoco engine source to add internal physics engine sub stepping into the method "mj_step()". After this implamentation, MPC can not solve the problem and generated poorly solved action sequences.
Adding extra sub stepping next to the main "mj_step()" methods in MPC architechture in files trajectories.cc, app.cc
trajectory.cc app.cc
also modified in app.cc file
I have tried not to touch app.cc at all. Since mpc policy has "data->time" variabled for every trajectory . However after several combinational changes of these codes above, iLQG MPC produced poorly generated control action sequences.
What is the best way to call MPC trajectory desicision request not in every 1x physics simulation but in every 10x physics simulation? How can I implament it in Mujoco_MPC?