corel ventura - gec02 po - genetic programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf ·...

34
EVOLVABLE HARDWARE Julian Miller, chair

Upload: others

Post on 07-Oct-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

EVOLVABLE HARDWAREJul ian Mi l le r, cha i r

Page 2: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,
Page 3: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Lens System Design and Re-Engineering withEvolutionary Algorithms

Julie Beaulieu†, Christian Gagne‡, and Marc Parizeau‡

Laboratoire de Vision et Systemes Numeriques (LVSN)†Departement de Physique, de Genie Physique et d’Optique‡Departement de Genie Electrique et de Genie Informatique

Universite Laval, Quebec (QC), Canada, G1K 7P4E-mail: [email protected], {cgagne,parizeau}@gel.ulaval.ca

Abstract

This paper presents some lens system designand re-engineering experimentations with ge-netic algorithms and genetic programming.These Evolutionary Algorithms (EA) weresuccessfully applied to a design problem thatwas previously presented to expert partici-pants of an international lens design confer-ence. Comparative results demonstrate thatthe use of EA for lens system design is verymuch human-competitive.

1 INTRODUCTION

Designing a lens system is a complex task currentlydone by experimented optical engineers, using CADtools that can optimize a roughly shaped design. Thework presented in this paper is motivated by a de-sire to completely automate this design task, usingGenetic Algorithms (GA) and Genetic Programming(GP) techniques.

The paper first presents the theory related to lenssystems, before addressing a brief survey of moderndesign methods. Then, experimental results are pre-sented for the automatic design of a benchmark prob-lem for both the design (using GA and GP) and there-engineering (using GP) of a lens system.

2 THEORY ON LENS SYSTEMDESIGN

A lens system is an arrangement of lenses with differentrefractive indexes, surface curvatures, and thicknesses.Figure 1 shows an example of a 2 lenses system. Given

c1c2

c3

c4

n1

n2

n0

t1

d1

t2

Figure 1: Parameters of a Two Lenses System. The ni

variables denote the refractive indexes of the media,the ci represent the lens surface curvatures, the ti arethe lens thicknesses, and d1 is the lens spacing.

an object of a certain size, at a certain distance, itsfunction is to produce an image of this object. Al-though many lens arrangements can generate imagesof the same size, the problem of lens system design isto seek the one with the least amount of aberration.

Aberrations are the difference between a real imageand the corresponding approximated image computedwith Gauss optics (O’Shea, 1985). Gauss optics con-stitute a usable framework to characterize an opticalsystem with various Gaussian constants such as theeffective focal length, stop, f -number of the system,and image distance and magnification. Aberrationscome from the fact that Gauss optics are used duringthe design process; real physics of lens systems are toocomplex to be usable.

To characterize lens systems we need to do what iscalled ray tracing. Starting at a given point on theobject and a given initial angle, a ray trace is the com-putation of the trajectory of a light ray through the

EVOLVABLE HARDWARE 155

Page 4: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

n1

θ2θ1

n2

Figure 2: Illustration of Snell-Descartes First Law ofRefraction

optical system until it reaches the image plane. Theexact (real) ray trace is obtained from the first law ofrefraction (Snell-Descartes) that governs the behaviorof light passing through the interface between two me-dia having different refractive indexes. The path ofa ray passing from medium 1 to medium 2 obeys thefollowing equation:

n1 sin θ1 = n2 sin θ2 (1)

where n1 and n2 are refractive indexes of media 1 and2, and θ1 and θ2 are incident and refracted angles rel-ative to the normal of the interface between the twomedia. Figure 2 illustrates this first law of refraction.On the other hand the paraxial approximation consistsin assuming that all rays lie close to the optical axis.Using the sine expansion:

sinφ = φ− φ3

3!+

φ5

5!− · · · (2)

then φ ≈ 0 =⇒ sinφ ≈ φ. Equation 1 becomes:

n1θ1 ≈ n2θ2 (3)

This approximation is the basis of Gauss optics or firstorder optics.

The quantification of the aberrations of an optical sys-tem is done by computing the difference between thereal image (i.e. the one that stems from Equation 1),and the image that results from the paraxial approxi-mation. In other words, two ray traces emerging fromthe same point on the object with the same angle, oneexact and one approximated1, will strike the imageplane at different positions. These correspondence er-rors, averaged over a whole set of distinct rays, couldprovide a convenient basis for building a quality mea-sure.

Finally, in the sine expansion of Equation 2, it is in-teresting to note that if we also consider the secondterm, than we obtain what is called third order optics.

1The approximative ray trace is virtual and computedwith Gauss optics.

Paraxialfocus

a)

Undistorted Image

Positive Distortion Negative Distorsion

b)

Figure 3: Illustration of: a) Spherical Aberration, andb) Distortion.

The difference between first and third order optics rep-resents the five Seidel aberrations: spherical aberra-tion, coma, astigmatism, field curvature, and distor-tion (O’Shea, 1985). Figure 3 illustrates two of these.The spherical aberration (Figure 3a) is caused by thefact that, for spherical lenses, rays coming from infin-ity and parallel to the optical axis do not converge tothe same focus point, depending on the ray distancefrom the optical axis. The result of this type of aber-ration is a blurred image. Another type of aberrationis distortion, that causes pincushion (positive distor-tion) or barrel (negative distortion) shaped images, asshown in Figure 3b.

3 EXISTING METHODS

Modern design of lens systems is generally done withspecialized CAD softwares that help designers to vi-sualize the lens system, evaluate its quality followingprecise criteria, and locally optimize the system’s vari-ables. This optimization is often done by using lo-cal search algorithms like the Damped Least Square(DLS) method. But the typical search space of opticalsystem design is a complicated multidimensional spacecomprising several peaks, non-linearities and strongcorrelation between parameters (Sturlesi and O’Shea,1990). Hence, a local search explores only the im-mediate neighborhood of the initial solution, makingthe result very dependent on the competence and ex-perience of the designer. But since the beginning ofthe 1990’s, some applications of global search methodshave been made in optical design. A few researchershave successfully used simulated annealing for optical

EVOLVABLE HARDWARE156

Page 5: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

design (Forbes and Jones, 1990; Hearn, 1990). Othershave modified local optimization algorithms, like theDLS algorithm, to allow exploration beyond local op-tima (Isshiki, 1998). These two approaches have beenrecently integrated in some optical CAD tools.

But not much work has been done using Evolution-ary Algorithms (EA). As far as we know, only (Onoet al., 1998) have designed some lens systems usingreal-coded genetic algorithms. They were able to au-tomatically design lens systems made of more than 10parts, for some imaging applications. They also exper-imented with multi-objective optimization of opticalsystems by using the Pareto optimal selection strat-egy. Other research on application of EA to opticalsystems includes (Ben Hamida et al., 1999), which usetwo evolutionary approaches to design an optical sur-face, and (Nosato et al., 2001), that use EA for theautomatic alignment of optical devices.

4 MONOCHROMATIC QUARTETPROBLEM

To evaluate the capability of our approach for lens sys-tem design, we chose a problem stated in the 1990 In-ternational Lens Design Conference (ILDC). This con-ference, held every four years, includes a friendly de-sign competition for its participants. The 1990 prob-lem (O’Shea, 1990) became a benchmark to evaluatethe performance of optimization algorithms for lenssystem design because the 11 best solutions proposedby human experts make up only two different classesof similar solutions, and the organizers concluded thatthese solutions appear to be global optimums of thesolution space.

The problem is named the Monochromatic Quartet.Essentially, it consists in finding an optical systemmade of four spherical lenses. Here is the formal state-ment of the problem (O’Shea, 1990).

Design a 4-element, f/3, 100 mm effectivefocal length lens of BK7 glass, illuminated byhelium d wavelength (i.e., n = 1.51680). Theobject is at infinity, the object field covers 30◦

full field (15◦ semi-field angle) and the imagefield is flat.

Constraints on the construction includes:only spherical surfaces, no aspherics, GRINelements, Fresnel lenses, binary elements,holographic optical elements, etc. The min-imum glass thickness is 2 mm, but there isno upper limit on the size of the lens. Thedistortion must be less than 1% and there

should be no vignetting. The last is intendedto assure that vignetting could not be usedto improve the edge performance on the lens.No requirement is put on the location of thestop of the system.

The merit function consists of the averageof the RMS blur spot for three fields : on-axis, 10.5◦, and 15◦, weighted equally.

The f -number (also written f/#) measures the light-collecting ability of the lens system. An effective focallength for a lens system is similar to the focal length ofan equivalent single lens. The focal length itself is theinverse of the lens power, which is the capacity of mak-ing rays converge over short distances. The BK7 glassis just an ordinary type of glass frequently used forlens fabrication. The helium d wavelength constraintspecifies that the problem is monochromatic, that isthe considered wavelength is fixed and thus the refrac-tive indexes are also fixed (otherwise we would haveto consider the so-called chromatic aberrations). Thissystem must not have vignetting, i.e. the image mustnot be truncated. It is also possible to include a stop,that is an aperture in the optical system which limitsthe amount of light in the system, allowing to reduceaberrations. Its diameter can be linked directly withthe effective focal length and the f -number.

The error measure of the problem seeks to separatedistortion from other types of aberrations. The prob-lem statement specifies that distortion must not ex-ceed 1% and thus implies that below this level, oneshould only concentrate on other aberrations. Usingexact computations (Equation 1), the RMS blur spotmethod traces several parallel rays at a given entranceangle. These angles must be set successively at 0◦,10.5◦, and 15◦ as specified by the problem statement.Using paraxial approximation, all the rays with thesame entrance angle converge at a single point. Butwith exact ray traces, they will strike the image planeat different points, generally in the neighbourhood ofthe approximate point, and form a so-called blur spot,as illustrated in Figure 4. The RMS blur spot is com-puted from the variances of the position at the imageplane of different exact rays with the same entranceangle. A reference ray traced with the paraxial ap-proximation is used to evaluate the distortion, by mea-suring its distance from the centroid of the exact raysat the image. For more details, the interested readeris referred to (Lambda Research Corporation, 2001).

EVOLVABLE HARDWARE 157

Page 6: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Centroid

Reference ray

Distorsion

Figure 4: Illustration of the Blur Spot Measure

Table 1: Monochromatic Quartet Lens System Encod-ing with GA. Units for thickness, distance and stoplocation are mm. Units of curvatures are mm−1.Type of # ofparameter par. Encoding BoundsCurvature 7 16 bits [−0.04, 0.04]Thickness 4 16 bits [2, 250]Distance 3 16 bits [0, 250]Stop Location 1 18 bits [0, 1000]

5 LENS SYSTEM DESIGN WITHGA

As a first trial, we tried to design a lens system thatmeets the monochromatic quartet criteria using classi-cal GA, with bit string representations of fixed length(Holland, 1975). The lens system modeling is straight-forward and the problem has a total of 15 parametersto optimize. Table 1 summarizes the encoding and theupper/lower bounds for each parameter encoded in thebit strings. The chosen bounds are large enough to al-low the exploration of all physically feasible solutions.

The value of the last curvature and aperture stop arenot included in this table because these parameters arenot evolved. They are set so that the lens system re-spects the problem specifications (effective focal lengthand f -number). The distance between the last surfaceand the image plane is also calculated in order that ap-proximative rays having the same field angle focus onthe image plane. Also, the lens systems are validatedduring the evolution to ensure that they are physicallypossible (to prevent lens overlap, etc.). When impossi-ble configurations appear, the problematic lens diam-eters, distances between lenses or lens thicknesses are

Table 2: Evolution Parameters with GAEvolution parameter Value

Population size 5000Number of generations 1000Crossover probability 0.03Mutation probability 0.01

Participants to tournament selection 3

corrected until the system become physically feasible.

To implement this GA, we used a C++ frameworkfor evolutionary computations named Open BEAGLE(Gagne and Parizeau, 2002). Also a C++ library,named Library for Lens System Ray Tracing (Gagneand Beaulieu, 2001), was developed to compute raytracing through a given lens system. This library fa-cilitates the fitness measure calculation, that needs toevaluate several exact and approximative ray traces.

For the fitness measure, we defined the following equa-tion:

Fitness =

1.0

1.0 + RMS%dist ≤ 1.0

1.0%dist

× 1.01.0 + RMS

%dist > 1.0

where %dist is the maximum percentage of distortionobserved, and RMS is the average value of the RMSblur spot for the three initial field angles mentioned inthe problem statement. This fitness equation providesa measure spectrum, normalized between 0 and 1, thatis detailed enough to adequately differentiate individ-uals. It also ensures that the lens system having morethan 1% of distortion are sufficiently penalized duringthe evolutions. Experimentally, we observed that allthe best solutions obtained do not have more than 1%of distorsion.

Preliminary tests were first conducted in order to ob-tain a good idea of evolution parameters to use for thisproblem. The used parameters are presented in Table2. Then, 30 evolution runs were conducted using theseparameters, each needing about 2 to 3 hours of CPUtime on an Athlon processors running at 1.2 GHz (theruns were conducted in parallel on a Beowulf clusterof 25 nodes).

6 RESULTS USING GA

The best solution obtained with GA produces an av-eraged RMS blur spot of 0.0019 mm, compared with0.0024 mm for the best human result reported at the1990 ILDC monochromatic quartet contest. This RMS

EVOLVABLE HARDWARE158

Page 7: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Figure 5: Best Monochromatic Quartet Presented atthe 1990 ILDC

Table 3: Parameters of the Best Monochromatic Quar-tet Presented at the 1990 ILDC

Radius Thickness Aperture Glass140.0 2.0 60.0 BK790.6 8.8 55.0 air

155.86 206.8 55.0 BK70.0 11.2 13.757654 BK7

-134.7 0.05 30.0 air72.6 106.0 25.0 BK7

357.38 7.9 25.0 air-45.82 2.0 30.0 BK7-1458.1 0.1 30.0 air

(Bold surface is the aperture stop.)

blur spot is the average of three statistical measuresof many exact rays scattering from the three given en-trance angle. The RMS value is dependent on boththese entrance angles, but also on the choice of thecomputed rays for each angle. Moreover, when theRMS is very small, as in this case, it is not highly ac-curate due to rounding errors and image plane place-ment. Varying the image plane position may lower alittle bit the RMS. The RMS measures reported herehave been calculated with the well known CAD toolOSLO (Lambda Research Corporation, 2001), in or-der to eliminate any bias that our own RMS measuremight introduce. Using our own RMS measure couldhave favored the evolved systems relatively to the hu-man designed ones.

The best system evolved with GA is thus 23% bet-ter than the best presented at the 1990 ILDC (follow-ing the OSLO RMS measure). Figure 5 and Table 3present the best 1990 ILDC design, while Figure 6 andTable 4 present the best GA design.

7 LENS SYSTEM DESIGN ANDRE-ENGINEERING WITH GP

As a second trial, the same monochromatic quartetproblem was tackled, using the same EC environment

Figure 6: Best Design Found with GA

Table 4: Parameters of the Best Design Found withGA

Radius Thickness Aperture Glass194.6968 173.638 160.0 BK7101.6046 207.408 160.0 air69.2262 24.8946 35.0 BK742.8546 2.43763 25.0 air70.8426 49.7265 25.0 BK7

0.0 46.3269 12.172236 BK7-72.1277 34.6571 40.0 air66.8914 29.2579 40.0 BK7834.9267 23.7954 40.0 air

(Bold surface is the aperture stop.)

(Open BEAGLE), but this time specialized for GP.The evolving genetic programs represent some modi-fications to apply on a given initial lens system. Theevolving programs are made of three types of primi-tives. The first type includes primitives that can in-crement/decrement an iterator that points to a lenssurface. The second type is composed of primitivesthat modify a parameter of the current lens surface.The other type includes classic arithmetic operations.The terminals of the genetic trees are ephemeral con-stants (Koza, 1992), randomly generated between -1and 1. Two ADFs (Koza, 1994) were also added to fa-vor emergence of building blocks, which can be usefulfor this type of problem. Table 5 presents the com-plete set of primitives. Note that we intentionally en-couraged the search to be in the initial solution neigh-borhood by allowing mostly small parameter modifi-cations.

To evaluate each individual, an iterator is affected tothe first surface of the initial lens system. Once thesystem is modified, it is validated to ensure that it re-spects the problem specifications and that it is physi-cally feasible, as explained in section 5. Thereafter, the

EVOLVABLE HARDWARE 159

Page 8: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Table 5: GP Primitives Used to Evolve Lens Systems

Primitives Inputs DescriptionFirst, Last 1 Set the iterator to the

first/last surface.Next, Prev 1 Iterate to the

next/previous surface.Curv+, Dist+ 1 Add 0.1 × ∆ × input

to the surface curva-ture/distance valuea.

Curv*, Dist* 1 Multiply the surfacecurvature/distancevalue with 1.0 + input.

Stop+, Stop* 1 Add to/multiply thestop location value(as with the curva-ture/distance).

+, -, *, / 2 Add, subtract, multiply,or divide two floating-point numbers.

Ephemerals 0 Randomly generatedconstants in [−1, 1].

aThe ∆ term represents the maximum value for the cor-responding variable. For curvature ∆ = 0.04, for distance∆ = 250, and for stop location ∆ = 1000 (see Table 1).

lens system fitness is calculated. The fitness measureis the same as the one used for GA evolutions.

Two different approaches were applied to solve themonochromatic quartet problem with GP. Firstly, wetried the re-engineering of good solutions by using so-lutions obtained with GA as initial lens systems for theevolving process. Secondly, we tried the re-engineeringusing a raw lens system made of four “lenses” of zerocurvature (see Figure 7 and Table 6). With this ap-proach, the capacity of the GP to design a lens systemfrom scratch is evaluated.

Using GP this way is interesting because the repre-sentation isolates the genotype from the phenotype(Gruau, 1994; Koza et al., 1999). The evolved pro-grams (the genotypes) modify the initial lens systemto spawn better ones (the phenotypes).

Again, preliminary tests were made to find adequateevolution parameters (see Table 7). For the raw sys-tem as a starting point, 16 differents runs were con-ducted, while 8 runs were made for the re-engineeringof each of the 5 lens system designs selected from theGA results. The chosen GA designs are a representa-tive set of results with GA, i.e. we chose some bad,good and very good lens systems in order to compare

Figure 7: Raw System Used for Lens System Designwith GP

Table 6: Parameters of the Raw System Used for LensSystem Design with GP

Radius Thickness Aperture Glass0.0 50.0 80.0 BK70.0 50.0 80.0 air0.0 50.0 80.0 BK70.0 50.0 80.0 air0.0 50.0 80.0 BK70.0 50.0 80.0 air0.0 50.0 80.0 BK70.0 50.0 80.0 air

(Bold surface is the aperture stop.)

the re-engineering in each case. Each evolution neededan average of 36 hours for design and 3 hours for re-engineering on a single Athlon 1.2 GHz processor.

8 RESULTS USING GP

Table 8 presents the best GP re-engineering resultsfor the 5 chosen GA solutions. Note that the bestGA design (GA-1) is still the best result after the GPre-engineering, with a RMS blur spot of 0.0016 mm.This overall best result is 34% better than the best1990 ILDC design. Table 9 presents the parametersof this overall best lens system. For all the best GPre-engineering, the topology remains unchanged fromthe initial lens system. This indicates that the GPre-engineering is probably doing a local search.

For the GP re-engineering using the raw system asstarting point (design from scratch), the best resultwas an RMS blur spot of 0.0039 mm, which is 60%worse than the best 1990 ILDC design. The corre-sponding design is presented in Figure 8 and Table 10.

EVOLVABLE HARDWARE160

Page 9: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Table 7: Evolution Parameters with GPEvolution parameter ValuePopulation size 5×1000Migration type Unidirectional ringNumber of migrants 10Number of generations 1000 (re-engineering)

5000 (design)Crossover probability 0.9Swap mutation probability 0.5Participants to tournamentselection

3

Initial tree height [4, 7]Maximum tree height 20

Table 8: Best Results Obtained with GP (Re-Engineering)

Original Re-engineered RMSCase RMS (mm) RMS (mm) ShiftGA-1 0.0019 0.0016 -14%GA-2 0.0084 0.0071 -16%GA-3 0.0187 0.0139 -25%GA-4 0.0308 0.0105 -66%GA-5 0.0909 0.0843 -7.3%

9 DISCUSSION

Results show that GA and GP are capable of highquality lens system design. Indeed, they have spawncomparable or even better solutions (in terms of RMSblur spot) than the best designs presented by humanexperts. Thus they meet one of the criteria for human-competitiveness in evolutionary computations (Kozaet al., 2000).

The best obtained result, however, has a topology thatdiffers significantly from the two best system classespresented at the 1990 ILDC. Thus, the evolving pro-cess has probably discovered a new optimum topologyclass for the monochromatic quartet problem. Thebest obtained RMS blur spots with GA design andGP re-engineering are respectively 23% and 34% bet-ter than the best previously reported human result(1990 ILDC).

The search space in lens system design is very complexand comprises correlations between the different pa-rameters. This makes the lens system design difficultwith GA because good schemes of parameters that arefar together on the bit string are likely to be destroyedby the crossover operation. For the lens system design

Table 9: Parameters of the Best Re-Engineering De-sign Found with GP

Radius Thickness Aperture Glass194.6968 173.638 160.0 BK7101.5659 207.496 160.0 air68.9403 24.829 35.0 BK742.8546 2.42726 25.0 air70.8426 44.7725 25.0 BK7

0.0 51.2809 12.210297 BK7-72.0648 34.6571 40.0 air66.4712 31.4814 40.0 BK7948.4696 21.9564 40.0 air

(Bold surface is the aperture stop.)

Figure 8: Best Design Found with GP (Using the RawSystem as Starting Point)

with GP, we intentionally restricted the search in theinitial system neighborhood. This has probably dis-favored the convergence toward optimums that weresituated far from the starting point.

10 FUTURE WORKS

For future works, we plan to experiment with an hy-brid GA-GP approach, to benefit from the capacityof GA to optimize numerical parameters, using a GPvariable length representation. We also plan to use amulti-objective merit function using different types ofSeidel aberrations (see (O’Shea, 1985) for details) andlens costs as evolving criteria. Furthermore, we coulduse a database of existing commercial lenses, with as-sociated prices to simulate real life design situations.

We will also study more deeply the re-engineering ofgood solutions for lens system design and for otherapplicative contexts. We will try to develop methodsthat make good compromises between local and globaloptimization, to enable sufficient search space explo-ration that facilitates the discovery of the best solu-

EVOLVABLE HARDWARE 161

Page 10: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Table 10: Parameters of the Best Design Found withGP (Using the Raw System as Starting Point)

Radius Thickness Aperture Glass318.8959 47.4182 117.0 BK7131.18 47.9761 117.0 air

298.4896 102.302 100.0 BK70.0 50.0 100.0 air

135.1501 50.0 75.0 BK70.0 50.0 75.0 air

62.973 51.5426 35.0 BK70.0 49.1266 7.029558 BK7

334.1364 9.3196 35.0 air(Bold surface is the aperture stop.)

tions. Finally, we expect to integrate cultural evolvingaspects (Spector and Luke, 1996) to define new genericevolutionary way of proceeding for re-engineering.

Acknowledgments

This research was supported by an NSERC-Canadascholarship to C. Gagne and an NSERC-Canada grantto M. Parizeau.

References

Ben Hamida, S., Racine, A., and Schoenauer, M.:1999, Two evolutionary approaches to design phaseplate for tailoring focal-plane irradiance profile, inProceedings of Artificial Evolution 1999, Vol. 2210of LNCS, pp 266–276, Springer Verlag

Forbes, G. W. and Jones, A. E. W.: 1990, Towardsglobal optimization with adaptive simulated an-nealing, in Proceedings of International Lens De-sign Conference 1990, Vol. 1354 of SPIE

Gagne, C. and Beaulieu, J.: 2001, Li-brary for Lens System Ray Tracing,http://www.gel.ulaval.ca/˜cgagne/llsrt

Gagne, C. and Parizeau, M.: 2002, Open BEAGLE:A new C++ evolutionary computation framework,in Genetic and Evolutionary Computations COn-ference (2002), New York, NY, USA

Gruau, F.: 1994, Neural Network Synthesis us-ing Cellular Encoding and the Genetic Algorithm,Ph.D. thesis, Laboratoire de l’Informatique duParallelisme, Ecole Normale Superieure de Lyon,France

Hearn, G. K.: 1990, Pratical use of generalized sim-ulated annealing optimization on microcomputers,in Proceedings of International Lens Design Con-ference 1990, Vol. 1354 of SPIE

Holland, J. M.: 1975, Adaptation in Natural and Ar-

tificial Systems, University of Michigan Press, AnnArbor, MI

Isshiki, M.: 1998, Global optimization with escapefunction, in Proceedings of International OpticalDesign Conference 1998, Vol. 3482 of SPIE

Koza, J. R.: 1992, Genetic Programming: On theProgramming of Computers by Means of NaturalSelection, MIT Press, Cambridge, MA, USA

Koza, J. R.: 1994, Genetic Programming II: Auto-matic Discovery of Reusable Programs, MIT Press,Cambridge, MA, USA

Koza, J. R., David Andre, Bennett III, F. H., andKeane, M.: 1999, Genetic Programming 3: Dar-winian Invention and Problem Solving, MorganKaufman

Koza, J. R., Keane, M. A., Yu, J., Bennett III, F. H.,and Mydlowec, W.: 2000, Automatic Creation ofHuman-Competitive Programs and Controllers byMeans of Genetic Programming, Genetic Program-ming and Evolvable Machines pp 121–164

Lambda Research Corporation: 2001, OSLO: OpticsSoftware for Layout and Optimization (ReferenceManual), Lambda Research Corporation

Nosato, H., Kasai, Y., Itatani, T., Murakawa, M., Fu-ruya, T., and Higuchi, T.: 2001, Evolvable opticalsystems and their applications, in Evolvable Sys-tems: From Biology to Hardware (Proc. of ICES2001), Vol. 2210 of LNCS, pp 327–339, SpringerVerlag

Ono, I., Koboyashi, S., and Yoshida, K.: 1998, Globaland multi-objective optimization for lens design byreal-coded genetic algorithms, in Proceedings of In-ternational Optical Design Conference 1998, Vol.3482 of SPIE

O’Shea, D. C.: 1985, Elements of Modern OpticalDesign, John Wiley and Sons

O’Shea, D. C.: 1990, The monochromatic quartet: Asearch for the global optimum, in Proceedings ofInternational Lens Design Conference 1990, Vol.1354 of SPIE

Spector, L. and Luke, S.: 1996, Cultural transmissionof information in genetic programming, in GeneticProgramming 1996: Proceedings of the First An-nual Conference, pp 209–214, MIT Press

Sturlesi, D. and O’Shea, D. C.: 1990, Future of globaloptimization in optical design, in Proceedings ofInternational Lens Design Conference 1990, Vol.1354 of SPIE

EVOLVABLE HARDWARE162

Page 11: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

A Modified Compact Genetic Algorithm for the Intrinsic Evolutionof Continuous Time Recurrent Neural Networks

John C. GallagherDepartment of Computer Science and EngineeringWright State University, Dayton OH 45435-0001

[email protected]

Saranyan VigrahamDepartment of Computer Science and EngineeringWright State University, Dayton OH 45435-0001

[email protected]

AbstractIn the past, we have extrinsically evolved continuoustime recurrent neural networks (CTRNNs) to controlphysical processes. Currently, we are seeking to createintrinsic CTRNN devices that combine a hardware ge-netic algorithm engine on the same chip withreconfigurable analog VLSI neurons. A necessary stepin this process is to identify a genetic algorithm that isboth amenable to hardware implementation and is suffi-ciently powerful to effectively search CTRNN spaces.In this paper, we will propose and test several varia-tions of the compact genetic algorithm (CGA) forsearching these spaces. We will then benchmark thebest variant using the De Jong functions, outline ahardware implementation, and discuss future plans todevelop an integrated evolvable hardware device control-ler.

1. INTRODUCTION

The author has proposed the use of Continuous Time Re-current Neural Networks (CTRNNs) as an enablingparadigm for evolving analog electrical circuits. In previ-ous work we focused almost exclusively on extrinsicallyevolved CTRNNs that were created in simulation and onlylater implemented in hardware. We are currently interestedin producing intrinsic CTRNN devices that evolve onlineas they are controlling physical processes. We feel that anecessary step in achieving this goal is to combine recon-figurable analog CTRNNs and a hardware evolutionarysearch engine onto a single VLSI device. Half of theproblem, the feasibility of implementing CTRNNs inanalog VLSI, has been addressed elsewhere [Gallagher andFiore, 2000]. This paper will address the feasibility ofsearching CTRNN spaces with hardware based genetic al-gorithm that can be fabricated on the same chip withreconfigurable CTRNN hardware.

Several hardware based evolutionary algorithms (EAs) havebeen proposed in recent years [Kajitani, T., et.al., 1998][Scott and Seth, 1995] [Yoshida and Yasuoka., 1999] Onein particular, the Compact Genetic Algorithm (CGA)[Harik, Lobo, and Goldberg 1999] is especially well suitedfor efficient hardware implementation using common VLSItechniques [Aporntewan and Chongstitvatana, 2001]. TheCompact Genetic algorithm, however, is a very weak evolu-tionary algorithm -- only equivalent to a first-order simpleGA with uniform crossover and tournament selection [Harik,Lobo, and Goldberg 1999]. Although it is well suited toefficient hardware implementation, the standard CGA is notpowerful enough to effectively evolve practical CTRNNdevice controllers. This paper will propose several simplevariations of the CGA designed to increase the effectivenessof the search with respect to CTRNN devices. We will testthe performance of the standard CGA and our variantsagainst a benchmark locomotion control problem and showthat, with simple modifications that do not significantlycomplicate hardware implementation, we can effectivelyevolve effective CTRNN control devices. Further, we willdemonstrate that the performance of our modified CGA is,for this problem, superior to the simple genetic algorithmswe have employed in the past.

2. THE BENCHMARK PROBLEM

Our benchmark problem is the control of legged locomotionin a simple, single-legged artificial agent. For the agent towalk, the leg must alternate swing and stance phases. Aswing begins with the leg in its full backward position (atnegative leg angle range limit) and the foot raised in the air.Then the leg rotates clockwise to swing the foot forward. Astance begins by placing the foot of a fully forward leg onthe ground. Then the leg rotates counterclockwise to propelthe body forward. Figure 1 shows the agent at the begin-ning of a stance phase. The leg contains three effectors andone sensor that returns the leg’s angular position in radians.One effector governs the state of the foot (FT) and the other

EVOLVABLE HARDWARE 163

Page 12: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

two generate clockwise (BS) and counter-clockwise torques(FS) about the leg’s single joint with the body. The torquesabout each joint are summed, and depending on the state ofthe foot will either translate the body forward (foot down) orrotate the leg about its joint (foot up). Each leg has a lim-ited range of angular motion (±π/6 radians - corresponds tothe light gray wedge in Figure 1). A supporting leg maystretch outside of this range, but provides no transitionalforces when doing so. The leg may not stretch outside anabsolute limit (±1 radians - corresponds to the dark graywedge in Figure 1). This behavior is intended to model thereduced ability of a hyper-extended leg to provide propulsion.When the leg is lifted from the ground, the agent "falls" andits velocity is immediately set to zero.

The agent’s behavior is controlled by a fully connected con-tinuous time recurrent neural network (CTRNN) [Beer,1995] with the following state equation:

τ σ θii

i ji i ij

Ndy

dty w y= − + +( )

=∑

1

where y is the state of each neuron, τ is its time constant,wji is the strength of the connection from the jth to the ith

neuron, θ is a bias term, and σ ( ) /( )x e x= + −1 1 is thestandard logistic activation function. States were initializedto uniform random numbers in the range ±0.1 and circuitswere integrated using the forward Euler method with an inte-gration step size of 0.1. In each evolved CTRNN, threeunits are motor neurons and provide control efforts to theforward swing (FS) and backward swing (BS) and FOOT(also called FT). The remaining neurons in each leg control-ler have no pre-specified role. For the experiments reportedin this paper, the controlling CTRNNs receive no sensoryinput from the outside world.

3. COMPACT GENETIC ALGORITHM

In a compact genetic algorithm [Harik, Lobo, and Goldberg,1999], the population is represented by a probability vectorthat codes the chance that each bit in an individual will be aone or a zero. Each generation is a single tournament be-tween two individuals randomly generated from the globalprobability vector. The probabilities governing each bit areadjusted according to the result of the tournament. Tourna-ments are run until the probability vector converges. Thebasic CGA can be summarized as follows:

1. Initialize probability vectorfor i:=1 to l do p[i]=0.5

2. Generate two individuals from the vectora := generate(p);b := generate(p);

3. Let them competewinner, loser := evaluate(a,b);

4. Update the probability vector toward the betteronefor i := 1 to l do

if winner[i] <> loser[i] then if winner[i] = 1 then p[i] +=1/n else p[1] -= 1/n

5. Check if the probability vector has convergedfor i = 1 to l do

if p[i] > 0 and p[i] < 1 thengoto step 2

6. P represents the final solution

In the above description, l represents the number of bits inthe genome and n represents the size of the simulated popu-lation. In this paper, we will systematically consider twomodifications to the basic CGA. These are:

a) ElitismWe will implement elitism (the best individual seen todate stays in the population) by modifying step 2 of thebasic CGA so that only the “losing” contestant of eachtournament is randomly generated at the beginning ofthe next tournament. This ensures the best individualseen to date remains in consideration. We may moreformally state this modification by rewriting step 2 ofthe standard CGA as follows:

