parent
355da317ba
commit
cc1e3962d0
@ -0,0 +1,50 @@
|
||||
lifting
|
||||
=======
|
||||
|
||||
This package contains the source code for the paper **The (not so) Trivial
|
||||
Lifting in Two Dimensions**, by Ricardo Fukasawa, Laurent Poirrier and Álinson
|
||||
S. Xavier.
|
||||
|
||||
Required Tools and Libraries
|
||||
----------------------------
|
||||
|
||||
To produce the tables in the paper, the following tools and libraries were
|
||||
used. Different versions may produce slightly different outputs.
|
||||
|
||||
- GNU Make, version 3.81
|
||||
- CMake, version 3.5.1
|
||||
- GCC, the GNU Compiler Collection, version 4.8.4
|
||||
- Ruby, version 1.9.3
|
||||
- IBM® ILOG® CPLEX®, version 12.6
|
||||
|
||||
Build instructions
|
||||
------------------
|
||||
|
||||
1. Navigate to the folder `../build`
|
||||
2. Run `cmake ..` followed by `make lifting-benchmark.run`
|
||||
3. Two binaries (`lifting-benchmark.run` and `liblifting.a`) will be generated
|
||||
|
||||
Running the experiments
|
||||
-----------------------
|
||||
|
||||
1. Build the project, following the instructions above.
|
||||
2. Navigate to the folder `lifting/benchmark` and execute
|
||||
|
||||
./run_experiments.sh
|
||||
|
||||
3. Two CSV files will be generated inside the folder `lifting/benchmark/tables`,
|
||||
corresponding to the two tables that appear in the paper.
|
||||
|
||||
In order to run the experiments with a different set of instances,
|
||||
the file `lifting/benchmark/instances/filtered/all.txt` should be modified.
|
||||
Each line in this file describes the origin `f` and a lattice-free set `B`.
|
||||
The set `B` is described by the coordinates of its vertices. Since the generator
|
||||
only deals with maximal lattice-free sets, it is also necessary to specify the
|
||||
lattice-point in the relative interior of each facet of `B`. The format of the file
|
||||
is as follows:
|
||||
|
||||
f[0] f[1] n v[0][0] v[0][1] ... v[n-1][0] v[n-1][1] n l[0][0] l[0][1] ... l[n-1][0] l[n-1][1]
|
||||
|
||||
where `n` is the number of facets, `v` is a n-by-2 matrix of doubles
|
||||
corresponding to the vertices and l is an n-by-2 matrix of doubles
|
||||
corresponding to the lattice-points.
|
Reference in new issue