Posts Tagged ‘machine learning’

December 1st, 2011

Teaching motion primitives - article


Incremental kinesthetic teaching of motion primitives using the motion refinement tube
Dongheui Lee, Christian Ott

Finding ways to easily teach service robots new motions will be key to their integration in our everyday environments. Ideally, teaching a robot should be no different than teaching a human.

For example, to teach someone a new dance, you might first show them the basic steps. You will most likely mention motion primitives, such as “right foot forward” and not the actual position of all your body joints. The apprentice dancer will then try to imitate your steps. To refine dance moves, the teacher can physically correct the motion by pushing the elbow higher, straightening the back or guiding the steps. However, if the student has been taught to move forward with its right foot, and the teacher pushes in the opposite direction, the dancer will most likely freeze. This is due to the fact that refinements should fit within a certain region around the movement that the person expects (refinement tube). Over time, the dancer iteratively improves its movements, forgetting older clumsy moves along the way.

Following this exact idea, Lee et al. have been teaching motion primitives to the humanoid upper-body robot “Justin”. Experiments use the 19 joints of the arms (2 times 7 DOF), torso (3 DOF), and head (2 DOF). The framework shown in the schematic below, uses imitation learning followed by iterative kinesthetic motion refinements (physically guided corrections) within a refinement tube. Motion primitives are represented as a hidden Markov Model.

The authors hope that in the future, these algorithms can contribute to making humanoid robots, which are capable of autonomous long-term learning and adaptation.

| More

Related posts

October 12th, 2011

From iCub to artist - article


Teaching a humanoid robot to draw Shapes
Vishwanathan Mohan, Pietro Morasso, Jacopo Zenzeri, Giorgio Metta, V. Srinivasa Chakravarthy, Giulio Sandini

Learning how to perceive shapes and act on them is what allows us to interact with our world. Whether it’s grasping for an object, drawing or dancing.

With this in mind, Mohan et al. have been teaching the iCub, a child-sized humanoid, to draw shapes. Starting from simple shapes like ‘I’ and ‘U’ the robot goes on to writing its full name and finally drawing a portrait of Gandhi.

To do this, the iCub observes a human teacher drawing the shape before trying to reproduce it. The task requires a host of skills such as vision processing, imitating the teacher’s motions, practicing the drawings, exploring new actions, trajectory formation and inverse kinematics, and finally generalizing lessons learned to new tasks.

For a complete explanation of how the system works, have a look at the excellent presentation below narrated by the author of the paper.

| More

Related posts

July 24th, 2011

Yeti robot avoids snow traps - article


Mobility characterization for autonomous mobile robots using machine learning
Eric Trautmann, Laura Ray

Have you ever skied down an immaculate white slope? Hard to see the bumps, right?

The same is true for the Yeti robot that needs to drive through polar regions that feature obstacles, slopes and different densities of snow. In such low-contrast terrain, vision won’t be able to detect challenging situations that might get the robot stuck. Instead, robots should rely on proprioceptive sensors, such as gyroscopes, accelerometers, motor current and wheel encoders to indirectly ‘feel’ the terrain below.

Using this idea, Trautmann et al. developed an algorithm that makes the robot learn to detect what it ‘feels’ like right before getting stuck (using a Support Vector Machine). The dangerous situations are then classified (using a Hidden Markov Model) and an escape behavior is implemented.

Polar terrain features that present a mobility challenge to the 73kg Yeti robot were determined during field deployments in Greenland and Antarctica. These challenging scenarios were reproduced in Hanover and used to train the robot. Results show that the robot is able to detect tricky situations with an error rate as low as 1.6% for a variety of obstacle geometries, approach angles to obstacles, robot speeds, and snow conditions. Furthermore, the robot is able to recognize the challenge type correctly in 100% of situations.

| More

Related posts

January 21st, 2011

Learning Bayesian filters without precise ground truth - article


Learning GP-BayesFilters via Gaussian process latent variable models
Jonathan Ko, Dieter Fox

As seen in a previous post, Bayes filters such as Kalman filters can be used to estimate the state of a robot. Usually, this requires having a model of how the robot’s sensor measurements relate to the state you want to observe and a model to predict how the robot’s control inputs impact its state. When little is know about these models, machine learning techniques can help find models automatically.

In the scenario imagined by Ko et al. the goal is to infer a car’s position (state) on a race track based on remote control commands and measurements from an Inertial Measurement Unit (IMU, see red box in picture below) that provides turn rates in roll, pitch, and yaw and accelerations in 3 dimensions. The car is only controlled in speed since a “rail” in the track makes it turn. As a start, Ko et al. collect data by driving the car around the track while recording its remote control commands, IMU measurements, and position (ground truth) estimated using an overhead camera. The data is then used to train probabilistic models (Gaussian Process models) that are finally integrated into a Bayes filter.

However, the need for ground truth requires extra effort and additional hardware such as the overhead camera. To overcome this problem, Ko et al. extend their method to deal with situations where no, little, or noisy ground truth is used to train the models.

Results show the successful tracking of the car with better performance than state-of-the-art approaches, even when no ground truth is given. The authors also show how the developed method can be used to allow the car or a robot arm to replay trajectories based on expert demonstrations.

| More

Related posts

December 21st, 2010

Learning behavioral models - article


Learning the behavior model of a robot
Guillaume Infantes, Malik Ghallab, Félix Ingrand

