SciELO - Scientific Electronic Library Online

 
vol.6 issue11Phenotypic, productive and reproductive characterization of the white creole goat of the "Filo Mayor" from the Sierra Madre del Sur in GuerreroSimultaneous two-dimensional measurement by digital holographic interferometry using two lasers and a 3CCD camer author indexsubject indexsearch form
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • Have no similar articlesSimilars in SciELO

Share


Nova scientia

On-line version ISSN 2007-0705

Nova scientia vol.6 n.11 León Apr. 2014

 

Ciencias naturales e ingenierías

 

Síntesis Óptima de Mecanismos utilizando un EDA basado en la Distribución Normal

 

Optimal Synthesis of Mechanisms by using an EDA based on the Normal distribution

 

Ivvan Valdez1, Arturo Hernández Aguirre1, Salvador Botello1 y Eusebio E. Hernández-Martínez2

 

1 Centro de Investigación en Matemáticas, Guanajuato, Gto. E-mail: ivvan@cimat.mx.

2 SEPI-ESIME Ticomán, Instituto Politécnico Nacional, México D.F.

 

Recepción: 05-12-2012
Aceptación: 19-07-2013

 

Resumen

El problema de síntesis de mecanismos consiste en determinar las dimensiones de los eslabones a S fin de que éstos puedan completar una tarea, la cual es definida por el posicionamiento en un conjunto de puntos denominados puntos de precisión. En este trabajo se aborda este problema como un ejercicio de optimización, que minimiza la distancia entre la posición de un mecanismo propuesto y los puntos de precisión, tomando como variables de decisión las dimensiones del mecanismo, su sistema coordenado relativo y parámetros que determinan la velocidad del mismo y la posición inicial. La propuesta final es un algoritmo para el diseño automatizado de mecanismos que cumplan en lo mayor posible con la tarea deseada. Se utilizó un Algoritmo de Estimación de Distribución (EDA, por sus siglas en inglés), el cual aproxima el óptimo mediante muestreos subsecuentes de una distribución Normal multivariada, donde cada muestra representa una propuesta de un mecanismo. Después, se simula y se mide la diferencia entre los puntos de precisión y las posiciones del mecanismo propuesto, los mejores mecanismos se utilizan para actualizar la distribución de búsqueda en cada generación (iteración) del algoritmo hasta que converge a un punto de bajo costo de la función objetivo. Se utilizó el método propuesto para la síntesis automatizada de un mecanismo plano de 4 barras de cadena cinemática cerrada. Los resultados obtenidos son diseños óptimos aproximados, que superan a otros reportados en la literatura especializada. El método propuesto representa una alternativa eficaz para la síntesis automatizada de mecanismos. Los resultados son altamente competitivos con otros reportados en la literatura. La propuesta presenta además ventajas contra otras similares, en el sentido de que puede utilizarse para aproximar un número arbitrario de puntos de precisión, sin aumentar la dimensionalidad del problema, adicionalmente puede ser utilizado para la síntesis de otros mecanismos. Los resultados sugieren que los EDAs pueden utilizarse en este tipo de problemas de manera exitosa, por lo que a futuro se podría atacar problemas muchos más complejos, que involucren otras características deseadas como parámetros de control, o disminución de singularidades en sistemas de cadena cinemática cerrada.

Palabras clave: Síntesis de mecanismos, Técnicas evolutivas, Algoritmos de estimación de distribución, Optimización.

 

Abstract

The problem of synthesis of mechanisms is to find the adequate dimensions in the elements in order to perform a given task. The task is defined by a set of points named: precision points. The problem is defined as minimizing the distance among the precision points and the actual position of the mechanism, the decision variables are the elements dimensions, the position and rotation of the relative coordinate system and two parameters related with the initial position and velocity. The proposal of this work is an algorithm for automatized synthesis of mechanisms. We use an Estimation of Distribution Algorithm (EDA), to approximate the optimum, by sampling and estimating a Normal multivariate probability distribution. Each sample is a candidate solution (a candidate mechanism), then we measure the difference between the precision points and the actual positions of the mechanism, the best candidate solutions are used to update the probability distribution, and the process is repeated until convergence is reached. We apply the proposed method for the synthesis of a Four-bar planar mechanism with closed chain. The obtained results are near-optimal designs that are better than others reported in the literature. The proposed method is a competitive alternative for the automatized synthesis of mechanism. We obtain high quality results when compare our approach with other reported in the literature. Additionally, the proposal presents other interesting features: the number of precision points can be increased without the need of increasing the dimension of the search space, in addition, the algorithm can be used for optimizing any mechanism. The results suggest that EDAs can successfully approach this kind of problems, hence, future work contemplate to use the same strategy for tackling more complex problems, possibly involving control parameters, or intending to design singularity-free closed kinematic chains.

Keywords: Synthesis of mechanisms, Evolutionary techniques, Estimation for distribution algorithms, optimization.

 

Introducción:

