automatic synthesis using genetic programming of both the topology and sizing for five post-2000...
TRANSCRIPT
Automatic Synthesis Using Genetic Programming of Both the Topology and Sizing for Five Post-2000 Patented Analog and Mixed Analog-Digital Circuits
Matthew J. StreeterGenetic Programming, Inc.Mountain View, California
Martin A. KeaneEconometrics, Inc.
Chicago, [email protected]
John R. KozaStanford UniversityStanford, California [email protected]
SSMSD 2003, Las Vegas, February 23-25
Overview
• Basics of Genetic Programming (GP)
• Circuit Synthesis using GP
• Five post-2000 circuits
Basics of Genetic Programming (GP)
Main Ideas of GP
• Breed computer programs to solve problems
• Programs represented as trees in style of LISP language
• Programs can create anything (e.g., circuit, equation, circuit+equations)
Pseudo-code for GP
1) Create initial random population
2) Evaluate fitness
3) Select fitter individuals to reproduce
4) Apply reproduction operations (crossover, mutation) to create new population
5) Return to 2 and repeat until solution found
Random Initial Population
• Function set: {+, *, /, -}
• Terminal set: {A, B, C}
+ +
*
1
2
+
*
A B
C
(1) Choose “+” (2) Choose “*” (3-5) Choose “A”, “B”, “C”
Fitness Evaluation
• 4 random equations shown
• Fitness is shaded areaTarget curve
(x2+x+1)
Fitness: 0.67 1.0 1.67 2.67
Crossover
• Subtrees are swapped to create offspring
0.234Z + X – 0.789
X 0.789
–
0.234 Z
*
+
ZY(Y + 0.314Z)
Z Y
*
0.314 Z
*Y
+
*1 1
2 25 5
8 9
3 34 46 7 76
X 0.789
–
+
0.314 Z
*Y
+
Y + 0.314Z + X – 0.789
Z Y
*
*
0.234 Z
*
0.234Z Y2
Pickedsubtree
Parents
Offspring
Pickedsubtree
Some Applications of GP
• Classic AI problems (simple planning & control strategies, classification, equation discovery)
• Algorithms (sorting networks, search heuristics, quantum algorithms)
• Art (evolved melodies, images)
• Synthesis (circuits, controllers, antennas, metabolic pathways)
Circuit Synthesis Using GP
• Computer programs represent circuits via developmental process
• Programs grow a circuit from an initial embryo
• Fitness measured (primarily) by circuit’s frequency or transient response
Initial Circuit
• Consists of test fixture (VSOURCE, RSOURCE, RLOAD) and embryo (Z0, Z1)
C FLIP
LIST1
2 3
-
Developmental Process
• Component-inserting functions
• Topology-modifying functions
• Connection functions
C FLIP
LIST1
2 3
-
Developmental Process: An Example
Developmental Process: An Example
Developmental Process: An Example
Fitness Measure
• Curve-matching (like earlier example) based on circuit’s response in frequency or time domain
• Sometimes have additional constraints (e.g., distortion, low component count)
Previously Evolved Circuits
• Filters (lowpass, highpass, bandpass)
• Amplifiers (60 and 96 dB amplifiers, negative feedback amplifier)
• Computational circuits (squaring, cubing, square root, cube root, logarithm)
• Voltage reference circuit
• Digital circuits (DAC, NAND)
Five Post-2000 Patented Circuits
Patent Inventor InstitutionLow-voltage balun circuit
Sang Gug Lee Information and Communications University
Mixed analog-digital variable capacitor
Turgut Sefket Aytur
Lucent Technologies Inc.
Voltage-current converter
Akira Ikeuchi and Naoshi Tokuda
Mitsumi Electric Co., Ltd.
High-current load circuit
Timothy Daun-Lindberg and Michael Miller
IBM Corporation
Low-Voltage cubic function generator
Stefano Cipriani and Anthony A. Takeshian
Conexant Systems, Inc.
Setup
• All circuit simulations in SPICE
• Circuits evolved on 1,000 processor supercomputer
• Population between 2 and 5 million, 100-200 generations
Setup: Low-voltage Balun Circuit
• Produces two half-amplitude signals with 180 degree phase difference
• Patented circuit operates with 1 V power supply
Patented circuit
Setup: Low-voltage Balun Circuit
• Frequency sweep fitness cases for magnitude & phase angle
• Penalty for total harmonic distortion (THD)
Embryo & Test fixture
Setup: Voltage-current Converter
• Produces stable output current proportional to difference between two inputs voltages
• Advantage over prior art: inputs not limited by power supply Patented circuit
Setup: Voltage-current Converter
• Four time-domain fitness cases using various input signals
• Time-varying voltage source VS forces stable output current at IOUT0
Embryo & Test fixture
Setup: Low-voltage Cubic Function Generator
• Cubing computational circuit using 2 V power supply
Patented circuit
Setup: Low-voltage Cubic Function Generator
• Four time-domain fitness cases using various input signals
Embryo & Test fixture
Results: Low-voltage Balun Circuit
• Evolved solution is better in terms of frequency response & THD
• C302 is in the patent claims
• Evolved circuit reads on some, but not all, claims of patent Evolved circuit
Results: Voltage-current Converter
• Evolved solution has 62% of absolute error of patent circuit on our fitness cases
• Evolved circuit solves problem in explainable way
Evolved circuit
Results: Low-voltage Cubic Function Generator
• Evolved solution has 59% of absolute error of patent circuit on our fitness cases
Evolved circuit
Future Work
• Verify SPICE results
• Consider manufacturability (e.g., variation in component values, parasitic effects)
• We are looking for good problems
Results: Low-Voltage Balun Circuit
Results: Voltage-current converter
Results: Low-voltage cubic function generator