Skip to content

Gencol documentation

First of all, you should know that there are several versions of Gencol. From one version to another, there may be differences in behaviors, parameters, in the syntax of the description file problem, etc. Some documents will be version specific given while others may be of more general interest.

Here are a few places where you can find information:

In the /home/gencol/info directory, you will find, among other things, two documents of general interest:

  • gencol-intro.pdf (An introduction to GENCOL by June Lavigne)
  • modeling-with-gencol.pdf (Basic Modeling with GENCOL by June Lavigne)

You can view these documents on Unix using the following commands:

 gcmdoc gencol-intro.pdf
 gcmdoc modeling-with-gencol.pdf

or transfer them to your PC for viewing with a PDF reader. In the directory /home/gencol/common/gencol/upgrade, you will find various documents dealing with the differences between certain versions of Gencol; this can be particularly useful for two categories of people:

  • those who want to migrate their code from one version of Gencol to another;
  • those who want to migrate their data (parameters, problem description files) to use a different version of Gencol. The next sources of information are more specific to each version of Gencol.

To place yourself in the context of a particular version of Gencol, you can give the following command for example:

 gcmleaf /home/gencol/ref/gencol-4.5

To obtain a list of Gencol versions currently available, one can issue the command:

 ls -d /home/gencol/ref/gencol*

Versions with a name annotated with an "@" are simply aliases. By locating a particular alias, we can easily see the precise version to which it refers by giving a command like (here, we want to know what exactly /home/gencol/ref/gencol-4.5 refers to):

 realpath /home/gencol/ref/gencol-4.5

Note that some versions of Gencol are only available on a limited number of machines.

From the moment you are in the context of a given version of Gencol, you have access to all of the following:

  • The cplex_info program gives us information on the version of Cplex used and allows us to see whether the user license is working properly or not.
  • The gencol --version command gives the version of each of the modules used to build this version of the executable.
  • The gencol --help command gives the Gencol call syntax with all possible options for its execution.

If you don't have enough space in your terminal window, you can issue the following command:

     gencol --help 2>&1 | less

If you want a printable PDF version, you can always take inspiration from:

     (unset ENSCRIPT; gencol --help 2>&1 | enscript -B -o - | ps2pdf13 - gencol-help.pdf)

The gcmman command is used, in general, to find information in man pages format relating to documents and traceable source code in the modules located in the current GCM tree.

For example, to know the syntax of the problem description file, one can type:

 gcmman -e spp input

This gives you, on the screen, the starting point of the documentation in this regard.

To obtain this documentation in PDF format in the spp-input.pdf file, issue the following command:

 gcmman -Tpdf -e spp input > spp-input.pdf

Similarly, if we want to obtain clarifications on the Arc section, we can give the following command:

 gcmman -e spp input -a

You can also easily get the list of topics covered in the spp module whose name begins with input- by giving the following command:

 gcmman -n -k spp '^input-'

By giving the following command, we get all these topics in a single PDF file named spp-input-sections.pdf:

 gcmman -Tpdf -n spp '^input-' > spp-input-sections.pdf

You can also find information on certain functions, data structures, types, etc. using gcmman. For example, the following command will give a complete list of the topics covered in the mp module, as well as the name of the file in which this documentation is found:

 gcmman -w mp .

Obviously, to learn how to better use gcmman, we can give the following command:

 gcmman -e gcmman

To see an example of an automatically generated problem description file, one can use the ubsp command. Each version of ubsp is adapted to the corresponding version of Gencol. The following command gives a simple example of a problem description file that can be used to run Gencol:

     ubsp -m 3 -n 100 > PROBLEM

To get the ubsp call syntax, one can give the following command:

     ubsp --help

Regarding the documentation of the parameters, it can be found in the .dec files of the modules concerned. For example, the mp.dec file of the mp module describes the parameters governing the behaviors specific to the master problem. This documentation can also be obtained from the gcmman command; thus, we obtain a description of the parameters for the mp module in the following way:

     gcmman -e mp-param