π6

-1.0

direction of travel

−π6

Figure 1: The Single Legged Agent

EVOLVABLE HARDWARE164

Page 13: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

2) Generate one individual from the vector

if fitness(a) > fitness(b) thenb = generate(p);

else a = generate(p);

b) MutationWe will implement mutation by adding a secondarytournament to each cycle that compares the performanceof the current elite string with a mutated version of it-self. If the mutated version wins, it replaces the oldchampion as the elite string for the next tournament.The bit positions that changed also have their probabili-ties returned to 0.5, or some other user selected value.Our implementation of mutation presumes elitism. Wecan more formally describe this modification by alteringstep 2 as described above and adding a new step as fol-lows:

4.5) Mutate Champ and Evaluateif fitness(a) > fitness(b)

{ c = mutate(a); evaluate(c); if fitness(c)>fitness(a) then

{ a = c; prob_fix(p);}

}else { c = mutate(b);

evaluate(c); if fitness(c) > fitness(b) then

{ b = c; prob_fix(p); }

} The prob_fix() routine resets p[x] to 0.5 for everyposition x that was mutated. Heuristically, this ismeant to represent the fact that a mutation in that posi-tion seems like a good idea, but that we don’t want tocommit to it completely. Rather, we want to remainundecided (there’s a fifty percent chance of either bit set-ting occurring) and let a history of evaluationsdetermine which way that bit position should be set.

It should be noted that with the introduction of muta-tion, CGA convergence can no longer be guaranteed.One must modify the end condition appropriately, per-haps by setting a maximum number of tournaments tobe run.

In later sections of this paper, we will refer to the standardCGA simply as “CGA”. We will refer to a CGA with theelitism modification as “eCGA”. We will refer to a CGA

with both the elitism and mutation modifications as the“modified CGA”, or the “mCGA”.

4. PRELIMINARY COMPARISON OF CGA VARIATIONS

Our first set of experiments was designed to compare therelative efficacy of the three variations on the CGA describedabove. For these experiments, the parameter settings of afive neuron, fully connected CTRNN were encoded on a bitstring genome using eight bits per parameter. Values wereencoded as fixed-point binary numbers and were simply con-catenated into a single string. For five neuron CTRNNs,there were 40 parameters resulting in a bit string of length320. The fitness of a particular CTRNN was the amount ofdistance it caused the agent to walk in a fixed amount oftime. No special scaling was applied to the fitness. Onehundred three (103) searches each were run using CGA,eCGA, and mCGA. We found that the CGA failed terribly.Not one of the 103 runs of the CGA produced an agent ca-pable of locomotion. Approximately 34% of the runs ofeCGA produced agents capable of walking at a speed of atleast 80% of optimal. 71% of the runs of mCGA producedagents capable of walking at a speed of at least 80% opti-mal. These results are summarized in Table 1. For thisbenchmark CTRNN search problem, mCGA is clearly supe-rior. Further, mCGA compares very well to the simplegenetic algorithm. Previous results using the simple GAfor the same problem produced a yield of approximately 75%and an average performance of 91.1% of optimal.

5. mCGA and the CTRNN Benchmark

The preliminary benchmark results of the last section sug-gest that, of the CGA variants discussed, mCGA is the bestsuited to searching CTRNN spaces. Further, those bench-marks suggest that mCGA is, for searching CTRNN spaces,at least as effective as the standard simple genetic algorithm.Our second set of experiments was aimed at producing a

Search Type Yield Avg. PerformCGA 0% 0%

ECGA 33.7% 89.0%MCGA 71.0% 92.9%

Table 1: Relative Performances of CGA VariantsYield shows the percentage of runs that resulted in aCTRNN controller that was at least 80% of optimal. Avg.Performance shows the mean of the performances of allcontrollers that achieved better than 80% of optimal. Notethat both the yield and relative quality is greater for mCGAthan for eCGA. Also note that the standard CGA is totallyineffective for this problem.

EVOLVABLE HARDWARE 165

Page 14: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

more detailed picture of the efficacy of mCGA in searchingCTRNN spaces.

Approximately 100 GA searches were run over each of eightarchitecture sets. The base architectures searched were 3, 4,5, 6, 7, 8, 9, and 10 neuron fully-connected CTRNNs. Thepurpose of these tests as to examine how well mCGA scaledto more difficult searches. The results of these experiments,as well as the results of previously reported applications ofthe simple genetic algorithm to the same problems [Galla-gher, 1998], are shown in Table 2. mCGA runs werelimited to a maximum of 100,000 tournaments to ensurethat approximately the same number of candidate evalua-tions were made in both mCGA and simple geneticalgorithm experiments. In terms of either the quality of so-lutions or yield of successful solutions, there is nosignificant difference between the simple GA and mCGA forsmall CTRNNs. However, there is a significant differencein both yield and quality of solution for CTRNNs of six ormore neurons. The simple genetic algorithm simply cannot cope with longer bit strings, while the mCGA seemsquite capable of searching these larger spaces.

The reason for the relatively poor yields of CPG3 networkshas been identified and discussed extensively in other works[Beer, Chiel, and Gallagher; 1999][Chiel, Beer, and Galla-gher; 1999]. In short, three-neuron CTRNNs lacksufficiently many degrees of freedom to properly solve thelocomotion problem. The relative scarcity of three-neuronsolutions increases the difficulty of the search. It also putsa cap on the maximum effectiveness of the solutionsevolved. Our data shows that mCGA performs no worsethan the simple GA in the face of these difficulties. Pre-liminary experiments with single elimination tournamentsin the mCGA, however, show an increase in the yields ofCPG3s to 68%. We are currently engaged in further ex-perimentation to better characterize this surprisingphenomenon.

6. mCGA and the De Jong Test Functions

mCGA was developed against a specific CTRNN bench-mark problem. During that development, we saw thatthough both the addition of elitism and mutation were use-ful, it was the addition of mutation that seemed to providethe most benefit. Both as a means of evaluating the effectof differing mutation rates and as means of evaluating themCGA against standard benchmarks, we tested it againstthe De Jong test functions [De Jong, 1975]. We ran 100mCGA searches for each of the five De Jong test functionsfor bitwise mutation rates of 0.0, 0.5, 0.1, 0.15, and 0.20.Each objective function parameter was coded with sameprecision and range as in De Jong’s thesis. Because mCGAas formulated above doesn’t converge for higher mutationrates, we capped the number of generations at 100,000 to beconsistent with the CTRNN benchmarks previously dis-cussed. Simulated population size was set to 100 forsimilar consistency with the CTRNN benchmarks.

mCGA always succeeded in finding the global optimal forDe Jong F1. This is perhaps not surprising, as the uni-modal and symmetric F1 represents a very easyoptimization problem. We did note, however, that for F1,small mutation rates allowed for faster searching. On aver-age, mCGA found the F1 global optimal after about 672generations with a mutation rate of 0.0. With a mutationrate of 0.05, this was halved to about 332 generations.Higher rates, resulted in delayed appearances of the optimal.At mutation rates of 0.1, 0.15, and 0.2 it took on average537, 1589, and 13363 generations respectively to find theglobal optimal.

Figure 2 shows the average scores, based on 100 runs, ofthe best solutions found for De Jong F2, F3, F4, and F5 forthe same bitwise mutation rates listed above. Note that forF2, F3, and F5, increased mutation leads to an increasedchance of finding the optimal. Also note, however, thatjust like with F1, increasing the mutation also increases thenumber of generations, on average, that one needs to waitfor the optimal to appear. F4 behaves differently. A little

Arch Set Parameters Bit Length mCGA Yield sGA Yield mCGA Avg sGA AvgCPG3 18 144 38.8% 40.4% 88.8% 89.1%CPG4 28 224 61.2% 66.3% 90.3% 91.9%CPG5 40 320 71.0% 74.5% 92.9% 93.2%CPG6 54 432 79.0% 65.4% 92.2% 93.0%CPG7 70 560 84.5% 63.3% 92.6% 92.0%CPG8 88 704 87.9% 64.7% 94.4% 89.9%CPG9 108 864 91.3% 57.0% 93.2% 88.9%CPG10 130 1040 87.3% 59.8% 93.8% 88.8%

Table 2: mCGA vs. Simple Genetic Algorithm for Varying Search Space SizesYield and avg. performances are as defined in Table 1. mCGA refers to the CGA with mutation and elitism. sGA refers to a stan-dard simple genetic algorithm. Mann-Whitney tests show no significant differences in either yield or average performance upthrough CPG5. After CPG5, both yields and average performances drop off sharply and significantly for the standard geneticalgorithm, while both yield and average performance hold steady for mCGA at least up through CTRNNs of nine neurons.

EVOLVABLE HARDWARE166

Page 15: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

mutation helps, but increasing it too much results in a deg-radation of the quality of solutions found. F4 is a simpleunimodal function with gaussian noise and is meant to testhow well an optimization algorithm deals with noisy objec-tive functions. In the simple genetic algorithm, a mutationof an individual that received a deceptively good score byrandom chance would be likely to drop out of the popula-tion eventually. We would expect it would not receivedeceptively good scores sufficiently often to allow it tospread through the population. mCGA, however, simulatesa mutated individual having spread widely into the popula-tion instantaneously by modifying the probability vectorthat simulates the population. In a sense, the momentumeffects provided by having a real population are not presentin mCGA, and we could therefore expect it to be quite eas-ily tricked by deceptive evaluations of individuals. Thiseffect is magnified as we allow more mutation events tooccur in a search. We will discuss possible fixes to thisproblem later in this paper.

7. A Proposed Hardware Implementation

A design for a hardware implementation of the compactgenetic algorithm is in the literature [Aporntewan andChongstitvatana, 2001]. A hardware implementation of ourmCGA is not much more difficult to achieve. In this sec-tion, we will outline one possible hardware implementationof the mCGA. We will present a data path that supports allthe operations needed to implement the mCGA as describedin section three of this paper. We will also provide a quali-tative description of the actions that an on-chipmicrocontroller needs to take to implement the mCGA.

A proposed data path is provided in Figure 3. The design issimilar to that in [Aporntewan and Chongstitvatana, 2001],but contains additional machinery to implement elitism andmutation. The bit probability for a genome position as wellas bits for that position for two candidates are held in anumber of “bit modules”. In figure 3, two bit modules are

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0 0.05 0.1 0.15 0.2

F2

0

0.5

1

1.5

2

2.5

0 0.05 0.1 0.15 0.2

F3

0

2

4

6

8

1 0

1 2

1 4

0 0.05 0.1 0.15 0.2

F4

1

1.5

2

2.5

3

3.5

4

0 0.05 0.1 0.15 0.2

F5

Figure 2: Average Errors Attained on De Jong F2 - F5For each graph, the y-axis shows the average final error attained based on 100 runs. In all cases, the bottom tick on the y-axisrepresents the lowest attainable error score. The x-axis shows setting of the mCGA bitwise mutation rate.

EVOLVABLE HARDWARE 167

Page 16: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

RegFile

F

F

FEVF

CMP

MutationRegister FEV

F

F

CMP

CMPRNG 8

8

PRB

BUF

0

CMPRNG 8

8

PRB

BUF

1

E

To Additional Bit Modules

shown enclosed in gray boxes and labeled 0 and 1. Largergenomes can be implemented by adding additional modulesas needed. The components in the data path are defined asfollows:

RNG : A random number generator. When activated, thisdevice will generate a random eight-bit number

CMP : A standard multibit comparator

PRB : The probability register. This register contains aneight bit value that encodes the probability of thatbit position is a 1. The device also has control linesthat allow incrementing, decrementing, or settingthe probability to 0.5.

BUF : A 2x1 memory device. A select line allows one toload a bit into the “top” or “bottom” bit position.This device is used to hold bit values at a positionfor the two candidates under consideration.

E : E is a one bit register that encodes which of the twobits stored in each BUF (top or bottom) is part ofthe current “elite individual.

FEV : The Function Evaluator. This is hardware that pro-vides an error score for the bit pattern supplied to it.This hardware could be on chip or it could obtain theerror evaluation with off-chip circuitry. We encodethe error score as an F bit number.

MR : Mutation Register. This device acts like a normalregister except that it mutates bits according to auser specified mutation rate.

RF: Register File. A simple register file that stores theF bit errors for the “top” and “bottom” candidatesstored in the bit modules.

MUX : Standard multibit multiplexers. Shown in the datapath as unlabeled trapezoids.

The mCGA would be implemented by augmenting the datapath with a microcontroller that would complete the follow-ing operations.

Figure 3: Sample Data Path for the mCGAA sample data path capable of implementing the mCGA in hardware. Components are defined in the text. Bold gray lines are Nbit busses where N is the number of bits in the genome. For large genomes, these wide busses can be replaced with serializedcommunication channels.

EVOLVABLE HARDWARE168

Page 17: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

1. The Probability Registers (PRBs) are set to hold theirinitial probabilities of 0.5. All registers and buffers arezeroed.

2. Each RNG generates a random number. This value iscompared with the contents of the corresponding PRB.Each CMP produces a 1 if the generated random numberis less than the probability and a zero if it is greater.Each generated bit in each of the bit modules is writteninto the “top” slot of the buffer (BUF). The E bit,which was cleared in step one, designates the “top” slotas holding the current elite individual.

3. Step 2 is repeated, except this time the bits generated byeach comparator are stored in the “bottom” slots of eachBUF.

4. One at a time, all the bits in the top buffers are routedto the FEV module. Each string is evaluated and the Fbit errors are stored in the “top” and “bottom” slots ofthe register file.

5. The errors sent from the register file to a comparator.The identity of the best score (top encoded as zero, bot-tom encoded as 1) is sent back to and stored into the Ebit. We now know which of the two initially generatedindividuals is the better.

6. All the bits making up the current elite individual arerouted into the mutation register, creating a mutatedversion of the current best individual.

7. The bits making up the mutated candidate string arerouted to a FEV. The error resulting error score iscompared with the previously computed error score ofthe best (taken from the register file). If the mutated in-dividual is better, all the bits from the mutation registerare copied into their corresponding bit modules into thecurrently elite buffer slots. The PRBs inside of bitmodules corresponding to bits that changed are also in-structed to reset to hold a probability of 0.5.

8. Each RNG generates a random number, which is com-pared with the corresponding PRB to generate a bit asdescribed in step two. Each new bit is written into theNON ELITE slot in each bit buffer (BUF).

9. If our end condition is not met, go to step 4.

8. Conclusions and Discussion

We desire to combine reconfigurable analog neurons and ahardware-based genetic algorithm into a single device to beused to control and regulate physical processes. For ourapplication, compact size is vital. The CGA is particularlyamenable to implementation using standard VLSI techniquesand would result in extremely compact circuitry. The CGA,however, is known to be a weak search method. We haveshown that the unmodified CGA is not sufficiently powerful

to evolve CTRNN controllers. However, by making simplemodifications that do not require major increases in thenumber of gates necessary to implement the CGA in hard-ware, we can produce a modified CGA that competes wellwith the simple genetic algorithm. In fact, we have shownthat our modified CGA, for this problem, is actually pro-vides superior search performance for approximately thesame computational cost. Additionally, we have shownmCGA, for the most part, performs well on the five DeJong test functions. Where it performs less well, specifi-cally on randomized error functions, we have identified theproblem and are in a position to fix it. These results aloneare significant. At least as significant, however, are theinteresting questions raised by these results

First, we expected that unmodified CGA would not be ableto search CTRNN spaces effectively. We also expected thatwith appropriate modification, we would be able to makeCGA work without incurring a great penalty in hardwarecost. We did not expect that the modified CGA would out-perform methods previously employed. We intend tocarefully study our modified CGA to determine exactly whywe observed this improved performance. We formulated ourmodifications based on our experience about what works forevolving CTRNNs. Did, however, we stumble on some-thing that searches other spaces well too? We intend toanswer this question by applying the mCGA to difficultsearch problems outside of our target problem domain. Ifmore universally successful, we will more carefully andformally analyze the algorithm.

Second, the introduction of single elimination tournaments,unlike the other modifications we proposed, does somewhatincrease the number of gates required for hardware imple-mentation. Tournaments are, therefore, somewhat lessattractive for our stated problem domain. However, that wehave already observed a significant gain in yield for the dif-ficult CPG3 problem is interesting. We intend to study thetournament modification more carefully in the future. Itmay be the case that increases in effective yield might bewell worth the increased hardware costs.

Third, the single-leg CPG problem was not chosen arbitrar-ily. It happens to be the best studied, and because thecontroller may not make use of sensory feedback, one of themore challenging, locomotion control problems we haveconsidered to date. This makes it a reasonable initialbenchmark of mCGA efficacy. We need, however, to applythe search method to a wider variety of CTRNN controlproblems. Initial results are very encouraging. We havesuccessfully used mCGAs to evolve hexapod locomotioncontrollers and controllers correcting arrhythmia in simu-lated human hearts. These results also represent importantverifications against prior work. However, we desire to becareful and ensure that all our results possess a high degreeof statistical significance. Therefore, we need to run moreexperiments against these other problems before we haveenough instances to report more than anecdotally on widersuccess.

