GPU Computing for Cognitive Robotics

Similar documents
A Divide-and-Conquer Approach to Evolvable Hardware

EMERGENCE OF COMMUNICATION IN TEAMS OF EMBODIED AND SITUATED AGENTS

Implicit Fitness Functions for Evolving a Drawing Robot

Biologically Inspired Embodied Evolution of Survival

Swarm Intelligence W7: Application of Machine- Learning Techniques to Automatic Control Design and Optimization

Evolutions of communication

Service Robots in an Intelligent House

Evolution in Robotic Islands

CYCLIC GENETIC ALGORITHMS FOR EVOLVING MULTI-LOOP CONTROL PROGRAMS

Behavior-based robotics, and Evolutionary robotics

THE EFFECT OF CHANGE IN EVOLUTION PARAMETERS ON EVOLUTIONARY ROBOTS

The Behavior Evolving Model and Application of Virtual Robots

Outline. What is AI? A brief history of AI State of the art

Evolutionary robotics Jørgen Nordmoen

A Genetic Algorithm-Based Controller for Decentralized Multi-Agent Robotic Systems

MINE 432 Industrial Automation and Robotics

Behavior Emergence in Autonomous Robot Control by Means of Feedforward and Recurrent Neural Networks

CUDA-Accelerated Satellite Communication Demodulation

Learning Behaviors for Environment Modeling by Genetic Algorithm

Embodiment from Engineer s Point of View

Neuro-Fuzzy and Soft Computing: Fuzzy Sets. Chapter 1 of Neuro-Fuzzy and Soft Computing by Jang, Sun and Mizutani

Behaviour Patterns Evolution on Individual and Group Level. Stanislav Slušný, Roman Neruda, Petra Vidnerová. CIMMACS 07, December 14, Tenerife

Knowledge Representation and Reasoning

ARTIFICIAL INTELLIGENCE IN POWER SYSTEMS

RoboCup. Presented by Shane Murphy April 24, 2003

Available online at ScienceDirect. Procedia Computer Science 24 (2013 )

Synthetic Brains: Update

AI Application Processing Requirements

Enhancing Embodied Evolution with Punctuated Anytime Learning

Humanification Go Digital, Stay Human

SenseMaker IST Martin McGinnity University of Ulster Neuro-IT, Bonn, June 2004 SenseMaker IST Neuro-IT workshop June 2004 Page 1

Mobile robot control based on noninvasive brain-computer interface using hierarchical classifier of imagined motor commands

GPU ACCELERATED DEEP LEARNING WITH CUDNN

COMPUTATONAL INTELLIGENCE

Swiss Re Institute. September 2018 Dr. Jeffrey R. Bohn

Optic Flow Based Skill Learning for A Humanoid to Trap, Approach to, and Pass a Ball

Challenges in Transition

Contents 1 Introduction Optical Character Recognition Systems Soft Computing Techniques for Optical Character Recognition Systems

By Marek Perkowski ECE Seminar, Friday January 26, 2001

Artificial Neural Networks. Artificial Intelligence Santa Clara, 2016

Ben Baker. Sponsored by:

Computational Efficiency of the GF and the RMF Transforms for Quaternary Logic Functions on CPUs and GPUs

Eyedentify MMR SDK. Technical sheet. Version Eyedea Recognition, s.r.o.

Proposers Day Workshop

Chapter 1: Introduction to Neuro-Fuzzy (NF) and Soft Computing (SC)

Sensing and Perception

Co-evolution for Communication: An EHW Approach

Embedding Artificial Intelligence into Our Lives

Reactive Planning with Evolutionary Computation

Evolutionary Computation and Machine Intelligence

AI MAGAZINE AMER ASSOC ARTIFICIAL INTELL UNITED STATES English ANNALS OF MATHEMATICS AND ARTIFICIAL

Transactions on Information and Communications Technologies vol 1, 1993 WIT Press, ISSN

