l systems
play

L-Systems Simulation of development and growth The algorithmic - PowerPoint PPT Presentation

L-Systems Simulation of development and growth The algorithmic beauty of plants L-Systems The central concept of L-Systems is that of rewriting A classical example of an object defined using rewriting rules is the von Koch snowflake


  1. L-Systems Simulation of development and growth

  2. The algorithmic beauty of plants

  3. L-Systems � The central concept of L-Systems is that of rewriting � A classical example of an object defined using rewriting rules is the von Koch snowflake � Mandelbrot states it as a rewriting system – One begins with two shapes , an initiator and a generator . – The latter is an oriented broken line made up of N equal sides of length r . – Thus each stage of the construction begins with a broken line and consists in replacing each straight interval with a copy of the generator , reduced and displaced so as to have the same end points as those of the interval being replaced. B. B. Mandelbrot. The fractal geometry of nature . W. H. Freeman, San Francisco, 1982.

  4. Iterations of the von Koch snowflake

  5. Other rewriting systems � Rewriting systems on graphs � Rewriting systems on rectangular arrays and matrices ( � Cellular automata) � Rewriting systems on character strings

  6. History of string rewriting � Begin 19 th century: Thue provided first formal definition of a string rewriting system (srw) � Late 50ties: Chomsky investigated syntactical features of natural languages using srw � 1960: Backus and Naur used rewriting notation in the definition of programming language ALGOL � 1952: Equivalence between Backus Naur form and context free class of Chomsky’s grammar (ccg) was realized � 1968 the biologist A. Lindenmayer introduced L-Systems to model multicellular plant growth � As opposed to ccg rewriting rules are applied to all letters in the string simultaneously; there are languages that can be expressed in L-Systems but not in ccg S. Ginsburg and H. G. Rice. Two families of languages related to ALGOL. J. ACM , 9(3):350–371, 1962.

  7. Relation between Chomsky classes and L-systems � Relations between Chomsky classes of languages and language classes generated by L-systems. � The symbols OL and IL denote language classes generated by context-free and context-sensitive L- systems

  8. DOL-systems simplest class of L -systems, � Letters are simultaneously � those which are d eterministic replaced in an derivation step and c o ntext-free, called DOL- systems. consider strings (words) built of �  first five two letters ‘ a’ and ‘ b’ , which may occur many times in a derivations of the string. described DOL- Each letter is associated with a � system with rewriting rule . axiom ‘b’ The rule ‘ a � ab’ means that � the letter ‘ a’ is to be replaced by the string ‘ ab’ , and the rule ‘ b � a’ means that the letter ‘ b’ is to be replaced by ‘ a’ . The rewriting process starts � from a distinguished string called the axiom .

  9. Formal definition of a DOL-System � A production ( a, � ) ∈ P is � Let V denote an alphabet, V* written as a � � . The letter the set of all words over V , and V + the set of all a and the word � are called nonempty words over V . A the predecessor and the string OL-system is an successor of this production, ordered triplet G = ( V, � ,P) resp. where V is the alphabet of � It is assumed that for any the system, letter a ∈ V , there is � � ∈ V + is a nonempty word exactly one word * � ∈ V* such that a � � . (if not we called the axiom and P ⊂ V × V ∗ is a finite set of assume a � a) productions . *if we say ’at least one word’ it is a OL system, but not a deterministic one DOL.

  10. Derivation � Let � = a 1 . . . a m be an axiom � arbitrary word over V � The word � = � 1 . . . � m ∈ V ∗ is directly derived from (or derivation from a generated by) � , noted � ⇒ � , if and only if a i � � i for all i = 1 , . . . , m . Developmental � A word � is generated by G sequence in a derivation of length n if there exists a developmental sequence of words � 0 , � 1 , . . . , � n such that � 0 = � , � n = � and � 0 ⇒ � 1 ⇒ . . . ⇒ � n

  11. Example: Development of a filament of the bacteria Anabaena catenula � The symbols a and b represent cytological states of the cells � The subscripts l and r a r indicate cell polarity, specifying the positions in a l b r which daughter cells of type a and b will be produced. b l a r a r � L-system describes a l a l b r a l b r development – � : a r b l a r b l a r a r b l a r a r – p 1 : a r � a l b r – p 2 : a l � b l a r · · · – p 3 : b r � a r – p 4 : b l � a l

  12. Model validation Under a microscope, the filaments � appear as a sequence of cylinders of various lengths, with a -type cells longer than b -type cells. Letters of the L-system alphabet � are represented graphically as shorter or longer rectangles with rounded corners generated structures are one- � dimensional chains of rectangles Schematic image of filament � development resembles observed multi-cellular patterns that can be compared to observed patterns Intermediate continuous cell growth � is not modeled.

  13. More sophisticated graphical representations � For modelling phenomena � Work on relating L-systems such as branching in plants to fractals, space filling of higher order we need curves, and indian art kolam more sophisticated graphical patterns and music representions. followed* � The first results in this � Prusinkiewicz focused on an direction were published in interpretation based on a 1974 by Frijters and LOGO-style turtle Lindenmayer, and Hogeweg and Hesper. D. Frijters and A. Lindenmayer. A model for the growth and flowering of Aster novae-angliae on the basis of table (1,0) L-systems. In G. Rozenberg and A. Salomaa, editors, L Systems , LNCS 15, 24–52. Springer-Verlag, Berlin, 1974. P. Hogeweg and B. Hesper. Pattern Recognition, 6:165–179, 1974. P. Prusinkiewicz (1987). Applications of L-systems to computer imagery. In H. Ehrig, M. Nagl, A. Rosenfeld, and G. Rozenberg, editors, Graph grammars and their application to computer science; LNCS 291

  14. The basic idea of turtle interpretation A state of the turtle is defined F Move forward a step of length � as a triplet ( x, y, � ) d . The state of the turtle changes to ( x, y, � ), where x = � the Cartesian coordinates ( x, y ) x + d cos � and y = y + d sin � . represent the turtle’s position , A line segment between points and the angle � , called the ( x, y ) and ( x, y ) is drawn. heading , is interpreted as the direction in which the turtle is f Move forward a step of length d facing. without drawing a line. + Turn left by angle � . The next Given the step size d and the � angle increment � , the turtle state of the turtle is ( x, y, � + � ). can respond commands The positive orientation of represented by the following angles is counterclockwise. symbols Turn right by angle � . The next − state of the turtle is ( x, y, � − � ).

  15. Example for turtle graphics interpretation

  16. L-systems as codings of geometrical constructions This method can be applied to � interpret strings which are generated by L-systems. Approximations of the quadratic � Koch island taken from Mandelbrot’s book [95, page 51]. The initiator corresponds to the � axiom and the generator corresponds to the production successor . L-systems specified in this way � can be perceived as codings for Koch constructions. � : F − F − F − F p : F � F − F + F + FF − F − F + F � = 90º, d is decreased 4 times per derivation, n = number of derivations

  17. More L-systems coding fractals with initiator and generator

  18. Combinations of islands and lakes � A complication occurs when the curve is not connected � A second production rule with predecessor is then required

  19. More L-systems coding fractals (1) � The ease of modifying L- systems makes them suitable for developing new von Koch curves. � Try to gradually develop by inserting, deleting, replacing symbols! � A sequence of Koch curves obtained by successive modification of the production successor � Similar L-systems can give rise to very dissimilar graphical representations

  20. L-system synthesis � we often wish to construct an L-system which captures a given structure or sequence of structures representing a developmental process � This is called the inference problem in the theory of L-systems. � Although some algorithms for solving it were reported in the literature*, they are still too limited to be of practical value in the modeling of higher plants � Edge rewriting and node rewriting are more intuitive approaches to this problem *H. Jürgensen and A. Lindenmayer. Modelling development by OL-systems: Inference algorithms for developmental systems with cell lineages. Bulletin of Mathematical Biology , 49(1):93-123, 1987 *A. Lindenmayer. Models for multicellular development: Characterization,inference and complexity of L-systems. In A. Kelmenov ´a and J. Kelmen, editors, Trends, techniques and problems in theoretical computer science , Lecture Notes in Computer Science 281, pages 138–168. Springer-Verlag, Berlin, 1987. .

  21. Edge rewriting and node rewriting � Terminology is borrowed from graph theory � In the case of edge rewriting, productions substitute figures for polygon edges � in node rewriting, productions operate on polygon vertices ( � in L-systems symbols are needed for them) � Both techniques capture the recursive structure of the figures � the concepts are illustrated using abstract curves, they apply to branching structures found in plants as well.

Recommend


More recommend