View
232
Download
3
Tags:
Embed Size (px)
Citation preview
22/06/2003http://dotnet.di.unipi.it/R2D2/
R2d2 project Università degli
Studi di PisaHow to build a wheeled PC
22/06/2003http://dotnet.di.unipi.it/R2D2/
The goal• Realization of a platform for building interface agents
embodied in a robot• The robot provides a physical body and a set of core
services to support the development of highly autonomous interface agents situated in both cyberspace and real world
• The platform will provide the following base services to support the software implementing the interface agent:– Basic motion abilities– Collision avoidance software– Vision software for face recognition– Speech and gesturing recognition– Positioning and navigation aided by video input– Network perception
22/06/2003http://dotnet.di.unipi.it/R2D2/
• The robot will be controlled by a network of CE and XP
• Hardware involved– Microprocessors: Xscale, P3– UHF network– GSM– Ethernet– Bluetooth– Irda– WiFi
R2 architecture
Internal networkShort range service discovery
Internet Connection
22/06/2003http://dotnet.di.unipi.it/R2D2/
Senses of a droID
Services
IRDA
BT
Internet
“Real World” “Service World”
AI
KB
Arm
Sensors
Vision Speech
Navigation
CE
.N
ET
XP
Em
bedded
22/06/2003http://dotnet.di.unipi.it/R2D2/
Net is the force
• R2 relies on Internet to get information and provide a single interface to multiple services (search, question answering, messaging…)
• Internal network is used to distribute the computation needed to control the robot
• If needed other computers can be used to get higher computational power
• The computing structure will be GRID-like so that computation would be easily redistributable
22/06/2003http://dotnet.di.unipi.it/R2D2/
User interface
• Voice• Speech• Messenger• E-mail• Phone (GSM, SMS)• Whatever can be plugged!!! (but keyboard)
22/06/2003http://dotnet.di.unipi.it/R2D2/
Challenges
• The robot will be fairly standard (not challenging from an engineering standpoint)
• Base abstractions should be robust and provide a suitable API to support high level reasoning (like the ones provided by the RoboCup soccer-server)
• On top of the basic layer we will combine several approaches for planning and react to the environment
• The robot should accumulate experience and knowledge in order to provide an effective interface to the user: machine learning techniques
22/06/2003http://dotnet.di.unipi.it/R2D2/
Code reflection
• R2 will be able to percept services by analyzing .NET assemblies
• [a]C# is a C# extension, part of the CodeBricks initiative (http://codebricks.sscli.net/)
• [a]C# allows custom attributes on code blocks, and an API to retrieve the annotations and manipulate the bytecode at high level
• Instead of relying on interfaces we will interpret code annotations to discover semantics of services in terms of basic annotations
22/06/2003http://dotnet.di.unipi.it/R2D2/
Example[Gripper, DOF(5), IK]class Arm { void Grab(int x, int y, int z) { [Open]{} OpenDevice(); int speed = CalculateSpeed(); //… [Grab(x, y, z)] { [Move(x, y, z)] { // IK solver and move } [CloseGripper] { // Code for gripper } } // Other code here [Close]{} }
22/06/2003http://dotnet.di.unipi.it/R2D2/
Knowledge into code
• We are interested in representing part of the knowledge of the robot into code
• We believe that flattening data into code would lead into a scalable structure of KB (as LISP has ever done)
• Reflection.Emit is required but not sufficient: easier code manipulations approach will be used (for instance CodeBricks)
• Putting experience into the code itself implies that the program will evolve over time!
22/06/2003http://dotnet.di.unipi.it/R2D2/
Component structureKnowledge Base
Body Map
WiFi Agent
MotionAgent
Vision Agent
Sensors
Internal perception
Network perception
Arm Agent
22/06/2003http://dotnet.di.unipi.it/R2D2/
People• Project leader: Antonio Cisternino• Team:
– Diego Colombo– Andrea Esuli– Daniele Picciaia– Luca Pizziniaco
22/06/2003http://dotnet.di.unipi.it/R2D2/
Conclusions
• R2D2 will provide a platform to support research in embodied agents
• The robot isn’t specialized for any activity: is a proactive case for a PC
• The platform will allow to experiment new services and service discovery systems combining information of the real world with the Net
• Look for progress at http://dotnet.di.unipi.it/R2D2/
22/06/2003http://dotnet.di.unipi.it/R2D2/
Questions?
WHY R2D2?
For Fun!
It is simple to build
It is not specialized
for particular activities