October 25, 2011 8:31 PM Subscribe

How do I analyze 7 years of past orders to determine how to best organize my 6 shelves of widgets for packing future orders? Each shelf should, on average, be picked from equally.

I have a warehouse of 400 SKUs. Crates of these SKUs are stored on 6 shelving units. To pack orders, I send an empty box along a conveyor belt past these 6 shelves. Each shelving unit is staffed by a worker who will place appropriate widgets into the boxes.

In order to not over (or under) work any of the staff, I want to arrange the widgets so that each shelf is used about the same amount. For example, if I knew that most orders contain item 1000 and item 1001, I would want those items on different shelves.

Continuing along this line of reasoning, I suspect I just need to organize a list of SKUs by popularity, and then arrange such that shelf 1 gets the 1st, 7th, 13th, etc popular item, shelf 2 gets the 2nd, 8th, 14th, etc popular item, and so on from there. Is this the best way? Is this a common problem in mathematics, and if so, is there a name for it?

For bonus points, I would potentially like to only have a subset of my stock out at a time, and then only pack orders with those widgets. I imagine that having smaller shelves will make it easier/quicker to identify the proper widget. If I do this, is there a way to determine the most efficient selection of SKUs to have out at time?
posted by Nonsteroidal Anti-Inflammatory Drug to Grab Bag (9 answers total) 7 users marked this as a favorite

I have a warehouse of 400 SKUs. Crates of these SKUs are stored on 6 shelving units. To pack orders, I send an empty box along a conveyor belt past these 6 shelves. Each shelving unit is staffed by a worker who will place appropriate widgets into the boxes.

In order to not over (or under) work any of the staff, I want to arrange the widgets so that each shelf is used about the same amount. For example, if I knew that most orders contain item 1000 and item 1001, I would want those items on different shelves.

Continuing along this line of reasoning, I suspect I just need to organize a list of SKUs by popularity, and then arrange such that shelf 1 gets the 1st, 7th, 13th, etc popular item, shelf 2 gets the 2nd, 8th, 14th, etc popular item, and so on from there. Is this the best way? Is this a common problem in mathematics, and if so, is there a name for it?

For bonus points, I would potentially like to only have a subset of my stock out at a time, and then only pack orders with those widgets. I imagine that having smaller shelves will make it easier/quicker to identify the proper widget. If I do this, is there a way to determine the most efficient selection of SKUs to have out at time?

If you don't know what a frequency histogram is, see here for lots of resources....

posted by dfriedman at 9:11 PM on October 25, 2011

posted by dfriedman at 9:11 PM on October 25, 2011

