Incremental Learning for Humanoid Robots

This work was carried out at the Nakamura Yamane Lab at the University of Tokyo, working with Professor Yoshihiko Nakamura.  The aim of this research is to develop algorithms for life-long, incremental learning of human motion patterns for humanoid robots.  We are developing incremental algorithms for automatically segmenting, clustering and organizing motion pattern primitives, which are observed from human demonstration.  The motion primitives are represented as stochastic Markov-based models, where the size and structure of the model is automatically selected by the algorithm.

First, motions are segmented using a variant of the Kohlmorgen-Lemm stochastic segmentation approach.  An HMM is built over a sliding set of windows, and the Viterbi algorithm used to generate the optimum state sequence representing the segmentation results.


Segmented motions are then passed to an on-line, incremental clustering algorithm, which incrementally builds a tree structure representing a hierarchy of known motions.
The motions abstracted by the incremental clustering algorithm are then used to further improve the segmentation result by adding known motions.  In this way, both the segmentation and the clustering performance improves over time, as more motions are observed.  The resulting tree structure is dependent on the history of observations of the robot, with the most specialized (leaf) nodes occuring in those regions of the motion space where the most examples have been observed.
The algorithm has been tested on a large dataset of continuous motions.  Data is first collected from a motion capture studio  The raw marker data is then converted to joint data for a 20DoF humanoid using online inverse kinematics.  This continuous sequence of joint angle data is then used as input into the segmentation and clustering algorithm.

- video showing the raw marker data

- video showing the joint angle data animated on a humanoid

- sample segmentation result video

Samples of automatically extracted motions:

- small data set: Right Arm Raise, Left Arm Lower, Kick Extend, Squat Retract

- large data set: Bow Down, Walk Mid Stride, Right Arm Raise

Human-Robot Interaction

This research was conducted at the CARIS Laboratory at the University of British Columbia, working with Prof. Elizabeth Croft.  The goal of this research was to develop a human-robot interaction strategy that ensures the safety of the human participant through planning and control.  We focused on quantifying the level of danger present in the interaction, and then acting to minimize that danger, both in the planning stage and during real-time control.  A key requirement for improving safety is the ability of the robot to perceive its environment, and specifically the human behavior and reaction to robot movements.  This work also examined the feasibility of using human monitoring information (such as gaze direction, head rotation and physiological monitoring) to improve the safety of the human–robot interaction.  A key result of the research was a systematic definition of this interaction strategy applicable to a range of human-robot interaction tasks, and a prototype implementation and experimental validation.

These videos show the operation of the integrated system under a variety of conditions:

- localized trajectory scaling

- trajectory scaling due to a path obstruction

- safety module intervention due to a path obstruction

- response to changes in head orientation

- response to human affective state

A sample experiment testing the Safety Module can be seen here.