Related Disciplines


The field is characterized by the extensive use of computer programs and computer simulations which include evolutionary algorithms (EA), genetic algorithms (GA), genetic programming (GP), artificial chemistries (AC), agent-based models, and cellular automata (CA).

  • Computer Programs -A computer program (often simply called a program) is an example of computer software that prescribes the actions ("computations") that are to be carried out by a computer. Most programs consist of a loadable set of instructions which determines how the computer will react to user input when that program is running, i.e. when the instructions are 'loaded'. Colloquially, the term program is often used interchangeably with software and software application.
  • Computer Simulations - computer simulation or a computer model is a computer program which attempts to simulate an abstract model of a particular system. Computer simulations have become a useful part of modeling many natural systems in physics, chemistry and biology, human systems in economics and social science and in the process of engineering new technology, to gain insight into the operation of those systems. Traditionally, the formal modeling of systems has been via a mathematical model, which attempts to find analytical solutions to problems which enables the prediction of the behaviour of the system from a set of parameters and initial conditions. Computer simulations build on, and are a useful adjunct to purely mathematical models in science and technology and entertainment.
  • Evolutionary Algoriithms -An evolutionary algorithm (also EA, evolutionary computation, artificial evolution) is a generic term used to indicate any population-based optimization algorithm that uses mechanisms inspired by biological evolution, such as reproduction, mutation and recombination (see genetic operators). Candidate solutions to the optimization problem play the role of individuals in a population, and the cost function determines the environment within which the solutions "live" (see also fitness function). Evolution of the population then takes place after the repeated application of the above operators. Specific examples of EAs are given below. Most of these techniques are similar in spirit, but differ in the details of their implementation and the nature of the particular problem to which they have been applied.
  • Genetic Algorithms -A genetic algorithm (GA) is an algorithm used to find approximate solutions to difficult-to-solve problems through application of the principles of evolutionary biology to computer science. Genetic algorithms use biologically-derived techniques such as inheritance, mutation, natural selection, and recombination (or crossover). Genetic algorithms are a particular class of evolutionary algorithms. Genetic algorithms are typically implemented as a computer simulation in which a population of abstract representations (called chromosomes) of candidate solutions (called individuals) to an optimization problem evolves toward better solutions. Traditionally, solutions are represented in binary as strings of 0s and 1s, but different encodings are also possible. The evolution starts from a population of completely random individuals and happens in generations. In each generation, the fitness of the whole population is evaluated, multiple individuals are stochastically selected from the current population (based on their fitness), modified (mutated or recombined) to form a new population, which becomes current in the next iteration of the algorithm.
  • Genetic Programs -Genetic programming (GP) is an automated methodology inspired by biological evolution to find computer programs that best perform a user-defined task. It is therefore a particular machine learning technique that uses an evolutionary algorithm to optimize a population of computer programs according to a fitness landscape determined by a program's ability to perform a given computational task.
  • Agent Based Models -Agent Based Model is a specific individual based computational model for computer simulation extensively related to the theme in complex systems, emergence, Monte Carlo Method, computational sociology, multi agent systems, and evolutionary programming. The model was developed through a simple conceptual form in the late 1940s, and it took the advent of the microcomputer to really get up to speed.
  • Cellular Automata -A cellular automaton (plural: cellular automata) is a discrete model studied in computability theory and mathematics. It consists of an infinite, regular grid of cells, each in one of a finite number of states. The grid can be in any finite number of dimensions. Time is also discrete, and the state of a cell at time t is a function of the state of a finite number of cells called the neighborhood at time t-1.
 

In the News: