I'm a programmer, not a mathmatician. I heard about R, and I'm wondering if anyone can tell me if there is an existing R function that can help with a problem we're currently trying to find an algorithm for. If R is not the answer, but you can recommend a known algorithm, that would help a lot! I'm on a project in a retail corporation, working on a program to assist retail buyers in creating their orders. The program will be used internally, and not sold to other companies. In retail terms, the problem is to determine the best assortment of case packs to order for a given store, and given a set of desired quantities for each size of a product. A case pack is a set of sizes that the supplier assembles. The retailer must order in whole case packs. For example, For a given shoe style, in the color brown, a supplier has the following case packs available. Sizes - > XS S M L XL XXL XXXL CasePack profiles: cp1 1 3 5 4 2 1 0 cp2 0 2 2 2 0 0 0 cp3 0 2 3 3 1 0 0 cp4 2 4 5 5 4 1 0 And, for a given store, the retailer has determined the following set the desired quantites of sizes to purchase. (This determination is based on sales history, and is not at all based on what the case packs for this item look like.) Sizes - > XS S M L XL XXL XXXL 4 10 14 12 7 3 0 The question to be answered is, What set of quantities of the above case packs will give me the closest distribution to the desired set of sizes? The output would be a single recommendation for case-pack order quantities, in a form like the following. Case pack Quantity cp1 0 cp2 3 cp3 2 cp4 1 There will be some other factors that may operate outside of the above core problem: There may be limits on the quantity available on some of the case packs. For instance, the supplier only has ten available of cp2. It seems this factor will need to be considered in the core algorithm. We realize we'll need to apply tolerance levels to the calculation. For example, for this shoe style, we will accept the solution if it comes to within 10% (plus or minus) of our desired quantities on each size. We may also apply a minimum. For example, the solution must have at least 1 of each size having a nonzero quantity. Thanks for any help! -- View this message in context: http://www.nabble.com/retail-case-pack-ordering-problem---can-R-help--tp21422054p21422054.html Sent from the R help mailing list archive at Nabble.com. [[alternative HTML version deleted]]
Stephan Kolassa
2009-Jan-12 21:59 UTC
[R] re tail case-pack ordering problem - can R help?
Hi gbh22, your problem looks a lot like a Cutting Stock Problem, http://en.wikipedia.org/wiki/Cutting_stock_problem Here, a_ij is your case pack profiles (how many of size j are in case pack i), x_i counts how many units of case pack i you want, and q_j counts how many units of size j you want. The Cutting Stock Problem then minimizes \sum c_ix_i subject to \sum a_ijx_j>=q_j for all j, where c_i is some penalty parameter for case pack i. Perhaps you could model c_i as the price of case pack i, then you would minimize the total cost (while disregarding any leftover shoes). I'm sure variations have been looked at in the literature. I'd suggest you look at the literature cited in the Wikipedia article. In fact, this problem has been on my radar for a while now, though not with high priority. I'm in software for retail, not in retail itself: http://www.saf-ag.com. I'd love to discuss any solution approaches with you, if you are interested. Good luck with your case packs! Stephan Kolassa gbh22 schrieb:> I'm a programmer, not a mathmatician. I heard about R, and I'm wondering if > anyone can tell me if there is an existing R function that can help with a > problem we're currently trying to find an algorithm for. If R is not the > answer, but you can recommend a known algorithm, that would help a lot! > > > I'm on a project in a retail corporation, working on a program to assist > retail buyers in creating their orders. The program will be used internally, > and not sold to other companies. > > > In retail terms, the problem is to determine the best assortment of case > packs to order for a given store, and given a set of desired quantities for > each size of a product. A case pack is a set of sizes that the supplier > assembles. The retailer must order in whole case packs. > > > For example, > > For a given shoe style, in the color brown, a supplier has the following > case packs available. > > > Sizes - > XS S M L XL XXL XXXL > CasePack profiles: > cp1 1 3 5 4 2 1 0 > cp2 0 2 2 2 0 0 0 > cp3 0 2 3 3 1 0 0 > cp4 2 4 5 5 4 1 0 > > > And, for a given store, the retailer has determined the following set the > desired quantites of sizes to purchase. (This determination is based on > sales history, and is not at all based on what the case packs for this item > look like.) > > > Sizes - > XS S M L XL XXL XXXL > 4 10 14 12 7 3 0 > > > The question to be answered is, What set of quantities of the above case > packs will give me the closest distribution to the desired set of sizes? > > > The output would be a single recommendation for case-pack order quantities, > in a form like the following. > > > Case pack Quantity > cp1 0 > cp2 3 > cp3 2 > cp4 1 > > > There will be some other factors that may operate outside of the above core > problem: > > > There may be limits on the quantity available on some of the case packs. For > instance, the supplier only has ten available of cp2. It seems this factor > will need to be considered in the core algorithm. > We realize we'll need to apply tolerance levels to the calculation. For > example, for this shoe style, we will accept the solution if it comes to > within 10% (plus or minus) of our desired quantities on each size. > We may also apply a minimum. For example, the solution must have at least 1 > of each size having a nonzero quantity. > > > Thanks for any help! > >