Just like us, robots can’t see through walls. Sometimes they need a little help to get where they’re going. Engineers at Rice University have developed a method that allows humans to help robots “see” their environments and carry out tasks.
The strategy called Bayesian Learning IN the Dark (BLIND) is a novel solution to the long-standing problem of motion planning for robots that work in environments where not everything is clearly visible all the time.
The algorithm developed by Carlos Quintero-Peña and Constantinos Chamzas of Rice’s George R. Brown School of Engineering, both graduate students working with computer scientists Lydia Kavraki and Vaibhav Unhelkar, keeps a human in the loop to augment robot perception and, importantly, prevent the execution of unsafe motion.
To do so, they combined Bayesian inverse reinforcement learning with established motion planning techniques to assist robots that have high degrees of freedom.
To test BLIND, the Rice lab directed a Fetch robot, an articulated arm with seven joints, to grab a small cylinder from a table and move it to another, but in doing so it had to move past a barrier. “If you have more joints, instructions to the robot are complicated,” Quintero-Peña said. “If you’re directing a human, you can just say, ‘Lift up your hand.’”
But a robot’s programmers have to be specific about the movement of each joint at each point in its trajectory, especially when obstacles block the machine’s “view” of its target.
Rather than programming a trajectory up front, BLIND inserts a human mid-process to refine the choreographed options, or best guesses, suggested by the robot’s algorithm. “BLIND allows us to take information in the human’s head and compute our trajectories in this high-degree-of-freedom space,” Quintero-Peña said. “We use a specific way of feedback called critique, basically a binary form of feedback where the human is given labels on pieces of the trajectory,” he said.
These labels appear as connected green dots that represent possible paths. As BLIND steps from dot to dot, the human approves or rejects each movement to refine the path, avoiding obstacles as efficiently as possible. The robot uses this information to plan and once rewarded with an approved set of movements, it can carry out its task.