AI Frontiers. Dr. Dario Gil Vice President IBM Research

! The architecture of the robot control system! Also maybe some aspects of its body/motors/sensors

Optimization of Tile Sets for DNA Self- Assembly

Motion Recognition in Wearable Sensor System Using an Ensemble Artificial Neuro-Molecular System

GPU-accelerated SDR Implementation of Multi-User Detector for Satellite Return Links

Evolving High-Dimensional, Adaptive Camera-Based Speed Sensors

Breedbot: An Edutainment Robotics System to Link Digital and Real World

Haptic Rendering of Large-Scale VEs

Night-time pedestrian detection via Neuromorphic approach

Neural Network Application in Robotics

SMARTER NEAT NETS. A Thesis. presented to. the Faculty of California Polytechnic State University. San Luis Obispo. In Partial Fulfillment

Demystifying Machine Learning

GENETIC PROGRAMMING. In artificial intelligence, genetic programming (GP) is an evolutionary algorithmbased

Genetic Robots Play Football. William Jeggo BSc Computing

Confidence-Based Multi-Robot Learning from Demonstration

Biologically Inspired Computation

NEURAL NETWORK DEMODULATOR FOR QUADRATURE AMPLITUDE MODULATION (QAM)

Accessible Power Tool Flexible Application Scalable Solution

Neural Networks for Real-time Pathfinding in Computer Games

Artificial intelligence, made simple. Written by: Dale Benton Produced by: Danielle Harris

258 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS PART B: CYBERNETICS, VOL. 33, NO. 2, APRIL 2003

PES: A system for parallelized fitness evaluation of evolutionary methods

Evolutionary Artificial Neural Networks For Medical Data Classification

KÜNSTLICHE INTELLIGENZ JOBKILLER VON MORGEN?

Development of an Intelligent Agent based Manufacturing System

Decoding Brainwave Data using Regression

FACE RECOGNITION USING NEURAL NETWORKS

Evolved Neurodynamics for Robot Control

Artificial Life Simulation on Distributed Virtual Reality Environments

Hardware Software Science Co-design in the Human Brain Project

Motor Imagery based Brain Computer Interface (BCI) using Artificial Neural Network Classifiers

신경망기반자동번역기술. Konkuk University Computational Intelligence Lab. 김강일

Cognitive robots and emotional intelligence Cloud robotics Ethical, legal and social issues of robotic Construction robots Human activities in many

Perception. Read: AIMA Chapter 24 & Chapter HW#8 due today. Vision

Live Hand Gesture Recognition using an Android Device

Adaptive Humanoid Robot Arm Motion Generation by Evolved Neural Controllers

Behaviour-Based Control. IAR Lecture 5 Barbara Webb

Framework Programme 7

INTELLIGENT CONTROL OF AUTONOMOUS SIX-LEGGED ROBOTS BY NEURAL NETWORKS

Notes from a seminar on "Tackling Public Sector Fraud" presented jointly by the UK NAO and H M Treasury in London, England in February 1998.

A Review on Genetic Algorithm and Its Applications

YDDON. Humans, Robots, & Intelligent Objects New communication approaches

On Intelligence Jeff Hawkins

Human-Centric Trusted AI for Data-Driven Economy

Designing Toys That Come Alive: Curious Robots for Creative Play

Team KMUTT: Team Description Paper

ALife in the Galapagos: migration effects on neuro-controller design

This list supersedes the one published in the November 2002 issue of CR.

Transcription:

GPU Computing for Cognitive Robotics Martin Peniak, Davide Marocco, Angelo Cangelosi GPU Technology Conference, San Jose, California, 25 March, 2014

Acknowledgements This study was financed by: EU Integrating Projects - ITALK and Poeticon++ within the FP7 ICT programme Cognitive Systems and Robotics ARIADNA scheme of The European Space Agency Thanks to my supervisors Prof Angelo Cangelosi, Dr. Davide Marocco and Prof Tony Belpaeme for their support Thanks to Calisa Cole and Chandra Cheij from NVIDIA for their help

