A practical guide to 1D cutting optimization for profiles, tubes, pipe, and lumber, with a fully worked example you can check on a calculator.
Aluminum profiles usually come in fixed stock lengths such as 6000 mm (about 20 ft). A window, door, or frame order is a list of part lengths and quantities. The question is always the same: how do I cut these parts from as few bars as possible, with the least scrap?
This is called the one-dimensional (1D) cutting stock problem. Only length matters, so you do not need CAD. You need a clear method. The same method works for steel tube, pipe, trim, and lumber.
Say you have 6000 mm profile bars, a saw blade that removes 3 mm per cut, and this order:
| Part length | Quantity | Total length |
|---|---|---|
| 2400 mm | 4 | 9600 mm |
| 1600 mm | 3 | 4800 mm |
| 600 mm | 3 | 1800 mm |
| 500 mm | 3 | 1500 mm |
| Total | 13 parts | 17700 mm |
Add one blade width for every part (a simple, safe rule), then divide by the stock length:
17700 mm + 13 × 3 mm = 17739 mm
17739 ÷ 6000 = 2.96 → at least 3 bars
No plan can use fewer than 3 bars. Now we check whether 3 is actually possible.
A common habit is to cut parts in the order they appear on the sheet (here, shortest first) and start a new bar when the next part does not fit. With 3 mm added to each part, that gives:
That is 4 bars (24000 mm of stock) for 17700 mm of parts.
First-fit decreasing (FFD) is the classic manual method:
Walking through it:
Same order, 3 bars instead of 4. Since Step 1 showed that 3 is the minimum, this plan cannot be beaten on bar count.
Waste % = (stock used − finished parts) ÷ stock used × 100
| Method | Bars | Stock used | Waste (offcuts + kerf) | Waste % |
|---|---|---|---|---|
| List order | 4 | 24000 mm | 6300 mm | 26.25% |
| First-fit decreasing | 3 | 18000 mm | 300 mm | 1.67% |
In the FFD plan, the 300 mm of waste is 39 mm of saw kerf (13 cuts × 3 mm) plus 261 mm of offcuts (88 + 88 + 85). You save a full 6 m bar on a 13-part order.
FFD by hand is fine for 13 parts. For a real job with dozens of lengths and several orders, it becomes slow and easy to get wrong. CutOptimizer is a Windows desktop app that does this planning for you:
$29.99 one-time purchase, with a free trial. Try it on your next order list and compare the result with your current plan.
Get CutOptimizer on Microsoft StoreAdd up all part lengths, add one blade width for every cut, and divide by the stock length. Round up to get the minimum number of bars. A real plan may need more, because pieces must fit into whole bars.
Sort parts from longest to shortest, then place each part into the first bar that still has room. Open a new bar only when no existing bar has room. It is easy by hand and usually beats cutting in list order.
Measure your blade's actual cut width. By hand, add it to every part length: with a 3 mm blade, a 600 mm part uses 603 mm of the bar. In CutOptimizer you just set the saw blade width and every plan includes it automatically.
(Stock used − finished parts) ÷ stock used × 100. Example: 3 bars × 6000 mm = 18000 mm, parts = 17700 mm, waste = 300 mm, so 1.67%.
Yes. CutOptimizer imports stock and demand lists from Excel, lets you set your saw blade width (kerf), calculates 1D cutting plans in fast heuristic or exact mode, shows a diagram for each stock piece, and exports a PDF worksheet. It is $29.99 one-time on the Microsoft Store, with a free trial.