Artificial life is now a recognized discipline of research with many important applications and software tools. However, many theoretical issues remain unresolved. This book brings together a cross-section of key developments in artificial life, which in turn gives us new insight into the theory of complex systems.The central ideas of the book surround genetics and evolution in an artificial life framework. Topics covered include maintenance of genetic diversity, hierarchical structures and stability of ecosystems. Underpinning these topics are key theoretical developments surrounding network complexity, the development of pattern languages for complex networks and a deeper understanding of the edge of chaos where complex systems live. Practical applications include optimization, gene regulatory networks, modeling the spread of disease and the evolution of ageing.The reader will gain an insight into the mathematical techniques at the core of artificial life and encounter a sufficient diversity of applications to stimulate new directions in their own field.