La síntesis de mecanismos es el proceso inverso del análisis de mecanismos, consiste en conocer las dimensiones y disposición de los elementos del mecanismo con los cuales se logrará el movimiento predeterminado de un punto o de un conjunto de puntos. Esta tarea puede ser vista como un problema de optimización, desde un punto de vista físico y matemático la modelación no resulta sencilla, ya que pueden intervenir factores relativos al costo, cobertura del espacio de trabajo, singularidades, aceleraciones, velocidades y posiciones deseadas, entre otras. La modelación se puede hacer, entonces, como un problema multi-objetivo con restricciones o como mono-objetivo integrando todos los factores de forma ponderada en una sola función, intentando que el óptimo de la función ponderada cumpla con los requerimientos de diseño. Se han desarrollado diversos métodos para la síntesis de mecanismos, desde los métodos gráficos y analíticos propuestos por Hrones y Nelson (1951), Freudenstein, (1954), Sandor (1959), Hartenberg y Denavit (1964), la matriz de aproximaciones de Suh y Radcliffe (1967), los mínimos cuadrados de Levitskii y Shakvazian, (1960), hasta un modelo matemático y de simulación propuestos por Mallik et al., (1994) y Tzong-Mou y Chao-Kuang, (2005), respectivamente. En estas propuestas, se cubre en general con los requerimientos de diseño de los mecanismos, sin embargo tienen el inconveniente de que se restringe el número de puntos de posición para permitir la solución por los modelos propuestos.

En contraparte, y para abordar estos inconvenientes, se han diseñado métodos para considerar la síntesis de múltiples puntos de precisión y posición, con técnicas como la optimización no lineal o la optimización del proceso de sintetizado como el propuesto por Sancibrian et al., (2004), las redes neuronales de Walczak (2006), Vasiliu y Yannou (2001), Starosta (2008), los métodos de Monte Carlo por Kalnas y Kota (2001), o el método de desviación de control propuesto por Bulatovic y Djordjevic (2004), la mayoría de estos trabajos están relacionados con la generación de trayectorias y de posición para mecanismos de cuatro barras. Sin embargo, estos métodos requieren de una elevada capacidad de cálculo y pueden fallar al no entregar una solución global del problema de optimización, realizando sólo una búsqueda local. Para el caso específico de los métodos basados en redes neuronales, las principales desventajas son el entrenamiento, prueba y validación, que de acuerdo con el conocimiento de expertos en esta área, puede demandar una gran cantidad de información para el proceso de aprendizaje, y no ser interpretable físicamente.

Durante las últimas dos décadas, nuevas técnicas de optimización han comenzado a ser usadas para abordar los campos abiertos a la investigación dentro del área de los mecanismos y la robótica en general, los llamados algoritmos evolutivos. Estas técnicas definen una población inicial que es mejorada por aproximaciones a la función objetivo haciendo uso de la selección natural y las leyes de la genética. La principal ventaja de estos métodos es la simplicidad de su implantación, la facilidad con la que se pueden apegar a diversos modelos por las pocas exigencias del mismo, por ejemplo: no se requiere de un conocimiento a priori del espacio de búsqueda, no afecta si éste o la región factible es continuo o no, los mínimos locales u otras características que deben tomarse en cuenta con los algoritmos de optimización tradicionales no restringen la aplicabilidad de los algoritmos evolutivos.

El trabajo presentado aquí aborda la síntesis de mecanismos con técnicas de optimización evolutivas. Para tratar con este problema, se propone el uso de un algoritmo de estimación de distribución, (Larrañaga y Lozano, 2001). Los EDAs son algoritmos evolutivos que han mostrado una gran capacidad para la solución de problemas no convexos, que evitan los mínimos locales, no requieren de información de derivadas y bajo ciertas condiciones convergen al óptimo global, (Zhang y Muhlenbein, 2004). Los EDAs se derivaron del modelado probabilístico de los algoritmos genéticos (GAs, por sus siglas en inglés), y se ha mostrado que son más eficientes que los GAs cuando la correlación de las variables es un factor importante para el proceso de optimización, (Pelikan et al., 1999).

En la síntesis de mecanismos es obvio que los elementos del mismo están altamente correlacionados, es decir, los elementos del mecanismo tienen que ser variados o perturbados de manera conjunta para lograr el diseño óptimo. Debido a esto, se espera que el EDA obtenga resultados de bajo costo y sea, al menos, competitivo con otras estrategias de optimización en el estado del arte.

Con respecto a la síntesis de mecanismos, ya se han presentado algunas propuestas con algoritmos genéticos, entre ellos se encuentran las de Fang (1994), Roston y Sturges (1996), Kunjur y Krishnamurty (1997), Cabrera et al. (2002), Laribi et al. (2004), Quintero et al. (2004), Cabrera et al., (2007), y Marcelin (2010), con diferentes grados de éxito.

