Modify Evolutionary Computation in Java (ECJ)  
 
Download ECJ 11 from:
http://cs.gmu.edu/~eclab/projects/ecj/
 
(50 points) Modify ECJ to do ONE of the following:
 
1. Perform dynamic load balancing of individuals based on expected 
evaluation time (by scoreboarding OR based on a precomputed table of 
operator costs).  Consult Chandana's thesis and the ECJ distributed 
(master-slave) GA/GP documentation.
 
2. Print 3 or more statistics not currently reported by 
KozaShortStatistics:
http://snipurl.com/5x4g
Examples include:
- RELATIVE subpopulation fitness
- renormalized fitness
- fitness trajectories
- schema frequency (read in the schema descriptor from a params file 
or the command-line override)
- population size formula values for multi-deme GA/GP (see Cantu-
Paz's dissertation)
- SPEA2-relevant statistics for multiobjective optimization
 
3. Exchange subpopulations in the asynchronous island model using 
ANY migration strategy (original or published) that is not supported 
by the current implementation.  Consult Cantu-Paz's dissertation and 
recent GECCO proceedings for strategies.
 
EXTRA CREDIT (optional, 5 points each):
a) Make use of the checkpointing feature to migrate from one KDD 
core system to another.  KDD systems include:
 
fingolfin.user.cis.ksu.edu (NetBSD, file/mail server, no JDK yet)
ringil.cis.ksu.edu (NetBSD, web/mail server, no JDK yet)
anaire.user.cis.ksu.edu (Fedora, IRC server, JDK 1.4.2_04)
finarfin.user.cis.ksu.edu (Slackware Linux, Wiki server, no JDK?)
 
durin,azaghal,telchar,narvi: Dwarf group (Red Hat Linux 9, 
applications workstations, JDK 1.3, soon to be 1.4 & 1.5)
 
b) Make use of the multithreading feature on one of the 
multiprocessor systems in the CIS department (esp. Topeka or Salina 
in the KDD cluster).  If you need access to the Opteron (64-bit) 
quads, notify the instructor.
 
CLASS PARTICIPATION (required): Post your discussion from Mon 26 Apr 
2004.
 
-William Hsu