Cartesian Genetic Programming

Cartesian Genetic Programming

2011 | Julian F. Miller
Cartesian Genetic Programming (CGP) is a form of automatic evolution of computer programs and computational structures inspired by Darwin’s theory of evolution by natural selection. This book is the first comprehensive overview of CGP, covering its origins, principles, applications, and future directions. It is aimed at postgraduates, researchers, and academics, but also serves as a useful resource for undergraduates interested in genetic programming. The book discusses five well-known representations used in genetic programming, and highlights the importance of evolutionary algorithms in solving complex problems efficiently. Chapter 2 introduces the classic form of CGP, explaining how CGP genotypes can represent computational structures in different domains, such as digital circuits, mathematical equations, and artworks. It provides detailed explanations of how CGP genotypes are decoded, and discusses suitable methods for mutation and recombination. The chapter also includes advice on choosing parameter settings for CGP evolutionary algorithms. Chapter 3 discusses problem decomposition in CGP, and how subfunctions can be automatically evolved and acquired. It describes two methods: embedded CGP and modular CGP. The chapter includes details of experiments on many benchmark problems, showing that CGP is a highly efficient and competitive technique compared to other GP approaches. Chapter 4 introduces self-modifying CGP (SMCGP), where an evolved program can modify itself to produce a new phenotype. This allows for the evolution of solutions to a potentially infinite sequence of problems. The chapter also discusses the mathematical proof that an evolved solution can solve all instances of a problem. Chapter 5 covers the application of CGP in electronic circuit design, including the design of polymorphic circuits and multiple-constant-multiplier circuits. It also discusses the use of CGP in hardware implementations, such as classifiers for electromyographic signals and application-specific caches. Chapter 6 presents three applications of CGP in image processing, including the automatic design of image filters and the evolution of image transformations for medical images. The chapter shows that CGP can produce image processing algorithms that are comparable to or even better than conventional solutions. Chapter 7 describes a complete CGP design system implemented in hardware, which offers advantages over CGP systems running on general processors, such as significant speed-up for many applications and suitability for small low-power adaptive embedded systems. Chapter 8 discusses how CGP can be used to design artificial neural networks, specifically the CGP Developmental Network (CGPDN), which is capable of learning in two well-known problems in artificial intelligence. Chapter 9 explores the application of CGP in the creative arts, where evolutionary algorithms or genetic programming are used to produce visual art. It argues that some aspects of CGP are highly advantageous in obtaining contextual focus, which is essential for building systems that mimic human creativity. Chapter 10 discusses the application of CGP in medical diagnosis, including the diagnosis of breast cancer, Parkinson's disease, and Alzheimer's disease. It also gives advice on the common pitfalls, benefits, and rewards of medical applicationsCartesian Genetic Programming (CGP) is a form of automatic evolution of computer programs and computational structures inspired by Darwin’s theory of evolution by natural selection. This book is the first comprehensive overview of CGP, covering its origins, principles, applications, and future directions. It is aimed at postgraduates, researchers, and academics, but also serves as a useful resource for undergraduates interested in genetic programming. The book discusses five well-known representations used in genetic programming, and highlights the importance of evolutionary algorithms in solving complex problems efficiently. Chapter 2 introduces the classic form of CGP, explaining how CGP genotypes can represent computational structures in different domains, such as digital circuits, mathematical equations, and artworks. It provides detailed explanations of how CGP genotypes are decoded, and discusses suitable methods for mutation and recombination. The chapter also includes advice on choosing parameter settings for CGP evolutionary algorithms. Chapter 3 discusses problem decomposition in CGP, and how subfunctions can be automatically evolved and acquired. It describes two methods: embedded CGP and modular CGP. The chapter includes details of experiments on many benchmark problems, showing that CGP is a highly efficient and competitive technique compared to other GP approaches. Chapter 4 introduces self-modifying CGP (SMCGP), where an evolved program can modify itself to produce a new phenotype. This allows for the evolution of solutions to a potentially infinite sequence of problems. The chapter also discusses the mathematical proof that an evolved solution can solve all instances of a problem. Chapter 5 covers the application of CGP in electronic circuit design, including the design of polymorphic circuits and multiple-constant-multiplier circuits. It also discusses the use of CGP in hardware implementations, such as classifiers for electromyographic signals and application-specific caches. Chapter 6 presents three applications of CGP in image processing, including the automatic design of image filters and the evolution of image transformations for medical images. The chapter shows that CGP can produce image processing algorithms that are comparable to or even better than conventional solutions. Chapter 7 describes a complete CGP design system implemented in hardware, which offers advantages over CGP systems running on general processors, such as significant speed-up for many applications and suitability for small low-power adaptive embedded systems. Chapter 8 discusses how CGP can be used to design artificial neural networks, specifically the CGP Developmental Network (CGPDN), which is capable of learning in two well-known problems in artificial intelligence. Chapter 9 explores the application of CGP in the creative arts, where evolutionary algorithms or genetic programming are used to produce visual art. It argues that some aspects of CGP are highly advantageous in obtaining contextual focus, which is essential for building systems that mimic human creativity. Chapter 10 discusses the application of CGP in medical diagnosis, including the diagnosis of breast cancer, Parkinson's disease, and Alzheimer's disease. It also gives advice on the common pitfalls, benefits, and rewards of medical applications
Reach us at info@study.space