-
Notifications
You must be signed in to change notification settings - Fork 129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
why should we do this when searching free cell #32
Comments
Did you see the wiki about costmap_2d here? |
There's a two 'features' at play here, both existing to enable frontier search even when the 'initial' search cell is not strictly FREE_SPACE. https://github.com/paulbovbel/frontier_exploration/blob/lunar-devel/src/frontier_search.cpp#L47 tries to find a clear cell nearby to start the search. https://github.com/paulbovbel/frontier_exploration/blob/lunar-devel/src/frontier_search.cpp#L62 will always expand the breadth-first-search to neighbour cells that are cheaper or equal cost. This prevents the search from climbing into higher-cost areas, but has the (potential) downside of sidling along a non-zero-cost ledge around the starting point if necessary. I would be open to providing a flag to disable one or both of these features, but they are still very necessary to frontier-search in non-optimal conditions. |
Good! thanks for fast and kind reply :) |
@zwkcoding yes,you're right the cost value that is less than INSCRIBED_INFLATED_OBSTACLE is not safe.I have found this and then I change the |
@paulbovbel thank you for your reply! But on my opinion, the performance breath-first-search algorithm is not ideal when the costmap updates it's values with inflation_layer . when my robot try to go through the narrow area , the bfs can't found frontiers because the cost value == FREE_SPACE are very few and surrounded by the cost value between 0 to 253 . the bfs will not climbing into higher-cost areas ,so I didn't find a solution when I change the https://github.com/paulbovbel/frontier_exploration/blob/lunar-devel/src/frontier_search.cpp#L62 to |
i have a little bit of confusion about line 61 in frontier_search.cpp
map_[nbr] <= map_[idx]
We have found the variable idx ,it is the FREE_SPACE that is nearest to the start. nbr is the nhood4 for idx.
On my opinion.it should be
map_[nbr] < INSCRIBED_INFLATED_OBSTACLE
notmap_[nbr] <= map_[idx]
if we wanna search the free cell from the idx,because the cost values between 0 to 253 is free,is that right?
I am not sure,I am looking forward to your reply,thank you !
The text was updated successfully, but these errors were encountered: