VENTAJAS, LIMITACIONES Y APLICACIONES DEL ALGORTIMO GENÉTICO Jersey Samanta Castro Espinosa Jersey Samanta Castro Espinosa, Estudiante de Ingeniería Industrial VIII Semestre, Corporación Universitaria del Meta, B13 Apto 402 Multifamiliares los Centauros, Vill avicencio, 318 514 9165,
[email protected].
INTRODUCCIÓN
LA IMPORTANCIA DEL ALGORTIMO GENÉTICO EN LA SOLUCIÓN DE
El algoritmo genético, al igual que las redes
PROBLEMAS1
neuronales, funciona como una caja negra que recibe ciertas entradas y produce (tras
Los Algoritmos genéticos son un método
una cantidad de tiempo indeterminada) las
para resolver problemas de d e optimización, por
salidas deseadas. Sin embargo, a diferencia
tanto nos ayudan a tomar una decisión a la
de éstas, los algoritmos genéticos no
hora de actuar. Gracias a la base matemática
necesitan entrenarse con ejemplos de ningún
de los Algoritmos genéticos obtenemos
tipo, sino que son capaces de generar sus
valores resolutivos que aportan luz a la
propios ejemplos y contraejemplos que
incógnita propuesta en una función.
guíen la evolución a partir de poblaciones iníciales totalmente aleatorias.
Lo interesante del mecanismo de los Algoritmos genéticos es que simula el
Las expectativas son que la aptitud media de
comportamiento de los seres vivos en su
la población se incrementará en cada ronda
proceso evolutivo.
y, por tanto, repitiendo este proceso cientos o miles de rondas, pueden descubrirse
Un algoritmo genético es una técnica de
soluciones muy buenas del problema.
programación que imita a la evolución biológica como estrategia para resolver 1
La Importancia del Algoritmo Genético en la Solución de Problemas. Disponible en: http://inteligenciaartificial http://inteligenciaartificial802.wikispaces.com/A 802.wikispaces.com/ALGORITMOS+G LGORITMOS+G ENETICOS
problemas. Dado un problema específico a
resulta ser un callejón sin salida, pueden
resolver, la entrada del algoritmo genético es
eliminarlo fácilmente y continuar el trabajo
un conjunto de soluciones potenciales a ese
en avenidas más prometedoras, dándoles una
problema, codificadas de alguna manera, y
mayor probabilidad en cada ejecución de
una métrica llamada función de aptitud que
encontrar la solución.
permite evaluar cuantitativamente a cada candidata. Estas candidatas pueden ser
Debido al paralelismo que les permite
soluciones que ya se sabe que funcionan, con
evaluar implícitamente muchos esquemas a
el objetivo de que el algoritmo genético las
la vez, los algoritmos genéticos funcionan
mejore,
particularmente bien resolviendo problemas
pero
se
suelen
generar
aleatoriamente.
cuyo espacio de soluciones potenciales es realmente grande demasiado vasto para
VENTAJAS DE LOS ALGORITMOS
hacer una búsqueda exhaustiva en un tiempo
GENETICOS
razonable. La mayoría de los problemas que caen en esta categoría se conocen como no
El primer y más importante punto es que los
lineales. En un problema lineal, la aptitud de
algoritmos genéticos son intrínsecamente
cada componente es independiente, por lo
paralelos. La mayoría de los otros algoritmos
que cualquier mejora en alguna parte dará
son en serie y sólo pueden explorar el
como resultado una mejora en el sistema
espacio de soluciones hacia una solución en
completo. No es necesario decir que hay
una dirección al mismo tiempo, y si la
pocos problemas como éste en la vida real.
solución que descubren resulta subóptima, no se puede hacer otra cosa que abandonar
La no linealidad es la norma, donde cambiar
todo el trabajo hecho y empezar de nuevo.
un componente puede tener efectos en
Sin embargo, ya que los algoritmos
cadena en todo el sistema, y donde cambios
genéticos tienen descendencia múltiple,
múltiples
pueden explorar el espacio de soluciones en
perjudiciales,
múltiples direcciones a la vez. Si un camino
conducir hacia mejoras en la aptitud mucho
que, en
individualmente, combinación
son pueden
mayores. 2
P. Brucker, S. Heitmann y J. Hurink, Scheduling of Trains on a Single-Track Railway-Line. Ventajas de los Algoritmos Genéticos, Facultad de Informática. Universidad Politécnica de Valencia. Curso 2003-04.
Otra ventaja notable de los algoritmos genéticos es que se desenvuelven bien en
problemas
con
un
paisaje
adaptativo
de manera inexacta, puede que el algoritmo
complejo -aquéllos en los que la función de
genético sea incapaz de encontrar una
aptitud es discontinua, ruidosa, cambia con
solución al problema, o puede acabar
el tiempo, o tiene muchos óptimos locales.
resolviendo el problema equivocado. Esta última situación se describe a veces como la
LIMITACIONES
DE
LOS
ALGORITMOS GENETICOS3
tendencia del algoritmo genético a engañar, aunque en realidad lo que está pasando es que el algoritmo genético está haciendo lo
Los algoritmos genéticos tienen ciertas
que se le pidió hacer, no lo que sus creadores
limitaciones; sin embargo, se demostrará que
pretendían que hiciera.
todas ellas pueden superarse y que ninguna de ellas afecta a la validez de la evolución
FUNCIONAMIENTO
biológica.
ALGORITMO GENÉTICO BÁSICO4
La primera y más importante consideración
Un algoritmo genético puede presentar
al crear un algoritmo genético es definir una
diversas variaciones, dependiendo de cómo
representación del problema. El lenguaje
se
utilizado
soluciones
(cruzamiento, mutación), de cómo se realiza
candidatas debe ser robusto; es decir, debe
la selección y de cómo se decide el
ser capaz de tolerar cambios aleatorios que
reemplazo de los individuos para formar la
no produzcan constantemente errores fatales
nueva
o resultados sin sentido.
pseudocódigo consiste de los siguientes
para
especificar
aplican
los
DE
operadores
población.
En
UN
genéticos
general,
el
pasos: El problema de cómo escribir la función de aptitud debe considerarse cuidadosamente
INICIALIZACIÓN:
Se
genera
para que se pueda alcanzar una mayor
aleatoriamente la población inicial, que
aptitud y verdaderamente signifique una
está constituida por un conjunto de
solución mejor para el problema dado. Si se
cromosomas los cuales representan las
elige mal una función de aptitud o se define
posibles soluciones del problema. pr oblema. En caso
3
Ninoska Maneiro, Limitaciones de los Algoritmos Algoritmos Geneticos, Tesis de Maestría. Facultad de Ingeniería. Universidad de Carabobo, 2001.
4
Ochoa García Sandra (2008). Funcionamiento de un Algoritmo Genético Básico. Instituto Politécnico Nacional Mexico D.F. Fecha de consulta: 8 de Setiembre 2013.
de
no
hacerlo
aleatoriamente,
es
construcción de horarios para el tráfico
importante garantizar que dentro de la
ferroviario. Hasta hace poco estas tareas se
población inicial, se tenga la diversidad
realizaban mayormente a mano. Durante los
estructural de estas soluciones para tener
últimos años los ordenadores han sido
una representación de la mayor parte de la
equipados para realizar el proceso de
población posible o al menos evitar la
construcción de los horarios usando bases de
convergencia prematura.
datos
EVALUACIÓN: A cada uno de los
interactivos.
apropiadas
y
sistemas
gráficos
cromosomas de esta población se aplicará
la función de aptitud para saber qué tan
Lo ideal sería construir un sistema capaz de
"buena" es la solución que se está
crear
codificando.
cualquier línea ferroviaria, pero esta es una
automáticamente
el
horario
de
El
tarea muy complicada, dada la gran
algoritmo genético se deberá detener
diversidad de trazados ferroviarios que nos
cuando se alcance la solución óptima,
podemos encontrar. Así que en vez de
pero ésta generalmente se desconoce, por
abordar la construcción de una herramienta
lo que se deben utilizar otros criterios de
general, la mayoría de los trabajos se centran
detención. Normalmente se usan dos
en buscar soluciones específicas para líneas
criterios: correr el algoritmo genético un
concretas que presentan una tipología
número
determinada.
CONDICIÓN
DE
máximo
TÉRMINO:
de
iteraciones
(generaciones) o detenerlo cuando no haya cambios en la población. APLICACIÓN
DE
TÉCNICAS
APLICACIONES
DE
LA
INTELIGENCIA
ARTIFICIAL
EN
PROBLEMAS DE PRODUCCIÓN6
EVOLUTIVAS A PROBLEMAS DE SCHEDULING FERROVIARIO5
Se considera que la producción en nuestros días puede estar muy apoyada en las nuevas
Una de las tareas más complicadas que las
tecnologías, como es la inteligencia artificial
compañías de ferrocarriles afrontan es la
6
5
Aplicación de Técnicas Evolutivas a Problemas de Scheduling Ferroviario, Bella Sanjuán, Antonio Valencia, septiembre 2004, PFC: II - DEIO - B - 01/03
Alejandro Vargas López, López, Aplicaciones de la Inteligencia Artificial en Problemas de Producción, Gestión del conocimiento. 01-2004 Disponible en: http://www.gestiopolis.com/r http://www.gestiopolis.com/recursos/documentos/f ecursos/documentos/fulldocs/ger1/apl ulldocs/ger1/aplii intarti.htm
ya sea como soporte para una toma de
mucho cuidado ya que hay que analizar los
decisiones más eficaz o en la ayuda de
diferentes impactos ya sean ambientales,
labores, tareas, que exijan gran demanda de
sociales, políticos y económicos.
tiempo o representen un alto grado de peligrosidad al ser humano.
Se han venido destacando otros paradigmas como lo son los agentes de decisión
Son muchos los estudios y aplicaciones que
inteligente y autómatas programables, con
se han logrado con el desarrollo de esta
respecto a estos últimos se suelen emplear en
ciencia , entre las cuales tenemos redes
gran medida en procesos industriales de
neuronales aplicadas al control de la calidad
acuerdo a necesidades a satisfacer como,
donde la red evalúa si determinado producto
espacio reducido, procesos de producción
cumple o no con las especificaciones
periódicamente
demandadas, control del proceso químico en
secuenciales,
el grado de acidez, algoritmos genéticos
variables, etc.
aplicados
al
problema
cuadrático
cambiantes, maquinaria
de
procesos procesos
de
asignación de facilidades que trata de la
APPLICATION
OF
ARTIFICIAL
asignación de N trabajos en M máquinas, los
INTELLIGENCE
IN
PRODUCTION
autómatas programables que se usan para la
SYSTEMS8
optimización de sistemas de producción, en fin, todavía queda mucho por descubrir con
La incorporación de agentes de decisión
respecto a las aplicaciones de esta ciencia.
inteligente,
redes
neuronales,
sistemas
expertos, algoritmos genéticos y autómatas TRENDS
OF
ARTIFICIAL
INTELLIGENCE SYSTEMS7
programables para optimización de sistemas de producción es una tendencia activa en el ambiente industrial de países con alto
Se determina que todos estos desarrollos
desarrollo tecnológico y con una gran
acortan bastante el proceso de decisiones y
inversión en investigación y desarrollo.
optimizan las mismas, pero ahí que tener
Dichos componentes de la Inteligencia Artificial tienen como función principal
7
Francisco Herrera Fernández Ph. D. Profesor del departamento de Control Automático Universidad Central de las Villas Santa Clara, Cuba. Trends Of Artificial Intelligence Systems. Pag 42 44
8
Marr D.C. Artificial Intelligence: a Personal View, Artificial Intelligence. EEUU 1977. Rolston W. David. Application Application Of Artificial Intelligence In Production Systems. Mc Graw Hill. México 1992.
controlar de manera independiente, y en
ANTECEDENTES
coordinación
GENÉTICO9
con
otros
agentes,
EN
EL
ARTE
componentes industriales tales como celdas de manufactura o ensamblaje, y operaciones
La naturaleza utiliza potentes medios para
de mantenimiento, entre otras.
impulsar la evolución satisfactoria de los organismos. Los organismos que son poco
Existe
una
tendencia
la
aptos para un determinado ambiente mueren,
de
en tanto que los que están bien adaptados
manufactura/ensamblaje más autónomos e
para vivir, se reproducen. Los hijos son
inteligentes, debido a las exigencias del
semejantes a sus padres, por lo que cada
mercado por obtener productos con niveles
nueva
muy altos de calidad; lo cual con
semejantes a los miembros bien dotados de
operaciones manuales se hace complicada y
la generación anterior." (Russel y Norvig,
hace que los países subdesarrollados como el
1996) Los algoritmos genéticos son una
nuestro no alcance niveles competitivos a
técnica de la Inteligencia Artificial, que
nivel mundial. Al diseñar un sistema de
simula el proceso evolutivo de los seres
producción integrado por computadora se
vivos y lo aplica a la búsqueda de soluciones
debe dar importancia a la supervisión,
y optimización, en la resolución de
planificación, secuenciación cooperación y
problemas.
implementación
de
creciente
a
sistemas
generación
tiene
organismos
ejecución de las tareas de operación en centros de trabajo, agregado al control de los
El
niveles de inventario y características de
computadora
calidad y confiabilidad del sistema. Los
genéticos. Genetic Images de Karl Sims, "es
factores
la
una instalación multimedia en la que los
estructura del sistema y su coordinación
visitantes pueden interactuar en el proceso
representa una de las funciones más
evolutivo de imágenes abstractas. Una
importantes en el manejo y control de la
supercomputadora
producción.
imágenes en 16 pantallas situadas en el
mencionados
determinan
arte
genético a
es
partir
genera
generado de
por
algoritmos
y
muestra
espacio en forma de arco. Los visitantes se paran sobre sensores frente a las imágenes 9 Macchi, Carlos.:2000, Antecedentes en el Arte Genético, Ars e verse, http://www.arseverse.com/ http://www.arseverse.com/
que les resultan de mayor belleza, y así
genes superaría los treinta, y la cantidad de
seleccionan las imágenes que sobrevivirán y
combinaciones posibles sería altísima, pero
se reproducirá en una nueva generación"
dado que no todas las variables representan
(Sims,1993). "Genetic Images, Particle
características que son perceptibles por sí
Dreams y Panspermia, obras de Karl Sims,
mismas, seguramente en la reproducción se
junto con The Process Of The Evolution de
perdería la herencia de las características
Will Lantham o Mutations de Yoichiro
percibidas de los progenitores. Y es que se
Kawaguchi" (Macchi, 2002), son obras de
puede distinguir entre las características
arte genético expuestas en el Centro Georges
constructivas y las perceptibles, es decir, las
Pompidou durante la Revue Virtuelle de
variables aisladas definen la forma en que se
1993.
construye el cuadro, pero para poder definir una característica perceptible, es necesario
LA COMPOSICIÓN DE LOS GENES
reunir varias de estas en un sólo gen.
¿De qué se componen los genes? Cuando trabajamos con Algoritmos Genéticos los
CONCLUSIONES
genes de los "sujetos" que cruzamos están compuestos de los valores de las variables
Los grandes avances de I.A aplicada a
que permiten construir al sujeto en cuestión.
sistemas de producción han hecho que día a
Es decir, los valores de las variables que
día la industria en su constante búsqueda por
caracterizan
cuando
mejorar su competitividad logren dicho
aplicamos Algoritmos Genéticos a un
objetivo, pero en muchos de los casos
fenómeno estético, como un cuadro con la
desplazar gran cantidad de mano de obra que
estética de Vasarely, es importante que los
llevan consigo un deterioro social que se ve
genes reflejen propiedades perceptibles. Los
reflejado en los indicadores globales de
cinco genes elegidos en nuestro ejemplo,
desempleo y niveles de pobreza.
al
sujeto.
Pero
responden a características que pueden ser "vistas". Para esto, fue necesario englobar
Los algoritmos genéticos son una técnica
varias variables en cada uno de los genes. Si
muy potente que permite simular ciertos
se hubiera hecho una asociación de un gen
aspectos de la reproducción de los seres
por variable, seguramente la cantidad de
vivos y aplicarla a diferentes problemáticas,
como es el caso del arte, nuestro objeto de discusión en el presente texto. A la hora de aplicar esta técnica a la producción estética, es importante tener en cuenta que el principal interés en su uso radica en la herencia de caracteres y que por tanto, dicha herencia debe ser notable (perceptible) ya que sino la técnica sólo funcionará como una configuración al azar. Si la aplicación de los algoritmos genéticos se dan sobre procesos generativos, como han sido los ejemplos expuestos, entonces es necesario extraer cuales son los parámetros que definen la configuración final del fenómeno y luego agrupar estos parámetros de forma que representen características perceptibles del fenómeno.
REFERENCIAS BIBLIOGRÁFICAS
Sanjuán, Antonio Valencia, septiembre 2004, PFC: II - DEIO - B - 01/03
[1] La Importancia del Algortimo Genético en la Solución de Problemas. Disponible en: http://inteligenciaartificial802.wikispaces.co m/ALGORITMOS+GENETICOS
[6] Alejandro Vargas López, Aplicaciones de la Inteligencia Artificial en Problemas de Producción, Gestión del conocimiento. 012004 Disponible en: http://www.gestiopolis.com/recursos/docum entos/fulldocs/ger1/apliintarti.htm
[2] P. Brucker, S. Heitmann y J. Hurink, Scheduling of Trains on a Single-Track Railway-Line. Ventajas de los Algoritmos Genéticos, Facultad de Informática. Universidad Politécnica de Valencia. Curso 2003-04. [3] Ninoska Maneiro, Limitaciones de los Algoritmos Geneticos, Tesis de Maestría. Facultad de Ingeniería. Universidad de Carabobo, 2001. [4] Ochoa García Sandra (2008). Funcionamiento de un Algoritmo Genético Básico. Instituto Politécnico Nacional Mexico D.F. Fecha de consulta: 8 de Setiembre 2013. [5] Aplicación de Técnicas Evolutivas a Problemas de Scheduling Ferroviario, Bella
[7] Francisco Herrera Fernández Ph. D. Profesor del departamento de Control Automático Universidad Central de las Villas Santa Clara, Cuba. Trends Of Artificial Intelligence Systems. Pag 42 - 44 [8] Marr D.C. Artificial Intelligence: a Personal View, Artificial Intelligence. EEUU 1977. Rolston W. David. Application Of Artificial Intelligence In Production Systems. Mc Graw Hill. México 1992. [9] Macchi, Carlos.:2000, Antecedentes en el Arte Genético, Ars e verse, http://www.arseverse.com/ [10] Russel Stuart y Norvig Norvig Peter.: 1996, La Composición de los Genes, Prentice Hall, México, pp. 653-654.