EVOLVABLE HARDWARE 169

Page 18: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Fourth, we have extensively studied the neural dynamicalprinciples underlying the operation of CTRNN locomotioncontrollers evolved using the simple genetic algorithm[Beer, Chiel, and Gallagher, 1999][Chiel, Gallagher, andBeer, 1999]. We have yet to rigorously study the principlesunderlying the operations of the mCGA produced control-lers. One would expect them to operate using similarprinciples -- however, we have three mCGA producedCPG3’s that seem to defy explanation using the dynamicalsystems techniques previously developed. Analysis of thesedevices is under way. The differences in the resulting prod-ucts may reveal that the mCGA is searching a portion ofCTRNN space difficult for previous methods to reach. Thenature of the “difficult to reach space” may provide impor-tant clues on why our modifications work so well andperhaps, suggest additional modifications that might helpus search CTRNN spaces more reliably.

In the future, we intend to expand and optimize the hard-ware mCGA. This should be a fairly straightforward taskand we expect to have completely validated designs veryshortly.

In conclusion, we have demonstrated that the marriage ofthe mCGA and reconfigurable CTRNN hardware is likely toproduce compact, capable EH chips. In addition to provid-ing an important feasibility result, we have also openedseveral interesting new lines of inquiry that will likely pro-vide equally interesting results as they are pursued. OurmCGA is almost certainly well suited to CTRNN-EH, andmay be adaptable to other EH efforts as well.

Acknowledgments

The authors would like to thank Steven Perretta and WendyPeluso for their comments and suggestions on this manu-script.

References

Aporntewan, C. and Chongstitvatana, Prabhas. (2001). Ahardware implementation of the compact genetic algo-rithm. In The Proceedings of the 2001 IEEE Congress onEvolutionary Computation. Seoul, Korea. IEEE Press

Beer, R.D. (1995). On the dynamics of small continuous-time recurrent neural networks. Adaptive Behavior3(4):469-509.

Beer, R.D., Chiel, H.J. & Gallagher, J.C. (1999). Evolu-tion and analysis of model CPGs for walking II. Generalprinciples and individual variability. J. ComputationalNeuroscience 7(2):119-147. (Kluwer).

Chiel, H.J., Beer, R.D., & Gallagher, J.C. (1999). Evolu-tion and analysis of model CPGs for walking I.Dynamical modules. J. Computational Neuroscience7:(2):99-118.

De Jong, K.A. (1975). An analysis of the behavior of aclass of genetic adaptive systems. Doctoral dissertation,University of Michigan, Ann Arbor. University Micro-films Num 76-9381.

Gallagher, J.C. (1998). A dynamical systems analysis of theneural basis of behavior in an artificial autonomous agent.Ph.D. Doctoral dissertation, Case Western Reserve Uni-versity. Cleveland, OH. USA.

Gallagher, J.C. and Fiore, J.M. (2000). Continuous timerecurrent neural networks: a paradigm for evolvable analogcontroller circuits. in The Proceedings of the NationalAerospace and Electronics Conference. IEEE Press.

Harik, G.R., Lobo, F.G., and Goldberg, D.E. (1999). Thecompact genetic algorithm. In IEEE Transactions onEvolutionary Computation vol. 3 no. 4. pp 287-297

Kajitani, T., Hoshino, T. Nishikawa, D., et.al. (1998). Agate level EHW chip: implementing GA operations andreconfigurable hardware on a single LSI. In Proceedingsof the International Conference on Evolvable Hardware(ICES 1998).

Scott, S. and Seth, A. (1995). HGA: a hardware-based ge-netic algorithm, In Proceedings of the ACM/SIGDA ThirdInt. Symposium on Field-Programmable Gate Arrays.

Yoshida, N. and Yasuoka, T. (1999). Multi-gap : paralleland distributed genetic algorithms in VLSI. In Proceedingsof the International Conference on Systems, Man, andCybernetics

EVOLVABLE HARDWARE170

Page 19: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Evolving Fault Tolerance on an Unreliable Technology Platform

Morten Hartmann1 Frode Eskelund1 Pauline C. Haddow1 Julian F. Miller2

1Dept. of Computer and Information Science 2School of Computer ScienceThe Norwegian University of Science and Technology University of Birmingham

NO-7491 Trondheim, Norway Birmingham, B15, UKfmortehar,eskelund,[email protected] [email protected]

Abstract

One of the key areas in which evolvable hardwarehas been shown to excel is in achieving robustanalogue and digital electronics. In this paperthis domain is investigated further by manipula-tion of the digital abstraction. Some of the strictrequirements of digital gates are relaxed in or-der to increase the complexity of the functional-ity available to evolution in order to evolve faulttolerant designs. Results from extrinsic evolu-tion of a 2-by-2 bit multiplier, based on CMOStechnology under various noise and fault condi-tions, illustrate the suitability of the messy gatemethodology used herein for evolution of a faulttolerant design.

1 INTRODUCTION

Silicon is not a truly reliable technology. However, by us-ing a digital abstraction we obtain a more robust platformagainst signal variation and noise whilst sacrificing muchintrinsic complexity. That is, above and below the digitalthresholds we are not concerned with signal variations.

Each gate and its connections plays a crucial role in theoverall behaviour of a digital circuit. Unforeseen eventscan easily prevent proper operation of a regular digital de-sign. Why is this? The digital abstraction assumes thatthe technology will always operate within the specificationslaid down by the abstraction mechanism and since silicon isnot a truly reliable technology, deviations may be expected.

A number of noteworthy efforts have already been con-ducted within fault detection and repair based on theprinciples of biological development. In the embryol-ogy work conducted at York [OT99] and Ecole Polytech-nique Federale de Lausanne (EPFL) [MSST00], experi-ments have been conducted using FPGAs with extended

Configurable Logic Blocks (CLBs) to contain a completegenotype of the circuit. Through repeated cell divisions, acircuit develops from a single cell into a full-grown phe-notype. An interesting approach was taken in [BOST00]where principles of biological immune systems wereadopted to attain fault-tolerance. Work on achieving toler-ance to temperature changes includes [TL00] and [SKZ01].

Inherent fault tolerance is present if the design is able tocontinue its operation undisturbed by fault inducing eventswithout the need for explicit mechanisms for fault detec-tion and recovery. This may be achieved by robust waysof computation or by an underlying fault-detection and re-pair from within the technology. The work of Haddow andvan Remortel [HvR01] considered possibilities for achiev-ing fault detection and repair from within the technologyas well as more fault tolerant ways of distributing digi-tal designs onto the technology based on the amorphouscomputing concept [Aea99]. Hounsell and Arslan [HA01]have developed a fault tolerant hardware platform for theautomated design of multiplier-less digital filters. Tyrrellet al [THS01] have used evolutionary strategies to achieveredundancy thus providing inherent fault tolerance in thedesign.

The approach described herein uses the concept of messygates [MH01a]. The messy gate concept may be said to bea fault tolerant methodology rather than fault detection andrepair methodology. This tolerance is a tolerance to a lessreliable technology. It may not only tolerate less than per-fect gates but in fact uses evolution to exploit this messinessi.e. non perfect digital signals. Other work which exploitedfeatures of the technology includes the work of Thomp-son [Tho96]. Here the focus was not so much on fault tol-erance but more towards achieving unique solutions to dif-ficult problems and, as such, illustrating the power of evo-lution. Messy gates are able to operate in analogue voltagelevels that are outside the normal digital scope. In addi-tion, the analogue outputs of the messy gates are allowedto propagate through the circuit.

EVOLVABLE HARDWARE 171

Page 20: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

Circuit designs are evolved using messy gates as their com-ponents. As in nature, evolution is not prone to designswhere every part is required for satisfactory behaviour, butrather to distributed designs where no single point is cru-cial. Fault tolerance emerges through the abstraction mech-anism as its functionality is exploited by evolution.

Earlier work of Miller and Hartmann [MH01a, MH01b] onthe messy gates approach may be said to be a proof of con-cept. That is, the model did not take into account any par-ticular technology but more investigated the possibility ofexploiting non-perfect digital gates to achieve fault toler-ance. This work showed promising results and, as such, themodel has been extended to a technology specific model.This paper presents the new model, simulator and the re-sults of experimentation.

The model for the messy gates and the simulator that wasdeveloped are described in section 2. In section 3, the evo-lutionary algorithm is explained. Section 4 describes theexperiments and section 5 gives a discussion of the results.In section 6 we present some ideas for future work and sec-tion 7 presents our conclusions.

2 MESSY GATES AND THE SIMULATORENVIRONMENT

Introduced in [MH01a] and elaborated in [MH01b], messygates is an approach which removes some of the digital ab-straction and investigates the impact on evolution of cir-cuits using these gates to achieve fault tolerance. Whileearlier work is based on an abstraction level not close toa specific hardware technology, this paper introduces amodel of messy gates which is very close to one technol-ogy, specifically Complementary Metal Oxide Semicon-ductor (CMOS). The model is parameterised and can betuned to different semiconductor technologies.

The simulator is based on observations made during ana-logue simulation of digital gates in Simulation Programfor Integrated Circuits Emphasis (SPICE). Each gate wasmodelled at the transistor level including various errorsources. Figure 1 shows the model of a NOR gatewhich was provided to the SPICE simulator. As shown,the model incorporates three noise generators (FGEN1

through FGEN3), several capacitances (C1 through C3),current leaks (R1 and R2), and output load (LOAD).NAND, NOR, NOT, MUX and NMUX (multiplexor withone input inverted) gates were simulated at analogue 5VCMOS transistor level whilst being exposed to differentconfigurations of capacitances, resistances and noise. Forthe purpose of the experiments herein, only the MUX andNMUX gates were used.

A sigmoid function was used to approximate the fall and

rise behaviour of the digital gates. Sigmoid functionsfor each gate type were individually tuned to approximatebehaviour shown in SPICE simulations. For instance, aNOR gate was simulated in SPICE showing a behaviouras shown in Figure 2. Using a sigmoid function this wasapproximated in our model as shown in Figure 3. Approx-imations were subject to some limitations due to the factthat a look-up table replaced a full sigmoid function in or-der to speed up simulations. The size of this table was lim-ited to 64 KB, in order to allow it to fit into the first levelcache of most modern processors. It should be noted thatthe smoothness displayed in Figure 3 is only the core partof the gate model, and more noisy behaviour like the one inFigure 2 is likely to be displayed as noise is added.

Figure 1: SPICE transistor level layout of NOR gate

0,000,100,200,300,400,500,600,700,800,901,00

0,00

0,20

0,40

0,60

0,80

1,00

-0,10

0,00

0,10

0,20

0,30

0,40

0,50

0,60

0,70

0,80

0,90

1,00

1,10

Output

Input A

Input B

Figure 2: SPICE simulation of NOR gate

The current simulator focuses on internal faults of typesstuck-at errors, floating outputs and partly random output,

EVOLVABLE HARDWARE172

Page 21: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

0,000,100,200,300,400,500,600,700,800,901,00

0,00

0,20

0,40

0,60

0,80

1,00

0,00

0,10

0,20

0,30

0,40

0,50

0,60

0,70

0,80

0,90

1,00

Output

Input A

Input B

Figure 3: Model approximation of NOR gate

in addition to supporting induced signal noise. Input or out-put stuck-at errors cover the cases of short-circuit to poweror ground and certain cases of inter-signal short-circuits.Floating output errors covers the case where the output iscompletely random, while partly random output covers thecase where the output is correct for one logical value whilerandom for the other logical value e.g. logical 1 is rep-resented as 1 whilst logical 0 is represented as a randomnumber from 0 to 1. The simulator uses a real number in-ternal representation within the range 0 to 1, to representthe CMOS voltage range of 0 to 5 volts.

The transistor layout used in SPICE simulations allowsanalogue signals to propagate through gates and there is noexplicit mechanism for pulling the output signal to eithera completely high or low state e.g. a push-pull stage. Asshown in Figure 3, the sigmoid behaviour will allow prop-agation of analogue signals and yet be biased towards thedigital endpoints of the analogue scale (the real numbers 0and 1 in simulation). The model provides evolution withthe possibility to exploit this non-digital feature to achievemore robustness in evolved designs.

The resulting gate model used in the simulator is illustratedin Figure 4. E1, E2 and E3 generate one of the supportederrors (stuck-at, floating outputs or partly random output)or let the signal propagate through without error. The prob-ability of error is preset as a parameter, whilst the type oferror is random with equal probability for each of the fourpossible faults. F is the sigmoid function approximatedto the real behaviour of the corresponding gate in SPICE.Finally, the output noise N is superimposed on the signalto approximate errors that are not explicitly a part of the

model e.g. thermal noise, radiation, power supply noise,component variance and cross talk. The errors and noise ofthis abstracted model is not directly related to the errors ofthe transistor model, but are present to achieve a behavioursimilar to that shown by the transistor model. The simula-tor currently supports feed-forward networks and realiza-tion details such as routing and layout are ignored.

F

E1

E2

E3 N

: Input error: Input error

E1E2

: NoiseNFE3

: Function generator: Output error

Figure 4: Generic 2-input gate

3 EVOLUTIONARY ALGORITHM

The algorithm used is a (1+�) evolutionary strategy withneutral genetic drift. That is, a generation consists of thebest individual from the former generation and mutationsof it. Neutral drift is obtained when in the case of equalfitness amongst the best individuals, one not from the for-mer generation is selected. The work of Vassilev and Miller[VM00] illustrates the advantage of this approach.

The target solution is defined simply via its truth table andthe number of inputs and outputs. Under fitness evaluation,every circuit is subject to the complete set of possible in-puts and a selection of noise and fault vectors. The outputsgenerated by the circuit are compared to the target solutiontruth table and any analogue output values are clamped totheir closest digital value for comparability.

The fitness function used is expressed in Equation 1. Acircuit C (individual) is tested against the target truth table(T ) a number of times (TPI) under different environments.Noise and fault probabilities are used to generate the differ-ent environmentsm for each test.

The average of all tests is computed to yield a penalty forthe number of incorrect output vectors. Another term (Gc �Gp) penalises the number of gates. Finally, these termsare subtracted from the maximum obtainable fitness Max

to yield a fitness score in the range 0 to the total number of

EVOLVABLE HARDWARE 173

Page 22: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

nature label select type input A input Binput 0input 1input 2input 3gate 4 0 MUX 0 3gate 5 2 MUX 2 0gate 6 5 NMUX 0 1gate 7 2 MUX 2 1gate (o) 8 7 MUX 7 4gate (o) 9 8 MUX 5 6gate (o) 10 4 MUX 7 6gate (o) 11 3 MUX 4 1

Figure 5: Example genotype of a 4 inputs, 4 outputs circuit

output vectors in the target truth table minus 1 e.g. 24�1 inthe case of the 2-by-2 bit multiplier. Thus, the range of thefitness of the 2-by-2 bit multipliers described in section 4is 0 to 15.

F =Max�

PTPI

n=1diff(Cm; T )

TPI+Gc �Gp

!(1)

F Fitness of individualMax Maximum obtainable fitnessTPI Test pr. individualdiff() Number of incorrect output vectorsCm Circuit in environmentmT Target truth tableGc Number of gates usedGp Penalty pr. gate used

An example of the genotype used to represent a circuit isshown in Figure 5. The connections of this specific geno-type can be seen in Figure 7. Connections refer to labels ofeither the inputs of the circuit (0 to 3 in the example) or tothe output of one of the gates in the circuit (4 to 11 in theexample). The last gates in the genotype representation areconsidered to be connected to the external outputs of thecircuit (8 to 11 in the example). Only feed-forward con-nections are allowed. The genotype uses MUX and NMUX(multiplexor with one input inverted) and as such, each gatehas three inputs (select, input A and input B).

Mutations are done at gate level. If a gate is mutated, oneof its inputs is remapped or its type is changed to a randomtype within the predefined set of gate types. The gate typesavailable to evolution are predefined. The simulator is notlimited to the gates described in section 2, but each newgate requires handcrafted tuning of parameters.

4 PERFORMED EXPERIMENTS

The focus of these experiments is to discover the influenceof noise and gate failures on evolution of messy circuits.2-by-2 bit multipliers were evolved using the algorithmdescribed in section 3 and the model and simulator envi-ronment defined in section 2. Only gates of type MUXand multiplexors with one input inverted, NMUX, weremade available to evolution to maintain comparability with[MH01a, MH01b].

Five sets of experiments were carried out labeled A to Ein Table 1. The noise percentage signifies the amount ofnoise relative to full signal strength that was superimposedat each gate output. Noise is implemented as a randomvalue within this range. Error probability is the chance ofany given gate failing i.e. being subject to one of the errorsexplained in section 2.

All experiments used a gate mutation probability of 15%,population size of 30 individuals and a maximum gatecount of 9. Termination of each run occurred when an indi-vidual avoided bit errors at the outputs and its size was lessthan 10 gates.

A noteworthy fact is that each circuit is evaluated ten timesunder different noise and error conditions. Each of theseevaluations gives rise to a fitness value. Fitness for this cir-cuit (individual) is an average of these fitness values. Thismeans that an individual needs to be tolerant to more thanone specific configuration of faults and noise and exhibit anoverall tolerance to the environmental settings in order forit to survive the selection process.

EXPERIMENT NOISE ERROR PROB.

A 10% 0%B 30% 0%C 0% 10%D 0% 30%E 35% 10%

Table 1: The experimental set of noise and error probabili-ties

5 RESULTS AND EVALUATIONS

The evolutionary system successfully evolved circuits ableto perform a 2-by-2 bit multiplication in all the specifiedenvironments. Figure 6 illustrates how the average of themost fit individual for experiments B and E grow towards100% fitness (15). As expected, the rougher environmentin experiment E made it harder to obtain better fitness whencompared to experiment B.

EVOLVABLE HARDWARE174

Page 23: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

10

12

14

16

100 900 1700 2500 3300 4100 4900

Generations

Bes

tfitn

ess

Experiment B

Experiment E

Figure 6: Best fitness individuals averaged over severalruns

An example of an evolved multiplier from experiment A isillustrated in Figure 7. The genotype of this specific multi-plier is the one shown earlier in Figure 5.

MUX

NMUX

MUX

MUX

MUX

MUX

MUX

MUX

INPUT 0

INPUT 3

INPUT 2

INPUT 1

OUTPUT 0

OUTPUT 3

OUTPUT 1

OUTPUT 2

4

11

10

9

8

7

6

5

Figure 7: Example of evolved multiplier

As seen in Figure 6 and 8 the number of generations re-quired before a correct individual was evolved increasedas noise and error probability got more severe. Experi-ments A, B and C took on average below 2000 generations.Experiment E required slightly more computational labour,around 3000 generations. This may be said to be due tothe combination of severe noise and substantial error prob-ability. Experiment D clearly separates from the other ex-periments. The gate error probability presented a difficultdesign task. However, the fact that evolution was able tocreate such a fault tolerant architecture is quite an achieve-

ment. The computational time required is not really thatsevere, on average the performance is about 100 genera-tions per second.

0

2000

4000

6000

8000

10000

12000

A B C D E

Experiment

Avg

.nu

mb

ero

fgen

erat

ion

s

Figure 8: Generations used before termination

In the experiments performed here evolution was not givenmuch room to play with in terms of gates. The maximumnumber of gates was set to nine. Due to this maximumonly a slight variation in the number of gates was seen, asshown in Figure 9. Also, during the experiments, Gp inequation 1 was so low (0.001) that the output correctnessalways had highest priority. In experiment D the averagenumber of gates used is below the general average. Thereason for this is that evolution avoids extra gates, as eachgate increases the chance of gate failure. In experiment E,evolution may be assumed to perform similarly where therough environment in terms of both noise and gate errorsforces a bias towards small circuits.

8,4

8,5

8,6

8,7

8,8

8,9

9,0

A B C D E

Experiment

Avg

.nu

mb

ero

fgat

es

Figure 9: Gates used in final solutions

EVOLVABLE HARDWARE 175

Page 24: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

6 FUTURE WORK

Several extensions of the work described are planned, pri-marily exploiting the speed of the simulator in order torun extensive numbers of experiments. Such experimentswould include allowing evolution to use more gates to in-crease the genetic variation, evolving with more commontype of logic gates like NAND and NOR, evolving circuitswith different functionality and exploring the suitabilityof different evolutionary algorithms. Extensive investiga-tion of the evolved circuits true fault tolerance compared toother approaches would also be advantageous. In addition,verification of the circuits on both digital and analogue lev-els is important.

A feature of the developed simulator is that its states andsignals are fully observable. Combining this with the in-creased freedom of the semi digital environment may yieldresults that exploit complex intrinsic silicon functionalitynot available in a traditional evolutionary digital designenvironment. Such exploitation of intrinsic features haveshown stunning results e.g. in [Tho95, Tho96], but the fea-tures of such circuits have been hard or impossible to ob-serve and understand [Lay98]. A goal of our project is tomove into hardware implementation with new knowledgeon how to exploit the intrinsic properties of the underlyingtechnology.

7 CONCLUSIONS

In this work a simulator has been developed that takes themessy gates approach much closer to real electronic hard-ware. In this simulated environment evolution is able toperform circuit design tasks that present a serious chal-lenge. Within certain limits, noise influence and fault prob-ability does not even seem to affect evolution. In fact, exter-nal influences that human engineers view as destructive andproblematic may be exploited by evolution e.g. increasingthe noise may in fact decrease the number of generationsneeded to evolve a complete circuit. When faults and noiseinfluence are increased to severe levels, evolution seems tofind it harder to find solutions. Still, it does in fact manageto do so and very quickly when compared to a human de-signer. Just imagine the design task of creating a 2-by-2 bitmultiplier using eight or nine multiplexors in an environ-ment where almost one third of the gates fail on average.

References

[Aea99] H. Abelson et al. Amorphous Computing.Technical report, Massachusetts Institute ofTechnology, 1999.

[BOST00] Daryl Bradley, Cesar Ortega-Sanchez, andAndy M. Tyrrell. Embryonics + immunotron-ics: A bio-inspired approach to fault-tolerance.In J. Lohn, A. Stoica, D. Keymeulen, andS. Colombano, editors, Proc. The SecondNASA/DoD Workshop on Evolvable Hardware,EH 2000, pp 215–224. IEEE Computer Soci-ety, 2000.

[HA01] Ben I. Hounsell and Tughrul Arslan. Evolu-tionary Design and Adaptation of Digital Fil-ters Within an Embedded Fault Tolerant Hard-ware Platform. In D. Keymeulen, A. Stoica,J. Lohn, and R. S. Zebulum, editors, Proc.The Third NASA/DoD Workshop on EvolvableHardware, EH 2001, pp 127–135. IEEE Com-puter Society, 2001.

[HvR01] Pauline C. Haddow and Piet van Remortel.From here to there: Future robust EHWtechnologies for large digital designs. InD. Keymeulen, A. Stoica, J. Lohn, and R. S.Zebulum, editors, Proc. The Third NASA/DoDWorkshop on Evolvable Hardware, EH 2001,pp 232–239. IEEE Computer Society, 2001.

[Lay98] P. Layzell. A New Research Tool for IntrinsicHardware Evolution. In 2nd International Con-ference on Evolvable Systems (ICES98), Lec-ture Notes in Computer Science, pp 47–56.Springer, 1998.

[MH01a] J. Miller and M. Hartmann. Evolving MessyGates for Fault-Tolerance: Some preliminaryFindings. In D. Keymeulen, A. Stoica, J. Lohn,and R. S. Zebulum, editors, Proc. The ThirdNASA/DoD Workshop on Evolvable Hardware,EH 2001, pp 116–123. IEEE Computer Soci-ety, 2001.

[MH01b] J. Miller and M. Hartmann. Untidy Evolution:Evolving Messy Gates for Fault-Tolerance. InY. Liu et al, editor, Evolvable Systems: FromBiology to Hardware. Fourth Int. Conf., ICES2001, volume 2210 of Lecture Notes in Com-puter Science, pp 14–25. Springer, 2001.

[MSST00] Daniel Mange, Moshe Sipper, Andre Stauffer,and Gianluca Tempesti. Toward Self-repairingand self-replicating hardware : the embryonicsapproach. In The 2nd NASA/DoD Workshop onEvolvable Hardware, pp 205–214, 2000.

[OT99] Cesar Ortega and Andy Tyrrell. Reliabil-ity Analysis in Self-Repairing Embryonic Sys-tems. In A. Stoica, D. Keymeulen, and J. Lohn,editors, Proc. The First NASA/DoD Workshop

EVOLVABLE HARDWARE176

Page 25: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

on Evolvable Hardware, EH 1999, pp 120–128. IEEE Computer Society, 1999.

[SKZ01] A. Stoica, D. Keymeulen, and R. Zebulum.Evolvable Hardware Solutions for ExtremeTemperature Electronics. In D. Keymeulen,A. Stoica, J. Lohn, and R. S. Zebulum, ed-itors, Proc. The Third NASA/DoD Workshopon Evolvable Hardware, EH 2001, pp 93–97.IEEE Computer Society, 2001.

