There are more and more robots operating alongside people in many different environments around the world. Some are beginning to incorporate sophisticated Simultaneous Localization and Mapping (SLAM) functions to underpin true autonomy. But, getting SLAM right, as with many elements of robotics, remains extremely difficult. Getting it to work reliably in the real world with its ever-changing environments and conditions is even harder. It can take millions of dollars and months of painstaking trial and error experiments to prepare an autonomous robot to locate and navigate in even a relatively uniform environment. Getting more robots out of the lab and deployed to take on real tasks in environments built for humans, requires accuracy, computational efficiency and lower-cost solutions.