'Trial And Error' Is How UC Berkeley Robot BRETT Learns Motor Skills

You must've seen a kid play with lego blocks and learning to put them together on their own by the good ol' 'trial and error' method. Well, that's how the UC Berkeley robot learns various motor skills. A team of researchers from University of California has developed algorithms that empower robots to learn on their own. What is now being called a major step forward in the field of AI, this technique of reinforcement learning helps a robot complete different tasks without pre-programmed instructions of how to do it or where to do it. Robot BRETT is a PR2 bot (Willow Garage Personal Robot 2) that uses the 'deep learning' algorithm to master the tasks of fixing lego blocks properly, placing clothes hanger on a rack, screwing a bottle's cap, assembling a toy plane and much more.

The electrical and computer engineers working on this project developed this software that gives the robot the ability to learn without external help in an unpredictable environment. If the robot is able to adapt to its surrounding while it learns new things, we can put it in real-life settings so that they do real jobs. This can be achieved by the UC Berkeley engineers method of 'deep learning' which derives inspiration from human brain's neural circuitry. This is radically opposite to the conventional method of feeding the robot with 'n' number of simulated situations and letting it know how to find its way through them.

UC-Berkeley-Robot-BRETT-Motor-Skills

Just like humans learn from experience, a robot has deep learning programs in the form of 'neural nets' which raw sensory data (images, sound etc.) can be processed via artificial neurons. When presented with a task requiring motor skills, the robot's algorithm works with a 'reward function' that provides a score of how well BRETT is doing its task. From this score, the robot knows which movements are better to do the job at hand and keeps changing its method till the score is high enough to complete the task.

Take a look at the video to see BRETT in action:


The team is hopeful that over the next decade we will be see significantly advanced capability in robots. That's a frontier that scientists and roboticists around the world hope to push forward.

What are your thoughts about robots learning on their own? Share with us in comments below.

Source: #-Link-Snipped-#

Replies

  • Shreyas Sule
    Shreyas Sule
    Interesting application of the neural network algorithms being applied to train robots. Neural network algorithms are different from other control algorithms in the sense that they have more degree of flexibility and greater amount of tweak-able parameters that define the algorithm. Use of these networks are becoming very popular in machine learning and robotics. Rather than preset functions that would control the robot movements for a task, it is better to have neural networks that can adapt to changing situations, more scope for increasing the complexity and better human-like thinking. BRETT's demonstration of learning simple task shows clearly how we can have machines assisting humans in complex tasks while thinking like humans. Neural networks are and will be the fundamental block of all artificial intelligence algorithms used to build robots.

    Recently released movie Ex Machina had astounding example how Neural Networks is used to train robots. In the movie, the robot is trying to improve its communication and interpersonal skills by interacting with a human. The testing phase for the robot is beyond Turing test (a test to adjudge a robot's consciousness and differentiate it from human) and now a human has to judge this robot's capability! Even though the movie has a disgusting and predictable end (sorry for the spoiler), there are impressive glimpses about human-robot relationships and artificial intelligence.

    I did few projects in Neural Networks for data classification, regression, function approximation, etc. and am very much impressed by its capabilities. I hope to get a hands on experience in programming robots and machines using Neural Networks!! For those who want to learn basics about Neural Networks, Matlab tutorials and its applications, visit Neural Network Design.

You are reading an archived discussion.

Related Posts

Timex is a leading brand in watches for over a century. The company has jumped on the bandwagon of wearable devices by introducing its own new smartwatch called 'Timex Ironman...
Thoughts Become Things Take a second to think about what distinguishes you, as a hacker. Is it your impressive ability to stay (semi) functional for 24 hours on end? Maybe...
DoPartTime is a Staffing and Recruiting company founded by Mohankumar Swaminathan and Arun David in the year 2014. DoPartTime is an on-line portal which facilitates hiring and finding of part-time...
I was recently asked about my hobbies during an interview. I do not have any hobby like reading, painting or collecting stamps. What would be a good response to this question?
Researchers have been using the technological ability to see really tiny objects for advancing the fields of medical science (detect cancer) as well as electronics (nanotechnology). In a new research...