Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech...

196
Computational Fabrication Wojciech Matusik, Adriana Schulz

Transcript of Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech...

Page 1: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Fabrication

Wojciech Matusik, Adriana Schulz

Page 2: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Permission to make digital or hard copies of part or all of this work

for personal or classroom use is granted without fee provided that

copies are not made or distributed for profit or commercial

advantage and that copies bear this notice and the full citation on

the first page.

Copyrights for third-party components of this work must be

honored. For all other uses, contact the Owner/Author.

Copyright is held by the owner/author(s).

SIGGRAPH '19 Courses, July 28 - August 01, 2019, Los Angeles, CA,

USA

ACM 978-1-4503-6307-5/19/07.

10.1145/3305366.3328065

Page 3: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Course Schedule

9:00 am – 9:10 am Introduction

9:10 am – 9:25 am Hardware Review

9:25 am – 9:50 am From Design to Machine Code

9:50 am – 10:15 am Design Space Representations

10:15 am – 10:25 am Performance-Driven Design

10:25 am – 10:40 am Break

10:40 am – 10:55 am Performance Space Representation

10:55 am – 11:15 am Inverse Methods

11:15 am – 11:35 am Multi-objective Inverse Methods

11:35 am – 12:00 pm Advanced Performance-Driven Design

12:00 pm – 12:15 pm Course Review

Page 4: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Performance Space Representations

toughness

en

erg

y

toughness

Machine Code PerformanceHardware Design

Page 5: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Recap: Performance-Driven Design

Design Space Performance Space

Page 6: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

From Design Space to Performance Space

Design Space Performance Space

• Numerical simulation maps points from design

space to performance space

Page 7: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Bounds on Performance

Design Space Performance Space

Page 8: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example I: Color Gamut

• The subset of colors which

can be accurately

represented within a given

color space or by a certain

output device.

Page 9: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Hardware Capabilities Limit Gamut

• Gamut can be directly tied to capabilities of a given

hardware

ℝ𝐷

ℝ𝑃

𝒳

𝐹(𝒳)

Design

SpacePerformance

Space

ColorE.g., how inks are

placed on a sheet

Page 10: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example II: Mechanical Properties in Printing Microstructures

A unit microstructure cell

Base homogenous

materials

Heterogeneous

material

1.E-04

1.E-03

1.E-02

1.E-01

1.E+00

10 100 1000

Density (kg/m3)

Yo

un

g’s

Mo

du

lus

(GP

a)

?

What physical properties can be

achieved with microstructures?

Page 11: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Mapping Microstructures to Material Properties

Stretch

Shear

Young’s Modulus

Po

isso

n’s

ra

tio

Microstructure

Page 12: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Mechanical Properties Gamut

Relative Stiffness

Po

isso

n’s

Ra

tio

• Space of bulk material

properties that can be

achieved with all material

microstructures of a given

size

Page 13: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Boundary

– Mesh/contour

• Volume

– Grids (e.g., voxels), adaptive grids, points, distance fields

How to Represent Gamut?

ℝ𝑃

𝐹(𝒳)

Page 14: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Why Volumetric Gamut Representations?

ℝ𝑃

𝐹(𝒳)

Page 15: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Easy to check whether points are inside/outside

• Each cell can store points mapping back to the design

space

Why Volumetric Gamut Representations?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 16: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

How to Represent Gamut in Higher Dimensions?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 17: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• These representations are useful but have not been

explored much

• Possible representations: points, classifiers

How to Represent Gamut in Higher Dimensions?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 18: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• When design space is low-dimensional

How to Compute Gamut?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 19: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• When design space is low-dimensional we can explicitly

compute the mapping for all points in design space

• Example: 2D printers/color

How to Compute Gamut?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 20: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• When design space is high dimensional

How to Compute Gamut?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 21: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• When design space is high dimensional we can use genetic

algorithms to expand gamut in all directions

How to Compute Gamut?

ℝ𝑃

𝐹(𝒳)

ℝ𝐷

Design

SpacePerformance

Space

Page 22: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

