What's interesting is the robots determine their own flight path based on information fed to them constantly about their location and the relative locations of obstacles and other robots. Link
These robots and the couch guitar are the work of doctoral students Alex Kushleyev and Daniel Mellinger from the General Robots, Automation, Sensing and Perception (GRASP) Lab at the University of Pennsylvania.
...
Such agile machines could help scope out dangerous buildings after disasters such as earthquakes or radiation leaks, Kumar said in his TED Talk. Each is small, but together, they can lift loads and help in construction. Perhaps they could lift collapsed material off of earthquake victims. They might present a slightly friendlier face to trapped victims than a rescue snake-bot (Though their droning buzz is still pretty unsettling).
The secrets to their smooth, graceful movement are their small size, four rotors and smart on-board processor. By moving each rotor at different speeds, the bots can tilt and turn. Their processors decide the swiftest, smoothest path from Point A to Point B, then send out commands to the rotors 600 times a second.
In a swarm, the robots can also monitor where they are compared to their neighbors. It's important that each robot does this by itself, as it would be too difficult to have one central computer controlling each robot as it flies.