Cultural algorithm

Cultural algorithms (CA) are a branch of evolutionary computation where there is a knowledge component that is called the belief space in addition to the population component. In this sense, cultural algorithms can be seen as an extension to a conventional genetic algorithm. Cultural algorithms were introduced by Reynolds (see references).

Belief space

The belief space of a cultural algorithm is divided into distinct categories. These categories represent different domains of knowledge that the population has of the search space.

The belief space is updated after each iteration by the best individuals of the population. The best individuals can be selected using a fitness function that assesses the performance of each individual in population much like in genetic algorithms.

List of belief space categories

  • Normative knowledge A collection of desirable value ranges for the individuals in the population component e.g. acceptable behavior for the agents in population.
  • Domain specific knowledge Information about the domain of the cultural algorithm problem is applied to.
  • Situational knowledge Specific examples of important events - e.g. successful/unsuccessful solutions
  • Temporal knowledge History of the search space - e.g. the temporal patterns of the search process
  • Spatial knowledge Information about the topography of the search space

Population

The population component of the cultural algorithm is approximately the same as that of the genetic algorithm.

Communication protocol

Cultural algorithms require an interface between the population and belief space. The best individuals of the population can update the belief space via the update function. Also, the knowledge categories of the belief space can affect the population component via the influence function. The influence function can affect population by altering the genome or the actions of the individuals.

Pseudocode for cultural algorithms

  1. Initialize population space (choose initial population)
  2. Initialize belief space (e.g. set domain specific knowledge and normative value-ranges)
  3. Repeat until termination condition is met
    1. Perform actions of the individuals in population space
    2. Evaluate each individual by using the fitness function
    3. Select the parents to reproduce a new generation of offspring
    4. Let the belief space alter the genome of the offspring by using the influence function
    5. Update the belief space by using the accept function (this is done by letting the best individuals to affect the belief space)

Applications

See also

References

  1. ^ M. Omran, A novel cultural algorithm for real-parameter optimization. International Journal of Computer Mathematics, doi:10.1080/00207160.2015.1067309, 2015.
  • Robert G. Reynolds, Ziad Kobti, Tim Kohler: Agent-Based Modeling of Cultural Change in Swarm Using Cultural Algorithms
  • R. G. Reynolds, “An Introduction to Cultural Algorithms, ” in Proceedings of the 3rd Annual Conference on Evolutionary Programming, World Scientific Publishing, pp 131–139, 1994.
  • Robert G. Reynolds, Bin Peng. Knowledge Learning and Social Swarms in Cultural Systems. Journal of Mathematical Sociology. 29:1-18, 2005
  • Reynolds, R. G., and Ali, M. Z, “Embedding a Social Fabric Component into Cultural Algorithms Toolkit for an Enhanced Knowledge-Driven Engineering Optimization”, International Journal of Intelligent Computing and Cybernetics (IJICC), Vol. 1, No 4, pp. 356–378, 2008
  • Reynolds, R G., and Ali, M Z., Exploring Knowledge and Population Swarms via an Agent-Based Cultural Algorithms Simulation Toolkit (CAT), in proceedings of IEEE Congress on Computational Intelligence 2007.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.