I'm looking at using Chrono for reinforcement learning, specifically because of the availability of its SCM contact model which is unique among simulator options. Understandably, the SCM model is going to be slower than the rigid contact model and will increase in complexity as the resolution of the SCM terrain increases. However, for RL applications, I'd like/need the system to run several environments in parallel, ideally at very fast speeds to increase the amount of data I can get in a given time.
Long story short, *does anyone have any recommendations for increasing the speed/reducing the load for SCM calculation*? Since using something like gym_chrono <https://github.com/projectchrono/gym-chrono> requires a single CPU thread for each sim done in parallel, I'm definitely concerned about compute times increasing as I try to load more parallel simulators or more complex SCM geometries. I'm already creating moving patches at the agents' wheels as is done in the demos, though I'm not sure what I can do beyond that. I've only seen one paper published that uses SCM at the training stage <https://arxiv.org/pdf/2408.09253>, but that means it *is* possible to do what I'm looking to do (though potentially slowly). In case it matters, I'm also still using Chrono 8.0.0 for this setup, as was recommended by the gym_chrono repository. I'm not sure how much their custom Chrono branch matters, though, since I'm making my own robot objects; if Chrono 9.0.0 offers dramatic speed increases in SCM calculation, maybe I can switch over? -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/projectchrono/6e67eda0-e591-4ae0-9546-dea5454c2377n%40googlegroups.com.
