Using emergency maps to help robots save you in emergencies

tl;dr: a method to integrate an emergency map into a robot map, so that the robot can plan its way toward places it has not yet explored.

Robots are coming… and it’s not to kill you. At least, not yet ;)…

Let’s say there is an earthquake, fire, or whatever disastrous scenario, and you’re in the middle of it. It’s a pretty dire situation and you want to be rescued fast! First responders are there, but the site is too dangerous for them so they send robots in to find you. However, the robots are slow, they need time to explore to find you. They progress but slowly…
And when they find you, it’s too late now, and you’re dead.

That’s the situation we want to avoid, here.

Hopefully, it doesn’t have to finish as dramatically. If the robot could use emergency maps during exploration, like first responders do, they could get to you in time. That’s what the method here is about: enabling robots to use emergency maps to reduce exploration time.

By integrating the emergency map, the robot can plan its way to unexplored places. It won’t search for the shortest path randomly, it will use the emergency map as a cue to find it.

Results

Since a picture is worth a thousand words:

blog.png
Even though the robot has only explored the part circled in blue, it can plan its way to the end of the corridor.

There is even a video that show what is happening in Rviz while the robot navigate but I will admit that it is hard to interpret as you can’t see the robot moving, only a point.

I want to use this

The code is available here under GNU licence.

The paper describing the method has been submitted and I’ll update this post as soon as I have an answer. In the meantime, please cite this paper:

@ARTICLE{2017arXiv170205087M,
   author = {{Mielle}, M. and {Magnusson}, M. and {Andreasson}, H. and {Lilienthal}, A.~J.
    },
    title = "{SLAM auto-complete using an emergency map}",
  journal = {ArXiv e-prints},
archivePrefix = "arXiv",
   eprint = {1702.05087},
 primaryClass = "cs.RO",
 keywords = {Computer Science - Robotics},
     year = 2017,
    month = feb,
   adsurl = {http://adsabs.harvard.edu/abs/2017arXiv170205087M},
  adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

I still want to know how it works

For the people curious at how it works, the method and the results, please take a look at this article

The robot takes the emergency map you’re giving it and extract all corners from it. It associates those corners with corners found in the real world. Those associations enable it to create a representation of the environment that fuse the emergency map and the real world in one. By using some optimization techniques, it obtains a consistent world representation. That’s the gist of it.

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s