[Tho95] A. Thompson. Evolving Electronic Robot Con-trollers that Exploit Hardware Resources. InThe 3rd European Conference on Artificial life(ECAL95), 1995.

[Tho96] A. Thompson. An Evolved Circuit, Intrinsicin Silicon, Entwined with Physics. In 1st In-ternational Conference on Evolvable Systems,ICES, Lecture Notes in Computer Science, pp390–405. Springer, 1996.

[THS01] A. M. Tyrrell, G. Hollingworth, and S. L.Smith. Evolutionary strategies and intrinsicfault tolerance. In D. Keymeulen, A. Stoica,J. Lohn, and R. S. Zebulum, editors, Proc.The Third NASA/DoD Workshop on EvolvableHardware, EH 2001, pp 98–106. IEEE Com-puter Society, 2001.

[TL00] Adrian Thompson and Paul Layzell. Evolutionof Robustness in an Electronics Design. In Ju-lian F. Miller, Adrian Thompson, Peter Thom-son, and Terence C. Fogarty, editors, EvolvableSystems: From Biology to Hardware. ThirdInt. Conf., ICES 2000, volume 1801 of Lec-ture Notes in Computer Science, pp 218–228.Springer, 2000.

[VM00] V. K. Vassilev and J. F. Miller. The advan-tages of landscape neutrality in digital circuitevolution. In Julian F. Miller, Adrian Thomp-son, Peter Thomson, and Terence C. Fogarty,editors, Evolvable Systems: From Biology toHardware. Third Int. Conf., ICES 2000, volume1801 of Lecture Notes in Computer Science, pp252–263. Springer, 2000.

EVOLVABLE HARDWARE 177

Page 26: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

����������� �������� ����������������� ����!��"���#�%$'&(�)��*,+-�(��$ ���.�/0�%12/0� �)�������(+43

506#798;:=< >�7?<@ A�BDCE@=FHGJI=KLA=MJNPO!FRQ?MTS�UVO�W,X

Y;UZM\[M\]ZO^S�I=]_GJFa`bKTNPM\Fc[dGJWcUVMeK(fgFhM?S�O!ihijUVK=kQTSHA=]VM\ihiaYlUVFh]ZUVK=keALMnmeO�K

oeprqJoJs QrW^t4u"ILkeILijWcUVKwv�B)O!Fc[dGJK?X

xzy){e|T}=~���|

�RKT��icI=��O�Fhm?UVicO!��]ZO^GJFhK=UVK=k.MeN)S�Me[��=]VO���icMJN�W,�aGJFhO�=FhMJ�,O^S�WHi�U_iEijWcUV]Z]�GJK�U_icicI=O\t�uR�=�TUZWcUVMeK�GJ]V]ZX\v�WcA=OM\�T�,O!S�WcUVmeOdWhM.S�FhO!GJWcOdM\��O!KT��O!KL�TO^��O�m\Me]VITWcUVMeKLGeFcXicXTi,WhO�[di�UVi�]VG\SH�?UZK=k�G�S�MeKT���TO�KrW�FhO!Ge]ZUV�!GJWcUVMeKwt��MeK=ke��WhO�Fh[�O�meM\]ZI=WcUVMeKLGeFcX���O�ALG�m?UVMeF�FhO!icI=]ZWhi(UVKK=M\UVicX�FhO�k\UZ[�O!i�M\F�i,WHGJ�=]VO��=�TO!����MeUVK\WHidUVKLS�]VIL�?�UVK=k(]ZUV[�U�WS�XTS�]VO!i!td�aA=O�O�meM\]Zm?UVK=k(MeFhk\GeK=UZ�^GnWhUZM\KLiGeFcO�[M\FcO�MeF ]ZO^ici�icUZ[��=]VO#M\F)�TUVFhO!S�Wh]ZX�FhO�¡�O!S�WhUZKLkWhA=O��=FhMekeFHGJ[�[�O�F^¢ iE��MeUVKrW9MJN�mrUVO��£MJN�G�S�M\[���=]VO��0MeFhk\GJKLUZ�^GnWcUVMeK�t�¤ K=O)��M\ihijUV�=]VO)�aG�X�WcM�Mnm\O�Fc�S�Me[�O¥WcA=O^ijO�]VUZ[�UZWhGJWcUVMeKLi�U_i(WhM¦�TFhG\i,WhUVS!GJ]V]ZX�UVKT�S�FcO^GeicO���M\�=I=]_GnWcUVMeK�icUV��O!i.GJKL�§]VM?Me�§GnW¨]VMeKLkeO�FWhUZ[�O!ihS�Ge]ZO^i�t©�aA=O��;MeFh�¦FhO���MeFcWcO^�DijO!Fcm\O!i�W,�;M�=ILFc��M\icO!i!ª«WhA=OzUZKrWhFcMT�TILS�WcUVMeK�MJN�GeK«O!meMe]Vm?UZKLk[�U_S�FhMJ�bS�MeKrWhFcM\]Z]VO�FaUVKLS�]VILicUZm\O O�meM\]Zm?UVK=k�GeihicO�[#�L]ZO!FS�M?�=O¥M\K¬WcA=O�K=O!��[dGeihicUZm\O�]VX¦�LGJFHGJ]V]VO�] S�M\KT�LkJ�I=FHGJ�L]ZOALGJFH�T�aGJFhO#­�O!FcO�B)O�K=®�¯)GeKL�9UZW��=FcMnm?U_�TO!iK=O!�°UVKLicUZk\ArWhi�MeK�A=Mn�°[#ITWHGnWcUVMeKz�=FhMe��GJ�=UV]ZUZWcUVO!i[dG�X�UVKT¡LI=O!KLS�O±WhA=O±O�meM\]ZI=WcUVMeKLGeFcXzMeI=WhS�M\[�O¥MeNO!meMe]Vm?UZKLk���Me�=IL]VGJWcUVMeKLi!t²�UZWcAE³ s\´ ­9Y;XrWcO^i4MeNµN¶GeijWaQT·"u ­¸GJK��dGJ��MeITWlGB)UVk\Ge�rXrWhO¨MJN�QT¹ ·RuR­�v�[�UV]Z]VUZM\KLi�MJN��=FhMek\FhGe[diGeKL��WhA=MeI�icGeKL�=i¥MJN�[U_S�FhMJ�bS�M\KrWcFhMe]V]ZO!Fhi9S!GJK���OO!meMe]VmeO^��S�M\KLS�I=FhFhO�KrWc]VXzUZK�ALGJFH�T�aGJFhOet��lX?�=U_S�GJ]ic��O!O!�TIL�LiRGeFcO�Ge��M\ITW"�Lm\O�MeFH�TO�FHiaMJN�[dGJk\K=UZWcIL�TOS�Me[��LGJFhO!����U�WhA�S�ILFcFhO�KrW¥�LG�X¬ALUZk\AT��O!KL�«faº;i�t�aA?ILi!vd]ZM\K=kJWhO�Fh[»O�m\Me]VITWcUVMeK�MJN0]_GJFhkeO���Me�=I=]_Gn�WhUZM\KLi�UVi0K=M�]ZM\K=keO!F�WcALO¥��MJWcWc]VO�K=O^SH��GJKL�¼]ZUV[�U��WHGnWcUVMeK�i4UVK�MeILFlI=K��TO�FHi,WHGJKL�=UZK=k�GJKL��WhA=O)Me�LicO�Fhmr�Ge�=UZ]VUZW,X)MeNLO�m\Me]Vm?UZK=k ijXTijWcO�[di½UZ[�[�O!�=UVGJWcO�]VX keFHGJ��iWhA=O"NPMTS�I�i4MeNµM\I=FlGJWjWhO�KrWcUVMeK�UVK�O!meMe]VITWhUZM\KLGJFhX#O��r���O�FhUZ[�O!K\WHi�t

¾ ¿\À |T}=Á�ÂRÃR��|=ÄjÁ À

�aA=O�ijWcIL�TX¼MJN#O!meMe]Vm?UZKLkÅALGeFh�T�aGJFhO.GeUZ[di(GnW9S�FcO^GnWcUVK=k�GK=O!�Æ��Mn�;O�F.]ZO!meO�]MJN�[dGeKT��[dG\�TO�[dGeSHA=UVK=O^i�t2ÇgmeM\]Zm?UVK=k

ALGeFh�T�aGJFhO)UVi�O��T��O^S�WcO^�0WcMd��O�GJ�=]VO)WcM�Ge�LGJ�TW�WhMdI=K=�?K=Mn��KO�K?m?UVFcM\K=[�O�KrWhi�GeKL��WcMÅ�LKL��icMe]VITWcUVMeK�i�ALGeFh�T]VX�NPMeI=KL�z�?XA?I=[dGJKLi!tÆÇgm\Me]VITWcUVMeKwv GJW¨]ZO^GeijW¨UVK§WcA=O��LUZM\]ZM\keU_S�GJ]�S�MeK=�WcO��?W!v U_i(UZKrWcUV[dGnWhO�]VX¼��MeI=KL��WhM�UZKTNPM\Fc[dGJWcUVMeK¬�=FcMTS�O!ihijUVK=k��UZWcAzi,WhFcUVK=k\iW,X?�=U_S�Ge]Z]VX�S�M\KLicUV�TO!FcO^�ÅG\i�UVKTNPM\Fc[dGnWhUZM\K�S!GJFc�FhUZO!Fhi!t ­9GeSHA=UVK=O^iR�;MeFh�?UZK=k0MeK�WhA=O�UVF�Mn��K.�TO^icS�FcUV�TWhUZM\K¨GJFhOO!ic��O!S�U_GJ]V]VXE�;O�]V]½icI=U�WhO!��WhMEi,WhIL�TX0WcA=OicS�Me��O MJN�O�m\Me]VITWcUVMeK=�GJFhXES�MeKLS�O��TWHi�t�aA=O�U_�TO^G9MJN�UVKTNPMeFh[dGnWhUZM\K��=FcMTS�O!ihijUVK=k([dGeSHA=UVK=O!i#Me��O�FHGnWc�UVK=k.M\KÅWhA=O�[dicO�]VmeO^i��aGei��LFHijW�=IL�=]ZU_icA=O!��UZK¬È ´esrÉÅÊ È�Ëa�?X­�O!KLGJ�=FhO!G�UVK(G�WhFhGeKLij]_GnWhUZM\KENPFhMe[°uR�=G�u"ILkeILijWhGLv�ºlMeI=KrWc�O!ihiaMJN��wMnm\O�]_GeS�Oeª

tVtZtºlM\KLijU_�TO!FcO^�.ILKL�TO�F�WcA=O�[�Mri,W#k\O�K=O!FhGe]���M\UZKrW#MeNm?UVO�� vTWhA=O O!ihijO!KrWcU_GJ]ÌMe�=�,O!S�W"MeN½WhA=O [dGeSHA=UVK=O ��O��UVK=k±WcM�S!GJ]_S�I=]_GnWhOevaGeS�S�MeFH�TUVK=k¨WhM±WcA=O�]_G��"id�TU_S��WHGnWcO^��WcM¦UZW!v�WhA=O�mnGJ]VI=O!i9MJN�KrIL[O!FcU_S�Ge]�S�M?O�Í��S�UZO!K\WHid��A=U_SHA�U�W�U_idWhA=O�KzWhM��TU_i,WhFcUV�=ITWhO9GJ�=�=FhMJ��=FhU_GnWcO!]ZX(M\K�WcA=O�S�M\]ZIL[K�i ��ALUVSHA9FhO��LFcO^ijO!K\W WcA=OmnGJFhU_GJ�=]VO!i!vJUZWgNPMe]V]ZMn�"i�WcALGJWgWcA=ORUZKrWcO!Fc�LFcO�WhGnWhUZM\K�MeNNPM\Fc[�I=]VG#GJKL��MeNµFhO!icI=]ZWhi4UVi4��O!XeMeK��dU�WHig�=FhMnm?UZK�S�OevI=KL]ZO^ici#UZKL�=O�O!��WcA=U_i#m\O�FhX¨UVKrWcO�Fh�=FhO�WHGnWcUVMeK±��OEUZWj�icO�]ZN�ijI�icS�O��TWhUZ�=]VO"MeNµO��T�=FcO^icicUVMeK��?X�[�O!GeKLigMeNÌWcA=OicX?[#��Me]_i���A=UVSHA¥WhA=O�[dGeSHA=UVK=OdO![�L]ZMnXTi!t��aArI�i�vGe]�WhA=MeI=k\A U�W½UVi�K=MJW�UZWhicO�]ZNTWcALO4��O�UVK=k�WcA�GnW½FhO�¡�O!S�WHi�vUZW [dG�X(XeO�WR��O�S�M\KLicUV�TO!FcO^��Gei"WcA=O���O!UZK=k0��A=U_SHAO��?O^S�ITWhO!i;WhA=O�S�M\KLS�O!�TWcUVMeKLiaMeN UVKrWcO!]Z]VUZk\O�KLS�OetatVtZt

�aA=M\I=keADWhA=O�XD�TU_�TKw¢ W±FcO^GJ]V]ZXDGnWcWcO![�=W.WhM¼�=I=UV]_�«G¦[dGJ�SHA=UVK=O�S�Ge�LGJ�=]VOaMJN�I=KL�TO!FhijWhGeKL�TUVK=k�U�WHijO!]�N�C WcA=O�U_�TO!G)MeN�icILSHAGJK�O!KL�TO^G�meMeF��aGei KLMJW�S�Me[��=]VO�WcO!]ZX¥MeI=W#MJNaWcALOEÎrI=O!ijWcUVMeKwt�aA=O!X�A�Ge�9GJW WhALGnW WcUV[OO!ijWhGe�=]VUVicA=O!��WcA=O�=FhUZKLS�UZ�L]ZO^iRMeN4G�=FhMek\FhGe[[dGe�=]ZO(S�M\[��=ITWcO!F¨ÏPO\t k�t¬S�MeKL�=U�WhUZM\KLGJ]�O��?O^S�ITWhUZM\KGJK��(]ZM?Me��i�ALG�meO���O�O!K�O��T�=]VUVS�U�Wh]ZX�[�O�KrWcUVMeK=O^�LÐ�t��½MT�=G�X��;OALG�m\O¨WhA=O±ALGJFH�T�aGJFhO�WcMzFhO!GJ]V]VX¦�TO�]VmeO¥UZKrWhMÅWhA=UVi��=Me[dGJUVK��A=O!FcO O!]ZO^S�WcFhMeKLUVS�ALGeFh�=�;GeFcO)UViRGJ�=]VO WcM�icO�]ZN���MeFhk\GJKLUZ�!O)GeKL�WcM�O!meMe]VmeO\t¹ O!ic�=U�WhO�WhA=O N¶GJ[�M\ILi���MrM\�0MeN�meMeK�ÑRO�I=[dGJKLK Ê É Ë GJK��(A=UVi

EVOLVABLE HARDWARE178

Page 27: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

@ UVkeI=FhO�Èeªg­�O!FcO�B)O�K=®�¯������������ ������� �������������������� ®�¯ � ! "���$#%�&#%('��)��*+ �,����-. �/

icO�]ZN���FhO��=FhMT�TILS�UZK=k GeITWcM\[�GJWhG C�UZW4�aGei�KLMJW4I=KrWhUZ]½È�0 ´es WcALGJWWcALO�O��rWhO�KLicUVMeK9MeNgWcA=OMeFhUVkeUVKLGJ]½UV�TO^G�MeNaºlALGJFh]VO!iRYaGe�LGJk\keOGJK��¨uR�LG�uRI=keI�i,WHGE�aGei)FhO�m?UZm\O!��C9�=FhMe��GJ�=]VX(K=MJW �?K=Mn��KWcMWhA=O GJITWhA=MeF;WcALO�K0C��?XE¹ O��"�=K=O�X�UVK�A=UVi�GeFjWhUVS�]ZO)UVK(QTS�U��O�KrWhU���S�uR[O!FcU_S�GeK Ê p Ë4GJ��MeI=W#ºlM\FcO�²¥GeFhi!t#¹ O��"�TKLO�X9ALG\���O�O�KEUZKLic�=UVFcO^���?X�WhA=O"��FhijW4�;MeFh[�i4GJKL��m?UVFcILicO!i4��O!UZKLk#Me�=�icO�FhmeO!�ÅUZK�WcALO(S�Me[��=ITWhO�Fd]_GJ�LiMeN21RO!FcM��Ìt�`bKÅWhA=O9GnN�WhO�Fc�[dGnWhAwv=ijO!meO!FhGe]���O�M\�=]ZO WcFhUVO!�EWcMO�meM\]Zm\OR�=FhMek\FhGe[di Ê s v o vT³nËGJK���ijO!FcUVMeILic]VXEGnWcWcO�[��TWhO!�(WhM�FhO!GJ]VUV��O�icO�]ZN���M\FckrGJK=UV��O^�EicMJN�Wj��aGJFhO�icXTi,WhO�[di!t4�aA=O�FhOevLK=MeK(O�m\Me]VmnGJ�=]VO�FcO!keU_i,WhO�F�[dGeSHA=UVK=O^i�TO�WcO�Fh[�UZKLO�WcA=O#GeFjWhU���S�U_GJ]Ì�=A?XTijU_S�iaO!meM\]Zm?UVK=k��=FcM\keFHGJ[diaGJFhOicI=�T�,O!S�WcO^�¨WhMLt�u ic��O^S�U_GJ]�[�UVK=UZ[dGe]ZU_i,WhUVS�O!meM\]Zm?UVK=k�icXTi,WhO�[ALG\i4��O�O!K�UZK?m\O!ijWcUVk\GnWhO!��UVK Ê q ËÌ��U�WhA�MeKL]ZXW,�;M#UVKLi,WhFcI�S�WcUVMeK�iG�mnGJUV]VGe�=]VO0NPM\FdO�m\Me]VITWcUVMeK�C�FcO!�=]VUVS!GnWcO(WhA=O�keO!K=Me[�O(MeF��=MK=MeWcA=UVK=kLt`bK«G¼[M\FcOÅkeO�KLO�FHGJ]#S�MeKrWcO��rW^v�WhA=O!icOÅFhO�k\UVijWcO!F¨[dGeSHA=UVK=O^i[�UZk\ArWR��O�GJ�=�=FhM��TUZ[dGJWcO!�0�?X�icUV[�L]ZO!FRS�O!]Z]VI=]_GJFRGeITWcM\[�GJWhGLvicO�OOet kLt#ºlMT�=� Ê ´ Ë�MeF���GeK=kJWhMeK Ê 0�Ë�t��aA=OdS�M\[�LFcO!A=O�KLicUVmeO�LO!]V��MJN keO!K=O�WhUVS��=FhMek\FhGe[�[UVK=k�UZKrWcFhMT�TILS�O!���?X43�Me�^G�Ge]VicMILicO!i�O�m\Me]Vm?UZK=k��=FhMekeFHGJ[di0�=ITW�K=MeW�UVK¬G�icO�]ZN���M\FckrGJK=UV��UVK=kS�M\KrWcO��?W�C�WcA=O!X§icMe]VmeO�M\�TWcUV[�UZ�^GnWhUZM\K��=FhMe�=]VO�[di(WhA=MeI=k\AicMe[�O0�;MeFh�±ALGei���O�O!K�ILKL�TO�FcWhGe�eO!K�WcM¥FhO!GJ]VUV��O0WcA=O^ijO(Me�=�WcUV[�UZ�^GnWhUZM\KLia�=FhMe�=]VO�[diaUVK�A�GJFH�T�;GeFcO Ê È�5�Ë�t�aA=O��;MeFh��FhO���MeFcWcO^�EUVK(WcA=U_i"��GJ��O�FRicMe]VO�]VXdNPMTS�ILicO!iRMeK�WcALOicO�]ZN���M\FckrGJK=UV��UVK=k"S�M\KrWcO��?W ��U�WhA=MeITW�GJK?X)Me�TWhUZ[�UV�!GJWcUVMeK��=FhMe�=�]VO�[di4UVK�[�UVKL�Ìtg�aA=O^ijO)GJFhO�WcM���ORWhGeSH�?]VO!��UVK0G�icI=�LicO!ÎrI=O!KrWijWcO�����A=O�K§icO�]ZN���M\FckrGJK=UV��UVK=k�icX?ijWcO![di�GeFcO.��O�WjWhO�F�I=KL�=O�Fc�ijWcM?MT�Ìt¥�aALOEFHGnWcUVMeK�GJ]4��O�ALUZKL��WcA=U_i�lM\Fc�¥U_i#K=MeW�M\K=]ZX¥WhMWcFhX�WcM�I=K��TO�FHi,WHGJKL�#WcALOlWhFhGeKLicU�WhUZM\K�NPFhMe[§WcALO;KLMeKT��]ZUVm?UZKLkRWhM

C C C C

A D

Distributor

C C C C

A D

Distributor

DA

C

18

18

36 36Agent

DA

C

18

18

36 36AgentDA

C

18

18

36 36AgentDA

C

18

18

36 36AgentDA

C

18

18

36 36Agent

DA

C

18

18

36 36AgentDA

C

18

18

36 36AgentDA

C

18

18

36 36Agent

Bac

kpla

neB

ackp

lane

Bac

kpla

neB

ackp

lane

Frontplane

Frontplane

Frontplane Frontplane Frontplane

FrontplaneFrontplaneFrontplane

Bac

kpla

ne

11

Bac

kpla

ne

1111

VME

@ UVkeI=FhO É ª4Q?�\O�WhSHA�MJN½WcA=O ��M\GeFh�0]_G�XeMeI=W6 + �,����-78�9������������� ®�¯ � :����;,�����<��$-7�.8�������� ���� $��=�=(>?/ 6 '@'��.�+ ��'"'���AB'��.�%CD�FEHG +.I J��?'����"�K�� ���� :-L����#%�NMKO��=�8�LPQPL �RTSL�$U�PL=WV�/�����%'X#Y�Q-L� Z'"�� +.I '����� �MKO��=���.P[PL �\LU�STS��$V@�$�� ��9 ��T�?'"����=]� + =��? �����^�W� I �_��;T���?'� `MKO��=���.P!PL �\LaTSTS���V�/b�����c��\,��=�\L��.;dA78 �����G ����e'"����=�=8���� DMKf@gY �VY�����h ��T�Lij; I ���$-7��e'��k'����h��;����?'� �/ 6 � I �"'��.���f@ghlm ��T�.i�; I ���$-n��?'��F�$�� ��o���p'����7-L8 Z'"�� +.I '����� �lm8 2-.��-.� $��'���-'��q'��.�Q "�$r I ���?'�s��=Htj���"'D���p ��T�?'"���T=�=����;q'��.�Q��PLt]�����A7���?'� �/ 6 =�=��;����?'� u�����[#������e8�.;F ����e'��� I � I "=(>v����-v "�A I =�'�������� I "=(>N#%('���4a�Rw��xh<� �=��? ��]/ 6 '"'��� ��.�$-n'��v'��.����;T���?'� [�y� I �[�y�� Z'qz?/ {��� �|�F}Y('N~e� 6 �� 9����� I "�$-�'��w Z'������4'��.�^��\,��=8\e���;wtL���T;�����A-���'��L/

WcALO"]ZUVm?UZKLk��lM\Fc]_��=ITW4[�M\FcO�UV[���M\FjWHGJKrWc]VX�WhM�]VG�X#WcA=O"NPMeI=KT��=GJWcUVMeK NPM\F½ic�LGJFHijO!]ZX�S�M\KrWcFhMe]V]ZO^��KLGJK=Me��icXTi,WhO�[di!t�­9GeihicUZm\O�]VX�LGeFhGe]Z]VO�]r�TX?KLGJ[�U_S�GJ]rijXTijWcO![�i�UZK#WcA=OlKLGJKLMe[�O�WhO�F�FHGJKLkeOgS�GeKK=M¥]ZM\K=keO!F���O�S�M\K\WhFcM\]Z]VO!��UZKzG.�=O�WhGeUZ]VO!�Å[dGJK=K=O!F!t��aA=O�XS�GeK=K=MeWRO�m\O�K(��O�Me�LicO�FhmeO^�EUVK¨Gd�TO�WhGeUZ]VO!�([dGJKLK=O�F^ta`bK�MeFc��TO!F4WhM�S�M\��O ��U�WhAdWcALO!icO"W,X?��O^i;MJN�icX?ijWcO![dig�;OR[#I�i,WaGJ]V]ZMn�WcALO�[£WcM9M\FckrGJK=UV��O�WhA=O�[dicO�]VmeO^i�C.MeWcA=O!Fc��U_ijOd�;O���UV]Z];K=MeW��O�GJ�=]VO)WcMdILicO �TX?KLGJ[�U_S�GJ]ÌK�GJK=Me��icXTi,WhO�[di�t`bKL�TO!��O!KL�TO!K\W£MJN WcALO��TO^icS�FcUV�TWcUVMeK»]VO�m\O�]�I�ijO^�Ìv°�LFcMe�keFHGJ[�[dGJ�L]ZO�[dGeSHALUZK=O^i9��O�UVK=k¼�LArXTicUVS!GJ]V]ZX¬FhO!GJ]VUV��O!�¬ALG�m\OWcM�M\��O!X¥S�O�FcWhGeUZK±S�M\KLi,WhFhGeUZKrWHi�t�­�M\ijW�MJN�WhO�K�S�M\KLicO�Fhm�GJWcUVMeK]_G��"i#GJFhOE[�O!K\WhUZM\K=O!�wt¥� GJ�?UVK=k9UVK\WhM.G\S�S�M\I=KrW�TU_ihijUV�LGnWhUZm\OijWcFhILS�WhI=FcO^i�vlS�MeK�ijO!FcmnGnWhUZM\K�MJN)O�K=O!Fck\X�S�GJK���O�Ge�Li,WhFhG\S�WhO!�FhO�]_GnWcUVmeO!]ZX�O!G\ijUV]ZX\t��aA=O9FhO!icI=]ZWhi�MeN�WcA=U_iE�;MeFh��icA=Mn�'WcALOkeFhO!GJW;UV[���M\FjWHGJKLS�O�MJN WcA=O�NPM\]Z]VMn��UZKLkG\ij��O!S�Whi!ª�È^Ðl�=A?XTijU_S�Ge]�=FhMe��O�FcWcUVO!i�]VUV�eO"]VUZ[�UZWcO^��ij��GeS�O;C�=A?X?icU_S�GJ]LO�KrWcUZWcUVO!i4FcO^Î\ILUZFhOic�LGeS�O�WcM.��O�icU�WhILGnWhO!�Ìv É Ð WhUZ[�UVK=k±�TO�]_G�XTi�C�UZKTNPM\Fc[dGJWcUVMeKWcFHG�meO!FhicUVK=k¨NPFhMe[2��MeUVK\Wn�-WcMÅ��M\UZKrWv�ÆKLO�O!�LiEG�S�O�FcWhGJUVKGJ[�M\I=KrWMeN"WcUV[�O(GeKL� p Ð�FhMeI=WcUVK=k9C±��A?X��TM?O!i��M\UZKrW^��?K=Mn�¦WhALGnW"��MeUVKrWQ�«UVi�UVK(K=O�O^��MJN O��=GeS�Wc]VXdWcA=U_iR�LGnWhG�GeKL�MJN K=MJWhA=UZKLk¥O!]VicOT�£¤RN S�M\I=FHijOEWcA=O^ijO(�=A?XTijU_S�Ge]l�LFcM\��O!FjWhUZO^i[�UZk\ArW ��O"icUZ[�I=]VGJWcO^�#O^GeicUZ]VX MeK�S�I=FhFhO�KrWg�=G�X�f;º;i MeF��;MeFh�r�ijWhGnWhUZM\KLiµCR��G�XrUVK=k�WhA=Og�=FhU_S�OgMeNTic]VMn�lO!FwijUV[#I=]_GnWhUZM\KLi!t�²�ALGJW

EVOLVABLE HARDWARE 179

Page 28: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

U_i�K=MJW�O!G\ijUV]ZX9icUV[#I=]_GnWhO!�ÌvwU_i WcA=O�UVK=A=O!FcO!K\W O��?�L]ZU_S�UZW �LGJFHGJ]Z�]VO�]VUVic[�MeNwSHA=O�[�U_S�GJ]�MeFg�LUZM\]ZM\keU_S�GJ]�ijXTijWcO�[di!t �aALO"MnmeO!FcA=O^Ge�NPMeF�WcA=O^ijOgWcM"icUZ[�I=]VGJWcOgU_i�S�MeKLicU_�TO�FHGJ�=]VOet½@½UVK=Ogk\FhGeUZKLO!�)[dGeij�icUZm\O�]VX#�LGeFhGe]Z]VO�]=[dG\SHA=UZKLO!igA�G�meO�G keFhO!GJW4Ge�TmnGeK\WHGJk\O;UVKdWhA=UViFhO!ic��O^S�W!t0�aA=Od[�MeFhO�WhA=O�icUZ[�I=]VGJWcUVMeKLi���O!S�Me[�OdALGeFh�T�aGJFhO�TO!��O!KL�TO�KrW^v�WcA=O¨]ZO^iciEO��µMeFcW�ALGei�WcM���O9[dGe�TO9WcM�[�MT�TO�]�=A?XTijU_S�Ge]L�=FhMe��O�FcWcUVO!i C#WcA=O!XdGJFhO"UZKLA=O�FhO�KrW!tg¤RN�S�M\I=FHijO\vJWcALO�=FhUVS�O9U_idK=Mn�-G±FcO^i,WhFcU_S�WhUZM\KzUZKzWhA=O¨K?I=[���O!FEMJN���M\ihijUV�=]VO�=A?XTijU_S�Ge]Ì[�M?�=O�]wicX?ijWcO![di�t�aA=Og�;MeFh�R�TO^icS�FcUV��O!��A=O!FcO�ALG\iÌ��O�O�K��=MeK=OgM\K ­�O�FhO^B)O!K=®�¯Ê ÈeÈ�Ë�vT�Lk�twÈev=G�[dGeihicUZm\O�]VXd�LGJFHGJ]V]ZO!]wS�M\KT�LkeILFhGe�=]ZO)ALGeFh�T�aGJFhOILicUZKLkIL�EWhM�È ses A=UVkeA(��O!FjNPM\Fc[dGeKLS�O �LO�]_�0�=FcM\keFHGJ[�[dGJ�=]VOk\GJWcO�GJFhFhG�XTi�NPFhMe[ 1 UZ]VUZK=� Ê È É Ë"�TO!�TU_S�GJWcO^�ÅicMe]VO�]VX.WhM.I�ijO!F�TO^ijUVkeKLi!t�²�U�WhA�­�O!FcO�B)O�K¼ic��O!O!�TIL�Li�MJN#I=�¦WcM É 5L5Lt 5.5L5Ï���meOMeFH�TO�FHiRMeNl[dGJk\K=UZWcIL�TO\vµW,�lM0WcM0WcALFcO!OM\Fh�=O�FHiR�TI=OWhM�LGeFhGe]Z]VO�]VUVic[ GJKL��GeK=MJWhA=O�F4W,�lM�WcM�WhA=FhO�O"M\Fh�TO!Fhil�TI=ORWcM#O��?��=]VMeUZWhGJWcUVMeK�MJNÌALGeFh�T�aGJFhO;UZKLijWhGeKrWcU_GnWcO^���=A?XTijU_S�iHÐ ALG�meO���O�O!KFhO!GJ]VUV��O!�wt­�O!FcO�B)O�K=®�¯ I�ijO^i �LO!]V�T���=FhMek\FhGe[�[�Ge�=]VO���k\GnWhO��bGJFhFhG�X϶@ f;B�u Ð�GeKL��� ­9Çl³ s �r���=ILi WcO!SHALK=Me]VMek\X¨GJKL�±�aGei�O^ij��O��S�U_GJ]V]VX¨�TO!icUVkeK=O^�¨NPM\F�WcA=O�icUV[#I=]_GnWhUZM\K¥MeN;�LUZM\]ZM\keU_S�GJ] [�MT�TO�]icX?ijWcO![di"GJKL��NPM\FR�TM\UZK=kdFhO!icO!GeFhSHA0MeK�O!meMe]Vm?UZKLkA�GJFH�T�;GeFcO\t²�UZWcAÆGJK©GJ�=�LFcM��TUV[�GJWcO^�-NPMeILF§WcO�FHG'UZK�i,WhFcILS�WcUVMeKLi§��O�FicO!S�M\KL�%GJKL�%Mnm\O�F�³L5.5 ­9Y;XrWcODMJN�A=UVkeA-ic��O!O!�-ijWhGJWcU_S[�O�[�MeFhXev�­�O!FcO�B)O�K ®�¯ Ge]Z]VMn�"idFhO!icO!GJFHSHAÅ��ALUVSHA�ALG\idK=MeW��O�O�K¨��MricicUZ�L]ZO���U�WhA¨S�M\[�LITWcO!FRALGeFh�T�aGJFhO UVK�WcA=OÎrILGJFcWcO!F[�UZ]V]VUZM\K��TM\]Z]_GJF0FcO!keUV[O\t��aALO.O!UZk\A\WhO�O!K¦��MrGJFH�=i��LFcMnm?U_�TO[�MeFhO�WcALGeK ´ t o [�UV]Z]VUVMeKzk\GJWcO!i�O^ÎrI=UZmnGe]ZO!K\WHi�NPMeFEILijO!F��TO��icUZk\KLi�tR`bK��LkLt É v�WcALO�M\FckrGJK=UV�!GJWcUVMeK�MJN4G���M\GeFh�(U_i)ijA=Mn��K�tu ��UZK?IT�§Me��O�FHGnWhO!� s 5.5�­��"�Åf Mn�;O�FHf;º-S�MeKLK=O!S�Whi9m?U_GWcALO��)­9Ç����=ILi�i,WHGJKL�LGJFH�zWcMÅWcA=O¥�=ILij��UVKrWcO!FjN¶G\S�O¨GJW�O^GeSHA��M\GJFH�ÅGeKL�ÅS�MeKrWcFhMe]_i#WcA=O�SHA=UV��S�MeKT�Lk\I=FHGnWcUVMeK�Gei�lO!]Z]�G\iWcALO FcO^Ge�TM\ITW"GJKL�0O��T��O�FhUZ[�O�KrWRihSHA=O!�=I=]ZUVK=k�t

� ���� ~ }LÂ� ±~ } �� Á� ��

�RG�m?UVK=k�i,WhIL�TUVO!�O�m\Me]VmrUVK=k�Y;MrM\]ZO^GJK�ALGJFH�T�aGJFhO Ê È p vTÈ s Ë=WcALOGJ�L�LGJFhO�KrW [�U_ij[dGJWhSHA¨��O�W,�;O�O!K¨WhA=OK=O�O^�TO!�.]ZO!K=kJWhA¨MeNl�TO��ihS�FhUZ�TWhUZM\K�GeKL��WhA=O�S�M\[�LITWhGJWcUVMeKLGe]T��Mn�;O�F MJN�WcA=O�FhO!icI=]ZWcUVK=kY;M?Me]VO!GJK0GJ�=�LGeFhGJWcILi;[dGe�=O ILi;ILicO�[�UVS�FcMe��S�MeKrWcFhMe]V]ZO!FRÏ f ºaÐW,X?��O�[dGeSHA=UVK=O!i!t"`�W)�;G\i"A=M\��O^�(WcALGJWRWhA=O#�=FhUZWjWc]VO�KLO!ihi Ê È o ËMe��ijO!Fcm\O!�±UVK�WcA=O�O�m\Me]Vm?UZK=k.YlM?M\]ZO^GJK�ALGeFh�T�aGJFhOES�MeI=]_����O[dGJKLGekeO^�E[�MeFhO)O!GeicUV]ZX�UVK�G[U_S�FhMJ�bS�M\KrWcFhMe]V]ZUVK=k�S�MeKrWcO��?W!t�aA=O�U_�TO!G¥MeN WhA=O�O�m\Me]Vm�Ge�=]VO f º U_i��TO�FhUVmeO!�ÅNPFhMe[ Ê È!³JËRG[�UZKLUZ[dGJ]VU_i,WhUVS0NPMeFh[ÆMJN�G±·�`jQLº [dG\SHA=UZKLO0��UZWcA�MeK=]VX�MeKLOUVKLi,WhFcI�S�WcUVMeK±Ï¶­¥¤���Ð4]VO�N�W^tg­9GJKLUZ�=IL]VGJWcUVK=k�LGnWhG�U_iaFcO^GJ]VUZ�!O!�A=O!FcO�WcA=FhMeILkeA¨icUV�=OO���O^S�WHi ��ALO�K¥[Mnm?UVK=k0�LGnWhGENPFhMe[%WcALOUVK=�=ITWd��MeFcW#WcM.WcALO0M\ITWc�=I=W��MeFcWM\F�G.FcO!keU_i,WhO�F^t¥Q?O!meO!FhGe]WcALMeILihGJKL� f º;i Ï�WhA=O�[�GJ�TUZ[�I=[ GeSHALUZO!meO!�E�lO!FcO pJs?o ³ f º;iUVK�­�O!FcO�B)O�K ®�¯ нGJFhO4SHALGeUZKLO!� I=��UZKijI�SHA#GR�aG�X WcALGJW O^GeSHAf º�ALG\i4GeS!S�O^icigWcM�WhA=ORIL�=��O!FlO!]ZO![�O�KrWlMeNÌWcA=O)i,WHGeSH�MJNÌWcALOK=O!UZk\Ar��MeFhUVK=k f º;idGeKL�ÅWcM±MeK=O(MeNRWcALO�UVFdFcO!keU_i,WhO�FHi�t��aA=UVi

accu

stack

function−map

input−map

lookuptable

I

lookuptable

II

Registers

counterprogram

and

program

zero−flag ZF

carry−flag CF

input lanes

register out

out

@ UVkeI=FhO p ª��aA=O O!meMe]Vm?UZKLk�[�U_S�FhMJ�bS�MeKrWhFcM\]Z]VO�F�Ï f ºaÐ� ��=(>q�T�.�2��� Z'"� I �'���T�wM � � CDVp8 ��$\T��8=8� + =��u�W����t.���T;�����A7 I ZG���;7'���� D*�G + (' f@gh/��c('���� I Z'D�����u8�. Z'"� I �'�����4=����s'$l �T��=(>F'��.�tj������A7��'����� ������v ��e-L�$- ��c�T�.� + >e'��^���k'��.�4tL���T;�����A ��e-.�T/����� I t.t]���[�y� I � + �'� Q����'��.����� Z'"� I �'���T� Z'"���$��A -.��'�����A7��.�'����7=��? $��'���T�w�W����A #%�.����� -���'��F� 2A7��\,�$-^'��$#p����-. k'����7=��? $��G'���T� -.��'�����A7����$- + >v'���� =���#Y���[�W� I � + ('� u�������w��� Z'"� I �'���T� /�c�.��'��������]��;� %������'��� Z'��$-9���p� I �� �'���T�. p��������PL�� I '���-q-L��t]���j-�T�.=(>N�T�v'��.�Qt����"'�� I =8���2=��? $��'���T�w��-�-L���� " "�$- /��c('��o���n��-�-.(G'���T����=@A ��t�t.���;�����'����Qt]�T " " + =��F�$aq8�.t I ' MK8�.t I 'DA ��tjV�����-�$a � I '�t I ' My� I �� �'���T�QA ��t]Vm=��? $��'�8���� @'��k-.�� �������?'@���t I '@t]���"'� ����-F-.�� �������e' � I �� �'������ �l]��Pe'"����A7��=�>q-L���� "�k ��e-L�u ���� + � ���$��=�G�<��$- /J����� @A ��t�t.���;�� @-.��ij����-Q��'J� I �e'��A7�Y���j-2 $���Q'��.�������W�����+ � I�+ �Z�� �'���- '��u��\,��= I '���T� /�� � �T-.-.('���T� le' #��2��� + ('"�����">[� I �� �G'���T�N;T����������'����� 7MK=��?�T� I tLG '�� + =��� �� ���j- �!�ZVp#%�.8 ��4�����Q� + =��u'�����$��=8�<������?> I �j���">2� I �. �'���T�7#%('�� * + ('@#%8-L���#" � $��� + � I "��-'�� + �k ������.;T�$- + >9'����D��\,��=�\L��.;9 Z>L Z'���A ��'h� I �e'��A7�T/���� I h�t�=8�� Z'�8 7f@g � u�$\T���=s� + =��[�y���D'����[������-e#p�����Q��\,�T= I '�8���n��PLt]����(GA7���?'� �/J���.��t.����;�����A "�<�� $��� + �h\T����8��- + ��'X#������4�%$�*uA7��A[G���">qtj���"'�('�8���� ��'�*Q��� Z'"� I �'���T�. ���� ��^����-q'X#Y�[tj���"'��'������ h��'{e�%$F8�. Z'"� I �'������ u�$�� �� /N�Y#Y�^ "t]�� �8��=Y "s-L��G �&� �� �'� [~'�(� ~L� g����-|~'�(� ) EY~L� �����q�$\T���=s� + =��q'��^ ��j����;��9'��.�q�� �'��\,�9tj���"'�(G'���T�. �/

SHALGeUZKEG\S�WhILGJ]V]ZXdU_iaG#S�]ZMrijO^��]VMrM\��]VUZ�\O UVK�WhA=O �;MeFh��MJN½·RGeij�[#I�icicO�K Ê s Ë�t`bK¥WcA=O�O��T��O�FhUZ[�O!K\WHi�FcO!��M\FjWhO!�Ìv�È^³ f º;i���O�FSHA=UV�9�;O�FhO�ILicO!�Ìt)�aA=O!icO�È!³ f º;i icALGJFhO WhA=O�NPM\I=F�Q=·"uR­9iG�mnGJUV]VGe�=]VOEGnW�O!G\SHAÅGJk\O�KrW!t±Ç4G\SHA f º�keO�WhiGeS�S�O!ihi�C�UZK�GFhMeI=KL�ÅFcM\�=UVK�N¶GeicA=UVMeK�C±WhM¨WhA=O�GnWcWhGeSHALO!��Q=·"uR­9iNPM\FdG��O�FhUZMT�zMJN�ÈT5 ÉJs S�]VM?SH��S�XTS�]VO!i0GJKL�¦��FcUZWcO^i�UZWhi��LFcM\keFHGJ[diMeF�ijWhG\SH�9mnGJ]VI=O!i�UZK¥WcALOEQT·"uR­¨i���A=U_SHA�GJFhOM\��O!FhGJWcO^�.G\iicA=U�N�Wc��FhO�k\UVijWcO!Fhi!t«�aA=O±QT·"u ­ �=GJWhG�M\K�WcALO.MeWcA=O!FEALGeKL�U_i�G�mnGJUV]VGe�=]ZO�WhM9GJ]V] f º;i�M\K¥WcA=OESHALUZ��GnW#WcA=OEihGJ[�O�WhUZ[�Oet

EVOLVABLE HARDWARE180

Page 29: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

REG_A

OAP_HOAP_A

OAP_A

OAP_H

IN_A

IN_B

IN_C

IN_EIN_F

IN_D IN_DIN_CIN_FIN_EIN_A

IN_BIN_B

REG_AIN_DIN_C

IN_AIN_EIN_F

IN_E IN_EIN_FIN_F

IN_E IN_EIN_F IN_F

Distributor−DATA

SRAM−DATA

IN_A IN_A

IN_D IN_DREG_A

IN_BIN_BOAPOAP OAP OAP OAP OAP

IN_B

IN_A

IN_DREG_A

IN_E

IN_FREG_A

IN_A

IN_BOAP

IN_D

IN_B

IN_A

OAP

IN_D

REG_7A

IN_0B

IN_0AIN_0EIN_0FIN_0CIN_0D

REG_7AREG_0A

OAP_HOAP_AIN_0B

IN_0AIN_0EIN_0FIN_0CIN_0D

REG_0A

REG_0A

REG_7A

up to 144 agents

@ UZk\I=FhO s ª4ºlALGJUVK(MJN½IL�0WhM pJs?o ³ f º;i��t|'���$�Rof@gY 7 ��T�Lij; I ���$- 8�?'��w�4 ��.�t_;T�\,�F�n �������_��� I t'��qU�R?{�a�f@gY �#Y�����e���;���Ntj������=�=���=:���j-4��'D�9 �=��? ��F����'��[����a�R��x�<%#%('����kA7����A I Ad� I A + ���Y��� ����� 8�. Z'"� I �'�����qt]���Y �=��? �� �>L �=��� �/_������-.�� "�;T� �y���^�$avf@gY 7� 7 "�.��#%�|#%��� ��_���� + �����I "��-n��oA7�T Z'k��PLt]�����A7���?'� �/q�����7�W� I �Q~e� 6 �� 2��'"'��� ����$-4'���$�� ��N��;T���?'������u�Tt]������'��$-^�� �a�R }Y(' A7��A7���">q����-��$�� ��^#�����- ����e'���������;h*p8�. Z'"� I �'������ #%�.8 ��u�����: "����8��=�=(>u�W�$-D��e'��p'��.�:f@gY ��'h�Q "t]�� �8��= ��.t I '%t]���"'$/

�aA=U_i [�O!GJK�i WcALGJW�G)�=FhMek\FhGe[§UZK�=FhUZKLS�UZ�L]ZO�S�M\I=]_�#��O�O!G\ijUV]ZXFhO��=]VUVS!GnWhO!�9�?X�GEN¶GeS�WhMeF�MJN È!³�UZN;GeKL��M\K=]ZX�UZN4WhA=O f º;i M\KWcALO�SHA=UZ��GeFcO)]ZU_ijWcO�KLUZK=k�tuRilGJ]VFcO^Ge�TX�[�O�KrWcUVMeK=O^�ÌveFhMeI=WcUVK=k�MJNÌUVKTNPMeFh[dGnWhUZM\KU_i4G S�O�KT�WcFHGJ]�U_ihijI=O�NPM\F O�m\Me]VmrUVK=k�ic�LGnWhUVGe]Z]VX9O��?WhO�KL�TO^�¥UZKTNPM\Fc[dGJWcUVMeK�=FhMTS�O!ihicUZK=k�icXTi,WhO�[di�t¸�½MzWcO^i,W�WhA=O�S�Ge�LGJ�LUZ]VU�WhUZO^i�MJNWcALOO�m\Me]Vm?UZK=k f º;iGJK��¥WcM��LK���G9[�O!G\ijILFcO�NPM\F#O�m\Me]VITWcUVMeK�GJFhXGJ�LUZ]VU�WhUZO^i Ê È q ˽WhA=O�WhMe��Me]VMekeX0MJN�WhA=O�icXTi,WhO�[%UVi [dGe�TO�icS!GJ]Z�GJ�L]ZOdUVK�WcALO�FhGeK=keO�MeNa[�M\FcO�WhALGJK±W,�;M�MeFH�TO�FHi�MJN�[dGJk\K=UZ�WcI��TOet �aA=U_i½[�O^GJKLi�WcALGJW �?X��=I=FhO4��GJFHGJ[�O�WhO�FhUZ�^GnWcUVMeK MeN=WcALOicX?ijWcO![�GJW4FhI=KrWcUV[O"WcA=ORSHA�GJUVKdMJN f º;igS�GeKd��OR�LGJFcWcUZWcUVMeK=O^�UVKEÈ s\s v p ³ GJKL�dÈ ´ �=UVO!S�O!i½MeF ILicO!����UZWcA#NPI=]V]r]VO�KLkJWcA�t½²�A=O!K�TO^ijUVkeKLiEGJFhO�ILijO^����UZWcA�MeKL]ZX�O�UVkeArW f º;id��O�F�SHA=UV�¦O�m\O�Kic[�Ge]Z]VO�F)O�m\Me]Vm?UZK=k�SHALGJUVK9�LGeFjWhU�WhUZM\KLi)S�GJK.��OUVKrm\O!ijWcUVk\GJWcO!�wtuRS!S�M\Fh�TUVK=k)WcM Ê È q Ë�G�ijALG\�TMn�Å[�MT�TO!]=UVi4�TO��LKLO!��GeigGeK�O!meMe�]VITWcUVMeKLGeFcX�[�MT�TO�]µ��UZWcA0UZKrWcO!FhG\S�WhUZM\KLig��O�W,�;O�O!KEUVKL�TUVmrU_�TILGe]ViUVK�WhA=O9O!meMe]Vm?UZKLk¥��Me�LI=]VGJWcUVMeK��TU_icGe�=]VO!�Ìt �"O�FhOev;U_ijM\]VGJWcUVK=kf º;igicO�FhmeO^i�WhA=ORihGJ[�Oa�=I=Fh��MrijO\t�ºlM\[��LGJFhUZKLk WhA=O"�TU ��O!FcO!KrWWcM\��M\]ZM\keUVO!i���U�WhA�O^GeSHA�MJWcALO�F^v�WcA=O(O��?��O�FhUV[O!KrW���UZWcA�WcALO]_GJFhkeO�F K?I=[���O!F#MeN;�LGeFjWhU�WhUZM\KLi�S!GJK���OEijO!O�K�G\i�G�ijA�Ge�TMn�[�MT�TO�]�t�Çg�?��O�FhUV[O!KrWhi���UZWcA¦ic��O^S�U_GJ]R�TU_ihGJ�=]VO!��NPI=KLS�WcUVMeKLiGJ]V]VMn� WcM¥keFHGJ��WhA=O9icO�[dGJKrWcU_S�i�UVKÅWhA=O�ijXTijWcO�[�GeiU�WdU_i�GW,X?�=U_S�GJ]µ�=FhMTS�O^�TI=FhORUVK¥Ï¶keO�KLO��,Ðg�?K=MTSH�r��M\ITWaO��T��O!FcUV[�O�KrWhi;UVK[�UVS�FcMe���LUZM\]ZM\keXet

