Planificación de una plataforma de productos usando algoritmos genéticos
Full text
En la actualidad las empresas desarrollan su actividad en mercados cada vez más exigentes, en los que se requiere una elevada competitividad combinada con una ajustada adecuación de los productos a las expectativas de los usuarios. Para conseguirlo buscan estrategias que permitan obtener los mejores resultados en el menor tiempo posible de lanzamiento al mercado. Dentro de estas estrategias se encuadra la optimización de plataformas de productos mediante algoritmos genéticos. La idea básica, inspirada en los procesos evolutivos de la biología, es que el contenido genético de una población contiene potencialmente la solución, o una solución mejor, a un problema dado de adaptación. Esta solución puede estar inactiva porque la combinación genética adecuada está diseminada entre varios sujetos, por tanto, la asociación de genomas distintos puede llevar a la activación de la solución. / Pablo Vázquez Jiménez. Ingeniero Técnico en Diseño Industrial / Juan R. Lama Ruiz. Profesor de la Escuela Politécnica Superior de Sevilla1 / Francisco Aguayo González. Profesor de la Escuela Politécnica Superior de Sevilla1 PLANIFICACIÓN DE UNA PLATAFORMA DE PRODUCTOS USANDO ALGORITMOS GENÉTICOS 36 Sevilla Técnica, número 39 formación innovación e 1. Miembros del Grupo de Investigación de Diseño Industrial e Ingeniería del Proyecto y la Innovación de la Universidad de Sevilla.
37 Sevilla Técnica, número 39 PLATAFORMA DE PRODUCTO En el presente artículo se expone una metodología para la aplicación de algoritmos genéticos al diseño de plataformas de producto y su aplicación a la configuración de una plataforma de bicicletas que deben satisfacer las especificaciones de varios segmentos de usuarios potenciales. Para ello se desarrollan una serie de etapas que van desde el estudio de las preferencias de los usuarios hasta la obtención de un conjunto de parámetros de diseño de componentes adecuados a los requisitos de cada usuario tipo, los cuales se someterán al algoritmo dando como resultado la mejor combinación entre ellos, consiguiendo que la plataforma sea lo más compacta posible. La demanda de productos personalizados y diversificados implica que las compañías de fabricación tengan que desarrollar una gran variedad de productos que garanticen la satisfacción del cliente. Para ello, las empresas se orientan a mejorar su competitividad mediante la búsqueda de formas de reducir el tiempo de desarrollo y los costes de fabricación, mientras al mismo tiempo ofrecen un conjunto de productos adecuados a las necesidades en muy diversos segmentos del mercado. Una forma de lograr este objetivo es implementar una estrategia basada en una plataforma de productos. Definiendo un producto como un conjunto de características, formas, materiales, componentes, se habla de familia de productos como un grupo de productos relacionados entre sí, que comparten algunas de estas características y que satisfacen una amplia variedad de mercado. Así, una plataforma de producto se define como un conjunto de subsistemas, componentes, procesos, interfaces, etc. Comunes, compartidos por todas las variantes de producto en una familia de producto [1, 2]. En este documento, será el conjunto de variables de diseño a través de las cuales una familia de productos puede ser desarrollada. Cuanto mayor sea la plataforma de producto mayor será la familia de productos que se puedan desarrollar por lo que se podrá atender un mayor segmento de mercado. El inconveniente que presenta es que la variedad de productos está más limitada debido al uso de elementos estándar. El objeto de este método es optimizar una plataforma de productos, en este caso obtener una plataforma de bicicletas, que presente la mayor uniformidad posible, es decir que tenga la mayor cantidad posible de parámetros comunes y que satisfaga a diversos segmentos de mercado. En este documento se va a centrar el esfuerzo a nivel de componentes, materiales y dimensiones del producto. Para conseguir el objetivo se propone una metodología que se sustenta en el empleo de algoritmos genéticos, en base a una analogía con los procesos de evolución que se dan en la naturaleza. La esencia de los mecanismos de evolución parte de una población, en la que algunos individuos son seleccionados para la reproducción, con más oportunidades formación innovación Figura 1. Descripción de Producto, Familia de Producto y Plataforma de Producto. Figura 2. Dilema que presenta el uso de Plataformas de Producto. Objetivos.
formación innovación e 38 Sevilla Técnica, número 39 para los mejor adaptados al ambiente. Durante la reproducción, los nuevos individuos de la población resultan de modificaciones e intercambios genéticos de sus antecesores. Una vez que se renueva la población, el proceso se repite. En los siguientes apartados se desarrolla con un mayor detalle la metodología propuesta. PROCESO DE OBTENCIÓN DE LA PLATAFORMA USANDO ALGORITMOS GENÉTICOS El proceso para la determinación de las características más adecuadas que debe poseer la plataforma de producto requiere de una serie de etapas, que parte de un estudio de las preferencias de los usuarios, para seguidamente determinar el conjunto de parámetros para cada componente de la plataforma que son adecuados a las especificaciones de cada usuario tipo, que representa un segmento del mercado, los cuales se someterán al algoritmo y obteniéndose de este modo la mejor combinación entre ellos, consiguiendo que la plataforma sea lo más compacta posible [3]. Análisis de mercado y búsqueda de la matriz de necesidades de usuario En este paso se establecen los distintos segmentos del mercado hacia los que se va a dirigir esta plataforma, así como las necesidades más valoradas por estos usuarios y los principales tipos de bicicletas más usadas. A partir de este análisis se definen tres conjuntos que contienen respectivamente a los usuarios, necesidades y bicicletas, expresados como vectores del tipo: U=[U1, U2, …, Un], N=[N1, N2, …, Nn] y B=[B1, B2, …, Bn]. Obteniéndose la Matriz de Necesidades de Usuario, como la combinación de los dos primeros vectores: N (Ui)= [Nk (Ui) | k=1, 2,…, m] Se introduce el vector de “tipos de bicicletas” para obtener una valoración de las necesidades en función del tipo de bicicleta que usan mediante la herramienta QFD Fuzzy, obteniendo así un resultado con menor incertidumbre [4]. TABLA 1. MATRIZ DE NECESIDADES DE USUARIOS RECORRER DISTANCIAS LARGAS NO SUPONER UN ESFUERZO FÍSICO ADAPTAR ESFUERZO A TIPODE TERRENO USAR OTRO TIPO DE TRASNPORTE PODER TRANSPORTAR OBJETOS PODER TRANSPORTAR PERSONAS MEJORAR CONDICIÓN FÍSICA Y DE SALUD PESAR POCO PERSONALIZABLE APARCAR GUARDAR ESTAR o SENTIRSE SEGURO RESPETAR EL MEDIO AMBIENTE ESTAR CÓMODO N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 Mujer menor de 8 años de edad U1 0,06 0,07 0,06 0,05 0,06 0,03 0,06 0,1 0,08 0,07 0,08 0,1 0,08 Mujer entre 8 y 18 años U2 0,07 0,03 0,07 0,07 0,04 0,04 0,08 0,09 0,09 0,09 0,09 0,09 0,09 Mujer entre 18 y 40 años U3 0,07 0,07 0,08 0,07 0,07 0,04 0,08 0,07 0,05 0,08 0,07 0,08 0,09 Mujer mayor de 40 años U4 0,07 0,07 0,07 0,07 0,07 0,06 0,07 0,08 0,07 0,07 0,07 0,08 0,08 Hombre menor de 8 años U5 0,06 0,09 0,09 0,03 0,06 0,04 0,08 0,08 0,1 0,08 0,06 0,06 0,09 Hombre entre 8 y 18 años U6 0,09 0,06 0,09 0,05 0,07 0,03 0,08 0,08 0,05 0,08 0,08 0,09 0,07 Hombre entre 18 y 40 años U7 0,08 0,06 0,08 0,05 0,06 0,04 0,09 0,08 0,07 0,07 0,06 0,09 0,08 Hombre mayor de 40 años U8 0,07 0,07 0,08 0,06 0,07 0,04 0,1 0,08 0,05 0,06 0,06 0,1 0,1
39 Sevilla Técnica, número 39 En la tabla 1 se muestran los resultados correspondientes a esta primera fase. Construcción del modelo formal del producto En esta etapa, se va a construir el modelo formal del producto, que lo compondrán sus elementos o componentes y sus posibles interacciones [5]. En primer lugar se hace un análisis funcional usando la metodología IDEF-0 [6]. Para determinar la arquitectura del producto en términos de componentes e interacciones, se realiza el estudio de un producto similar, una bicicleta en este caso. Para continuar se hace uso de matrices QFD que transmiten la importancia de las necesidades de los usuarios a las funciones del producto, y de las funciones a los componentes y para finalizar se hace uso de la Matriz de Estructura del Diseño o DSM para ver las interacciones físicas existentes entre los elementos que la componen [7, 8]. Uno de los resultados de esta etapa es el ranking de importancia obtenido por el encadenamiento de matrices QFD cuyo resultado para todos los grupos es similar al de la tabla 2. Como último paso de esta etapa, se identifican los parámetros de diseño que servirán para definir la plataforma. (ver tabla 3). Búsqueda de la matriz variable del producto La matriz variable del producto muestra las posibles variaciones que puede tener un producto para un deFigura 3. Componentes del Producto e Interacciones Físicas entre ellos. TABLA 2. RESULTADOS PARA EL ENCADENAMIENTO DE MATRICES QFD. MATRIZ QFD 1. Necesidades FRENTE A Requerimientos funcionales para G4: MATRIZ QFD 2. Requerimientos Funcionales FRENTE A Sistemas para G4: Funciones: 1. Transportar objetos/personas 2. Aumentar/Disminuir desgaste 3. Permitir Comodidad 4. Permitir seguridad 5. Desplazarse 6. Guardar la bicicleta 7. Aparcar la bicicleta 8. Frenar 9. Direccionar movimiento 10. Ser respetuoso con el Medio Ambiente Sistemas: 1. Sistema estructural 2. Sistema de dirección 3. Sistema de rodado 4. Sistema de transmisión 5. Sistema de cambio de velocidades 6. Sistema de frenado TABLA 3. PRINCIPALES VARIABLES DE DISEÑO PARA EL PROCESO DE PLATAFORMA Sistema Parámetros de Diseño Atributo CUADRO Dimensiones Pulgadas Material Tipo Peso Kg RUEDA Nº de radios Nº Anchura nominal de la llanta Pulgadas - mm Ø nominal de la Rueda Pulgadas - mm Sección nominal del neumático mm Peso kg MANILLAR Tipo de manillar Tipo Longitud del manillar mm CAMBIOS Nº de piñones Nº Nº de platos Nº ASIENTO Ángulo del sillín º Ø de la tija mm
formación innovación e 40 Sevilla Técnica, número 39 terminado segmento de usuarios. Para establecer la matriz variable del producto primero se establecen los posibles valores o rangos de variación admisibles de cada parámetro de diseño y, en función de la importancia asignada por los usuarios, el tipo de bicicleta que usan y la edad, se presenta una matriz con distintas variedades de producto para cada segmento de usuarios. En este caso particular se han desarrollado 8 Matrices de Variables de Diseño de Producto, una por cada grupo de usuarios, donde se recogen la importancia que dicho grupo da a cada una de las variables de diseño, los rangos de valores óptimos para cada variable, el ranking de bicicletas preferidas y por último, como combinación de todo lo anterior, las posibilidades de bicicletas que se pueden crear para cada grupo concreto. Se han usado tablas de una hoja de cálculo que facilite su creación y adaptación a las diferentes siPara establecer la matriz variable del producto primero se establecen los posibles valores o rangos de variación admisibles de cada parámetro de diseño y, en función de la importancia asignada por los usuarios, el tipo de bicicleta que usan y la edad TABLA 4. MATRIZ VARIABLE DEL PRODUCTO PARA UN DETERMINADO SEGMENTO DE USUARIOS MVP para U7 Dimensiones Material Nº de Radios Ancho N. de la Llanta Diámetro N. de la Rueda Tipo de Manillar Longitud del Manillar Nº de Piñones Nº de Platos Ángulo del Sillín Diámetro de la Tija Variables de Diseño x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 Bicicletas Rankin Pesos de VD para U7 0,109 0,115 0,0145 0,0778 0,144 0,076 0,074 0,137 0,137 0,074 0,038 Montaña 1 Rangos de Valores 20” Aluminio 32 15C 16 Plano 55,0 1 1 30º 27,2 Carrera 2 21” Carbono 36 17C 20 A dos alturas 57,5 3 2 45º 31,6 Paseo 3 22” - 40 21C 24 Paloma 60,0 5 3 75º - - - 48 23C - Ruta - 7 - 85º - - - - 25C - - - 8 - - - Variedades de Producto (G) G1 20 Aluminio 32 21 16 A dos alturas 55,0 5 3 45 27,2 G2 21 Aluminio 36 21 20 A dos alturas 55,0 5 3 75 27,2 G3 22 Aluminio 40 21 24 A dos alturas 55,0 5 3 75 27,2 … … … … … … … … … … … … G20 22 Aluminio 48 25 24 Paloma 60,0 5 3 85 27,2
41 Sevilla Técnica, número 39 tuaciones de diseño, de tal forma que el software que se empleará posteriormente para la aplicación de algoritmos genéticos pueda acceder fácilmente a los datos contenidos en las mismas. Obtener los cromosomas y la población inicial del producto Una vez que se han obtenido las Matrices Variables de Diseño de Productos siguiendo las indicaciones que se han incluido en el apartado anterior, se van a construir los cromosomas y la población inicial. Para construir una población inicial se debe seleccionar aleatoriamente una variedad de producto de cada grupo, un conjunto de parámetros que represente a cada segmento de usuarios. Una vez obtenida la población inicial se procede a obtener los cromosomas, donde estos serán los diferentes valores que pueda tomar cada variable de diseño en la población inicial. Evolución y búsqueda de la solución óptima En esta etapa del proceso se trata de encontrar los individuos mejor adaptados, los que van a sobrevivir por encima del resto, dado que su combinación genética será la más uniforme por lo que presentan una mayor uniformidad entre ellos [9]. Se trata de buscar el óptimo de una función tal que la aptitud de la plataforma sea la mayor posible, sujeta a los diferentes valores que pueden tomar las variables. A continuación se detalla el pseudocódigo que define un algoritmo genético: 1. [i] Elección de la población inicial. 2. [f(X)] Evaluación de aptitud para cada individuo de la población. 3. [?] Iterar este proceso hasta un criterio de parada. • 3a. [Se] Seleccionar los mejores individuos para la reproducción. • 3b.[Cr]&[Mu] Reproducir una nueva generación a través del CRUCE y/o MUTACIÓN (operadores genéticos) y dar a luz a la descendencia. • 3c. [f(X)] Evaluar la aptitud individual de la descendencia. • 3d. [Re] Remplazar el peor clasificado de la población con la descendencia. Figura 4. Cromosomas para las Variables de Diseño de Producto y para la Población Inicial Figura 5. Proceso de desarrollo de un Algoritmo Genético.
formación innovación e 42 Sevilla Técnica, número 39 Lo que se consigue con esta especificación es asegurar un sistema en el que sus individuos mejoren, iteración a iteración, de forma automática. La clave para conseguir un resultado adecuado en la aplicación de los algoritmos genéticos está en definir una buena codificación de la población y una función de aptitud o “fitness”, que se adecue a las necesidades del problema que se trate, para que prevalezcan los mejores individuos para la tarea dada. El valor de la aptitud de un cromosoma representa la calidad para ciertas variables de diseño. En este caso, cuanto mayor sea el valor de la aptitud, mayor será el índice de rango común o “commonality” de la plataforma de producto, y menor el coste para hacer la plataforma completa. Cada cromosoma es una matriz de n filas (donde n representa las variables de diseño) y S columnas (donde S representa los segmentos de usuarios). Donde Ni representa las distintas variables (parámetros) en una fila i. (Tabla 5). Cuando las variables en una cierta fila son todas idénticas, Ni sería 1 y la aptitud tendría el mayor valor. Por el contrario, cuando las variables son diferentes, Ni sería igual a S y la aptitud debería poseer el menor valor. La aptitud para las variables en cada columna debe ser expresada mediante, Donde Ni=1, la aptitud equivale a S; Donde Ni=S, la aptitud equivale a 1. Entonces, la aptitud para un cromosoma sería, Donde σi representa el peso para una cierta variable de diseño. El mayor valor del peso implicará que la variable es la más importante para los usuarios. A continuación se emplea un programa estándar de aplicación de algoritmo genético para desarrollar la evolución de los cromosomas obtenidos en la etapa anterior, que ha sido desarrollado mediante el lenguaje de programación Python para el procesamiento automático de la evolución de la población que representa la plataforma de producto. En concreto se ha usado el módulo PyEvolve, el cual constituye una plataforma de trabajo completa para la aplicación de algoritmos genéticos e incorpora las funciones necesarias para crear nuevas representaciones de cromosomas, operadores genéticos como el cruce, mutación y etc., también incorpora características como selectores tipo ruleta de la fortuna, torneo, ranking uniforme, o esquemas de escala como la escala lineal, etc. El algoritmo implementado utiliza cromosomas unidimensionales (1-D) que son inicializados a partir de la información correspondiente a las matrices variables de diseño y a los pesos dados por cada usuario a cada variable (contenidos en la hoja de cálculo anteriormente mencionada), realiza un número de combinaciones entre ellas hasta que se consigue una convergencia hasta un valor límite prefijado (para este caso se ha establecido en 10000) o hasta que el valor de la función de ajuste se encuentre dentro de un determinado margen, y calcula el valor de la función de aptitud para cada una de las combinaciones. Finalmente devuelve la información de la combinación cuyo valor de dicha función es más elevado, con el valor de la aptitud y a qué combinación de variantes de diseño pertenece. TABLA 5. REPRESENTACIÓN DE LOS CROMOSOMAS EN FUNCIÓN DE LOS GRUPOS DE USUARIO PARA LAS VARIABLES DE DISEÑO ÓPTIMO S1 S2 S3 S4 S5 S6 S7 S8 n1 Ni є {1, 2, …S} para i=1, 2,…n n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12
Establecimiento de la plataforma de producto De acuerdo a los cromosomas para las variables de diseño óptimas, la cual ha sido generada en la etapa anterior, siendo la que tiene un mayor valor para la función de aptitud, se obtiene la “Matriz Variable de Diseño Óptimo”. Las 8 filas de la matriz representan los grupos de usuarios, y las n columnas representan las n variables de diseño de producto. Se debe analizar el número de variables diferentes en cada columna. Si todas ellas son iguales, la variable de esta columna es la variable de plataforma en la plataforma de producto. Es decir será el elemento común en todas las variantes de producto, para todos los grupos de usuarios. Consecuentemente el resto de variables serán las variables individuales, cuyo rango de variación es el determinado por estos valores en la columna. Si no hubiera una columna con la misma variable, se podría encontrar la columna que tiene el menor número de variables diferentes y construir más de una plataforma de producto. El resultado de esta plataforma consta de los siguientes elementos para representar a los 8 grupos de usuarios distintos: 1. 4 tipos de cuadro, en atención a sus dimensiones. Estos serán de 16”, 17”, 19” y 20”. 2. 3 tipos de rueda, en atención al Ø de la rueda (16”, 20”, y 24”), el ancho de la llanta (15, 21 y25mm) y el nº de radios (32, 36 y 40 radios). 3. 3 tipos de manillar con distintas longitudes: Manillar a dos alturas (45, 52.5 y 55 mm), Manillar Plano (40 y 57.5mm) y Manillar de Ruta (40mm). 4. Dos tipos o formas de sillín: con 45º y 75º. 5. Dos tipos de tijas del sillín: 27.2 y31.6 mm. Como se puede ver en el resultado desarrollado en la figura anterior, para el desarrollo de 8 bicicletas enfocadas a 8 grupos de usuarios no ha sido necesario desarrollar 8 variantes de bicicleta completamente diferentes sino que se han aprovechado recursos entre ellas. Lo cual implica una reducción de variantes, para los cinco tipos de componentes considerados, de 40 a 14 componentes principales. CONCLUSIONES A partir de la aplicación expuesta se puede concluir que los algoritmos genéticos representan una metodología apropiada para la optimización de plataformas de productos, siendo su principal virtud la TABLA 6. SOLUCIÓN ÓPTIMA PARA LA PLATAFORMA DE PRODUCTO Variables de Diseño Dimensiones Material Nº de Radios Ancho N. de la Llanta Diámetro N. de la Rueda Tipo de Manillar Longitud del Manillar Nº de Piñones Nº de Platos Ángulo del Sillín Diámetro de la Tija Grupos de Usuarios x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 U1 16 Aluminio 36 21 16 A dos alturas 45 5 2 45 27,2 U2 17 Aluminio 36 21 16 A dos alturas 52,5 5 1 75 27,2 U3 20 Aluminio 36 21 24 Plano 57,5 7 3 45 31,6 U4 20 Aluminio 36 21 20 A dos alturas 55 5 1 75 27,2 U5 16 Aluminio 40 21 16 Plano 40 5 1 45 27,2 U6 19 Aluminio 40 25 16 Plano 57,5 7 3 45 27,2 U7 20 Aluminio 32 15 16 Ruta 40,0 7 3 45 27,2 U8 20 Aluminio 32 15 24 Ruta 40,0 7 3 45 27,2
formación innovación e 44 Sevilla Técnica, número 39 capacidad de encontrar combinaciones óptimas, o al menos mejoradas, de parámetros de diseño de los productos para garantizar un elevado índice de “commonalidad”, lo cual implica una mayor eficiencia en costes y tiempos de fabricación, pero sin perder la competitividad por adaptarse a los requisitos de todos los segmentos de usuarios potenciales. Por otro lado, sin llegar a ser un inconveniente, necesita un gran esfuerzo de análisis inicial para determinar todas las características y su correspondiente rango de variación para cumplir los requisitos de todos los usuarios, a la que hemos denominado Matriz Variable del Producto. é [1] De la Peña, B; Aguayo, F; Lama, J.R. Desing of Modular Plataforms Applications to a product family selected proccedings from the 19th International Congress on Project Enginieering. [2] Messac A., P. Martinez, M. and W. Simpson, T. 2002. Effective Product Family Design Using Physical Programming. Engineering of Optimization. 34. 245-261. [3] Haitao Song, Ying Zhang, Yunli, Song, Zikai Wang, Lu Zhen. Product Platform Planning: an approach using Genetic Algorithm. School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University. [4] Aguayo González, Francisco, Soltero Sánchez, Víctor M. Metodología del diseño industrial: un enfoque desde la Ingeniería Concurrente: Aguayo González, Francisco, Soltero Sánchez, Víctor M. [5] Karl T. Ulrich, Steven D. Eppinger. Establecimiento de la Arquitectura de Producto. Biblioteca Politécnica, Escuela Politécnica Superior, Universidad de Sevilla. [6] Federal Information Processing Standards Publications (FIPS PUBS). 1993. Integration Definition for Function Modeling (IDEF0). 1993 December 21. [7] Xu, Xiaogang, Li, Chao, Yan, Jia, Chen, Yahua. 2006. An analytical method based on design structure matrix for modular identification. En 7th International Conference on Computer-Aided Industrial Design and Conceptual Design, CAIDC, November 17, 2006 - November 19, 2006. [8] Eun Suk Suh. September 2005. Flexible Product Platforms. Engineering Systems Division. August 5, 2005. [9] Marcos Gestal Pose. Introducción a los Algoritmos Genéticos. Depto. Tecnologías de la Información y las Comunicaciones. Universidad da Coruña. BIBLIOGRAFÍA Figura 6. Resultados gráficos.