Solving a Real-World Glass Cutting Problem

We consider the problem of finding two-dimensional cutting patterns for glass sheets in order to produce rectangular elements requested by customers. The number of needed sheets, and therefore the waste, is to be minimized. The cutting facility requires three-staged guillotineable cutting patterns, and in addition, a plan for loading produced elements on transportation wagons. The availability of only three loading docks for wagons imposes additional constraints on the feasibility of cutting patterns. We describe a greedy first fit heuristic, two branch-and-bound based heuristics, and different variants of an evolutionary algorithm for the problem, and compare them on a set of real-world instances. The evolutionary algorithm is based on an order representation, specific recombination and mutation operators, and a decoding heuristic. In one variant, branch-and-bound is occasionally applied to locally optimize parts of a solution during decoding.