Lindenmayer systems Martijn van den Heuvel May 26th, May 26th, 2011
Outline Origin Origin Definition Definition Characteristics Characteristics Extensions Extensions Comparision with other models Comparision with other models Conclusion Conclusion
Origin - Aristid Lindenmayer 1925 – 1989 (63 years old) 1925 – 1989 (63 years old) Hungarian/US Hungarian/US Biologist at Utrecht University Biologist at Utrecht University L-systems (1968) L-systems (1968) Biological development of multicellular organisms (algae) Biological development of multicellular organisms (algae) Chomsky (formal) grammars (1957) Chomsky (formal) grammars (1957)
Definition Rewriting system: Rewriting system: Define complex objects by rewriting simple objects Define complex objects by rewriting simple objects Tuple: G = (A,s,R) Tuple: G = (A,s,R) G = grammar A = alphabet (symbol set/states) s = starting axiom (seed) R= set of production/transition rules ‘Constants’ are identity functions; a a
Characteristics Recursive Recursive Parallel applying of productions Parallel applying of productions Rules can be deterministic/non-deterministic Rules can be deterministic/non-deterministic Context-free / context sensitive states Context-free / context sensitive states Namecontext -system Rules 0L-systemfree -L-systema z IL-systemsensitive -L-system z 2L-systemsensitive -L-system z
Example D0L-system States: { a,b,c,d,k } Rules: a cbc b dad c k d a k k Tuple: G = (A,s,R) G = grammar A = alphabet (symbol set/states) s = starting axiom (seed) R= set of production/transition rules acbckdadkkacbcakkcbckdadkcbckkkdadkkacbcakkdadkkkkacbcakkcbckdadkcbckkacbcakk… Repeating structure from 4th array: S n = kS n-3 S n-2 S n-3 k
Example D0L-system Geometrical interpretation: Geometrical interpretation: a and b are sharp tips a and b are sharp tips c and d are lateral margins of lobes c and d are lateral margins of lobes k represents a notch k represents a notch
Geometrical extensions: Turtle graphics Turtle has: A position (coordinates; x,y) A position (coordinates; x,y) An orientation (angle; a) An orientation (angle; a) A state s=(x,y,a) A state s=(x,y,a) Also (possible): Angle increment b Angle increment b Step size d Step size d
Geometrical extensions: Turtle graphics Example: Sierpinski triangle Example: Sierpinski triangle variables: A Bboth mean “draw forward” variables: A Bboth mean “draw forward” constants: + means “turn left by angle” constants: + means “turn left by angle” −means “turn right by angle” −means “turn right by angle” start: A start: A rules: (A → B−A−B), (B → A+B+A) rules: (A → B−A−B), (B → A+B+A) angle: 60° angle: 60° Fixed step size (d), no angle increment (b) Fixed step size (d), no angle increment (b)
Geometrical extensions: Turtle graphics Result for n=2, n=4, n=6 and n=8
Geometrical extensions: Bracketing Extends previous turtle extension to split Extends previous turtle extension to split Uses brackets [,] to delimit branches: Uses brackets [,] to delimit branches: [ means“Pop a state from the stack and make it the current state of the turtle.” [ means“Pop a state from the stack and make it the current state of the turtle.” ] means“Push the current state of the turtle onto a pushdown stack.” ] means“Push the current state of the turtle onto a pushdown stack.”
Geometrical extensions: Bracketing Start: F Start: F Rule: F F[-F]F[+F][F] Angle: 25°
Comparision to other MOC Very similar to semi-Thue & Markov systems Very similar to semi-Thue & Markov systems L-systems parallel/simultaneous, others sequential. L-systems parallel/simultaneous, others sequential. L-systems can be both deterministic/non-deterministic L-systems can be both deterministic/non-deterministic All are Turing-complete All are Turing-complete Cellular automata Cellular automata Also simultaneous application of rules Also simultaneous application of rules Ozhigov proves: Ozhigov proves: The set of languages, computed in a polynomial time on L- systems, is exactly NP- languages. Even states L-systems might be a more powerful MOC than a non-deterministic Turing machine
Conclusions Powerful systems Powerful systems Distinguishing by parallel appliance of rules Distinguishing by parallel appliance of rules As formal language: As formal language: 0L-languages are context free type-2 in Chomsky hierarchy 0L-languages are context free type-2 in Chomsky hierarchy IL-languages are context sensitive type-1 Chomsky hierarchy IL-languages are context sensitive type-1 Chomsky hierarchy Interesting readings: Interesting readings: The algorithmic beauty of plants – Lindenmayer & Prusinkiewicz (1990) The algorithmic beauty of plants – Lindenmayer & Prusinkiewicz (1990) The algorithmic beauty of plants – Lindenmayer & Prusinkiewicz (1990) The algorithmic beauty of plants – Lindenmayer & Prusinkiewicz (1990) Lindenmayer systems as a model of computations – Y. Ozhigov (1998) Parametric L-systems and their application to the modelling and visualization of plants – J.S. Hanan (1992) (online L-system renderer)