jc-bao / roller_grasper_tacto

Roller Grapser v4 environment based on Tacto and Pybullet.
2 stars 0 forks source link

The model keep explore the same place when using Gaussian Process #6

Open jc-bao opened 2 years ago

jc-bao commented 2 years ago

Problem Description

When using BO to explore the object, the object tends to explore the same place repeatedly.

The exploration progress for the same object over time. Upper: explored point cloud. Lower: fit Gaussian Model.

image

As a result, the uncertainty of object shape is not reduced during the exploration.

image

@t=1, explore section $[0, \pi/2, 0]$, get initial object shape estimation. [Issue] Here, the upper part is smooth, but the lower part has higher variance even if this part has been explored. @t=2, explore section $[0,0,-0.02]$. This step is correct to figure out where to explore in the next time step. But the variance is still there. @t=3~4, explore section $[0,0,-0.02]$. And does not change our results.

Possible Reason

The repeated exploration problem is caused by our Gaussian Process being over-smoothed. If there are sharp edges in the object, the GP tends to model it as a high variance but smooth surface. Thus we have information that the new part does not update the model successfully, which leads to the repetitive exploration of the same place and no error gain during the exploration process.

Possible Solution

  1. Try to add a kernel with a smaller length scale to capture small but sharp changes.

Result: After changing from an RBF kernel with a length scale of 0.5 to the combination of two RBF kernels with a length scale of 0.5 and 0.05, the result is the same.

image
  1. Try to remove the noise part in Gaussian Regression

Result: The same.

jc-bao commented 2 years ago

Why the model tends to explore the same area over and over again?

A:

The reason is:

  1. The unexplored part's variance is relatively low compared to the explored part. (This is the key to why our model tends not to explore anymore. )
  2. The mean of the unexplored part is small as we fit the model as a sphere.
The GP object model The evaluation of different sections
image image
The center of the object has a small variance and low mean, which makes our model not very feels like exploring that part. What caused the low variance? The center of the object remains unexplored but their variance is very small. Maybe it is not a good way to represent the object using GP. Why the mean of the unexplored part is also low? This is because we use the fix mean prior. This graph explained why our model tends to explore the same area over and over again. The left part, which indicates the lower part of the object, has a large variance (because it has some sharp changes), and a small margin (because we are overconfident about the unexplored part from the old experience. )
jc-bao commented 2 years ago

What's our plan to solve it?

A:

  1. According to our current result, the given target orientation is relatively good given the first exploration. In other words, even though the estimation of the object shape is too optimistic, we can still insert the object into a hole with a high success rate. So our first step is to continue working on the old approach and try different object sets.
  2. When we evaluate the new object set and encounter the new problem, then we can investigate how to solve it.