En este trabajo se propone un método para la síntesis de trayectoria de un mecanismo plano de cuatro eslabones utilizando un algoritmo de estimación de distribución, que utiliza como distribución de búsqueda una distribución Normal multivariada. La aplicación de este método se puede extender a cualquier otro tipo de síntesis de mecanismos, llamémosle la síntesis de generación de función o la síntesis de generación de movimiento. En esta propuesta puede aplicarse a 2 tipos de síntesis: 1) síntesis de un mecanismo que sea capaz de posicionarse en ciertos puntos del espacio de trabajo. Con este tipo de síntesis comparamos nuestra propuesta con otras similares y clásicas, a forma de validar que nuestro algoritmo es capaz de encontrar iguales o mejores resultados que otros trabajos de la literatura. 2) síntesis de un mecanismo que no solo pasa por ciertos puntos de una trayectoria dada, además, sigue la trayectoria a una velocidad prescrita, pudiendo atacar problemas con una discretización de la trayectoria en un número arbitrario de puntos.

El artículo tiene la siguiente organización: en la Sección 2 se presenta el planteamiento del problema, las preliminares sobre el mismo, y se detalla la función objetivo, en la Sección 3 presentamos el algoritmo de estimación de distribución utilizado para la síntesis óptima del mecanismo. La Sección 4 muestra los resultados obtenidos con nuestro método. La sección 5 discute los resultados, y finalmente en la Sección 6 se presentan las conclusiones generales y las perspectivas de trabajo futuro.

 

Preliminares y planteamiento del problema

El mecanismo plano tradicional de cuatro eslabones se muestra en la Figura 1, adaptada de Cabrera et al. (2002). El problema básico de la síntesis del mecanismo plano de cuatro eslabones consiste en aproximar el órgano terminal a un conjunto de puntos (denominados puntos de precisión). El órgano terminal está marcado con la letra C en la Figura 1.

El objetivo es que el órgano terminal C pase o se aproxime lo más posible cada uno de los puntos de precisión. El par motriz es el relativo a θ2, dado este valor, la longitud de los eslabones r2,r3,r4,rcx,rcy, las coordenadas x0, y0 y rotación θ0 del origen del sistema de coordenadas relativas, es posible determinar las coordenadas del punto C, denominaremos estas coordenadas como C=[Cxi,Cyi], para i=l,2,...,n, siendo n el número de puntos de precisión que se desea aproximar.

Las coordenadas del punto C en el sistema de coordenadas relativas pueden ser determinada a partir de las suma de r2, rcx y rcy:

Podemos escribir cada una de las componentes vectoriales como sigue:

Dadas las Ecuaciones (2) y (3) es necesario conocer el ángulo θ3 para calcular las coordenadas del punto terminal, para esto utilizamos la ecuación del lazo del mecanismo:

También puede ser expresada en sus componentes de acuerdo al sistema de coordenadas relativas:

Con las ecuaciones anteriores podemos eliminar θ4, resultando en:

Donde k1 = r1/r2, k2 = r1/r2 y k3 = (r42-r12-r22-r32)/(2r2r3). La Ecuación (7) tiene las soluciones:

Para a=cos (θ2)-k1 + k2 cos(θ2), b=-2 sin (θ2) y c=k1+(k2-1)cos(θ2) +k3.

Las soluciones para θ3 pueden ser: reales iguales, reales diferentes o complejas conjugadas. En el último caso simplemente significa que los eslabones no pueden conectarse. Excepto que en ese caso siempre existen dos valores diferentes de θ3, el que se obtiene con el signo positivo del radical se le denomina configuración cruzada, y al que se obtiene con el signo negativo se le denomina configuración abierta, o lazo de dos circuitos. Dadas las ecuaciones anteriores, se pueden calcular las coordenadas del punto C en el sistema universal coordenado de la siguiente manera:

Error de posición

El error de posición es la función objetivo más natural. Y puede ser simplemente medido como la distancia del punto calculado al punto deseado en la trayectoria. El error de posición se presenta en la Ecuación (11).

donde n representa el número de puntos de precisión y X el vector de variables, en este caso:

x1 = θ0, ángulo del sistema coordenado relativo.

x2 = θ2, ángulo θ2 inicial.

x3 = r1, longitud del eslabón uno.

x4 = r2, longitud del eslabón dos.

x5 = r3, longitud del eslabón tres.

x6 = r4, longitud del eslabón cuatro.

x7 = rcx, longitud de elemento.

x8 = rcy, longitud de elemento.

x9 = dθ, constante de avance en el ángulo θ.

x10 = x0 traslación del sistema de coordenadas relativas en x.

x11 = y0, traslación del sistema de coordenadas relativas en y.