Algorithm: Exploring Microstructure Gamut

Page 23: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

• Compute level set

Algorithm: Exploring Microstructure Gamut

Page 24: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

• Compute level set

• Find random seeds near the level

set boundary

Algorithm: Exploring Microstructure Gamut

Page 25: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

• Compute level set

• Find random seeds near the level

set boundary

• Find gradient towards outside of

gamut

Algorithm: Exploring Microstructure Gamut

Page 26: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

• Compute level set

• Find random seeds near the level

set boundary

• Find gradient towards outside of

gamut

• Discrete and continuous sampling

Algorithm: Exploring Microstructure Gamut

Page 27: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Microstructure samples

• Compute level set

• Find random seeds near the level

set boundary

• Find gradient towards outside of

gamut

• Discrete and continuous sampling

• Update level set

Algorithm: Exploring Microstructure Gamut

Page 28: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example: Gamut for Microstructures with Cubic Symmetry

𝜙 𝑝 = 0Young’s

𝐏𝐨𝐢𝐬𝐬𝐨𝐧

𝐒𝐡𝐞𝐚𝐫

Page 29: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Course Schedule

9:00 am – 9:10 am Introduction

9:10 am – 9:25 am Hardware Review

9:25 am – 9:50 am From Design to Machine Code

9:50 am – 10:15 am Design Space Representations

10:15 am – 10:25 am Performance-Driven Design

10:25 am – 10:40 am Break

10:40 am – 10:55 am Performance Space Representation

10:55 am – 11:15 am Inverse Methods

11:15 am – 11:35 am Multi-objective Inverse Methods

11:35 am – 12:00 pm Advanced Performance-Driven Design

12:00 pm – 12:15 pm Course Review

Page 30: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse Methods

toughness

en

erg

y

toughness

Machine Code PerformanceHardware Design

Page 31: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Bounds on Performance

Design Space Performance Space

Page 32: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Design Space Performance Space

• Inverse problem is much more difficult

Page 33: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Design Space Performance Space

• Inverse problem is much more difficult

Page 34: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Design Space Performance Space

?

• Inverse problem is much more difficult

Page 35: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Functional Design/ Generative Design

f

Goal

Translation

Printable

Object

Page 36: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Goal

Simulate

Compare to

Goal

Good?

Stop

Initial Guess

Simulation

Page 37: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Goal

Update Design

VariablesSimulate

Compare to

Goal

Good?

Stop

Initial Guess

Simulation

Page 38: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse: From Performance Space to Design Space

Update Design

VariablesSimulate

Compare to

Goal

Good?

Stop

Initial GuessHow do we update the design

variables?

✓converge to a good

solutions quickly

✓not get stuck in local

minima

Depends on the Design Space!

Page 39: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Each design can be mathematically represented as a point in ℝ𝐷

Design Space

Design Space

ℝ𝐷

𝒳

Page 40: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Each design can be mathematically represented as a point in ℝ𝐷, where 𝐷 = number of voxels in a build volume

Design Space

Design Space for Additive Manufacturing

ℝ𝐷

𝒳

Page 41: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Each design can be mathematically represented as a point in ℝ𝐷

number of dimensions

parametric models voxels

Reducing Design Space

Design Space

ℝ𝐷

Page 42: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example

Design target

Inverse computation

fabrication

Page 43: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example

Design target

Inverse computation

Rest shape

fabrication

fabrication

Page 44: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

An Inverse Elastic Shape Design

Reduced Parameters

• Mesh Vertices

• Mesh deformation “knobs”

• e.g cages

𝒙

Page 45: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

An Inverse Elastic Shape Design

Reduced Parameters Simulate

simulated result

𝒙 𝑓(𝒙)

Page 46: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

An Inverse Elastic Shape Design

Reduced Parameters Simulate

Compare to Goal

simulated result goal

?

=

𝒙 𝑓(𝒙)

|𝑓 𝒙 − 𝒈|

Page 47: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

An Inverse Elastic Shape Design

Reduced Parameters Simulate

Compare to GoalOptimization

ss

e.g., Newton’s Method

