iterative refinement of computational circuits using genetic programming matthew j. streeter genetic...

14
Iterative Refinement of Computational Circuits using Genetic Programming Matthew J. Streeter Genetic Programming Inc. Mountain View, California [email protected] Martin A. Keane Econometrics, Inc. Chicago, Illinois [email protected] John R. Koza Stanford University Stanford, California [email protected] GECCO 2002, New York City, July 9-13

Post on 20-Dec-2015

224 views

Category:

Documents


1 download

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

Original and Refined Circuits

• Top box is original; bottom is refined

Conclusions

• Iterative refinement technique can be successfully applied to rational polynomial approximations and to computational circuits

• Technique can provide significant improvements to state-of-the-art computational circuits

• Possible applicability to other areas