Un caso práctico sobre la automatización de diseños en Joyería

TerrainPlanetbajoGIF

En este artículo expondremos, a modo de ejemplo, un caso práctico donde se necesita a un diseñador de joyería generativa para producir gran cantidad de joyas únicas. Supongamos que, tirando de imaginación, la empresa de transporte aeroespacial SpaceX, que pretende empezar a colonizar Marte en 2024, quiere obsequiar a sus clientes con piezas de joyería inspiradas en esta trascendental expedición. Cada viaje puede transportar a cien personas y se necesitan muchos de estos viajes a Marte para su colonización, por tanto resulta en Gx100 modelos de joyas, siendo G la cantidad de viajes, y no saben cuantos van a ser. Son demasiadas piezas para diseñar y fabricar una a una, y además, necesitan tener los diseños antes de conocer a los clientes, por lo que deben de poder modificarse para ajustarlos a cada obsequiado. Supongamos también que cuentan con su propia tecnología de fabricación y que nos dan un volumen máximo por pieza, por lo que nosotros solo debemos preocuparnos por realizar los modelos. Estas demandas no suponen ningún problema para el modelado algorítmico con técnicas de customización en masa, como veremos a continuación. Ya adelanto que esto se puede hacer en menos de dos horas con las herramientas actuales, y más adelante será en muchísimo menos tiempo ya que también se automatizarán estos métodos de diseño.

No hay otra forma de afrontar este proyecto (económicamente hablando) que recurrir al modelado algorítmico. Los software CAD de modelado convencional solo permiten realizar pieza por pieza con la acción directa (sobre el modelo) del diseñador, en cambio los modeladores algorítmicos funcionan radicalmente distinto. En lugar de crear directamente el modelo, se crean las instrucciones (el algoritmo) que genera el modelo. Estas instrucciones son secuencias de subprocesos que están controlados por parámetros, valores numéricos (o cualquier tipo de dato) que determinan el resultado final generado por el algoritmo. Se podría decir que son análogos a una función matemática donde al cambiar las variables obtenemos distintos resultados. El software que usaremos en esta demostración es Grasshopper, plugin gratuito de modelado algorítmico de Rhinoceros, acompañado de extensiones para Grasshopper como Peacock, también gratuito, de joyería paramétrica y generativa, entre otros.

Quizás la solución más evidente para el concepto del diseño sea representar una de las grandes aspiraciones de colonizar Marte, que es la terraformación de Marte, es decir, hacerlo apto para la vida terrestre. Simular una superficie planetaria ha exigido cierta investigación que se ha llevado buena parte del tiempo de diseño, no obstante, podemos inspirarnos en juegos como Minecraft, que usan modificaciones de la función de ruido Perlin para generar los terrenos. Afortunadamente, Grasshopper cuenta con una extensión de esta función, la cual solo hubo que modificarla hasta alcanzar la apariencia deseada. Una vez encontrada la forma, podemos usar un gradiente de color para representar la terraformación en la dirección vertical de la pieza. Elegimos la pieza de anillo porque tiene una vinculación con lo que puede representar las manos: el trabajo y el esfuerzo, el compromiso, la concordia... en definitiva valores necesarios para la labor que atañe a los pioneros. No obstante, el algoritmo se empieza a diseñar teniendo en consideración que podrá ser aplicado a cualquier forma, desde pendientes a pulseras o cualquier superficie que diseñemos. De esta manera hacemos que la pieza sea un parámetro más del algoritmo, para que nuestro diseño se aplique a cualquier forma sin necesidad de repetir ningún proceso.

AutomatizaciónGIF

Tras comprobar que el algoritmo funciona como queremos, necesitamos prepararlo para su automatización. La técnica es sencilla, básicamente lo que hacemos es, al principio del algoritmo, hacer depender a los parámetros de un número iterador, de tal manera que al cambiar la iteración cambien los valores de los parámetros; y al final del algoritmo, guardar o almacenar el resultado obtenido, y si se desea, otros postprocesos como colocar la pieza adecuadamente para la impresión 3d o realizar un excandallo o registro de la pieza.

