Releases: fontanf/packingsolver
Releases · fontanf/packingsolver
PackingSolver 1.1.0
- Fix the column generation algorithm (#5)
- Add support for (multiple) knapsack objective in the column generation algorithm
- Make PackingSolver download CLP automatically with the other dependencies
- Add a visualizer for
onedimensional
problems
PackingSolver 1.0.0
Packing now solves three additional problem types: rectangle
, boxstacks
and onedimensional
PackingSolver 0.8
- New Dichotomic Search algorithm for Variable-sized Bin Packing problems with many items in bins
- For Variable-sized Bin Packing problems, the solver automatically chooses between Column Generation and Dichotomic Search
- For Bin Packing problems with a single bin type, the solver automatically chooses between Column Generation and Tree Search
- A Tree Search algorithm is now called at the beginning of the Column Generation algorithm to provide a fast initial solution and initialize the column pool
- Cut thickness
- Multiple new advanced options to control the solver behavior
- Code cleaning
PackingSolver 0.7
- More user-friendly interface: no need to know about the algorithms to use the solver
- Improve standard output
- Trims
- Small bug fixes
- Small performance improvement
- Code cleaning
PackingSolver 0.6
- Update symmetry breaking strategy and switch from Iterative Memory Bounded A* to Iterative Beam Search. Significant improvements for most problems.
- Remove C++20 dependency (now requires C++11)
PackingSolver 0.5
- PackingSolver now handles objective Variable-sized Bin Packing (VBPP) via a column generation heuristic implemented with fontanf/columngenerationsolver (requires a linear programming solver). Benchmarks have been added for VBPP and updated for BPP with significant improvements on problems with few items per bin.
- The tree search algorithm can now return the
k
best solutions (this was helpful for the column generation heuristic) - Code refactoring, slightly faster (about 5%)
PackingSolver 0.4
- Switch to a differential implementation for the branching scheme
- Add datasets
morabito1992
,fayard1996
,bortfeldt2006
,leung2011
,silveira2013
,imahori2010
,afsharian2014
,fayard1998_uu/uw
,,alvarez2002_uu/uw
andegeblad2009
- Re-write bench script
PackingSolver 0.3
- PackingSolver now compiles and runs on Windows
- Rename Memory Bounded A* (MBA*) to Iterative Memory Bounded A* (IMBA*)
- Move symmetry handling from branching scheme into tree search algorithm
- Fix various bugs for some tricky packing configurations
- The command line interface now accepts a parameter file
- It is now possible to impose a first-level sub-plate to contain only one 2-cut using the
one2cut
parameter - Improve bound for
bin-packing
objective (mainly reduces the benchmark duration) strip-packing
(SPP
) objective has been separated into two objectivesstrip-packing-width
(SPPW
) andstrip-packing-height
(SPPH
)- New
hifi1998
andlong2020
instances - Add
long2020
andparenno2020
results - New benchmarks on
long2020
problem
PackingSolver 0.2
- Code cleaning and optimization (between 10 and 20% faster)
PackingSolver 0.1
Initial release:
- 2D two- and three-staged exact, non-exact and homogenous guillotine patterns
- Oriented or non-oriented items
- ROADEF/EURO 2018 challenge constraints (defects, precedences...)
- Objectives: Bin Packing, Knapsack, Strip Packing, Bin Packing with Leftovers