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”.