New position at Cortexica Imperial College London Leading provider of visual search and image recognition technology for mobile device Creators of a bio-inspired vision system enabling intelligent image recognition using principles derived from the human sight www.cortexica.com

Overview Action and language acquisition in humanoid robots Biologically-inspired Active Vision system Software development 4

Action and Language Acquisition in Humanoid Robots 6

Learning Actions Humans are good at learning complex actions Constant repetition of movements with certain components segmented as reusable elements Motor primitives are flexibly combined into novel sequences of actions Human motor control system known to have motor primitives implemented as low as at the spinal cord and hi-level planning and execution takes place in primary motor cortex 7

Explicit hierarchical structure vs multiple timescales 8

9

Initial testing of two actions Experimental Setup SOM and MTRNN trained on 2 sequences each repeated 5x with different positions Extended version of up to 9 action sequences Left and Right hand used individually MTRNN input: head, torso and arms (41 DOF) Update rate: 50ms 10

Multiple Time-scales Recurrent Neural Network Experiment on action-language grounding step 1 Proprioceptive Input Action 1 Action 2 Action 3 Object 1 trained Visual Input MTRNN Object 2 trained Object 3 trained Linguistic Input 11

Results 20 trials conducted and each reached the threshold error of 0.000005 0.0012 0.001 0.0008 0.0006 0.0004 0.0002 0 12

Multiple Time-scales Recurrent Neural Network Scaling up the experiment on action-language grounding Action 1 Action 2 Action 3 Action 4 Action 5 Action 6 Action N Object 1 trained trained trained trained trained trained trained Object 2 trained trained trained trained trained trained trained Object 3 trained trained trained trained trained trained trained Object 4 trained trained trained trained trained trained trained Object 5 trained trained trained trained untrained trained trained Object 6 trained trained trained trained trained untrained trained Object N trained trained trained trained trained trained untrained 13

Multiple Time-scales Recurrent Neural Network Generalisation testing Experimental Setup For each of the 9 objects, SOM and MTRNN was trained on 9 sequences each repeated 6x with different positions. Total of 478 sequences each with 100 41-wide vectors. Left and Right hand used individually MTRNN input: head, torso and arms (41 DOF) Update rate: 50ms 14

Self-organising maps CPU vs GPU Performance

Multiple Time-scales Recurrent Neural Network CPU vs GPU Performance

Biologically-inspired Active Vision system

Traditional Computer Vision Teaching a computer to classify objects has proved much harder than was originally anticipated Thomas Serre - Center for Biological and Computational Learning at MIT Specific template or computational representation is required to allow object recognition Must be flexible enough to account with all kinds of variations 18

Biological Vision Researchers have been interested for years in trying to copy biological vision systems, simply because they are so good ~ David Hogg - computer vision expert at Leeds University, UK Highly optimized over millions of years of evolution, developing complex neural structures to represent and process stimuli Superiority of biological vision systems is only partially understood Hardware architecture and the style of computation in nervous systems are fundamentally different 19

Biological Vision 20

Seeing is a way of acting 21

Active Vision Inspired by the vision systems of natural organisms that have been evolving for millions of years In contrast to standard computer vision systems, biological organisms actively interact with the world in order to make sense of it Humans and also other animals do not look at a scene in fixed steadiness. Instead, they actively explore interesting parts of the scene by rapid saccadic movements 22

Creating Active Vision Systems Evolutionary Robotics Approach 23

Evolutionary Robotics New technique for the automatic creation of autonomous robots Inspired by the Darwinian principle of selective reproduction of the fittest Views robots as autonomous artificial organisms that develop their own skills in close interaction with the environment and without human intervention Drawing heavily on biology and ethology, it uses the tools of neural networks, genetic algorithms, dynamic systems, and biomorphic engineering 24

