Kestrel
The Kestrel client/server is a way of sending your
optimization job to be solved via
the NEOS Server from within your modeling environment and receiving
results that can be interpreted directly by your modeler.
| Modeling Environment | Currently available versions of Kestrel |
| AMPL |
Unix |
Windows |
| GAMS |
Unix |
Windows |
In order to track interest in Kestrel, we ask that you provide your email address before proceeding to the download site. We will mail you about substantial changes in future releases.
Guide to using the Kestrel AMPL client
AMPL Installation:
To use Kestrel with AMPL, you need to have the AMPL interactive
environment installed on your local computer. If you don't currently
have the AMPL environment installed, you can download a test version
that accepts problems up to 300 variables and 300 constraints; see the
AMPL web page for
instructions.
Kestrel Installation:
- Windows:
- Download kestrel.zip by submitting form above.
- Unzip kestrel.zip into same directory as AMPL executable.
-
Unix: (requires python to be installed)
- Download kestrel.tar.gz from form above.
- Unzip kestrel.tar.gz into a directory in the path (we recommend the same directory as the ampl binary)
Using Kestrel from within the AMPL Environment:
- Design your model as you normally would. When choosing options,
everything should remain as per usual with the following exceptions.
- Choose
option solver kestrel; instead of the usual solver name.
- Choose the solver you want with
option kestrel_options
'solver=<solverName>';
- Specify NEO Server URL
option neos_server
'www.neos-server.org:3332';
- If you do not know what solvers are available via Kestrel, submitting a job (see below) with a nonexistent solver will return a list of enabled solvers.
- When your kestrel_options are set, submit the
job to the NEOS Server by typing
solve;.
- If you are somehow disconnected from the Kestrel server during your
job execution, you can specify
option kestrel_options
'job=<jobNumber> password=<password>'; and
ask kestrel to
solve; If your job is still in progress, your
AMPL session will resume waiting. Otherwise, your results will be
retrieved. Jobs are removed from the NEOS Server after some length of
time (usually two days), so you will not be able to retrieve your job
this way after that time. To resume normal kestrel solver operation type
option kestrel_options 'solver=<solverName>';
Note: On Windows you will get an error message that the client requires python24.dll to run. Please ignore this message, since the client can execute without this library.
Guide to using the Kestrel GAMS client
Starting with version 23.7 of GAMS, the Kestrel GAMS client is included in the standard GAMS distribution for all supported architectures, so you only need Python version 2.5 or above to be installed on your machine.
Installation (for GAMS systems 22.3 to 23.6):
- Copy the zip file to the directory on your system
where GAMS is installed.
- Run
gamsinst to install the
solver.
Note that the GAMS client only features one solver: kestrel. The kestrelsub, retrieve and kill are all replaced by more robust mechanisms within the GAMS grid facility that has been available since 22.3. Documentation of these features is available in Appendix I of the GAMS user guide.
Using Kestrel with GAMS:
- Create an options file called
kestrel.opt.
- In that file, specify the solver on the NEOS Server that you want
to use with
kestrel_solver <solverName>
neos_server <hostname:port>
Example:
kestrel_solver conopt
neos_server www.neos-server.org:3332
The options
file should also contain any options specific to your chosen solver.
- If you do not know what solvers are available via Kestrel, submitting a job (see below) with a nonexistent solver set will return a list of enabled solvers.
- When you run your GAMS job on the command line, set your solver to
kestrel and set optfile=1. The Kestrel solver
accepts all model types.
- If you are somehow disconnected from the Kestrel server, you can retrieve the results for your already submitted job from the standard web interface located on this
page
using your
<jobnum> and <password>.
|