Algunos autores, como por ejemplo (Cabrera et al., 2002), consideran un conjunto de ángulos θi2 como entrada, este esquema es más complejo ya que aumenta la dimensionalidad del espacio de búsqueda, puesto que cada ángulo de entrada θi2 es un parámetro a optimizar. En contraste en este trabajo se propone utilizar un ángulo inicial θ02, un tamaño de paso dθ y el número de puntos de precisión n. Esta información es suficiente para calcular θ2 trayectorias con un número de puntos arbitrariamente largo (con una n arbitraria), sin incrementar la dimensionalidad del espacio de búsqueda o número de parámetros a optimizar, ya que para cualquier n, solo se requiere encontrar θ02 y dθ óptimos. Adicionalmente, note que d0 puede representar el avance por unidad de tiempo de θ2 lo que hace que sea un parámetro de velocidad. Es decir, nuestra propuesta puede ser utilizada tanto para aproximar puntos de precisión arbitrarios que describan una trayectoria o espacio de trabajo, como para aproximar una trayectoria y velocidad deseada en el órgano terminal, bajo la estrategia de proponer una velocidad constante óptima dθ* en el par motriz. Dado lo anterior, existen dos formas de calcular la función objetivo:

1) En donde los índices i de la Ecuación 11 pertenecen a un orden de los números naturales entre 1 y n: i € {1..n}, siendo n el número de puntos de precisión, y el ángulo θi2 = 0O2+(i-1) dθ. Por ejemplo, si n=6, un posible orden es [4, 3, 2, 5, 6, 1]. Lo que quiere decir, que se le requiere al mecanismo que aproxime los puntos de precisión sin ningún orden en particular. Note que el orden que da la mejor aproximación puede ser encontrado por búsqueda exhaustiva con un número de operaciones de orden n2.

2) Donde i está definido siempre por el orden particular: [1, 2, 3,...,n]. Lo que quiere decir que se aproxima una trayectoria y velocidad definida por la secuencia de ángulos θi2 = θ02 + (i-1) dθ, incrementando i cada que transcurre una unidad de tiempo.

Restricciones

En la siguiente sección se describe a detalle el manejo de restricciones por parte del algoritmo de estimación de distribución, en esta subsección solo definiremos las restricciones consideradas:

1) Límites de las variables. -0.5πθi20.5π, θθ022π, θr1,r2,r3,r4,rcx,rcy2C*, donde C* es un parámetro relacionado con la escala de las coordenadas de la trayectoria deseada, 00.5, -C*x0, y0 ≤ C*. Obviamente estos límites pueden variar de acuerdo al problema, sin embargo, para los experimentos mostrados en este trabajo sólo variamos el valor de C*, y calculando todos los demás límites como se describe arriba.

2) Condición de Grashof. Para asegurar la movilidad adecuada del mecanismo se debe de cumplir la condición de Grashof. Para este trabajo la escribimos de la misma forma que Cabrera et al. (2002): (r1 +r2 < r3 + r4) donde (r2 < r3 < r4 < n).

3) Condición de conectividad de los elementos. El mecanismo es factible si la Ecuación 8 tiene soluciones reales y es no factible si tiene soluciones complejas conjugadas.

 

Método: Algoritmo de Estimación de Distribución

Los algoritmos de estimación de distribución (EDAs) fueron derivados del modelado probabilístico de los algoritmos genéticos, en los cuales se sustituyeron los operadores de cruza y mutación por la estimación y muestreo de una distribución de probabilidad, (Larrañaga y Lozano, 2001). Los pasos básicos del algoritmo son: generar una población inicial, generalmente aleatoria uniforme, evaluar la población en la función objetivo, seleccionar un subconjunto de las mejores soluciones, y estimar los parámetros de una distribución utilizando el conjunto seleccionado, tomar muestras de la nueva distribución y repetir. Una de las grandes ventajas de los algoritmos de estimación de distribución es la posibilidad de codificar explícitamente dependencias entre las variables, dentro de la distribución de búsqueda.

El algoritmo que se presenta en este trabajo es similar al Estimation of Multivariate Normal Distribution (EMNA) de Larrañaga y Lozano (2001). Debido a las bondades de este tipo de algoritmo tales como la simplicidad, bajo costo computacional del muestreo y estimación de los parámetros (usualmente por máxima verosimilitud), así como resultados prometedores en un conjunto problemas, existe una variedad de propuestas de algoritmos similares que utilizan una distribución Normal multivariada como distribución de búsqueda (Dong y Yao, 2008), (Grahl et al., 2006). Sin embargo, trabajos recientes reportan que los EDAs sufren de convergencia prematura (Handa, 2007), (Shapiro, 2006), (Dong y Yao, 2002), varios de estos trabajos están totalmente avocados a los EDAs basados en la Normal multivariada, tales como Grahl et al. (2007), Bosman et al. (2007), Cai et al. (2007), Yuan y Gallagher (2005); debido a una tendencia natural a reducir la varianza más rápido de lo necesario. En consideración de lo anterior, los investigadores del área se han dedicado a proponer algoritmos que mantienen una varianza más adecuada para evitar la convergencia prematura. Para el trabajo actual utilizamos una versión modificada del EDA basado en la Normal multivariada que utiliza la selección de potencial (potential selection) de Valdez et al. (2012), el cual se muestra en la Tabla 1. Los pasos que se detallan a continuación son para la maximización de una función, debido a que simplifica los cálculos, esto no representa mayor problema si se considera que minimizar f(x) equivale a maximizar -f(x).

