Codea Blog  

Blog Details

Optimización de procesos de fundición mediante algoritmos genéticos

INTRODUCCION

Los algoritmos genéticos son una técnica de optimización y búsqueda basada en la evolución natural. Están inspirados en la teoría de la evolución de Charles Darwin y se utilizan en problemas de búsqueda y optimización, especialmente en aquellos donde la búsqueda exhaustiva sería ineficiente o prácticamente imposible debido a la gran cantidad de posibles soluciones.

 

1.1 REPRESENTACION DE LOS INDIVIDUOS

En un AG los individuos son cadenas binarias(cromosomas), que representan a puntos x del espacio de búsqueda del problema.

 

    -Estos cromosomas representan al Genotipo

    -El valor que representan , es decir “x”, se le denomina como fenotipo

 

La sencillez de la representación binaria que utilizan los AG les aporta características muy importantes de eficiencia. La contrapartida es que es necesario disponer de un método para pasar de la representación binaria al espacio de búsqueda natural al problema.

 

Para la representación del individuo en forma binaria ( de ceros y unos) primero es necesario definir una longitud , la cual representa la longitud del cromosoma (es decir la cantidad de ceros y unos) . Para definir esta longitud lo hacemos mediante la definición de un rango de valores donde dentro de este se encuentre el valor de la variable la cual hará que la ecuación o el modelo matemático(adaptación) resulte en un valor optimo, por ejemplo.

 

Si la ecuación fuera la siguiente

 

 

Si creemos que el valor que deba tomar x para que f(x) (adaptación) de un valor óptimo se encuentre entre [0, 20] entonces podemos ver que cual es la longitud necesaria que tomara la representación binaria de 20 , en caso se considere a 20 como un numero fraccionario como 19.9 entonces seria necesario usar conceptos de coma flotante para convertir el numero fraccionario en binario .

 

 

1.2 GRADO DE ADAPTACION DE LOS INDIVIDUOS

La evolución de la población esta en función de la calidad de los individuos los cuales participaran en la operación de reproducción. Esta adaptación se relaciona con capacidad que tiene el individuo de solucionar un problema u optimizarlo.

 

A esta adaptación podemos comprenderla como f(x) y puede ser representada como una función matemática explicita , pero esto puede variar según el problema que se busque solucionar.

 

Del ejemplo teniendo representado X podemos evaluar en f(x) que es la función de adaptación y ver cual de todos se obtiene el valor mas alto para f(x) que es lo que buscamos en este ejemplo. Los X que cumplan esta condición se tomarían como padres para formar la siguiente generación.

 

1.3 CONDICION DE TERMINACION

Es necesario definir las condiciones para que e algoritmo deje de funcionar para el caso cuando ya se alcanzo el valor optimo que suele ser cuando X tiene el mismo valor entre todos de la población. Una condición de terminación puede ser determinar un numero de generación de evolución.

 

1.4 PROCESO DE SELECCIÓN

Para selección de individuos que muestren valores de adaptabilidad , podríamos usar muchas técnicas como

 

Donde cada X tenga su propio Pi (probabilidad de selección) en función a esta elegir según el criterio que establezcamos.

 

Otro método de selección puede ser por torneo donde se elije aleatoriamente 2 o 3 individuos y de estos elegir al individuo de mejor valor de adaptación

 

1.5 PROCESO DE REPRODUCCION

En cada nueva generación se crean algunos individuos que no estaban presentes en la población anterior. De esta forma el algoritmo genético va accediendo a nuevas regiones del espacio de búsqueda. Los nuevos individuos se crean aplicando ciertos “operadores genéticos” a individuos de la población anterior. Los operadores que suelen estar presentes en todo algoritmo genético son los operadores de cruce y mutación. El operador de cruce combina propiedades de dos individuos de la población anterior para crear nuevos individuos. El operador de mutación crea un nuevo individuo realizando algún tipo de alteración, usualmente pequeña, en un individuo de la población anterior. Estos operadores pueden adoptar formas muy distintas.

 

Una forma seria al ya tener definido los X padres , elegir según como se relaciona su valor con la de la adaptabilidad , es decir si X al ser menor resulta en una mejor adaptabilidad o caso contrario al ser mayor. Si por ejemplo si de dos números 3.5 y 19.5 que son valores de X , pasaran a la función de adaptabilidad , según cual ofreciera la mejor optimización para este se entendería que un valor menor para X seria el criterio que buscamos . Partiendo de esto podremos tomar como los primeros dígitos de 3.5 en forma binaria , y remplazarlo en la de otro padre . La parte donde se hará este remplazo se conoce como Punto de corte .

 

Esto generaría una nueva descendencia la cual en la siguiente iteración se vera como la nueva población. Para todos los valores X se mantendrá la longitud del cromosoma como constante donde al reducirse su valor en binario , estos espacios se representara ceros para así mantener la longitud del cromosoma constante.

 

El operador de mutación, se encargaría de cambiar un valor dentro de la cadena de bits que conforma al cromosoma

 

 

 

Esto según un criterio de probabilidad bastante pequeña para que se de una mutación , con esto se podría ayudar para que el algoritmo tenga diversidad de individuos y que la función de adaptación no se estanque en un mismo valor y logre converger al valor optimo

 

En muchos casos la mutación produce individuos con peor adaptación que los individuos originales, ya que la mutación puede romper las posibles correlaciones entre genes que se hayan formado con la evolución de la población. Sin embargo , contribuyen a mantener la diversidad de la población , que es fundamental para el buen funcionamiento del algoritmo.

 

1.6 PROCESO DE REMPLAZO

 

Normalmente los AG mantienen un tamaño de población constante. Para mantener el tamaño de la población, los nuevos individuos creados mediante los operadores genéticos deben reemplazar a otros de la población anterior. En función de la cantidad de individuos reemplazados en la población anterior se consideran distintos tipos de AG:

 

-AG generacionales : en estos algoritmos la población se renueva por completo de una generación a otra

-AG con estado estacionario: la descendencia de los individuos seleccionados en cada generación se  incluye en la población, reemplazando a algunos de los individuos de la población anterior. En este caso se conserva parte de la población de generación en generación .Para esto se pude seguir un criterio de probabilidad , por mejor adaptación o de adaptación similar .

 

 

ALGORITMOS GENETICOS EN PROCESOS DE FUNDICION

Algunas aplicaciones de Algoritmos Genéticos en procesos de fundición son:

-Reconocimiento del impacto considerable de los parámetros del proceso del método de fundición por compresión en la dureza de la superficie, la resistencia a la tracción y la rugosidad

-método de fundición continua para maximizar la calidad de la palanquilla de acero

-optimizar los parámetros responsables de la formación de porosidad en piezas fundidas de aleaciones Al-Si

-proceso de fundición en arena para optimizar la geometría del sistema de compuertas para maximizar la tasa de llenado

-optimizar los parámetros del proceso de fundición a presión para mejorar las propiedades mecánicas de las piezas fundidas

-para mejorar las variables relacionadas con la entrada

 

En el proceso de fundición se puede presentar malos resultados como es puede ser en la fundición a la cera perdida se enfrenta principalmente a problemas de calidad relacionados con la aparición de defectos que incluyen

 

-flash (exceso de metal que cae perpendicularmente sobre las superficies)

-mal funcionamiento (cavidades sin metal líquido en el molde)

-inclusión cerámica (atrapando las partículas de cerámica en la superficie o subsuperficie de piezas fundidas)

-inclusión de escoria (caída de una combinación de metal y materiales de revestimiento en la superficie de las piezas fundidas)

-contracción (pequeñas cavidades similares a una esponja en la última porción solidificada)

-sudoración (gota de metal irregular sobre las superficies de las piezas fundidas)

-distorsión (con respecto a la forma original de las piezas fundidas)

-grieta (la discontinuidad local se forma a partir de tensiones concentradas a través de solidificación).

 

Las piezas fundidas también poseen un mayor conjunto de propiedades mecánicas, como por ejemplo resistencia máxima a la tracción, límite elástico y alargamiento, parámetros del proceso, así como por la composición química de las aleaciones. Estos parámetros también varían en varios conjuntos. Es necesario identificar dichos parámetros y su conjunto específico de valores para lograr la calidad deseada en las piezas de fundición a la cera perdida. Una vez que se identifican estos parámetros, resulta relativamente fácil controlar y mejorar la calidad de las piezas fundidas

 

Se puede hacer uso de algoritmos genéticos para identificar dichos parámetros y su conjunto especifico de valores a partir de un conjunto de datos recopilados ya que AG se basa principalmente en información relacionada con datos de entrada y salida

 

Estos parámetros se utilizan aún más para el desarrollo de un modelo para realizar análisis utilizando GA. El modelo se desarrolla utilizando los fundamentos de la regresión lineal múltiple (este será nuestra función de adaptación)

 

 

 

2.1 ANALISIS MEDIANTE AG

El algoritmo genético es una técnica computacional que proporciona soluciones exactas o aproximadas, especialmente para la optimización y problemas relacionados con la búsqueda, y se clasifica como uno de los algoritmos evolutivos.

 

Generalmente se emplea AG para desarrollar expresiones (ecuaciones) para optimizar el proceso donde el número de variables es (similar al número de variables en el proceso de inversión) relativamente grande

 