Calculate your sales volume for all SKUs combined (example: 1200 widgets per month). Divide by six. This is your goal picking volume per shelving unit (example: 200 widgets per month from each unit). Separate your SKUs into six groups as best you can so that the individual sales rates of the SKUs, added together by group, most closely matches your goal rate per shelving unit (example: item #1 [150 sold per month] goes on the same shelving unit as items #20 [30 sold per month] and #45 [20 sold per month] for a total of 200 items picked per month from that unit.

This may not maximize space efficiency.

posted by thirteenkiller at 9:12 PM on October 25, 2011

This may not maximize space efficiency.

posted by thirteenkiller at 9:12 PM on October 25, 2011

The general problem goes under various names including "inventory picking strategy", "order picking operations" and the most useful analytic tool for the problem appears to be "activity profiling" which sometimes include "item velocity".

Although the problem is relatively easy to define, the various approaches are — by their nature — heuristic and therefore non-optimal. However, even with sub-optimal you can do far better than just guessing.

Unfortunately, the real world is very messy and things like the Pareto principle (e.g. 80% of the orders contain 20% of the SKUs, etc.) and general variance push this out of the realm of mathematical optimization and into practical satisficing (or "good enough" answers).

There is a huge literature on the subject with Frazelle appearing to have written a bible on the subject.

posted by fydfyd at 9:17 PM on October 25, 2011

Although the problem is relatively easy to define, the various approaches are — by their nature — heuristic and therefore non-optimal. However, even with sub-optimal you can do far better than just guessing.

Unfortunately, the real world is very messy and things like the Pareto principle (e.g. 80% of the orders contain 20% of the SKUs, etc.) and general variance push this out of the realm of mathematical optimization and into practical satisficing (or "good enough" answers).

There is a huge literature on the subject with Frazelle appearing to have written a bible on the subject.

posted by fydfyd at 9:17 PM on October 25, 2011

I think you're definitely right in wanting to find a way to even out the time the empty box spends at each shelf getting filled with widgets. The empty boxes will move along the conveyer belt only at the rate of the slowest station.

The other factor you'll want to try to take into account is to minimize the variance or uncertainty in filling an order at an individual shelf station. It turns out that uncertainty in a queueing system can be an even more important factor and really kill the total throughput rate much more than human intuition would expect.

As far as what assortment to put on each shelf, that's a really tough question. Your demand probably follows a pareto curve where the top 20% of your skus account for 80% of sales. I think you would have to take a close look at the composition of your orders over the last 7 years. Do most people order just the popular sku's and that's it? Or do most orders include one of the rarely sold sku's as well?

posted by Gosha_Dog at 9:19 PM on October 25, 2011

The other factor you'll want to try to take into account is to minimize the variance or uncertainty in filling an order at an individual shelf station. It turns out that uncertainty in a queueing system can be an even more important factor and really kill the total throughput rate much more than human intuition would expect.

As far as what assortment to put on each shelf, that's a really tough question. Your demand probably follows a pareto curve where the top 20% of your skus account for 80% of sales. I think you would have to take a close look at the composition of your orders over the last 7 years. Do most people order just the popular sku's and that's it? Or do most orders include one of the rarely sold sku's as well?

posted by Gosha_Dog at 9:19 PM on October 25, 2011

If, for instance, items A and B are sold together 80 percent of the time, it might make sense to stock them close together. That might save time in the picking and packing.

posted by maurreen at 10:45 PM on October 25, 2011

posted by maurreen at 10:45 PM on October 25, 2011

If you're comfortable with fairly complex spreadsheets, here's an idea:

Devise a number of possible shelf organising strategies that sound sensible.

Put (some of) your past order data in a spreadsheet.

For each strategy, make a section on the spreadsheet with each item assigned to a shelf

Fix up the spreadsheet to tell you what shelf utilisation would have been like for those past orders with that shelf configuration.

posted by emilyw at 1:46 AM on October 26, 2011

Devise a number of possible shelf organising strategies that sound sensible.

Put (some of) your past order data in a spreadsheet.

For each strategy, make a section on the spreadsheet with each item assigned to a shelf

Fix up the spreadsheet to tell you what shelf utilisation would have been like for those past orders with that shelf configuration.

posted by emilyw at 1:46 AM on October 26, 2011

The way you have described dividing them would make shelf A the most popular and shelf F the least popular. To get a better balance, you need to order them this way:

A 1 12

B 2 11

C 3 10

D 4 9

E 5 8

F 6 7

so they all average out to 6.5 popularity. This is usually called an optimization problem.

posted by soelo at 1:53 PM on October 26, 2011

fydfyd: That's exactly the kind of answer I was hoping to get. I'm usually pretty good at digging up solutions to problems, but I had no clue how to describe any of this. Now that I have some keywords (and a textbook on the way!), this should be a lot easier to wrap my head around.

Everyone else, thanks for the various suggestions, and for catching a few problems with my approach. You've all been really helpful.

posted by Nonsteroidal Anti-Inflammatory Drug at 9:29 AM on October 27, 2011

Everyone else, thanks for the various suggestions, and for catching a few problems with my approach. You've all been really helpful.

posted by Nonsteroidal Anti-Inflammatory Drug at 9:29 AM on October 27, 2011

This thread is closed to new comments.

posted by dfriedman at 9:10 PM on October 25, 2011