CS 152: NEURAL NETWORKS
Evolving a Sigma-Pi Network as a Network Simulator
Justin Basilico
CODE
The code for the project can be downloaded as a .zip file that contains all the code or each file can be downloaded individually from the links below:
| code.zip | This is a zip file that contains all of the code and data files for the project. | |
| readme.txt | This is the readme file that explains how to run the program. | |
| ActivationFunction.java | This file contains an interface that describes activation functions. | |
| BinaryChromosome.java | This file contains a class that implements a Chromosome of binary values. | |
| Chromosome.java | This file contains an interface that describes chromosomes. | |
| DatasetCreator.java | This file contains a program for creating datasets for the program. | |
| DatasetReader.java | This file contains code for reading in datasets. | |
| DoubleArrayEncoder.java | This file contains a class that UnitEncoder encodes arrays of doubles by copying them into the input units. | |
| FeedForwardNetwork.java | This file contains an abstract class that implements common functionality among feed-forward networks. | |
| FitnessFunction.java | This file contains an interface that describes a fitness function. | |
| Genome.java | This file contains a class that keeps a Chromosome along with its fitness. | |
| InputOutputPair.java | This file contains a class that a simple NetworkInput that keeps a pair of input and output Objects. | |
| LinearFunction.java | This file contains a class that is a linear activation function. | |
| NetworkEvolver.java | This file contains the main program for evolving networks. | |
| NetworkInput.java | This file contains an interface for inputs into a network. | |
| NetworkTester.java | This file contains a program for testing the performance of a FeedForwardNetwork on a dataset. | |
| NeuralNetwork.java | This file contains an abstract class that implements the common functionality among neural networks. | |
| SigmaPiChromosome.java | This file contains a class that is a Chromosome that encodes a SigmaPiNetwork. | |
| SigmaPiFitness.java | This file contains a class that implements a fitness function for evaluating SigmaPiChromosomes. | |
| SigmaPiNetwork.java | This file contains a class that implements a sigma-pi network. | |
| SigmoidFunction.java | This file contains a class that is a sigmoid activation function. | |
| UnitEncoder.java | This file contains an abtract class that implements the common functionality among encoders for the input and target output for a network. | |
| Utilities.java | This file contains a class that has a lot of utility functions. | |
| experiment_1.txt | This is the evolution testing set for experiment 1. | |
| experiment_1_test.txt | This is the other testing set for experiment 1. | |
| experiment_2.txt | This is the evolution testing set for experiment 2. | |
| experiment_2_test.txt | This is the other testing set for experiment 2. | |
| experiment_3.txt | This is the evolution testing set for experiment 3. | |
| experiment_3_test.txt | This is the other testing set for experiment 3. |
This file is located at
http://www.cs.hmc.edu/~jbasilic/cs152/project/code.html