It is often difficult to predict the high-level behavior of a robot given low-level models about sensors, actuators and controllers. You might know your robot will turn in response to obstacles but not how it will behave in a room full of people.

Modeling the global behavior of a robot is useful in order to predict how the robot behaves in different environments. Furthermore, once a good model is inferred, it can be used to improve the robot’s controller parameters online.

To model robot behaviors, Infantes et al. use a probabilistic representation called Dynamic Bayesian Networks. The approach is tested using the Rackham RWI B21R museum guide robot shown below that needs to navigate in an open environment with people. The network captures information concerning the robot’s parameters, environment variables, robot state variables and mission variables. The model is then used to optimize the robot behavior for a given environment. During the learning process, robots are rewarded for good behaviors that avoid failures, go fast and are “human-friendly”. Using this approach, the robot fails less, is faster and has better human acceptance than a robot with hand-tuned parameters.

In the future, Infantes et al. plan to use this approach to learn other robotic tasks such as grasping or interacting with humans.

| More

Related posts

August 29th, 2010

Social learning - article


Exploiting social partners in robot learning
Maya Cakmak, Nick DePalma, Rosa I. Arriaga, Andrea L. Thomaz

Robots are portrayed as tomorrows helpers, be it in schools, hospitals, workplaces or homes. Unfortunately, such robots won’t be truly useful out-of-the-box because of the complexity of real-world environments and tasks. Instead, they will need to learn how to interact with objects in their environment to produce a desired outcome (affordance learning).

For this purpose, robots can explore the world while using machine learning techniques to update their knowledge. However, the learning process is sometimes saturated with examples of objects, actions and effects that won’t help the robot in its purpose.

In these cases, humans or other social partners can help direct robot learning (social learning). Most studies have focussed on scenarios where a teacher demonstrates how to correctly do a task. The robot then imitates the teacher by reproducing the same actions to achieve the same goals.

This approach, while being very efficient, typically means that the teacher needs to take time to train the robot, which can be burdensome. Furthermore, the robot might be so specialized for the demonstrated scenario that it will have trouble performing tasks that slightly differ. In addition, imitation only works when the teacher and robot have similar motion constraints and morphologies.

Luckily, humans and animals use a large variety of mechanisms to learn from social partners. Tapping into this reservoir, Cakmak et al. propose mechanisms where:
- robots interact with the same objects as the social partner (stimulus enhancement)
- robots try to achieve the same effect on the same object as the social partner (emulation)
- robots reproduce the same action as the social partner (mimicking)

Experiments performed in simulation compare stimulus enhancement, emulation, mimicking, imitation and non-social learning in a large variety of situations. The results summarize which mechanisms are better suited for which scenarios in a series of very useful guidelines. Demonstrations with two robots, Jimmy and Jane, were done to validate the study. Don’t miss the excellent video below for a summary of the article.

In the future, Cakmak et al. will focus on combining learning approaches to harness the full potential of this rich set of mechanisms.

| More

Related posts

July 27th, 2010

Learning tasks across different environments - article


Finding and transferring policies using stored behaviors
Martin Stolle, Christopher Atkeson

In the future, robots will be expected to learn a task and execute it in a variety of realistic situations. Reinforcement-learning and planning algorithms are exactly intended for that purpose. However, one of the main challenges is to make sure actions learned in one environment can be used in new and unforeseen situations in real time.

To address this challenge, Stolle et al. have imagined a series of algorithms which they demonstrate on complex tasks such as solving a marble maze or making Boston Dynamic’s Little Dog navigate over complex terrain (see video below).

The first ingredient of success relies on making robots learn what action to take based on local features, meaning features as viewed by the robot (e.g. “there is a wall to the right”). These local features can then be recognized in new environments when the robot is in similar situations. Instead, many existing algorithms use global information, for example by saying “perform this action in position (x,y,z)”. Changing the environment however would typically make these global policies useless.

The second ingredient makes robots build libraries containing sequences of actions (trajectories) that can bring a robot from its current state to an aimed goal. Robots then apply the actions from the trajectory nearest to their state to achieve a task. This strategy is interesting because it is not computationally expensive and does not require large amounts of fast memory.

Finally, don’t miss the following video of little-dog climbing over a fence. This special purpose behavior can be used in a variety of situations.

| More

Related posts

July 24th, 2010

Classifying dynamic obstacles - article


Track-based self-supervised classification of dynamic obstacles
Roman Katz, Juan Nieto, Eduardo Nebot, Bertrand Douillard

Identifying dynamic objects in urban environments has become a major concern with the advent of autonomous cars in industry and competitions such as the Darpa Urban Challenge. However, detecting and classifying moving obstacles is extremely challenging because of the richness of real-world environments.

To this end, Katz et al. have developed a technique where cars learn to classify dynamic objects. The strategy consists in collecting large amounts of data using a laser scanner while driving around an urban environment. From this data, labels are automatically extracted to describe the dynamic objects (unsupervised learning). Automatic labeling is important because manual labeling is time consuming or might even be impossible if the data set is too large. These labels are then fed to a second supervised classifier that can be used to identify objects instantaneously, even with different sensors such as a camera.

Experiments were conducted with a car equipped with a laser scanner and a camera driving around the University of Sydney campus between 0–40 km/h. Results showed the robust and accurate classification of bikes, pedestrians and cars.

| More

Related posts