Recently the field of complexity science has emerged as an amalgamation of many different areas borrowing ideas and attracting
researchers from the physical, biological and social sciences (Holland 1992; Bak 1996; Kohonen 1997; Fabian 1998; Wolfram
1994; Kauffman 2000). Of late, much of this interdisciplinary research has been facilitated by ideas and tools borrowed from
another field, namely, computer science.
Merging of complexity with computer science has provided researchers with a variety of tools to test new ideas and theories
and carry out simulations that have offered greater insight into a variety of properties of how complex adaptive behavior
evolves and how simple rules guiding interactions at the micro level give rise to complex macro behavior as well as to identifying
the properties of self-organization and emergent behaviors.