𝒙 𝑓(𝒙)

|𝑓 𝒙 − 𝒈|min𝒙

|𝑓 𝒙 − 𝒈|

Page 48: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Inverse Methods: Topology Optimization

Page 49: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

Page 50: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

Page 51: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

• Objectives:

– Structure should be as stiff as possible (i.e. the compliance should be

minimal) when a load is applied

– The total amount of material should be equal to 𝑉𝑚𝑎𝑥

Initial layout Output:

Voxels with material assignment

(no material, full)

Large discrete space: 0,1 𝑁

Page 52: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

• Design variables

Material property 𝐂 = 𝜌𝐂0

r ∈ 0,1

the method is called SIMP,

power-law or density

approach.

[Bendsøe, 1989]

Large discrete space: 0,1 𝑁

𝐂 = 𝜌𝑝𝐂0

0 ≤ 𝜌 ≤ 1

Page 53: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Boundary Conditions

• Default boundary conditions: MMB Beam

Full domain

Load

Page 54: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Boundary Conditions

• Default boundary conditions: MMB Beam

Half design domain

Load

Page 55: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Boundary Conditions

• Default boundary conditions: MMB Beam

Half design domain

Load

Structure is supported

horizontally

Page 56: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Boundary Conditions

• Default boundary conditions: MMB Beam

Half design domain

Load

Structure is

symmetric

Page 57: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Boundary Conditions

• How can we measure compliance?

Load

𝐊𝐔 = 𝐅Compute static equilibrium:

Measure Energy of the System: 𝐔𝑇𝐊𝐔

Page 58: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to

Page 59: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to

Densities

Page 60: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to

Valid range for densities

Page 61: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to

Energy of the system

Page 62: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to

Static equilibrium

Page 63: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization: Mathematical Formulation

• Minimum compliance problem

min𝐱

𝑐 𝐱 = 𝐔𝑇𝐊𝐔 =

𝑒=1

𝑁

𝑥𝑒𝑝𝐮𝑒

𝑇𝐤0𝐮𝑒

𝑉(𝐱)

𝑉0= 𝑓

𝐊𝐔 = 𝐅

𝟎 < 𝐱min ≤ 𝐱 ≤ 𝟏

subject to Desired volume fraction

Page 64: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Result

• Based on the paper:

“A 99 line topology optimization code in Matlab” by Ole Sigmund,

Structural and Multidisciplinary Optimization 21(2), 2001, pp. 120-127

• Code can be find here:

– http://www.topopt.mek.dtu.dk/apps-and-software

Page 65: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Challenges

Software: SIMP Topology

Optimization

• Up to millions of elements

• Difficult to handle multiple

materials

Hardware: Object-1000 Plus

• Up to 39.3 x 31.4 x 19.6 in.

• 600dpi (~40 microns)

• 5 trillion voxels

Page 66: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

FEM SolveDensity Update

Page 67: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Source: Liu et al 2018

Page 68: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Zoom-in view

Source: Liu et al 2018

Page 69: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Course Schedule

9:00 am – 9:10 am Introduction

9:10 am – 9:25 am Hardware Review

9:25 am – 9:50 am From Design to Machine Code

9:50 am – 10:15 am Design Space Representations

10:15 am – 10:25 am Performance Driven Design

10:25 am – 10:40 am Break

10:40 am – 10:55 am Performance Space Representation

10:55 am – 11:15 am Inverse Methods

11:15 am – 11:35 am Multi-objective Inverse Methods

11:35 am – 12:00 pm Advanced Performance-Driven Design

12:00 pm – 12:15 pm Course Review

Page 70: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multiple Performance Objectives

Performance metric:

stability

Performance metric:

weight

Performance metric:

flexibility

Page 71: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization

min 𝑓𝑖 𝑥 , 𝑖 = 1,… , 𝑑 𝑥 ∈ ℝ𝐷

Subject to 𝑔 𝑥 ≥, ℎ 𝑥 = 0

𝐹 𝑥 = [𝑓1 𝑥 ,… . 𝑓𝑑(𝑥)]

