This document outlines a plan to develop the first hardware and software platform for personal robotics. It proposes developing a standardized robot platform, along with an open-source robot operating system and modular software components over two years. Key aspects include developing challenge problems to drive the software development, establishing teams to work on different modules, and seeking funding and guidance from sponsors, a steering committee, and technical advisory board.
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Personal Robotics Program Fund Fundraising Deck from 2006
1. The Mission
Develop the first hardware and software platform for
personal robotics
Image Credit: Hanna-Barbera
2. Applications in Personal Robotics
Around the house
– Doing the dishes
– Tidying Up
– Laundry
– Cleaning
– Home Google
Service
– Starbucks
– Pick and pack
– Stocking grocery
stores
– Tracking inventory
– Item retrieval
– Searchable physical
file system
Aging and Disabled
Populations
– Carrying heavy
things
– Remembering
where things are
– Retrieving items
– Preparing food
– Cleaning
3. How to get there?
• Personal robotics needs a PC
14. ProblemsImplementation
• Language Processing
• Vision
• Manipulation
• Navigation
• Modeling Environments
• Interacting with People
• Systems Integration
Theory
• Knowledge Representation
• Learning
• Dealing with Uncertainty
• Reasoning
• Modeling
• Planning
• Reliability
Software Development Effort
15. Robot Operating System
• Enough functionality that it will save people
real time
• Enough flexibility that they can do whatever
they want with it
Plus the developer tools for system and data
visualization
22. Challenge Problems
• Obstacle avoidance, two-
handed manipulation,
object classification
• User interaction with
speech, navigation, object
recognition
• Tool usage, force control,
physical modeling, task
sequencing
• Tidy up a room after a party
picking up and throwing away trash;
loading dishwasher.
• Fetch a book from another room
in response to verbal request.
• Assemble a bookshelf using
multiple tools (screwdriver,
hammer, pliers, etc.)
24. Design and Manufacture 10 Robots
•End of Year 1 - Supply 10 copies of the robot to software development
effort
• Year 2 – Support hardware in use
Hardware Development Plan
LASTYEAR
Proof of Concept Phase
• Build first prototype of Hardware Platform
• Demonstrate performance and safety under tele-operation (remote
control)
NEXT2YEARS
25. Software Development Plan
LASTYEAR
Proof of Concept Phase
• Build first prototype of subset of functional modules
• Integrate modules to perform basic tasks (opening a door, picking up
objects)
NEXT2YEARS
Robot OS Development
• Create infrastructure and
required tools to support software
development
• Lay groundwork for larger
system of modules
Module Development
• Work in a team based approach to
develop modules and move toward
demonstration of challenge
problems
26. Program Budget
Total $4420K
Year 1 Year 2
Hardware Platform Development 780K 240K
Manufacture of 10 Robots 500K 0
Robot OS Development 700K 350K
Module Development 450K 930K
PIs and Admin 280K 200K
27. Program Steering Committee
• We are seeking individuals and companies
who can help guide our effort in much the
same way that a board and early investors
guide a startup company.
28. Technical Advisory Board
• Who
– Leaders in Robotics Research & Business
• Role
– Contribute both technical and operations
expertise to the software and hardware efforts.
29. Program Sponsors
• We are seeking to raise $4.4 Million from
individuals, companies and foundations to
support the hardware and software
development efforts over the next two years.
The Stanford Personal Robotics Program Mission:
Develop the first hardware and software platform for personal robotics
-
The sate of the control software is no better
-
In typical research project, before new research is attempted, before new ideas are tested or before applications are explored
a lot of time is wasted
Time is wasted
Building hardware
Writing support software
To put this in perspective.
This is like sitting down to write a software application and having to
first deign the computer
Then write the operating system
Then implement basic code libraries
and finallywrite the application you sat down to write in the first place
This is how we see current Personal Robotics efforts around the world.
We want to stop the current fragmented “build it from scratch” approach to robotics research
We want to create the development platform, and the low level code that can be shared across many research programs.
By doing this we want to enable people
to build on and share echother’s results
jumpstarting progress and eventually applications in Personal Robotics.
Your platform has to be safe & and robust
The arms wont hurt people
The arms wont hurt things
Robust
The robot wont break when an arm hits things
Taking that one step further – it wont break when you are debugging code and developing new applications.
If you can make a robot that is safe and robust in this way people can actually start developing Personal Robotics applications
- Instead of developing code in a simulator they can develop code in the real world.
- Second, simply put - the robot can be around humans!
You can’t get to real Personal Robotics applications if the robot can’t safely be around people.
The robot has to be both safe and robust in this way while still remaining capable
Safe verses capable has been a classic tradeoff in robot design
Traditionally Robots are either very strong, using huge motors and heavy structure
Or they are very light, safe, but practically they cant doooo anything
One key characteristic that makes robots safe is if they are back drivable
The essence of back drivable is if you run into a robot arm, the arm will comply with very little reaction force
For real world tasks we want both characteristics
We want back drivability so that it is safe in a constantly changing environment
And we want capablethe robot needs to be strong enough to actually do something useful
We have developed a novel actuator system that makes the system be both strong and safe
The novel actuator system that we are using enables us to use inexpensive motors and motor drivers which traditionally are some of the most expensive robot components
At low quantities our system costs 50K. At higher quantities there is a lot of room to reduce costs.
Successful personal robotic applications are going rely on many robotics disciplines.
The software component of our development effort focuses on creating the first robot operating system that will enables researchers in all of these disciplines to share and combine techniques on one platform
While this is an aggressive undertaking, we feel that it is important, and that its time has come.
The component technologies have made a lot of progress in recent years, and a unifying platform to combine these results is badly needed. We do not claim to have perfect solutions to all or even any of these problems, but the first step needs to be taken, and we are confident that we know what direction it should be taken in.
----------------
Computer Operating systems, programming languages, and databases have been improving for years.
Each of these technologies began, though, with basic
For this project to succeed people need to want to use this software and hardware platform for their research.
People will want to use this platform if the software allows researchers these two things:
- First - It has to have enough functionality that researchers will be able to more advanced research faster
- Second – It is flexible enough that they can do whatever they want with it
Our strategy for developing this first version of a robot operating system is specifically designed to achieve these two objectives.
A working robotics system is complicated
Computing resources – both on board and off board
Sensors and actuators
And especially many many software functions
All have to work together to approach tasks, but different tasks require different combinations of algorithms
The keys to enabling this are flexibility and simplicity in the interfaces between components, so that their interactions can be easily understood by developers who have only basic working knowledge of the research areas involved.
We are building a flexible system to bring these components together and make it easy for researchers to tackle the problems they are interested in without being dragged down by the parts of the system that are not related to their research. The system is designed to support research ranging from specific sensor-processing algorithms to high-level planning.
To demonstrate how this module-based approach fits the needs of different researchers, let’s go through a couple of examples.
Our first example is a researcher who works on grasp planning – how to position your hand to pick up an object.
His work within the system would consist of improving or replacing existing grasp planning modules in the system to demonstrate his new algorithms.
Beyond providing him with a platform on which to work that provides him with sensors, actuators, and basic control, he would also have the benefit of working implementations of other researchers’ grasp planning algorithms to compare against.
Because his work would be embedded within the larger context of the full system, he would be able to demonstrate performance in real-world situations, and analyze how the grasp planner interacted with the other components of the system.
Finally, he would be able to share his results more easily with other researchers, including researchers who work in different but related fields.
Our second example is a researcher interested in overall system architecture.
This major unsolved area of research asks how to combine modules to get useful behavior.
Because this platform brings together functionality of many different types into one system,
it enables higher level research on reasoning, modeling, and planning on real-world systems.
These questions would be impossible to answer effectively without a platform that provided this range of capabilities.
Our third researcher is less technical
This researcher wants to investigate how people perceive robots,
how much personal space they like to maintain in their presence,
and how the behavior of the robot affects this response.
With this platform, they can have a working, real physical embodiement
with navigation, speech interface, and all necessary systems integrated.
No low-level programming would be required to perform actions that would allow this research to progress.
What we’re talking about on the software side is really big ideas.
Basically picking up the integrated approach to AI that has been largely abandoned by the research community since Shakey 30 years ago.
It is time to do this, because all the necessary components are coming together, but it requires discipline and focus since it is such a potentially enormous problem space.
Our approach to this is to use a task-focused approach to identify the areas and techniques that are important to integrate or to improve upon in order to make the system useful to many people as quickly as possible.
Challenge problems are useful long before we can solve them autonomously.
Human in the loop systems and teleoperation are easy to configure with the system. We can begin with tele-operated demonstrations of all of these tasks, and gradually develop tools to reduce the human’s role, until eventually we approach full autonomy.
The challenge problems provide a scope, though, and give us target levels of performance across multiple fields that will enable a broad range of important tasks
We have focused on the home environment here, but these capabilities also enable commercial and light industrial applications equally well.
Once we can solve these problems well, it starts to make sense to talk about having a robot in every home, robots in every office, and robots in every warehouse.
The development of modules will be done in four teams of 4-5 people each. Basic implementations of the modules needed to provide the functionality outlined in the challenge problems will be developed, and then new algorithms will be integrated to improve performance and capabilities.
A higher-level team will work on techniques for combining modules together into complete systems, and on generalizing techniques such as machine learning that are used across multiple modules into flexible and shared toolkits. They will help oversee the choice of modules and interfaces, and help keep the individual groups focused on the work that is most critical to the overall system.
The Software production team is something that we are putting a lot of emphasis on that it traditionally left out of academic projects but we see it as absolutely necessary for when we want to share the code base with others. Bringing in professional software developers who have experience managing large groups of developers is critical to ensure that the development process itself proceeds effectively, and that the code produced will be maintainable, flexible, and robust in the future.
OK – The two year plan for the hardware effort in the Stanford Personal Robotics Program
We have just wrapped up the proof of concept phase for the hardware platform
The next step
- work with Function Engineering, a design firm specializing in design for manufacturing of complex mechanical systems- to go from our initial prototype to a production ready design
- Then we will produce 10 copies of that design for use in the software effort that Eric is going to cover next.
- We will spend the final year supporting and evaluating the first version of the robot in use as an actual development platform
That is our plan for the Hardware development effort – Eric is now going to cover the software development effort
OK – The two year plan for the hardware effort in the Stanford Personal Robotics Program
We have just wrapped up the proof of concept phase for the hardware platform
The next step
- work with Function Engineering, a design firm specializing in design for manufacturing of complex mechanical systems- to go from our initial prototype to a production ready design
- Then we will produce 10 copies of that design for use in the software effort that Eric is going to cover next.
- We will spend the final year supporting and evaluating the first version of the robot in use as an actual development platform
That is our plan for the Hardware development effort – Eric is now going to cover the software development effort