Skip to content

4. Distribution

Ioannis G. Tsoulos edited this page Feb 3, 2017 · 1 revision

The package is distributed in a zip file from Github https://github.com/itsoulos/GenClass named GenClass-master.zip and under UNIX systems the user must execute the command: unzip GenClass-master. This command creates a directory named GenClass with the following contents:

  1. bin: A directory which is initially empty. After compilation of the package, it will contain the executable genclass

  2. doc: This directory contains the documentation of the package (this file) in different formats: A LyX file, A LaTeX file and a PostScript file.

  3. examples: A directory that contains some test functions.

  4. include: A directory which contains the header files for all the classes of the package.

  5. src: A directory containing the source files of the package.

  6. Makefile: The input file to the make utility in order to build the tool. Usually, the user does not need to change this file.

  7. Makefile.inc: The file that contains some configuration parameters, such as the name of the C++ compiler etc. The user must edit and change this file before installation.

Installation

The following steps are required in order to build the tool:

  1. Uncompress the tool as described in the previous section.

  2. cd GenClass

  3. Edit the file Makefile.inc and change (if needed) the configuration parameters.

  4. Type make.

The parameters in Makefile.inc are the following:

  1. CXX: It is the most important parameter. It specifies the name of the C++ compiler. In most systems running the GNU C++ compiler this parameter must be set to g++.

  2. ROOTDIR: Is the location of the GenClass directory.

The executable genclass

The outcome of the compilation is the executable genclass under the directory bin. The executable has the following command line parameters:

  1. -h:The program prints a help screen and afterwards the program terminates.

  2. -c count: The integer parameter count determines the number of chromosomes for the genetic population. The default value for this parameter is 500.

  3. -g gens: The integer parameter gens determines the maximum number of generations allowed for the genetic algorithm. The default value is 200.

  4. -s srate: The double parameter srate specifies the selection rate used in the genetic algorithm. The default value for this parameter is 0.10 (10%).

  5. -m mrate: The double parameter mrate specifies the mutation rate used in the genetic algorithm. The default value for this parameter is 0.05 (5%).

  6. -l size: The integer parameter size determines the size of every chromosome in the genetic population. The default value for this parameter is 100.

  7. -p train_file: The string parameter train_file specifies the file containing the points that will be used as train data for the algorithm.

  8. -t test_file: The string parameter test_file specifies the file containing the test data for the particular problem. The file should be in the same format as the train_file.

  9. -w wrapping. The integer parameter wrapping determines the maximum number of wrapping events allowed. The default value for this parameter is 1.

  10. -f foldcount. The integer parameter foldcount specifies the number of fold to be used for cross validation. The default value for this parameter is 0 (no cross validation).

  11. -r seed: The integer parameter seed specifies the seed for the random number generator. It can assume any integer value.

  12. -o method: The string parameter method specifies the output method for the executable. The available options are

(a) simple. The program prints output only on termination.

(b) csv. The program prints in csv (comma separated value) format information in every generation. In every generation the program prints: number of generations, train error and test error. This is the default value for the string parameter method.

(c) full. The program prints in every generation detailed information about the optimization procedure as well as classification error for every distinct class of the problem.

Clone this wiki locally