Design Space

𝐹

Performance Space

ℝ𝑑ℝ𝐷

Page 72: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization

min 𝑓𝑖 𝑥 , 𝑖 = 1,… , 𝑑

Subject to 𝑔 𝑥 ≥, ℎ 𝑥 = 0

𝐹 𝑥 = [𝑓1 𝑥 ,… . 𝑓𝑑(𝑑)]

We know how to do this:

Page 73: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization

min 𝑓𝑖 𝑥 , 𝑖 = 1,… , 𝑑

Subject to 𝑔 𝑥 ≥, ℎ 𝑥 = 0

𝐹 𝑥 = [𝑓1 𝑥 ,… . 𝑓𝑑(𝑑)]

We know how to do this:

Solution: 𝑓 𝑥 = σ𝑖𝑤𝑖𝑓𝑖(𝑥)

Page 74: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization

min 𝑓𝑖 𝑥 , 𝑖 = 1,… , 𝑑

Subject to 𝑔 𝑥 ≥, ℎ 𝑥 = 0

𝐹 𝑥 = [𝑓1 𝑥 ,… . 𝑓𝑑(𝑑)]

We know how to do this:

Solution: 𝑓 𝑥 = σ𝑖𝑤𝑖𝑓𝑖(𝑥)

How do you pick the weights?

Page 75: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Do the Weights Mater?

Example:

𝑓1 𝑥 = 2𝑥 − 5

𝑓2 𝑥 = 𝑥 + 3

0 ≤ 𝑥 ≤ 1

𝑓 𝑥 = 𝑤1𝑓1 𝑥 + 𝑤2𝑓2(𝑥)

Page 76: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Do the Weights Mater?

Example:

𝑓1 𝑥 = 2𝑥 − 5

𝑓2 𝑥 = 𝑥 + 3

0 ≤ 𝑥 ≤ 1

𝑓 𝑥 = 𝑤1𝑓1 𝑥 + 𝑤2𝑓2(𝑥)

No matter what weights you pick

arg min 𝑓 𝑥 = 0

Page 77: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

When Objectives are Conflicting

Design Space

ℝ𝐷

𝐹

𝐷 ≫ 𝑑

Performance Space

weight

deformation

ℝ𝑑

Page 78: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Experiment

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

(A) (B) (C)

Page 79: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Experiment

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

(A) (B) (C)

7 carrots

3 candies

(D)

5 carrots

7 candies

(E)

4 carrots

9 candies

(F)

Page 80: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Definition: Dominance

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

(A) (B) (C)

7 carrots

3 candies

(D)

5 carrots

7 candies

(E)

4 carrots

9 candies

(F)

Page 81: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Definition: Dominance

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

(A) (B) (C)

7 carrots

3 candies

(D)

5 carrots

7 candies

(E)

4 carrots

9 candies

(F)

Page 82: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Pareto Optimality

A solution 𝑥1 is said to dominate the other solution 𝑥2, if

both the following conditions are true:

1. The solution 𝑥1 is no worse than 𝑥2 in all objectives.

2. The solution 𝑥1 is strictly better than 𝑥2 in at least one

objective.

A point is Pareto optimal if it in not dominated by any

point: called non-dominated point

Page 83: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Let’s Plot this

carrots

candies

(B)

(C)

(F)

(D

)

(E)(A)

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

7 carrots

3 candies

5 carrots

7 candies

4 carrots

9 candies

(A) (B) (C) (D) (E) (F)

Page 84: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Pareto Front

carrots

candies

(B)

(C)

(F)

(D

)

(E)(A)

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

7 carrots

3 candies

5 carrots

7 candies

3 carrots

9 candies

(A) (B) (C) (D) (E) (F)

Page 85: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

For Minimization

Pareto Front

𝑓1(𝑥)

𝑓2(𝑥)

Page 86: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Space of Optimal Solutions

ℝ𝐷ℝ𝑃

𝒳

𝐹(𝒳)

Design Space Performance Space

Pareto Front

Page 87: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Space of Optimal Solutions

ℝ𝐷ℝ𝑃