Aunque el algoritmo de la Tabla 1 presenta como valores de entrada el tamaño de la población, una varianza mínima y un máximo número de generaciones, el lector debe de considerar que el único parámetro real es el tamaño de la población, la mínima varianza sirve para compararla contra la norma de la matriz de covarianza, el cual es un parámetro suficientemente pequeño (1e-7 para todos nuestros experimentos), que determina si el algoritmo ha convergido y la mejor solución difícilmente mejorará, ya que la exploración se encuentra dentro de una vecindad muy pequeña, adicionalmente se utiliza el número de generaciones para detener el algoritmo.

En este trabajo proponemos una forma de muestreo que asegura que todos los individuos en la población son factibles, es decir que cumplen con las restricciones mencionadas en la sección anterior. La forma de realizar la evaluación y los pasos del EDA se detallan a continuación.

Pasos 1 y 6. Generar y evaluar la población inicial X0

La evaluación de la función objetivo dentro del algoritmo se realiza de la siguiente forma:

Por lo tanto un valor de 1e100 indica que la solución candidata no es factible. La población se genera de acuerdo con el algoritmo en la Tabla 2.

La población inicial se genera utilizando una distribución uniforme dentro de los límites definidos para cada variable. Sin embargo, a diferencia de los EDAs convencionales y la base del que aquí se presenta, (Valdez et al., 2012), en esta propuesta aseguramos que todas las soluciones utilizadas en el aprendizaje son factibles. El EDA intenta aprender cuales son los valores W. adecuados de cada variable y codifica este aprendizaje en una distribución de probabilidad. Note que si se utilizaran soluciones no factibles en el aprendizaje, la calidad final de la aproximación sería menor, y el algoritmo convergería más lento debido a que se estaría aprendiendo de valores de soluciones que no tienen significado físico. El paso seis se realiza exactamente del mismo modo, solo considerando que la muestra es tomada de una Normal multivariada con un vector de medias μ y una matriz de covarianza ∑. La manera de calcular estos parámetros se especifica más adelante.

Pasos 2 y 3. Inicializar el umbral T0 y la mejor solución encontrada xmejor, fmejor

El umbral Tt se utiliza para seleccionar un subconjunto de las mejores soluciones. Las soluciones cuya función objetivo son mayores que Tt, son seleccionadas y utilizadas, junto con su valor de potencial, para el cálculo de los parámetros de la distribución de probabilidad. El umbral inicial To toma el peor valor de función objetivo obtenido en la primera generación, considerando solamente soluciones factibles generadas de acuerdo con la subsección anterior. El paso 3 como ya se mencionó solo consiste en seleccionar las soluciones con valor de función objetivo mayor o igual al umbral (para maximización).

Paso 4. Calcular el potencial sobre las soluciones seleccionadas

La función de potencial definida en Valdez et al. (2012), se utiliza para mantener una varianza adecuada en el proceso de búsqueda, como se mencionó el EDA estándar basado en la Normal multivariada (como el EMNA), sufre de convergencia prematura. Debido a esto existen un número importante de algoritmos modificados que intentan mantener una varianza adecuada. La estrategia de utilizar la función de potencial se basa en un método de estimadores pesados, utilizados previamente por Valdez et al. (2010) y Teytaud y Teytaud (2009). En Valdez et al. (2012) se presenta una segunda propuesta, en la cual los pesos calculados ayudan a preservar una varianza adecuada durante la búsqueda, esto mejora evidentemente las aproximaciones del óptimo para una variedad de problemas con respecto de otros métodos similares. Dada una solución xi en el conjunto seleccionado el potencial para esta solución está dada por la siguiente ecuación:

para i en el conjunto seleccionado. Donde:

el potencial de la Ecuación (12), es un valor normalizado que suma 1, al igual que una distribución discreta de probabilidad y se puede interpretar como tal. Antes de normalizar, en la Ecuación (13), el potencial es el máximo entre los valores pd y pf, que se calculan para cada individuo en el conjunto seleccionado de acuerdo con las Ecuaciones (14) y (15). La Ecuación (14) devuelve un valor entre 0 y 1 para cada individuo de acuerdo a la distancia Euclidiana entre éste y la mejor solución encontrada xmejor, la distancia se calcula con la Ecuación (16). Finalmente, pf es la función objetivo normalizada entre 0 y 1. Es importante considerar lo siguiente:

a) Los individuos utilizados en el cálculo del potencial y posteriormente en el cálculo de los parámetros de la distribución son solo los que son mejores que el umbral Tt por lo que se puede considerar que representan la mejor región del espacio de búsqueda.

b) El potencial antes de normalizar (Ecuación 13) devuelve 1 para el mejor individuo xbest y para el individuo más alejado del mejor (el más alejado con función objetivo arriba del umbral).

c) Por lo tanto, la selección de potencial se puede ver como una distribución apriori que confiere mayor probabilidad al mejor individuo, pero también a individuos muy alejados del mejor que tienen un valor de función objetivo suficientemente alto, lo que mantiene la varianza lo suficientemente grande como para cubrir la mejor región.

 

