Interactive evolutionary computation
Encyclopedia
Interactive evolutionary computation (IEC) or aesthetic selection is a general term for methods of evolutionary computation
that use human evaluation. Usually human evaluation is necessary when the form of fitness function is not known (for example, visual appeal or attractiveness; as in Dawkins, 1986) or the result of optimization should fit a particular user preference (for example, taste of coffee or color set of the user interface).
However IEC implementations that can concurrently accept evaluations from many users overcome the limitations described above. An example of this approach is an interactive media installation by Karl Sims
that allows to accept preference from many visitors by using floor sensors to evolve attractive 3D animated forms. Some of these multi-user IEC implementations serve as collaboration tools, for example HBGA.
(Herdy, 1997), interactive genetic algorithm (Caldwell, 1991), interactive genetic programming
(Sims, 1991; Unemi, 2000), and human-based genetic algorithm
(Kosorukoff, 2001).
that uses human evaluation. These algorithms belong to a more general category of Interactive evolutionary computation. The main application of these techniques include domains where it is hard or impossible to design a computational fitness function, for example, evolving images, music, various artistic designs and forms to fit a user's aesthetic preferences. Interactive computation methods can use different representations, both linear (as in traditional genetic algorithms) and tree-like ones (as in genetic programming
).
Evolutionary computation
In computer science, evolutionary computation is a subfield of artificial intelligence that involves combinatorial optimization problems....
that use human evaluation. Usually human evaluation is necessary when the form of fitness function is not known (for example, visual appeal or attractiveness; as in Dawkins, 1986) or the result of optimization should fit a particular user preference (for example, taste of coffee or color set of the user interface).
IEC design issues
The number of evaluations that IEC can receive from one human user is limited by user fatigue which was reported by many researchers as a major problem. In addition, human evaluations are slow and expensive as compared to fitness function computation. Hence, one-user IEC methods should be designed to converge using a small number of evaluations, which necessarily implies very small populations. Several methods were proposed by researchers to speed up convergence, like interactive constrain evolutionary search (user intervention) or fitting user preferences using a convex function (Takagi, 2001). IEC human-computer interfaces should be carefully designed in order to reduce user fatigue.However IEC implementations that can concurrently accept evaluations from many users overcome the limitations described above. An example of this approach is an interactive media installation by Karl Sims
Karl Sims
Karl Sims is a computer graphics artist and researcher, who is best known for using particle systems and artificial life in computer animation....
that allows to accept preference from many visitors by using floor sensors to evolve attractive 3D animated forms. Some of these multi-user IEC implementations serve as collaboration tools, for example HBGA.
IEC types
IEC methods include interactive evolution strategyEvolution strategy
In computer science, evolution strategy is an optimization technique based on ideas of adaptation and evolution. It belongs to the general class of evolutionary computation or artificial evolution methodologies.-History:...
(Herdy, 1997), interactive genetic algorithm (Caldwell, 1991), interactive genetic programming
Genetic programming
In artificial intelligence, genetic programming is an evolutionary algorithm-based methodology inspired by biological evolution to find computer programs that perform a user-defined task. It is a specialization of genetic algorithms where each individual is a computer program...
(Sims, 1991; Unemi, 2000), and human-based genetic algorithm
Human-based genetic algorithm
In evolutionary computation, a human-based genetic algorithm is a genetic algorithm that allows humans to contribute solution suggestions to the evolutionary process. For this purpose, a HBGA has human interfaces for initialization, mutation, and recombinant crossover. As well, it may have...
(Kosorukoff, 2001).
IGA
An interactive genetic algorithm (IGA) is defined as a genetic algorithmGenetic algorithm
A genetic algorithm is a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to generate useful solutions to optimization and search problems...
that uses human evaluation. These algorithms belong to a more general category of Interactive evolutionary computation. The main application of these techniques include domains where it is hard or impossible to design a computational fitness function, for example, evolving images, music, various artistic designs and forms to fit a user's aesthetic preferences. Interactive computation methods can use different representations, both linear (as in traditional genetic algorithms) and tree-like ones (as in genetic programming
Genetic programming
In artificial intelligence, genetic programming is an evolutionary algorithm-based methodology inspired by biological evolution to find computer programs that perform a user-defined task. It is a specialization of genetic algorithms where each individual is a computer program...
).
See also
- Evolutionary artEvolutionary artEvolutionary art is created using a computer. The process starts by having a population of many randomly generated individual representations of artworks. Each representation is evaluated for its aesthetic value and given a fitness score...
- Human-based evolutionary computationHuman-based evolutionary computationHuman-based evolutionary computation is a set of evolutionary computation techniques that rely on human innovation. Human-based evolutionary computation techniques can be classified into three more specific classes analogous to ones in evolutionary computation. There are three basic types of...
- Human-based genetic algorithmHuman-based genetic algorithmIn evolutionary computation, a human-based genetic algorithm is a genetic algorithm that allows humans to contribute solution suggestions to the evolutionary process. For this purpose, a HBGA has human interfaces for initialization, mutation, and recombinant crossover. As well, it may have...
- Human-computer interaction
- Karl SimsKarl SimsKarl Sims is a computer graphics artist and researcher, who is best known for using particle systems and artificial life in computer animation....
- Electric SheepElectric SheepElectric Sheep is a distributed computing project for animating and evolving fractal flames, which are in turn distributed to the networked computers, which display them as a screensaver.-Process:...
External links
- EndlessForms.com, Collaborative interactive evolution allowing you to evolve 3D objects and have them 3D printed.
- Art by Evolution on the Web Interactive Art Generator.
- An online interactive demonstrator to do Evolutionary Computation step by step.
- EFit-V Facial composite system using interactive genetic algorithms.
- Galapagos by Karl Sims
- E-volver
- SBART, a program to evolve 2D images
- GenJam (Genetic Jammer)
- Evolutionary music
- Darwin poetry
- Takagi Lab at Kyushu University
- http://www.derrickcheng.com/Project/HBGA - Interactive one-max problem allows to compare the performance of interactive and human-based genetic algorithms.
- idiofact.de, Webpage that uses interactive evolutionary computation with a generative design algorithm to generate 2d images.
- Picbreeder service, Collaborative interactive evolution allowing branching from other users' creations that produces pictures like faces and spaceships.
- Peer to Peer IGA Using collaborative IGA sessions for floorplanning and document design.