54
MIT's entry into the DARPA Robotics Challenge Russ Tedrake groups.csail.mit.edu/locomotion © Boston Dynamics. All rights reserved. This content is excluded from our Creative Commons license. For more information, see https://ocw.mit.edu/help/faq-fair-use/. 1

MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

MIT's entry into the DARPA Robotics

Challenge

Russ Tedrake

groups.csail.mit.edu/locomotion

© Boston Dynamics. All rights reserved. This content isexcluded from our Creative Commons license. For moreinformation, see https://ocw.mit.edu/help/faq-fair-use/.

1

Page 2: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

2

Page 3: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

DARPA Robotics "Grand" Challenges

2004/5 - DARPA Grand Challenge 2007 - DARPA Urban Challenge Self-driving car projects at every major auto manufacturer, Google, Uber, Apple, ...

2012 - time for a new challenge? Courtesy of Daniel Suarez. Used with permission.

3

Page 4: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

© DARPA. All rights reserved. This content is excluded from our Creative Commons license. For more information, see https://ocw.mit.edu/help/faq-fair-use/.

4

Page 5: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

The DARPA Robotics Challenge

Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance) state-of-the-art in mobile manipulation

Incredible new hardware from industry (esp. Boston Dynamics)

Research: Relatively sophisticated algorithms on relatively modest hardware Mashup!

5

Page 6: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

A twist: Graded Autonomy

Allow a human operator, but with a degraded network connection

CompleteTeleoperation Autonomy Our approach:

Human provide high level knowledge / goals (using "affordances") Seeds (nearly) autonomous algorithms for perception, planning, control

6

Page 7: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Our technical approach

Almost everything the robot does is formulated as a mathematical optimization

7

Page 8: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Inverse Kinematics

qdesired |2

end effector (rich constraint spec)

balance constraints (center of

Joint positions:

subject to

joint limits collision avoidance "gaze constraints" feet stay put

mass) ...

q

|q −min q

8

Page 9: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Big robot, little car

9

Page 10: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research NuggetEfficient kinematic/dynamic motion planning

for humanoids

10

Page 11: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Dynamic trajectory planning

11

Page 12: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Dynamic trajectory planning

Is there a way to generalize the insights from ASIMO/ZMP walking? Key insight from ZMP: Plan feasible contact forces / center of mass first, then fill in the details New algorithm uses:

3D center of mass + centroidal momentum. No actuator limits => all dynamic constraints in 6 dimensions. Complementarity formulations for (frictional) collisions/impact.

Custom optimization-ready dynamics engine (analytical gradients, expose sparsity, ...)

12

Page 13: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

00:00 -00:34

13

Page 14: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research NuggetCombinatorial Footstep Planning

14

Page 15: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Footstep planning

Trajectory optimization very efficient for local solutions. But there is still a combinatorial problem in walking:

Left foot or right foot? Cinderblock A or block B?

Developed new methods to explicitly expose combinatorial structure

15

Page 16: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

16

Page 17: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Super-fast approximate convex segmentation

Iteration between (large-scale) quadratic program and (relatively compact) semi-definite program (SDP) Scales to high dimensions, millions of obstacles

17

Page 18: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

18

Page 19: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research NuggetEfficient optimization for multi-contact

feedback control

19

Page 20: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Quadratic Program for Whole-Body Force Control

Explicit solution for least-squares regulation of center of pressure trajectory Control-Lyapunov function stability constraint + whole-body objectives One-step model-predictive control is a (sparse) quadratic program Custom active-set solver to achieve > 1 kHz

20

Page 21: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Basic Competency:

Walking and Balance

21

Page 22: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

22

Page 23: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Walking Performance

For (mostly) flat foot, near constant center of mass height walking...Planners work well (almost instantly) on simple to moderate terrain.

User interface let's human review / adjust footsteps.01:58 -00:11

23

Page 24: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Walking Performance (cont)

More dynamic plans take ~1 minute to compute

...and don't always succeed (local minima, ...)

24

Page 25: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Walking Performance (cont)

Balance control worked extremely well...

25

Page 26: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

26

Page 27: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Walking Performance (cont)

Balance control worked extremely well... ... except for the one time it didn't

27

Page 28: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

A Limitation Exposed

Fundamentally based on planning (single trajectories) + "local" feedback. When things are going (nearly) according to plan, very robust But tailbone hit the seat and feet came off the ground...

No contact sensor in the butt Dynamics model very wrong State estimator very confused Controller is hosed!

Still susceptible to big deviations from the nominal plan

A few ways to address it All fundamentally about robustness (More on this in a minute...)

28

Page 29: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Ironically

For flat terrain, we did work out good heuristics...

29

Page 30: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Another form of robustness

30

Page 31: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Basic Competency:Manipulation

31

Page 32: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Manipulation Performance

Only basic manipulation was required

32

Page 33: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Manipulation Performance

Only basic manipulation was required

33

Page 34: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Manipulation Performance (cont)

Again, planning worked very well

34

Page 35: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Manipulation Performance (cont)

Again, planning worked very well

35

Page 36: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Manipulation Performance (cont)

But grasping was open-loop (no feedback)

Touch sensors / hand cameras were fragile and difficult to use

36

Page 37: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research NuggetGrasp Optimization using

Convex Optimization

37

Page 38: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Grasp optimization

Optimize forces and contact positions for robustness Bilinear Matrix Inequalities (solved as SDP w/ rank-minimization) Include kinematic and dynamic constraints (solves inverse kinematics, too)

38

Page 39: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Grasp optimization

Find pose to maximize wrench disturbance given torque limits

39

Page 40: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research NuggetPerception algorithms aided by

minimal user interaction

40

Page 41: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

41

Page 42: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

42

Page 43: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

00:00 -01:27

43

Page 44: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

00:00 -01:47

44

Page 45: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

02:44 -04:57

45

Page 46: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Why were the robots often standing still?

Not waiting for human. Not planning time. Mostly waiting for lidar.

46

Page 47: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Research Nugget(Continuous) walking with dense stereo

and drift-free state estimation)

47

Page 48: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Continuous walking with dense stereo

00:00 -03:01

48

Page 49: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

The tip of the iceberg

Networking... Systems... Build servers, unit tests, ... Logistics... Politics...

49

Page 50: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

Reflections

We gave it everything, but didn't win the competition Huge success overall!

Robots could move faster with only small changes (mostly perception) Walking was sufficient; can make it much better Basic but capable manipulation Robustness (e.g., fear of falling) a constant dominating concern

Incredible software tools for future research

I think the most important problem is... Achieving robustness despite model errors and changing contact conditions Shouldn't be afraid to make contact (anywhere on the body) Lots of immediate applications (e.g. in manipulation)

50

Page 51: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

51

Image removed due to copyright restrictions. Please see the video.

Page 52: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

For more information

Papers available at: http://groups.csail.mit.edu/locomotion/

Software all open on github (shortcut: http://drake.mit.edu)

Online course (edX) this fall: http://tiny.cc/mitx-underactuated

Get involved with Robotics@MIT

52

Page 53: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

00:00 -02:58

53

Page 54: MIT's Entry into the DARPA Robotics Challenge · The DARPA Robotics Challenge Official challenge: Disaster response (Fukushima Daiichi nuclear disaster) My take: Evaluate (and advance)

MIT OpenCourseWarehttps://ocw.mit.edu

Resource: Brains, Minds and Machines Summer CourseTomaso Poggio and Gabriel Kreiman

The following may not correspond to a particular course on MIT OpenCourseWare, but has beenprovided by the author as an individual learning resource.

For information about citing these materials or our Terms of Use, visit: https://ocw.mit.edu/terms.