Skip to content

Cutting Optimizer

Solve the rebar cutting problem — given a list of bars to cut + length of stock bars, output an optimized cutting plan (least waste).

Use cases: rebar estimation for construction projects, sheet metal cutoff, plywood, plastic pipes, lumber, etc.

Open dialog

DVD Cons → group Cutting → click Cut Optimizer.

Workflow

Step 1 — Open template

DVD Cons → group CuttingCutting Template (opens RebarCutOptimizer.xlsx).

The template has:

  • Sheet Input — list of bars to cut + stock configuration.
  • Sheet Output — cutting result after running.
  • Sheet Summary — total waste, efficiency.

Step 2 — Fill the Input table

Table 1: Bars to cut

CodeLength (m)QuantityGroup
D16-A3.250A
D16-B2.830A
D16-C1.5100A
D20-A4.520B
............
  • Code: bar segment name (e.g. beam axis 1, column floor 2).
  • Length: bar length needed (m or mm — must be consistent).
  • Quantity: how many bars of that size.
  • Group: same group = same diameter / same stock bar.

Table 2: Stock bar configuration

GroupStock length (m)Cut kerf (mm)End trim (mm)
A11.730
B11.730
  • Stock length: typically 11.7m for rolled rebar in Vietnam.
  • Cut kerf: usually 1-3mm (saw blade).
  • End trim: if you must cut off both ends (rust, bent).

Step 3 — Run Cut Optimizer

DVD Cons → Cut Optimizer → dialog opens:

  • Input bars range — select Table 1.
  • Stock config range — select Table 2.
  • Output sheet — sheet to write results.
  • Algorithm:
    • First-Fit Decreasing (default, fast) — sort bars descending, place into the first stock with room.
    • Best-Fit Decreasing — choose stock with the smallest leftover.
    • Genetic Algorithm (slow, more optimal) — runs 1000 generations.
  • Goal: minimize waste / minimize stock bars used.
  • Min reusable scrap (default 1m) — scrap ≥ this length is kept for next cutting (saved to virtual stock).

Click Calculate.

Step 4 — Read the result

Sheet Output:

Stock #Cut 1Cut 2Cut 3Waste (m)
Stock 1D16-A (3.2)D16-A (3.2)D16-B (2.8)2.5
Stock 2D16-A (3.2)D16-B (2.8)D16-C (1.5) × 30.7
...............

Sheet Summary:

  • Total stock bars needed.
  • Total waste (m).
  • Efficiency (%) = (sum cut lengths) / (sum stock lengths).
  • Waste distribution by length (histogram showing how much can be reused).

Advanced options

Mix groups in same stock

Allow bars from different groups in the same stock (if same diameter). Default Off — keeps beam/column/floor segments separated.

Prioritize long bars first

Default On — sort bars longest first. Usually produces better results than the reverse.

Use scrap from inventory

If the inventory has leftover scrap (e.g. 50 segments of 3.5m), add it to a table:

Inventory CodeLength (m)Quantity
INV-3.5m3.550
INV-2.8m2.812

Tick Use scrap inventory in the dialog → algorithm prioritizes cutting from inventory before using fresh stock.

Typical workflow

  1. Open Cutting Template.
  2. Paste bar list from Project / Revit / BIM tool into Input sheet.
  3. Set stock length = 11.7m, kerf = 3mm.
  4. Click Cut Optimizer.
  5. Print Output sheet for the on-site crew (one stock = one cutting slip).
  6. Save Summary sheet to report to project leadership.

Troubleshooting

"No bars found to cut"

  • Input table "Length" or "Quantity" column empty/wrong format.
  • Bar length > stock length → unsolvable (would need splicing — not supported).

Different results between runs

  • Genetic Algorithm has randomness — re-running may differ. That's normal.
  • With First-Fit / Best-Fit, results are deterministic.

Very low efficiency (< 80%)

  • Some bars longer than 50% of stock length → hard to combine with others.
  • Try Genetic Algorithm (slower but 5-15% better).
  • Or allow mixing groups.

License gating

Cut Optimizer requires an active license (Activated or Trial). Template (open template) is free.

Released under DVDAddin License.