designing effective step-by-step assembly instructions maneesh agrawala, doantam phan, julie heiser,...

41
Designing Effective Step-By- Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara Tversky Microsoft Research and Stanford University

Post on 22-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Designing Effective Step-By-Step Assembly Instructions

Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker,

Jeff Klingner, Pat Hanrahan and Barbara Tversky

Microsoft Research and Stanford University

Page 2: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara
Page 3: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

1 2 3

4 5 6

Page 4: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Designing Instructions

Planning Choose sequence of assembly

operations Robotics / AI / Mechanical Engineering

[Wolter 89], [de Mello 91], [Wilson 92], [Romney 95]

Presentation Visually convey assembly operations Visualization / Computer Graphics

[Seligmann 91], [Rist 94], [Butz 97], [Strothotte 98]

We jointly optimize plan and presentation

Page 5: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Geometric Analysis [Romney 95]

A

B A blocked by B

B blocked by A

both parts free to move

A B

B A

CA

B

A C

B

A C

B A C

B

Input Parts Blocking Graph

Page 6: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Geometric Assembly Planning

Valid Valid Invalid

Page 7: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Many Geometrically Valid Sequences

Valid Valid ValidValidValid

How do we choose the best sequence?

Page 8: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Our Approach

Identify cognitive design principles How people conceive of 3D assemblies

How people comprehend visual instructions

Encode principles as constraints within automated design system

Page 9: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Identifying Design Principles

Experiment 1: Assemble and draw instructions

Experiment 2: Rate effectiveness

Experiment 3: Validate effectiveness

Page 10: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Sequence the Assembly Operations

Single exploded view diagramStep-by-step diagrams

Step-by-step instructions preferable

Page 11: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Illustrate the Assembly Operations

Action diagrams preferable

Structural diagrams

Action diagrams

Page 12: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Ensure Visibility of Parts

Essential Parts being attached Context (show earlier parts)

Less important All parts in a symmetric group Repetitive operations

Page 13: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Automated Instruction Design

Step-by-Step

Action diagrams

Good visibility

TV stand instructions generated by our system

Page 14: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Input

Geometry Parts in assembled positions

Orientations Default viewpoint / orientation Preferred orientation for each part

Groupings fasteners, significant parts, symmetry,

similar-actions Ordering constraints

Force one part to attach before another

requiredoptional

Page 15: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

TV Stand Input

Geometry: Parts in assembled positions

Orientations: Default viewpoint / orientation

Groupings: fasteners, significant parts, symmetry

requiredoptional

Page 16: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Reorientation

Sequence Parts

All parts

Best subset of parts

Leftover parts

Sequence of assembly steps

Search

Action Diagrams

Structural Diagrams

Page 17: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Reorientation

Sequence Parts

All parts

Best subset of parts

Leftover parts

Sequence of assembly steps

Search

Page 18: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

All parts

...…

Part subsets

All parts

Best subset of parts

Leftover parts

Search

Reorientation

Sequence Parts

Sequence of assembly steps

Page 19: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

All parts

Best subset of parts

Leftover parts

Search

Reorientation

Sequence Parts

Sequence of assembly steps

Interference

Attachment

Ordering

Grouping

Visibility

SearchChoose part subset

Page 20: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Computing Visibility

Area(P) = # red pixels

Vis(P,Q) = Area(P,Q) / Area(P)

Area(P,Q) = # red pixelsArea of top not occluded by sides Area of top alone

% pixels that remain visible

Page 21: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Visibility Constraint

Current parts R min ( Vis(r, R-r) )

Check that each part in current subset is visible

Attached parts A Vis(A, R)

Check that context is visible

Unattached parts U min ( Vis(u, R) )

Check that future parts will be visible

r R

u U

Page 22: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Lego Car

Input model

Page 23: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Bookcase

Input model

Page 24: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Add significant parts one by one

Visibility

Distance to viewer

Add all remaining parts

Omit repetitive operations

Skip if 2 similar-action parts already added

Sequence Parts

Best subset of parts

All parts

Leftover parts

Search

Reorientation

Sequence of assembly steps

Page 25: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Bookcase – After Sequencing

Page 26: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Bookcase – Omitting Repetition

Page 27: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Set preferred orientation for significant parts

If visibility of current parts is low try alternate oblique views

Sequence Parts

Best subset of parts

All parts

Leftover parts

Search

Reorientation

Sequence of assembly steps

Page 28: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Bookcase – With Reorientation

Page 29: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Reorientation

Sequence Parts

All parts

Best subset of parts

Leftover parts

Sequence of assembly steps

Search

Page 30: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Action Diagrams

Choose Direction

Build Stacks

Place Guidelines

Reorientation

Sequence Parts

All parts

Best subset of parts

Leftover parts

Sequence of assembly steps

Search

Sequence of assembly diagrams

Page 31: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Building Stacks

Stack: set of parts that Share separation direction Lie on a stabbing line Are in sequential contact

Base

1st stack part

2nd stack part

3rd stack part

4th stack part

Page 32: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Base

1st stack part

Base

1st stack part

Building Stacks

Stack: set of parts that Share separation direction Lie on a stabbing line Are in sequential contact

Base

1st stack part

Page 33: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Placing Guidelines

Expand stacks Form lines between stack parts

Page 34: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Placing Guidelines

Expand stacks Form lines between stack parts

Page 35: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Bookcase

9 parts Planning: 48s

Page 36: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Table

13 parts Planning: 28s

Page 37: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Test Object

25 parts Planning: 53s

Page 38: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Exploded View

Page 39: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Future Work

Experiment 4: Evaluation Time/errors as they use our instructions

Assemblies with more subparts Take advantage of hierarchy Apply system recursively

Physical and functional constraints Part size and mass Gravitational stability

Page 40: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Summary

Cognitive design principles Step-by-step Action diagrams Good visibility

Automated instruction design system

Integrate planning and presentation

Page 41: Designing Effective Step-By-Step Assembly Instructions Maneesh Agrawala, Doantam Phan, Julie Heiser, John Haymaker, Jeff Klingner, Pat Hanrahan and Barbara

Acknowledgements

Boris Yamrom

Christina Vincent

ONR grants N000140210534, N000140110717 and N000140010649