Genetic algorithms in economics: Difference between revisions

Content deleted Content added
remove stuff in main genetic algorithm article
Reverting edit(s) by 197.55.44.254 (talk) to rev. 1154597712 by Dancing Dollar: Reverting good faith edits: (UV 0.1.5)
 
(26 intermediate revisions by 18 users not shown)
Line 1:
{{mainMain|crossover (genetic algorithm)}}
The '''[[genetic algorithm]]''' has increasingly been applied to economics over the last two decades. It has been used to characterize a variety of models including the [[cobweb model]], the [[overlapping generations model]], [[game theory]] and [[asset pricing]]. Specifically, it has been used as a model to represent learning, rather than as a means for fitting a model.
 
The '''[[geneticGenetic algorithm]]s''' hashave increasingly been applied to economics oversince the lastpioneering twowork decadesby John H. Miller in 1986. It has been used to characterize a variety of models including the [[cobweb model]], the [[overlapping generations model]], [[game theory]], [[Genetic algorithm scheduling|schedule optimization]] and [[asset pricing]]. Specifically, it has been used as a model to represent learning, rather than as a means for fitting a model.
== Design ==
 
== Genetic Algorithmalgorithm in the Cobwebcobweb Modelmodel ==
The genetic algorithm generally consists of a population of n agents with m strings. These strings are often initially randomly generated but are then updated every g periods. Each string is assigned a fitness value through a defined method which is used as a measure of performance. The strings are updated through a series of operators. The basic genetic algorithm generally consists of three unique operators: the reproduction operator, which attempts to imitate successful agents and the two experimentation operators, crossover and mutation, which are implemented to bring diversity into the system. The augmented genetic algorithm includes an election operator, which adds a selection criteria.
 
The [[cobweb model]] is a simple supply and demand model for a good over ''t'' periods. Firms (agents) make a production quantity decision in a given period, however their output is not produced until the following period. Thus, the firms are going to have to use some sort of method to forecast what the future price will be. The GA is used as a sort of learning behaviour for the firms. Initially their quantity production decisions are random, however each period they learn a little more. The result is the agents converge within the area of the [[rational expectations]] (RATEX) equilibrium for the stable and unstable case. If the election operator is used, the GA converges exactly to the RATEX equilibrium.
=== Reproduction ===
 
There are two typetypes of learning methods these agents can be deployed with: social learning and individual learning. In social learning, each firm is endowed with a single string (which is used as its quantity production decision). It then compares this string against other firmfirms's strings. In the individual learning case, agents are endowed with a pool of strings. These strings are then compared against other strings within the agent's population pool. This can be thought of as mutual competing ideas within a firm whereas in the social case, it can be thought of as a firm's learning from more successful firms. Note that in the social case and in the individual learning case with identical cost functions, that this is a homogeneous solution, that is all agentagents's production decisions are identical. However, if the cost functions are not identical, this will result in a heterogeneous solution, where firms produce different quantities (note that they are still locally homogeneous, that is within the firm's own pool all the strings are identical).
The first operator, reproduction, works by attempting to imitate. In general, it selects another agent to observe its fitness value. If its fitness value is greater than its own, then it elects to adopt the other agent's string. Otherwise, it preserves it own. These strings are then placed into an offspring pool to undergo the mutation operators, crossover and mutation. Most functions are [[stochastic]] and designed so that a small proportion of less fit solutions are selected. This helps keep the diversity of the population large, preventing premature convergence on poor solutions. Popular and well-studied selection methods include [[fitness proportionate selection|roulette wheel selection]] and [[tournament selection]].
 
After all agent'sagents have made a quantity production decision, the quantities are aggregated and plugged into a demand function to get a price. Each firm's profit is then calculated. Fitness values are then calculated as a function of profits. After the offspring pool is generated, hypothetical fitness values are calculated. These hypothetical values are based on some sort of estimation of the price level, often just by taking the previous price level.
=== Crossover ===
{{main|crossover (genetic algorithm)}}
 
===See Mutation =also==
*{{mainslink|mutationList of (genetic algorithm) applications #Finance and Economics}}
 
=== Election ===
 
These processes ultimately result in the offspring pool of strings that is different from the initial parent pool. The election operator then works by comparing the fitness of the parent strings to the potential fitness of the offspring pool. If the offspring string has a higher fitness value, it will replace the parent string in the population. Otherwise, the parent string will stay. Generally the average fitness will have increased by this procedure for the population, since only the best strings are selected.
 
== Genetic Algorithm in the Cobweb Model ==
 
The [[cobweb model]] is a simple supply and demand model for a good over t periods. Firms (agents) make a production quantity decision in a given period, however their output is not produced until the following period. Thus, the firms are going to have to use some sort of method to forecast what the future price will be. The GA is used as a sort of learning behaviour for the firms. Initially their quantity production decisions are random, however each period they learn a little more. The result is the agents converge within the area of the [[rational expectations]] (RATEX) equilibrium for the stable and unstable case. If the election operator is used, the GA converges exactly to the RATEX equilibrium.
 
There are two type of learning methods these agents can be deployed with: social learning and individual learning. In social learning, each firm is endowed with a single string (which is used as its quantity production decision). It then compares this string against other firm's strings. In the individual learning case, agents are endowed with a pool strings. These strings are then compared against other strings within the agent's population pool. This can be thought of as mutual competing ideas within a firm whereas in the social case, it can be thought of as firm's learning from more successful firms. Note that in the social case and in the individual learning case with identical cost functions, that this is a homogeneous solution, that is all agent's production decisions are identical. However, if the cost functions are not identical, this will result in a heterogeneous solution, where firms produce different quantities (note that they are still locally homogeneous, that is within the firm's own pool all the strings are identical).
 
After all agent's have made a quantity production decision, the quantities are aggregated and plugged into a demand function to get a price. Each firm's profit is then calculated. Fitness values are then calculated as a function of profits. After the offspring pool is generated, hypothetical fitness values are calculated. These hypothetical values are based on some sort of estimation of the price level, often just by taking the previous price level.
 
== References ==
* J H Miller, 'A Genetic Model of Adaptive Economic Behavior', University of Michigan working paper, 1986.
* J Arifovic, 'Genetic Algorithm Learning and the Cobweb Model ', Journal of Economic Dynamics and Control, vol. 18, Issue 1, (January 1994), 3-28.
* J Arifovic, 'Learning by Genetic Algorithm in Economic Environments', PhD Thesis, University of Chicago, 1991.
* J Arifovic, 'Genetic Algorithm Learning and the Cobweb Model ', Journal of Economic Dynamics and Control, vol. 18, Issue 1, (January 1994), 3-–28.
* R Hoffmann, 'The independent localisations of interaction and learning in the repeated prisoner's dilemma', Theory and Decision, vol. 47, p. 57–72, 1999.
* R Hoffmann, 'The ecology of cooperation', Theory and Decision, vol. 50, Issue 2. p. 101–118, 2001.
 
==External links==
* [httphttps://www.sfu.ca/crabe/ Centre for Adaptive Behaviour in Economics]
* [httphttps://wwwwww2.econ.iastate.edu/tesfatsi/getalife.htm Agent-Based Computational Economics and Artificial Life: A Brief Intro]
 
[[Category:EconometricsComputational economics]]
[[Category:Production economics]]
[[Category:Genetic algorithms]]
[[Category:Optimization algorithms and methods]]