sueap
index
/Users/levys/sueap/python/sueap.py

Abstract superclass for SuEAP classes like NSGA2P.  Implements some common GA 
methods.  Each subclass should implement the update method, which takes a 
population of individuals, their fitnesses, the current generation number, and 
the total number of generations, and returns the next-generation population.
 
Simon D. Levy                 Washington & Lee University       November 2007

 
Modules
       
matplotlib.pylab
random
sys
time

 
Classes
       
SuEAP

 
class SuEAP
     Methods defined here:
__init__(self, seed=None)
# Constructor should be called by subclass constructor.  
#
# Constructor also supports several optional arguments:
#
# seed=SEED
#    supports random-number-generator seed for reproducible results
__repr__(self)
# Representation method reports random-number seed, if any.
newpop(self, classname, popsize, data=None)
# Builds initial population.  
#
#   newpop(classname, popsize, [options]) returns a <popsize>-length 
#  (randomly) initialized list of structures built by function name 
#  <classname>.
#
#   Options are:
#    
#     data - data passed into the contstructor for <classname>

#        Note that this option initializes all objects to have the same
#        data contents.  If you want separate data for each object, you
#        should skip newpop and create each object yourself.
plot(self, fits, gen, ngen)
# Plots fitnesses in two dimension.
plot_fits(self, fits, style='b+')
# Plots first two dimensions of fitnesses in a single style.  Fitnesses \
# should be normalized to interval [0,1].
post_plot(self)
# Do post-plot operations
pre_plot(self, gen, ngen)
# Prepares for plotting.
run(self, pop, ngen, pobj=None, init=None, haltfun=None, savegen=None, savename=None)
# Runs the subclassed genetic algorithm on the population for a specified
# number of generations, calling the update method of the implementing 
# class.  Returns new population.
#
run(pop, ngen, [options])
#
#   Options are:
#
#     pobj - parallelization object
#
#     init - initial data to pass to fitness method of population members
#
#     haltfun - halting function
#
#     savegen - period (in generations) at which to save population to disk

#     savename - name of file for saving population
update(self, pop, fits, g, ngen)

 
Data
        PLOT_PAUSE_SECONDS = 1.0
PLOT_STYLE = 'b+'