Open siddhss5 opened 9 years ago
I reassigned this to @jeking04 since she's working on the refactored demo.
Right now, we plan a long PlanToEndEffectorOffset
. I suggest breaking it down to a PlanToTSR
to get above the peep followed by a shorter PlanToEndEffectorOffset
, much like the PushGrasp
action but vertical.
@siddhss5: Is PlanToTSR
faster than the PlanToEndEffectorPose
? Right now, I am moving the end effector on top of the bite using PlanToEndEffectorPose
and then do a PlanToEndEffectorOffset
, so I wonder if I could do what you suggest by just setting the end-effector pose of the first plan to be closer to the bite. Also, note that with the new utensils that we got, the PlanToEndEffectorOffset
is much shorter.
In general, I'd say yes, but I should qualify my statement by saying: a planner that natively supports PlanToTSR
will be on average faster than the same planner that natively supports PlanToEndEffectorPose
. More goals are often better. And, you have less of a chance of specifying a bag goal.
But, if you've preselected a good goal and run PlanToEndEffectorOffset
with say VectorField
, if it succeeds, it will succeed faster than PlanToTSR
with cbirrt
.
So, no clear winner there.
I don't think that's true at all. Both PlanToTSR
and PlanToEndEffectorPose
should do goal sampling inside the planner, if possible. The implementations of PlanToEndEffectorPose
on CBiRRT (and possibly OMPL?) actually create a point TSR and call PlanToTSR
.
The advantage of PlanToTSR
is that it's much more general (a pose can always be encoded as a point TSR, but the converse is not true). The advantage of PlanToEndEffectorPose
is, like @siddhss5 said, that it's often easier to support a goal pose than a goal TSR.
@siddhss5 Why would you expect PlanToTSR
to be faster here? I would expect them to be identical.
Oh, I missed the free roll qualification in @siddhss5's original comment. PlanToTSR
could be much faster if we give it a larger goalset. Nevermind! :smile:
Good :).
I was actually raising the point that PlanToTSR
even with a free roll with planner A might be slower than PlanToEndEffectorPose
with planner B if you got lucky or smart with the end effector pose.
Another somewhat subtle point is that PlanToTSR
with a planner that natively supports it (like cbirrt
) might be slower than a metaplanner that samples and runs a bunch of PlanToEndEffectorOffset
(like snap
).
I see, thanks for explaining that!
One way to speed things up is to break down the PlanToEndEffectorOffset into a PlanToTSR (with free roll) to as close to the food as possible followed by a shorter PlanToEndEffectorOffset. I think this will succeed more often. @mkoval and jeking, does this make sense? I think we can encode this as an action, much like the push-grasp.