robots in human environments
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.TRANSCRIPT
![Page 1: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/1.jpg)
Robots in Human EnvironmentsPresented by:Alexander BraendleAndreas Heil
Date12 Dec 2005
![Page 2: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/2.jpg)
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.
![Page 3: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/3.jpg)
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
![Page 4: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/4.jpg)
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?
![Page 5: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/5.jpg)
Robots!
Already many commercial robots available• Aibo• Asimo• Hoap• fischertechnik• Lego• …How to program them?• Different tools• Different programing paradigm• Different programing languages
![Page 6: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/6.jpg)
Robots, too?
Software• MS Agent• Internet Explorer• Media Player
Additional Hardware• Smartphone
![Page 7: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/7.jpg)
Goal
One language for all robots?
One tool to rule them all?
![Page 8: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/8.jpg)
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
![Page 9: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/9.jpg)
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
![Page 10: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/10.jpg)
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, …
![Page 11: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/11.jpg)
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
![Page 12: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/12.jpg)
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
![Page 13: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/13.jpg)
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
![Page 14: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/14.jpg)
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
![Page 15: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/15.jpg)
Full Tool Chain
Code generation
Deploy and run
Deploy and run
the gentle shortcut
VRDK Editor VS.NET
target devices
![Page 16: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/16.jpg)
Demo
![Page 17: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/17.jpg)
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
![Page 18: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/18.jpg)
Robotics4.Net
![Page 19: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/19.jpg)
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
![Page 20: Robots in Human Environments](https://reader036.vdocuments.us/reader036/viewer/2022081514/555a0aedd8b42a7d498b4619/html5/thumbnails/20.jpg)
Questions