Documentation gencol¶
Tout d'abord, il faut savoir qu'il existe plusieurs versions de Gencol. D'une version à l'autre, il peut exister des différences de comportements, de paramètres, dans la syntaxe du fichier de description de problème, etc. Certains documents seront spécifiques à une version donnée tandis que d'autres peuvent être d'intérêt plutôt général.
Voici en vrac quelques endroits où vous pourrez trouver de l'information:
Dans le répertoire /home/gencol/info, on trouvera entre autres deux documents d'intérêt général:
- gencol-intro.pdf (An introduction to GENCOL par June Lavigne)
- modeling-with-gencol.pdf (Basic Modeling with GENCOL par June Lavigne)
Vous pouvez visionner ces documents sur Unix en utilisant les commandes suivantes:
gcmdoc gencol-intro.pdf
gcmdoc modeling-with-gencol.pdf
ou les transférer sur votre PC pour visionnement avec un lecteur PDF. Dans le répertoire /home/gencol/common/gencol/upgrade, vous trouverez divers documents traitant des différences entre certaines versions de Gencol; cela peut être particulièrement utile à deux catégories de personnes :
- celles qui veulent migrer leur code d'une version à l'autre de Gencol;
- celles qui veulent migrer leurs données (paramètres, fichiers de descriptions de problèmes) pour utiliser une version différente de Gencol. Les prochaines sources d'informations sont plus spécifiques à chacune des versions de Gencol.
Pour se placer dans le contexte d'une version particulière de Gencol, on peut donner la commande suivante par exemple :
gcmleaf /home/gencol/ref/gencol-4.5
Pour obtenir une liste des versions de Gencol actuellement disponibles, on peut faire la commande:
ls -d /home/gencol/ref/gencol*
Les versions avec un nom annoté d'un "@" sont simplement des alias. En repérant un alias particulier, on peut voir facilement la version précise à laquelle elle réfère en donnant une commande du genre (ici, on veut savoir à quoi réfère exactement /home/gencol/ref/gencol-4.5):
realpath /home/gencol/ref/gencol-4.5
À noter que certaines versions de Gencol ne sont disponibles que sur un nombre limité de machines.
À partir du moment où l'on se trouve dans le contexte d'une version donnée de Gencol, on a accès à tout ce qui suit :
- Le programme
cplex_info
nous donne l'information sur la version de Cplex utilisée et nous permet de constater le bon fonctionnement ou non de la licence d'utilisation. - La commande
gencol --version
donne la version de chacun des modules utilisés pour construire cette version de l'exécutable. - La commande
gencol --help
donne la syntaxe d'appel de Gencol avec toutes les options possibles pour son exécution.
Si vous n'avez pas assez d'espace dans votre fenêtre de terminal, vous pouvez donner la commande suivante :
gencol --help 2>&1 | less
Si vous voulez une version imprimable en PDF, vous pouvez toujours vous inspirer de:
(unset ENSCRIPT; gencol --help 2>&1 | enscript -B -o - | ps2pdf13 - gencol-help.pdf)
La commande gcmman
permet, en général, de trouver de l'information en format man pages relativement aux documents et au code source retraçables dans les modules situés dans l'arbre GCM courant.
Par exemple, pour connaître la syntaxe du fichier de description de problème, on peut taper:
gcmman -e spp input
On obtient ainsi, à l'écran, le point de départ de la documentation à cet égard.
Pour obtenir cette documentation en format PDF dans le fichier spp-input.pdf, on donnera la commande qui suit:
gcmman -Tpdf -e spp input > spp-input.pdf
De même, si on veut obtenir des clarifications sur la section Arc, on peut donner la commande suivante:
gcmman -e spp input-a
On peut aussi aisément obtenir la liste des sujets traités dans le module spp dont le nom commence par input- en donnant la commande suivante:
gcmman -n -k spp '^input-'
En donnant la commande suivante, on obtient tous ces sujets dans un seul fichier PDF nommé spp-input-sections.pdf:
gcmman -Tpdf -n spp '^input-' > spp-input-sections.pdf
On peut également trouver de l'information sur certaines fonctions, structures de données, types, etc. à l'aide de gcmman. Par exemple, la commande qui suit donnera une liste complète des sujets abordés dans le module mp, ainsi que le nom du fichier dans lequel on retrouve cette documentation:
gcmman -w mp .
Évidemment, pour apprendre à mieux utiliser gcmman, on peut donner la commande suivante:
gcmman -e gcmman
Pour voir un exemple de fichier de description de problème automatiquement généré, on peut utiliser la commande ubsp. ubsp génère des problèmes pour Gencol. Chaque version de ubsp est adaptée à la version de Gencol correspondante. La commande suivante donne un exemple simple de fichier de description de problème pouvant être utilisé pour exécuter Gencol:
ubsp -m 3 -n 100 > PROBLEME
Pour obtenir la syntaxe d'appel de ubsp, on peut donner la commande suivante:
ubsp --help
Pour ce qui est de la documentation des paramètres, on peut la retrouver dans les fichiers .dec des modules concernés. Par exemple, le fichier mp.dec du module mp décrit les paramètres régissant les comportements spécifiques au problème-maître. Cette documentation peut également être obtenue à partir de la commande gcmman; ainsi, on obtient une description des paramètres pour le module mp de la façon suivante:
gcmman -e mp-param