Locations of visitors to this page

optest 1D-cutting stock problem solver

  • Description: From a fixed(raw) length, infinite quantity of resource,
    cut different length and quantity pairs of material optimally
    (minimizing the resource usage).
  • optest's role: Generate cutting layout for profiles.
    Optionally generate lp file to use with lp_solve.
  • Uses lp_solve: Mixed Integer Linear Programming (MILP) solver
  • Uses Inih for problem file reading
  • Uses Peter Notebaert's pattern generating algorithm
  • Uses 'demand merging' method to simplify pattern generation.
    A limit (default:100000) triggers merging.
  • Used some time limits (configurable) for solver.
  • lp problem definition changed to prevent generating excessive
    profile quantities. Ie. in theory, contraints formulated by GE;
    I've changed them to EQ instead, and added slack variables.
    It seems to work :-) Just to be sure a second pass checks
    for demand vs generated quantities. Re-runs if necessary.
  • There are some examples (most of them are real problems)
    You may find some of them interesting:
    • test00: all of the configuration parameters commented here
    • test61: - demand merge in action
    • test08,12,29: - demand merge
    • test34,44 : T-shape profile cutting optimization, ie. \//\
    • test25,33 : solver stopped due to timeouts by app


  • License:
    LGPL
  • Download:
    optest-1.1.zip (2543 KiB)
    Includes source, examples and binaries
  • Changes:
    • 2016-04-25: v1.1
      Refactorings. New examples.
    • 2016-04-10: v1.0
      Initial release