� � y){ }��"Ä À�� | � {��"{\| � �µÁ �� � � Ä,|��� ~ {?ÃR} {

¤ �LicO�Fhm?UZK=k�G0icO�]ZN���MeFhk\GJKLUZ�!O!�(O�m\Me]VITWcUVMeK¥ijXTijWcO![-UVi)K=MeW�GJWGJ]V]nWhFcUVm?UVGe]�tw`bK�S�MeKrWcFHGeijWµWcMR·RG�X Ê o ËrGeKL�)MJWcALO�FHi�v�WcA=O4icXTi,WhO�[U_i4K=MeW;icO�O^�TO!����UZWcA�G �?K=Mn��KEicO�]ZN���FhO��=]VU_S�GnWhMeF^t½�aA=O FcO^GeicMeKNPMeF�WhA=U_idUViWhALGnWdNPILKLS�WhUZM\KLGJ]RS�O�]V]VidGeFcO�Ñ�¤)� WcALMeI=k\A\W�WhMO��TU_i,W��������������Ì]VUZ�\O�WcA=O�O!meM\]Zm?UVK=k�ijXTijWcO![�i"MJN WcA=O#�aUVO�FhFHGJKW,X?��O\t��aArI�i�vrU�WaU_igK=MeWl�?K=Mn��Kd��ALGJW4WcM�O��T��O!S�W;UZK�WcA=O)ijXTij�WcO![(tg�aA=O�K=O��?W"�=FhMe�=]VO�[°S�MeKLK=O!S�WcO!�0��UZWcA�Me�LicO�FhmnGnWcUVMeK0UViWcALO�icA=O�O!FRGJ[�MeILK\W MJNg�=GnWHGd��O�UVK=kE�=FhMTS�O^icicO!���?XEWhA=O#[dGJ�SHA=UVK=O C�ijO!meO!FhGe]wWcO!FhGJ���?XrWcO^i"��O�F�ijO^S�M\KL� ��YlMeWcA9�LFcM\�=]ZO![diGeic�dNPM\F"GJK�UZKL�=O���O�KL�TO!KrW GJFhO!G�MJN FcO^ijO^GJFHSHAwt

u��LFcO!]ZUV[�UZKLGeFcXGnWcWcO�[��TW4WcM Me��ijO!Fcm\OlWhA=ORicXTi,WhO�[NPM\]Z]VMn�"i)WcA=OdU_�TO^GEWhALGnW���A�GnW UVi�UZ[���MeFcWhGJKrW ��UV]Z]��O�O��TU_i,WhO�KrW#UVK�ijO!meO!FhGe]gS�Me�LUZO^i UZK±WhA=O�O!meMe]Vm?UZKLkicXTi,WhO�[��

u"K�GJ]VkeM\FcUZWcAL[DALGei ��O�O�K��TO^ijUVkeK=O^� WhM)O��?WcFHGeS�W�GJ]V]T�LGJWjWcO!FcK�iUVK�WcALORkeO!K=Me[�U_SR�=GJWhG#��A=UVSHAEM?S!S�I=FaGnW;]ZO^GeijW����§È s WhUZ[�O!iÊ È ´ Ë�GeKL�! #"%$ &�'($)� p 5�UVKLijWcFhILS�WhUZM\KLi!t��aA=O��LGJWjWcO!FcK�iWcALO�[dijO!]Zm\O!i GeFcO�GJFh�=UZWcFHGJFhXet��aA=UVi Ge]Zk\MeFhU�WhA=[¸U_i��LGJFcW MJNaGS�M\[��=FcO^icicUVMeK�GJ]VkeM\FcUZWcAL[�GeKL�EGe�=�=FhM��?UV[dGnWhO!i 3�M\]Z[�M\keMeFhMnmO�KrWhFcM\�rX Ê ÈT0�ËLWhM#G S�O!FjWHGJUVK�O��?WcO!K\W^t��aA=O"[dGn�TUV[#I=[�]ZO!K=kJWhAMJNµWhA=OR�LGJWjWhO�FhK�ijO^GJFHSHA=O!��NPMeFlUVi4FcO^i,WhFcU_S�WhO!��WcM É\q 5�UZKLijWcFhILS��WcUVMeK�iC�WcA=O¨FcO^GeicMeK���O!UZK=k�G±]VUV[UZWcO^��GJ[�MeILK\W�MeN)[dGeUZKT�[�O�[�MeFhX�UVK�WcA=O A=Mri,W"S�Me[��=ITWhO�F^tu"]V] S�Me[��=]VO��TUZW,X0[�O^GeicI=FcO^i"ILicO!�9UZK�WhA=U_iR�;MeFh�0GeFcO WHGJ�?UVK=kWcALUVi��LGJWjWhO�FhK�GJK�GJ]VX?icU_i�LGnWhG¥Gei�WhA=O�UVFd�LGeicO(GJKL�ÅK=MJW�WcALOMeFhUVkeUVKLGJ] keO!K=Me[�U_S��LGnWhGLtd¤RN�S�M\I=FHijO\vµWcO�FHGn���?XrWcO!i)��O�F�icO!S��MeK��#S�GeK=K=MeW O!meO�K���Oa��FhU�WcWcO!K�UVK#WhA=Oa[dGJUVKT��[�O![M\FcX�MeNLWcALOS�M\[��=ITWcO!F!tE¤ K=]VX.G(ic[dGJ]V] NPFhG\S�WcUVMeK¥MJN;�=FhMekeFHGJ[di)U_i�FcO^Ge�MeI=W;MeNwWcA=O�GJk\O�KrW;SHALUZ�Li;m?U_G WcALO)�TU_ijWcFhUZ�=I=WcMeFHilUZK�G#FhO�k\I=]VGeFN¶GeicA=UVMeKwtz�aA=O^ijO��=FhMekeFHGJ[diGJFhOEWhA=O�K��=U_SH�eO^�ÅI=���?X�WcALOA=Mri,W"GJK���GeFcO)ILicO!�0NPMeFaWhA=O �LGJWjWcO!FcK(GJK�GJ]VX?icU_i�t�aA=O�S�Me[��=]VO��TU�W,XE[O^GeicI=FhO!i;ILicO!�(GJFhO)G\i;NPMe]V]ZMn�"i!ª

* Ç 1 f4ÇlÑ QTÇRª��aA=O©�LGnWcWcO�FhK icO!GeFhSHALUZK=k2GJ]VkeM\FcUZWcA=[icO!GeFhSHA=O^i"NPM\F FcO!��O^GnWhUZK=k(�LGeUZFHi)MJN;UZKLijWcFhILS�WcUVMeKLi�UVK¥Ge]Z]�=U_SH�eO^��I=� �=FcM\keFHGJ[di!t @LFcM\[ WhA=O!icO��LGJUVFHi±MJN(UZKT�ijWcFhILS�WhUZM\KLi±FhO���O!GnWhUZKLk¬ÎrILG\�TFcIL�=]ZOzUVKLijWcFhILS�WhUZM\KLi�GJFhOicO!GeFhSHA=O^�§I=KrWcUV]�KLM¦NPI=FcWcA=O!F¨FhO���O!GJWhi.��U�WhA«G¦[�UVK=U��[�I=[ MTS�S�I=FhFcO!KLS�O�GJFhO0NPMeI=KL�wt¦`bK�G±]VG\i,W�ijWcO��zUZW�UViGJWjWcO![��TWcO^�EWhM�O!]ZM\K=k\GJWcO WcA=O�]VMeK=k\O!ijW;��GnWjWhO�FhKLi;NPMeILKL�icM#N¶GeF!tgÇ4meO!FcXdGnWcWcO![�=WcO!�(S�Me[#�LUZKLGJWcUVMeK0MJN½KLO��¼��GnWj�WhO�FhKLi�U_i FcO^S�M\Fh�TO^� Gei G"I=KLU�W O��µMeFcW GeKL�#S�MeI=KrWcO^�Ìt½�aALOWhMJWhGe]�K?I=[#��O�F�MeNlI=KLU�W�O���M\FjWHi �TUZm?U_�TO!�¥�?X�WhA=O�WcMeWhGJ]K?I=[���O!F;MeN�UVKLi,WhFcI�S�WcUVMeK�i4k\UZm\O!i4WcA=O�S�M\[�L]ZO��?UZW,Xd[�O!GJ�icI=FhO�Ç 1 flÇ4Ñ Q=Ç"t

* ¹ `!� Çl·RQ?`,�,+�ªl�aA=UVi�U_i�WhA=O([Mri,W�icUZ[��=]VO9S�M\[��=]ZO��?�UZW,X�[�O!GeicI=FhO�ILicO!�ÅA=O�FhOet±�aA=O0NPFcO^Î\ILO�KLS�X¥MeN GJ]V];UZKT�ijWcFhILS�WhUZM\K��LGeUZFHigU_ilS�MeI=KrWhO!�Ìt �aA=O�FhO GeFcO É�-/. �TU ��O!FcO!KrW

EVOLVABLE HARDWARE 181

Page 30: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

1.6

1.8

2

2.2

2.4

2.6

2.8

3

3.2

3.4

3.6

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

expe

nse

time [program executions / 10]

Comparison between classical mutation and self-poisoning algorithm expense

p = 10e-2self-poisoning

@ UVkeI=FhO o ª��a�;M��=U �µO�FhO�KrW"mnGJFhUVGJWcUVMeK�ijXTijWcO�[di�Y#��[-.�� �������?'pA I '���'�����9tL���? ��� " "�� ����� "���$#%� /:���.�� �=8�� " "� $��=A I '���'���T�vt.���? ���- I ���2#%�'��o�qi�PL�$-4A I '���'���T�4t.��� + � + 8=�('X>?l ��'���� k $�� "��� �'ÈT5���� � I "�$- lm� k "���$#%�v#%('��n'��.�[ I ��\T��� ��8/�c('��['����p "�� ��T��-[A I '���'���T�[tL���? ��$- I ���p'������W����r I ���� �>Q��� ���� ����� Z'"� I �'���T�98�7'��.�h;�������A78 �-���'��k� p-L��'�����A7�����- / � � '��.�h�.��Pe't.����;�����AB('�������'���T�Q'��.�pA7�T Z'H�W����r I ���?'J��� Z'"� I �'�8���[� H����t�=8�� ��$-+ >7�D������-.�TAB\���= I �T/�h��'Y�T��=(>7 ����q-.�� �������?':=8����;�'�����A ��\T�T= I G'���T�����"> + ���j�$\e8��� + �%� + "����\,��- +�I 'Y��=� "�Q� �.8;������:\���= I �%���]'��.� ���A7t�=���PL('X>wA7�$�� I ���qE@O �:E�D~LEd8 �� ��.���\,�$- / ����� [A7�$���� '��j��'7'����^t���'"'������� "�$���� ��c��=�;�����('���A �j�� 8�. ����$�� "8�.;T=(> A7�����-.��7 I =('���� p'��7-.��'�����A78�.������t]�$��'� %8�q'���� ;�������A78 k-.��'��e/

UVKLijWcFhILS�WhUZM\KLi��LGeUZFHi���M\ihijUV�=]VOet �aA=OR�TUVmeO!FhicU�W,X#UVilS�GJ]_S�I=�]_GnWhO!�(Gei!ª

� "�� '���� "������ � ������ " $�� $!� � � ""�$!� "%$#�$� %

��UZWcA "%$�WcA=OES�MeI=KrWMJNaWcA=O0UZK�i,WhFcILS�WcUVMeK��LGeUZF���U�WhA[�UVK=UZ[�I=[¬NPFcO^ÎrI=O�KLS�Xev( ����#WcA=O4S�MeI=KrW�MeN?WcA=OlUZKLijWcFhILS��WhUZM\K��LGeUZF���UZWcA�[dGn�TUZ[�I=[ÆNPFhO!ÎrI=O!KLS�X�GeKL� $!� � ��"��WhA=O"K?I=[#��O�F4MJNwGJ]V]L�TU ��O!FcO!KrW4UZK�i,WhFcILS�WcUVMeK��LGeUZFHi NPMeILKL�UVK�WcA=O k\O�K=M\[U_S��=GnWHGMJN�WhA=O�icX?ijWcO![(t

* fÌu��Rº�¤)­9fRªÌ�aA=OdK?I=[#��O�F MeNl�LGJWjWcO!FcK¥]VO�meO!]Vi�϶�LGJUVF!vÎrILG\�TFcIL�=]ZO�tVtVt Ð UZK§WhA=OÅicO!ÎrI=O!KLS�O��=GJWhGzWhUZ[�O^i�WcALOK?I=[���O!F MeNg�LGnWcWcO�FhKLi MJN "%$ & '($ � p 5�UVKLi,WhFcI�S�WcUVMeK�iNPM\I=KL�±UVK.WhA=Od�LFHijW�U�WhO�FHGnWcUVMeK±MeNlWhA=Od�LGnWcWcO!FcK�icO!GeFhSHAGe]Zk\MeFhU�WhA=[(t

& ' Ã�|T~ |=Ä,Á À { ~ |!(¶{ À� *)

Q?M±N¶GeF!vaUVKzGe]Z[�Mri,WEGe]Z]"O!meM\]ZITWhUZM\KLGJFhX�[�MT�TO�]_i��=IL�=]ZU_icA=O!�ÌvOet kLt Ê É 5�ËRGJKL��NPMe]V]ZMn�;O�FHi!v�[#ITWHGnWcUVMeK�UVi�WhA=MeI=k\ArW�WhM¥��O(GFHGJKL�TM\[ O�m\O�KrW!vl]ZUV�eO9G±S�M\ic[U_S�FhG�X�SHA�GJK=k\UZK=k¥WhA=O�UZK=NPMeFc�[dGnWhUZM\K�S�MeKrWcO!K\W"MeN G�icO!ÎrI=O�K�S�O�MJN ]ZO�WjWhO�FHiaUZK�GI=K=UZNPMeFh[�]ZX�TU_i,WhFcUV�=ITWhO!�d[dGeK=K=O�F^tg¤RNÌS�MeI=FHicOeveUVKd[�Me]VO!S�I=]VGeFg�=UVMe]VMek\X#UZW

U_iR�;O�]V]��?K=Mn��K�WhALGnW)[#ITWHGnWhUZM\KLGJ]½O�meO!KrWhiRGeFcO#MeK=]VX0UVK¨FHGJFhOS�G\ijO^idO�m\O�K=]VX��=UVijWcFhUZ�LITWcO^�zMnmeO�F�WhA=O¨k\O�K=M\[�UVS�icO!ÎrI=O!KLS�O^i��A=U_SHA9U_i�WcALMeI=k\A\WRWcME��O�GES�MeK�ijO^Î\ILO�KLS�O�MJN WcALOicO�]VO!S�WcUVMeK�=FhO!ihijILFcO9icI=�T�,O^S�WcO^��WcM�WhA=O.icXTi,WhO�[2UZK?m\O!ijWcUVk\GnWhO!�Ìt§­�IT�WhGJWcUVMeK�UVK�WcALUVi��lM\Fc�¥GJ]V�;G�XTi�[�O!GeKLi�O��=SHALGJK=k\O�MJN"GeK�UZKT�ijWcFhILS�WhUZM\K �rX)G�FHGJKL�TM\[¼UVKLijWcFhILS�WhUZM\K)UZNLGa[#I=WhGnWhUZM\KLGJ]\O�m\O�KrWMTS�S�I=Fhi!ta`�W U_i�NPITWhUZ]VO�WcMdWhFcX(GJKL��S!GJFhFcX0MeITW �=U�Wc��[�ITWhGJWcUVMeKLi��O!S�GeILicO�WcA=O4�=WcKLO!ihi�S�M\KLicO!ÎrI=O�K�S�O!iw��O!F��=UZWj�bSHALGJKLkeO4S!GJK=K=MeW��O O��T��O^S�WhO!�0WcM���O�ij[�M?MJWhA �·�O^GJ]VUZ�!UZK=k¬G¦��FhijW�º4�bijUV[#IL]VGJWcUVMeKDWhM¼WhO!ijW±�TU �µO�FhO�KrW f º4�mnGJFhUVGeKrWhi!v�UZW�ijM?MeK9WcI=FhK=O!�¨MeITW)WcA�GnW)WcA=OO�m\Me]VmrUVK=kEicXTi,WhO�[[�MeFhO.M\F�]ZO^ici�UV[�[O^�TU_GnWcO!]ZX�keMeW0WhFhGe�=��O^�¬UZK§Gzi,WHGnWcUVMeK=�GJFhX���O!ALG�m?UZM\F!v��LkLt o Ï�S�I=FhmeOGnW � � È�5 ��� Ð�t�ºlMeK�ijU_�TO�FhUVK=kWcALOEB�G�X\Gn��A?X?��MeWcA=O^ijU_i�GJKL�¨WcA=OdFhMe]VO�M��TXrk\O�K¥[�UZk\A\W ALG�m\O�=]_G�XeO^��GnWWcALGJW�WhUZ[�O\vgWcALO0U_�TO!G.MJN"[�ITWhGJWcUVMeK�Gei�G,+^7.-0/2135476 + 4 < 6 < >.�=FcMTS�O!ihiRO![O!Fck\O!�Ìt�aA=OUV�TO^G�UVi�icUZ[��=]VOeª)WcALO[�M\ijWRijI�S�S�O^icijNPI=]�icO!ÎrI=O!KLS�O�M\FRij��O!S�UZO^ia�=FhM?�=ILS�O^i"ijM�[�ILSHA�aGeijWcOÅ϶�;G\i,WhO9UViEILicO�]VO!ihi�MeFEO�meO!KzWcM��TU_S���O!F0�TO��LK=UZWcUVMeK�ÐWcA�GnW"UZWR�TO!ijWcFhMnXTilUZWhi"Mn��K0�LG\ijO�MeN½O��TU_i,WhO�KLS�Oet`bK�WhA=O f º4��[�MT�TO�]½WcA=U_i)S�MeIL]V��O^GeicUZ]VX���OO!ijWhGe�=]ZU_icA=O!�Ìv�Oet kLt�?X#S�M\I=KrWcUVK=k)WcA=O�K?I=[���O!F�MJN�UZKLijWcFhILS�WcUVMeKLi ILicO!��UVK�Ge]Z]T�LFcMe�keFHGJ[di!t�u�N�WhO�F¥�TO�WhO�Fh[UVK=UVK=kzWcALO�UZK�i,WhFcILS�WcUVMeK§��UZWcA§WcALOA=UVkeA=O^i,W�NPFhO!ÎrI=O!KLS�X¦WcA=U_i�UVKLi,WhFcI�S�WcUVMeK§U_i9�TO^i,WhUZK=O^��WcM���OS�M\[��=]ZO�WcO!]ZX�FhGeKL�TM\[UV��O^�(UZK(WhA=O�NPM\]Z]VMn��UVK=kdFcM\I=KL�(MeN �LFcMe�keFHGJ[ O��TO!S�I=WcUVMeKwt ²�A=O!K=O�m\O�FaWcALUViaUVKLijWcFhILS�WhUZM\K0U_iaO�KLS�MeI=K=�WcO!FcO^��UZK�WhA=O f º vrG I=K=UZNPMeFh[�]ZX��TU_i,WhFcUV�=ITWhO!�dFHGJK��TMe[�KrIL[����O�F�U_idWHGJ�eO!KzUZKLijWcO^Ge�ÌtD¤RWcA=O!F�[#I=WhGnWhUZM\KLGJ]RO�meO!KrWhidALG�m\O��O�O�KzS�M\[��=]ZO�WcO!]ZX�Ge�LGJKL�=MeK=O^�Ìt��aA=O�FcO^ijI=]ZWcUVK=k.��O!ALG�m?UZM\FMJN�WhA=O�icXTi,WhO�[-SHALGeK=keO^���TFhGe[dGnWcU_S�Ge]Z]VXev��Lk�t o ϶UZK�S�FhO!GeicUVK=kS�ILFcm\O^Ð�v K=M\KT��WcFhUZm?U_GJ]g]VMeK=keWcO!Fc[£O�m\Me]VITWcUVMeK�S�MeI=]_��UV[[�O^�TU��GnWhO�]VX.��OEM\�LicO�FhmeO!�wt(�aALO�FcO^GeS�WcUVMeK�MJNaWhA=OEO!meMe]Vm?UZKLk9ijXTij�WcO![�U_i�WhM��TO�m\O�]VMe�zUZK�S�FhO!GeicUVK=ke]VX�S�M\[�L]ZO���ijWcFHGnWcO!keUVO!iWhMG�meM\UV�0�TMe[�UVKLGJK�S�O�MJN MeK=]VX�MeKLO)�LFcM\keFHGJ[ �LGJFcW�UZK0WcALO�ijXTij�WcO![ ��O!S!GJILicOdWhA=UVi#�=FhMekeFHGJ[-�;MeIL]V��Ge]Z[�M\ijW#S�O!FjWHGJUVK=]VX¨��O�TO^i,WhFcMnX\O!�Ìt

8 9#� }�Ä � �À |T~ � { |=à ~ À Â-} {?à � |={

u W,Xr�LUVS!GJ];O��T��O!FcUV[�O�KrW�]_GeijWhiGJ��MeI=WicO�meO!K�[�UZK?ITWhO!i!t�u;WWcALO0��O�k\UZK=KLUZK=k¥GJ]V]4WhA=O(SHA=UZ��i0Ï��TUVijWcFhUV�=ITWcM\FhiGJK���GJk\O�KrWhiHÐGJFhO�S�M\KT�Lk\I=FcO^�±GJKL�¥WhA=OE�LGeFhGe[�O�WcO!Fhi GeFcOd��FhUZWjWcO!K�WcM¨]ZMe�S�Ge]4FhO�k\UVijWcO!Fhi MeNaWcA=O��TO!icUZk\KLi!t(�aALO�K�WhA=OEGJk\O�KrWhi�GJFhO�GeS��WcUVmnGnWhO!��GJKL��NPMeF s 5.59ijO^S�M\KL�=i�G.³ s ­��R�0S�]ZMTSH��S�M\KrWcUVKrI=�MeI�ij]VX9�TFhUZm\O!i)GJ]V] SHALUZ�Li)UVK¨�LGeFhGe]Z]VO�]�t�­�U_S�FhMJ�bS�M\K\WhFcM\]Z]VO�FHi�UVKWcALO)�TU_ijWcFhUZ�=I=WcMeFHigFhO!G\��MeITWlWcA=O)�=FhMek\FhGe[�igO�meM\]Zm?UVK=k UVK�WcALOGJk\O�KrWhiRGJKL����A=O!K�K=O!S�O!ihicGeFcXES�MeI=KrW�WhA=O NPFhO!ÎrI=O�K�S�X�MJN UZKT�ijWcFhILS�WhUZM\KLiaUZK0WcALO �=FcM\keFHGJ[di!t�`bKLijWcFhILS�WhUZM\KLi!v=GeS�S�MeFH�TUVK=k�WhMWcALOR�LGeFhGe[O�WcO!FhilSHA=M\icO�Kwvr��UZWcAdWhA=O ALUZk\A=O!ijWgNPFhO!ÎrI=O�K�S�XdGJFhOWcALO�KÅ��FhUZWjWcO!KÅ�LG\SH�.UVKrWcM.WcA=O(GJk\O�KrWhi#UZK�G¨S�O�FcWhGJUVK�FhO�k\UVij�WcO!F!tl`�N WcA=O#icXTi,WhO�['UVi"�lM\Fc�?UVK=k�UZK�G�icO�]ZN�����MeU_icMeK=UVK=k�[�M?�=OWcALO!icOEUVKLi,WhFcI�S�WcUVMeK�i�GeFcO0O��=SHALGJKLkeO!�±�?X±FHGJKL�TM\[©UZKLijWcFhILS��WcUVMeK�i�t±�aA=O�WhMJWHGJ]a�TO!icUZk\K�U_i�S�MeKLijWcFhILS�WhO!��icILSHA�WhALGnWWcALOO�m\Me]Vm?UZK=k�GJk\O�KrWhi)GJFhO#K=MeW��=UZFhO!S�Wc]VX9S�MeIL�=]ZO^�9��UZWcA¨WcA=O�Me�=�

EVOLVABLE HARDWARE182

Page 31: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

1

2

3

4

5

6

7

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

expe

nse

mutation probability

Algorithm expense

JMP/autistJMP/block

JMP/simpleJMP/complete

4xIN/autist4xIN/block

4xIN/simple4xIN/complete

0

200

400

600

800

1000

1200

1400

1600

1800

2000

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

dive

rsity

mutation probability

Algorithm diversity

JMP/autistJMP/block

JMP/simpleJMP/complete

4xIN/autist4xIN/block

4xIN/simple4xIN/complete

0

5000

10000

15000

20000

25000

30000

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

patc

omp

mutation probability

Algorithm patcomp

JMP/autistJMP/block

JMP/simpleJMP/complete

4xIN/autist4xIN/block

4xIN/simple4xIN/complete

@½UVkeILFcO ³=ª�¹ U �µO�FhO�KrW"[�ITWhGJWcUVMeK(�=FhMe�LGe�=UZ]VUZWcUVO!iE@�� ���t�=���'% ��TA7tL��8 "�� p���;T�?'% "������� �/YE:�� ��9'X#��2 "������� %�j�$\,��-.(�WG�y�������?'Y ������.�� �'���T�7t����"'�('���T�� hM � I '�8 Z'�� ��$�*Dt����"'�('���T�� �l + =��? ���U�avtj���"'�('�8���� �lY "8A7t.=�������*vtj���"'�('�8���� ���j-| ��TA7t.=8��'�����wt����"'�('���T�]V�/��,� � I ��\T�� ^�j�$\,�w���?� �JG ��t]������'����n�� '��.�A ��t.t]�$-�� I �� �'�����4 "t��� ��2����- � R�P �"�� I ��\T�� �����\T�k�W� I �D���t I '=8���.�� ��y�������$�T-L���;2'��.� ~e� 6 � -.��'��L/:���.�h'��TtLG -.�$#%� "�$r I ���. ��� 9E@O �:E�D~LE%l�) � C EJ� ~'�Z������j-,� 6 �%g � � � ��'7'��.� + ��'"G'��TAF/

icO�FhmrUVK=k�A=Mri,W^t;Y;O!S!GJILicO MJN WcALO#S�M\K\WhUZK?I=M\ILi���O�ALG�m?UVMeF"GeKL�WcALO"]VG\SH��MJNµKLGJWcI=FHGJ]V]ZX�TO���K=O!�keO!K=O�FHGnWhUZM\KLi�ÏP��A�GnW4GJFhOaWcALOic��O^S�UVO!i�GJK��EA=Mn�¼]ZM\K=k�=M�WhA=O�XE]ZUVmeO,�^Ð�UVKEWhA=O�icX?ijWcO![ WcALOWcUV[�O����LGeicO SHA=M\icO�K�U_iaFcO^GJ]Z��WhUZ[�Oet`bKz�Lk�t4³=v�G±�=I=K�SHA�MeN O��T��O!FcUV[�O�KrWhi�MeK�­�O�FhO^B)O!K=®�¯�UViicA=Mn��KwtgÇ4G\SHA0�L]ZMeW"K=O�O^�TO!�(GJ��MeI=W"MeK=O�GeKL�0G�A�GJ]ZN �=G�XEMJNMe��O�FHGnWhUZM\K WcUV[�OlM\K�­�O!FcO�B)O�K=®�¯t½�aA=O;mnGJ]VI=O!i �=]VMJWcWcO!��GJFhOG�meO!FhGekeO mnGJ]VI=O^iRMeNgWcA=O]_GeijW W,�;O�KrW,X�S�M\[�L]ZO��?UZW,X([�O!GeicI=FhOO�mnGe]ZILGJWcUVMeKLi"��O!FRFhI=KwtauDmnGJFhUVGJWcUVMeK�MJN WcA=O#[#ITWHGnWcUVMeK�FHGnWhOALG\ia��O!O�K�UVKrm\O!ijWcUVk\GJWcO!�wtguRi�O��?��O!S�WcO^�Ìv=UZWRALGei;WhI=FhK=O!��MeI=WWcA�GnW�WcA=OdicXTi,WhO�[��TO!��O!KL�=i�M\K¨WhA=O�[#ITWHGnWcUVMeK¥FHGnWcO��A=U_SHAU_i�SHALGJKLkeO!�¨NPFhMe[�FHGJFhO[#ITWHGnWcUVMeK�i � � 5

%-��� % ���

WcMn�aGJFH�=iA=UVkeA�[�ITWhGJWcUVMeKzFhGJWcO^i � � Èet§�½Ge�rUVK=k�O\t k�t¼WhA=O9I=�=��O�F�=]VMJWUZKÅ�LkLt ³=v WcALO0O���M\FjWK=O�O^�TO!�±WhM9�LK��ÅGJ]V];FcO!��O^GnWhi#UViA=UVkeA=O^i,W�GnW#]VMn� [#I=WhGnWhUZM\K�FhGJWcO^i�t¨�aALUVi�UViÎrI=UZWcOEK�GnWcILFhGe]��O!S�GeILicO"U�NwGe]Z]�UZKLijWcFhILS�WcUVMeKLilGJFhO�UV�TO!KrWcU_S�GJ]�ve[dGeKrX��TU ��O!FcO!KrW]VO�meO!]ViEMJN#FhO���O!GJWhiEO��TUVijW!t Y;O�]VMn�'W,�lM�O!meM\]Zm\O!�z�=FhMek\FhGe[GJFhO¨icA=Mn��Kwt«�aALO9�LFHi,W�MeK=O¨UViEWhGe�eO�K���UZWcA¬G�[#I=WhGnWhUZM\KFHGnWcO�MeN ��� ÈT5 ��� WcA=O�icO!S�MeKL�¥��UZWcA�G([#ITWHGnWhUZM\K¥FHGnWhO�MJN��� È�5�� - ��A=O!KÅfÌu��Rº�¤)­9fDALG\i#UZWhi�[dGn�TUV[#I=[©mnGJ]VI=Oet�aA=Og]VU_i,WhUZK=kRMeK=]VX FhO�¡�O!S�WHiÌMeKLOg�=FhUZO�N?k\]ZUV[��LicOgMeK�GeK)O!meM\]Zm\O!��=FhMek\FhGe[�t �aA=M\I=keA�U�WRS�MeI=]_�0��O M\�LijO!Fcm\O!��WcALGJWa�LFcM\keFHGJ[di[�UZk\ArWa�TM\[�UZKLGJWcORWcA=O�ijXTijWcO![�NPM\F�ijO!meO�FHGJ]�ijO^S�MeK��=i�vrWhFcUVm?UVGe]ijWhGnWhUZM\KLGJFhXd��O�ALG�m?UVMeFaUVi"K=MJW"GJ�L�LGJFhO�KrW!t��������� ��� �!��� "!#�# �!$!%'&!�!%�(�#!)*��+�,�-�./%102#3��4 51"!67.85 925�:

./%���9 #;02��<2# .�=2%>4 [email protected]#70�: B�9�%7<2# .�=2%C02� <2# .!=2%[email protected]#70�:� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�K/R F!S F���������� ��JAF�P!T7K!F�P2U G�F2V F� F!G�H2I7F���������� ��JAF2T�U7K!F2U�W X!V F2V F� F!G�H2I7F���������� ��JAF2T�U7K!F2U�W X!V F2V F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�H2V�NY ,[Z -!\7F*���������]��JAF�K!L�F!G�L�F!N!O7P2Q F� F�K/R F!W F���������� ��JAF�P!T7K!F�P2U G�F2V F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�K/R F!S F���������� ��JAF�P!T7K!F�P2U G�F2V F�[� (�^# "!_���`�"�&29 ��=!B�$��!( .�02#��!$;F!G H2I F�"2% ab0/# =!$���#!)7.�0A` "�&/9 �

./%�$��!( . 0/#��!$;F!U�W�X!V F� F!G�H2I7F���������� ��JAF2T�U7K!F2U�W X!V F2V F

��

`bK�WcALO"ijO^S�MeK���]VU_i,WhUZK=k�W,�;M�S�M\[�[�GeKL�=igGeFcO�icMe[�O�WhUZ[�O^ig�TO���=U_S�WhO!�9M\K9WhA=O�UVK=�=I=W�icO!S�WcUVMeKwt �aA=U_i)UVi)GES�MeKLicO!ÎrI=O!KLS�O�MJNWcALO���M\ihicUZ�=UV]VU�W,X�WhM±O��TO!S�ITWcO([�MeFhOEWhALGJKzM\K=O0UVKLijWcFhILS�WhUZM\K��O�F"S�]VMTSH��S�XTS�]VOetg�aALO)KLMJWhGJWcUVMeK ²¦·�` ·"ÇlB�u u [�O!GJK�iWcA�GnW�WcALO m�Ge]ZILO�WhGJ�\O�K0NPFcM\[ WhA=O UZKL�=ITW icO!S�WcUVMeK�UVi���FhUZWjWcO!KUVK\WhM�FcO!keU_i,WhO�F�u-��UZWcA�S�Me[�[dGJKL��[dGJ�=�LUZK=k�u#t4`bK¦G\�=�TUZ�WcUVMeK�v�[�M\ijW MJN4WhA=O�S�M\[�[�GeKL�=i S!GJK¥��O�O��TO^S�ITWhO!�¥m?UVG0WcALOS�M\[�[�GeKL��[dGe�=�=UVK=k¥Y ��A=UVSHA�UVidG\S�WhUZmnGnWhO!�ÅU�N WcA=O�S�M\[�[dGJKL� Ç 1 Ç º�¤)­ UVigO�KLS�MeI=KrWcO!FcO^�Ìt½�aALUVigGe]Z]VMn�"i!vJGnW�WcALO�=FhUVS�OdMJNa]ZMn�;O�F O��TO!S�I=WcUVMeK±�=FhMe�LGe�=UZ]VUZWcUVO!i!vwWcALOdUZKLS�FcO^GeicO�MJNWcALO ��MricicUZ�L]ZO S�M\[�[�GeKL��ijO�W!t��������� +���������� "!#�#��!$!%'&��2%�(�#!)*��+ �2-�./%c0/#�$!97<!# .!=2%10

��

� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�K/R F!S F���������� ��JAF2T�U7K!F!G�H!I F2V F� F�H2V�NY ,[Z -!\7F*F�K2L F!M�L�F2N7H2N F ��J�F2T�U7K!F�G�H2I F2V7F

EVOLVABLE HARDWARE 183

Page 32: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�H2V�NY ,[Z -!\7F*F�K2L F!M�L�F2N7H2N F ��J�F2T�U7K!F!U�W�X�G�F!V F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F2U�W�X�V F���������� ��JAF2T�U7K!F2U�W X!S F2V F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F� F�H2V�NY ,[Z -!\7F*F2N H!N F]��JAF2V���� F���V�� F2V F� F2U�W�X�G�F���������� ��JAF�K!L�F!G�L�F!N!O7P2Q F� F!G�H2I7F���������� ��JAF2N�O7P2Q F� F!G�H2I7F���������� ��JAF�K!L�F!G�L�F�M�L�F2N!O1P2Q F

��

� � Äj{?�ÌÃR{?{?Ä,Á À

`bKzWcALO9FcO^ijO^GJFHSHA�M\K¦ijO!]�N���MeFhk\GeK=UV��O!���TX?KLGJ[�U_S�Ge] icX?ijWcO![diWcALO�FhO�GeFcO�W,�;M0�LG\ijU_S�ÎrI=O!ijWcUVMeKLi!ª �LFhijWc]VX(WcALO�Î\ILO!ijWcUVMeK¨M\KWcALO#WhFhGeKLijUZWcUVMeK9NPFcM\[%WcA=OK=MeK=��]VUZm?UVK=k�WhM�WhA=O�]ZUVm?UZK=k0�lM\Fc]_�GJK��DijO^S�MeK��T]ZX¼WcA=OÅK=O�O^�¬WcM¼Ge�LGJKL�=MeKD�TO�WHGJUV]ZO^�§S�MeKrWhFcM\]MJNRS�Me[��=]VO���KLGeK=MJ�bijXTijWcO![�i!t¨�aA=M\I=keA�WcA=OE�LFhijWÎrI=O^i,WhUZM\K[�UZk\ArWRijM\I=KL�(GeS!Ge�TO![U_SJv?WhA=O Me�L��MrijUZWcO U_iaWcALO�S�GeicOet�`�N �;O�?K=Mn��A=Mn�ÅGeFjWhU���S�U_GJ]r]ZUZNPO;S!GJK���OaS�FhO!GJWcO!���lO;�=FhMe�LGe�=]ZX���UV]Z]�?K=Mn� [#ILSHA�[�M\FcOEGe��M\ITW�S�FcO^GnWcUVm?U�W,X¥Gei�ijILSHA�GeKL��MeWcA=O!FA=UVkeA=O!F"[�O�KrWhGe]w�=FhMTS�O!ihicO!i!t4�aA=O�icO!S�M\KL�(ÎrI=O!ijWcUVMeK�ic�=FcUVK=kriWcMd[�UVKL�(��A=O!K�O\t k�t�UZK9¹)ÑRu"��S�Me[��=ITWhUZKLk Ê É È�Ë�WhA=O `�e¤DMJN�=GJWhG��O^S�M\[O^i�GJK(O��?WhFhGeMeFH�TUZK�GJFhXU_ihijI=O\t�aA=OdILicO�MeNa�TO^�TU_S�GnWhO!�±ALGeFh�=�;GeFcOUZK±WhA=OdFhO!icO!GJFHSHA¥MJNa�=U��Me]VMek\UVS!GJ]�[�MT�TO�])ijXTijWcO![�i�ALGeid��MJWhA���O!K=O��LWhiEGeKL���TFHG��a��LG\SH�?i!t0�aALO���O!K=O��LWhi#GeFcOdM\�?mrUVMeI�i C¨WcA=O0ijXTijWcO�[di�WhM9��OUVKrm\O!ijWcUVk\GJWcO!�¥GJFhOdS�]VM\icO�F)WcM�FhO!Ge]��=UVMe]VMekeU_S�Ge]�ijXTijWcO�[di C¨UVKihS�GJ]VO�GeKL�.��O^S�GJI�ijO��=A?X?icU_S�i�GJFhO#UVK=A=O!FcO!K\Wh]ZX��LFcO^ijO!K\W^t�¤ KWcALO�MJWhA=O�F�A�GJKL�Ìv½WcALO�]VGeFck\O�GJ[�MeILK\WHi�MJN"�=GJWhG(�=FhMTS�O!ihicO!��?X�WcA=OaALGeFh�=�;GeFcO4GeKL��U�WHi ic��O�O!�#NPMeFh�=U_� WhA=O��TO�WHGJUV]ZO^�#GJK�GJ]Z�XTijU_i0MJN#GJ]V] icO!ÎrI=O!KLS�O^iEUVK�WhA=O.[dG\SHA=UZKLOet«ÑRMn� vRGei0U�W�UViWcALO#S�G\ijO���UZWcA([�Me]VO!S�IL]VGeF��=UZM\]ZM\keX\vT�L]ZWcO�FhUVK=kWcA=O�O^icicO�KrWhUVGe]�=GJWhG=vlFcO^GJ]VUZ�!UZKLk.O��?��O�FhUV[O!KrWhGJ]"S�MeKrWcFhMe]_iGJKL����O!UZKLk�S�MeK=�WcO!KrWR��U�WhA9[#I�SHA�]ZO^ici���Mn�;O�FcNPI=]wWhMrM\]Vi"UVi"WcA=O��LFcUV��O���ALUVSHAwvUVK=O�m?UZWhGJ�L]ZX\v�ALGei#WcM¥��O��LGeUV�Ìt±�aA=O0�lM\Fc�¥FcO!��M\FjWhO!�±WhFcIL]ZX]VUZO^i M\K9WhA=O�meO�FhkeO���O�W,�lO!O�K¥S�Me[��=I=WcO�F ihS�UVO�KLS�OevÌO!]ZO^S�WcFhMeK=�U_S�i�GJK��0[�M\]ZO^S�I=]_GJFa�=UVMe]VMek\XetuDicA=MeFcW"�TUVihS�I�icicUZM\K0MeN�WhA=O FcO^ijIL]�WHi�ª

* `�W§S�MeIL]V�%��O�icA=Mn��K'WcALGJW�UZW�U_i¦UVKL�TO!O!�%��M\ihijUV�=]VOWhM¥FhO!Ge]ZUV��O(�=ILFcO�S�M\[��=ITWcO!F�icS�UZO!KLS�O([�MT�TO�]_i�MJN�ijO!]�N��M\FckrGJK=UV��UVK=k�icX?ijWcO![digUVK�ALGJFH�T�aGJFhOet½`�WaS!GJKd��O GJFhkeILO!���ALGJW.icO�]ZN���FhO��=]VU_S�GnWhUZM\K�FhO!Ge]Z]VX¼[�O^GJKLi!t ��MrM\�?UZK=k�GJWWhA=OlicO!ÎrI=O!KLS�O^i�icMe[�O�WhUZ[�O!i�keUVmeO^iµWcA=OlUZ[��=FhO!ihicUZM\K�WcALGJWWhA=O!icO�GJFhOdijO!]ZO^S�WcO^�¨��O!S!GJILicO�MJN;WcA=O!UZF#�=U�Wc���LFcM\��O!FjWhUZO^iGeKL��K=MeWMeN"WcALO�UVF�NPILKLS�WhUZM\KLGJ]a��O�ALG�m?UVMeF^t±ÑRO�m\O�FcWcA=O��]VO!ihi�v?WhA=O!icO)FcO!��O^GnWhi;MTS�S�I=F�UVK0A=UVkeA0K?I=[#��O�FHiaGJKL��GJFhOK=MeW FhGeKL�TMe[-GJW Ge]Z]�t#�aA=O!FcOdGeFcOGE]VMJW MJNlUZKrWcO!Fc[�O^�TU��GJWcO;�LGnWcWcO�FhK�NPMeFh[UVK=k)�=FhM?S�O!ihijO^i���O�W,�;O�O!K#WhA=OaFcO!��O^GnWc�

UVK=k�ijWcFhILS�WcI=FhO!i4NPMeI=K���UVK0S�FhXTi,WHGJ]_i4GeKL�dOet kLt �LG\S�WhO�FhUVGe]S�O�]V]Vi!t

* u%A=UVkeAL]ZX��LGJFHGJ[�O�WhO�FhUZ�^GJ�=]VO(GJKL��O�m\Me]Vm�Ge�=]VO f º ALG\i��O�O!K��=FhO!icO�KrWhO!����U�WhA�G.[�UZK=UV[#IL[ K?I=[#��O�FdMeNRMeKLOUVKLijWcFhILS�WhUZM\K���O!FS�]ZMTSH�r��WhUVSdGeKL�±WhArI�i#G���Mn�lO!F#MeN�³ s­�`,f;QµtJ¤ �TWcUV[�UZ�!UZK=kRWcA=O;�TO!icUVkeK�icA=MeI=]_��Ge]Z]VMn�¥NPMeF f º;iUVKzWcA=O ´ 5e­��R��FhGeK=keO(��UZWcA=UVK¦­�O!FcO�B)O�K=®�¯#t�²�U�WhAO\t k�t pJs?o ³0�=FcMTS�O!ihijM\Fhi!vwG0WcMJWHGJ]g��Mn�;O�F MJN ÉeÉ È�B)`,f;QMeN S�ILi,WhMe[�UV��O!� f º;iaALG�m\O)��O�O!K(FcO^GJ]VUZ�!O!�Ìt

* �aA=O�m?UZO!�¬M\K�[#ITWHGnWhUZM\KLGJ]½O�meO!KrWhi"A�Gei"�LFcMrGe�TO!K=O!�(UVKWhA=O ijO!KLijO WcA�GnW"ijO!]�N�����MeU_ijM\K=UZKLk��=FhMe[�U_ijO^igWhM�Me��O�K�I=�G#K=O���S�]_GeihigMeNwO�m\Me]VITWcUVMeKLGeFcX���Mn�;O�F^tgºlO�FcWhGJUVK=]VXevrU�W;UVi�TU �µO�FhO�KrW4NPFhMe[��=WcKLO!ihilicALGJFhUVK=k Ê É\É ËµMeF4FhO!icMeILFhS�O"S�MeK=�ijWcFHGJUVK=O!�ÅO�m\Me]VITWcUVMeKLGeFcX±icX?ijWcO![di�v;ijO!OEWhA=O�GJ�=��O�KL�=U����O�]VMn� t

* �aA=O�WHGeic��WcMd�=ILUZ]_�(GJFcWcUZ��S�U_GJ]µ]VUZm?UVK=kdijXTijWcO�[di�ijWcUV]Z]�FcO��[dGJUVKLi!t ��MeK=keWcO!Fc[�O��T��O!FcUV[�O�KrWhil�TMeKLORijM�N¶GeFl�TU_��K=MeWO��?ALUZ�=UZW GJK9O^icS!GJ��O�NPFhMe[-i,WHGnWhUZM\KLGJFhX0��O�A�G�mrUVMeF^t �aALOihS�Ge]ZUVK=kEO��T��O!FcUV[�O�KrWhi!vµ�LkLt̳Lvµ�=UV�.K=MJW icA=Mn��GJK?X��TO����O�KL�=O�KLS�X�MeK�WhA=OS�MeK=KLO!S�WhUZM\K�WcM\��M\]ZM\keX\t)uR]Z]��TU ��O!Fj�O!K\Wa�LGeFjWhU�WhUZM\KLi;FcO^ijI=]ZWcO^��UVKE[�MeFhO)MeF;]ZO^ici;O��=G\S�Wc]VX�WcALOihGJ[�O#S�Me[��=]VO��TU�W,X�[�O!G\ijI=FhO!i!t�`�W)icO�O![di"WhALGnW WcA=OijO��]VO!S�WcUVMeK¨�LFcO^icicI=FhO�WcMn�aGJFH�=i FcM\�=ILijWcK=O^ici MJNlWcA=O�O!meMe]Vmr�UVK=kE�LFcM\keFHGJ[di�U_i icM0ijWcFhMeK=k�WcALGJW UVK=�=ITWHiRNPFhMe[%MeWcA=O!F�=FhMTS�O^icicMeFHiÌGJFhO4�TO�NPO�FhFcO^� Geiw[�ILSHA�Gei���MricicUV�=]ZO\t½��MrM\�r�UVK=kRGJWwWcA=O;ijO^ÎrI=O�KLS�O!iÌMeN?WcA=OlO�meM\]Zm\O!� �=FhMekeFHGJ[di�Ï��=GnWHGK=MeWicA=Mn��K�Ð�v½K=M.O!ihijO!KrWcU_GJ]4�TU �µO�FhO�KLS�O!i���O�W,�;O�O!K�WcALO�LGeFjWhU�WhUZM\K�ijUV��O^i�S�GeK���OEMe�LicO�FhmeO^�Ìt�uRK=MJWhA=O�F�FcO^GeicMeK[�UVkeArW ��O�WhALGnW K=M�icI=�LijWhGJKrWhUVGe]�MeFhk\GJKLUZ�^GnWcUVMeK.�TO�m\O�]Z�M\��O^�9GJKL��WhA=OFcO^ijI=]ZWcUVK=k�UVK=A=M\[�MekeO!K=O�M\ILi"icO!ÎrI=O!KLS�O^iGeFcO�G)�=I=FhO"S�M\KLijO^ÎrI=O�KLS�OaMJNLWhA=O"�=A?XTicUVS!GJ]TS�M\KLi,WhFhGeUZKrWHi��O�UVK=k�NPO�]ZW"�?XdWcALO�ijXTijWcO�[(t�aA=M\I=keA0WcALUVi�U_i��LG\��K=O��"i!v?WcA=O k\M?M?�0K=O!�"i"GJFhO)WcALGJWUZN4MeKLO �LKL�=i WhA=O#[�O!GeKLiRWcME]VO�W WcA=OO�m\Me]Vm?UZK=k�icXTi,WhO�[�TU_ic�=]VG�X±G��LGeFjWhUVS�I=]_GJF#ihS�Ge]ZUVK=k���O�ALG�m?UVMeF WhA=O�KÅicMe[�O��WhA=UZKLk0UV[���M\FjWHGJKrW ALG\i)��O!O�K¨]VO!GeFcKLO!�Ìt �"�¨WcM0K=Mn� vÌGijWhGJWcO�[�O!K\W�MJN�WhO�K�[�G\�TO�WhALGnW�MeKL]ZX±WhA=O�icXTi,WhO�[ÆicUZ�!OALG\i WcM#��ORicITÍ�S�UVO�KrWh]ZX]VGeFck\O;WcM�FhO!Ge]ZUV��OaWhA=O"O�[�O!Fck\O�KrW��O�ALG�m?UVMeF��TO^ijUVFcO^�0S!GJK=KLMJW���O mnGe]ZU_�=GnWhO!�Ìt

* ²�UZWcA WhA=UVi ALGJFH�T�aGJFhO FhO!Ge]ZUV�!GJWcUVMeKwv�O�m\O�K K=MeK=�ALGeFh�=�;GeFcO(�TO!icUVkeK=O!Fhi�GJFhO�GJ�=]VO(WcM±UVK?meO!ijWcUVk\GJWcO�S�M\[��=]VO���ALGJFH�T�aGJFhO¨[�MT�TO�]_i���O!S�GeILicO¨WhA=O±¡LO��TUV�=]VO f º;iGeFcO�ijI=UZWcO^��WhM¨[dGJK?X��TU ��O!FcO!K\WdGJ�L�=]ZU_S�GJWcUVMeKLi!t¥²�U�WhAWhA=O.G\�=�TUZWcUVMeKLGe]R�=FhM\G\�T�LGJK���UVKrWcO!FhS�MeK=K=O^S�WEG�mnGJUV]_GJ�=]VOM\K�O!G\SHA���MrGJFH�Ìv O�m\O�K�O��rWhO�FhKLGJ];GJ�=��GJFHGnWcUl[�UZk\A\W���OGJWjWhG\SHA=O!�wt

EVOLVABLE HARDWARE184

Page 33: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

� � Á À � � ÃR{?Ä,Á À {²�UZWcA±­�O�FhO^B)O!K=®�¯�vwijO!meO!FhGe]½GJ��ijM\]ZITWhO#[�O!G\ijILFcO^i"��O!S�M\[�ONPO!G\ijUV�=]VOeª4@ UVFhijWc]VXev�ijUV[#I=]_GnWhUZM\KEWhUZ[�O�U_i�K=Md]VMeKLkeO�FaWhA=O ��MJWj�Wc]VO�KLO!SH�#C�WcA=O)ij��O�O^�TI=���TI=O"WcM WhA=O"ALGeFh�T�aGJFhOaUVilijI=ÍdS�UZO!KrWWcM(GJK�GJ]VXr�!O�WhA=OdijXTijWcO�[di UZK.WcALOG\ijX?[��TWcMeWcU_S#]VUV[UZW!t�ÇgmeMe�]VITWcUVMeKLGeFcX#WcUV[�ORicS!GJ]VO!i½C�S�Me[��LGJFHGJ�L]ZO;WcM�WcA=O"O!meM\]ZITWhUZM\K�M\KO!GeFjWhA�C�S!GJK���ORO^i,WHGJ�=]VU_ijA=O^�ÌtgQ?O!S�MeKL�=]ZX\v?�=I=O"WhM�WcALO ALGeFh�T��aGJFhORFhO!icMeI=FHS�O^ilihS�Ge]ZUVK=k��O!ALG�m?UZM\F;S!GJK���O�[�O!G\ijI=FhO!�wt½`�N GicX?ijWcO![-�TM?O!i K=MJW�icS!GJ]VO#GJ�=�LFcM\�=FcU_GnWhO�]VXEUZW)S!GJK9K=MeW ��O�O��?���O!S�WhO!�#WcM icA=Mn��ijM\[�O�WcALUZK=k��TU ��O!FcO!KrW UZNLWhA=O�ijXTijWcO![�ijUV��O;UVi�TM\I=�=]VO!�ÅÏPWcA=O�S�M\[#�=UVKLGJWcMeFhU_S�i�UVK?meMe]VmeO^�(UZK¨WcA=O^ijO�icX?ijWcO![diGJFhO;N¶GJF���O�X\MeKL�GJK?X�A=M\��OaWhM GeSHA=UVO�m\O;O��TALGJILijWcUVmeOaicO!GJFHSHA�Ð�vWcA?ILiaGi,WhFcM\K=k#]VUV[UZW�MeK���MricicUV�=]ZO)�=UVMe]VMek\UVS!GJ]L[�MT�TO!]Vi;U_iaO!ij�WhGe�=]VUVicA=O!�wt �aALUZFH�T]VXeve�LArXTicUVS!GJ]=�LFcM\��O!FjWhUZO^i�]ZUV�eO�FhMeI=WcUVK=k��TO��]_G�X?i�GeKL�ÅFhMeI=WcUVK=k±MJN UVKTNPM\Fc[dGnWhUZM\K�G\i�ijILSHAzS�GeK�KLMn� ��OijWcIL�TUVO!� ����������� � ��GeKL�¨GeKL�9[�UVkeArW)ALO�]V�9C���O^ijU_�TO^i �LUZMe�]VMekeU_S�Ge] Ge�=�=]VUVS!GnWhUZM\KLi�C(UZK.Me�TWhUZ[�UV��UVK=k�K=O�W,�;MeFh��WcFHGnÍ�S�M\FMJWhA=O�FlijXTijWcO�[di���ALO�FhO�FcM\ITWcUVK=k U_i�WcALO"]ZUV[�U�WhUZKLk#S�M\KLi,WhFhGeUZKrW^t²¥O¨ijI�S�S�O!O!�TO^��UZKzWhA=O¨S�M\KLijWcFhILS�WhUZM\K�MeN GeKzUZKTNPM\Fc[dGJWcUVMeK�=FhMTS�O!ihicUZK=k([dGeSHALUZK=Od��UZWcA±WhA=O��eUZKrWcO!Fc�LFcO�WhGnWhUZM\K±��O�UZWhicO�]ZNicILicS�O��TWhUZ�L]ZOzMJN(O��T�=FhO!ihicUZM\K«�?X�[�O!GeKLi±MJN0WcA=O¦icX?[#��Me]_i��A=U_SHA�WcALO�[dGeSHALUZK=O�O�[��=]VMnXTi�t)�aArI�i�vÌGJ]ZWcALMeI=k\A�U�W�UVi K=MeWUZWhicO�]ZN4WcALO��O�UVK=k0WcALGJW FcO�¡LO!S�Whi!v � Ê È�Ëg�lOK=Mn��[�UVkeArW)ALMe��OWcM��=ILUZ]_��GJKL�0I=KL�=O�FHi,WHGJKL��ijO!]�N���FhO�¡LO^S�WcUVK=k�[dGeSHA=UVK=O^i�t

