Novel algorithm can help robots prevent colliding with humans
A scientist has developed an algorithm that helps the robot avoid collisions by accurately calculating what path a human is going to take — an advance that can help machines work safely with people. Researchers from the Massachusetts Institute of Technology (MIT) in the US created an algorithm that aligns partial trajectories in real-time, allowing motion predictors to accurately anticipate the timing of a person’s motion.
“This algorithm builds in components that help a robot understand and monitor stops and overlaps in movement, which is a core part of human motion,” said Julie Shah, associate professor at MIT.”This technique is one of the many ways we’re working on robots better understanding people,” Shah said. To enable robots to predict human movements, researchers typically borrow algorithms from music and speech processing.
These algorithms are designed to align two complete time series, or sets of related data, such as an audio track of musical performance and a scrolling video of that piece’s musical notation. Researchers have used similar alignment algorithms to sync up real-time and previously recorded measurements of human motion, to predict where a person will be, say, five seconds from now.
However, unlike music or speech, human motion can be messy and highly variable. Even for repetitive movements, such as reaching across a table to screw in a bolt, one person may move slightly differently each time. Existing algorithms typically take in streaming motion data, in the form of dots representing the position of a person over time, and compare the trajectory of those dots to a library of common trajectories for the given scenario.
An algorithm maps a trajectory in terms of the relative distance between dots. However, Lasota said algorithms that predict trajectories based on distance alone can get easily confused in certain common situations, such as temporary stops, in which a person pauses before continuing on their path.
The same goes with overlapping trajectories — instances when a person moves back and forth along a similar path. As a solution, researchers devised a ‘partial trajectory’ algorithm that aligns segments of a person’s trajectory in real-time with a library of previously collected reference trajectories.
Importantly, the new algorithm aligns trajectories in both distance and timing, and in so doing, is able to accurately anticipate stops and overlaps in a person’s path.
The team tested the algorithm on two human motion datasets: one in which a person intermittently crossed a robot’s path in a factory setting, and another in which the group previously recorded hand movements of participants reaching across a table to install a bolt that a robot would then secure by brushing sealant on the bolt.
For both datasets, the algorithm was able to make better estimates of a person’s progress through a trajectory, compared with two commonly used partial trajectory alignment algorithms. Furthermore, the team found that when they integrated the alignment algorithm with their motion predictors, the robot could more accurately anticipate the timing of a person’s motion.
In the factory floor scenario, for example, they found the robot was less prone to freezing in place, and instead smoothly resumed its task shortly after a person crossed its path. While the algorithm was evaluated in the context of motion prediction, it can also be used as a preprocessing step for other techniques in the field of human-robot interaction, such as action recognition and gesture detection.
Shah said the algorithm will be a key tool in enabling robots to recognise and respond to patterns of human movements and behaviours. Ultimately, this can help humans and robots work together in structured environments, such as factory settings and even, in some cases, the home.
If you have an interesting article / experience / case study to share, please get in touch with us at [email protected]