Autonomous Nav­i­ga­tion: quo vadis, Robot?

2. October 2018

Share

Before you know where to go, you should know where you are. This applies for some­thing as sim­ple as going to the super­mar­ket, to the big deci­sions in life. And it also applies to our robots.
In order to move suc­cess­fully from point A to point B, they must first local­ize them­selves, then over­come obsta­cles and new sit­u­a­tions along their way. To do this, we have equipped them with intel­li­gent algo­rithms and col­lec­tive perception.

The more freely robots intend to move, the smarter they must be. This includes their abil­ity to nav­i­gate autonomously. In Magazino’s case, our domain is the ware­house and nav­i­ga­tion con­sists pri­mar­ily of two things: firstly, find­ing a way through the aisles while avoid­ing obsta­cles, and sec­ondly, arriv­ing at the right shelf. Once there, the robots have to locate the tar­get object on the shelf and then grasp it suc­cess­fully. This poses a num­ber of chal­lenges. For com­par­i­son: AGVs, or Auto­mated Guided Vehi­cles, which sup­port goods in ware­houses and trans­port objects from one point to another, do not have to nav­i­gate intel­li­gently, but are instead guided by lines, mag­netic strips or other pre­de­fined tracks.

Effi­ciency through intel­li­gent software

Mag­a­zino robots are dif­fer­ent. They don’t need a com­plex rail sys­tem or a ware­house designed specif­i­cally for them. They can be adapted to work in any ware­house envi­ron­ment and their intel­li­gent fea­tures make it easy for them to find their way around. They move freely and have the abil­ity to nav­i­gate autonomously.

A fun­da­men­tal chal­lenge in mobile robot­ics is called SLAM. SLAM stands for “simul­ta­ne­ous local­iza­tion and map­ping”. This is the name given to the robot­ics prob­lem in which a mobile robot must simul­ta­ne­ously cre­ate a map of its envi­ron­ment while esti­mat­ing its posi­tion in this envi­ron­ment. To reit­er­ate, before nav­i­ga­tion can take place, a map of the envi­ron­ment must be gen­er­ated, and then the posi­tion on the map esti­mated. Our robots do this by per­ceiv­ing their sur­round­ings with var­i­ous sen­sors, all the while updat­ing the envi­ron­men­tal map. Once the robot’s posi­tion is known with suf­fi­cient cer­tainty, a route to the des­ti­na­tion can be computed.

The advan­tage of work­ing together

This is already fea­si­ble for a sin­gle robot in a com­pletely sta­tic envi­ron­ment using con­ven­tional SLAM algo­rithms.  How­ever, ware­houses in the real world are any­thing but sta­tic. Peo­ple work in them and change the envi­ron­ment con­tin­u­ously; goods are moved, new obsta­cles come and go. In order to work reli­ably and smoothly, even under these cir­cum­stances, the robots need one more skill: the abil­ity to adapt. To do this, they need as much infor­ma­tion as pos­si­ble about the cur­rent sit­u­a­tion in their envi­ron­ment. With this infor­ma­tion, they can then adapt their paths and oper­ate more efficiently.

Our approach is thus: cloud-based map­ping and local­iza­tion in dynamic ware­house envi­ron­ments. This con­cept is based on the fact that indi­vid­ual robots can col­lect data about their local envi­ron­ment dur­ing oper­a­tion. Each time a robot trav­els through an aisle, it per­ceives its sur­round­ings through sen­sors and cam­eras. If it encoun­ters an obsta­cle en route, it stops and looks for an alter­nate way to reach its des­ti­na­tion. How­ever, if a robot does­n’t have to dis­cover the obsta­cle for itself, it can plan its route accord­ingly and arrive at its des­ti­na­tion faster. So would­n’t it be fan­tas­tic if Robot A could share its knowl­edge with Robot B? Def­i­nitely. That’s why, in coop­er­a­tion with Google Car­tog­ra­pher, we have fur­ther devel­oped a real-time local­iza­tion and map­ping library. In con­crete terms, this means that every robot in a ware­house sends SLAM data to a cloud and simul­ta­ne­ously com­pares its stored inner map of the ware­house with data in the cloud. The robots in the fleet can there­fore share their knowl­edge of the envi­ron­ment and use it for local opti­miza­tions. One could say that the fleet per­ceives its envi­ron­ment col­lec­tively and is con­stantly improv­ing together: Mag­a­zino robots are real team play­ers, just like their developers.