Robotic Airplane Flies In Tight Spaces
mashable.com
mashable.com
My limited understanding of the topic is thus:
For localizing, they use a particle filter, which is basically a method that helps you figure out latent variables (in this case location) based on multiple observations.
Using the data, it creates a model of how the aircraft moves. In each "tick", you make a prediction about where the aircraft will be in the future (let's say, based on how fast you know the motor goes and which way the rudders are tilted etc). Then, you actually compare it to the data you got from your sensors (in this case a laser rangefinder) and update your model. Thus, your model is better.
The more traditional formulation of this is the Kalman Filter, which is everywhere in classical controls systems. I think the particle filter is just simpler for large numbers of variables whereas for Kalman filters, complexity increases exponentially.
edit:
Another way to look at it is that this is how robots deal with the "real world" where sensors are noisy and slightly off, actuators are unreliable and can't produce smooth and constant output etc. Instead of trying to guess all these factors, it automagically accounts for these on the fly by looking at how the robot behaves and how you expected it to behave.
edit2:
Corrections abound! Read replies below!
The classical formulation of Kalman filters assumes gaussian distributions for the variables. This makes the computations much faster since the posterior distributions is a few matrix operations away. This works fine when the model for the plant is linear (since a linear transformation of a gaussian variable is gaussian). In situations where the plant model is not linear estimates can go awry quickly.
In the case of particle filters you sample the prior distribution, simulate the non-linear plant with these initial conditions and then construct the posterior distribution by incorporating the measurements. This process is computationally more expensive than classical Kalman filtering but is more accurate for non-linear plants.
What's cool here other than the fact that it seems to react really quickly is that it has no universal conception of location, like GPS.
Nit-picky robotics engineer chiming in: it's not reactive. The planning is done ahead of time, and they expect there to be no dynamic obstacles in the environment.http://www.udacity.com/view#Course/cs373/CourseRev/apr2012/U...
In the course you go step by step implementing these things in python. The course far exceeded my expectaion from an online course.
This is great work, but it's not onboard SLAM, only onboard localisation. All up, it's great to see more of the autonomous ground vehicle work becoming small and lightweight enough to go on aerial vehicles. Traditionally the low payload capacity has been a showstopper for UAVs, and laser range finders are often heavy, hence why so many UAVs have used vision-only localisation techniques.
Continuous AI flight after blowing off one wing:
http://www.youtube.com/watch?v=xN9f9ycWkOY
Continuous AI flight after catastrophic wing loss (showing manual/AI difference):
Presumably one of the reasons for the prebuilt map is so that it doesn't enter a dead end, which some parking garages have.