𝒳

Pareto Front

𝐹(𝒳)

Design Space Performance Space

Page 88: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

The Geometry of the Front

Solution: 𝑓 𝑥 = σ𝑖𝑤𝑖𝑓𝑖(𝑥)

Not a straight line!

Page 89: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

The Front Can Have Gaps

Page 90: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

The Front Can Have Non-Convex Regions

Page 91: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Pareto Front Discovery

Main Challenge:

• Converge to optimal solutions

• Diverse set that describes the full front

Design Space Performance Space

ℝ𝐷 Pareto FrontPareto Set ℝ𝑑

Page 92: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Problem: Each Single Objective Optimization is not SIMPLE!

Move many points in parallel towards the front at the same

time?

Source: Deb et al 2002

Page 93: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

Page 94: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

selection

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

Page 95: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

Page 96: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

Page 97: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

selection

Page 98: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

3rd Generation

Page 99: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

3rd Generation

Page 100: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Evolutionary Algorithms

Pareto Front

𝑓1(𝑥)

𝑓2(𝑥)1st Generation

2nd Generation

3rd Generation

Page 101: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Elitist Non-dominated Sorting GA or NSGA-II

Source: Deb et al 2002

Page 102: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space

Finding the Full (Continuous) Front

Performance Space

ℝ𝐷 Pareto FrontPareto Set ℝ𝑑

𝑓1

𝑓2Local expansion

Page 103: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space

Set of Manifolds

Performance Space

ℝ𝐷 Pareto FrontPareto Set ℝ𝑑

Affine Subspaces(Bounded, 𝑑 − 1dimensional)

Manifolds(Bounded, 𝑑 − 1dimensional)

Page 104: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Example

Schulz et al 2018

Page 105: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Course Schedule

9:00 am – 9:10 am Introduction

9:10 am – 9:25 am Hardware Review

9:25 am – 9:50 am From Design to Machine Code

9:50 am – 10:15 am Design Space Representations

10:15 am – 10:25 am Performance Driven Design

10:25 am – 10:40 am Break

10:40 am – 10:55 am Performance Space Representation

10:55 am – 11:15 am Inverse Methods

11:15 am – 11:35 am Multi-objective Inverse Methods

11:35 am – 12:00 pm Advanced Performance-Driven Design

12:00 pm – 12:15 pm Course Review

Page 106: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

toughness

en

erg

y

toughness

Machine Code PerformanceHardware Design

Page 107: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 108: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 109: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Interactive Garment Design

Source: Umetani et al 2011

Page 110: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space Exploration

ℝ𝐷ℝ𝑃

Design Space Performance Space

Page 111: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space Exploration

ℝ𝐷ℝ𝑃

Design Space Performance Space

Page 112: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space Exploration

ℝ𝐷ℝ𝑃

Design Space Performance Space

small change fast update?

Page 113: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Linear Sensitivity Analysis

• What does this derivative tells us about our surface ?

¶¶

Source: Umetani et al 2011

Page 114: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Sensitive

response ¶¶

Equilibrium

R=0

3D cloth shape

2D cloth pattern

Linear Sensitivity Analysis

Linear Sensitivity Analysis

Source: Umetani et al 2011

Page 115: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Sensitivity Modes

Horizontal

Vertical

Sensitivity Mode

Source: Umetani et al 2011

Page 116: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Result: Interactive Garment Design

Source: Umetani et al 2011

Page 117: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 118: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Performance-Driven Design in CAD Systems

exposed parameters

parameter updates

performance

evaluation

CAD model

Page 119: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Precomputation and Interpolation

Design

Space

precomputed data output

exposed

parameters

CAD model

Design

Space

ℝ𝐷

𝒳

Page 120: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Stress Distribution

Results

Page 121: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Results

Page 122: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

InstantCAD

Design

Space

precomputed data output

exposed

parameters

CAD model

Page 123: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 124: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Fast Simulation for Control

Source: Li et al 2019

Page 125: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Replacing Simulation with Machine Learning

Source: Li et al 2019

