55
CS 326A: Motion Planning Jean-Claude Latombe CA: Aditya Mandayam

CS 326A: Motion Planning

  • Upload
    duff

  • View
    31

  • Download
    0

Embed Size (px)

DESCRIPTION

CS 326A: Motion Planning. Jean-Claude Latombe CA: Aditya Mandayam. Motion planning is the ability for an agent to compute its own motions in order to achieve certain goals. All autonomous robots and digital actors should eventually have this ability. Piano Mover’s Problem. Sense. Plan. - PowerPoint PPT Presentation

Citation preview

Page 1: CS 326A: Motion Planning

CS 326A: Motion Planning

Jean-Claude Latombe

CA: Aditya Mandayam

Page 2: CS 326A: Motion Planning

Motion planning is the ability for an agent to compute its own motions in order to achieve certain goals. All autonomous

robots and digital actors should eventually have this ability

Page 3: CS 326A: Motion Planning

Piano Mover’s Problem

Page 4: CS 326A: Motion Planning
Page 5: CS 326A: Motion Planning
Page 6: CS 326A: Motion Planning
Page 7: CS 326A: Motion Planning
Page 8: CS 326A: Motion Planning

Plan MoveSense

Page 9: CS 326A: Motion Planning

ARL Robot

Goal

Page 10: CS 326A: Motion Planning
Page 11: CS 326A: Motion Planning

Plan MoveSense

LearnMotion library

Page 12: CS 326A: Motion Planning

Goal of Motion Planning

• Compute motion strategies, e.g.:– geometric paths – time-parameterized trajectories– sequence of sensor-based motion commands

• To achieve high-level goals, e.g.:– go to A without colliding with obstacles– assemble product P– build map of environment E– find object O

Page 13: CS 326A: Motion Planning

Fundamental QuestionAre two given points connected by a path?

Valid region

Forbidden region

Page 14: CS 326A: Motion Planning

Fundamental QuestionAre two given points connected by a path?

Valid region

Forbidden region

E.g.:▪Collision with obstacle▪Lack of visibility of an object▪Lack of stability

Page 15: CS 326A: Motion Planning

Basic Problem Statement:

Compute a collision-free path for a rigid or articulated object among static obstacles

Inputs:•Geometry of moving object and obstacles•Kinematics of moving object (degrees of freedom)•Initial and goal configurations (placements)

Output:Continuous sequence of collision-free robot configurations connecting the initial and goal configurations

Page 16: CS 326A: Motion Planning

Is It Easy?

Page 17: CS 326A: Motion Planning

Tool: Configuration Space

Problems:• Geometric complexity• Space dimensionality

Page 18: CS 326A: Motion Planning

Continuous space

Discretization

Search

C-space

Sampling-based Criticality-based

Page 19: CS 326A: Motion Planning

Extensions of Basic Problem

• Moving obstacles• Multiple robots• Movable objects• Assembly planning• Goal is to acquire

information by sensing– Model building– Object finding/tracking– Inspection

• Nonholonomic constraints

• Dynamic constraints• Stability constraints

• Optimal planning• Uncertainty in model,

control and sensing• Exploiting task

mechanics (sensorless motions, under-actualted systems)

• Physical models and deformable objects

• Integration of planning and control

• Integration with higher-level planning

Page 20: CS 326A: Motion Planning

Some Applications

Page 21: CS 326A: Motion Planning

Humanoid Robots

HRP-2, AIST, Japan

Page 22: CS 326A: Motion Planning

Lunar Vehicle (ATHLETE, NASA/JPL)

Page 23: CS 326A: Motion Planning

Climbing Robot

http://www.youtube.com/watch?v=biSx-aKN690

Page 24: CS 326A: Motion Planning

Dexterous Manipulation

Page 25: CS 326A: Motion Planning

Modular Reconfigurable Robots

Page 26: CS 326A: Motion Planning
Page 27: CS 326A: Motion Planning

