Goto Chapter: Top 1 2 3 4 5 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

1 Introduction
 1.1 Welcome to Gurobify
 1.2 Citing Gurobify
 1.3 Dependencies
 1.4 Installation
 1.5 Testing And Documentation
 1.6 Loading Gurobify
 1.7 Problems With The Installation

1 Introduction

1.1 Welcome to Gurobify

Gurobify is a GAP[GAP16] package which provides an interface to the optimisation software Gurobi[gur16d].

Gurobify can be obtained from the Gurobify homepage:

Please use the issue tracker to inform me of any bugs or suggestions:

1.2 Citing Gurobify

If Gurobify aids you in obtaining results that lead to a publication, please cite Gurobify as you would a paper. An example BibTeX entry for citing gurobify is given below. Check that the version number and doi correspond to the version that you used in your research. Please also send me an email informing me of the paper for my own interest!

@article{gurobify,
Author = {Lansdown, Jesse},
Doi = {10.5281/zenodo.5025558},
Key = {gurobify},
Title = {{Gurobify -- A GAP interface to Gurobi Optimizer, Version 2.0.0}},
Url = {http://doi.org/10.5281/zenodo.5025558},
Year = 2021,
}

Here is the entry in the APA style which may be used directly in the bibliography environment of your LaTeX document.

\bibitem[Lansdown(2021)]{gurobify}
J.~Lansdown.
\newblock {Gurobify -- A GAP interface to Gurobi Optimizer, Version 2.0.0}.
\newblock 2021.
\newblock \doi{10.5281/zenodo.5025558}.
\newblock URL \url{http://doi.org/10.5281/zenodo.5025558}.

1.3 Dependencies

Gurobify requires the following software to be installed.

Autotools may be installed on MacOSX using homebrew with the commands brew install autoconf and brew install automake. If you want to regenerate the documentation for any reason, then the following will also be required.

Although Gurobi is proprietary software, it is available free for academic use. According to the Gurobi website,

"Gurobi makes most of our solvers available to recognized degree-granting academic institutions free of charge" [gur16b],

and

"The free Academic License for Gurobi has all the features and performance of the full Gurobi Optimizer. A free Academic License has no limits on model size. The only restrictions on the use of these licenses are:

Note, free academic licenses expire twelve (12) months after the date on which your license was generated, but eligible faculty, students, or staff can renew a license by repeating the above process" [gur16a].

For up-to-date information on Gurobi licences, please refer to the Gurobi website. A link can be found in the Appendix, or through a simple search online.

1.4 Installation

To install Gurobify, first extract it in the pkg directory of the GAP installation directory. You may place Gurobify in a different location, so long as its parent directory is called "pkg". Installing Gurobify outside of the GAP root pkg directory is not recommended, but is useful for example when administrative privileges are needed to access the GAP root directory. Next run the following command in the terminal from within the Gurobify directory.

./install.sh -g <gurobi path> [-r <gap path>]

The ‐g <gurobi path> is a necessary argument, and normally looks something like this on MacOSX,



‐g /Library/gurobi701/mac64/



or something like this on Linux,



‐g /opt/gurobi701/linux64/



The [‐r <gap path>] is an optional argument, and is not normally necessary if Gurobify is placed in the pkg directory of the GAP root directory. If, however, Gurobify is located in a non-root pkg directory, then this argument must be included. It normally looks something like this,



 ‐r /opt/gap4r8/

1.5 Testing And Documentation

To test the package is working correctly, run the following command from inside the Gurobify directory.

gap maketest.g

It transforms each of the examples in Chapter 4 "Examples" and the example given in Section 2.2 "Simple Example" into test cases to check that Gurobify is functioning correctly.

Within the Gurobify directory there is a subdirectory called "doc". This directory contains the documentaion for Gurobify in the form of a pdf file called "manual.pdf" as well as in html format. To access the html version of the manual, open the file called "chap0.html". The documentation can be regenerated by running the following command in the terminal from the Gurobify directory, though this should not be necessary.

gap makedoc.g

Regenerating the documentation will also automatically regenerate the "maketest.g" test file.

1.6 Loading Gurobify

Open GAP and load Gurobify with the command LoadPackage("Gurobify");. You should see the following.

gap>  LoadPackage("Gurobify");
-----------------------------------------------------------------------------
Loading  Gurobify 2.0.0 (Gurobify provides an interface to Gurobi from GAP.)
by Jesse Lansdown (www.jesselansdown.com).
Homepage: https://www.jesselansdown.com/Gurobify/
     Currently running Gurobi Optimizer 9.1.0
-----------------------------------------------------------------------------
true

Note that if you have Gurobify located somewhere other than the GAP root directory's pkg directory, then you must run GAP with the following command to enable GAP to find Gurobify.

gap -l ";/alternative/path/to/Gurobify"

where /alternative/path/to/Gurobify is the path to the directory which contains /pkg/Gurobify as subdirectories.

1.7 Problems With The Installation

Please ensure that all dependencies are present, the correct paths have been used, and the correct versions of software are being used. There is also a section in the Appendix, "Troubleshooting The Installation", which deals with a number of issues people face when installing Gurobify, and suggests solutions.

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 Bib Ind

generated by GAPDoc2HTML