Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

software for calculating optimal cut list on stock?

26 views
Skip to first unread message

Grant Erwin

unread,
Jul 17, 2008, 5:38:41 PM7/17/08
to
I have a problem which cannot be unique to me. I have to cut a whole bunch of
pieces of known length from several lengths of stock. What I need is some
software which will run on a Windows box which can take as input the piece
lengths I need and also the material length (often 20') and tell me how many
lengths of material I need to order and what size pieces to cut out of each
piece of stock.

Does such software exist?

Grant Erwin
Tinyisland Forge
Kirkland, Washington

Jon

unread,
Jul 17, 2008, 5:55:21 PM7/17/08
to
There is a ton of this sort of thing being used by the woodworking industry,
I stumbled across it yesterday

my search was "router software" or something of that nature.

Is anyone aware of a product that competes with v-carve?


"Grant Erwin" <gr...@NOSPAMkirkland.net> wrote in message
news:BZOfk.485$6O4.461@trnddc06...

Joe Pfeiffer

unread,
Jul 17, 2008, 7:38:59 PM7/17/08
to
Grant Erwin <gr...@NOSPAMkirkland.net> writes:

> I have a problem which cannot be unique to me. I have to cut a whole
> bunch of pieces of known length from several lengths of stock. What I
> need is some
> software which will run on a Windows box which can take as input the
> piece lengths I need and also the material length (often 20') and tell
> me how many
> lengths of material I need to order and what size pieces to cut out of each
> piece of stock.

That's actually a variant on the "Knapsack Problem", which is one of
the standard problems we use to teach advanced algorithms. It turns
out that there are pathological cases for which no better solution
is known than just trying all the different possibilities and seeing
which one works best.

> Does such software exist?

It must, though I don't know of it.


>
> Grant Erwin
> Tinyisland Forge
> Kirkland, Washington

I hadn't noticed where you were, before -- I grew up in Juanita (on
Holmes Point Drive, actually)

Pete C.

unread,
Jul 17, 2008, 8:26:48 PM7/17/08
to

I'm sure it exists, not sure what it would be called for linear stock.
On sheet stock it's called a "nesting" program.

Martin H. Eastburn

unread,
Jul 17, 2008, 9:39:03 PM7/17/08
to
Seems to me it is the length of material + kerf = 1 item.
So one could create a spreadsheet that input the material length and the kerf
width and generate n numbers of lines. Then the user looks down and sees
48 = 20.5' so 47 is the number.

Seems like a spreadsheet and an eye could do it nicely.

Martin

Martin H. Eastburn
@ home at Lions' Lair with our computer lionslair at consolidated dot net
TSRA, Endowed; NRA LOH & Patron Member, Golden Eagle, Patriot's Medal.
NRA Second Amendment Task Force Charter Founder
IHMSA and NRA Metallic Silhouette maker & member.
http://lufkinced.com/


----== Posted via Pronews.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.pronews.com The #1 Newsgroup Service in the World! >100,000 Newsgroups
---= - Total Privacy via Encryption =---

Pete C.

unread,
Jul 17, 2008, 10:18:17 PM7/17/08
to

"Martin H. Eastburn" wrote:
>
> Seems to me it is the length of material + kerf = 1 item.
> So one could create a spreadsheet that input the material length and the kerf
> width and generate n numbers of lines. Then the user looks down and sees
> 48 = 20.5' so 47 is the number.
>
> Seems like a spreadsheet and an eye could do it nicely.
>
> Martin

You're assuming a single part length. When you need parts in 4 or 5
different lengths optimally cut from your 20' sticks of material things
get more complicated.

Maxwell

unread,
Jul 17, 2008, 10:57:37 PM7/17/08
to

"Grant Erwin" <gr...@NOSPAMkirkland.net> wrote in message
news:BZOfk.485$6O4.461@trnddc06...

I would be interested in a program like that as well. Any job complex enough
I can't figure in my head, I lay out by dragging and dropping line segments
in a AutoCad. Same with shapes out of sheets. If the material cost and or
quantity is high enough, it's the only way I know.

I considered writing a program for linear lengths a few years ago, but like
Joe mentioned earlier in the thread, all I could figure is just test all the
possibly.


RoyJ

unread,
Jul 17, 2008, 11:33:45 PM7/17/08
to
For the record, the stock optimizer programs I've seen used on wood
boards with random bad spots can be optimized for length, max
utilization of wood, and several other parameters.

A real simple approach is to use a spread sheet. At the top is a series
of rows with a summation of the row at the end. At the bottom is a whole
series of cells with each of the cuts that you need in decimal inches
with kerf allowance. Drag each piece into place stating with the longest.

Drew McEachren

unread,
Jul 18, 2008, 1:27:04 AM7/18/08
to

"Grant Erwin" <gr...@NOSPAMkirkland.net> wrote in message
news:BZOfk.485$6O4.461@trnddc06...
>I have a problem which cannot be unique to me. I have to cut a whole bunch
>of pieces of known length from several lengths of stock. What I need is
>some
> software which will run on a Windows box which can take as input the piece
> lengths I need and also the material length (often 20') and tell me how
> many
> lengths of material I need to order and what size pieces to cut out of
> each
> piece of stock.
>
> Does such software exist?
>

I know of one program that does linear nesting. It is called Romac Nesting.
My steel supplier uses it to determine the best lengths and utilization of
structural beams, tubes, channels, etc. It is pretty vague and basically
spits out a spreadsheet of lengths and drops. I am not real impressed with
this system as of the last structural project that I did. I still had to do
up cut lists for my guys processing. As far as I am concerned the best
hardware/software combo going is the standard equipment between your ears
and at the end of your arms. It just seems these days that everyone is to
lazy to really use or trust it. Amazingly enough, this all used to be done
manually. If you are doing a large enough project and are worried about the
best utilization of material, then have your steel supplier quote you on
providing parts cut to length. Easy, no thinking. If something is wrong
(too short, missing parts, etc) it isn't your problem, it's theirs. "Fix my
problem, I have a deadline and you are putting me behind" More volume =
faster action.

Drew

Grant Erwin

unread,
Jul 18, 2008, 1:40:00 AM7/18/08
to

Marv Klotz's program is working fine. See his post on this topic.

Thanks to all!

Grant Erwin

Bob La Londe

unread,
Jul 18, 2008, 1:26:18 PM7/18/08
to
"Joe Pfeiffer" <pfei...@cs.nmsu.edu> wrote in message
news:1bk5fkj...@snowball.wb.pfeifferfamily.net...

> Grant Erwin <gr...@NOSPAMkirkland.net> writes:
>
>> I have a problem which cannot be unique to me. I have to cut a whole
>> bunch of pieces of known length from several lengths of stock. What I
>> need is some
>> software which will run on a Windows box which can take as input the
>> piece lengths I need and also the material length (often 20') and tell
>> me how many
>> lengths of material I need to order and what size pieces to cut out of
>> each
>> piece of stock.
>
> That's actually a variant on the "Knapsack Problem", which is one of
> the standard problems we use to teach advanced algorithms. It turns
> out that there are pathological cases for which no better solution
> is known than just trying all the different possibilities and seeing
> which one works best.

Kinda like calculating intersects. For some there is no exact answer, just
the level of precision you require?

Bob La Londe

unread,
Jul 18, 2008, 1:26:18 PM7/18/08
to
"Joe Pfeiffer" <pfei...@cs.nmsu.edu> wrote in message
news:1bk5fkj...@snowball.wb.pfeifferfamily.net...
> Grant Erwin <gr...@NOSPAMkirkland.net> writes:
>
>> I have a problem which cannot be unique to me. I have to cut a whole
>> bunch of pieces of known length from several lengths of stock. What I
>> need is some
>> software which will run on a Windows box which can take as input the
>> piece lengths I need and also the material length (often 20') and tell
>> me how many
>> lengths of material I need to order and what size pieces to cut out of
>> each
>> piece of stock.
>
> That's actually a variant on the "Knapsack Problem", which is one of
> the standard problems we use to teach advanced algorithms. It turns
> out that there are pathological cases for which no better solution
> is known than just trying all the different possibilities and seeing
> which one works best.

Kinda like calculating intersects. For some there is no exact answer, just

Grant Erwin

unread,
Jul 18, 2008, 4:11:00 PM7/18/08
to

I was going to order 15 lengths of 1x2x.120" rectangular stainless grade 304
tube. Then I got Marv Klotz's software, and found out I can get by with 13,
plus it gave me the exact cut list to give to the sawyer. Saved me over $300
just for asking!

Grant

Maxwell

unread,
Jul 18, 2008, 4:40:44 PM7/18/08
to

"Grant Erwin" <gr...@NOSPAMkirkland.net> wrote in message
news:Q0Wfk.411$Cw5.197@trnddc01...

>
> Marv Klotz's program is working fine. See his post on this topic.
>
> Thanks to all!
>
> Grant Erwin

Marv Klotz's program? Is it in this tread? I don't see a post from Marv
Klotz.


Joe Pfeiffer

unread,
Jul 18, 2008, 4:42:25 PM7/18/08
to
"Bob La Londe" <nos...@nospam.no> writes:

> "Joe Pfeiffer" <pfei...@cs.nmsu.edu> wrote in message
> news:1bk5fkj...@snowball.wb.pfeifferfamily.net...
>>

>> That's actually a variant on the "Knapsack Problem", which is one of
>> the standard problems we use to teach advanced algorithms. It turns
>> out that there are pathological cases for which no better solution
>> is known than just trying all the different possibilities and seeing
>> which one works best.
>
> Kinda like calculating intersects. For some there is no exact answer,
> just the level of precision you require?

Not really -- calculating intercepts will always have an exact answer,
it just might not be one that's on a ruler (I have yet to find a ruler
that marks the square root of 2!). And even if the answer is on the
ruler, you're still just working to the precision of the ruler.

This is also a problem with an exact answer, the problem is finding it
in a reasonable time.

Grant Erwin

unread,
Jul 18, 2008, 5:03:47 PM7/18/08
to

Marv's free software can be downloaded here:
http://www.myvirtualnetwork.com/mklotz/files/cuts.zip

To use it, uncompress it into a directory and edit the file CUTS.DAT in
that directory. If you have a Windows box, right-click on CUTS.EXE and select
Properties->Program and uncheck "Close on exit".

Within CUTS.DAT, you must specify the (single) length of your stock. For me,
that number is often twenty feet, or 240 inches. If you are working with
lengths that are exactly 20.0' (like some stainless comes) then you may wish
to add a saw kerf to each part length (e.g. add .050").

To run it, I do Start->Run and type in "cmd" which gives me a DOS window.
Navigate to your install directory and type "cuts > cuts.txt". This redirects
the output to go to a text file which you can massage and/or print to make
a cut list. The screen will turn green and blank, and type an 'n' into the
blank screen (answering the question about trying the zero waste case first).
Run time may be extended, the runs I'm doing now on 13 lengths of stock cut
into about 18 different part lengths are going for 3-4 hours on a 9 year old
PC with plenty of memory. When you see the DOS prompt reappear, then, using
a text editor, edit your output file. The name of this file is whatever you
typed in - above, I used "cuts.txt" but you can do whatever you want.

It will take a moment to figure out the format of the output.

I suggest running it on a simple case first, to get the hang of it.

If your run times become excessive, you can split your runs in half by
commenting out first the second half of CUTS.DAT and then the first half,
and doing two different software runs. The run time explodes, so cutting
the data in half can often shorten the run time by a factor of 1000 or more.

There are help pages and you can read the C code if you like.

Grant

Bob La Londe

unread,
Jul 18, 2008, 5:08:09 PM7/18/08
to
"Joe Pfeiffer" <pfei...@cs.nmsu.edu> wrote in message
news:1b7ibih...@babs.wb.pfeifferfamily.net...

Ok, you got me. A practical reachable solution then. LOL.

Martin H. Eastburn

unread,
Jul 18, 2008, 9:30:21 PM7/18/08
to
Even with a varying list of lengths - an array of lengths could be
built and worked off of. It is easy to make the array all of the same number
for the same length. The trick would be the start and end - have two
cells for those pointers.

I think a spreadsheet would be useful. Just a little code in the cells.
And a data base in an array.

Martin

Martin H. Eastburn
@ home at Lions' Lair with our computer lionslair at consolidated dot net
TSRA, Endowed; NRA LOH & Patron Member, Golden Eagle, Patriot's Medal.
NRA Second Amendment Task Force Charter Founder
IHMSA and NRA Metallic Silhouette maker & member.
http://lufkinced.com/

James Waldby

unread,
Jul 18, 2008, 10:24:15 PM7/18/08
to
On Fri, 18 Jul 2008 21:03:47 +0000, Grant Erwin wrote:

> Maxwell wrote:
>> "Grant Erwin" <gr...@NOSPAMkirkland.net> wrote in message
>> news:Q0Wfk.411$Cw5.197@trnddc01...
>>
>>>Marv Klotz's program is working fine. See his post on this topic.
>>>
>>>Thanks to all!
>>>
>>>Grant Erwin
>>
>>
>> Marv Klotz's program? Is it in this tread? I don't see a post from Marv
>> Klotz.
>>
>>
>>
> Marv's free software can be downloaded here:
> http://www.myvirtualnetwork.com/mklotz/files/cuts.zip
>
> To use it, uncompress it into a directory and edit the file CUTS.DAT in
> that directory. If you have a Windows box, right-click on CUTS.EXE and
> select Properties->Program and uncheck "Close on exit".

> [...] Run time may be extended, the runs


> I'm doing now on 13 lengths of stock cut into about 18 different part
> lengths are going for 3-4 hours on a 9 year old PC with plenty of

> memory. [...]


> If your run times become excessive, you can split your runs in half by
> commenting out first the second half of CUTS.DAT and then the first
> half, and doing two different software runs. The run time explodes, so
> cutting the data in half can often shorten the run time by a factor of
> 1000 or more.

The zip file also includes CUTLIST.EXE which is supposed to run much
faster. My understanding of certain comments in the code is that
CUTS.EXE does an exhaustive search, while CUTLIST.EXE uses a fast
greedy algorithm that might not provide the absolutely best solution.
My understanding of other comments in the code is that CUTS.EXE
uses a slow greedy algorithm rather than exhaustive search. I
haven't actually run either one, but suggest you try both;
CUTLIST.EXE is supposed to accept the same data file, run faster,
and produce just as good a solution.

REMNANT.EXE, also in the zip file, figures out a cutting list
when you start with different lengths of stock instead of all
the same.
-jiw

0 new messages