cplex_slurm_arc, examples which illustrate how to run the cplex() program on Virginia Tech's Advanced Research Computing (ARC) computer clusters under the slurm() job submission system. cplex() is an executable program and a library for defining and solving a variety of linear programming problems, as well as network flow problems, quadratic programming problems, and mixed integer programming problems.
Input to the executable program is in a very natural format. In particular, a simple 3 variable linear programming problem could be described to CPLEX by the following input text, which is completely understandable by anyone familiar with these kinds of problems:
enter example maximize x1 + 2 x2 + 3 x3 subject to -x1 + x2 + x3 <= 20 x1 - 3 x2 + x3 <= 30 bounds 0 <= x1 <= 40 0 <= x2 0 <= x3 end optimize
Users may also access the associated CP Optimizer library of constraint programming tools supporting constraint propagation, domain reduction, and highly optimized solution search.
Although CPLEX is a commercial package from IBM, it is possible for interested users to obtain a version of CPLEX, limited to no more than 1000 variables and 1000 constraints. IBM also offers free access to a full version of CPLEX for faculty and researchers at accredited universities. For more information on this opportunity, see https://www-01.ibm.com/software/websphere/products/optimization/cplex-studio-community-edition/ .
The information on this web page is distributed under the MIT license.
https://www-01.ibm.com/software/commerce/optimization/cplex-optimizer/index.html .
On any ARC cluster, check the installation details by typing "module spider cplex".
CPLEX can be loaded with a single module command: One version of the appropriate commands is:
module load cplex/12.6.2
Here is an example batch script which supplies a user input file to the executable CPLEX program:
#! /bin/bash # #PBS -l walltime=00:05:00 #PBS -l nodes=1:ppn=1 #PBS -W group_list=newriver #PBS -q open_q #PBS -j oe cd $PBS_O_WORKDIR module load cplex/12.6.2 cplex < input.txt
A complete set of files to carry out a similar example calculation are available in a tar file