Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 2: Details of Student Projects Software Workshop: High-Quality Motion Planning for Robots (and Other Creatures) Barak Raveh, School of CS, Tel-Aviv.

Similar presentations


Presentation on theme: "Lecture 2: Details of Student Projects Software Workshop: High-Quality Motion Planning for Robots (and Other Creatures) Barak Raveh, School of CS, Tel-Aviv."— 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

2 Reminder: Course Web-Site

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 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 Query From source configuration to target configuration ? source target Complexity: P-Space hard with respect to number of robot degrees of freedom (Reif, 79’)

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 free space forbidden space Visualizing the Configuration Space Specific configuration Based on a slide from Robot configuration parameter #1 Robot configuration parameter #2

8 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

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 Taken from Choset et al., Principles of Robot Motion, Chapter 7 Articulated robots (humanoids, industrial robot arms) Multiple robots Molecules Etc.

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++ 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 17 th, 2010: Submit (by mail) a short description of the selected project (title + one or two paragraphs with the basic details) [II] April 12 th, 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 26 th, 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 11 th, 2009 Basic 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 9 th, 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 Shortest path: the Visibility graph High clearance: the Generalized-Voronoi Diagram (GVD) Mixed: the Visibility-Voronoi Diagram (Wein et al., 2007) See also in: bremen.de/project/r3/HGVG/hierarchicalVGraphs.html

29 Randomly Generated Motion Path

30 3 Randomly Generated Motion Paths:

31 Hybridizing Three Random Motion Paths π1π1 π2π2 π3π

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 קוביה הונגרית מכונית דו-מפרקית תנועה הולונומית more detailshttp://www.youtube.com/watch?v=m9oioAL4fxcmore details כדורגל טיפוס מדרגות ערבוב חפיסת קלפים רובוט הולך חיקוי הליכה של כלב טרייר גיטרה חשמלית

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

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 CGAL Example: Boolean Set Operations

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

45 Protein Motion Protein motion is prevalent and often crucial for protein function ✘E✘E xperimental methods that sample motion at high resolution are still under development (e.g. nanolabeling with gold particles; FRET, NMR spectroscopy, etc) ➤N➤N eed for computational methods. Adapted from by Jason Vertrees

46 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 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

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

48 High energy barriers Goal: an Obstacle-Free (Clash-Free) Pathway Conformational space C feasible – plausible conformations C forbid – high energy conformations

49 Conformational space Feasible and Forbidden Space C forbid = Energy > Threshold e.g., conformations with steric clashes or conformations with poor solvation C feasible = Energy < Threshold e.g., clash-free conformations C feasible C forbid

50 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 reaction 2ADP  AMP + ATP

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

52 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:

53 Project 6: Undocking a Peptide from MHC Immune System Receptors

54 MHC molecule


Download ppt "Lecture 2: Details of Student Projects Software Workshop: High-Quality Motion Planning for Robots (and Other Creatures) Barak Raveh, School of CS, Tel-Aviv."

Similar presentations


Ads by Google