Stochastic nonlinear dynamics pattern formation and growth models
© Yaroslavsky; licensee BioMed Central Ltd. 2007
Received: 18 May 2007
Accepted: 05 July 2007
Published: 05 July 2007
Stochastic evolutionary growth and pattern formation models are treated in a unified way in terms of algorithmic models of nonlinear dynamic systems with feedback built of a standard set of signal processing units. A number of concrete models is described and illustrated by numerous examples of artificially generated patterns that closely imitate wide variety of patterns found in the nature.
Problems of pattern formation and growth of forms belong to the most fundamental problems in theoretical biology and other natural sciences [1–4]. In this paper, we treat these problems from the nonlinear dynamics and system theory perspective. Specifically, we regard pattern formation and growth models as versions of pseudo-random number generators and show that they can be described and generated in terms of nonlinear systems with feedback built of a standard set of signal processing units. We show also that quite simple algorithmic models are capable of generating a wide variety of patterns, which closely remind patterns frequently found in the nature such as dendrite patters, labyrinth and zebra skin patterns, papillary patterns, fingerprints and alike. We believe that this approach facilitates unification, quantification and comparison of the growth and pattern formation models and secures their efficient computational implementation.
The paper is organized as following. In Section 2, commonly used generators of pseudo-random numbers are described, represented in terms of the nonlinear dynamic systems with feedback and generalized on this base. In Section 3, it is shown that simple and straightforward modifications of these random number generators give rise to a wide family of stochastic growth models that are illustrated by Eden's type models [5–8] and by several modifications of evolutionary models that originate from Conway's "Game of Life" [8–11]. Section 4 is devoted to an extension of the approach to formation of 2-D stochastic patterns commonly called "texture" images. It suggests regular methods for generating texture images and provides a number of concrete examples of texture generating algorithmic models of different complexity capable, in particular, of imitating quite complex natural textures.
Pseudo-random number generators
Nothing in Nature is random. A thing appears random only through the incompleteness of our knowledge (B. Spinoza )
Anyone who considers arithmetical methods of producing random digits is, of course, in the state of sin. (J. Von Neuman, )
In this section, we describe numerical generators of "pseudo-random" numbers that are commonly used in Monte Carlo simulations and show how can they be represented in a form of nonlinear dynamical (evolutionary) systems with feedback that we further, in sections that follow, extend to more sophisticated growth and pattern formation models.
First generators of pseudo-random numbers were suggested by John Von Neuman at the very beginning of the computer era. Since then, many attempts have been undertaken to improve "randomness" of the generated numbers including even attempts to introduce hardware random number generators that exploit "random" nature phenomena such as radioactivity or Brownian motion. Finally, the concept of pseudo-random numbers won overwhelming recognition, and software pseudo-random number generators have become commonly accepted for generating stochastic numbers that seem "random" in particular applications.
Here ξ (t) is a pseudo-random number generated at t-th iteration, C 1 , C 2 , and C 3 are certain constants, [·] mod C is an operation of finding residual of division of the input value by C 3 .
This scheme represents an example of a very simple nonlinear dynamic (evolutionary) system. It is well known that such systems potentially are prone to cycles and "fixed points", states that, when reached, do not change in the process of iterations (system evolution). A natural requirement to the pseudo-random number generators is that they should avoid cycles and fixed points and provide numbers with nearly uniform distribution and without noticeable correlations. In practice it is achieved by a careful selection of the model parameters C 1 , C 2 , and C 3 .
Multiplication and summation units in the scheme of Figure 1 are replaced here by a linear filter, a device that computes output signal by weighted summation of certain number of input samples, the weights being defined by the filter impulse response (point spread function). In addition, one-sample delay unit of the scheme in Figure 1 is replaced by a one-frame delay unit, where frame is a certain group of samples.
If signal samples in this scheme are arranged in a form of a 2D array, they can be displayed as an image. Figure 2b) illustrates an example of evolution in such a system of a natural image taken as a "seed". The linear filter in this example is a simple two-dimensional "box" filter with a uniform 3 × 3 samples impulse response. Such a filter computes, for each image sample (pixel), image local mean value over the window of 3 × 3 pixels centered at this sample. A constant C 3 in the point-wise nonlinearity was set equal to the half of the image maximal gray level. One can see on this image how the nonlinearity and feedback destroy, in only a few iterations, all pixel correlations that existed in the initial image and generate a 2D array of numbers with no visual correlations.
In what follows, we will use such units, which we call "primary random number generators", as primary units in the stochastic growth and pattern formation models. They will generate inputs to the models and, in addition, they will determine "clocks" of the model evolution.
Stochastic growth models
In this section, we describe several classical numerical stochastic growth models to show that they can be considered as extensions of above presented pseudo-random number generators and described in terms of nonlinear dynamic system composed of standard signal processing units.
Eden's type growth models
where ( k , l ) are pixel coordinates on the lattice, is the sum of pixel values in 8 neighbor points in the 3 × 3 neighborhood of the given pixel, tis the iteration index, 2Drandb( P ) is a binary 2D array of pseudo-random numbers that take value one with probability Pand ⊕ denotes modulo 2 addition of binary numbers.
We assume that the 'primary" pseudo-random number generator generates real numbers in the range [0-1]. The combination of the 'primary" pseudo-random number generator and the point-wise nonlinearity with a threshold transfer function forms the unit 2Drandb( P ), which implements an operation of generating, out of the primary pseudo-random numbers, binary numbers zeros and ones with a given probability Pof ones. On such an array of binary numbers, the linear filter with impulse response as shown in Figure 3 computes the number of ones in the 3 × 3 neighborhood (8-neighbor sum S 8 ) of each pixel thus defining the threshold level of the point-wise nonlinearity.
where is a "global" sum over the entire field of growth. It defines the size of the formation on (t-1)-th iteration (evolution) step.
Conway's "Game of Life" and its modifications
where "alive" and "empty" cells are represented by "ones" and "zeros", respectively, δ (·) is the Kronecker delta (δ (0) = 1; δ ( x ≠ 0) = 0), is the sum of the values in 8-neighborhood of (k , l)-th cell on a rectangular lattice, and tis the iteration number.
As one can see, this diagram contains essentially the same units as the Eden's model, but here they as arranged in 2 parallel branches (one for "births" and one for "deaths"), and the 2Drandb( P ) generator of the Eden's model is placed at the input of the model and is used for generating only initial "random" distribution of 1's and 0's for "alive" and empty cells. The evolution clock rate of the model is determined in this model by the one-frame delay unit.
It is well known that the model generates several types of formations:
Stable formations that once appeared keep staying unchanged unless they are destroyed by other formations;
Growing crystal-like formations that grow until their fragments form stable formations or die out;
Cyclic, in course of iterations, formation that repeat themselves with a certain period;
"Moving", in course of iterations, formations also featuring iteration-wise cycles ("gliders").
One can, for instance, see on these images "randomly" located stable formations such as 2 × 2 pixel square blocks, hexagonal formations called beehives, formations that grow like crystals, and moving formations, or "gliders" (marked in the figures by black boxes), which move across the lattice with a period of 4 evolution steps.
An important parameter of the model is the direction of the spatial interaction. It is defined by the linear filter impulse response. In the original Conway's model, the spatial interaction is almost isotropic: all cell's 8 neighbors play the same role in the defining next state of the cell on each iteration step. In the model of Figure 6, this is reflected in the linear filter isotropic impulse response equal to 1 for all 8 neighbor pixels. In general, the filter impulse response may not be isotropic. In particular, it may define only one-dimensional interaction (only left and right neighbors of each cell affect its next state) thus producing one-dimensional models. An interesting special case of such a 1-D model is the one described by the equation:
output ( k ) (t) = output ( k ) (t-1) δ ( S 2 ) ⊕ δ ( S 2 - 1),
where S 2 is the sum over 2 neighbor cells of the k-th cell (from the left and from the right).
where 2Drandb( P d ) and 2Drandb( P b ) are the same binary pseudo-random number generators as in the Eden's model (Eq. 2). They produce "ones" with probabilities P d (probability of "death") and P b (probability of "birth"), respectively. Note that in the original, non-stochastic, Conway's model, P d = P b = 1.
where L 1 and L 2 are outputs of linear filters that replace summations over 8 neighbors in the model of Eq. 4 and C 1 and C 2 are constants that replace thresholds 2 and 3 in the model of Eq. 4. In this modification, states of cells are not binary and are modeled by real numbers that take arbitrary values in the range [0,1].
Experiments reveal very rich evolutional pattern formation capability of this model. With this model, the following three major types of the evolutionary behavior can be observed depending on the spread of the "fuzzy delta" and constants C 1 and C 2 : "stable chaos", "ordering of chaos" and "reemerging of chaos".
In the "stable chaos" mode, initial chaotic patterns produced by the primary 2-D random number generator gradually evolve into visually correlated patterns that then remain to look similarly though individual cell values keep changing with iterations.
In the "ordering of chaos" mode, initial chaotic patterns degenerate, in the course of iterations, into spatial star constellation-alike or labyrinth-alike patterns that remain stable spatial-wise but may exhibit "temporal" (iteration-wise) cycles. Obviously these are the model's "fixed" points.
The most complex and varying is the behavior of the "reemerging of chaos" type. Its basic feature is rapid degeneration of the initial pseudo-random pattern into a uniform field (a trivial fixed point of the model) or into "star constellations". After that, a new chaotic pattern emerges through growing crystal-alike formations from the constellations left from the initial pattern, through spatial waves from the borders when they are kept to be random, or through the appearance of different types of "gliders" that move across and collide producing clouds of new "particles". These emerging formations gradually fill in the field with visually correlated patterns similarly looking to those, which are characteristic for the "stable chaos" mode.
2-D pattern formation: texture images
In order to make such a representation constructive, we will assume that the transformation systems are built from of a set of certain standard (elementary) signal processing units. Parameters of these units and the transformation system structure form the set of parameters that define stochastic pattern of a certain class. Specific selection of the set of structural signal processing units is governed by considerations of the convenience of their parameterization and by their computational complexity. It is only natural to use units that form the basic and computationally efficient instrumentation tool of digital signal and image processing (see, for instance, , such as following units:
Point-wise nonlinearity (PWN) that transforms signal samples according to the relationship:
output ( k , l ) = F ( input ( k , l )), (8)
where F (·) is, generally, a nonlinear function that defines the transformation transfer function of the unit and ( k , l ) are sample indices.
where h ( m , n ; k , l ) – is the filter impulse response.
Rank filters (RF) . Rank filters operate with signal order statistics computed over a certain neighborhood of each sample of the array and are defined by the equation:
output ( k , l ) = F los ( input ( k , l )),
where F los (·) is a function defined by the local order statistics computed, for every (k , l)-th sample of the array over its certain neighborhood (nbh).
Logical filters. Logical filters assume working with binary arrays and are defined by a certain Boolean function of input pixels. For binary images, logical filters can implement both linear and rank filters.
This list of signal processing elementary units does not pretend to be complete and one is free to further extend or to modify this list to include other processing units proved to be useful signal processing components. As for the connection of units into a system, the following types of interconnections can be assumed:
In what follows in this section, we will show how such an approach allows to readily build models that are capable of generating very wide variety of stochastic 2-D patterns, including those that imitate natural textures. We will call these patterns texture images.
In the PWN-model, one can easily, by an appropriate selection of the nonlinearity, control probability distribution density of the values of samples of generated patterns.
On can show [11, 19] that, with LF models, patterns with probability distribution of sample values close to the Gaussian distribution are generated. Selection of the linear filter frequency response (Fourier Transform of its impulse response) controls Fourier power spectrum (spectral density) of the pattern and, correspondingly, its correlation function.
Up to now no feedback connection was assumed in the texture models except the one in the primary pseudo-random number generator. Clearly, feedback gives to the models evolutionary features In order to exhibit nontrivial evolutionary behavior, systems should contain, in a loop, both linear filter and a non-monotonic nonlinearity or a nonlinear filter with spatial interaction, such as rank filter. Inserting into the loop rank filters that combine spatial interaction and substantial nonlinearity in a more sophisticated way then just by cascading linear filters and point-wise nonlinearity gives rise to a new family of evolutionary models. Note that the primary pseudo-random number generator in such system serves to introduce only an initial "seed" pattern. The above random number generator of Figure 2 and growth models exemplify the simplest of such systems.
As one can see, patterns generated by this model are very reminiscent of natural crystals, cells and cell wall patterns.
We outlined an approach to the analysis and design of stochastic growth and pattern formation models that treats the models in terms of nonlinear signal processing systems with feedback composed of a set of standard and algorithmically simple processing units. We have described a variety of concrete growth and pattern formation models built on the base of this approach and have shown, on examples, that they are capable of imitating natural growth and patterns such as dendrites, see shell, labyrinth, zebra skin, papillary, fingerprint patterns, fur, wood, textile, clouds and alike textures. We believe that such a unified approach facilitates the growth and pattern formation model design, comparison, quantification and unification and secures their efficient computational implementation.
- Meinhardt H, Prusinkiewicz P, Fowler DR: Algorithmic Beauty of Sea Shells. 2003, Springer-Verlag, NYView ArticleMATHGoogle Scholar
- Pattern Formation in Biology, Vision and Dynamics. Edited by: Carbone A, Gromov M, Prusinkiewicz P. 2000, World SicentificMATHGoogle Scholar
- Murray JD: Mathematical Biology. 1989, Springer-Verlag, NYView ArticleMATHGoogle Scholar
- Meinhardt H: Models of Biological Pattern Formation. 1982, Elsevier Science & Technology Books, NYGoogle Scholar
- Eden M: A Probabilistic Model for Morphogenesis. 1958, Pergamon Press, N.Y., 359-370.Google Scholar
- Eden M: A Two-dimensional Growth Process. Proc of the Fourth Berkeley Symposium on Mathematical Statistics and Probability. 1961, Univ. of California Press, 4: 223-239.Google Scholar
- Eden M, The'venaz Ph: History of a Stochastic Growth Model. 6-th Int Workshop on Digital Image Processing and Computer Graphics (DIP-97), 20–22. Edited by: Wenger E, Dimitrov L. 1997, 3346: 43-54. Oct , Vienna, Austria, SPIE Proceedings SeriesGoogle Scholar
- Gardner M: Mathematical Puzzles and Diversions. 1971, PenguinMATHGoogle Scholar
- Yaroslavsky LP, Siverguina IF: Textures, Game "Life" and Non-linear Dynamic Systems. Problems of Control and Information Theory. 1990, 19 (4): 349-372.MATHGoogle Scholar
- Yaroslavsky LP, Siverguina IF, Thaller R, Dimitrov L: Textures, the Game "Life" and nonlinear dynamic systems. Image Analysis and Synthesis. Edited by: Poelzleitner W, Wenger E, Oldenburg R. 1993, Wien, Muenchen, 293-315.Google Scholar
- Yaroslavsky L, Eden M: Fundamentals of Digital Optics. 1996, Birkhaeuser, BostonView ArticleMATHGoogle Scholar
- Peitgen H-O, Juergens H, Saupe D: Fractals in classroom, Pt 1, Introduction to Fractals and Chaos. 1993, Springer Verlag, New York, 319-Google Scholar
- Knuth DE: The Art of Computer Programming, V 2. Seminumerical Algorithms. 1969, Addison Wesley, LondonGoogle Scholar
- Press WH, Teukolsky SA, Vetterling WT, Flannery BP: Numerical Receipes in C. The art of Scientific Computing. 1995, Cambridge University Press, SecondGoogle Scholar
- Turing A: The Chemical Bases for Morphogenesis. Phil Trans Roy Soc London. 1952, B337: 37-72. 10.1098/rstb.1952.0012.View ArticleADSGoogle Scholar
- Mandelbrot B: The Fractal Geometry of Nature. 1983, W.H. Freeman and Company, N.Y.Google Scholar
- Meinhardt H: Biological Pattern Formation as a Complex Dynamic Phenomenon. Pattern Formation in Biology, Vision and Dynamics. Edited by: Carbone A, Gromov M, Prusinkiewicz P. 1999, World Scientific, 99-132.Google Scholar
- Argentina M, Coullet P: Andronov Bifurcations and Sea Shall Patterns. Pattern Formation in Biology, Vision and Dynamics. Edited by: Carbone A, Gromov M, Prusinkiewicz P. 1999, World Scientific, 133-144.Google Scholar
- Yaroslavsky L: Digital Holography and Digital Image Processing. 2004, Kluwer Academic Publishers, BostonView ArticleGoogle Scholar
- Lyubarsky VV, Yaroslavsky LP: Linear Algorithmic Models of Texture Images. Tsyfrovaya Optika. Obrabotka izobrazheniy v eksperimental'nykh issledovaniyakh (Digital Optics, Image Processing in Experimental Studies). 1989, Nauka Publ., Moscow, (In Russian)Google Scholar
- W. Szmaja’s home page. [http://www.phys.uni.lodz.pl/kfcs/Mat_Lab/exdsws.htm]
- L. Yaroslavsky’s home page. [http://www.eng.tau.ac.il/~yaro/Etudes/PDF/conway_gliders_500_10fps_4!.zip]
- Department of Pathology & Laboratory Medicine, University of Calgary home page. [http://www.ucalgary.ca/UofC/faculties/medicine/PATH/Banff_Path_Course/ImagesDocuments/Thurs%200715%20Rosai%20A%20Class%20Scheme.pdf]
- Brodatz Ph: Textures for artists and designers. 1966, Dover Publication Inc. N.Y.Google Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.