Los AG generalmente adopta pasos iniciados para una población inicial a partir de datos de entrada; seleccionar la mayoría de las soluciones posibles mediante la evaluación utilizando función de adaptación ; reproducir los resultados; Finalice el proceso según los criterios deseados para obtener resultados optimizados

 

 

 

 

2.1.1 INICIALIZACIÓN

Este es el primer paso para la optimización del proceso utilizando AG y genera (aleatoriamente) muchas soluciones individuales a partir de los datos de entrada. Esto generalmente genera todas las soluciones posibles y es necesario proporcionar criterios de evaluación para seleccionar la solución más óptima adecuada para el proceso relevante.

 

2.3 SELECCIÓN

Este es uno de los pasos más críticos en la optimización del proceso utilizando AG. Este paso selecciona algunas soluciones entre todas las soluciones posibles (generadas en el paso de inicialización). La selección se lleva a cabo mediante un proceso basado en la aptitud que utiliza la función de aptitud que seleccionará la solución más adecuada para el siguiente paso. La selección del método apropiado para seleccionar una posible solución entre todas las soluciones posibles es muy crítica ya que una selección inadecuada puede tomar mucho tiempo para obtenerla.

 

Es posible que la solución no converjan para la solución final. Las soluciones seleccionadas se utilizarán aún más en el paso de reproducción que generará una segunda generación (mutación) de posibles soluciones a partir de ellas.

 

2.1.2 REPRODUCCION

Este paso generará una segunda generación de poblaciones a partir de soluciones preseleccionadas del paso anterior. Esto se logra seleccionando un par (generalmente conocido como padre) de soluciones de las posibles soluciones seleccionadas. A esto le sigue un proceso de cruce y mutación entre los padres para crear el siguiente nivel de solución (conocido como hijo). Este siguiente nivel de solución (secundario) generalmente tiene muchas características de su padre. El proceso de reproducción continúa hasta que se genera un nuevo conjunto de posibles soluciones. Esto, a su vez, conduce a la generación de un conjunto de soluciones completamente nuevo que se logró al final del paso de inicialización como función de aptitud .

 

El proceso de reproducción es un proceso continuo y debe finalizarse para lograr la solución deseada que cumpla con criterios predefinidos.

 

2.1.3 TERMINACION

La reproducción continua hasta que se alcanza cualquiera de los siguientes criterios de terminación. Terminación más común el criterio utilizado en la terminación del paso de reproducción es cualquiera de los siguientes

• Número de generaciones (es decir, iteraciones)

• Tiempo necesario para lograr la solución

• Máxima aptitud alcanzada más allá de la cual no es posible mejorar los resultados

• Inspección manual de resultados para observar mejoras en los resultados.

 

2.2 DATOS DE ENTRADA

Es necesario definir los datos de entrada para poder usarlo en la formula de regresión lineal multivariable .

 

 

 

Estos datos se utilizaron para generar múltiples ecuaciones lineales que se utilizarán en el paso de selección para análisis utilizando AG. Se genera una ecuación generalizada (ec2), y sus coeficientes relevantes para los datos relacionados con defectos y propiedades mecánicas

 

 

 

Donde :

yi :son las caracteristicas fisicas , quimicas o calidad como por ejemplo  Inclusión de escoria, Inclusión Cerámica, Resistencia última a la tracción ,etc

 

En total, tras pasar por el paso de selección se logra optimizar las soluciones. Estas soluciones se pasaron a través de la función de adaptación. Se emplearon diferentes de funciones de aptitud, cada uno para un conjunto separado de resultados. La función de aptitud podrá minimizar o maximizar según convenga el caso . Al final se podrá obtener unos valores óptimos como por ejemplo el siguiente cuadro

 

 

Los algoritmos genéticos resultan ser una herramienta útil para poder optimizar valores de una o varias variables , las cuales están involucradas en un proceso. Estos valores mejor adaptados logran optimizar el valor de una ecuación o modelo matemático , una forma de la cual puede tomar esta ecuación es la de regresión lineal multivariable con la cual se puede modelar distintos procesos . Dependiendo del tipo del proceso que se quiera optimizar , el algoritmo genético puede tomar diferentes formas en cuando a su modelamiento para el caso de la inicialización de la población puede darse de manera diferente que ser representada de forma binaria , todo depende del problema a solucionar.

 

Comentarios

Registrate o Inicia Sesión para comentar y obtener Cursos de pago gratis

function loadurl(){ var val1 = document.getElementById("valor3").value; console.log(val1); if(val1){ window.location = "/comunidad/blog/filtrar/"+val1+"/"} }