MakerSlider – Fun With Bin Packing

I did not give a lot of in depth thought when choosing the MakerSlide extrusion length to purchase.  I did not want a lot of waste, so I just bought the largest piece I could handle.  I figured 6″-12″ average waste on each piece could be expected.  The longer the piece, the less percentage that would be.

The manufacturing size limit was set by the anodizer who could only handle about 20 foot lengths.  The limit on my end was about 15 feet.  This was due to what I could realistically cut.  My space is about 27 feet long, so if I put the saw in the middle I could cut most reasonable sizes with a 15 foot length.

When it came time to cut the material, the reward requests came in all over the map on length.  On past projects I had used some simple logic to fit the pieces into the stock, but that was yielding some serious waste now.  I dreaded the thought of 10-15% waste and little chunks lying all over the shop.  I had heard about cut optimization software and decided to look into it.

It turns out that there is pretty well established math behind this.  There is a good article on Wikipedia about it.  It is generally called the Bin Packing problem.  There are 1D (length, like my problem), 2D (area, like out of a sheet) and 3D (volume, like boxes in a container) problems that can be solved.

I tried a bunch of freeware, shareware and demo software.  I was really impressed with the results.  They did not always yield the same results, but generally agreed within about a percent.  The choice came down to a flexibility and a few key features.  I did not have the time to roll my own solution from free software libraries, but I knew I wanted to do some customizing.  I decided to go with an Excel add on from Optimalon.  The Excel format allowed a lot of quick macros and imports to be easily added.

The software allows you add in a number of stock lengths.  This allows me to put in the standard raw lengths, but also some scraps that might be able to be used.  You enter the cuts by length, quantity and ID.   The ID can be used to determine what customer the part belongs to.

One feature I wanted was a way to label all the parts.


I have several Dymo label printers that I use extensively.  I wanted to automatically print labels from the software.  I found that Dymo had an SDK.  The optimization software prints a cut table for each piece.  I feed this table to an macro that uses the label printer.

This string of labels is now my cut list for each piece of stock.  I print one string per piece of stock.  A single persons parts are usually scattered among several pieces of stock, so this helps sort it out later.

So far the software works great.  The more varied the lengths, the better it does.  My target is in the upper 90’s for yield.  So far I have found it does really well including some 100% utilizations where the last saw cut is less than the kerf of the blade.  Here is a typical final cut piece.

The only drawback is that the cuts are optimized for material usage and not cutting efficiency, so you are often moving the saw stop on every cut.  If I CNC the cutter, this will not be a problem and Excel can drive the cutter.



Share and Enjoy:
  • Print
  • Digg
  • StumbleUpon
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

1 Response to “MakerSlider – Fun With Bin Packing”

  1. Interzen

    You don’t really need to fully automate your saw. You need an auto-feeder for your material.

    the device would Mounts to one side of your blade at a close measured distance. Feed in the stock from the other side. It would sense the material entering past an optical beam or by a micro switch and auto feed the length of the first cut minus blade to feeder offset.

    You could even incorporate v-bearings into the auto-feed jig to keep material square to the blade. I’m sure a couple driven wheels spring tensioned on either side below the rails would be enough to drive it.