Estimar los parámetros de la matriz de covarianza y fijar la media de la distribución de búsqueda Qt

La distribución de búsqueda Qt(μ,∑) utilizada para generar nuevas soluciones candidatas es una Normal multivariada con vector de medias μ y matriz de covarianza ∑, al vector de medias simplemente se le asigna la mejor solución encontrada μ=xmejor, esto indica que se le confiere la mayor probabilidad a la vecindad de xmejor. Para la matriz de covarianza se utiliza la siguiente ecuación:

Donde Is representa el conjunto de los índices del conjunto seleccionado (individuos con funciones arriba del umbral). El índice k corre sobre los individuos seleccionados, los índices i y j indican que se está calculando la covarianza de la variable i con la variable j.

El criterio de paro, como ya se ha mencionado, es cuando la norma de la matriz de covarianza es menor que un parámetro denominado MinCov o el número máximo de generaciones.

 

Resultados

En esta sección presentamos los resultados obtenidos con la metodología propuesta. Para este fin utilizamos los experimentos reportados en Cabrera et al. (2002) definidos por 3 conjuntos de puntos de precisión listados a continuación junto con los parámetros de entrada

1) Cd=[(20,20), (20,25),(20,30),(20,35),(20,40),(20,45)]. Parámetros de entrada, npop= 3000, ngen=600 y MinCov=1.0e-7. C* para definir el espacio de búsqueda que es: 20.

2) Cd=[(3.0,3.0), (2.759,3.363),(2.372,3.663),(1.890,3.862),(1.355,3.943)]. Parámetros de entrada, npop= 3000, ngen=600 y MinCov=1.0e-7. C* para definir el espacio de búsqueda que es: 2.

3) Cd=[( 0.5,1.1),(0.4, 1.1),(0.3, 1.1),(0.2, 1.0),(0.1, 0.9),(0.005, 0.75),(0.02, 0.6),(0.0, 0.5),(0.0,0.4),(0.03, 0.3),(0.1, 0.25),(0.15,0.2),(0.2, 0.3),(0.3, 0.4),(0.4, 0.5),(0.5, 0.7),(0.6, 0.9),(0.6, 1.0)]. Parámetros de entrada, npop= 3000, ngen=600 y MinCov=1.0e-7. C* para definir el espacio de búsqueda que es: 1.

Caso 1. La mejor solución encontrada para este caso se muestra en la Figura 2. El error mínimo encontrado es de 0.000087027. Los parámetros encontrados son: x0=24.201123, y0=-20.707550, r1=49.999990, r2=38.526761, r3=38.526762, r4=49.999990, rcx=17.760130, rcy=50.000000, θ0=1.570796, θ02=5.506283 y dθ=0.096570.

Caso 2. La mejor solución encontrada para este caso se muestra en la Figura 3. El error mínimo encontrado es de 0.0000000000010790. Los parámetros encontrados son: x0=0.702302, y0=2.128946, r1=2.049439, r2=1.100611, r3=1.843147, r4=2.049431, rcx=0.364729, rcy=1.307486, θ0=-1.443613, θ02= 3.823973 y dθ=0.398471.

Caso 3. La mejor solución encontrada para este caso se muestra en la Figura 4. El error mínimo encontrado es de 0.0000091773883981. Los parámetros encontrados son: x0=0.258735, y0=0.218143, r1=1.109130, r2=0.436477, r3=0.832682, r4=0.832699, rcx=0.371051, rcy=0.327572, θ0=-1.443613, θ02= 0.088915 y dθ=0.339945.

 

Discusión de los resultados

En la sección anterior se mostró la capacidad del algoritmo para encontrar soluciones muy aproximadas a las óptimas. Podemos comparar los resultados obtenidos con otros de la literatura, Cabrera et al. (2002). Como se muestra en la Tabla 3.

Como se puede ver en la Tabla 3, los resultados del algoritmo propuesto en este trabajo son muy superiores a los otros. Cabe mencionar, sin embargo que los algoritmos de estimación de distribución comúnmente utilizan una población mayor (y por lo tanto un mayor número de evaluaciones) que otros algoritmos poblacionales como los algoritmos genéticos, pero es un precio a pagar por la calidad de los resultados, y la capacidad de utilizar las correlaciones entre las variables. Como en este caso, vale la pena pagar el tiempo de cómputo de aproximadamente 3 segundos por ejecución en una computadora pentium i7 quadcore, con 8 Gb de RAM. Es un tiempo realmente despreciable si se considera la ganancia a largo plazo en un mecanismo real.

El lector debe de notar que la forma en que se propuso el modelo de optimización utilizando una velocidad constante en el par motriz como parámetro extra a optimizar, permite aproximar trayectorias definidas por un número arbitrario de puntos, sin modificar la dimensionalidad de los parámetros a optimizar. Por otro lado, otra posibilidad sería realizar un barrido de la trayectoria, discretizando los 360 grados del par motriz, lo cual podría eliminar el parámetro del modelo de optimización y entregar un resultado con un error menor al que se reporta aquí. Sin embargo, esta otra estrategia no permitiría aproximar tanto la trayectoria como la velocidad.

