In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to generate high-quality solutions to optimization and search problems by relying on biologically inspired operators such as mutation, crossover and selection. Some examples of GA applications include optimizing decision trees for better performance, solving sudoku puzzles, hyperparameter optimization, etc.
A standard representation of each candidate solution is as an array of bits (also called bit set or bit string). Arrays of other types and structures can be used in essentially the same way. The main property that makes these genetic representations convenient is that their parts are easily aligned due to their fixed size, which facilitates simple crossover operations. Variable length representations may also be used, but crossover implementation is more complex in this case. Tree-like representations are explored in genetic programming and graph-form representations are explored in evolutionary programming; a mix of both linear chromosomes and trees is explored in gene expression programming.
The simplest algorithm represents each chromosome as a bit string. Typically, numeric parameters can be represented by integers, though it is possible to use floating point representations. The floating point representation is natural to evolution strategies and evolutionary programming. The notion of real-valued genetic algorithms has been offered but is really a misnomer because it does not really represent the building block theory that was proposed by John Henry Holland in the 1970s. This theory is not without support though, based on theoretical and experimental results (see below). The basic algorithm performs crossover and mutation at the bit level. Other variants treat the chromosome as a list of numbers which are indexes into an instruction table, nodes in a linked list, hashes, objects, or any other imaginable data structure. Crossover and mutation are performed so as to respect data element boundaries. For most data types, specific variation operators can be designed. Different chromosomal data types seem to work better or worse for different specific problem domains.
It is the need of current scenario that water resource is to be retained and maintained. Different types of models have been applied for the optimization of Water Resource Management. Genetic Algorithm is one of the evolutionary algorithms, those are the part of Soft Computing, have been applied and different researches have done for the use of genetic algorithm in the water resource optimization. This paper is to review the different applications applied so far, their usefulness and also for their scope in the development of future models for the water resource planning and optimization.
Optimized Genetic Programming Applications: Emerging Research and Opportunities is an essential reference source that explores the concept of genetic programming and its role in managing engineering problems. It also examines genetic programming as a supervised machine learning technique, focusing on implementation and application. As a resource that details both the theoretical aspects and implementation of genetic programming, this book is a useful source for academicians, biological engineers, computer programmers, scientists, researchers, and upper-level students seeking the latest research on genetic programming.
This contributed volume, written by leading international researchers, reviews the latest developments of genetic programming (GP) and its key applications in solving current real world problems, such as energy conversion and management, financial analysis, engineering modeling and design, and software engineering, to name a few. Inspired by natural evolution, the use of GP has expanded significantly in the last decade in almost every area of science and engineering. Exploring applications in a variety of fields, the information in this volume can help optimize computer programs throughout the sciences. Taking a hands-on approach, this book provides an invaluable reference to practitioners, providing the necessary details required for a successful application of GP and its branches to challenging problems ranging from drought prediction to trading volatility. It also demonstrates the evolution of GP through major developments in GP studies and applications. It is suitable for advanced students who wish to use relevant book chapters as a basis to pursue further research in these areas, as well as experienced practitioners looking to apply GP to new areas. The book also offers valuable supplementary material for design courses and computation in engineering.
The fundamental characteristic of EAs (evolutionary algorithms) is that they mirror processes that occur during the course of evolution in nature. EC may be visualized as an amalgam, comprising genetic algorithms, genetic programming, evolution strategies, and evolutionary programming.
Genetic programming (GP) is a widely used machine learning (ML) algorithm that has been applied in water resources science and engineering since its conception in the early 1990s. However, similar to other ML applications, the GP algorithm is often used as a data fitting tool rather than as a model building instrument. We find this a gross underutilization of the GP capabilities. The most unique and distinct feature of GP that makes it distinctly different from the rest of ML techniques is its capability to produce explicit mathematical relationships between input and output variables. In the context of theory-guided data science (TGDS) which recently emerged as a new paradigm in ML with the main goal of blending the existing body of knowledge with ML techniques to induce physically sound models. Hence, TGDS has evolved into a popular data science paradigm, especially in scientific disciplines including water resources. Following these ideas, in our prior work, we developed two hydrologically informed rainfall-runoff model induction toolkits for lumped modelling and distributed modelling based on GP. In the current work, the two toolkits are applied using a different hydrological model building library. Here, the model building blocks are derived from the Sugawara TANK model template which represents the elements of hydrological knowledge. Results are compared against the traditional GP approach and suggest that GP as a rainfall-runoff model induction toolkit preserves the prediction power of the traditional GP short-term forecasting approach while benefiting to better understand the catchment runoff dynamics through the readily interpretable induced models.
Genetic programming (GP) (Koza 1992) is an ML algorithm that has been used for many applications in water resources science and engineering since its invention in the early 1990s. However, as per the state-of-the-art GP applications, the algorithm is often used as a data fitting tool instead of as a model building instrument. The data fitting makes the GP applications very similar to other ML algorithms, such as artificial neural networks or support vector machines. In hydrological rainfall-runoff modelling, the most frequent use of ML, including GP, is as a short-term forecasting tool. We find this to be an underutilization of the GP capabilities. The most unique and distinct feature of GP that makes it so different from the rest of ML techniques lies in its capability to produce explicit mathematical relationships between input and output variables.
Both toolkits are primarily coded in R programming language (R Core Team 2013) based on the canonical GP approach proposed in Havlicek et al. (2013). The multi-objective optimization framework of the toolkits is based on Non-dominated Sorting Genetic Algorithm-II (NSGA-II; Deb et al. 2002). Parallel computation has been used at the fitness computation stage of GP individuals to reduce the overall computation time. However, the genetic operators are applied to the whole generation in series (using one core) to have more diversity among breeding individuals. Both toolkits consist of four major stages. They are data pre-processing stage, model identification stage, model selection stage and uncertainty and sensitivity analysis stage. Each step is briefly described in the following section, while for a detailed explanation refer to Chadalawada et al. (2020) and Herath et al. (2020).
Chapter 3: Koohpayehzadeh Esfahani, Hamed, and Datta, Bithin (2015) Use of genetic programming based surrogate models to simulate complex geochemical transport processes in contaminated mine sites. In: Gandomi, Amir H., Alavi, Amir H., and Ryan, Conor, (eds.) Handbook of Genetic Programming Applications. Springer, New York, NY, USA, pp. 359-379.
Pamela Dominic, David Edward Leahy, Mark J. Willis. Predicting the toxicity of chemical compounds using GPTIPS: a free open source genetic programming toolbox for MATLAB, Intelligent Control and Computer Engineering, Lecture Notes in Electrical Engineering, Vol. 70, Springer, pp. 83-93, 2011.
Examining epigenetic mechanisms in specific tissues can reveal essential elements of tissue-specific genetic programming, development, and biological processes. ChIP can be a valuable tool for examining roles and mechanisms of tissue-specific transcription factors, gene activation and other aspects of epigenetic regulation. To perform ChIP from tissue samples requires specialized chromatin preparation protocols to ensure quality input material and reliable results.
Euler Diagrams are known to be an effective method of representing set-based data. Drawing effective Euler diagrams is difficult, with many proposed drawing algorithms creating either cluttered diagrams, or breaking other guidelines which are known to aid readability. The intended user of the diagram is only included in the evaluation stage, if at all, and is not included in the design stage of the algorithm. In this project, we seek to include the user in the design of the algorithm, by harnessing the power of genetic programming. Much like evolutionary art can be guided by the choices of a user, so the final aesthetic of a diagram can be guided through preferences users make. The challenge of this project is to ensure that any output correctly represents the underlying set-based information, and also produces output which is visually appealing to the user. 153554b96e