[sci.misc] Announcement: Whales and Plankton in comp.sources.misc

loy%sunburn.West@Sun.COM@gtx.UUCP (Bob Loy) (07/19/89)

#============================================================================#

                Whales & Plankton Introduction and Posting

#----------------------------------------------------------------------------#

     This is to announce the posting of source to "whpl.c" and associated
  files, more easily referred to as "Whales & Plankton", to USENET, and more
  specifically, to comp.sources.misc.

     A README file is included in the source archives with instructions on
  compiling and running Whales & Plankton (runs fine on a Sun 3; should be
  UNIX-portable, but no guarantees for any particular system).

     Complete documentation is included within the source, easily found by
  an editor or a search utility such as "grep", keying on the character '@'.

     What you should find in comp.sources.misc will be 13 shell archive
  files which you can convert back to compilable source with the following
  shell script for C-shell users (or just type in each line by hand once
  you get the whpl*.shar files loaded into a spare subdirectory):

  #!/bin/sh
  set -v
  sh whpl01of13.shar
  sh whpl02of13.shar
  sh whpl03of13.shar
  sh whpl04of13.shar
  sh whpl05of13.shar
  sh whpl06of13.shar
  sh whpl07of13.shar
  sh whpl08of13.shar
  sh whpl09of13.shar
  sh whpl10of13.shar
  sh whpl11of13.shar
  sh whpl12of13.shar
  sh whpl13of13.shar

  If you already use the Bourne shell, you can delete the top line.

     This cover letter has been posted to the following newsgroups:
  comp.ai, sci.bio, & sci.misc.

#----------------------------------------------------------------------------#

     Whales & Plankton is a program which models a small ecology and is a
  study of genetic algorithms.

     The inspiration for it comes from two of A. K. Dewdney's Scientific
  American Computer Recreation columns:  "Sharks and Fish Wage an Ecological
  War on the Toroidal Planet Wa-Tor" of December, 1984, and from November,
  1985, "Exploring the Field of Genetic Algorithms in a Primordial Computer
  Sea Full of Flibs" [Finite LIving BlobS].

     For this program, the finny inhabitants of the planet Wa-Tor have been
  replaced:  The fish by very dumb plankton (they just float there and
  multiply), and by whales who, if they are not 'smart' enough at finding
  plankton, get replaced by descendents who are.  The whales originally have
  randomly loaded gene sets which guide their movements over the two dimen-
  sional array looking for, and eating, the plankton.  Periodically, the
  whales mate and produce offspring by mixing different genes from different
  parents.  Included is the Darwinian pressure of only allowing the most
  successful whales to procreate.


     As an ecological model, Whales & Plankton is almost mindlessly simple,
  with only one predator and one prey.

     As a platform for study of genetic algorithms, it has certain strengths
  and certain weaknesses:
     Mating different parents to improve the algorithm -- The 'chromosomes'
        involved are not precisely the classic Holland character strings,
        but they do get a thorough mix, and the whales do indeed improve as
        the generations proceed.  There are over 400 different 'breeds' of
        whales which can tested by the whpl system.
     Gene Crossover -- The fundamental unit in whpl.c is the 'gene'.  The
        chromosomes are made up of a certain number of genes, which are
        freely mixed in the mating algorithm.  The ability to cut the chromo-
        somes themselves, which would be a more complete crossover algorithm,
        is not presently implemented.  
     Mutation -- Not presently implemented, but the necessary "hooks" are
        already in place for it to be added to the code.


     Whales & Plankton is ready to be run as is.  It has a rich number of
  options available which can be typed on the command line at run time.  Any
  user can use it to create generations of any of the breeds of whales and
  monitor the changes in the viability of the offspring.

     Nevertheless, Individuals with C programming experience will be able
  to make deeper modifications to how it operates.  Notes in the README
  file included in the source archive touch on possible modifications, and
  relate them to levels of C-language expertise ranging from beginner to
  expert.  But again, hopefully Whales & Plankton will turn out to be
  interesting to many people, not just C programmers.


     Whales & Plankton is of course, my child, my labor of love, and all
  that.  Naturally I would be interested in hearing about anyone's experi-
  ences with it.  However, the documentation in the source code may seem to
  imply that further versions are forthcoming soon, and from there one might
  be tempted to assume that I am supporting it almost as a commercial product.
  The answer is no, in both cases.

     I am proud of whpl.c, and hope it is not so esoteric that there won't
  be somebody out there who gets some use and enjoyment from it.  But it
  is also time for it to stand on its own.  It has been well and success-
  fully tested, and the bugs which remain (and there are always some bugs)
  should be minor ones.  Use it as a starting point for your own explorations,
  both in genetic algorithms, and just possibly, in C programming.

#============================================================================#

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                |
             Bob Loy            |     Life is the detour you take on the
    ...!sun!sunburn!gtx!loy     |     way to where you're really going.
                                |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~