Is Isaac Sim non-deterministic?

Hi.

Thank you for creating such an useful tool.
I have a big question regarding the determinism of Isaac Sim.

I tried to perform a picking task on a relatively small object, and I found that with different values of the Time Step per Second (TSPS), Max Convex Hulls (MCH), and Contact Offset (CO), the simulation can be non-deterministic. I have tried the following trails (with Enable GPU Dynamics = True; Solver Type = TGS, Enable CCD = True, Collider Approximation = Convex Decomposition, and other parameters were set as default)

  1. The first trail: TSPS = 40; CO = default; MCH = 32 (default): The simulation is deterministic.

  2. The second trail: TSPS = 40; CO = default; MCH = 64: The simulation is non-deterministic. The object’s position at the end of the sim is not consistent for different experiments.

  3. The third trial: TSPS = 60; CO = default; MCH = 64: The simulation is deterministic.

  4. The forth trial: TSPS = 60; CO = 0.0001; MCH = 64: The simulation is non-deterministic. The object’s position at the end of the sim is not consistent for different experiments.

  5. The fifth trial: TSPS = 240; CO = 0.0001; MCH = 64: The simulation is deterministic.

How can this happen? Why is the simulation non-deterministic?

Example for the non-determinism of the forth trial for two different experiments:
FIrst exp: Object pose before grasping: (array([0.7 , 0.13 , 0.00585385], dtype=float32), array([-7.0710677e-01, 7.0710677e-01, -8.1653707e-07, 5.0820381e-07],
dtype=float32))
Object pose after grasping: (array([ 0.7019452 , 0.11561651, -0.00277292], dtype=float32), array([-0.09344089, -0.12559167, 0.79239684, 0.58957845], dtype=float32))

Second exp: Object pose before grasping: (array([0.7 , 0.13 , 0.00585385], dtype=float32), array([-7.0710677e-01, 7.0710677e-01, -8.1653707e-07, 5.0820381e-07],
dtype=float32))
Object pose after grasping: (array([0.68021965, 0.1545505 , 0.00275881], dtype=float32), array([0.13507868, 0.79251266, 0.09706947, 0.5867324 ], dtype=float32))

I would like to attach the python file and the USD files for the robot and the picked object here for your reference.

Thank you!

Hi @quangminh2702 - Thank you for the thread. Can I request one more thing?

Can you please test it out on the latest Isaac Sim release (Isaac Sim 2023.1.0) and let us know if you are still seeing the same thing.

Hi @rthaker. Thank you for your reply.

I have installed Isaac Sim 2023.1.0 accordingly. However, there are some issues for this version as following:

  1. It starts very slowly (i.e, in the standalone python mode)
  2. Whenever I use Time Steps per Second = 60 or greater, the environment thus hangs there always or even crashes sometimes. (I still use the previous files and setup)

Is this a common issue with this new release? or could you please give me some suggestions to sort them out?

Thank you!