Los algoritmos culturales (AC) son una rama de la computación evolutiva donde hay un componente de conocimiento que se llama espacio de creencias además del componente de población . En este sentido, los algoritmos culturales pueden verse como una extensión de un algoritmo genético convencional . Los algoritmos culturales fueron introducidos por Reynolds (ver referencias).
Espacio de creencias
El espacio de creencias de un algoritmo cultural se divide en distintas categorías. Estas categorías representan diferentes dominios de conocimiento que tiene la población del espacio de búsqueda .
El espacio de creencias se actualiza después de cada iteración por los mejores individuos de la población. Los mejores individuos se pueden seleccionar utilizando una función de aptitud que evalúa el desempeño de cada individuo en la población de manera muy similar a los algoritmos genéticos.
Lista de categorías de espacios de creencias
- Conocimiento normativo Una colección de rangos de valores deseables para los individuos en el componente de la población, por ejemplo, comportamiento aceptable para los agentes en la población.
- Conocimiento específico del dominio Se aplica información sobre el dominio del problema del algoritmo cultural.
- Conocimiento de la situación Ejemplos específicos de eventos importantes, por ejemplo, soluciones exitosas o no exitosas.
- Conocimiento temporal Historia del espacio de búsqueda, por ejemplo, los patrones temporales del proceso de búsqueda.
- Conocimiento espacial Información sobre la topografía del espacio de búsqueda
Población
El componente de población del algoritmo cultural es aproximadamente el mismo que el del algoritmo genético .
Protocolo de comunicación
Los algoritmos culturales requieren una interfaz entre la población y el espacio de creencias. Los mejores individuos de la población pueden actualizar el espacio de creencias a través de la función de actualización. Además, las categorías de conocimiento del espacio de creencias pueden afectar al componente de la población a través de la función de influencia. La función de influencia puede afectar a la población alterando el genoma o las acciones de los individuos.
Pseudocódigo para algoritmos culturales
- Inicializar el espacio de población (elegir población inicial )
- Inicializar el espacio de creencias (por ejemplo, establecer el conocimiento específico del dominio y los rangos de valores normativos)
- Repita hasta que se cumpla la condición de terminación
- Realizar acciones de los individuos en el espacio poblacional.
- Evalúe a cada individuo usando la función de aptitud
- Seleccionar a los padres para reproducir una nueva generación de descendientes
- Deje que el espacio de creencias altere el genoma de la descendencia utilizando la función de influencia
- Actualice el espacio de creencias utilizando la función de aceptación (esto se hace dejando que los mejores individuos afecten el espacio de creencias)
Aplicaciones
- Varios problemas de optimización
- Simulación social
- Optimización de parámetros reales [1]
Ver también
Referencias
- ^ M. Omran, Un algoritmo cultural novedoso para la optimización de parámetros reales. Revista Internacional de Matemáticas Informáticas, doi : 10.1080 / 00207160.2015.1067309 , 2015.
- Robert G. Reynolds, Ziad Kobti, Tim Kohler: Modelado basado en agentes del cambio cultural en enjambre utilizando algoritmos culturales
- RG Reynolds, “Introducción a los algoritmos culturales”, en Actas de la 3ª Conferencia anual sobre programación evolutiva, World Scienfific Publishing, págs. 131-139, 1994.
- Robert G. Reynolds, Bin Peng. Aprendizaje de conocimientos y enjambres sociales en sistemas culturales. Revista de Sociología Matemática. 29: 1-18, 2005
- Reynolds, RG y Ali, M. Z, "Incorporación de un componente de tejido social en el kit de herramientas de algoritmos culturales para una optimización mejorada de la ingeniería impulsada por el conocimiento", Revista Internacional de Computación Inteligente y Cibernética (IJICC), vol. 1, nº 4, págs. 356–378, 2008
- Reynolds, R G., y Ali, M Z., Explorando el conocimiento y los enjambres de población a través de un kit de herramientas de simulación de algoritmos culturales basados en agentes (CAT), en las actas del Congreso IEEE sobre Inteligencia Computacional 2007.