lemon-project-template-glpk
diff deps/glpk/examples/cplex/README @ 9:33de93886c88
Import GLPK 4.47
author | Alpar Juttner <alpar@cs.elte.hu> |
---|---|
date | Sun, 06 Nov 2011 20:59:10 +0100 |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/deps/glpk/examples/cplex/README Sun Nov 06 20:59:10 2011 +0100 1.3 @@ -0,0 +1,44 @@ 1.4 +The program module in this subdirectory is a crude implementation of 1.5 +CPLEX-like interface to GLPK API. It consists of two files: cplex.c and 1.6 +cplex.h. 1.7 + 1.8 +NOTE that this module is NOT a clean room implementation of the CPLEX 1.9 +callable library. It only implements a CPLEX-like interface to the GLPK 1.10 +API routines, and its main purpose is to provide possibility to build 1.11 +and run applications which normally use the CPLEX callable library. 1.12 + 1.13 +This module approximately corresponds to CPLEX 9.0. 1.14 + 1.15 +Currently this module can be used as a linear programming solver for 1.16 +Concorde, the state-of-the-art computer code for solving the symmetric 1.17 +traveling salesman problem (TSP) developed by David Applegate, Robert 1.18 +Bixby, Vasek Chvatal, and William Cook. For details about Concorde see 1.19 +its web page at http://www.tsp.gatech.edu/concorde.html. 1.20 + 1.21 +To build Concorde along with GLPK you need to do the following: 1.22 + 1.23 +1. Configure, build, and install GLPK. 1.24 + 1.25 +2. Download the Concorde tarball co031219.tgz (version Dec 19, 2003), 1.26 + unpack and unarchive it. 1.27 + 1.28 +3. Copy files cplex.h and cplex.c to subdirectory concorde/LP/. 1.29 + 1.30 +4. Create file named lpglpk.c in subdirectory concorde/LP/. This file 1.31 + must contain the following two lines: 1.32 + 1.33 + #include "cplex.c" 1.34 + #include "lpcplex8.c" 1.35 + 1.36 +5. Configure Concorde in usual way (./configure) and then build it with 1.37 + the following command: 1.38 + 1.39 + make CPPFLAGS=-I. LPSOLVER_INTERFACE=lpglpk.c LPSOLVER_LIB=-lglpk 1.40 + 1.41 + The Concorde executable can be found in subdirectory concorde/TSP/. 1.42 + 1.43 +Please note that currently this GLPK interface module does not support 1.44 +some important features (namely, CPXgetijdiv, CPXmdleave, CPXpivotin, 1.45 +CPXpivotout, and CPXstrongbranch), so large (more than 1000 nodes) TSP 1.46 +instances cannot be solved in a reasonable time, and some instances may 1.47 +cause abnormal termination of Concorde (if CPXgetijdiv is called).