This is the first book that attempts to provide a framework in which to embed an automatic programming system based on evolutionary learning (genetic programming) into a traditional software engineering environment. As such, it looks at how traditional software engineering knowledge can be integrated with an evolutionary programming process in a symbiotic way.Contents:SWEEP: A System for the Software Engineering of Evolving ProgramsThe Genetic Programming Element AgentsThe Metrics Apprentice: Using Cultural Algorithms to Formulate Quality Metrics for Software SystemsAn Example Problem for Automatic Programming: Solving the Noisy Sine Problem with DiscipulusData Collection and AnalysisAnalysis: The Relationship of Software Metrics to BloatDefining a New Software Metric to Estimate Generalization Using the Metrics ApprenticeReadership: Computer scientists.Key Features:It is written in a form that should make it accessible to the non-specialist reader. It may also be useful as a textbook for non-science students who are required to have a general background knowledge of scienceIt explains the essential scientific principles without going into distracting detailIt covers a wide range of material, much of it of popular appeal, and brings it together to tell a coherent story connecting the beginning of time to now