Closed jcmonteiro closed 3 years ago
:+1:
Both of the above were initialized with the same random seed. But this raises another question (likely a subject for an issue), why do multiple runs with the same seed produce different results?
They should not be different, unless the scans used for updating the map are not the same, which can happen if they are dropped from the queue.
Why
Having a small queue can lead to message drops if the algorithm is not able to process the messages as fast as the publisher publishes them.
Summary
I was having a lot of trouble reproducing a map that I created from its recorded bag. In reality, I could perform a proper loop- closure, but every time I tried to reconstruct the map from the bag it would fail to close. By increasing the queue the problem (almost) went away.
Result with queue size 10![image](https://user-images.githubusercontent.com/5129986/99659885-d6de0180-2a61-11eb-8e69-89360ca8ff59.png)
Result with queue size 100![image](https://user-images.githubusercontent.com/5129986/99660512-c11d0c00-2a62-11eb-9f83-c42f3f4bbd38.png)
Both of the above were initialized with the same random seed. But this raises another question (likely a subject for an issue), why do multiple runs with the same seed produce different results?
Comment
This might explain the good-humored comment asking if it matters to use that
rate.sleep
instruction to get around the tf jumps.