Page 126: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 127: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Design of Robots with Ground Locomotion

Fast Gait Slower Gait Geometry Change

Page 128: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Design of Robots with Ground Locomotion

Metrics

Trajectory

Page 129: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Real Time Feedback

Page 130: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space Exploration

Page 131: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Optimization

Page 132: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Assembly

Page 133: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Physical Robots Created

Source: Schulz et al 2017

Page 134: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 135: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Design by Composition

10X

Source: Schulz et al 2014

Page 136: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design and Fabrication by Example

Page 137: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Dataset

Page 138: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Dataset

Ref# 1789A25

$5.69

Ref# 1057A51

$25.61

Ref# 90198A105

$7.38/100

Items Catalog

Ref# 90198A105

12”X12”: $7.38

12”X24”: $13:54

24”x24”: $24.62

Page 139: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Snapping

• Constraints:

– Data driven: similar

connections

• Optimization:

– user interaction

Page 140: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Adding Physical Connectors

Snapped ConfigurationWorking Model Connected Configuration

Page 141: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Searching for Connections

Snapped configuration Linked Elements

Page 142: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Searching for Connections

Dataset Working Model

Page 143: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Searching for Connections

Dataset Working Model

Page 144: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Physical Connectors: An Example

Extracted Directly From Data!

Page 145: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Designing a Go-Kart

Source: Schulz et al 2014

Page 146: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 147: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Machine Knitting

Source: Ministry of Supply

Page 148: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Solution: Knit Graph Representation

Source: Narayanan et al 2018

Graph Properties:

Page 149: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

From Geometry to Knitting Instructions

Source: Narayanan et al 2018

Page 150: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

From Geometry to Knitting Instructions

Source: Narayanan et al 2018

Page 151: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Results

Source: Narayanan et al 2018

Page 152: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 153: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Color Reproduction via Multi-Layer Printing

Source: Shi et al 2018

Page 154: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Requires more than

tens of thousands paired training data

Layout

(11-D vector)

Spectrum

(31-D vector)Neural Networks

Bidirectional Layout–Spectrum Mapping

Source: Shi et al 2018

Page 155: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

⟨ , ⟩Layout Spectrum

Contoning Dataset

1mm

A Calibration Patch(101 patches in total)

Samples reduced from 0.8 billion to 21k

Source: Shi et al 2018

Page 156: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Physical Reproductions

Source: Shi et al 2018

Page 157: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Comparison with Color Contoning

OriginalOurs Color Contoning

[Babaei et al. 2017]

Source: Shi et al 2018

Page 158: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advanced Performance-Driven Design

• Performance Evaluation Speed-Up

– Sensitivity Analysis

– Precomputation + Interpolation

– Replace Simulation with ML

• Design space exploration and Optimization

– Expert Systems

– Data-Driven Search

– Incorporate Hardware Constraints

• Simulation to Reality Gap

– Data-Driven Models

– Learning Models

Page 159: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Application: Hybrid Copter Design

Hybrid UAVs Fixed-wing

Plane

Multicopter

Page 160: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Advantages of Hybrid Copters

Copter mode Plane mode

✔ Stability

✔ Flexibility

✔ High speed

✔ Energy efficiency

Page 161: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Interactive Hybrid-Copter Design

Page 162: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Interactive Hybrid-Copter Design

Page 163: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Traditional Controller Design

Copter

mode

controlle

r

Plane

mode

controlle

r

Transition

mode:

pitch

controller

Tail-sitter controller

design

Quad-plane controller

designCopter

mode

controlle

r

Plane

mode

controlle

r

Transition

mode:

front rotor

controller

Page 164: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Our Approach: NN Controller

☺ general

Page 165: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Reinforcement Learning

Page 166: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Reinforcement Learning

Page 167: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Real Flight Tests

Page 168: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Our Approach: NN Controller

Integral

Block

☺ general reality-gap

Page 169: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Real Flight Tests

Page 170: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Course Schedule

9:00 am – 9:10 am Introduction

9:10 am – 9:25 am Hardware Review

9:25 am – 9:50 am From Design to Machine Code