Entrando más en detalle, el iterador suele ser realizado usando un temporizador, que es una función dependiente del tiempo que va aumentando su valor, por ejemplo sumando 1 cada 1 milisegundo. En nuestro ejemplo hemos automatizado el valor de la talla del anillo haciendo que vaya de 15,92 mm de diámetro a 19,74 cada 10 iteraciones. Algún parámetro del ruido Perlin lo hemos modificado pseudo-aleatoriamente en cada iteración. Algunos otros cambian gradualmente y otros parámetros permanecen constantes. Por otro lado, hemos realizado un registro de cada pieza (también automáticamente) para tener organizada la producción en OpenOffice SpreadSheet, el equivalente libre del Excel, gracias a extensiones para Grasshopper que permiten comunicarnos con estos programas de manera paramétrica. Aprender a usar esta extensión también llevó un tiempo considerable, y de tener las herramientas específicas no lo hubiese necesitado. Esto es realmente útil para grandes producciones, porque podemos registrar los parámetros necesarios de cada pieza y si necesitamos por ejemplo, realizar el diseño número 32 pero con una talla de anillo distinta, solo tenemos que introducir esos valores al algoritmo, cambiarle la talla, y ya tenemos modificado ese diseño al gusto del cliente. También nos sirve para conocer cuales de toda la producción son más baratos (y quizás fabricar solo esos) ayudándonos del color de la celda. En nuestro caso no hemos integrado el cálculo de coste de producción al registro sino que empleamos el volumen de cada pieza, que será proporcional al coste, ni tampoco hemos añadido la imagen de cada pieza. A continuación tenemos el registro, donde Gº es el número de viaje, Nº es el identificador en la producción de cada viaje. Diameter es el diámetro del anillo (su talla), luego tenemos dos valores para el ancho, que son el ancho superior e inferior del anillo, y otros dos valores para el grosor máximo y mínimo. Después tenemos los demás parámetros del algoritmo que no influyen en la forma básica del anillo, sino del diseño que lo recubre, y por último tenemos el volumen de la pieza, donde el fondo verde significa menor volumen y azul significa mayor volumen, y por consiguiente, menor o mayor coste.

RegistroPNG

Pues bien, una vez implementada la automatización en el algoritmo, solo tenemos que darle a un botón para encenderlo y el ordenador irá generando por sí solo las variaciones. Cuando termina de ejecutarse el algoritmo produce un diseño, actualiza una fila en el registro, y después empieza a generar el siguiente diseño con otros parámetros. Como se aprecia en los gifs, todas son variaciones únicas pero similares en su conjunto. Para el siguiente viaje, solo necesitaremos cambiar un número (G) y volver a darle al botón para producir automáticamente otras 100 variaciones. Y, ¿cuánto tiempo tarda? Pues depende de lo que tarde en ejecutarse el algoritmo una vez. Si tarda 2 segundos, tomará poco más de 200 segundos en realizar 100 variaciones del diseño. Impresionante, ¿verdad? Pues mejora, porque este método de producción todavía no tiene herramientas específicas para realizarse, sino que he tenido que coger distintas herramientas y juntarlas para un mismo propósito. En siguientes versiones de Peacock habrá estas herramientas especialmente desarrolladas para esta técnica que harán todo este proceso mucho más rápido y sencillo, y especializado para joyería.

En conclusión, he necesitado menos de dos horas para diseñar todo el algoritmo (y será menos tiempo en el futuro con el plugin que desarrollamos en SEED llamado Peacock ), y unos pocos de esos minutos para crear toda la producción. Una vez hecho, podremos realizar cuantos lotes de 100 diseños queramos, en cualquier momento, solamente apretando un botón. Podemos modificar el diseño para adecuarlo al cliente de ser necesario y también podemos aplicar el diseño a otros tipos de piezas prácticamente sin coste. También podemos optimizar la producción eligiendo aquellas piezas con menor coste de fabricación y, sobretodo, hacer exclusiva cada pieza manteniendo las ventajas de producir en masa. Entonces, por la facilidad de llevarlas a cabo y por las evidentes ventajas de la customización en masa, es de esperar que este tipo de métodos tengan un gran impacto en el sector de la joyería.