Page 127 - 49A Field Guide to Genetic Programming
P. 127

12.2 Curve Fitting, Data Modelling and Symbolic Regression    113


                 assumptions that don’t apply in one’s circumstances (e.g., noise-free
                 data).

             An approximate solution is acceptable (or is the only result that
                 is ever likely to be obtained). Evolution in general, and GP in
                 particular, is typically about being “good enough” rather than “the
                 best”. (A rabbit doesn’t have to be the fastest animal in the world:
                 it just has to be fast enough to escape that particular fox.) As a
                 result, evolutionary algorithms tend to work best in domains where
                 close approximations are both possible and acceptable.
             Small improvements in performance are routinely measured (or
                 easily measurable) and highly prized. Technological efforts tend
                 to concentrate in areas of high economic importance. In these domains,
                 the state of the art tends to be fairly advanced, and, so, it is difficult
                 to improve over existing solutions. However, in these same domains
                 small improvements can be extremely valuable. GP can sometimes
                 discover small, but valuable, relationships.
               Two (of many) examples of successful applications of GP that satisfy
            many of these properties are the work of Lohn, Hornby, and Linden (2004) on
            satellite antenna design and Spector’s evolution of new quantum computing
            algorithms that out-performed all previous approaches (Spector, Barnum,
            and Bernstein, 1998; Spector, Barnum, Bernstein, and Swamy, 1999). Both
            of these domains are complex, without analytic solutions, yet in both cases
            good simulators existed which could be used to evaluate the fitness of so-
            lutions. In other words, people didn’t know how to solve the problems but
            they could (automatically) recognise a good solution when they saw one.
            Both of these applications resulted in the discovery of highly successful and
            unexpected designs. The key component of the evolved quantum algorithm
            could in fact be extracted and applied in a wide variety of other settings,
            leading to major improvements in a number of related quantum algorithms
            as well as the ones under specific study.

            12.2     Curve Fitting, Data Modelling and

                     Symbolic Regression

            In principle, there are as many possible applications of GP as there are ap-
            plications for programs—in other words, virtually infinite. However, before
            one can try to solve a new problem with GP, one needs to define an appropri-
            ate fitness function. In problems where only the side effects of a program are
            of interest, the fitness function usually compares the effects of the execution
            of a program in some suitable environments with a desired behaviour, often
            in a very application-dependent manner. However, in many problems the
   122   123   124   125   126   127   128   129   130   131   132