cs 326a: motion planning jean-claude latombe ca: aditya mandayam

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

Post on 20-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

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

Plan MoveSense

ARL Robot

Goal

Plan MoveSense

LearnMotion library

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

Fundamental QuestionAre two given points connected by a path?

Valid region

Forbidden region

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

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

Is It Easy?

Tool: Configuration Space

Problems:• Geometric complexity• Space dimensionality

Continuous space

Discretization

Search

C-space

Sampling-based Criticality-based

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

Some Applications

Humanoid Robots

HRP-2, AIST, Japan

Lunar Vehicle (ATHLETE, NASA/JPL)

Climbing Robot

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

Dexterous Manipulation

Modular Reconfigurable Robots

Manipulation of Deformable Objects

Topologicallydefined goal

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)

Digital Characters

Animation of Crowds

Design for Manufacturing and Servicing

Design for Manufacturing and Servicing

Design for Manufacturing and Servicing

Assembly Sequence Planning

Cable Harness/ Pipe design

Map Building

Where to move next?

Navigation Through Virtual Environments

Virtual Angiography / Bronchoscopy /

Colonoscopy

Radiosurgical Planning

CyberKnife (Accuray)

Building Code Verification

9-inch turning radius24-inch turning radius

Egress Simulation

Primary escape route

Secondary escape route

Potential congesting areas

Transportation of A380 Fuselage through Small

Villages

Kineo

Study of Motion of Bio-Molecules

Inhibitor binding to HIV protease

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

General Framework

Continuous representation(configuration space and related spaces + constraints)

Discretization(probabilistic sampling, criticality-based decomposition)

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

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.

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

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.

CS326A is not a course in …

Differential Geometry and TopologyKinematics and DynamicsGeometric Modeling

… but it makes use of knowledge from all these areas

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

Programming Project• Navigate in virtual environment

• Simulate legged robot

• Inspection of structures

• Search and escape

Website and Schedule

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