1

I am writing code for Rapidly exploring trees for robotic arm movement. I have two doubts

i) what is the distance metric that I have to use to find the nearest node in the graph? If it is euclidean distance,how do I calculate it because there are two links in each arm configuration of the robot and I have no idea how to find the euclidean distance in that case. enter image description here How do I find the distance between ADE and ABC if ABC is the nearest config to ADE in the tree?

ii) How do I generate a random config towards the goal because my random configs never seem to reach goal even after 5000 iterations.

Thanks in advance.

Crusher
  • 231
  • 3
  • 11

1 Answers1

0

Distance Metrics for the Two Revolute-Joint Arm

RRT is pretty robust to the (pseudo-) metric that you choose, but the quality of the trees (and consequently the paths) will be influenced if you've got something that isn't particularly good. To get good performance overall, the metric function is supposed to be fast, so I'd definitely try simpler things before you move onto something more complex.

In the case of robot arms a number of metrics are possible. Perhaps the simplest is simply to use the Euclidean distance between the end effector in two configurations. You'll almost certainly have to have this working already if you're testing the planning algorithm.

If you've got a full dynamics model of the system, then it is likely that other metrics based on the energy required to move the arm from one configuration to another will perform better.

Other metrics based on the (joint local) angle swept out at the joints, which can be derived from evaluating a path from an inverse kinematics solver may be acceptable - but I haven't tried this in practice. This may also be useful technique to know about if you need to implement your connect-configurations function.

Improving Convergence

Once you've got your metric function working correctly, RRT should just work. However, in practice, you'll almost always need to oversample near the goal configuration to encourage the algorithm to exploit the work done in the rest of the tree building stage. Most commonly, you do this by sampling the goal configuration state with about 5% probability.

Andrew Walker
  • 40,984
  • 8
  • 62
  • 84