Declarative Design

Post on 16-Oct-2021

13 views 0 download

Transcript of Declarative Design

Declarative Design

Jonathan Bachrach

EECS UC Berkeley

October 13, 2015

This Time 1

introduce declarative design – what not how?seedlings

News 2

lab 5 due thursdaytwo more weeks of lecturethen project proposals

Low Chair by Martin Ohlson 3

Fine Chair by Olle Gustafsson 4

Barcelona Chair 5

Metal Chair 1930 6

Bamboo Chair by Brave Space Designs 7

Design Problem as Optimization 8

each chair takes a huge effort to design and fabricateneed to quickly explore design spaceexplore as much as possible to ensure best designsomehow specify requirements

What is a Chair? 9

Chair Definition from dictionary.com 10

Elephant Degrees of Freedom by Von Neumann 11

With four parameters I can fit an elephant, and with five I can make himwiggle his trunk – Von Neumann

Chair Degrees of Freedom 12

Chair Sketch One 13

Chair Sketch Two 14

Breathing by uyingdesign.com 15

Hanging Chair by Giovanni Travasa 16

Supported Hanging Chair by Yahki Rattan 17

Bar Chair by Pierre Paulin 18

Pole Chair by Nicola Trudgen 19

Chair Sketch Three 20

Chair Sketch Four? 21

Flat Chair by Sarah Fisher Paculdo 22

Folding Chair by Brain Stream Design Studio 23

Accordian Chair by Chishen Chiu 24

Lightweight Chair by Mark Hagen 25

Storage Chair by Fishbol Furniture 26

Beautiful Chair by Michael Bihain 27

How Do We Express Definition? 28

know one when we see one ...obviously if articulating what we like is helpfulbut want to find design ...

need more computational expression of goodnessneed to be able to measure (un)desireable propertiesneed to be able to combine measures

Optimization 29

explore design spacefind best design point(s) whileminimizing computation

Find Chair Voxels 30

remove non chair voxels

Generative Challenges 31

completenessminimalitycoverageefficiency

Tractable Generators 32

Evolutionary – by exampleGenerative GrammarsProcedural Generators

Evolutionary 33

Chair Grammar? 34

Generative Grammar 35

Design Space Exploration 36

generallygenerate candidatescollect best based on goodness

want toavoid generating bad candidates

Chair Goodness Function 37

supportstrength to weightsizeetc

translate into measurable entity

Holy Crank Example 38

want speed holes in crankvariedbalancedgiven densityavoid screw holes

random speed holes is too slowhow to write tractable generator?

Holy Crank Outputs 39

Uniform Point in Circle 40

Holy Crank Solution 41

divide crank into pie slicessample according to densitymaintain free listonly add hole if it improves balance

Holy Crank Demo 42

gear -step :density 0.5 :num-speed-holes 100

Furniture Layout 43

placement of furniture optimizedmoves – translation and rotationscost functionsimulated annealing

Furniture Layout Cost Function 44

functional criteriaclearancecirculationconversation

visual criteriabalancealignmentemphasis

merrell + schkufza + li + agrawala + koltun

Individual Terms 45

merrell + schkufza + li + agrawala + koltun

Simulated Annealing Algorithm 46

T <- initial temperature

L <- initial layout

C <- cost( layout )

until (equilibrium reached)

S,M <- choose stencil,move

L’ <- L + S,M // move and relayout

C’ <- cost(L’) // update cost

if ((C’ - C) is acceptable)

L <- L’

T <- schedule(T)

Furniture Moves 47

translationrotations

Robot Design is Absurd 48

domo by meka robotics

Factoring Design 49

skeletal specificationtransformationssmaller search space!reduced degrees of freedom

2d -> 3d – Extrusions 50

draw in 2d – extrude into 3deasier and more robust than 3d modeling

1d -> 3d – Generalized Cylinders 51

ballard + brown

Abstracting Function 52

build system out of abstract functionssay what it does but not howplace holders for efficient implementations

Abstract Joints 53

bullet physics manual

Rigging 54

Tubbrit

Furniture Components 55

casterspulls

Multiple Advantages 56

reduced search spacekeeps design higher level and intuitiveseparates concernsencourages modularitypowerful lower dimensional generator

Future Lectures 57

generative designdesign space exploration

Declarative Design Recap 58

what not how is powerfulspecification languagetractable generation of candidatescomputational goodness (and aesthetics)searching good designs

Fabricate Less – Simulate More 59

sketch chair

Readings For Today 60

Make It Stand: Balancing Shapes for 3d Fabrication by Prevost,Whiting, Lefebvre, Sorkine-HornungInteractive Furniture Layout Using Interior Design Guidelines byMake It Home: Automatic Optimization of Furniture Arrangement byYu, Yeung, Tang, Tezopoulos, Chan, OsherHalide: Decoupling Algorithms from Schedules for EasyOptimization of Image Processing Pipelines by Ragan-Kelley,Barnes, Adams, Paris, Durand, AmarasingheSpec2Fab: A Reducer-Tuner Model for Translating Specifications to3D Prints by chen, levin, didyk, sitthi-amorn, matusikComputational Design of Mechanical Characters by Coros,Thomaszewski, Noris, Sudea, Forberg, Sumner, Matusik, Bickelsketch chair http://www.sketchchair.cc

Tradeoffs 61

weight versus strengthweight versus stabilitydurability versus pricecomfort versus style

Tradeoffs Challenges 62

how do we specify preferences?some are soft and others are hardhow do we measure success?

Optimization 63

explore design spacefind best design pointminimizing computation