Running a Solver


Solve your optimization problems locally (via the glpsol command) or remotely (via the ampl or neos commands). There are important differences between these commands, which are explained below.

TIP: Use the Command Line Helper to compose a command line through a graphical interface.

1. Run GLPSOL in your browser

Use the glpsol command line to solve your model locally. GLPSOL is a large-scale linear and mixed integer programming solver built on top of the GLPK package. Using the WebAssembly technology, we are able to provide a way for you to run GLPSOL locally, directly from your browser. If you decide to use GLPSOL, keep in mind that:

  • GLPSOL requires the input files to be written in the GNU MathProg language (GMPL), which is a subset of the AMPL language. This means that most AMPL commands will work, but not all.
  • GLPSOL accepts only 2 input files: model and data. You will not be able to have a separate commands file like in the remote solving commands. Instead, put your solve, print and display commands at the end of your model file.
  • GLPSOL will use the CPU and memory from your machine. If your model is too large, we recommend you to use one of the remote execution options.

2. Run a solver on NEOS

Use the neos command line to solve your model on NEOS. NEOS is a free internet-based service for solving numerical optimization problems. Hosted by the Wisconsin Institutes of Discovery at the University of Wisconsin in Madison, the NEOS Server provides access to more than 60 state-of-the-art solvers in more than a dozen optimization categories. Learn more about NEOS usage here.

3. Run a solver on a PIFOP Optimization Server

Just above the terminal, there is a selector of available Optimization Servers. New free users can use the PIFOP Limited Optimization Server for a limited amount of time. Each Optimization Server has a set of commands that it supports, e.g. ampl, gams and oplrun. In order to see which commands the selected Optimization Server supports, enter help into the terminal. You can learn more about this feature here, but here are some important points to keep in mind when using it:

  • Currently, PIFOP does not provide Optimization Servers, except for the above mentioned PIFOP Limited, available for a limited amount of time for new users. But typically, to use an Optimization Server you need to either 1) host an Opt-Server yourself or 2) be allowed to use an Optimization Server hosted by someone else.
  • Files created during execution are not returned to the user, so make sure you print your results directly to the terminal.
  • Do not rely on the read <- command to set values for your parameters. During execution the terminal will be locked for input and will only be unlocked once the process is finished.
  • The time used by the process is limited in two ways. First, there is the limit that applies to all users of a particular optimization server due to restrictions of its owner account. Second, there is the limit that applies to a particular group of users due to restrictions set by the owner of the optimization server. Click here to learn more about account limits.
  • The memory used by a process will not exceed the limit set by the owner of the optimization server.
Terms and Privacy Help Pricing About Contact us Server Status Twitter