When using Scan Matching ICP for FastSLAM, which is the proper way to use it?
Between the current scan and the previous one, or between the current scan and the stored map?
Can both be used? If so, what are the point of using each one?
From my experience what I saw is the following:
-> Using the ICP against the previous reading is generally a way to simply estimate robot motion. This way you can't match against an old reading to close a loop closure, for instance.
-> Matching against the map maybe slower(if the map is not stored correctly), but offers the possibility to verify if you passed by someplace already. This offers quite stronger meanings to update the map and the robot pose w.r.t. the inertial frame. Also, matching against the map may reduce robot's pose uncertainty, specially in FastSLAM2.0. Remember PFs are multimodal by nature, and is always good to have only one mode.