Manipulation of Deformable Objects

Topologicallydefined goal

Page 28: CS 326A: Motion Planning

Digital Characters

A Bug’s Life (Pixar/Disney) Toy Story (Pixar/Disney)

Tomb Raider 3 (Eidos Interactive) Final Fantasy VIII (SquareOne)The Legend of Zelda (Nintendo)

Antz (Dreamworks)

Page 29: CS 326A: Motion Planning

Digital Characters

Page 30: CS 326A: Motion Planning

Animation of Crowds

Page 31: CS 326A: Motion Planning
Page 32: CS 326A: Motion Planning

Design for Manufacturing and Servicing

Page 33: CS 326A: Motion Planning

Design for Manufacturing and Servicing

Page 34: CS 326A: Motion Planning

Design for Manufacturing and Servicing

Page 35: CS 326A: Motion Planning

Assembly Sequence Planning

Page 36: CS 326A: Motion Planning
Page 37: CS 326A: Motion Planning

Cable Harness/ Pipe design

Page 38: CS 326A: Motion Planning

Map Building

Where to move next?

Page 39: CS 326A: Motion Planning

Navigation Through Virtual Environments

Page 40: CS 326A: Motion Planning

Virtual Angiography / Bronchoscopy /

Colonoscopy

Page 41: CS 326A: Motion Planning

Radiosurgical Planning

CyberKnife (Accuray)

Page 42: CS 326A: Motion Planning

Building Code Verification

9-inch turning radius24-inch turning radius

Page 43: CS 326A: Motion Planning

Egress Simulation

Primary escape route

Secondary escape route

Potential congesting areas

Page 45: CS 326A: Motion Planning

Transportation of A380 Fuselage through Small

Villages

Kineo

Page 46: CS 326A: Motion Planning

Study of Motion of Bio-Molecules

Inhibitor binding to HIV protease

Page 47: CS 326A: Motion Planning

Goals of CS326A

Present a coherent framework for motion planning problems

Emphasis of “practical” algorithms with some guarantees of performance over “theoretical” or purely “heuristic” algorithms

Page 48: CS 326A: Motion Planning

General Framework

Continuous representation(configuration space and related spaces + constraints)

Discretization(probabilistic sampling, criticality-based decomposition)

Graph searching(blind, best-first, A*)

Page 49: CS 326A: Motion Planning

Practical Algorithms (1/2)

A complete motion planner always returns a solution plan when one exists and indicates that no such plan exists otherwise.

Most motion planning problems are hard, meaning that complete planners take exponential time in # of degrees of freedom, objects, etc.

Page 50: CS 326A: Motion Planning

Practical Algorithms (2/2)

Theoretical algorithms strive for completeness and minimal worst-case complexity. Difficult to implement and not robust.

Heuristic algorithms strive for efficiency in commonly encountered situations. Usually no performance guarantee.

Weaker completeness Simplifying assumptions Exponential algorithms that work in practice

Page 51: CS 326A: Motion Planning

Prerequisites for CS326A

Ability and willingness to complete a significant programming project with graphic interface.

Basic knowledge and taste for geometry and algorithms.

Interest in devoting reasonable time each week in reading papers.

Page 52: CS 326A: Motion Planning

CS326A is not a course in …

Differential Geometry and TopologyKinematics and DynamicsGeometric Modeling

… but it makes use of knowledge from all these areas

Page 53: CS 326A: Motion Planning

Work to Do

A. Attend every classB. Prepare/give two presentations with

ppt slides (20 minutes each)C. For each class read the two papers

listed as “required reading” in advance

D. Complete the programming projectE. Complete two homework

assignments

Page 54: CS 326A: Motion Planning

Programming Project• Navigate in virtual environment

• Simulate legged robot

• Inspection of structures

• Search and escape

Page 55: CS 326A: Motion Planning

Website and Schedule

ai.stanford.edu/~latombe/cs326/2009/index.htm