Optimization Application Demo

How to Solve the Cutting Stock Problem with Multiple Master Rolls Using Gurobi

Video Tutorial

This tutorial provides an overview of the Gurobi Optimization Application Demo by illustrating one related to a cutting stock problem with multiple master rolls.

Introduction to the Cutting Stock Problem with Multiple Master Rolls

Let’s look at a simple example of a paper mill that needs to minimize operating costs while facing certain constraints. The mill supplies paper rolls or “final rolls” to customers that are cut from several master rolls of different widths. The width of a master roll defines a master roll type.

The need is to generate a master roll cutting plan that minimizes the cost of cutting and procuring master rolls consumed to satisfy all the demand of the final rolls.

For each master roll type, there is a per-unit cutting cost and an initial inventory available at the beginning of the planning horizon. Extra master rolls of each type can be bought at a procurement cost. There is aggregate demand for smaller rolls (final rolls) cut from a master roll. The width of a final roll defines a demand type. Master rolls are then cut into final rolls in order to meet demand.

We assume that there is a single machine that cuts the different types of master rolls to satisfy the aggregate demand of final rolls. The machine has a specific number of usable knives to cut the master roll. The number of knives in the machine limits the possible cutting configurations.

After a master roll is cut, the left-over (spare) roll may be re-usable if the spare roll width is larger than a specified threshold width.


Cutting Patterns of Master rolls to fill the demand of Final rolls:


The paper provides an overview of the Gurobi Optimization Application Demo by illustrating one related to a cutting stock problem with multiple master rolls.


To access the cutting stock optimization application just register at www.gurobi.com and go to https://demos.gurobi.com/cutstock. You can create your scenario using your own data from a blank template or you can play with existing default scenarios. Please access this whitepaper to read full instructions on how to use the optimization application demo.


Machine Learning vs Mathematical Optimization

This cutting stock problem is an example of combinatorial optimization problems that cannot be attacked with machine learning techniques due to the astronomical number of possibilities in the solution space. Also, open source optimization solvers do not scale to real size cutting stock problems.

When Gurobi and machine learning join forces, the possibilities for data scientists are endless. Leading companies around the world use Gurobi to set schedules, evenly distribute resources, and generally save a lot of time, money, and headaches.

Access a whitepaper with full instructions to create your own cutting stock problem scenario

Contact Us

We’re happy to assist you. Please contact us using this form, and a Gurobi representative will get back to you shortly.

  • Free Consultations
  • General Inquiries
  • Gurobi Optimizer Questions

Can’t view the form? Please email us at sales@gurobi.com.

Thank you! The information has been submitted successfully.

MIP Basics

Mixed Integer Programming Basics

LP Basics

Linear Programming Basics

Code Examples

Functional Code Examples

Supported Modeling and Programming Languages

Maximize your productivity by tapping into our wide range of programming and modeling languages.
Object-oriented interfaces for C++, Java, .NET, and Python
Matrix-oriented interfaces for C, MATLAB® and R
Links to standard modeling languages: AIMMS, AMPL, and MPL
Links to Excel through Premium Solver Platform and Risk Solver Platform

Whether you are building a new model or migrating existing setup, Gurobi delivers superior performance. All object and matrix-oriented interfaces are implemented as lightweight APIs.Beyond core performance, we’ve added a broad range of additional features to help users easily build and solve better models in less time. You can learn more on our Technical Features and Detail page.