iterative refinement of computational circuits using genetic programming matthew j. streeter genetic...
Post on 20-Dec-2015
224 views
TRANSCRIPT
Iterative Refinement of Computational Circuits using Genetic Programming
Matthew J. Streeter
Genetic Programming Inc.
Mountain View, [email protected]
Martin A. Keane
Econometrics, Inc.
Chicago, [email protected]
John R. Koza
Stanford University
Stanford, [email protected]
GECCO 2002, New York City, July 9-13
Overview
• Technique to iteratively refine solutions to problems over multiple runs
• Demonstrated on rational polynomial approximations
• Iterative refinement of computational circuits for squaring, square root, and cubing
• Refinement of recently-patented cubic signal generator
Basic technique
• Existing approximation to sin(x): x-x3/6+x5/120
• Error of existing approximation: sin(x) – (x-x3/6+x5/120)
• Evolve approximation to error function
• New approximation is: (x-x3/6+x5/120) + [evolved approximation]
Iterative Refinement of Rational Polynomial Approximations to
Functions
Iteration Error E/Eprev
0 4.554574e-6
1 3.483825e-8 130.73
2 2.093228e-8 1.6643
3 1.039170e-8 2.0143
4 6.302312e-9 1.6489
5 2.200276e-6 3.4912e-4
• Refinement of rational polynomial approximations to sin(x), [0, /2]
•Large overall improvement
• Overfitting on last iteration (spike between two points)
Rfinal: 772.65
Iterative Refinement of Computational Circuits
• Output of multiple solutions combined through voltage adder
• Refinement (from scratch) of square root, squaring, cubing circuits
• Refinement of patented cubic signal generator
Control Parameters
• 20 node Beowulf cluster with 350 MHz Pentium II processors
• Total population size of 20,000
• 70% crossover, 20% constant mutation, 9% cloning, 1% subtree mutation
• 100 generations per iteration
Square root output Square root error
• First iteration eliminates gap for 0 mV through 200 mV inputs
• Second iteration provides miniscule improvement
Results for Square Root Circuit
Iteration Error E/Eprev
0 11.835
1 3.4445 3.4359
2 3.398 1.0137
Rfinal: 3.4830
Squaring output Squaring error
Results for Squaring Circuit
Iteration Error E/Eprev
0 46.84
1 5.836 8.0260
2 5.5635 1.0490
Rfinal: 8.4193
Cubing output Cubing error
Results for Cubing Circuit
Iteration Error E/Eprev
0 22.312
1 20.198 1.1047
2 17.510 1.1535
3 17.061 1.0263
Rfinal: 1.3078
Efficiency of Iterative Refinement Process
• Don’t know when to stop an iteration and go to the next one (if ever)
• Not clear how to manage tradeoff between population size / number of iterations / iteration length
• Determining this empirically runs into usual difficulties
Refinement of Patented Cubic Signal Generator
• Cubic signal generator patent issued to Cipriani and Takeshian of Conexant Systems on December 12, 2000
• Low voltage cubic signal generator works on 2V power supply
• Has about 7 mV average error over inputs between 0 and 1.26 V
• Evolved refinement maintains low voltage restriction
Results for Patented Cubic Signal Generator
Cubing output Cubing error
Iteration Error E/Eprev
0 7.128
1 0.9873 7.2197
2 0.9236 1.0690
Rfinal: 7.2197
• Evolved refinement evens out error across range
• Second iteration revealed to produce large spikes using finer-grained simulation