Por otro lado los métodos de optimización convencionales como los basados en gradiente requieren una función suave, este no es el caso para los EDAs, por lo cual se puede anexar al modelo otras características deseadas sin preocuparse por mantener propiedades de convexidad y suavidad de la función objetivo.

 

Conclusiones y trabajo futuro

En el presente trabajo abordamos el problema de la síntesis de mecanismos, en particular, estudiamos el mecanismo plano de cuatro eslabones. El método utilizado es un algoritmo de estimación de distribución basado en la distribución Normal, las aportaciones más relevantes de este enfoque son: a) utilizar la información de correlaciones entre variables, b) obtener una muestra factible para el aprendizaje de la distribución, c) modelar el problema utilizando un parámetro que permite la inserción de un número arbitrario de puntos de la trayectoria sin aumentar la dimensionalidad del problema de optimización, y d) propusimos una forma paramétrica de fijar los límites de búsqueda para este mecanismo. Por otro lado, existían bondades en el algoritmo utilizado de base, que ya de por sí eran importantes para la solución de este problema, tales como la selección de potencial, que permite realizar una búsqueda adecuada. Lo anterior resultó en un algoritmo que entrega resultados altamente competitivos. En el trabajo presente los mecanismos sólo tienen restricciones básicas, el trabajo futuro puede contemplar el problema de minimizar las longitudes de los elementos, restringir el espacio de trabajo, insertando restricciones de singularidades, y posiblemente de control. La metodología propuesta entrega resultados alentadores, como para aplicarla a problemas más complejos, es posible aplicar la misma metodología a otros mecanismos de cadena cinemática cerrada. Por otro lado, se puede también resolver el mismo problema con otros métodos de optimización y analizar estadísticamente el desempeño de la propuesta con respecto de otras técnicas de optimización global.

 

Referencias

Bosman P. A., Grahl J. y Rothlauf F. (2007). SDR: A Better Trigger for Adaptive Variance Scaling in Normal EDAs. In: GECCO '07: Proceedings of the 8th annual conference on Genetic and evolutionary computation, 516-522.         [ Links ]

Bulatovic R. y Djordjevic S. R. (2004). Optimal Synthesis of a Four bar Linkage by Method of Controlled Deviation. The first Conference on Computational Mechanics (CM04), 31(4), 265-280.         [ Links ]

Cabrera J. A., Simon A. y Prado M. (2002). Optimal Synthesis of Mechanisms with Genetic Algortihms. Mechanism and Machine Theory, 37, 1165-1177.         [ Links ]

Cabrera J. A., Nadal F., Muñoz J. P. y Simon A. (2007). Multiobjective Constrained Optimal Synthesis of Planar Mechanisms using a New Evolutionary Algorithm. Mechanism and Machine Theory, 42, 791-806.         [ Links ]

Cai Y., Sun X., Xu H. y Jia P. (2007). Cross Entropy and Adaptive Variance Scaling in Continuous EDA. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation, GECCO '07. ACM, New York, NY, USA, 609-616.         [ Links ]

Dong W. y Yao X. (2002). NichingEDA: Utilizing the Diversity inside a Population of EDAs for Continuous Optimization. In: IEEE Congress on Evolutionary Computation, 1260-1267.         [ Links ]

Dong W. y Yao X. (2008). Unified Eigen Analysis on Multivariate Gaussian based Estimation of Distribution Algorithms. Information Sciences, 178(15), 3000 - 3023.         [ Links ]

Fang, W. E. (1994). Simultaneous Type and Dimensional Synthesis of Mechanisms by Genetic Algorithms-DE. Mechanism Synthesis Analysis, 70.         [ Links ]

Freudenstein F. (1954). An Analytical Approach to the Design of Four-link Mechanisms. Transactions of the ASME, 76, 483-492.         [ Links ]

Grahl J., Bosman P. A. N. y Minner S. (2007). Convergence Phases, Variance Trajectories, and Runtime Analysis of Continuos EDAs. In: GECCO '07: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation, ACM, 516-522.         [ Links ]

Grahl J., Bosman P. A. N. y Rothlauf F. (2006). The Correlation-triggered Adaptive Variance Scaling IDEA. In: GECCO '06: Proceedings of the 8th Annual Conference on Genetic and Evolutionary Computation, ACM Press, 397-404.         [ Links ]

Handa H. (2007). The Effectiveness of Mutation Operation in the Case of Estimation of Distribution Algorithms. Biosystems, 87(23), 243 - 251.         [ Links ]

Hartenberg R. y Denavit J. (1964). Kinematic Synthesis of Linkages, McGraw-Hill, New York.         [ Links ]

Hrones, J. A. y Nelson G. L. (1951). Analysis of the Four Bar Linkage. MIT Press and Wiley, New York.         [ Links ]