9:50 am – 10:20 am Design Space Representations

10:20 am – 10:25 am Performance-Driven Design

10:25 am – 10:40 am Break

10:40 am – 10:55 am Performance Space Representation

10:55 am – 11:15 am Inverse Methods

11:15 am – 11:35 am Multi-objective Inverse Methods

11:35 am – 12:00 pm Advanced Performance-Driven Design

12:00 pm – 12:15 pm Course Review

Page 171: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design Stack

toughness

en

erg

y

Machine Code

Hardware Design Performance

Page 172: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design Stack

toughness

en

erg

y

Machine Code

Hardware Design Performance

Page 173: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Additive Manufacturing Processes

• Thermoplastic Extrusion

– Fused deposition modeling (FDM)

• UV Curable Resins/thermosets

– Stereolithography (SLA) & DLP Printing

– Photopolymer Inkjet Printing

• Powders

– Selective laser sintering (SLS)

– Binder jetting/3D Printing

• Sheets

– Laminated object manufacturing (LOM)

Page 174: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design and Fabrication Pipeline

toughness

en

erg

y

toughness

Machine Code PerformanceHardware Design

Page 175: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

3D Printing Software Pipeline

Orientation and Positioning

Support Structures

Slicing

Path Planning

Machine Instructions

Input Model

Page 176: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Slicing

• For a discrete z value, compute an intersection of a plane with a

model

Page 177: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design Stack

toughness

en

erg

y

toughness

Machine Code PerformanceHardware Design

Page 178: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

• Each design can be mathematically represented as a point in

ℝ𝐷

Design Space

Design Space

ℝ𝐷

𝒳number of dimensions

reduced space voxels

Page 179: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Parametric Design and CAD

parameters

Parametric

Design

Page 180: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Procedural Modeling

Source: Converting 3D Furniture Models to Fabricable Parts and Connectors, Lau et al., Siggraph 2011

Page 181: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Deformation Methods

Page 182: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design Stack

toughness

en

erg

y

Machine Code PerformanceHardware Design

Page 183: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Driven By Performance

Design Space Performance Space

Page 184: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Simulation

• Mechanical

– dynamic

– static

• Acoustic

• Thermal

• Electromagnetic

• etc.

Page 185: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Performance Space Representations: Gamut

ℝ𝐷ℝ𝑃

𝒳

𝐹(𝒳)

Design Space Performance Space

𝐹(𝒳) = Gamut

Page 186: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Design Space

Inverse: From Performance Space to Design Space

ℝ𝐷 ℝ𝑃

Performance Space

toughness

en

erg

y

?

• Inverse problem is much more difficult

Page 187: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

From Performance Space to Design Space

Update Design

VariablesSimulate

Compare to Goal

Good?

Stop

Initial Guess

Page 188: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Optimization in Reduced Space

Design target

Inverse computation

Rest shape

fabrication

fabrication

Page 189: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Topology Optimization

base material

Initial layout

Load

Boundary conditions

Optimization

Goals

Structure that

meets the goals

Page 190: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization: Pareto Front

carrots

candies

(B)

(C)

(F)

(D)

(E)(A)

3 carrots

8 candies

6 carrots

6 candies

6 carrots

4 candies

7 carrots

3 candies

5 carrots

7 candies

3 carrots

9 candies

(A) (B) (C) (D) (E) (F)

Page 191: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Multi-Objective Optimization: Pareto Front

ℝ𝐷ℝ𝑃

𝒳

Pareto Front

𝐹(𝒳)

Design Space Performance Space

Pareto Set

Page 192: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Pareto Front

Page 193: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Speeding up Simulation

Page 194: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Expert Systems for Computational Design

Page 195: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Data-driven Systems for Computational Design

Dataset FabricationInput Composition Tool

Page 196: Computational Fabrication - University of Washingtonadriana/CompFab/course_Part2.pdfWojciech Matusik, Adriana Schulz. Permission to make digital or hard copies of part or all of this

Computational Design Stack

toughness

en

erg

y

Machine Code PerformanceHardware Design