Upload
andreas-heil
View
542
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Public lecture at Microsoft Research about the convergence of robots and artificial intelligence. This talk presented the development and how to approach generic software architectures for robots.
Citation preview
Robots in Human EnvironmentsPresented by:Alexander BraendleAndreas Heil
Date12 Dec 2005
Introduction"Men Are From Mars, Robots Are From Mitsubishi“Financial Times (12/09/05) P. 9; Pincock, Stephen
As Carnegie Mellon roboticist Daniel Wilson outlines in his book, "How to Survive a Robot Uprising," the field of robotics has taken off in recent years, with researchers around the world developing robotic applications to do everything from vacuuming to exploring space alongside man. Several Japanese companies are developing robots that can serve as in-home assistants, link up to the Internet to respond to questions, and serve as a kind of companion. Toyota recently released its Partner Robot with the ability to play the trumpet through lips endowed with sensitivity and fingers with human-like dexterity. The convergence of robotics and artificial intelligence has enabled researchers to develop devices such as Sony's Qrio, a small robot that knows to hold out its arms if it is falling, and can pick itself up from the ground. Embodied intelligence seeks to equip robots with such cognitive abilities, though ingraining many basic components of intelligence still eludes roboticists. Robots still cannot understand what gives an object its properties, though roboticists are working to give their creations the ability to learn by experience. The international group of researchers working together in the RobotCub project is trying to create a child-sized robot that can learn from interactions with its environment, just as people do. Many researchers feel that people's perceptions of the role of robots must change if they will ever be accepted as legitimate companions. Mitsubishi has begun taking orders for its Wakamaru robot, an in-home personal assistant that wakes you up in the morning, reports the weather and the headlines, and then greets you in the evening with any telephone messages. "We have tried to create a robot you can have a relationship with," said Mitsubishi's Ken Onishi.
What do we think about?
• Increasing the intelligence of environments• Thinking future daily objects, appliances, architecture.• Personal(ized) Devices• R-H, H-R, H-R-H, R-E Interaction (Relationship)• Software & Tools
Robots in human environments
Future Applications• Support & Care, Education, Entertainment
Personal Robotics• Human-robotics Interaction• Mediator between digital/real world• Natural and affective interaction (speech, gestures,
emotions)
New programming paradigms• Body inspired software architecture (Pisa)• Meta-programming models (Berlin)
From nature to software models
What is needed that robots could be successfully integrated in our everyday life? What are key technical issues?
Robots!
Already many commercial robots available• Aibo• Asimo• Hoap• fischertechnik• Lego• …How to program them?• Different tools• Different programing paradigm• Different programing languages
Robots, too?
Software• MS Agent• Internet Explorer• Media Player
Additional Hardware• Smartphone
Goal
One language for all robots?
One tool to rule them all?
VRDKBuilding a compelling & engaging programmable environment to play & learn for children
Innovative, Very Easy, flexible programming environment for Robot control applications
That is accessible to non technical market (children, nurse, elderly, machine operator)
That enables a ‘path’ from very simple (beginner, child) to professional (using visual studio)
Andreas
Abstracting complexity on different levels
Source Code Visual
First Attempt
Build a framework (middleware)Abstract from the underlying hardware• i.e. classes for sensors, actuators,
and communicationUnique programming model • Can use every concept the
runtime provides Use the .NET CLR and API
controller
CLR
Robot API
Control application
Sensors and actuators
This wont always work!
Things that work fine on a PC don’t scale down• Thread switches on a smart-phone or PDA are costly• FischerTechnik controller doesn’t support threads at
allHardware not capable enough for a middleware• CPU, memory, battery, …Compact Framework: no serialization, no remoting, …• Even though PDAs are fairly powerful, CF has some
severe restrictionsNow think of even smaller devices• Embedded controllers, wrist-watches, sensor
networks, …
Bridging the Gap
Model-Driven ArchitecturePlatform Independent Model• High-level model of the application• Describes desired behaviourPlatform Specific Model• Implementation of an application for
a specific target platform (i.e. fischertechnik)Executable• The artifact that is eventually executed
on the robots controller
PIM
PSM
executable
model transformation
generation
Model-driven Development
Platform-independent model of the program(VRDK Language)
LEGO RCX
executable
FischerTechnik
executable
Smartphone
executable
Same programming modelfor different devices
transformation transformation
generationgeneration
Platform-specific realisation of the programm
Executable or interpreteron target platform
VRDK & MDA
Executable !!Platform IndependentModel
ModelTransformation
PlatformSpecificModels
Proc1 Proc2
•CF.NET•static scheduling•single threaded
•.NET•runtime scheduling•multi threaded
Proc1 Proc2
•RoboCode Simulator•multi threaded•heavy usage of event handlers
Other
Handler
C# & VS.NET Project
VRDK Architecture
VRDKEditor
VRDKCode Generation
Robots.NETAPI
VRDKInterpreter
uses
runs
uses
• Rapid Prototyping• Program can be launched directly from the editor
C# Code Generation
Application logic is executed on
the PC.
Application logic can be executed on:• PC• PDA• Robot Hardware
runs
Full Tool Chain
Code generation
Deploy and run
Deploy and run
the gentle shortcut
VRDK Editor VS.NET
target devices
Demo
Distribution and Communication
VRDK has parallelism and communication• Have multiple robots/devices to interact• First class conceptUse communication of underlying platform• i.e. .NET Sockets, LEGO Infrared, Indigo, …
future
PC
Robotics4.Net
Interacting with Humans
Considering affects and emotions as base components for designing interaction
Improving interaction in a novel social environment (humans + Computers + Robots)
How could robots facilitate the access to technology and provide supportive services
Social, verbal, affective
Communication
Understanding and Modelling Affects in
Social contexts
ComputingApplications
Interaction withComputers, Robots,
Humans
Sensing HumanResponse
Emotional Context-Aware application on
Mobile devices Recognizing humans and provide behavioural
Response Pattern
Computing Support
And Knowledge
The EmotiveHuman User
Human Social
Environment
Questions