Logo de la UNED

Madrid, 8 de febrero de 2018




Máquinas ‘humanas’ inspiradas en la evolución biológica

Un estudio de la UNED presenta una nueva metodología para el diseño automático de circuitos electrónicos analógicos basada en el uso de la Computación Evolutiva

Federico Castejón y Enrique Carmona


La revista Applied Soft Computing, perteneciente a la Federación Mundial en Soft Computing, ha publicado un trabajo de la UNED, Automatic design of analog electronic circuits using grammatical evolution, que presenta una nueva metodología para el diseño automático de circuitos electrónicos analógicos basada en el novedoso uso de la Computación Evolutiva, una de las ramas de la Inteligencia Artificial. Los investigadores Enrique J. Carmona Suárez, profesor del Departamento de Inteligencia Artificial de la Escuela de Informática de la UNED, y Federico Castejón Lapeyra, doctorando del programa en Sistemas Inteligentes de la universidad, han conseguido que una máquina sea capaz de diseñar circuitos analógicos -tarea hasta el momento encomendada a los ingenieros especializados- de forma óptima y automática gracias al empleo de una familia de algoritmos inspirados en los mecanismos de la evolución biológica.


<< Federico Castejón (izda.) y Enrique Carmona, autores del estudio


Tal y como menciona el estudio, la Computación Evolutiva es una familia de algoritmos que imita los mecanismos de la evolución biológica. De la misma forma que la evolución natural es una combinación de azar y selección natural, el algoritmo evolutivo genera una población de soluciones candidatas a un problema planteado inicialmente que son actualizadas iterativamente en cada generación. Esta actualización consiste en seleccionar las mejores soluciones de la generación actual (selección natural), combinarlas (cruce) y, finalmente, aplicar aleatoriamente ligeros cambios (mutaciones) a las soluciones obtenidas tras el cruce. Como consecuencia, la población evoluciona gradualmente hacia soluciones cada vez mejores, hasta el punto de obtener una solución lo suficientemente buena al problema.



Castejón plantean un ejemplo concreto: “imaginemos que se quiere diseñar un circuito que reproduzca la función potencia al cuadrado, de tal forma que, al resultado de aplicar un valor de tensión V a su entrada, se produzca un valor de tensión V2 a su salida”. Hasta el momento, el diseño de circuitos analógicos, tal y como señala Carmona, “se considera más un arte que una ciencia, en el que el conocimiento, la experiencia y la creatividad del diseñador juegan un papel crucial. Basta pensar no sólo en la enorme cantidad de posibilidades de conectar un determinado número de componentes para formar un circuito, tanto mayor cuanto mayor sea el número de componentes, sino también en el enorme número de combinaciones de valores de cada uno de ellos para cada opción de conexionado”. En este contexto, el trabajo de los investigadores propone un método que es capaz de hacer evolucionar una población de circuitos candidatos hasta obtener un circuito final que aproxima suficientemente bien las especificaciones del circuito a diseñar. Esta automatización del trabajo, habitual en el diseño de circuitos electrónicos digitales, no lo es en absoluto en el campo de la electrónica analógica, en el que no existen herramientas que resuelvan de forma óptima y automática las dos tareas principales que comprende: “determinar cómo se han de conectar los diferentes componentes del circuito y qué valor debe tener los parámetros asociados a cada componente como, por ejemplo, el valor de una resistencia o la capacidad de un condensador”.


Circuito potencia al cuadrado

Circuito potencia al cuadrado: Mejor circuito obtenido automáticamente.
Curva de salida medida comparada con la curva esperada (en recuadro a la izda.)



Y es que, “aunque vivimos en un mundo cada vez más digitalizado, los circuitos analógicos siguen teniendo mucha importancia hoy día”, afirma Enrique Carmona. “Antes de procesar la información digitalmente, necesitamos transformar las señales analógicas del mundo real a señales digitales y, a su vez, transformar el resultado de dicho procesado digital a señales analógicas para que puedan actuar sobre el mundo real. En estas dos etapas de transformación participa siempre un circuito analógico”.



El profesor Carmona concluye afirmando que "el diseño automático de circuitos analógicos es aún un problema abierto y queda trabajo por hacer. Por ejemplo, el comportamiento de los circuitos obtenidos en nuestro estudio ha sido evaluado mediante un simulador y no a partir de los circuitos con componentes reales que los implementan, donde pueden aparecer fenómenos no contemplados en la simulación. En cualquier caso, el trabajo de investigación realizado constituye no sólo un paso más en el diseño de circuitos sino también en el reto de conseguir máquinas que compitan con los resultados de un diseñador humano".



Circuitos computacionales y no computacionales


El método propuesto en la publicación se ha aplicado al diseño de otros seis circuitos analógicos, tal y como explica Castejón: “tres de ellos que, como el mencionado anteriormente, pertenecen a la categoría de circuitos computacionales (potencia al cubo, raíz cuadrada y raíz cúbica) y tres circuitos no computacionales: un sensor de temperatura, cuya tensión de salida es directamente proporcional a la temperatura ambiente, un circuito referencia de tensión, que consigue obtener una tensión de salida estabilizada a partir de una tensión de entrada que fluctúa, y un circuito generador de función Gaussiana, cuya intensidad de salida genera los valores de una gaussiana en función de los valores de la tensión de entrada”.



Clúster de 32 núcleos (8 PCs de cuatro núcleos cada uno) utilizado para
desarrollar los diferentes experimentos del estudio realizado >>

Clúster de 32 núcleos



Itziar Romera

Edición web: Elena Lobato

Comunicación UNED