� 3 3 7?<�� 6�������6�� < 7.+$+�+�� :�� 6 < > -@ U�WhK=O!ihi�icALGJFhUZKLk Ê ÉeÉ Ë=UVi �=FhMe��GJ�=]VX�WcA=O"S�MeKLS�O��TW�[�M\ijWgijUV[�U��]_GJF WcM icO�]ZN�����MeU_ijM\K=UVK=kR�=FhMe��M\icO!�#UZK�WcALUVi�GeFjWhUVS�]ZO\t½�aA=M\I=keAG�TO�WhGJUV]VO!�ES�Me[��LGeFcU_ijM\KdUVi;M\ITW;MeN�icS�Me��O MeNwWcALUVi;�;MeFh��v?icMe[�O�TU_i,WhUZKLkeI=U_ijALUZK=k��=FhMe��O�FcWcUVO!i�icA=M\I=]V�0��O [O!KrWcUVMeK=O^�̪

* @ UZWcK=O^icigicALGeFcUVK=k�UVilG��=A=O!K=MJW,X?�=U_S�S�M\KLS�O!�TW!t ²�A=O�WhA=O�FGeK.UVKL�TUVm?UV�TI�GJ]gUVK¥WcA=Od��Me�=IL]VGJWcUVMeK±ijALGeFcO^i WcA=O�G�mnGJUV]Z�Ge�=]ZO�=WhK=O!ihi�NPM\F U�WHi�ijO^ÎrI=O�KLS�O���U�WhA�MJWcALO�F UVKL�TUVmrU_�TIT�Ge]ViMJN WcA=O�ihGJ[�O�MeFdijUV[�UZ]_GJFW,X?��O�M\F�UViMeKL]ZX�UVK�GeKUVKL�TUVFcO^S�W [dGJK=KLO�FdÏPm?U_GEO\t k�t�[#ITWHGnWhUZM\K.M\F)S�FcMricicMnmeO!FHÐ�TO�WcO!Fc[�UVK=O!���?XdWcALO keO�KLMJW,X?��O�MeN½WhA=UViaUVKL�TUVm?UV�=ILGJ]�t

* ²�UZWcA¥ijO!]�N�����M\UVicMeKLUZK=k�WcA=O�NPFcO^ÎrI=O�KLS�X0MeN4UVKLi,WhFcI�S�WcUVMeK�iM\FEkeO!K=O!iEWcALFcM\I=keA=M\ITW�WhA=O.��Me�LI=]VGJWcUVMeK¦U_i�S�MeILK\WhO!�Ìt�aA=O¥�LGeFhGe[O�WcO!F��! #"�v icO�O.WhGJ��t)È\v)icA=M\I=]V��WcA?ILi(��O[dGn�TUV[�UZ�!O!�Ìt4�aALUVi��;MeIL]V�(�TU_ijFhI=�TW�WhA=O#Ge�=UZ]VUZW,XEMJN WcALOk\O�K=O�WcU_SRGJ]VkeM\FcUZWcAL[�WhMG\�=GJ�=W4WcM[#IL]�WhU���[�M?�LGJ]��=WcK=O^ici]_GJKL�LicS!GJ��O!i!t

* ²�UZWcA�ijO!]�N�����M\UVicMeKLUZK=k¨MeK=]VX¥�=Me[�UZK�GJKrW#keO!K=O!iGJFhO�GnN��NPO^S�WcO^�Ìt `bKL�TUVm?UV�TI�GJ]_iÅK=MeW�ILicUVK=k�WhA=O!icO��TM\[�UZKLGeKrWk\O�K=O^i�M\F½ILicUVK=kRWhA=O�[�Gei GRk\O�K=O�WcU_S4��M?Me]T�TMRKLMJW�ijI��µO�FNPFhMe[�WcA=OES�MeKLicO!ÎrI=O!KLS�O^i MJN�FHGJKL�=Me[�UZ�^GnWhUZM\K.M\F�O�m\O�K

$ �������.�L @'�� '����%'X#Y�k�����y�������� Y#%���kA �T-L�pA7� �$#������h��� '���� ���� "�$���� ��

%�& '�(*)�+,+�+,-�./,& (*0 1�)�2 3 46587& +97(*& (*0:<;>=?:A@CB9D

EF @CGH;6IHDJLK $�MONQP ;6IR*SUTWVYX SZT & 3 GH;6I\[^] SZT_ 7<'�-*)�/9`>& +,)a ; Jcbd IZe � E<F @ G ;fI D: SUT8g ; J :<;a ;

:<;>=h:Y@fBiDjYk I�J (Hl*mWn8)Z/>7<3& (*+i'�/,l*op'�& 7(�+>7/�0)Z(�)Z+7<3q'irH58)>st J (Hl*mWn8)Z/>7<3& (*+i'�/,l*op'�& 7(\7/�0)Z(�)'irH58)Z+& 3 @ j�k ;?J mu.<v @ jYk I�D�w_ [ s [ t D '�-�)Z(x : ;�y _ & (zmu7+i' oZ.+,)�+{

�½Ge�=]ZO�È\ªg@½UZWcKLO!ihi"ijA�GJFhUZK=k Ê ÉeÉ Ë�m\O�FHijI�i;icO�]ZN�����M\UVicMeK=UVK=k����� �W����A I =8�� %�T�qi�'����� " "���������;[�����D'����,���q�W����A}| $�U�~ /��c('���q� '����u�����;T�����=Hi�'��.�� " ��������4���-.�\es- I ��= l � �f� '��.�2x���A7A7���;�G-.� Z'����� �� + ��'X#������ ' #�� ;T���.�TA7�� c���j- � �"�� � '��.� �&� �� �'��\,� "�j�����$-ni�'��.�� " u���h���w��j-L�\L8- I ��=K/4���.� ' #��^t�������A7��'����� �W #"����-�� �" -.��'�����A7��.�2'���� + ���j�$\e8���k����'��.�[;T������'�� 9��=�;T����('���A��t.t�=���$- '���� I I ��=�=(> A I =('�(G A7�e-���=utL��� + =8��AF/ �c('�� 5}��W �"L�¼È ���j-?� #"���!5 �T�.=�>[s-L���?'�� $��=j "��r I ���� ��� ������h���$- I ��$-=�����$����=�>`���i�'����� " �/�� �� ��TA7t������4#%�'�� "��=(�WG t]�T� "�������; � #" "��� I =8- + �% ��.�T "���9�� � #" � A ��P Ï � �f� Ð #%('�� '��.�% ��T�. "�$r I ���. ��'��j��'m����=(> I �.�A7�e-���=�i�'��.�� " =8����-. " $��t]�� m $��� + �Y��-���tL'��$-Dt.����t.G����=(>?/H���.�pA ����[-L�� �������� �� + ��'X#Y����� + ��'��[ ����� ���tL'� J8 H'��.�Y'����"G;T��'����Hi�'����� " %����- I �'�8���W�:���i�'��.�� " h "���������;['��.� '���'���= i�'��.�� " ���� ���8\�� + =�� + >w�^ "�$r I ���� ��4MKt��.������'X>Lt]��V � Q ����� Z'"����8�.�$- l +�I '#%('��| "��=(�WG t]�T� "�T�.���;v'��.� ;T���.��'X>Lt]�9� [��� �� �'��$-o'��.��� I ;T�o�����.G-.��A7�<$��'���T�N���:'��.�2A7�� Z' � +�I ��-����e'h��� Z'"� I �'���T�� ���� ;������� ��'�����t]�Tt I =8��'���T�F���J "�$r I ���. ��� �/

��O�WcWcO�F^v�GeFcO���O�FhALGJ��i"GJ�=]VO)WcMdITWhUZ]VUV��O WhA=O�K=O!��]ZX0keO�K=�O!FhGJWcO!�±k\O�K=O�WcU_SdUVKTNPMeFh[dGnWcUVMeK�t9�aArI�i�v�icO�]ZN�����MeU_ijM\K=UVK=kU_i"GkeO!K=MJW,X?�=U_S S�MeKLS�O��TW^t

²�A=O�WcA=O!F(WcA=O¥�=FhMe�=]VO�[�MeN#ILicUZK=k�O��T�=]VU_S�UZW��LWcK=O^ici(Gei�UVKkeO!K=O�WhUVSEGJ]VkeMeFhUZWcA=[di�M\F�UV[�L]ZU_S�UZW��LWcK=O^ici#ILijO^��A=O!FcOEG\i�UVK[dGJK?X�MJWhA=O�F�GJFcWcUZ��S�UVGe] ]VUZNPO�[�MT�TO�]_i�U_i MeN4UV[��MeFcWhGeKLS�OALG\iWcM���O O�mnGJ]VILGJWcO!�0NPI=FcWcALO�F^t

���Y� < 4 6 -¶7>�½>!��7?< � +�aA=O"ALO�]V��GJKL�dicI=�=��MeFcWgMJN���trQµtr­���º;Geic�rUV]V]�vr��t\­9GeO��eO\veÇ"t·"Ge[#��Mn�±GeKL��WhA=O;B)O!Fc[dGJK�­�UZKLUVijWcFhX�MJN�QTS�UZO!KLS�O)϶Ya­9Ya@�ÐU_i4k\FcO^GnWc]VX�GeSH�?K=Mn��]VO!�Tk\O!�Ìt u"]_ijM�[dGeKrXWhALGJK=�TigWcM�WhA=O)FcO�N��O�FhO�O^i;NPMeFaWhA=O�UVFaWcA=M\FcM\I=keA(ijWcIL�TXEMJN WcA=U_i��LGe��O!F!t

� �� } �À � {|(�H~9�����j� + ���$���@/��Y/ ���.� 6 ����=(>e'�8 ���=2E@�.;T����Y� �X�e\,���?'��$-

+ > gY�j����=��� 4}�� +�+ ��;T��� ����� ��������������Q�¡ \� ��¢q� �*�8�����i�¤£�¥ ���¦���¢A� l���./.* $el ��*�R $e/

EVOLVABLE HARDWARE 185

Page 34: Corel Ventura - GEC02 PO - Genetic Programminggpbib.cs.ucl.ac.uk/gecco2002/gecco-2002-04.pdf · Lens System Design and Re-Engineering with Evolutionary Algorithms Julie Beaulieu†,

| $ ~7\,�T� �� I A ���.� �./&���������"> ���q~L��=��sG �h��tL���e- I ����; 6 I G'��TA ��'��4} I ���e �l 6 /'� / �����\,���� "�' >9��� � =8=������� �H���� " �l �h�"G+ ���j�Ll �$��aTae/

| U8~ ) ��# -L����> 6 /��[/vgY��A7t I '����"G�� I ��<�#Y���=�� � ����� � �� £� � �,�*�8��� ���*� �� *� l {q� *��j�%$elm���T*,{?/

| R�~7���� "A I " "���`~ /�l��D� I -. "���`gh/�l^����=s- + ����;|�u/�l�x���� "�.�T=�A�v/%�����ugY������#�����=8-Q� EJA7����;T���. ��k����-FEJ\,�T= I '�����^���YgY��G�Tt]������'��\,�4~e'"� I �' I ���� 7��c�ogY�TA7t I '���'���T����= gY����A7� Z'"�">� ��A����� ��� lLR $q���T�T���j��U�R.lJ���T�TSe/

| { ~7����>v��/m~ / 6 � 6 t�tL���,�� ��4'���'���� ~?>L�e'��.�� "� D��� � (�y� �X�� ����;�'����|gh/m�2/8lH�m��>.=����[gh/�l�������A7��� �./ )Q/�lm�h�� "A I " "���~ /�l,��-.('����� �l�� � � � ��� ���q�� � 8����� l�tj��;T�� :U,z?���,R,ST* 6 -�-.� "���.G�o�� "=���>?l h��# �Y����� l ���T�L��/

| a8~ 6 -.��A7Dgh/�l }:���$#%� gh/ ��/ EJ\,�T= I '�����j���">�� �$�����.���;|��'���� $�) 6 �"'�(ij �s��=�� (�y�[~e>L Z'���A�� 6 \L8-.� �(�X�N}@���?�T�e D�u/�l�F���� �m/�l:�$-.('����� �l!� � � � ��� ���q��� � 8�"�# lJt���;T�� 7U,z�z��eU�*L�� �Z� �H���� " �l g���A + ��8-L;T�Tlj� 6 l �$����R./

| z ~ �m���.;T��� �2/ �����nEJPe'����. "8��� ���2'��.�%$ I �� "(GX~Lt]�� ���� q'��� I �. �'���T����= E@\,��= I '���T� �@� )d������ "8 �l �T�����Ll ���T��R./

| *8~9gY�e-�-�E%/ �Y/ gY��=�= I =8��� 6 I '��TA ��'��&� 6 $��-.��A7� �H���� " '�Ll���# �:�����]l �$��aT*L/

| �8~ � ����;�'���� gh/J�2/ 6 �"'�(ij �8��=�� (�y� 6 -.-.� "�T�LG �n�� "=���>?l�h��#�Y�����]l ���T*��L/

|(�$S8~(�D�T<$���L/m�k/8lm}Y���.��'"' �!�!� �Y/mxu/8lmx I '� �����.;T �./ �@/�lJ}���-.�~ /8�J/�l �D���������v/ 6 / �,EJ\,�T=�\e���;�gY�TA7t I '������J����;�����A7 �� ZG���;��h��t.8-.=(>D� �� ��T�Lij; I ��� + =����m���=8-LG2�J����;�����A7A � + =���� ��'��6 �"����>L ����j-N�����.��'�� �J����;�����A7A7��.;)� �X�+* �,� �)� , �- �p� �.0/0/01 �3254768� � ¥ � � �8��¢q�8�W��� ���W�<� � � ��� ����� ���z���9��� �9:������ ���<; ���8�9£7�,� ��= � �9�7������i� ¥ ���<� � ��� ���A� *$lLtj��;T�� $�S��>� $?�$�(� 6 gp�7�Ll �$���T*e/

|(�T�H~ �m���.;T��� �u/8l.�F�����,�h��/�l.� � g��� "�e�=8=^�L/.~ / 6 -L\T���� ���-7~L�A[GI =8��'�����o��v'����7gY�T�.i�; I ��� + =��q�F�� " "�\,��=�>��H������=�=8��=�x ����-LG#p����� �������$����� � �?2 ��8� ��������A@CB0BDBFE5�HG 25� ~Lt.����.;T���$l$�S�SL� � ��t.���� " �/

|(��$ ~7O��=���.P Ch(�"'���P ®�¯ GXE �T/ *�C �m���=8- �H���T;�����A7A � + =8�^� ��'��6 �"����>L �l�)k~.S $ $ Oh8=���.P|gY����t]������'���T� lp~.��� �T�T "�Tl �D~ 6 l$�S�STSL/

|(�$U8~ �m���.;T��� �u/8l7~L �� I =('����@/�l � � g��� "�e8=�= �./2~]/ 6 �H������=�G=���= x ����-e#p�����kE@\,��=�\T� + =��kgY�TA7t I '���� � � � �����LEJPe'�����-.�$-6 + Z'"���� �' �,� �)���*�*£����C=q� �- ����Q�I; 2�254KJ /ML ���N��O!OPO� �9� � �A������ l �Y� $�UT*>�'$�U��LlJ�$���,ze/

|(��R�~ �m���.;T��� �u/d~e��=(�WG � ��;,����� ���'�����`������ �����GXgY�T�.i�; I ��� + =��x ����-L#p����� �X� }Y�$-�� I �v/�l2� � g��� "�e�=�=>�L/ ~]/�l �H�� ��T����-2/ x2/�lk�h�� "A I " "��� ~ /�lk�$-L�'����� �lQ� � � � ��� ���q�Q� � 8��#R��� ltj��;T�� UL���eU�* ������� �Z� �H���� " �l g���A + ��8-.;��Tl �F�� ZG ��� �� I "��'"'� �l $�S�STSL/

|(��{ ~7x���=8=8���j- �L/ xu/[EJ " $��t.���;^}:��('"'�=����.�� " *�D'���� �m�T " " + �=�('�8�� ��� ������������=(G2� I ��t]�T "�L� �$�����.8�.; 6 =�;T����('��.A7 6 t.t�=���$-o'���H������=8=���= � I =���G }��� "�$-�~e>L Z'���A7 �X����� �����=� "�e �k/.~ /�ljg����"G+ �T�.��=�= �./,�2/�le��('� �����=�=.��/?�v/�l,��-.('����� �lD4 �D�������!�S� � ��� �M:���C=%��� lJtj��;��� 7{��TU��ea $�Uw������;T���T�k� I �yA ��� l\� �T 6 =('��T �lg 6 l �$��*TaL/

|(�$a8~ ) �T�.=�8� 6 /k~L��=(�����e-.(�W>L���;FgY��� I ('"�">^G 6 �@=8��'"�W����A�W���� ���� �'�� + =��[Ch(�"' I ��=@gY(�� I ('"�"> �\���8�',UG �q�', 2 ��� �H, � � ��, l��RT* $������T�>�'$�S�*Ll@�$�T��*L/

|(��z ~ }Y�$-.� I �v/ 6 /�lj~L�?>.-.���%Ep/�l.�H�� �������- 2/Lx2/ 6 gY=s�� " "(ij $��G'���T�F��� � �T�.;�G � ����A EJ\,�T= I '�8���j���"> )�>L����A7� � �X� 6 -.��A7gh/�l }Y��=8��# �u/5�[/�l��D('������wx2/�lhEp/%�m��>L=8���Ngh/�lh�$-.('����� �l� � � � ��� ���q�5� � 8�+#R� l t���;T�� $ $�*�� $�UTzN� �Z� �J���� " �l:g���A[G+ ��8-.;��Tlj�F�� " ��� �� I "��'"'� �l �$�T��*L/

|(�$*8~(�k����=���N~ /�lj�����"��� ��v/8lj���j���j-L� I ���2/�l � � I ��; �v/ G��Q/@EH�WGij �����?' 6 =8;�����('���A7 F�W���o���T=��� I =8���o~L�$r I ���� �� 6 �j��=�>L "� �,� � �),HG ���Z�V, � � �£D, � � ��,   �W�Ql.*,{�� *�R.���?*�R,{elJ�$��*T*L/

|(�$�8~(�D�T=�A7�T;�������\ 6 / u/e���.����� 6 t�tL���,�� ��.�� '��h'��.�X$ I ���?'�('���G'��\,��) ��i���('���T�������X�L�y����A ��'���T� � �Q�',ZY, 2 �9���[, 4 �q�p�W, l$�����{�z����$aT*elH�$��aT*L/

| $�S8~ E@�;���� �v/ ~e��=(�y����;,���.�<$��'���T� ���Q�F��'"'����^����-_'����4EJ\,��G= I '���T� ��� }Y���=8��;T� $��= �F�� �����A7�T=��� I =��� ]\ ,QG ���Z����^ �,��:����� ����� �- *��8� l]{�*� RTa,{��e{ $�ULlH�$�Tze��/

| $e�H~9�� �g��� "�e�=�= �./h~ /�l �w��;T=���� �H/ �.����A �h�� ��T�.i�; I ��� + �=�('X>'���EJ\,��= I '���T�48�ngY�T�. Z'"� I �'�����o~?>. Z'���A7 *� ~etj��������.; '��.�E@=��� �'"���T��� TlD��� ���� � I 8-.� o���j-c}Y���A7�T=��� I =s��� ) ��A ����� �/�X�qx ���"'����� Z'�����F�k/ � /8lj�h� _I � + �� ������hx2/�l.�$-.('����� �lP* ;5�P�@CB0B0B9EQ�HG 25�X*$l@C@�T=K/���*T�Tael�t���;T�� $�*�a>� $��T�<�,~LtL��8�.;T���$l}Y����=���Fx���s-L��= + ����;)�Ll $�STSTSe/

| $ $ ~9���T=8- + ����; )Q/ E%/�l �h� ��j����-L "�T� �L/(�?�����.��'�� 6 =�;T����('���A7 #%('�� ~e�j������.; �W���B� I =('�8A7�e-.��= � I �� �'����� � tL'��A78<���G'���T�`� �X�o�h�����y���. Z'���'"'�� �./�lH�$-L�'����$la* ��� � �), �� L���Q� � �b��:���!£�� �W�<� � �R, 2 ��� >,,�q� ¥ ���!��� ��� � � =��D, *�l tj��;��� �RL���,R,��A� �$#p������ ��uEH��= + � I A 6 " "�? �8��'��� �l]x��=�=� �-���=�� � �.l �$�T*Tze/

| $�U8~7x������ �L/u����� ��' I ���Q��� h8 �����.; ����������'�8 6 =�;T����('���A7 ����-|'��.�FEJ\,�T= I '�����_��� � t.'��A ��=Kl�gY�?�Tt]������'��\,���m�Tt I =8��G'���T�� (� ) � " �/�l gY�����.��=�= �h��K/ �.l��h� + ���j�el � =8=������� �l �$���,z?/

EVOLVABLE HARDWARE186