Automatic Synthesis of Analog Electronic Circuits with AGE
This page shows some examples of evolution of analog electronic circuits using Analog Genetic Encoding (AGE). In this case the device set contains electronic devices such as bipolar transistors and MOSFETs, and the connections between the devices are established by means of resistors inserted between their terminals.
In this experiment we used Analog Genetic Encoding to evolve a circuit capable of producing an output voltage Vo that remains in the range from 1.99V to 2.01V when the input voltage Vc varies from 4V to 6 V and the circuit temperature varies from 0°C to 100°C. The figure shows an example of evolved voltage reference circuit and its output voltage plotted as a function of the input voltage.
The goal of this experiment was the evolution of a circuit whose output voltage Vo increases linearly from 0V to 10V when the circuit temperature varies from 0°C to 100°C. The figure shows an example of evolved temperature sensing circuit and its output voltage plotted as a function of the circuit temperature.
Gaussian Function Generator
In this experiment we used Analog Genetic Encoding to evolve a circuit capable of producing through a load voltage source VL an output current Io that is a Gaussian function of the variable input voltage Vc, when the latter varies from 2V to 3V. The figure shows an example of evolved circuit and its input-output behavior.
Comparison of Analog Genetic Encoding and Genetic Programming
There exist no established benchmarks for the evaluation of experiments of evolution of analog circuits. However, the three examples shown above are inspired from problems that were tackled with Genetic Programming (GP) in (Koza et al., GPIII, 1999). The circuits evolved with Analog Genetic Encoding were evaluated with the fitness function used in the Genetic Programming experiments, which consists of the sum of the absolute value of the deviations from the target output value weighted by a factor of 10 if the deviation is greater than a preassigned limit value (so that smaller fitness values correspond to better circuit performance). Each output value falling within the limit is defined as a hit. For both Analog Genetic Encoding and the Genetic Programming experiments the number of evaluations required to produce the best circuit of the run is considered. Tables I, II, and III show the average number of circuit evaluations, the number of hits, the fitness value, and the number of transistors and resistors of the best evolved circuits obtained with Genetic Programming and Analog Genetic Encoding.
The tables show that for the voltage reference and temperature sensor problems Analog Genetic Encoding produced better results in terms of fitness and number of hits with a tenfold and twofold reduction, respectively, of the number of circuit evaluations with respect to Genetic Programming. In the Gaussian function case the unique Genetic Programming circuit achieved a slightly better performance than the average Analog Genetic Encoding circuit, but using about an order of magnitude more circuit evaluations. The circuits produced by Analog Genetic Encoding contain on average less transistors and more resistors than those produced by Genetic Programming.