... Genetic Algorithms (GAs) are adaptive heuristic search algorithm premised on the evolutionary ideas of natural selection and genetic. The basic concept of GAs is designed to simulate processes in natural system necessary for evolution. Population (Chromosomes)...... Genetic operators Evaluation (Fitness) Artificial neural networks (ANNs) are very powerful brain-inspired computational models, which have been used in many different areas such as engineering, medicine, finance, and many others. Selection (Mating Pool) 25

Related Research Mars Rover obstacle avoidance (Peniak et al.) 26

Method Evolution of the active vision system for real-world object recognition training the system in a parallel manner on multiple objects viewed from many different angles and under different lighting conditions Amsterdam Library of Object Images (ALOI) provides a color image collection of one-thousand small objects recorded for scientific purposes systematically varied viewing angle, illumination angle, and illumination color Active Vision Training trained on a set of objects from the ALOI library each genotype is evaluated during multiple trials with different randomly rotated objects and under varying lighting conditions evolutionary pressure provided by a fitness function that evaluates overall success or failure of the object classification trained on increasingly larger number of objects Active Vision Testing robustness and resiliency of recognition of the dataset generalization to previously unseen instances of the learned objects 27

Experimental Setup Recurrent Neural Network Inputs: 8x8 neurons for retina, 2 neurons for proprioception (x,y pos) No hidden neurons Outputs: 5 object recognition neurons, 2 neurons to move retina (16px max) Genetic Algorithm Generations: 10000 Number of individuals: 100 Number of trials: 36+16 (object rotations + varying lighting conditions) Mutation probability: 10% Reproduction: best 20% of individuals create new population Elitism used (best individual is preserved) 28

Experimental Setup Each individual (neural network) could freely move the retina and read the input from the source image (128x128) for 20 steps At each step, neural network controlled the behavior of the system (retina position) and provide recognition output The recognition output neuron with the highest activation was considered the network s guess about what the object was Fitness function = number of correct answers / number of total steps 29

GPU Accelerating GA and ANN GPUs were used to accelerate: Evolutionary process parallel execution of trials Neural Network parallel calculation of neural activities 30

fitness Results Fitness can not reach 1.0 since it takes few time-steps to recognize an object All objects are correctly classified at the end of the each test 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 generations best fitness average fitness 31

Evolved Behavior 32

Software development

Heterogeneous computing Device Application Code Host GPU Compute-Intensive Functions Use GPU to Parallelise Rest of Sequential CPU Code CPU +

What is Aquila? Heterogeneous software architecture for the development of modules loosely coupled to their graphical user interfaces Provides simple and user friendly GUI client Distribute, control and visualise existing modules Generate new modules Monitor connected server Tools Modules Run heterogeneous CPU-GPU code doing the actual work

What is Aquila? Developed in C++ and CUDA Cross-platform Linux OSX Windows Dependencies Qt YARP CUDA

YARP messages CPU GPU Other modules YARP messages Aquila GUI Aquila Module GUI in Tab 1 Aquila Module Main Thread modulename.cpp Module GUI Implementation modulename.cpp Module GUI Design modulename.ui Tab 1 Name: modulename Instance: instanceid Server: serverid YARP Interface Interface.cpp YARP Interface modulenameinterface.cpp GPU Kernels kernels.cu Module Settings GUI Implementation modulenamesettings.cpp Module Settings GUI Design modulenamesettings.ui Tab 2 Tab N YARP messages

Speed-up Existing Aquila Ecosystem MTRNN Multiple Time-scales Recurrent Neural Network MTRNN Benchmark Example 2xGTX580(P2P) vs 8 core Intel Xeon 60.0 50.0 40.0 30.0 20.0 10.0 0.0 264 1032 2056 4104 Neurons SOM Self-organising Map ERA Epigenetic Robotics Architecture Tracker Object tracking ESN Echo State Networks

"Imagination is the highest form of research" Albert Einstein Thank you! 39