9
제 6 제 . 제제 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Gr aphics, vol. 25, pp. 1041~1048, 2001 제제제제 제제제제제제 제제제제 제제제 제제 제제제제 제제 제제 제제제제제제 제제제 Creature construction L-system GA

제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Embed Size (px)

DESCRIPTION

Introduction 4 Factors to limit the richness of virtual worlds –Computing power  design ability 4 Evolutionary algorithms –Promising in automating the process of producing creatures –Direct encoding  one-to-one mapping No re-use, asymmetries, non-regularities  unnatural looking 4 Solution  graph structure (like Karl Sims) –Generative encoding for creatures –Developmental method with a set of grammatical re-writing rules –Fractal-like self-similarities  organic look & better scalability –Lindenmayer systems 4 Evolving controllers for pre-specified morphologies –Stimulus-response rules, neural controllers, genetic programs  oscillator circuits : with frequency and relative phase offset  recurrent neural networks

Citation preview

Page 1: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

제 6 주 . 응용 -2: GraphicsEvolving L-systems to Generate Virtual Creatures

G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

학습목표그래픽분야의 인공생명 응용에 대한 실제적인 구현 예를

이해함으로써 총정리Creature construction L-system GA

Page 2: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

개요 Virtual creature 의 역할

– Special effects and background characters

Evolutionary algorithm– Reduce difficulty and time to specify morphologies and behaviors

Limitation of conventional approach– Scalability beyond creatures with 50 components– Unnatural looking

Proposed method– Lindenmayer systems as the encoding of EA to create virtual creature

s– Create creatures with hundreds of parts and more natural looking

Page 3: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Introduction Factors to limit the richness of virtual worlds

– Computing power design ability Evolutionary algorithms

– Promising in automating the process of producing creatures– Direct encoding one-to-one mapping

• No re-use, asymmetries, non-regularities unnatural looking Solution graph structure (like Karl Sims)

– Generative encoding for creatures– Developmental method with a set of grammatical re-writing rules– Fractal-like self-similarities organic look & better scalability– Lindenmayer systems

Evolving controllers for pre-specified morphologies– Stimulus-response rules, neural controllers, genetic programs

oscillator circuits : with frequency and relative phase offset recurrent neural networks

Page 4: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Methods: Overview Components to produce moving creatures

– Evolutionary algorithms: to optimize creature design• Stochastic search & optimization inspired by natural evolution• Iteratively replacing poor members with individual generated by applying

variation to good members of population

– L-systems: encoding to represent creatures for optimization• Set of grammatical rewriting rules to model biological development• Iteratively applying the rules to create complex string from simpler ones• Characters for L-system set of construction commands

– Creature constructor: to construct creatures from encoding• Follow string of construction commands to build creature piece by piece• Evaluate how well it moves pass the score to EA

Page 5: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Creature Constructor Morphology

– Bars connected by either fixed or actuated joints– Construction commands: specify how and where to attach bars to the exi

sting design LOGO-style turtle Command language

– Push and pop operators: [, ]• Current location, orientation, relative phase offset

– Turn left/right/up/down/clockwise/counter-clockwise(n)– Forward(n), Backward(n)– Revolute-1(n), Revolute-2(n)– Twist-180(n)– {, } : {forward(1)} (3) forward (1) forward (1) forward (1)

L-system specification constructor behavior evaluation (quasi-dynamic simulator)

Page 6: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Parametric 0L-systems Purpose

– Compactly describe more natural-looking structures– Overcome overly regular designs from L-systems

G = (V, , , P)– :, : Predecessor : condition successor– Restricted condition: comparisons as to whether a production

parameter is greater than a constant value

Page 7: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Evolutionary Algorithm Initialization

– Blank template of a fixed number of production rules– Push and pop, block replication symbols– Initial population consists of a variety of different solutions whose

fitness is above the preset threshold Mutation

– Replacing one command with a random command– Perturbing parameter of a command by adding/subtracting a small

value to it– Changing parameter equation to a production– Adding/deleting a block of commands in a successor– Changing condition equation

Recombination

Page 8: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Evolved Creatures Evaluation function

– Distance moved by the creature’s center of mass– Penalty proportional to distance covered by points that dragged along

the ground stepping and rolling motions encouraged

Interesting results : Fig. 2– Roll along sideways : (a), (b), (c), (g)– Undulating sea-serpent : (d)– Inch-worm : (e)– Flipping of the creature : (f)– Pushing a coil : (h) larger creatures– Four legs in an awkward walk : (i) larger creatures

Page 9: 제 6 주. 응용 -2: Graphics Evolving L-systems to Generate Virtual Creatures G.S. Hornby and J.B. Pollack, Computers & Graphics, vol. 25, pp. 1041~1048, 2001

Midterm Exam : Take Home Design the virtual creatures with evolving L-systems Due date : April 29 Collaborators : maximum 3