Sachin,<div><br></div><div>It is tricky to get through there, but the planner can do it. I moved it using the sbpl_lattice_planner from the default starting point through that narrow hallway to the red arrow pose, but have to do it with a halfway point in the the hallway or it just goes all the way around (most likely due to running out of time).</div>
<div><br></div><div>Here's the console output for a run reproducing the problem:</div><div><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887074.606435759, 208.900000000]: [sbpl_lattice_planner] getting fresh copy of costmap</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887074.610865752, 208.900000000]: [sbpl_lattice_planner] robot footprint cleared</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887074.612990975, 208.900000000]: [sbpl_lattice_planner] getting start point (28.1542,30.7675) goal point (17.6406,21.6356)</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
env: setting start to 28.154 30.768 0.023 (1126 1230 0)</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
planner: setting start to 83014</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
X=1126 Y=1230 Theta=0</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
env: setting goal to 17.641 21.636 1.591 (705 865 4)</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
planner: setting goal to 2815354</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
the state is a goal state</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
X=705 Y=865 Theta=4</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
planner: forceplanfromscratch set</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887074.783733829, 209.100000000]: allocated:5.000000, init eps:3.000000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<br></blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
planner: search mode set to 0</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887074.783796810, 209.100000000]: [sbpl_lattice_planner] run planner</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
planner: replan called (bFirstSol=0, bOptSol=0)</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
2D search with sliding buckets and term_factor=0.500</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
# of expands during 2dgridsearch=810061 time=250 msecs 2Dsolcost_inmm=83105 largestoptfval=164175 (start=1126 1230 goal=705 865)</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
2dsolcost_infullunits=207762</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=3.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=3.000000 expands=1913 g(searchgoal)=288955 time=0.010</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=2.800</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=2.800000 expands=41 g(searchgoal)=288316 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=2.600</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=2.600000 expands=13 g(searchgoal)=288316 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=2.400</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=2.400000 expands=16 g(searchgoal)=288316 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=2.200</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=2.200000 expands=98 g(searchgoal)=288310 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=2.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=2.000000 expands=157 g(searchgoal)=288298 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=1.800</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=1.800000 expands=42 g(searchgoal)=288030 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=1.600</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=1.600000 expands=8 g(searchgoal)=287652 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=1.400</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=1.400000 expands=279 g(searchgoal)=277977 time=0.000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited with a solution for eps=1.200</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=1.200000 expands=28424 g(searchgoal)=220488 time=0.090</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=100000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=200000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=300000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=400000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=500000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=600000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=700000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=800000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=900000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=1000000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=1100000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
expands so far=1200000</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
search exited because it ran out of time</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
eps=1.200000 expands=1205210 g(searchgoal)=220488 time=4.630</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
MaxMemoryCounter = 327575612</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
solution is found</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
total expands this call = 1236201, planning time = 5.000 secs, solution cost=218924</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
Solution is found</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887079.275728992, 213.600000000]: size of solution=484</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
checks=1139182</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
[ INFO] [1283887079.276301971, 213.600000000]: Plan has 4347 points.</blockquote><div><br></div><div>Looks like it ran out of time to keep searching. I shoulda looked at the console output before :). I'll play around with the planning time parameter a bit once I get it up and running on my own bot, since I definitely need it to be able to go through narrow doorways.</div>
<div><br></div><div>Thanks for taking a look at that.</div><div><br></div><div>- Eric</div><br><div class="gmail_quote">On Tue, Sep 7, 2010 at 3:13 PM, Sachin Chitta <span dir="ltr"><<a href="mailto:sachinc@willowgarage.com">sachinc@willowgarage.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">At first glance:<br>
<br>
The little hallway that you would expect the robot to go through is<br>
actually quite narrow. If you look in the static map, there are noisy<br>
obstacles right in its entrance. Since the planner lays down a full<br>
footprint it may not be finding a feasible path through that area, Its<br>
also a function of the kind of motion primitives used. Can you send me<br>
the text output that you see from the sbpl planner as well.<br>
<br>
BTW, I might be a little tardy in replying until we get over a<br>
deadline middle of next week but after that I would like to push and<br>
get this working.<br>
<br>
Regards,<br>
<font color="#888888">Sachin<br>
</font><div><div></div><div class="h5"><br>
<br>
<br>
On Tue, Sep 7, 2010 at 12:01 PM, Eric Perko <<a href="mailto:wisesage5001@gmail.com">wisesage5001@gmail.com</a>> wrote:<br>
> Sachin,<br>
> Thanks for the info. I did get a chance to checkout sbpl_lattice_planner and<br>
> poke it a bit using the included launch files. I did see some really odd<br>
> behavior out of it though, as more than once it generated some really<br>
> suboptimal paths. I'm attaching a screenshot from nav_view of one example<br>
> from the launch file that loads up the WG map. The robot started at the<br>
> orientation marked by the red arrow and I gave it a goal orientation of the<br>
> blue arrow. You can see the planned path in green. Definitely not anywhere<br>
> close to the path I expected. Is this just due to needing to play with the<br>
> suboptimality bound for the anytime planning algorithms? I would have<br>
> expected suboptimal paths, but not quite as suboptimal as "the long way<br>
> around" :)<br>
> I'll see about getting it set up within my existing nav stack setup sometime<br>
> this week and let you know what problems (if any) I run into.<br>
> - Eric<br>
> On Tue, Sep 7, 2010 at 3:26 AM, Sachin Chitta <<a href="mailto:sachinc@willowgarage.com">sachinc@willowgarage.com</a>><br>
> wrote:<br>
>><br>
>> Eric,<br>
>><br>
>> I will let Eitan reply to your other questions about the navigation<br>
>> stack. My response is in particular about the sbpl_global_planner.<br>
>> There is a new version of the ROS interface for the planner in the<br>
>> sbpl_lattice_planner package which will soon supersede the<br>
>> sbpl_global_planner package. The underlying sbpl library is maintained<br>
>> by one of our collaborators. On that note, I am curious to get any<br>
>> feedback you have on the performance of that planner with the aim of<br>
>> eventually fixing the bugs and releasing it. There are a few<br>
>> (undocumented) modifications that can be made to the planner to help<br>
>> it function better that need to be flushed out into<br>
>> tutorials/documentation before a release can be made. So, any feedback<br>
>> you can provide will be useful.<br>
>><br>
>> Regards,<br>
>> Sachin<br>
>><br>
>><br>
>> On Mon, Sep 6, 2010 at 11:34 PM, Eric Perko <<a href="mailto:wisesage5001@gmail.com">wisesage5001@gmail.com</a>><br>
>> wrote:<br>
>> > Eitan,<br>
>> > Here's a quick summary of my current experience with the navigation<br>
>> > stack.<br>
>> > I'll see if I can clean up some simulation that reproduces the behavior<br>
>> > later this week.<br>
>> > First off, my current platform is about 3 feet long by 2 feet wide<br>
>> > (power<br>
>> > wheelchair base) with diff-drive. I've seen behavior that may be similar<br>
>> > to<br>
>> > Christian's. Namely, parameters that were fine in an outdoor environment<br>
>> > where there was a lot of clearance fail horribly indoors. Even after<br>
>> > changing parameters around, indoor environments are still tricky. When<br>
>> > there<br>
>> > is at least a foot of clearance between the robot and any obstacle,<br>
>> > navigation seems to work okay (minus poor choices of direction to rotate<br>
>> > in<br>
>> > when spinning in place once in a while).<br>
>> > When attempting to navigate in a much more constrained space, the local<br>
>> > planner can be pretty bad. For example, one of the tasks our platform<br>
>> > needs<br>
>> > to be able to do is navigate through tight doorways where clearance may<br>
>> > be<br>
>> > at most 6-7 centimeters on either side and we've found<br>
>> > base_local_planner to<br>
>> > have pretty poor performance in this situation. For example, we've seen<br>
>> > the<br>
>> > robot get partway through the doorway and then be unable to get out of<br>
>> > the<br>
>> > doorway (and that is when it even manages to get into the doorway at<br>
>> > all).<br>
>> > After experimenting with the trajectory checking code, we found that the<br>
>> > costmap resolution needed to be increased to ensure that there would<br>
>> > always<br>
>> > be a clear grid cell between the robot and doorway; at the default 5 cm<br>
>> > resolution and only 7 cm of clearance, we were encountering overlap due<br>
>> > to<br>
>> > the mapping between continuous position coordinates and discrete map<br>
>> > cells.<br>
>> > I haven't gotten a chance to play with updated cost scoring parameters<br>
>> > for<br>
>> > this new resolution - the defaults failed pretty badly, most likely<br>
>> > because<br>
>> > the costs are in map_cells, not meters, so they need updated each time<br>
>> > the<br>
>> > map resolution is changed.<br>
>> > To address these problems with the base_local_planner and precision<br>
>> > paths,<br>
>> > we're currently experimenting with a number of trajectory planning and<br>
>> > path<br>
>> > following algorithms to achieve precise navigation in constrained<br>
>> > environments.<br>
>> > I believe there are also a few problems I've seen due to the global<br>
>> > planner<br>
>> > (navfn) not planning very well for a rectangular bot, especially a<br>
>> > diff-drive one. A good example is the following: when I manually drove<br>
>> > the<br>
>> > robot along the global path to get a feel for it, another guy watched<br>
>> > and<br>
>> > said that at one point, the backend of our robot had only 1-2 cm of<br>
>> > clearance, which is a bit scary - and prolly something that would make<br>
>> > the<br>
>> > base_local_planner unhappy. I did try the sbpl_global_planner briefly in<br>
>> > simulation a few weeks back, but couldn't get it working very reliably -<br>
>> > guess there is a good reason that it's unreleased :)<br>
>> > Well that ended up a bit longer than I originally planned, but hopefully<br>
>> > it<br>
>> > will lead to some insights that will improve the navigation stack's<br>
>> > performance for everyone.<br>
>> > - Eric<br>
>> > On Tue, Sep 7, 2010 at 1:15 AM, Eitan Marder-Eppstein<br>
>> > <<a href="mailto:eitan@willowgarage.com">eitan@willowgarage.com</a>> wrote:<br>
>> >><br>
>> >> Christian,<br>
>> >> First off, its true that navigation is not fully "solved" for real<br>
>> >> world<br>
>> >> environments. We're trying to provide a system that improves the<br>
>> >> navigation<br>
>> >> capabilities of a large number of robots, but there's still a lot of<br>
>> >> work to<br>
>> >> be done. We do try to test the navigation stack as often as possible on<br>
>> >> our<br>
>> >> PR2, and have had mostly positive results, but that doesn't necessarily<br>
>> >> mean<br>
>> >> it will work well in all cases. As far as the problems you're having,<br>
>> >> I'd be<br>
>> >> curious to see the launch files that you're using to bring up the<br>
>> >> navigation<br>
>> >> stack on your robot. I've looked at those parameters a lot, and might<br>
>> >> be<br>
>> >> able to give some insight into what's going on.<br>
>> >> I'd also be curious to see if you experience the same problems with the<br>
>> >> navigation stack in simulation. If you can create launch files that<br>
>> >> show a<br>
>> >> simulated version of your robot having the problems you described, it<br>
>> >> would<br>
>> >> allow us to reproduce the behavior your seeing and give us a better<br>
>> >> shot at<br>
>> >> fixing things. We could even add these tough cases as tests for the<br>
>> >> navigation stack so that others with diff-drive robots don't have to<br>
>> >> experience the pain you've been through. If you want, you can check out<br>
>> >> the<br>
>> >> navigation_stage package for a template of how to run navigation in a<br>
>> >> simulated environment.<br>
>> >> I'm sorry that it hasn't been a pleasant experience so far, but<br>
>> >> hopefully<br>
>> >> we'll figure out what's going on.<br>
>> >> Are other diff-drive folks experiencing these kinds of problems with<br>
>> >> their<br>
>> >> setups?<br>
>> >> Hope all is well,<br>
>> >> Eitan<br>
>> >><br>
>> >> On Mon, Sep 6, 2010 at 10:27 AM, Brian Gerkey <<a href="mailto:gerkey@willowgarage.com">gerkey@willowgarage.com</a>><br>
>> >> wrote:<br>
>> >>><br>
>> >>> On Sat, Sep 4, 2010 at 12:12 AM, Christian Verbeek<br>
>> >>> <<a href="mailto:verbeek@servicerobotics.eu">verbeek@servicerobotics.eu</a>> wrote:<br>
>> >>> >  I am using move_base for driving a robot with non holonomic drive.<br>
>> >>> > I<br>
>> >>> > found the performance to be poor to wholly unacceptable. I played<br>
>> >>> > around<br>
>> >>> > with the parameters for quite a time and was not able to find a<br>
>> >>> > satisfactory setting. The problem with the parameters is that I most<br>
>> >>> > of<br>
>> >>> > the time I can not see a difference at all when changing something.<br>
>> >>> ><br>
>> >>> > My impression is that the navigation stack works in tidy and roomy<br>
>> >>> > environments. But in real world settings with narrow passages and<br>
>> >>> > stuff<br>
>> >>> > standing around performance drops dramatically. I tried this both<br>
>> >>> > woth<br>
>> >>> > boxturtle and latest cturtle and can not see any improvements. The<br>
>> >>> > navigation (which is in my eyes the most basic behaviour) is so to<br>
>> >>> > say<br>
>> >>> > still unsolved for real world environments.<br>
>> >>><br>
>> >>> hi Christian,<br>
>> >>><br>
>> >>> Hmm, that's a less than glowing assessment of the navigation stack.<br>
>> >>> I'd be interested to find out exactly what's going wrong.  We use the<br>
>> >>> navigation stack all the time on the PR2 in our office, which is<br>
>> >>> neither tidy nor roomy.  It frequently avoids many small obstacles,<br>
>> >>> and squeezes through tight openings.  Of course, the PR2 is an<br>
>> >>> omni-drive robot, and we test less often on differential-drive robots.<br>
>> >>>  But the navigation stack is intended to support differential-drive<br>
>> >>> robots, and there's no reason that it shouldn't work well in that<br>
>> >>> situation.<br>
>> >>><br>
>> >>> Can someone who's had more success with the navigation stack on<br>
>> >>> differential-drive robots suggest a good set of parameters?<br>
>> >>><br>
>> >>>        brian.<br>
>> >>> _______________________________________________<br>
>> >>> ros-users mailing list<br>
>> >>> <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
>> >>> <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
>> >><br>
>> >><br>
>> >> _______________________________________________<br>
>> >> ros-users mailing list<br>
>> >> <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
>> >> <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
>> >><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > ros-users mailing list<br>
>> > <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
>> > <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
>> ><br>
>> ><br>
>><br>
>><br>
>><br>
>> --<br>
>> Sachin Chitta<br>
>> Research Scientist<br>
>> Willow Garage<br>
>> _______________________________________________<br>
>> ros-users mailing list<br>
>> <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
>> <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
><br>
><br>
> _______________________________________________<br>
> ros-users mailing list<br>
> <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
> <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
><br>
><br>
<br>
<br>
<br>
--<br>
Sachin Chitta<br>
Research Scientist<br>
Willow Garage<br>
_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
</div></div></blockquote></div><br></div>