At UBC, Engineering Physics students take a robotics course that is designed to provide prototyping skills. Each year the students are tasked with constructing a robot to solve a challenge that the instructors choose for that year. In 2016, the challenge was to make and autonomous Uber-Bot that navigated a city, picked up passengers and dropped them off. Here is a video of the working robot.