Kalnas R. y Kota S. (2001). Incorporating Uncertaintly into Mechanism Synthesis. Mechanism and Machine Theory, 36(3), 843-851.         [ Links ]

Kunjur, J. A. y Krisshnamurty S. (1997). Genetic Algorithms in Mechanical Synthesis. Journal of Applied Mechanisms and Robotics, 4(2), 18-24.         [ Links ]

Larrañaga P. y Lozano J. A. (2001). Estimation of Distribution Algorithms: A New Tool for Evolutionary Computation. Kluwer Academic Publishers, Norwell, MA, USA.         [ Links ]

Laribi M. A., Milak A., Romdhane L. y Zegloul S. (2004). A Combined Genetic Algorithm Fuzzy Logic Method (GA-FL) in Mechanisms Synthesis. Mechanism and Machine Theory, 39, 717-735.         [ Links ]

Levitskii N. L. y Shakvazian K. K. (1960). Synthesis of Four Element Spatial Mechanisms with Lower Pairs. International Journal of Mechanical Sciences, 2, 76-92.         [ Links ]

Mallik A. K., Ghosh A. (1994). Kinematic Analysis and Synthesis of Mechanisms. CRC-Press 1 edition, 688.         [ Links ]

Marcelin J. (2010). Integrated Optimization of Mechanisms with Genetic Algorithms. Engineering, 2, 438-444.         [ Links ]

Pelikan M., Goldberg D. E. y Cantu-Paz E. (1999). The Bayesian Optimization Algorithm. In: Proceedings of the 1999 Conference on Genetic and Evolutionary Computation, GECCO '99, ACM, Orlando, FL, USA, 525-532.         [ Links ]

Quintero R. H., Calle-Trujillo G. y Díaz-Arias A. (2004). Síntesis de generación de trayectorias y de movimiento para múltiples posiciones en mecanismos, utilizando algoritmos genéticos. Scientia et Technica, 10(25).         [ Links ]

Roston G. P. y Sturges R. H. (1996). Genetic Algorithm Synthesis of Four Bar Mechanisms. Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 10, 371-390.         [ Links ]

Sancibrian R., Viadero F., Garcia P. y Fernandez A. (2004). Gradient-based Optimization of Path Synthesis Problems in Planar Mechanisms. Mechanism and Machine Theory, 39, 839-856.         [ Links ]

Sandor, G. N. (1959). A General Complex Number Method for Plane Kinematic Synthesis. PhD Thesis, Columbia University, New York.         [ Links ]

Shapiro J. L. (2006). Diversity Loss in General Estimation of Distribution Algorithms. In: Proceedings of the 9th International Conference on Parallel Problem Solving from Nature, PPSN'06, Springer-Verlag, Berlin, Heidelberg, 92-101.         [ Links ]

Starosta R., (2008). Application of Genetic Algorithm and Fourier Coefficients (GA-FC) in Mechanisms Synthesis. Journal of Theoretical and Applied Mechanics, 46(2), 395-411.         [ Links ]

Suh C. H. y Radcliffe C. W. (1967). Synthesis of Plane Linkages with use of Displacement Matrix. Journal of Engineering for Industry, 89(2), 206-214.         [ Links ]

Teytaud F. y Teytaud O. (2009). Why one Must Use Reweighting in Estimation of Distribution Algorithms. In: Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation, GECCO '09, ACM, New York, NY, USA, 453-460.         [ Links ]

Tzong-Mou W. y Chao-Kuang C. (2005). Mathematical Model and its Simulation of Exactly Mechanism Synthesis with Adjustable Link. Applied Mathematics and Computation, 160, 309-316.         [ Links ]

Valdez S. I., Hernández A. y Botello S. (2010). Efficient Estimation of Distribution Algorithms by Using the Empirical Selection Distribution. In: P. Korosec (ed.) New Achievements in Evolutionary Computation. InTech. 229-250.         [ Links ]

Valdez I., Hernández-Aguirre y Botello S. (2012). Adequate Variance Maintenance in a Normal EDA via the Potential-Selection Method. Advances in Intelligent Systems and Computing, Springer Berlin Heidelberg, 221-235.         [ Links ]

Vasiliu A. y Yannou B. (2001). Dimensional Synthesis of Planar Mechanism using Neural Net work: Application to Path Generator Linkages. Mechanism and Machine Theory, 36(2), 229-310.         [ Links ]

Walczak T. (2006). Mechanism Synthesis with the Use of Neural Network. Annual Meeting of GAMM, Book of abstracts. Berlin.         [ Links ]

Yuan B. y Gallagher M. (2005). On the Importance of Diversity Maintenance in Estimation of Distribution Algorithms. In: Proceedings of the 2005 Conference on Genetic and Evolutionary Computation, GECCO '05, ACM, New York, NY, USA, 719-726.         [ Links ]

Zhang Q. y Muhlenbein H. (2004). On the Convergence of a Class of Estimation of Distribution Algorithms. IEEE Transactions on Evolutionary Computation 8(2), 127-136.         [ Links ]

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License