Upload
george-rubey
View
215
Download
1
Embed Size (px)
Citation preview
Lecture 2: Lecture 2: Details of Student ProjectsDetails of Student Projects
Software Workshop:High-Quality Motion Planning for Robots (and Other Creatures)
Barak Raveh, School of CS, Tel-Aviv University
Reminder: Course Web-Sitehttp://acg.cs.tau.ac.il/courses/workshop/spring-2010/high-quality-motion-planning-for-
robots
Today
• (Very) basic introduction to the PRM motion planning algorithm– more – next week
• Project details– We give only initial details today
• Choose by what sounds interesting to you
• After you choose, we will help you learn specific details for your own project
• You also have the option to suggest your own projects
The Motion Planning Problem
The world Workspace cluttered
with obstacles
Planning the motion of a k-dimensional robot (or a moving object) among obstacles
Robot configuration
Defined by k degrees of freedom
Motion QueryFrom source
configuration to target configuration
?
source
target
Complexity: P-Space hard with respect to number of robot degrees of freedom (Reif, 79’)
Configuration Space ( Workspace)
The space of parameters that define the robot location and orientation in the workspace
free space
forbidden space
Visualizing the Configuration Visualizing the Configuration SpaceSpace
Specific configuration
Based on a slide from http://ai.stanford.edu/~latombe/projects/prm-strategies.ppt
Robot configuration parameter #1
Ro
bo
t c
on
fig
ura
tio
n p
ara
me
ter
#2
Reminder: Deterministic Translation among 2D Polygons
•The obstacles are dilated (“inflated”) by the shape of the robot using a procedure called Minkowski Sum•The robot is reduced to a point
Workspace Configuration space
Example with 10 DoFs is Much Harder
(DoFs = Degrees of Freedom)
Taken from Choset et al., Principles of Robot Motion, Chapter 7
Some Examples for Problems with Many Degrees of Freedom
Taken from Choset et al., Principles of Robot Motion, Chapter 7
• Articulated robots (humanoids, industrial robot arms)• Multiple robots• Molecules• Etc.
NN
NN
C’
C’
C’
C’
O
O O
O
C
C
C
C
C
C C
C
Resi Resi+1 Resi+2 Resi+3
Sampling-based Approach
• Try to map the configuration space by (somehow) sampling different robot configurations
• Easy to implement (provided you have a good static collision detector)
• Extended the applicability of motion planning: animation, docking motions, virtual prototyping, more
Sampling-based “Roadmap” Algorithms for High-Dimensional
Motion Planning
•Probabilistic Roadmap (PRM, Kavraki et al., 96’)
•Expansive-Space Trees (EST, Hsu et al. 99’)
•Rapidly-exploring Random Trees (RRT, LaValle and Kuffner, 01’)
•Single-query, Bidirectional and Lazy collision checkes (SBL, Sànches and Latombe, 02’)
Basic PRM algorithm in a Nutshell(Probabilistic Road-Map)
Example in Two-Dimensions
• Randomly sample n valid robot configurations (“milestones”)
• Connect close-by configurations by dense sampling (“local-planning”)
•Discard invalid edges
Note:For simplicity, configuration space and workspace are identical, in this example
OOPSMP – Sampling-based Motion Planning Package in
C++• http://www.kavrakilab.org/OOPSMP/
• Implementation of many popular planning algorithms
• Local planners, distance functions, graph data structures, collision detection
• Built-in Plug-in to Google Sketch-up (User Interface)
• More details – in two weeks
Suggested Projects
OOPSMP Software Packages:
Project 1: High-quality motion planning and path hybridization
Project 2: From virtual to physical motion (Lego NXT)
Project 3: Using a smart hierarchy to move articulated robots
CGAL Project:
Project 4: High precision, high quality motion of multiple robots
Suggested Projects
Bioinformatics:
Project 5: Enzymes, motion planning and Normal Model Analysis
Project 6: Undocking of flexible peptides from immune system receptors
Project Milestones (I)
[I] March 17th, 2010:Submit (by mail) a short description of the selected project (title + one
or two paragraphs with the basic details)
[II] April 12th, 2010:Submit (by mail) a detailed draft for the project and the working plan (~3 pages document, details on course homepage)
Project Milestones (II)
[III] May 26th, 2010:• Testing the project basic infrastructure:
The students will be required to show that the basic technical infrastructure of the project works (e.g. tools or programming libraries that need to be installed, etc.).
• Presenting the project plan in class (this is the deadline for changing your plans).
• Submit corrected, final working plan
Project Milestones (III)
[IV] August 11th, 2009Basic prototype: At this point in time, we will want to see your initial development, in order to make sure you are working in the right direction. You will show us a basic prototype of the project. The prototype is a relatively small part of the project (not fully functional), but it should give a very good feeling of where you're heading.
[V] Final Project and Presentations Meeting
• By the end of the summer (September 9th, 2010) – Strict deadline – plan ahead.
• The final project should include:– User Interface– A fully functional code– Documentation
(code comments, user guide, developer guide)– Presentation– Your project will be tested against a set of problems
that you will design in advance
Team Work
• Two or three student
• Should be fun
• Balanced Work Partition– Everybody must be involved in the coding– Everybody must know the full details of the
project for the final submission– In extreme cases, we might give different
grades to different team member
User Interface
• All projects are required to have a friendly user interface
• We will give you some tips in the last lecture
Test Cases
• Each team will be responsible for creating (at least) 3 test cases for their project– Basic test: an easy test to demonstrate the
capabilities of your project– Medium test: a challenging case, that you
are still able to deal with– Hard test: a test that fails your project on
purpose, so we can learn about future directions.
Suggested Projects
OOPSMP Software Packages:
Project 1: High-quality motion planning and path hybridization
Project 2: From virtual to physical motion (Lego NXT)
Project 3: Using a smart hierarchy to move 3D snake robots
CGAL Project:
Project 4: High Precision, High Quality Motion of Multiple Robots
Project 1: High-quality motion planning and path hybridization
• The goal is to create a package of tools for constructing high quality motion paths, based on paths that OOPSMP currently generates.
• Requirements:– Computational Speed (be able to work on multiple robots in 3D)– Many options for path quality (not only length and clearance – be
creative)– Use / develop nice algorithms (we can help)
Path Quality: Some Analytical Solutions for Translation in 2D
Shortest path: the Visibility graph
High clearance: the Generalized-Voronoi
Diagram (GVD)
Mixed: the Visibility-Voronoi Diagram (Wein et al., 2007)
See also in: http://cse.stanford.edu/class/sophomore-college/projects-98/robotics/basicmotion.html
http://www.sfbtr8.uni-bremen.de/project/r3/HGVG/hierarchicalVGraphs.html
Project 2: From virtual to physical motion with Lego Mindstorms NXT robot
• Sampling-based algorithms produce virtual motion paths• It is not trivial to make a robot follow these paths• You will develop a package in OOPSMP for transforming
virtual paths to a realistic sequence of controls that will move a Lego NXT robot
Project 2: From virtual to physical motion with Lego Mindstorms NXT robot
• Requirements:– Computational speed– Accurate motion– Usage of robot sensors – Friendly User Interface
• Optional additions:– High-quality paths– Performing specific tasks (fetching a ball)
Select Examples of Lego Mindstorms NXT Robots
• קוביה הונגרית http://www.youtube.com/watch?v=3QOvEG27Gt4
• מכונית דו-מפרקיתhttp://www.youtube.com/watch?v=oXUtzuQNUks
• תנועה הולונומית http://www.youtube.com/watch?v=m9oioAL4fxc more details
• כדורגלhttp://www.youtube.com/watch?v=zrjNvU3ap8w
• טיפוס מדרגותhttp://www.youtube.com/watch?v=t_sxkDS_pno
• ערבוב חפיסת קלפיםhttp://www.youtube.com/watch?v=-2-otVNIYfo
• רובוט הולךhttp://www.youtube.com/watch?v=T6tAubwJLfI
• חיקוי הליכה של כלב טריירhttp://www.youtube.com/watch?v=CklvLnjANHM
• גיטרה חשמליתhttp://www.youtube.com/watch?v=a-gcrhmxcKY&feature=related
•
Project 3: Snake Robots with Smart Data Structures
• You will be required to create a package for motion-planning of 3D snake robots in OOPSMP
• You can rely on existing motion-planning algorithms in OOPSMP
• The main challenge: representing 3D snake robots in a smart, hierarchical manner
Example: 2D Snake
• Each rigid link is connected to the previous link by a linear transformation (rotation + translation)
Your Challenge
• Use the chain tree to “freeze” part of a snake at different steps of the motion planning
Suggested Projects
OOPSMP Software Packages:
Project 1: High-quality motion planning and path hybridization
Project 2: From virtual to physical motion (Lego NXT)
Project 3: Using a smart hierarchy to move articulated robots
CGAL Project:
Project 4: High Precision, High Quality Motion of Multiple Robots
Project 4: High-Precision, High-Quality Motion
• Coordination of multiple robots in polygonal environments
• Develop an algorithm that combines analytical and sampling-based methods in a clever way
Bioinformatics Projects
Project 5: Enzymes, motion planning and Normal Model Analysis
Project 6: Undocking of flexible peptides from immune system receptors
Protein Motion
• Protein motion is prevalent and often crucial for protein function
✘ Experimental methods that sample motion at high resolution are still under development (e.g. nanolabeling with gold particles; FRET, NMR spectroscopy, etc)
➤ Need for computational methods.
Adapted from http://vertrees.org/ by Jason VertreesAdapted from http://vertrees.org/ by Jason Vertrees
Motion Planning Techniques –
From Robots to MoleculesGiven a robot with k degrees of freedom, in an environment with obstacles, find a collision free path from an initial state Obstacle 1
Obstacle 2
Obstacle 3
•Robot peptide chain
•Obstacles steric clashes between atoms
•Collision-free path a low-energy motion pathway, free of steric clashes
DOFs vector
Sampling Motion Paths in the Energy Landscape
Folding
Conformational Changes
Boehr & Wright, Science 2008
High energy barriers
Goal: an Obstacle-Free (Clash-Free) Pathway
Conformational space
Cfeasible – plausible
conformations
Cforbid – high energy
conformations
Conformational space
Feasible and Forbidden Space
Cforbid = Energy > Threshold
e.g., conformations with steric clashes or conformations with poor solvation
Cfeasible = Energy < Threshold
e.g., clash-free conformations
CCfeasiblefeasible
CCforbidforbid
Project 5: Normal Mode Analysis, Motion Planning and Enzymes
• Typical Proteins – Over 200 degrees of freedom
• 200 dimensional configuration space!
• Example – Adenylate Kinase An enzyme that catalyzes the reaction2ADP AMP + ATP
http://www.molmovdb.org/cgi-bin/morph.cgi?ID=498099-12557
Normal Mode Analysis: Proteins as a System of Springs
Normal Mode Analysis can be used to reduce the dimensionality of Motion Planning
Project Requirements
• You will use Normal Mode Analysis together with motion planning, to simulate conformational changes of enzymes between active and inactive states
• You will use Rosetta PathRover – a tool we wrote for motion planning of molecules– Rosetta is a huge worldwide effort, see:
http://www.molmovdb.org/cgi-bin/morph.cgi?ID=498099-12557