Suppose I want to train butterfly robot with reinforcement learning. So I need physically correct simulation of aerodynamics and material physics (because butterfly wings should bend etc). Also I physical correctness is more important that speed, so I can leave limulation to work slowly, no need for real time. Also I need GPU usage.

Which software system I need for this like Gazebo, Unreal etc?


Unreal, Unity and other game engines, Gazebo, Mujoco and other Physics engines are good at simulating multi body dynamics. There is no deep conceptual difference between them. You can use whichever you prefer.

Flying is not only multi body dynamics but also fluid dynamics. This is extremely hard to simulate accurately. It is usually done with CFD (Computational Fluid Dynamics). An open source variant for CFD is OpenFoam.

You can create a simplified version, which you can implement in a muli-body dynamics engine and you can create an even more simplified version and write the simplified equations for it.

Depending on the level of accuracy you need, you can choose your simulation. I would recommend starting simple and increasing complexity gradually.

  • $\begingroup$ I think Unreal and Unity try to to real time simulations in trade of physical accuracy, isn't it true? I agree if one second of physical time last one minute of simulation time but gamers do not. Isn't it true? $\endgroup$ – Dims Nov 3 '20 at 9:14
  • $\begingroup$ Yes, accuracy is their secondary concern. In other cases accuracy is the main concern. However, the decision is not between a fully accurate and a not fully accurate system, but between a bit more or a bit less accuracy, but none of these system reflect reality with full accuracy. $\endgroup$ – 50k4 Nov 3 '20 at 9:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.