1 / 53

Lecture 2: Details of Student Projects

Lecture 2: Details of Student Projects. Software Workshop: High-Quality Motion Planning for Robots (and Other Creatures). Barak Raveh , School of CS, Tel-Aviv University barak@post.tau.ac.il. Reminder: Course Web-Site.

kesia
Download Presentation

Lecture 2: Details of Student Projects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 2: Details of Student Projects Software Workshop:High-Quality Motion Planning for Robots (and Other Creatures) Barak Raveh, School of CS, Tel-Aviv University barak@post.tau.ac.il

  2. Reminder: Course Web-Site http://acg.cs.tau.ac.il/courses/workshop/spring-2010/high-quality-motion-planning-for-robots

  3. 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

  4. source ? target The Motion Planning Problem Planning the motion of a k-dimensional robot (or a moving object) among obstacles The world Workspace cluttered with obstacles Complexity: P-Space hard with respect to number of robot degrees of freedom (Reif, 79’) Robot configuration Defined by k degrees of freedom Motion Query From source configuration to target configuration

  5. Workspace A description of the (2D or 3D) real world

  6. Configuration Space ( Workspace) The space of parameters that define the robot location and orientation in the workspace

  7. Visualizing the Configuration Space free space Specific configuration Robot configuration parameter #2 forbidden space Robot configuration parameter #1 Based on a slide from http://ai.stanford.edu/~latombe/projects/prm-strategies.ppt

  8. Reminder: Deterministic Translation among 2D Polygons Workspace Configuration space • The obstacles are dilated (“inflated”) by the shape of the robot using a procedure called Minkowski Sum • The robot is reduced to a point

  9. Example with 10 DoFs is Much Harder(DoFs = Degrees of Freedom) Taken from Choset et al., Principles of Robot Motion, Chapter 7

  10. Some Examples for Problems with Many Degrees of Freedom • Articulated robots (humanoids, industrial robot arms) • Multiple robots • Molecules • Etc. Taken from Choset et al., Principles of Robot Motion, Chapter 7

  11. 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

  12. 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’)

  13. 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

  14. 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

  15. More Theory • Next Week

  16. 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

  17. Suggested Projects Bioinformatics: Project 5:Enzymes, motion planning and Normal Model Analysis Project 6: Undocking of flexible peptides from immune system receptors

  18. 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)

  19. 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

  20. 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.

  21. [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

  22. 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

  23. User Interface • All projects are required to have a friendly user interface • We will give you some tips in the last lecture

  24. 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.

  25. Example Project From Last Year “Non-Holonomic Motion Planner”

  26. 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

  27. 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)

  28. Path Quality: Some Analytical Solutions for Translation in 2D http://www.sfbtr8.uni-bremen.de/project/r3/HGVG/hierarchicalVGraphs.html 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

  29. Randomly Generated Motion Path

  30. 3 Randomly Generated Motion Paths:

  31. π1 π2 π3 2 1 1 1 2 1 1 1 1 1 1 1 1 1 1.2 1 1 1 1.5 1 1 1 Hybridizing Three Random Motion Paths

  32. 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

  33. 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)

  34. 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=m9oioAL4fxcmore 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

  35. 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

  36. Snakes are Articulated Robots: Rigid Links and Joints http://www.youtube.com/watch?v=GOSK4lVRTFw

  37. Rigid Links Connected with Joints

  38. Example: 2D Snake • Each rigid link is connected to the previous link by a linear transformation (rotation + translation)

  39. 3D Articulated Robot

  40. Your Challenge • Use the chain tree to “freeze” part of a snake at different steps of the motion planning

  41. 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

  42. 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

  43. Bioinformatics Projects Project 5:Enzymes, motion planning and Normal Model Analysis Project 6: Undocking of flexible peptides from immune system receptors

  44. Adapted from http://vertrees.org/ by Jason Vertrees 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.

  45. Obstacle 2 Obstacle 3 Obstacle 1 Motion Planning Techniques – From Robots to Molecules Given a robot with k degrees of freedom, in an environment with obstacles, find a collision free path from an initial state • Robotpeptide chain • Obstaclessteric clashes between atoms • Collision-free path a low-energy motion pathway, free of steric clashes DOFs vector

  46. Sampling Motion Paths in the Energy Landscape Folding Conformational Changes Boehr & Wright, Science 2008

  47. Goal: an Obstacle-Free (Clash-Free) Pathway Conformational space High energy barriers Cfeasible – plausibleconformations Cforbid – high energy conformations

  48. Conformational space Cfeasible = Energy < Threshold e.g., clash-free conformations Cforbid = Energy > Threshold e.g., conformations with steric clashes or conformations with poor solvation Feasible and Forbidden Space Cforbid Cfeasible

  49. 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

  50. Normal Mode Analysis: Proteins as a System of Springs Normal Mode Analysis can be used to reduce the dimensionality of Motion Planning

More Related