US20110276364A1 - Method and System for Optimizing Store Space and Item Layout - Google Patents
Method and System for Optimizing Store Space and Item Layout Download PDFInfo
- Publication number
- US20110276364A1 US20110276364A1 US12/773,617 US77361710A US2011276364A1 US 20110276364 A1 US20110276364 A1 US 20110276364A1 US 77361710 A US77361710 A US 77361710A US 2011276364 A1 US2011276364 A1 US 2011276364A1
- Authority
- US
- United States
- Prior art keywords
- item
- items
- facing
- multiplicity
- choice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A method in a computer system for generating an efficient item assortment associated with a plurality of items includes obtaining choice set data specifying a multiplicity of choice sets associated with the plurality of items, where each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable, obtaining item interaction data descriptive of substitutions between pairs of items in each of the multiplicity of choice sets, obtaining a set of benefit metrics associated with the plurality of items, obtaining a constraint parameter associated with the item assortment, and generating an item selection based at least on the item interaction data, the set of benefit metrics, and the constraint parameter, where the item selection identifies at least one of the plurality of items selected for inclusion in the item assortment.
Description
- 1. Field of the Disclosure
- This disclosure relates generally to optimizing store space and, in particular, to developing efficient assortment and merchandizing fixture layout for a plurality of items.
- 2. Background Description
- To increase profits and improve customer experience, retailers often develop diagrams that specify where and in what quantity items should be placed on shelves, in slots of vending machine, or on a sales floor. These diagrams are known as planograms or POGs. In general, the development of a planogram includes generating a selection of items for inclusion in a planogram (known as product assortment), and determining relative placement of these items within the planogram (known as item layout). While a relatively effective planogram for two or three items may be generated manually by simply trying various combinations and relying on subjective judgment, developing a planogram for tens or hundreds of items is a highly complicated task.
- Generally speaking, planogram development is difficult due to numerous factors that affect the profitability of a particular arrangement of items. For example, shelf or floor space is typically limited, items usually have different physical dimensions, shelves often vary in width and depth, the sale of different items generates different profits, etc. Moreover, retails may have numerous requirements with respect to certain items such as mandatory presence on a shelf, restrictions on how proximate certain items may be relative to other items, requirements that heavy items must be placed on lower shelves, etc. Legal restrictions on item assortment may also apply in certain situations, e.g., a restriction on sale of toy guns in California. Further, restrictions may also apply to groups or categories of items.
- In addition to multiple parameters with which items may be associated, and various restrictions or rules that may apply to the items individually or collectively, selection and placement of items in a retail area may result in different aesthetic effects due to color schemes, positioning of items relative to each other, etc. Also, the quality of a shopping experience may be affected by how easily a customer can locate a desired item or a suitable substitute on a shelf, how comfortable a customer is when browsing the selection, and similar factors.
- In another aspect, customers often select an item from among several similar selections. Thus, by selecting a certain item on a shelf, a customer often foregoes another one or several selections. Further, when a customer cannot find the desired item on the shelf, he or she may purchase a substitute, while another customer will not accept a substitute and will not make a purchase at all. For these reasons, developing an efficient planogram that satisfies every relevant rule, generates a high profit, and addresses customers' needs remains very complicated.
- A computer system receives a description of a group of items including a set of spatial, financial, and other parameters for each item. The computer system further receives item interaction data descriptive of which items compete with each other, which items are bought together (i.e., display affinity), etc. to groups some items together as choice sets. Also, the computer system receives business rules that require or invalidate certain combinations of items, mandate placement of certain items in specified quantities on the shelves, and generally specify requirements on the level of an individual item or a choice set. The computer system may also receive historical data that includes transfer probabilities, i.e., probabilities that a customer who prefers a certain item purchases a specified other item instead. Further, the computer system may receive a set of parameters of an area, such as a retail area, for example, to hold the assortment of items. In an embodiment, the parameters include spatial constraints for each sub-area (e.g., a merchandizing fixture such as a store shelf) associated with the area. Using the received data, the computer system generates an efficient assortment of items that optimizes the overall expected profit. In at least some of the embodiments, the computer system further generates a layout of the assortment.
- In at least some of the embodiments, the system includes a choice set generator to obtain several choice sets, each including multiple items, at least some of which are substitutable. In an embodiment, the system also includes a choice set splitter to reduce a size of some of the larger choice set by splitting these sets according to a specified criterion. The system further includes a facing combination generator to enumerate possible facings in each choice set, and a profit calculator to calculate the amount of expected profit for each facing combination.
- In some embodiments, the profit calculator implements one or several of a linear programming technique, simulation with full replacement, and simulation with partial replacement. The linear programming technique may be consistent with a greedy optimization approach. The simulation technique may involve executing multiple iterations of a simulated arrival of a group of customers, attempted selection of a preferred item by each customer, and a selection of a replacement item if the primary selection is unavailable. The selection of the replacement item may be simulated using transfer probabilities and historical sales data.
- In at least some of the embodiments, the system further includes components to format profit and space-constraint metrics for each facing combination in accordance with a generic optimization problem, and to solve the problem using a suitable mathematical technique such as a knapsack problem solution. The system may further include a multiple knapsack problem to optimally break up the solution for the general area constraint into several solutions for each sub-area, e.g., shelf.
- In some embodiments, the system further includes a layout optimizer to improve the layout of the generated assortment. The layout optimizer may include a first component to efficiently block (place close together) items in accordance with a set of business rules, and a second component to sort the items within each block or across blocks, if desired. The layout optimizer may further include a control to adjust the layout in view of shoppability and profitability of the items.
- In one embodiment, a method in a computer system for generating an efficient item assortment associated with a plurality of items includes obtaining choice net data specifying a multiplicity of choice sets associated with the plurality of items, such that each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable, obtaining item interaction data descriptive of substitutions between pairs of items in each of the multiplicity of choice sets, obtaining a set of benefit metrics associated with the plurality of items, obtaining a constraint parameter associated with the item assortment, and generating an item selection based at least on the item interaction data, the set of benefit metrics, and the constraint parameter; where the item selection identifies at least one of the plurality of items selected for inclusion in the item assortment.
- In another embodiment, a system for generating an efficient item assortment associated with a plurality of items includes a storage unit to store a plurality of profit metrics, such that each of the plurality of profit metrics corresponds to a respective one of the plurality of items, a choice set generator to generate choice set data specifying a multiplicity of choice sets associated with the plurality of items, where each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable, a demand transfer matrix generator to receive item interaction data descriptive of substitutions between pairs of items in each of the multiplicity of choice sets, and to generate a respective demand transfer matrix for each of the multiplicity of choice sets to define a set of demand transfer matrices, where each demand transfer matrix includes a respective substitutability metric for each pair of items in the corresponding choice set, and a combinatorial problem solver communicatively coupled to the storage unit, the choice set generator, and the demand transfer matrix generator to obtain a global constraint parameter and to generate an item selection based at least one on the set of demand transfer matrices, the plurality of profit metrics, and the global constraint parameter.
- In another embodiment, a method in a computer system for generating an efficient item assortment associated with a plurality of items, to be disposed in a retail area having a plurality of regions, includes receiving item data that includes, for each of the plurality of items, a first metric associated with a physical parameter of the item and a second metric indicative of profitability of the item, receiving retail region data that includes a plurality of metrics, where each of the plurality of metrics is associated with the physical parameter of a respective of the plurality of regions, receiving choice set data specifying a multiplicity of choice sets, where each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable, receiving item interaction data that includes, for each of the multiplicity of choice sets, a metric of substitutability between items in the corresponding choice set, generating a multiplicity of lists of facing combinations, where each of the multiplicity of lists corresponds to a respective one of the multiplicity of choice sets, and where each facing combination in each of the multiplicity of lists includes one or several facings of at least one of the items in the corresponding one of the multiplicity of choice sets, calculating at least a profit metric and a physical parameter metric for each facing combination in each of the multiplicity of lists of facing combinations based on the first metric and the second metric of each item included in the facing combination and the interaction data associated with the corresponding choice set, and selecting zero or more facing combinations from each of the multiplicity of lists of facing combinations to generate a selection so as to maximize a total profit associated with the selection in view of the retail region data and the first metric of each item included in the selection.
- In another embodiment, a method in a computer system for generating an efficient item assortment associated with a plurality of items includes obtaining a first plurality of parameters, where each of the first plurality of parameters includes a benefit metric of a respective one of the plurality of items, obtaining a constraint parameter associated with the item assortment, generating a plurality of facing combinations, each including one or more facings of one or more of the plurality of items, generating a second plurality of parameters using the first plurality of parameters, where each of the second plurality of parameters includes a benefit metric of a respective one of the plurality of facing combinations, applying a function of the second plurality of parameters, subject to a limitation associated with the constraint parameter, to generate an optimization result, and generating an item selection based on the optimization result. In one operational mode consistent with this embodiment, the constraint parameter is a particular value. In another operational mode, the constraint parameter is a range of values. Further, in some operational modes, applying the function includes maximizing the function to identify the maximum value for the obtained constraint parameter. In another mode, applying the function includes generating multiple values consistent with the constraint parameter, and the optimization result accordingly includes multiple values through which an item selection can be generated.
- In another embodiment, a method in a computer system for generating an efficient item assortment associated with a plurality of items, to be disposed in a retail area having a plurality of regions, includes obtaining a first plurality of parameters, where each of the first plurality of parameters is associated with a respective one of the plurality of items and includes a benefit metric of the respective one of the plurality of items indicative of a financial benefit associated with a sale of one unit of the respective one of the plurality of items, and a spatial metric of the respective one of the plurality of items specifying one of length, width, or height of the respective one of the plurality of items, obtaining a plurality of spatial metrics, each of the plurality of spatial metrics corresponding to a respective one of the plurality of regions of the retail area, obtaining choice set data specifying a multiplicity of choice sets associated with the plurality of items, generating a plurality of facing combinations in accordance with the choice set data, where each of the plurality of facing combinations includes one or more facings of one or more items of a respective one of the multiplicity of choice sets, generating a second plurality of parameters using the first plurality of parameters, where each of the second plurality of parameters corresponds to a respective one of the plurality of facing combinations and includes a benefit metric of the respective one of the plurality of facing combinations indicative of an expected financial benefit associated with including the respective one of the plurality of facing combinations in the item assortment, and a spatial metric of the respective one of the plurality of facing combinations specifying one of length, width, or height of the respective one of the plurality of facing combinations, maximizing a function of the benefit metrics of the second plurality of parameters, subject to a limitation associated with the plurality of spatial metrics, to generate an optimization result, and generating an item selection based on the optimization result.
-
FIG. 1 illustrates an example arrangement of several items in a retail area that includes several shelves. -
FIG. 2 is a block diagram of an example system that implements the techniques for assortment optimization of the present disclosure. -
FIG. 3 is a block diagram that illustrates an example group of facing combinations generated for a certain choice set. -
FIG. 4 is schematic illustration of interaction between two items associated with a certain degree of substitutability. -
FIG. 5A is a matrix that specifies projected sales of a first item for various numbers of supplied units of the first item and the second item. -
FIG. 5B is a matrix that specifies projected sales of the second item for various numbers of supplied units of the first item and the second item used in generating the matrix illustrated inFIG. 5A . -
FIG. 5C is a matrix that specifies projected combined sales of the items used in generating the matrices ofFIGS. 5A and 5B . -
FIG. 5D is the matrix of 5C divided into several regions in accordance with respective facing capacities of the first and the second items. -
FIG. 6A is a block diagram of an example downscaling module which may be used in the system illustrated inFIG. 2 . -
FIG. 6B schematically illustrates an example range of facings downscaled by the module illustrated inFIG. 6A . -
FIG. 7 is a block diagram of an example profit model generator which may be used in the system illustrated inFIG. 2 . -
FIG. 8 is a flow diagram of an example method which the combinatorial problem solver illustrated inFIG. 7 may implement to generate a profitability model using a linear programming technique. -
FIG. 9 is a flow diagram of an example method which the combinatorial problem solver illustrated inFIG. 7 may implement to generate a profitability model using a simulation technique. -
FIG. 10 is a block diagram of an example knapsack problem solver which may be utilized by the combinatorial problem solver illustrated inFIG. 2 . -
FIG. 11 is an example histogram of data which the system illustrated inFIG. 2 may generate when seeking an optimal assortment. -
FIG. 12 is a flow diagram of an example method which the knapsack problem solver illustrated inFIG. 10 may implement to split a total-space solution into several shelves. -
FIG. 13 is a block diagram that illustrates an example division of a solution to a space-constrained combinatorial problem into several regions such as shelves. -
FIG. 14A is a block diagram that schematically illustrates an example random layout of several items. -
FIG. 14B is a block diagram of a layout of the items ofFIG. 14A which has been generated using the techniques described herein. -
FIG. 14C is a block diagram that schematically illustrates sorting of several items within a block. -
FIG. 15 is a block diagram of an example optimizer which may be utilized by the layout optimizer solver illustrated inFIG. 2 . -
FIG. 16 is a flow diagram of an example method for generating an efficient assortment of items. -
FIG. 17 is another flow diagram of an example method for generating an efficient assortment of items. -
FIG. 18 is a graph that illustrates, for an example pair of items, the relationship between the net profit associated with the sale of the items and the total width occupied by the items. -
FIG. 19A is a graph that illustrates, for another pair of example items, the relationship between the net profit associated with the sale of the items and the total width occupied by the items, if a rule that forbids gaps on an occupied merchandizing fixture is applied. -
FIG. 19B is a graph that illustrates, for the pair of items ofFIG. 19A , the relationship between the net profit associated with the sale of the items and the total width occupied by the items, if a rule that allows gaps on an occupied merchandizing fixture is applied -
FIG. 20A is a graph that illustrates, for another group of items, the relationship between the net profit associated with the sale of the items and the total width occupied by the items. -
FIG. 20B illustrates selection of a region of near-optimality for an enlarged section of the graph illustrated inFIG. 20A . -
FIG. 21 is a flow diagram of an example method for generating a near-optimal solution. -
FIG. 1 illustrates a certain arrangement of items on alonger shelf 12 and twoshorter shelves retail area 10. In general, theretail area 10 may include any number of merchandizing fixtures (e.g., shelves, racks, gridwall panels) of the same or different width, and the items may be any types of products packaged in any desired manner. By way of example, however.FIG. 1 depicts several baby care items packaged in rectangular boxes or round (tubular) containers. In particular, severalsmall containers 20A and severallarge containers 20B may contain baby powder,boxes boxes 24A-C may contain diapers for different ages of one or several brands, andcartons 26A-C may contain infant formula from several manufacturers. Thecontainers 20A-B andboxes 22A-B are placed on theupper shelf 12 in this example configuration,boxes 24A-C are on thesecond shelf 14, and the 26A-C are on thebottom shelf 16. Theupper shelf 12 has the width L1 greater than the width L2 of theshelves - An occurrence of an item on a merchandizing fixture such as a shelf along a dimension exposed to customers may be referred to as a facing. Thus, a certain product may have two facings on a shelf, with each facing corresponding to at most five instances of the product that can fit behind each other on the shelf. This maximum number of items that can be associated with a single facing on a particular shelf may be referred to as facing capacity, and the number of times a facing is replenished within a certain time interval may be referred to as the replenishment frequency of the facing.
- In the example arrangement of baby care items depicted in
FIG. 1 , theretail area 10 includes four facings ofsmall containers 20A, three facings of thecartons 26C, two facings of each of thelarge containers 20B, theboxes cartons 26B, and one facing of each of theboxes cartons 26A. As illustrated inFIG. 1 , each facing of theitem 20A-26C is associated with a respective number of units of the item that can fit on one of the shelves 12-16 in a single column, defining the corresponding facing capacity of the item for the shelf depth D. Thus, thelarge containers 20B have the facing capacity of 2, and theboxes middle shelf 14 have respective facing capacities of 8, 7, and 5, for example. - Applying the assortment selection and optimization techniques discussed below, the selection and placement of
items 20A-26C in theretail area 10 may be optimized so as to generate the maximum amount of profit from the sale of these items. In particular, a system such as an assortment and layout optimization system depicted inFIG. 3 may develop several choice sets as sets of items within the group ofitems 20A-26C in which member items may serve as alternatives to other items in the set. The system may then determine and quantify interactions among the items in each choice set to develop a demand model. Using the demand model, and in view of various item attributes, the system may further develop a profit model to generate metrics of profitability for various combinations of facings. In particular, the system may consider spatial dimensions (e.g., length/diameter, width), financial attributes (e.g., gross unit profit, net unit profit), item-specific business requirements (e.g., mandatory presence, minimum and maximum number of facings of the item, minimum and maximum number of units of the item in the retail space), and other parameters of theitems 20A-26C when developing the profit model. The system may then apply the profit model to generate several item combinations and the corresponding profit and spatial metrics for each choice set, represent the generated data in a format consistent with an input to a combinatorial optimization problem such as the so-called knapsack problem, and generate a solution to the combinatorial problem within the specified boundaries. More specifically, the solution specifies an optimal assortment of items for each shelf in theretail area 10 to maximize the profit from the sale of at least some of theitems 20A-26C. As is known, a knapsack problem in general involves a global constraint and a set of elements, each having a certain constraint metric and a benefit metric, and attempts to select elements from the set so as to maximize the benefit without exceeding the global constraint. In at least some of the embodiments, the system further optimizes the layout of the selected facings in response to a user selecting shoppability and profitability levels. In some of these embodiments, the system applies simulated annealing techniques. - Next, an example system that may implement the techniques for optimizing product assortment (such as those outlined above) is discussed with reference to
FIG. 2 , and various aspects of theses techniques are discussed with reference toFIGS. 3-5D . Some of the components illustrated inFIG. 2 , along with the associated methods and several example applications of these methods, are then illustrated in more detail inFIGS. 6A-14 . - Referring to
FIG. 2 , anoptimization system 50 may include aprocessing unit 52 that implements anassortment development engine 54, also illustrated inFIG. 2 in an exploded view. Theprocessing unit 52 generally may be any type of a device having a processor. In some embodiments, theoptimization system 50 may includemultiple processing units 52, and theassortment development engine 54 may be implemented in a distributed manner on some or all of these processing units. Theassortment development engine 54 may be a set of instructions stored in a computer-readable memory. In one embodiment, theprocessing unit 52 includes a memory unit such as a hard drive, andassortment development engine 54 is a software system stored at least partially on the hard drive of theprocessing unit 52. - The
optimization system 50 may also include one orseveral storage units 56A-F to store data related to theitems 20A-26C (as well as other items which may not be included in a planogram for the retail area 10), parameters of theretail space 10, and other relevant information. For clarity of illustration,FIG. 2 depicts each of thestorage units 56A-F as a separate entity. However, it will be noted that although thestorage units 56A-F in some embodiments may be databases implemented on respective physical devices, thedata units 56A-F may also be implemented as separate tables or groups of tables in a single database, as files in the memory of theprocessing unit 52, or in any other suitable manner. Moreover, in some embodiments, item and shelf parameters used by theoptimization system 50 are not stored in a permanent memory at all, and are retained only temporarily in a volatile memory such as a RAM, for example. - The item
data storage unit 56A may store item data that includes a width metric for each item. To take one specific example, theitems 24A-C on theshelf 14 may have the respective widths of 5, 3, and 4 inches, although any other units of measurement also could be used. It will be further noted that for non-rectangular items such as round containers, cylinders, bottles, etc., the width metric may correspond to the diameter of the item. More generally, an item may be logically associated with a geometric solid such as a right hexahedron, for example, into which the item may be inscribed, so that thestorage unit 56A may specify a dimension of the solid suitable for comparison with the width of the corresponding shelf. Also, as discussed in more detail below, the dimensions of certain items can be considered to be adjustable within certain limits (e.g., a soft package that includes several rolls of paper towels can be compressed, if necessary, by one or several inches). - The item data may also specify the range of the allowable number of facings of each
item 20A-26C. To continue with the example above, theitem 24A may have 0, 1, or 2 facings in theretail area 10; theitem 24B may have 0 or 1 facing; and theitem 26C may have 2 or 3 facings. Further, thestorage unit 56A may store a facing capacity of each item. For example, theitems FIG. 1 ). Facing capacity in an alternative embodiment may not be stored in memory at all, but rather be derived from the width metric of a shelf and a corresponding width metric of an item. Still further, thestorage unit 56A in some embodiments may also store the height of each of theitem 20A-26C so that items in relatively tall boxes or other containers can be restricted to the shelves that have an appropriate height capacity. Generally speaking, thestorage unit 56A may store a number of additional physical parameters such as the approximate shape of the item, the weight of the item, etc. - In addition to spatial parameters of the
items 20A-26C, the itemdata storage unit 56A may store financial parameters of each item such as unit price (to the manufacturer or retailer), unit cost (t) consumer), gross unit profit, net unit profit, etc. In general, any financial parameter may be used for optimization, as long as the same metric is used for every item. However, in some situations an analyst may prefer to generate a planogram in which gross profit is maximized, while in other situations the analyst may prefer to maximize net profit. In yet other situations, the analyst may wish to optimize unit sales. For example, an item may be a so-called “traffic driver” that has a tendency to draw customers to other items. Thus, a user interface of theoptimization system 50 preferably includes a control to allow selection of the desired financial metric. - The shelf
data storage unit 56B may store parameters for each of theshelves FIG. 1 , theshelf 12 has the width L1 and the depth D, and each of theshelves data storage unit 56B may also store other shelf parameters such as the maximum amount of weight each shelf may hold, special restrictions for a particular shelf, etc. - With continued reference to
FIG. 2 , the surveydata storage unit 56C and the syndicateddata storage 56D may store survey data and syndicated data, respectively. Together, the survey data and the syndicated data at least partially define consumer behavior and historical sales data descriptive of how customers perceive theitems 20A-26C. More specifically, survey data may include statistics related to how loyal consumers are to their favorite brands (i.e., whether consumers purchase a comparable replacement or “walk” without making a purchase), while syndicated data automatically collected at cash registers, for example, describes how often customers purchase certain items together, how likely customers are to repeat the same purchase, how often the same purchase is repeated per unit of time, etc. As discussed in more detail below, the survey data and the syndicated data may be used to generate demand models for respective subsets ofitems 20A-26C. - The
optimization system 50 may further include an item-level businessrules storage unit 56E and a choice-set-level businessrule storage unit 56F to store various business rules that may affect assortment optimization and layout automation. As one example, a business rule may require that boxes and other containers be placed on a shelf in an ascending order of size relative to the left edge of the shelf, so that a 20-diaper package always be placed to the left of a 50-diaper package. As another example, a business rule may require that a poisonous item and a food item reside on separate shelves. As yet another example, a business rule may make require that at least one facing of a certain item be unconditionally present in an assortment. Analysts may apply this rule when several items have been identified as displaying strong affinity in a complementary set, i.e., when the sales of one item positively affect the sales of another item. In this case, an item with a relatively small unit profit may be included in an assortment despite its low profitability to stimulate the sales of a more expensive item. Thus, in a hypothetical store, lighter fluid may be space-efficient and have high profit margin, and a facing of bags of charcoal may be included next to the facing of lighter fluid to maximize the overall profit despite the relatively low profitability of charcoal and the large size of charcoal bags. - Further examples of business rules may include a requirement that heavy bags be placed on one of the lower shelves, that toy guns not be included in an assortment in certain geographical areas, etc. Generally speaking, business rules can specify restrictions on brands, colors, sequencing, etc., and in some embodiments may include nested conditions. Some of the business rules may apply to individual items, while others may apply to choice sets (e.g., an infant formula choice set cannot be on the same shelf as any baby medicine choice set). Item-level and choice-set-level rules accordingly may be stored separately in the
storage units - During operation, users such as analysts may interact with the
assortment development engine 54 and thestorage units 56A-F via one or several terminals orterminal stations 58A-B. To this end, theoptimization system 50 may support a user interface that allows users to specify parameters and attributes of theitems 20A-26C, to specify the particulars of theretail area 10, to configure business rules, etc. In some embodiments, some of theterminals 58A-B may be remote so that asingle development engine 54 may support multiple analysts. - The
processing unit 52, thestorage units 56A-F, and theterminal stations 58A-B may be interconnected via anetwork backbone 60 such as Ethernet. Theoptimization system 50 may further include arouter 62 to communicate with hosts on anetwork 64 which may be the Internet, for example. In some embodiments, thestorage units 56A-F receive data such as historical sales data, for example, from external hosts residing in thenetwork 64. - The
processing unit 52 may further implement alayout optimizer 66 that generates an efficient planogram layout for the product assortment generated using thedevelopment engine 54. In some embodiments, thelayout optimizer 66 receives shoppability and profitability targets from a corresponding user interface supported by theterminal stations 58A-B. In particular, a user such as an analyst may select various trade-off levels between shoppability, profitability, and other factors, if desired. In response to user selection, thelayout optimizer 66 may perform nested grouping of items. In some embodiments, thelayout optimizer 66 may implement simulated annealing techniques to improve the layout. - As illustrated in the exploded view in
FIG. 2 , thedevelopment engine 54 may include several interconnected components such as a choice setgenerator 70, a facingcombination generator 72, a demandtransfer matrix generator 74, aprofit calculator 76, a sale data generator for limited-supply items 78, acombination remover 80, a combinatorialproblem input generator 81, and a combinatorial problem solver 82. The various ones of the modules 70-82 may be implemented using hardware, software instructions executed by a processor, firmware, or combinations thereof. Of course, the components 70-82 may be grouped together or, conversely, divided into smaller components according to implementation choices. - The choice set
generator 70 may operate in a fully or partially automated manner to develop choice sets within the group ofitems 20A-26C. For example, an analyst may operate the choice setgenerator 70 via one of theterminals items items items items - In some embodiments, the choice set
generator 70 may interact with a choice setsplitter 71 to divide choice sets that exceed one or more limits into several smaller choice sets. For example, theassortment development engine 54 may impose a 10-item limit on each choice set, and the choice setsplitter 71 may accordingly divide each choice set that includes more than 10 items based on function, size, brand, price, or any other criterion. - Next, a facing
combination generator 72 may generate various allowable combinations of items in each choice set in response to the input from the choice setgenerator 70 and in view of item, shelf, and other parameters stored in thestorage units 56A-F. To consider one example of an input to the facingcombination generator 72, the choice set N3 considered above may be associated with the following parameters: -
TABLE 1 Item Facings Shelf Capacity Unit Profit Unit Width 24A 0, 1, 2 8 9 5 24B 0, 1 7 5 3 24C 2, 3 5 8 4 - Thus, the
item 24A may have 0, 1, or 2 facing, and each facing of theitem 24A can include up to 3 units. The sale of each unit is associated with a profit metric of 9 (e.g., nine dollars). Each unit of theitem 24A has a width metric of 5. The input corresponding to the sets N1, N2, and N4 may be similarly defined. - Using input data such as the data summarized in Table 1, the facing
combination generator 72 may enumerate facing combinations for each of the choice sets N1-N4. In an embodiment, the facingcombination generator 72 may implement a recursive technique generally known in the art.FIG. 3 is a block diagram that illustrates agroup 100 of facingcombinations combination generator 72 may develop for the choice set N3. For ease of illustration, the blocks in each facingcombination item 24A, “B” for theitem 24B, and “item 24C. It will be noted that the length of each block inFIG. 3 corresponds to the unit width metric listed in Table 1. - As illustrated in
FIG. 3 , the facingcombination generator 72 generates 3*2*2=12 facing combinations, and the resulting width of each combination may be easily calculated as a sum of the individual width metrics. In some embodiments, thecombination generator 72 may also include or cooperate with a downscaling module (not shown) to reduce the number of facing combinations and thus simplify subsequent analysis. The operation of an example downscaling module is discussed below with reference toFIGS. 6A and 6B . Table 2 included below lists the parameters of each facing combination and the corresponding width values. -
TABLE 2 Facings24A Facings24B Facings24C Width 1 0 0 2 8 2 0 0 3 12 3 0 1 2 11 4 0 1 3 15 5 1 0 2 13 6 1 0 3 17 7 1 1 2 16 8 1 1 3 20 9 2 0 2 18 10 2 0 3 22 11 2 1 2 21 12 2 1 3 25 - The facing
combination generator 72 can easily calculate the width of each facing combination by summing the individual unit widths, multiplied by the respective number of facings, for each of theunits 24A-C. - Referring back to
FIG. 2 , theprofit calculator 76 may calculate an expected profit, or other type of benefit, for each of the facingcombinations combinations items 24A-C in the choice set N3, may have a detrimental effect on the sales of other items in the same choice set. This effect is referred to herein as cannibalization, and the demandtransfer matrix generator 74 may help theprofit calculator 76 to properly account for this and other item interaction effects. Moreover, thesale data generator 78 may further improve the accuracy of profit estimation in those typical situations when the supply ofitems 24A-C is limited. - To better explain the operation of the
modules FIG. 4 first illustrates, in a schematic format, a situation in which customers choose between two items a and b which are mutually substitutable, and in which each customer purchases one item at a time. Although many choice sets such as the choice set N3 include more than two substitutable items,FIG. 4 illustrates a simpler case of two-item interaction by way of example. In particular, a diagram 120 depicts aset 122 that consists of twelve customers who prefer item a, and aset 124 that consists of eight costumers who prefer item b. Out of the twelve costumers in theset 122, eight would accept item b as a substitute when item a is not available, and three customers in theset 124 would accept item a as a substitute when item b is not available. - The relationship illustrated in the diagram 120 may be expressed in a matrix form by associating each row with a preferred item and associating each column with an acceptable substitute. The resulting matrix may be referred to as a demand transfer matrix (DTM).
FIG. 4 illustrates aDTM 130 that corresponds to the diagram 120, as well as acorresponding loss vector 132 that indicates the number of customers lost at each substitution. Thus, as expected, the element in the first row and in the first column of theDTM 130 indicates that of the 12 customers who prefer item a accept item a; the element in the first row and in the second column of theDTM 130 indicates that 8 of those who prefer item a will accept item b if item a is not available; and the upper-row element in theloss vector 132 indicates that 4 customers do not make a purchase (i.e., are “lost” to the retailer) if item a is not available. Similarly, 5 customers are lost when item b is not present, as reflected in the bottom row of theloss vector 132. - Using the
DTM 130, and assuming unlimited supply of items a and b, a technique referred to herein as substitution arithmetic can be applied to generate further sales and loss metrics: - Sales of item a when item b is not present=12+3=15
- Sales of item b when item a is not present=8+8=16
- Sales of items a and b when both items a and b are present=12+8=20
- Referring back to
FIG. 3 , the demandtransfer matrix generator 74 may generate matrices similar to theDTM 130 based on the survey data and the syndicated data stored in thestorage units 56C-D. In a typical scenario, however, supply of items a and b is limited. To account for limited item supply, thesales data generator 78 may develop sales data by calculating projected sales of items for various numbers of other items in the same choice set. In the simple two-item example introduced above, thesales data generator 78 may calculate the sales of items a and b for each combination Na and Nb, where Na is the number of units of item a, and Nb is the number of units of item b. Because each customer in thesets - Next,
FIG. 5A illustrates an example matrix Ma that specifies the projected sales of item a for various values of Na and Nb, andFIG. 5B illustrates an example matrix Mb that specifies the projected sales of item b for various values of Na and Nb. Referring first toFIG. 5A , the sales of item a in the absence of item b increase from 0 to 15 until the supply of item a reaches 15, and stay at 15 even as the supply of item a continues to increase to 20 units. As indicated above, this upper limit of 15 can be derived from the DTM 130 (i.e., 12+3=15). When the supply of item b is 1, 2, 3, 4, or 5, the sales of a are the same because out of the 8 customers who prefer b, only 3 will find a acceptable when the supply of b is not sufficient. It will be noted that in a region RB of the matrix Ma, the effect of substitution of item a for item b (or vice versa) is beneficial to the sales of a. However, in a region RD of the matrix Ma, the effect of substitution is detrimental to the sales of a. In particular, when the supply of b is between 6 and 8, customers who could purchase a select b and thus prevent the sales of a from being maximized. Finally, the sales of a in the “stable” regions RS are not further affected by increases in the supply of a or b. - It is noted that the sales of a decrease in the region RD due to cannibalization. In other words, the relatively high supply of item b effectively decreases the sales potential of item a. However, although the detrimental effect on sales in the region RD is due to cannibalization, cannibalization need not always be detrimental to the overall sales of items a and b (as discussed in more detail with reference to
FIG. 5C ), or to the overall profit. In particular, the profit associated with the sale of one unit of item b may be significantly higher than the profit associated with the sale of one unit of item a, and cannibalization of item a by item b in some instances may actually increase the overall profit. - Similarly in the matrix Mb illustrated in
FIG. 5B , the sales of item b in the region RD are cannibalized by the relatively high supply of item a, while the numbers of supplied units of items a and b in the region RB are beneficial to the sales of item b. As expected from the previous discussion of theDTM 130, the matrix Mb indicates that the sales of item b can be at most 16. - Now referring to
FIG. 5C , a matrix M, represents a totality of sales of items a and b for various values of Na and Nb. Thus, every element of the matrix 154 is a sum of the corresponding elements of the matrices Ma and Mb, i.e., -
M ti,j =M ai,j +M bi,j. (Equation 1) - Although
FIG. 5C illustrates the regions RD1 and RD2 corresponding to the RD region of the matrix Ma and the RD region of the matrix Mb, respectively, it will be noted that the effect of cannibalization on sales in the overall set {a,b} is not necessarily detrimental, i.e., the overall sales each of the regions RD1 and RD2 is at the maximum level of 20. However, because the unit profit Pa associated item a and the unit profit Pb associated with item b may not be the same, some of the identical elements in the matrix Mt may correspond to a different profit metric. For example, each of the elements Mt8,12 and Mt12,8 of the matrix Mt specifies that a total of 20 units is sold, but the profit associated with Mt8,12 is equal to 12*Pa+8*Pb, whereas the profit associated with Mt12,8 corresponds to 8*Pa+12*Pb. In general, the profit Pi,j associated with each combination of i units a and j units of b can be expressed as: -
P i,j =M ai,j *P a +M bi,j *P b. (Equation 2) - Meanwhile, the width of each combination of i units a and j units of b can be expressed as:
-
P i,j =i*W a +j*W b, (Equation 3) - where Wa is the width of a single unit of item a, and Wb is the width of a single unit of item b.
- In the particular case of items a and b associated with a demand transfer scheme illustrated in
FIG. 4 , theprofit calculator 76 may receive data similar to the data reflected in the matrices Ma, Mb and Mt, and calculate the expected profit associated with each combination of items a and b using the equation (2) or a similar technique. Theoretically, this approach may be generalized to accommodate any number N of items i1, i2, . . . iN competing within a certain choice set, in which case thesales data generator 78 may generate N projected sales matrices, each having N dimensions, so that each element of a matrix Mir specifies the number of items ir sold for a certain combination of units of every other item in the choice set i1, i2, . . . iN. The corresponding profit of a combination Px1 ,x2 . . . xn of x1 items ii, x2 items x2, . . . , and xN items iN can then be expressed as -
- However, populating tables Mi
r in a deterministic manner may not be possible. In particular, certain customers may accept several different items as substitutes if the preferred item is not available, and the selection between the acceptable substitutes may be driven by price, brand recognition, or even be or appear to be random. In another aspect, the order of arrival of customers may further affect the selection of preferred items and acceptable substitutes. Accordingly, substitution arithmetic associated with equations (1)-(4) may be optimized and simplified to efficiently process multiple choice sets with relatively large numbers of items in each, as discussed in detail below. - Generally with respect to the example matrices of
FIGS. 5A-C , it is also noted that many of the item combinations may represent impractical choices (e.g., an excessively high number of facings of one item at the expense of other items), invalid choices (i.e., choices that violate one or several business rules), or clearly irrational choices. Thus, it will be appreciated that generating complete matrices Ma, Mb and Mt is discussed for the purposes of clarity only, and that theprofit calculator 76 and thesales data generator 78 need not evaluate all possible combinations of items in a choice set. - To continue with the example sets 122 and 124, items a and b may be associated with the following parameters and business rules:
-
TABLE 3 Unit Unit Facing Facing Min Max Unit Unit Gross Net Item Width Capacity Mandatory? Facings Facings Cost Price Profit Profit A 2 10 No 1 2 2 3 1 0.7 B 4 5 Yes 1 3 3 4 1 0.75 - Using the data listed in Table 3, the matrix Mt may be partitioned into regions based on the numbers of facings as illustrated in
FIG. 5D . Several portions of the matrix Mt can be immediately eliminated, as illustrated by respective shaded regions, because the elements in these portions represent choices that violate the mandatory, minimum facing, or maximum facing rules. Next, the data listed below in Table 4 may be generated: -
TABLE 4 Gross Gross Net Net Units Units Rev. Rev. Profit profit Profit Profit Gross Net Facings Total of A of B from from from from from from Units Rev. Profit Profit A B Width Sold Sold A B A B A B Total Total Total Total 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 2 10 0 30 0 10 0 7 0 10 3 10 7 0 1 4 0 4 0 16 0 4 0 3 4 16 4 3 2 0 4 15 0 45 9 15 0 10.5 0 15 45 14 10.5 1 1 6 10 5 30 20 10 5 7 3.75 15 50 15 10.75 0 2 8 0 9 0 36 0 9 0 6.75 9 36 9 6.75 2 1 8 15 5 45 20 15 5 10.5 3.75 20 65 20 14.25 1 2 10 10 10 30 40 10 10 7 7.5 20 70 20 14.5 0 3 12 0 14 0 56 0 14 0 10.5 14 56 14 10.5 2 2 12 12 8 36 32 12 8 8.4 6 20 68 20 14.5 1 3 14 10 10 30 40 10 10 7 7.5 20 70 20 14.5 2 3 16 12 8 36 32 12 8 8.4 6 20 68 20 14.5 - Table 4 lists only those numbers of facings of items a and b that do not violate the rules specified in Table 3. Further, to populate the Total Width column, the number of facings of each item are multiplied by the respective item width metric. The columns Units of A Sold and Units of B Sold may be populated by selecting the maximum possible numbers of units based on the respective regions of the matrices Ma, Mb and Mt. For example, to populate the fields in these two columns in the row associated with one facing of item a and two facings of item b, the profit calculator 76 (or an analyst operating one of the
terminals 58A-B) may consider a region F1.2 of the matrix Mt illustrated inFIG. 5D , as well as the respective regions in the matrices Ma and Mb. It will be noted that the maximum number of sales in this region corresponds to the element in the lower right corner of the region F1.2 specifying the sale of 10 units of a and 10 units of b. - The columns Revenue from A, Revenue from B, Gross Profit from A, Gross Profit from B, Net Profit from A, and Net Profit from A may be populated by multiplying the numbers in the columns Units of A Sold and Units of B Sold by the corresponding profit metrics specified in Table 3. Finally, the columns Units Total, Revenue Total, Gross Profit Total, and Net Profit Total may be populated by summing up the benefit metrics for all items. Thus, Table 4 specifies profit metrics for various facing combinations of the example choice set illustrated in
FIG. 4 . Of course, similar metrics may be developed for each choice set within a group of items that are candidates for an assortment selection. Theassortment development engine 54 may then utilize the profit metrics generated for each choice set in developing an overall solution, i.e., a selection of several choice sets in an assortment for a specified retail space. - Referring back to
FIG. 2 , the combinatorial problem solver 82 may automatically optimize a selection of choice sets using the profit metrics developed by theprofit calculator 76. In some embodiments, theassortment development engine 54 may also include a combination remover 80 to eliminate several non-optimal facing combinations and therefore reduce the complexity of the problem which the combinatorial problem solver 82 must solve. In particular, when two allowable facing combinations of items use the same amount of shelf space but are associated with non-equal benefit metrics, the combination with the higher metric can be said to dominate the combination of the lower metric, and the dominated combination can be safely removed. Referring to Table 4, the combination of 0 facings of item a and 2 facings of item b is associated withwidth 8 and net profit of 6.25, whereas the combination of 2 facing of item a and 1 facing of item b is associated with thesame width 8 but a higher net profit of 14.25. The latter combination is thus dominant, and the combination of 0 facings of item a and 2 facings of item b need not be considered in subsequent analysis. The combination remover 80 may further analyze other combinations in the choice set listed in Table 4 and also remove the combination of 0 facings of item a and 1 facing of item b, as well as the combination of 0 facings of item a and 3 facings of item b. - In an embodiment, or according to a configuration parameter of the
assortment development engine 54, thecombination remover 80 may also implement a strong dominance rule whereby a facing combination with a smaller width and larger profit is considered dominant relative to a facing combination with a larger width and lower profit. However, it will be noted that the rule of strong dominance may sometimes result in solutions that do not fill up the entire width of a shelf, i.e., solutions that are aesthetically less pleasing. Accordingly, the strong dominance rule may be enabled or disabled according to user configuration. - In some embodiments, the
combination remover 80 is adapted to also remove same-valued combinations, i.e., combinations associated with the same width and the same benefit metric. The combination remover 80 may choose from among several same-valued combinations randomly or based on any suitable tie-breaker such as, for example, a closer proximity between numbers of facings to achieve a better aesthetic effect. For example, the combination {2, 2, 3} in a certain choice set may be preferable to a same-valued combination {5, 1, 1}. - In yet other embodiments, the
combination remover 80 may apply item-level rules to the combinations output by theprofit calculator 76. More specifically, the components 72-78 may generate all potential facing combinations and the respective profit metrics without regard to item-level rules, and all elimination of invalid combinations may then be relegated to thecombination remover 80. Further, thecombination remover 80 may apply choice-set-specific rules to eliminate invalid combinations of choice sets. - Upon generating several choice sets, various facing combinations for each set along with the respective metrics, and optionally reducing each set by eliminating invalid, non-optimal, and superfluous combinations, the
assortment development engine 54 may retrieve retail space data from the shelf-data database 56B and provide the retrieved data along with the generated choice sets as input to the combinatorial problem solver 82 via the combinatorialproblem input generator 81. In an embodiment, the combinatorialproblem input generator 81 describes the choice set data and the retail space data using a format of a general combinatorial optimization problem such as a knapsack problem, for example. Moreover, because the combinatorial problem solver 82 may include several stages such as a first stage that involves selecting one facing combination from each choice set to fit within an overall space constraint, and a second stage that involves breaking up the solution into multiple shelves, the combinatorialproblem input generator 81 may format the input to include additional information to support each of the stages. An example format of an input to the combinatorial problem solver 82 is discussed in more detail below. - Next,
FIGS. 6A-8 illustrate some of the example embodiments of the components 70-82, as well as several components which may be utilized in theoptimization system 50 additionally or alternatively to the components 70-82. Several flowcharts of the related methods are also provided. - Referring to
FIG. 6A , theassortment development engine 54 in some embodiments may include adownscaling module 200 to reduce the number of combinations to be generated by thecombination generator 72. The downscalingmodule 200 may include a facingnumber generator 202 and a nearest allowedinteger mapper 204. In response to the input that specifies the complete range of all allowed facing combinations (e.g., between 1 and 10 facings ofitem 1, between 5 and 11 facings ofitem 2, etc.), the downscalingmodule 200 may first linearly spread the facing possibilities across the allowable range. For example, a business rule may specify that a certain non-mandatory item may have a minimum of 3 facings and a maximum of 8 facings. Thus, the item may have 0, 3, 4, 5, 6, 7, or 8 facings. The degree of downscaling may be controlled via a maximum facing combinations input, which for example may require that at most 5 facing values actually be used in an assortment. In some embodiments, the downscalingmodule 200 eliminates 0 from a candidate list for reduction (because another business rule requires that the item remain optional), and evenly spreads the remaining four desired facing values across the interval [3, 8], as illustrated inFIG. 6B . Themodule 202 may then identify the most proximate allowed integers. In this case, the downscalingmodule 200 mayoutput - As a faster alternative to calculating the profit for various combinations of items in a choice set using the equation (4) and the associated techniques, the
profit calculator 76 may include acombinatorial problem solver 230 illustrated inFIG. 7 to construct a reliable profit model using a suitable linear programming (LP) technique for each choice. As another alternative, theprofit calculator 76 may apply one of several simulation models, and select a number of repeated simulation runs in accordance with a target level of reliability. The selection between LP and one of the simulation modes may be automatic (e.g., based on the size of a choice set) or user-selectable. In each case, theprofit calculator 76 may utilize historical sales data stored in thestorage units 56C-D, demand transfer data supplied by analysts via theterminals 58A-B or stored in one of thestorage units 56A-F, and transfer probability data developed by theoptimization system 50 in cooperation with users such as analysts. - Referring to
FIG. 7 , thecombinatorial problem solver 230 may include aprofit model selector 232 which may be responsive to a user command entered via one of theterminal stations 58A-B, for example. Theprofit model selector 232 may activate one of an LP model solver withfull replacement 234A, an LP model solver withpartial replacement 234B, a simulator withfull replacement 236, or a simulator withpartial replacement 236. Each of themodules 234A-238 may generate a profit model using a respective programming or simulation technique based on historical sales data input and item supply data. If desired, thecombinatorial problem solver 230 may implement additional techniques selectable via theprofit model selector 232 or, conversely, include one of themodules 234A-238 and omit theprofit model selector 232. Further, thecombinatorial problem solver 230 may include adistribution module 240 to supply distribution (such as normal distribution) parameters to one or both of thesimulator modules random generator module 242 may generate random numbers to simulate consumer choices, arrival of customers to a store, etc. - In general, the
profit calculator 76 and, in particular, thecombinatorial problem solver 230 can operate with any desired profit model to assess the profitability of a certain configuration. Theprofit calculator 76 can receive, as an input, a specified number of facings for each item in a set of items and output profitability of the specified combination. In at least some of the embodiments, theprofit calculator 76 utilizes an LP model to calculate profitability. - An example method for generating a profit model which the
LP model solver FIG. 8 . In an embodiment, theLP model solvers full replacement 234A implements the assumption that a customer will always purchase a replacement item if the preferred item is not available, whereas the LP model solver withpartial replacement 234B does not implement this assumption. Generally speaking, theLP model solver LP model solver 234B further implements the following assumptions: (1) a customer will always prefer to satisfy his or her main preference prior to considering an alternative; (2) a customer will buy a replacement item subject to demand transfer probability; and (3) items in excess of the available supply cannot be sold. On the other hand, rather than implementing assumption (2), theLP model solver 234A may implement a more optimistic assumption (2a) that a customer will always purchase a replacement item if one is available. Generally speaking, an LP model consistent with the assumption (2a) generates an optimistic solution, whereas the assumption (2) adjusts the optimistic solution by considering transfer probabilities. For the purposes of clarity, the flow diagram inFIG. 8 is illustrated as including several optional blocks at which theLP model solver 234B obtains transfer probability data, generates a DTM, and applies the DTM to adjust the expected profits in accordance with the assumption (2). - At blocks 260-266, the
LP model solver DTM 130. It is noted that in an embodiment, the techniques discussed with reference to blocks 262-264 are also implemented by one or bothsimulators LP model solver simulators LP model solver LP model solver FIG. 1 and Tables 1 and 2, the combination associated with one facing of theitem 24A, one facing of theitem 24B, and two facings of theitem 24C corresponds to a set of capacity metrics {3, 3, 4} which can be obtained by multiplying the number of facings of each item by the corresponding facing capacity. Next, atblock 262, theLP model solver optimization system 50 may store or derive average, standard deviation, and other metrics related to sales statistics for each item. - Referring again to
FIG. 8 , theLP model solver items 24A-C: -
TABLE 5 Item 24A 24B 24C 24A — 30 0 24B 20 — 40 24C 0 60 —
Thus, when theitem 24A is not available, a customer will choose theitem 24B with a 30% probability, but will never choose theitem 24C. Similarly, when theitem 24B is not available, a customer will choose theitem 24A with a 20% probability or theitem 24C with a 40% probability, etc. - At
block 266, theLP model solver DTM 130 discussed above with reference toFIG. 4 . To this end, theLP model solver LP model solver -
- to populate at least the non-diagonal elements of the matrix DTMLP, i.e., when i≠j. For example, the element of DTMLP specifying how many customers who prefer the
item 24A will buy theitem 24B in the absence of theitem 24A may be calculated by multiplying the element in the second column of the row of Table 5 by the average sales μ of theitem 24A and converting the result from percentage to units: 30*10/100=3. The diagonal elements of DTMLP may be set to the respective value of μ. Generating the remaining elements in this manner using an example set of data, DTMLP becomes: -
- Next, the
LP model solver block 270, theLP model solver -
RSVi=MAX(Supplyi−Preferredi, 0), (Equation 6) - where Supplyi and Preferredi correspond to the number of items supplied and preferred, respectively. In other words, the
LP model solver -
RDVi=MAX(μi−Preferredi, 0). (Equation 7) - At block 272, the
LP model solver 234B may transfer demand between items in the choice set for the specified facing combination using the vectors RSV and RDV. More specifically, theLP model solver LP model solver 234A does not apply the DTMLP and instead unconditionally applies the excess demand to items with excess supply, i.e., implements the assumption (2a) instead of (2). In either case, the resulting expected profit from the sale of the item may be expressed as -
Profiti=UnitProfiti*(Preferredi+MaxTransferredi) (Equation 8) - The
LP model solver block 274. - Sorted in the descending order of unit profit, the choice set of the
items 24A-C may form an ordered list (24A, 24C, and 24B). In the first run of the method ofFIG. 8 , excess demand, when available, is first transferred to 24A, followed by 24C and finally by 24B. - To better illustrate the operations associated with blocks 270-274, a specific example of generating a profit model for an example facing combination {2, 0, 2}, i.e., 2 facings of the
item item item 24C, is discussed with reference to Table 6 below. -
TABLE 6 row 24A 24B 24C 1 Unit Profit 9 5 8 2 Supply 16 0 10 3 Average (μ) 10 3 12 4 Preferred = MIN ( row 2, row 3)10 0 10 5 Remaining Supply = MAX ( row 2 −row 6 0 0 0) 6 Remaining Demand = MAX ( row 3 −row 0 3 2 0) 7 Transfer24B−>24A = MIN (MIN ((6, 3), 0.6 — — DTM2, 1) 8 Remaining Supply′ = row 4 −row 75.4 2.4 2 Remaining Demand′ = row 6 −row 79 Transfer24C−>24A = MIN (MIN ((5.4, 2), — — 0 DTM3, 1) 10 Total Sold 10.6 0 10
In this example,row 1 corresponds to the example data in Table 1 androw 2 is populated by multiplying the number of facings of each of theitems 24A-C by the respective shelf capacity provided in Table 1. It will be noted thatrows item 24A and excess demand ofitems item 24A purchase the preferred units within the respective supply limits, several units of theitem 24A will remain, and customers who prefer theitems item 24A to the extent of the excess demand for theitems items - As indicated above, the
LP model solver LP model solver LP model solver block 278 and repeat the execution of blocks 270-274. Atblock 280, theLP model solver LP model solver - Next,
FIG. 9 depicts a flow diagram of anexample method 300 which one of thesimulators simulators simulators - In particular, the
simulators simulators simulators distribution module 240 which may implement normal distribution, for example. The demand for the corresponding item may then be generated using any suitable statistical technique. Thesimulators simulators simulators FIG. 7 , thesimulators random number generator 242 to shuffle the customers. - As indicated above, the
optimization system 50 may store or derive average, standard deviation, and other metrics related to sales statistics for each item. To continue with the example set ofitems 24A-C, the corresponding historical sales data may include the following parameters: -
TABLE 7 Item Average (μ) Min Max 24A 10 3 15 24B 3 0 8 24C 12 2 18
Thus, theitem 24A for example sells at least 3 units and at most 15 units, and 10 on average. Assuming normal distribution N(μi,σi 2), the standard deviation σi can be expressed as -
- Accordingly, the distribution of the
items 24A-C corresponds to the following parameters: -
TABLE 8 Item μ Σ σ 2 24A 10 3 9 24B 3 2 4 24C 12 4 16
Referring back toFIG. 7 , the historical sales data supplied to each of themodules 234A-238 in some embodiments may be similar to the data in Table 7, Table 8, or both. Further, in an embodiment, the data listed in Table 8 is used in deriving the matrix DTMLP discussed above with reference to theLP model solvers - Referring again to
FIG. 9 , the arrival of one customer from the randomly shuffled group is simulated at block 310, and the selection of an item by the customer is simulated at blocks 312-316. Because each customer is associated with a certain preference, thesimulators block 312 and, if the preferred item is available, simulate the transaction atblock 314. If, on the other hand, the preferred item is not available, a replacement item is selected atblock 316 using therandom number generator 242 and transfer probability metrics. A decision to purchase the preferred or one of the replacement items atblocks - More specifically, the
full replacement simulator 236 may implement the assumption that the a customer will always purchase a replacement item if the preferred item is not available. A weighed random selector (a “roulette”) may define a plurality of weighed choices, each of which may be regarded as a region on a roulette wheel. The size of each region may be proportional to the probability of replacement of the preferred item by the item associated with the region. Because one of the regions must be selected, thefull replacement simulator 236 always selects a replacement item (as long as supplies last). By contrast, thepartial replacement simulator 238 may include empty windows which, when selected, correspond to the event that the customer does not make any purchase at all. Thus, a 40% probability of replacing item a with item b may be simulated by a window ofsize 4 associated with item b and an empty window ofsize 6. - At
block 318, thesimulator simulator 216 or 238 may proceed to calculating the profit for the executed scenario at block 320. Similar to the corresponding block of the LP technique discussed above, the profit may be calculated by summing up the selected units for each item and multiplying the resulting number of the unit profit metric. - At
block 322, thesimulator - Next, Table 9 illustrates the results generated by the
combinatorial problem solver 230 in several modes of operation and for various facings of theitems 24A-C. In particular, column profitmin LP lists the results generated by theLP model solver 234A, implementing the more optimistic assumption (2a) and using the list of items sorted in an ascending order of unit profit; column profitmax LP lists the results generated by theLP model solver 234A, implementing the same assumption (2a) and using the list of items sorted in a descending order of unit profit; and column profitavg LP lists the corresponding averages. Further, column profitSF lists the results of simulation generated by thefull replacement simulator 236, and column profitSP lists the results of simulation generated by thepartial replacement simulator 238. -
TABLE 9 Facings24A Facings24B Facings24C Width Profitmin LP Profitmax LP Profitavg LP ProfitSF ProfitSP 1 0 0 2 8 80 80 80 78 76 2 0 0 3 12 120 120 120 105 98 3 0 1 2 11 115 115 115 111 105 4 0 1 3 15 155 155 155 135 120 5 1 0 2 13 152 152 152 147 144 6 1 0 3 17 192 192 192 172 166 7 1 1 2 16 187 187 187 173 166 8 1 1 3 20 193 199 196 187 179 9 2 0 2 18 215 215 215 178 169 10 2 0 3 22 210 213 212 202 191 11 2 1 2 21 195 203 199 190 186 12 2 1 3 25 201 201 201 199 197 - As indicated above, the combinatorial
problem input generator 81 format the data generated by theprofit calculator 76 so as make the data consistent with a mathematical problem. For example, the combinatorialproblem input generator 81 may generate a list of facing combinations for the set ofitems 24A-C using an LP technique such as those discussed above, each element in the list specifying the width and the profit of the facing combination: ListN1={(Width1=8, Profit1=80), (Width2=11, Profit2=115), . . . } The combinatorialproblem input generator 81 may generate similar lists for every choice set to ultimately generate a set of lists {ListN1, ListN1, . . . } so that the combinatorial problem solver 82 may produce an optimal assortment by selecting one facing combination from each choice set in view of the spatial constraints (and possibly business rules) associated with the retail space. - Now referring to
FIG. 10 , a combinatorial problem solver 82 illustrated inFIG. 2 may include aknapsack problem solver 350 that includes a multiple-choice knapsack solver 352, a multipleknapsack problem solver 354, ashelf splitter 355, ashelf capacity controller 356, and a graph/chart generator 357. During operation, the multiple-choice knapsack solver 352 in one mode of operation may find an optimal solution to the problem of selecting one facing from each choice set within a global space constraint, e.g., total space available in a retail area. For theretail space 10 illustrated inFIG. 1 , the multiple-choice knapsack solver 352 may thus select an optimal facing from each of the choice-sets N1-N4 to fit within the total width of the shelves 12-14, i.e., L1+2*L2. Theshelf capacity controller 356 may then supply the parameters such as the number of shelves in theretail space 10, the width of each shelf, and other relevant parameters to theshelf splitter 355 which may split the solution into shelf-specific components utilizing the multipleknapsack problem solver 354. - In an embodiment, the combinatorial problem solver 82 can operate in a fixed-constraint mode or a variable-constraint mode in accordance with a signal received via a run mode selection input. In the fixed-constraint mode, the
combinatorial problem solver 230 generates an optimal solution consistent with a certain fixed constraint. In the variable-constraint mode of operation, the combinatorial problem solver 82 provides multiple solutions within a certain range or, in some cases, with no range restriction. As discussed below with reference toFIGS. 18 , 19A, and 19B, the combinatorial problem solver 82 in this mode identifies an optimal profit value for each width (e.g., using discrete width value or according to any other resolution), generate a visual representation of the results using the graph/chart generator 357 so that an analyst can efficiently select a solution for any desired width. It is noted that an analyst may find the variable-constraint mode to be useful when the width of a certain merchandizing fixture has not yet been selected or, at least, can be varied within a certain range. Further, an analyst can utilize the variable-constraint mode to quickly and efficiently identify the impact of possible gaps in shelf space (seeFIG. 19B ). - As one example of an approach to solving the knapsack problem which the multiple-
choice knapsack solver 352 may implement when operating in the fixed-constraint mode,FIG. 11 illustrates ahistogram 370 of various profit metrics associated with various spatial metrics (e.g., total shelf widths) filled to maximum capacity. For example, when considering certain choice sets N1, N2, and N3, theknapsack problem solver 350 may during one of the iterations consider a facing combination from the choice set N1 with width=18 and profit=215, a facing combination from the choice set N2 with width=10 and profit=117, and a facing combination from the choice set N2 with width=22 and profit=247. The resulting bar in thehistogram 370 may then correspond towidth 18+10+22=50 and profit 215+116+247=579. It will be noted that it is possible for profit to decrease with an increase in shelf width because less profitable items may be selected to fill the shelf. The multiple-choice knapsack solver 352 may generate thehistogram 370 and identify a bar that corresponds to the highest profit within the specified shelf capacity, indicated by shading inFIG. 11 . However, as explained in more detail below, the bar that corresponds to the highest profit need not necessarily represent a globally optimal assortment solution because of an additional practical requirement that the overall solution fit on several shelves (or otherwise conform to several space constraints in addition to the global constraint associated with the corresponding retail area). - Generally speaking, the multiple-
choice knapsack solver 352 may solve the knapsack problem by iteratively generating all possible combinations of elements in the list supplied by themodule 81, testing each combination against the constraints, and selecting the one or several combinations associated with the maximum profit. Alternatively, the multiple-choice knapsack solver 352 may implement a more efficient general mathematical solution. - Referring to
FIG. 12 , theshelf splitter 355 depicted inFIG. 10 may implement amethod 400 to split the solution generated by the multiple-choice knapsack solver 352 into several shelves. For example, the multiple-choice knapsack solver 352 may output a solution for the retail space depicted inFIG. 1 without specifying how theitems 20A-26C must be split among the shelves 12-16. Thus, the multiple-choice knapsack solver 352 may supply to the shelf splitter 355 a preliminary solution for multiple item width combinations such as thehistogram 370, for example. Atblock 402, theshelf splitter 355 may determine the sum of all shelf widths in the available retail space. In the example of the retail space, the total available shelf width is L1+2*L2 which may be, for example, 50. Next, theshelf splitter 355 may select an interval shelfstep atblock 404, and select a first interval of the histogram 470 as the group of bars between 50 and 50—shelfstep atblock 406. Atblock 408, theshelf splitter 355 may select the data in thehistogram 370 in the interval selected atblock 406, and identify the bar with the highest profit in the selected interval atblock 410. - In at least some of the embodiments, the multiple-
choice knapsack solver 352 generates a solution for a problem in which each facing item effectively defines a single element. For example, a facing combination having 2 facings of theitem item item 24C corresponds to a single element of width 21 and profit 199 according to one of the LP models. When generating shelf-specific solutions, theshelf splitter 355 may retrieve the association between each facing and the corresponding items atblock 412. In an embodiment, theknapsack problem solver 350 may maintain a record of the following format to facilitate the operation of the shelf splitter 355: -
class_id=2, item_id=15, item_desc=“203”, profit=30, weight=24 - In this example format, class_id identifies the choice set N2, and item_id identifies a facing combination to which
identity 15 has been assigned, and that includes 2 facings ofitem 1 from the choice set N2, 0 facings ofitem 2 from the choice set N2, and 3 facings ofitem 3 from the choice set N2. The field class_id may be used to associate the facing combination that has several facings of several items with a single element when solving a knapsack problem. The profit of this facing combination is 30, and the total combined width of the 5 facings is 24. It will be noted that the width of the items in the choice set N2, or of the facing, can be generalized to “weight” for the purposes of solving a problem in combinatorics. Thus,knapsack problem solver 350 may be similarly utilized in systems that group items according to other criteria such as physical weight, for example. - With continued reference to
FIG. 12 , theshelf splitter 355 atblock 414 may attempt to split the identified most profitable solution into several shelves. If a split is possible, theshelf splitter 355 may split the solution atblock 420 in cooperation with the multipleknapsack problem solver 354. In a sense, the problem to be solved atblock 414 may be considered to involve several knapsacks, with the length of each shelf defining the capacity of the respective knapsack. One example solution to this problem is described by David Pisinger in “An Exact Algorithm for Large Multiple Knapsack Problems,” European Journal for Operational Research, 114 (1999), the entire disclosure of which is expressly incorporated herein by reference. Referring toFIG. 13 , it will be noted that anexample splitting solution 450 may not completely fill each shelf, and that multiple facings of an item need not always be contiguous (provided splitting of facings of the same item does not violate any of the business rules). - Referring again to
FIG. 12 , theshelf splitter 355 may adjust the interval in which a solution is sought atblock 418 if a split in the current interval is not possible. In particular, theshelf splitter 355 may move a window of size shelfstep to the left in thehistogram 370. Theshelf splitter 355 may then repeat the execution of blocks 408-416 until a solution is found. - From the foregoing, it will be appreciated that the
assortment development engine 54 may efficiently generate profit metrics for various facing combinations, select an optimal or near-optimal assortment that will maximize the profit derived from the sale of the items, and fit the selected assortment in the general space constraint as well as within each of multiple space constraints such as widths of individual shelves, for example. Referring back toFIG. 2 , thelayout optimizer 66 may further improve the layout by considering positioning of items included in the assortment relative to each other. Thus, if the solution to an assortment problem specifies that 2 facings of theitem item item 24C are to be placed on a shelf of length L1, thelayout optimizer 66 may further determine at least a partial ordering of theitems 24A-C on the shelf. Thelayout optimizer 66, in a sense, improves aesthetic qualities of the assortment. In another sense, thelayout optimizer 66 reduces customer frustration in trying to locate a desired item on the shelf by improving the perceived logic behind item grouping. Both of theitems items 24C may be boxes of diapers for another group. A customer may therefore expect to find theitems layout optimizer 66 may attempt to account for this and similar factors. - In operation, the
layout optimizer 66 may apply business rules such as placing all facings of a certain item next to each other without breaking up the facings across multiple shelves, placing a generic product next to a brand-name product during promotions to effectively promote the generic product, maintaining a certain color scheme on a shelf, keeping same-brand items next to each other on a shelf, sequencing of items according to size (e.g., a 20-count pack before a 40-count pack), keeping high-profit items at the eye-level, etc. In some embodiments, the rules may be nested and/or hierarchical. - Generally speaking, the
layout optimizer 66 may utilize any suitable optimization technique, including those known in the art. In some embodiments, thelayout optimizer 66 applies simulated annealing to determine efficient grouping for the items included in an assortment, referred to herein as blocking. As is known, simulated annealing is a methodology that allows optimization to avoid being “trapped” at local minimums or maximums of a function. To this end, simulated annealing imitates the naturally occurring process of cooling a metal and, in particular, the “wandering” of atoms through energy states. - To apply simulated annealing, the
layout optimizer 66 may group items according to various attributes, associate groups of items with an imaginary flexible space constraint (e.g., a rubber band) which may be two-dimensional in the examples discussed below. In other embodiments, however, the flexible space constraint may be three-dimensional or, conversely, one-dimensional in some simpler cases. The extent to which the flexible space constraint must be stretched to accommodate several items is indicative of the quality of grouping, with smaller degree of stretching being associated with better grouping of items. By way of example,FIGS. 14A-B illustrate an example group ofitems 460 includingitems items item 466 may be of another size. - In the example arrangement of
FIG. 14A , each of the flexible space constraints 480-484 encompasses respectively a group of items of the first brand (462-466), a group of items of the second brand (470-474), and a group of items of the same size of the first brand (462 and 464). It will be noted that the flexible space constraints 480-484 must be stretched far in excess of the combined area of the corresponding enclosed items because of the non-optimal arrangement of items 460-466 and 470-474. By contrast, the arrangement illustrated inFIG. 14B requires less stretching for each of the flexible space constraints 480-484. The blocking depicted inFIG. 14B may thus be regarded as more favorable, and stretching of the flexible space constraints 480-484 may be analogized to expanding effort in searching for the desired item on a shelf. It will be further noted that the flexible space constraints may be nested, hierarchical, overlapping, etc. - In another aspect, items within a particular group may be presented to a consumer in an ascending order, a descending order, or in any other manner a customer would find intuitively correct and comfortable. Referring to
FIG. 14C , thelayout optimizer 66 may generate a desired sequencing for a group ofitems flexible space constraints pairs layout optimizer 66 accordingly may use flexible space constraints for blocking only, and apply a different sorting technique to a group of items within a particular block. For example, thelayout optimizer 66 may associate each of the items 485-487 with an additional flexible metric that may correspond to a piece count of the item (e.g., a 20-count package of diapers), volume (e.g., a 12-oz bottle), weight, or any suitable other parameter, and execute a simple sort based on the single parameter using a technique such as those known in the art. Of course, the sort may also be performed on multiple parameters. - In yet another aspect, analysts may sometimes address two competing interests in developing a planogram: shoppability and profitability. For example, the principles of shoppability may dictate that a certain profitable item must be at customers' eye level to maximize purchases. On the other hand, the item may be blocked together with several other items which must be transferred to the eye level along with the item. Moreover, some shoppability factors are not quantifiable and require aesthetic or artistic judgment of an analyst.
- One example of an optimizer that may be used by the
layout optimizer 66 to facilitate the balancing between shoppability and profitability, as well as implement blocking and sequencing discussed above, is illustrated inFIG. 15 . Anoptimizer 490 may include ablock generator 492, asequence generator 494, and a profitability/shoppability selector 496. Theoptimizer 490 may receive as input item data, business rules, and an indication of how business rules are to be applied. Referring back toFIG. 2 , theterminal stations 58A-B may support a user interface to adjust the importance of shoppability relative to profitability, so that a rule such as “item X must be at eye level” may receive a higher or lower priority relative to a rule such as “profitability must not be lower than Y.” In response to the user input, the profitability/shoppability selector 496 may generate an appropriate ordering of business rules, and themodules optimizer 490 can generate a layout using a holistic approach. - In view of the discussion of
FIGS. 1-15 , it will be appreciated that theoptimization system 50 can accurately and efficiently generate a profitable item assortment consistent with a set of business rules, and optimize or facilitate optimization of a layout of these items. Referring toFIG. 16 , an example of a method which theoptimization system 50 may implement to generate assortment and an item layout is illustrated as a high-level flow diagram 500. As described in the diagram 500, theoptimization system 50 may develop several choice sets atblock 502, develop a demand model for each choice set atblock 504, generate a benefit model (such as a profit model discussed above with reference to F(g. 7) atblock 506, and optimize assortment using the benefit model and width metrics of each facing combination (or other metrics, if desired) in view of business rules (block 508). Atblock 510, theoptimization system 50 may optimize the layout of the generated item assortment using thelayout optimizer 66, for example. - Additionally,
FIG. 17 provides a diagram of anexample method 550 for generating an assortment of several items, which may partially overlap with some of the blocks 502-508 illustrated inFIG. 17 . Thus, atblock 552, theoptimization system 50 may obtain a list of items from one or several files, user interface of theterminals 58A-B, via thenetwork 64, or in any other suitable manner. Theoptimization system 50 may then generate choice sets and affinity sets atblock 554 in response to user input which may be received via graphical or text interface of theterminals 58A-B, for example. Alternatively, the input data provided to theoptimization system 50 may specify choice sets and affinity sets using dedicated flags, organized lists each corresponding to a certain set, etc. For each choice set, theoptimization system 50 may generate a DTM using the techniques discussed above (block 556). Additionally or alternatively, an analyst may receive or derive transfer probabilities from the survey, syndicated, and other historical sales data, and theoptimization system 50 may automatically generate DTMs using the respective probability metrics. - At blocks 558-564, the
optimization system 50 may receive a set of constraints such as number of allowable facings for each item, business rules such as those that specify whether a certain item is mandatory or optional, spatial and operational parameters for each item such as facing capacity and replenishment frequency, and other spatial and financial parameters, as well as aesthetic criteria expressed as business rules. - The
optimization system 50 may then generate facing combinations for each choice set (block 566), determine a space requirement and a corresponding benefit metric for each combination (block 568) using one or several of suitable linear programming or simulation techniques. Next, dominated and/or same-valued combinations may be removed atblock 570, and additional business rules may be applied atblock 574 to detect invalid choice set combinations, for example. However, in other embodiments choice-set-level business rules may be applied at an earlier stage. Atblock 574, theoptimization system 50 may define the total space available in the retail area. In the example illustrated inFIG. 1 , thespace area 10 includes several shelves. In general, the retail area may be any area such as the floor of a supermarket, the holding area of a vending machine, etc. - The
optimization system 50 may then format the generated data so as to make the data compatible with a generic optimization problem. In one embodiment, theoptimization system 50 generates a first data file that list every facing combination along with a corresponding metric (e.g., width, profit, etc.) as a single element, and generates a second data file that retains the associated between every facing combination and the facings of items included in the facing combination. The problem may then be solved mathematically or programmatically in an exact or approximate mariner. For example, the first data file may define an input to a knapsack problem, and the output of the knapsack problem may be further split into several smaller areas using a suitable technique for solving a multiple knapsack problem (blocks 576-578). - Next, several additional techniques, which the
assortment development engine 54 implements in some embodiments, are discussed with reference toFIGS. 18-20B . First referring toFIG. 18 , a module such as the knapsack problem solver 350 (seeFIG. 10 ) can generate agraph 600 to facilitate efficient selection of a combination of items when the width of a merchandizing fixture is variable within a certain range or is not limited at all. In particular, thegraph 600 illustrates net profit associated with a combination of items (they axis) plotted against width of the combination (the x axis) using the data listed Table 4. Thus, each point in the graph 600 (or outside the graph 600) is a {width, net profit} tuple that corresponds to the Total Width and Net Profit Total columns of the respective row of Table 4, for example, or another data set.Point 602 in this example represents the maximum profit when the width is 2,point 604 represents the highest net profit for any width listed in Table 4, andpoint 606 represents a less-than-optimal profit for thewidth 4, for example. In an embodiment, theassortment development engine 54 generates thegraph 600 by drawing connecting lines between maximum values for each combination. It is noted that in this example, there are no maximum values that are less than a maximum value of a combination with a smaller width. - By contrast,
FIG. 19A illustrates agraph 620 that corresponds to a pair of items a and b such that the width of a is 3 and the width of b is 5. Using the techniques discussed above, and using the parameters and business rules specified in Table 3, the data listed below in Table 10 can be generated: -
TABLE 10 Gross Gross Net Net Units Units Rev. Rev. Profit profit Profit Profit Gross Net Facings Total of A of B from from from from from from Units Rev. Profit Profit A B Width Sold Sold A B A B A B Total Total Total Total 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 3 10 0 30 0 10 0 7 0 10 3 10 7 0 1 5 0 4 0 16 0 4 0 3 4 16 4 3 2 0 6 15 0 45 9 15 0 10.5 0 15 45 14 10.5 1 1 8 10 5 30 20 10 5 7 3.75 15 50 15 10.75 0 2 10 0 9 0 36 0 9 0 6.75 9 36 9 6.75 2 1 11 15 5 45 20 15 5 10.5 3.75 20 65 20 14.25 1 2 13 10 10 30 40 10 10 7 7.5 20 70 20 14.5 0 3 15 0 14 0 56 0 14 0 10.5 14 56 14 10.5 2 2 16 12 8 36 32 12 8 8.4 6 20 68 20 14.5 1 3 18 10 10 30 40 10 10 7 7.5 20 70 20 14.5 2 3 21 12 8 36 32 12 8 8.4 6 20 68 20 14.5 - To generate the
graph 620 using the data listed in Table 10, theassortment development engine 54 applies a rule that forbids gaps on an occupied merchandizing fixture. Thus, for a shelf ofwidth 5,point 622 must be selected even thoughpoint 624, associated with asmaller width 4, corresponds to a higher profit. If, on the other hand, theknapsack problem solver 350 applies a rule that allows gaps on an occupied merchandizing fixture, thepoint 622 is not used in the generated solution, i.e., agraph 630 illustrated inFIG. 19B . Thus, depending on whether the analyst selects a business rule that allows gaps between items occupying a merchandizing fixture, different solutions can be generated. - In general,
FIGS. 18 , 19A, and 19B illustrate an approach to generating profit metrics for different total widths in view of different rules. An analyst can use thegraphs - In an embodiment, the
assortment development engine 54 further supports a near-optimal mode of operation, in which an analyst or a pre-defined rule can specify a range within which a near-optimal solution can be located. Referring toFIG. 20A , agraph 650 illustrates, for a certain group of 29 items, the relationship between the net profit associated with the sale of the items and the total width occupied by the items. It is noted that thegraph 650 is a curve that displays diminishing returns as the width increases, and that thegraph 650 reaches a point beyond which no further profit is possible. - Now referring to graph 660 illustrated in
FIG. 20B and corresponding to an enlarged portion of thegraph 650, theassortment development engine 54 in an embodiment identifies the closest solution for a given width, receives dimensions of a region of near-optimality (depicted inFIG. 20B as a box 662), automatically identifies an optimal solution within the specified region of near-optimality, and iteratively adjusts the region of near-optimality until a solution acceptable in view of other business rules is found. For some types of items, the region of near-optimality can exceed the total available width of the merchandizing fixtures if the items are compressible, as discussed above. For other items, the region of near-profitability cannot exceed the total available width. In this example, the analyst wishes to optimize the assortment to fit on several merchandizing fixtures with the combined width of 60. The closest initial solution, represented inFIG. 20B aspoint 670, corresponds to the width of 59, and, in an embodiment, theassortment development engine 54 can specify thepoint 670 to the analyst. However, it may not be possible to fit the combination that corresponds to thepoint 670 on the individual merchandizing fixtures without violating one or more business rules (e.g., a requirement that related items be placed together on the same shelf) or having an item go over the boundary of an individual merchandizing fixture. According)y, theassortment development engine 54 can automatically reject thepoint 670 upon applying one or more relevant rules and proceed to search within the region of near-optimality until a suitable solution can be found. In this example, the suitable solution corresponds to point 672 that is associated with the profit metric relatively proximate to the profit metric of thepoint 670. - In general, the region of near-optimality can be defined by a vertical dimension (i.e., a profit margin), a horizontal dimension (i.e., a gap or overfill/compression margin), or both. Thus, the region of near optimality can be defined by specifying how far, in dollars or other currency, an acceptable solution can be to the initial solution for the given combined width (in this example, the point 670). In visual terms, this approach corresponds to configuring the
box 662 with a finite, rigid height and an elastic width. In other situations, the region of near optimality can be defined by the largest tolerable gap or the largest tolerable compression, and accordingly correspond to configuring thebox 662 with a finite width and an elastic height. - It is noted that the
assortment development engine 54 need not generate a graphical representation of the data illustrated inFIGS. 20A and 20B , or visually illustrate the process of iteratively adjusting the region of near-optimality. However, theassortment development engine 54 may display thegraphs workstation - Next,
FIG. 21 illustrates a flow diagram of amethod 700 which theassortment development engine 54 can implement to support locating a solution within a region of near-optimality. In accordance with themethod 700, a maximum solution for a certain width is located atblock 702, and appropriate business rules are applied atblock 704. If it is determined atblock 706 that the initial solution does not satisfy one or more rules, region boundaries (e.g., a vertical limit, a horizontal limit, both) are received from a user or from a pre-defined rule atblock 708, and an optimal solution is located within the specified boundaries (block 710). The optimal solution is then tested using the business rules (theblocks 704 and 706) and, if the solution satisfies every rule, the method completes atblock 712. - While the present system and methods have been described with reference to specific examples, which are intended to be illustrative only and not to be limiting of the invention, it will be apparent to those of ordinary skill in the art that changes, additions and/or deletions may be made to the disclosed embodiments without departing from the spirit and scope of the invention.
Claims (44)
1. A method in a computer system for generating an efficient item assortment associated with a plurality of items, the method comprising:
obtaining choice set data specifying a multiplicity of choice sets associated with the plurality of items, wherein each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable;
obtaining item interaction data descriptive of substitutions between pairs of items in each of the multiplicity of choice sets;
obtaining a set of benefit metrics associated with the plurality of items;
obtaining a constraint parameter associated with the item assortment; and
generating an item selection based at least on the item interaction data, the set of benefit metrics, and the constraint parameter; wherein the item selection identifies at least one of the plurality of items selected for inclusion in the item assortment.
2. The method of claim 1 , wherein the item interaction data is indicative of a probability of transferring customer demand between items in each of the multiplicity of choice sets.
3. The method of claim 1 , wherein obtaining the constraint parameter includes obtaining a spatial metric indicative of a spatial limitation of a retail area in which the item assortment is to be physically disposed.
4. The method of claim 3 , wherein the retail area includes a plurality of merchandizing fixtures, each associated with a respective fixture width; and wherein the spatial limitation is a sum of the fixture widths.
5. The method of claim 3 , further comprising:
obtaining a plurality of spatial metrics, each of the plurality of spatial metrics associated with a respective one of the plurality of items; and wherein
generating the item assortment includes comparing the plurality of spatial metrics to the constraint parameter.
6. The method of claim 1 , further comprising:
obtaining a plurality of facing capacity parameters, wherein each of the plurality of facing capacity parameters specifies a respective number of units associated with a single facing of a respective one of the plurality of items; wherein
generating the item selection is further based on the plurality of facing capacity parameters.
7. The method of claim 1 , further comprising receiving a plurality of facing ranges, wherein each in the multiplicity of facing ranges specifies a minimum number of facings and a maximum number of facings for a respective one in the plurality of items; wherein generating the item selection further includes calculating a number of facings for each selected item in accordance with the plurality of facing ranges.
8. The method of claim 7 , further comprising generating a planogram associated with the item assortment, including generating a layout of the selected ones of the plurality of items in accordance with the respective numbers of facings and a set of layout rules.
9. The method of claim 1 , the method further comprising:
generating a multiplicity of lists of facing combinations, wherein each of the multiplicity of lists corresponds to a respective one of the multiplicity of choice sets, and wherein each facing combination in each of the multiplicity of lists includes one or several facings of at least one of the items in the corresponding one of the multiplicity of choice sets; and wherein
the set of benefit metrics is a first set of benefit metrics, each in the first set of benefit metrics being associated with a respective one of the plurality of items; the method further comprising:
generating a respective benefit metric for each facing combination in each of the multiplicity of lists of facing combinations based on the first set of benefit metrics and the item interaction data to define a second set of benefit metrics.
10. The method of claim 9 , wherein generating each benefit metric in the second set of benefit metrics includes applying a linear programming technique, comprising:
projecting excess demand for each item in the corresponding one of the multiplicity of choice sets;
projecting excess supply for each item in the corresponding one of the multiplicity of choice sets;
sorting the corresponding one of the multiplicity of choice sets according o respective benefit metrics in the first set of benefit metrics to generate a sorted list; and
transferring the excess demand between items in the corresponding one of the multiplicity of choice sets according to at least the sorted list and the excess supply.
11. The method of claim 9 , wherein generating each benefit metric in the second set of benefit metrics includes generating a full replacement simulation model, comprising:
obtaining historical sales data associated with the plurality of items;
simulating a sequential arrival of a plurality of customers, including associating each of the plurality of customers with a preferred item in the corresponding one of the multiplicity of choice sets based on the historical sales data; and
simulating a selection made by each customer, including:
associating the selection with the corresponding preferred item if the preferred item is available; and
associating the selection with another item in the corresponding one of the multiplicity of choice sets if the preferred item is not available and if the other item is available, wherein a probability of choosing an item in the corresponding one of the multiplicity of choice sets is related to the item interaction data.
12. The method of claim 9 , wherein generating each benefit metric in the second set of benefit metrics includes generating a partial replacement simulation model, comprising:
obtaining historical sales data associated with the plurality of items;
simulating a sequential arrival of a plurality of customers, including associating each of the plurality of customers with a preferred item in the corresponding one of the multiplicity of choice sets based on the historical sales data; and
simulating a selection made by each customer, including:
associating the selection with the corresponding preferred item if the preferred item is available; and, if the preferred item is not available, further including one of:
associating the selection with another item in the corresponding one of the multiplicity of choice sets according to a probability derived from the item interaction data; or
not associating the selection with any of the items in the corresponding one of the multiplicity of choice sets according to the probability derived from the item interaction data.
13. The method of claim 9 , further comprising:
obtaining a plurality of spatial metrics, wherein each of the plurality of spatial metrics corresponds to a respective one of the plurality of items; and wherein
generating the item selection includes selecting at most one facing combination from each one of the multiplicity of lists of facing combinations based on the second set of benefit metrics, the plurality of spatial metrics, and the constraint parameter associated with the item assortment.
14. The method of claim 13 , wherein selecting at most one facing combination from each one of the multiplicity of lists of facing combinations includes solving a multiple choice knapsack problem.
15. The method of claim 1 , further comprising receiving one or more business rules associated with the plurality of items, wherein
generating the item selection includes applying the one or more business rules.
16. The method of claim 15 , wherein the one or more business rules includes an item-specific business rule specifying at least one of: mandatory inclusion of a specified one in the plurality of items in the item selection, a minimum number of facings of the specified one in the plurality of items in the item selection, or a maximum number of facings of the specified one in the plurality of items in the item selection.
17. A system for generating an efficient item assortment associated with a plurality of items, comprising:
a storage unit to store a plurality of profit metrics, wherein each of the plurality of profit metrics corresponds to a respective one of the plurality of items;
a choice set generator to generate choice set data specifying a multiplicity of choice sets associated with the plurality of items, wherein each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable;
a demand transfer matrix generator to receive item interaction data descriptive of substitutions between pairs of items in each of the multiplicity of choice sets, and to generate a respective demand transfer matrix for each of the multiplicity of choice sets to define a set of demand transfer matrices, wherein each demand transfer matrix includes a respective substitutability metric for each pair of items in the corresponding choice set; and
a combinatorial problem solver communicatively coupled to the storage unit, the choice set generator, and the demand transfer matrix generator to obtain a global constraint parameter and to generate an item selection based on at least one of the set of demand transfer matrices, the plurality of profit metrics, and the global constraint parameter.
18. The system of claim 17 , further comprising a choice set splitter to receive a selection of one of the multiplicity of choice sets and a split criterion, and to split the selected one of the multiplicity of choice sets into several choice sets according to the split criterion.
19. The system of claim 17 , wherein the storage unit further stores:
a plurality of facing range parameters, wherein each of the plurality of facing range parameters corresponds to a respective one of the plurality of items; wherein each facing range parameter specifies a minimum number of facings and a maximum number of facings for a respective one in the plurality of items; the system further comprising:
a facing combination generator to generate a list of facing combinations for a respective one of the multiplicity of choice lists in accordance with the plurality of facing range parameters, wherein each facing combination includes one or several facings of at least one of the items in the corresponding one of the multiplicity of choice sets; and
a profit calculator to generate a respective profit metric for each facing combination in the list of facing combinations using the corresponding demand transfer matrix, the plurality of facing range parameters, and a subset of the plurality of profit metrics, to define a set of profit metrics.
20. The system of claim 19 , wherein the profit calculator includes a linear programming model solver to apply a linear programming technique.
21. The system of claim 19 , wherein the profit calculator includes a simulator with full replacement to simulate a plurality of sequential purchases by a respective plurality of customers.
22. The system of claim 19 , further comprising:
a downscaling module to receive a number of facings limit, to compare a specified one of the plurality of facing range parameters to the number of facings limit, and to generate a reduced set of numbers of facings based on the specified one of the plurality of facing range parameters.
23. The system of claim 17 , wherein the storage unit is a first storage unit;
wherein the global constraint parameter specifies a spatial constraint of a retail area in which the item assortment is to be disposed; and wherein the retail area is associated with a plurality of regions;
the system further comprising:
a second storage unit to store a plurality of spatial metrics, wherein each of the plurality of spatial metrics corresponds to a respective one of the plurality of regions.
24. The system of claim 23 , wherein the combinatorial problem solver includes:
a multiple-choice knapsack problem solver to select at most one facing combination for each of the multiplicity of choice sets to define a global solution, and to generate a respective spatial metric for each selected facing combination;
a fixture splitter to split the global solution into a plurality of solutions, each of the plurality of solutions corresponding to a respective one of the plurality of regions; and
a multiple knapsack problem to optimize the plurality of solutions.
25. A method in a computer system for generating an efficient item assortment associated with a plurality of items, to be disposed in a retail area having a plurality of regions, the method comprising:
receiving item data that includes, for each of the plurality of items:
a first metric associated with a physical parameter of the item; and
a second metric indicative of profitability of the item;
receiving retail region data that includes a plurality of metrics, wherein each of the plurality of metrics is associated with the physical parameter of a respective one of the plurality of regions;
receiving choice set data specifying a multiplicity of choice sets, wherein each of the multiplicity of choice sets includes several of the plurality of items, at least some of which are mutually substitutable;
receiving item interaction data that includes, for each of the multiplicity of choice sets, a metric of substitutability between items in the corresponding choice set;
generating a multiplicity of lists of facing combinations, wherein each of the multiplicity of lists corresponds to a respective one of the multiplicity of choice sets, and wherein each facing combination in each of the multiplicity of lists includes one or several facings of at least one of the items in the corresponding one of the multiplicity of choice sets;
calculating at least a profit metric and a physical parameter metric for each facing combination in each of the multiplicity of lists of facing combinations based on the first metric and the second metric of each item included in the facing combination and the interaction data associated with the corresponding choice set; and
selecting zero or more facing combinations from each of the multiplicity of lists of facing combinations to generate a selection so as to maximize a total profit associated with the selection in view of the retail region data and the first metric of each item included in the selection.
26. The method of claim 25 , wherein the item data further includes, for each of the plurality of items, a third metric indicative of a facing capacity of the item, wherein the facing capacity specifies a number of units associated with a single facing of the item; and wherein
calculating the profit metric for each facing combination in each of the multiplicity of lists of facing combinations is further based on the third metric of each item included in the facing combination.
27. The method of claim 25 , wherein the physical parameter is a width, and wherein the plurality of regions corresponds to a plurality of merchandizing fixtures of the retail area.
28. The method of claim 25 , further comprising:
splitting the selection into a plurality of selection portions, wherein each of the plurality of selection portions is to be disposed in a respective one of the plurality of regions.
29. The method of claim 25 , further comprising:
identifying dominated facing combinations in each of the multiplicity of lists of facing combinations, wherein each dominated facing combination corresponds to a respective dominant facing combination so that the dominated facing combination and the respective dominant facing combination have the same physical parameter metric and different profit metrics;
removing dominated facing combinations prior to selecting zero or more facing combinations from each of the multiplicity of lists.
30. A method in a computer system for generating an efficient item assortment for a plurality of items, the method comprising:
obtaining a first plurality of parameters, wherein each of the first plurality of parameters includes a benefit metric of a respective one of the plurality of items;
obtaining a constraint parameter associated with the item assortment;
generating a plurality of facing combinations, each including one or more facings of one or more of the plurality of items;
generating a second plurality of parameters using the first plurality of parameters, wherein each of the second plurality of parameters includes a benefit metric of a respective one of the plurality of facing combinations;
maximizing a function of the second plurality of parameters, subject to a limitation associated with the constraint parameter, to generate an optimization result; and
generating an item selection based on the optimization result.
31. The method of claim 30 , wherein each of the first plurality of parameters further includes a physical parameter metric of the respective one of the plurality of items; wherein
each of the second plurality of parameters further includes a physical parameter metric of the respective one of the plurality of facing combinations.
32. The method of claim 30 , wherein the plurality of items define a multiplicity of choice sets, wherein at least some of the items in each of the multiplicity of choice sets are mutually substitutable; and wherein
generating the plurality of facing combinations including generating a respective list of facing combinations for each of the multiplicity of choice sets.
33. The method of claim 32 , wherein maximizing the function of the second plurality of parameters includes selecting exactly one facing combination from each list of facing combinations.
34. The method of claim 32 , further comprising:
obtaining item interaction data indicative of probabilities of substitutions between pairs of items in each of the multiplicity of choice sets; and wherein
generating the second plurality of parameters using the first plurality of parameters includes applying the item interaction data.
35. The method of claim 30 , wherein obtaining the constraint parameter includes:
receiving a plurality of spatial metrics corresponding to a respective plurality of regions of a retail area; and
calculating a sum of the plurality of spatial metrics to generating a total spatial limitation; and wherein
maximizing the function of he second plurality of parameters includes maximizing the function subject to the total spatial limitation.
36. The method of claim 35 , wherein generating the item selection includes generating a plurality of sub-selections, each of the plurality of sub-selections corresponding to a respective one of the plurality of regions of the retail area, including:
solving a multiple knapsack problem using the optimization result, the first plurality of parameters, and the plurality of spatial metrics.
37. The method of claim 30 , wherein generating the second plurality of parameters includes formatting the second plurality of parameters to comply with an input to a multiple-choice knapsack problem.
38. The method of claim 30 , wherein generating the second plurality of parameters includes applying at least one of a linear programming technique or a simulation technique.
39. A method in a computer system for generating an efficient item assortment associated with a plurality of items, to be disposed in a retail area having a plurality of regions, the method comprising:
obtaining a first plurality of parameters, wherein each of the first plurality of parameters is associated with a respective one of the plurality of items and includes:
a benefit metric of the respective one of the plurality of items indicative of a financial benefit associated with a sale of one unit of the respective one of the plurality of items; and
a spatial metric of the respective one of the plurality of items specifying one of length, width, or height of the respective one of the plurality of items;
obtaining a plurality of spatial metrics, each of the plurality of spatial metrics corresponding to a respective one of the plurality of regions of the retail area;
obtaining choice set data specifying a multiplicity of choice sets associated with the plurality of items;
generating a plurality of facing combinations in accordance with the choice set data, wherein each of the plurality of facing combinations includes one or more facings of one or more items of a respective one of the multiplicity of choice sets;
generating a second plurality of parameters using the first plurality of parameters, wherein each of the second plurality of parameters corresponds to a respective one of the plurality of facing combinations and includes:
a benefit metric of the respective one of the plurality of facing combinations indicative of an expected financial benefit associated with including the respective one of the plurality of facing combinations in the item assortment; and
a spatial metric of the respective one of the plurality of facing combinations specifying one of length, width, or height of the respective one of the plurality of facing combinations;
maximizing a function of the benefit metrics of the second plurality of parameters, subject to a limitation associated with the plurality of spatial metrics, to generate an optimization result; and
generating an item selection based on the optimization result.
40. A method in a computer system for generating an efficient item assortment associated with a plurality of items, to be disposed in a retail area having a plurality of regions, the method comprising:
obtaining profitability data that includes a plurality of tuples, each of the plurality of tuples corresponding to a spatial metric of a particular combination of items and a profitability metric associated with the particular combination of items, wherein the profitability data is stored on a computer-readable medium;
using a first constraint parameter to automatically select a first tuple in the plurality of tuples to define an initial solution;
automatically applying at least one business rule to the initial solution; and
if the at least one business rule is not satisfied:
obtaining a near-optimality parameter;
automatically selecting a subset of the plurality of tuples to define a region limited by the near-optimality parameter; and
automatically selecting a second tuple in the subset of the plurality of tuples to define a near-optimal solution.
41. The method of claim 40 , wherein the near-optimal solution is associated with the highest profitability metric in the selected subset.
42. The method of claim 40 , wherein the near-optimality parameter is associated with the profitability metric.
43. The method of claim 42 , wherein the near-optimality parameter is a first near-optimality parameter; the method further comprising:
obtaining a second near-optimality parameter associated with the spatial metric; wherein
the region is limited by the first near-optimality parameter and the second near-optimality parameter.
44. The method of claim 40 , further comprising:
applying the at least one business rule to the near-optimal solution; and
if the at least one business rule is not satisfied:
reducing the subset of the plurality of tuples to define a smaller region; and
selecting a third tuple in the reduced subset of the plurality of tuples to define an updated near-optimal solution.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/773,617 US20110276364A1 (en) | 2010-05-04 | 2010-05-04 | Method and System for Optimizing Store Space and Item Layout |
US13/838,165 US9805333B1 (en) | 2010-05-04 | 2013-03-15 | Generating a maximum-profit solution for a merchandizing fixture |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/773,617 US20110276364A1 (en) | 2010-05-04 | 2010-05-04 | Method and System for Optimizing Store Space and Item Layout |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/838,165 Division US9805333B1 (en) | 2010-05-04 | 2013-03-15 | Generating a maximum-profit solution for a merchandizing fixture |
Publications (1)
Publication Number | Publication Date |
---|---|
US20110276364A1 true US20110276364A1 (en) | 2011-11-10 |
Family
ID=44902529
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/773,617 Abandoned US20110276364A1 (en) | 2010-05-04 | 2010-05-04 | Method and System for Optimizing Store Space and Item Layout |
US13/838,165 Active US9805333B1 (en) | 2010-05-04 | 2013-03-15 | Generating a maximum-profit solution for a merchandizing fixture |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/838,165 Active US9805333B1 (en) | 2010-05-04 | 2013-03-15 | Generating a maximum-profit solution for a merchandizing fixture |
Country Status (1)
Country | Link |
---|---|
US (2) | US20110276364A1 (en) |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140025420A1 (en) * | 2012-07-18 | 2014-01-23 | Infosys Limited | Simultaneous micro space and assortment optimization for products |
US20140358600A1 (en) * | 2013-05-30 | 2014-12-04 | Oracle International Corporation | Item placement optimizer |
US20150120652A1 (en) * | 2012-03-20 | 2015-04-30 | Jens Dittrich | Replicated data storage system and methods |
US20150199627A1 (en) * | 2012-09-28 | 2015-07-16 | Sqi3 Solutions Limited | Method and apparatus for optimizing a multi-dimensional space |
US20150206098A1 (en) * | 2014-01-17 | 2015-07-23 | Genesistems, Inc. | System and method of loading plant species for transportation |
US20150356774A1 (en) * | 2014-06-09 | 2015-12-10 | Microsoft Corporation | Layout design using locally satisfiable proposals |
US20160055221A1 (en) * | 2014-08-19 | 2016-02-25 | Tagb.io. Inc. | Data Analysis And Visualization |
US20160162865A1 (en) * | 2014-12-08 | 2016-06-09 | Vendwatch Telematics, Llc | Vending Machine Route Management |
US9445674B2 (en) | 2014-08-14 | 2016-09-20 | Kimberly-Clark Worldwide, Inc. | Gravity fed shelving display system |
US20160335586A1 (en) * | 2015-05-12 | 2016-11-17 | Oracle International Corporation | Display space optimization |
US20160342931A1 (en) * | 2014-01-17 | 2016-11-24 | Genesistems, Inc. | System and method of loading plant species for transportation |
US9513874B2 (en) | 2011-08-18 | 2016-12-06 | Infosys Limited | Enterprise computing platform with support for editing documents via logical views |
CN106296064A (en) * | 2015-06-25 | 2017-01-04 | 阿里巴巴集团控股有限公司 | The method and system that data process |
WO2017068420A3 (en) * | 2015-10-22 | 2017-06-29 | Greyorange Pte Ltd. | Method of managing resources in a warehouse |
US9805333B1 (en) | 2010-05-04 | 2017-10-31 | Walgreen Co. | Generating a maximum-profit solution for a merchandizing fixture |
US20180096555A1 (en) * | 2016-10-01 | 2018-04-05 | Cantaloupe Systems, Inc. | Method and device of automatically determining a planogram in vending |
US10089597B2 (en) * | 2015-02-06 | 2018-10-02 | Flowvision, Llc | Shipping rack item configuration |
US10346793B2 (en) * | 2016-01-29 | 2019-07-09 | Walmart Apollo, Llc | Systems and methods for order filling |
US10460269B1 (en) * | 2017-07-18 | 2019-10-29 | Mastercard International Incorporated | Space dataset optimization |
US20200210923A1 (en) * | 2018-12-26 | 2020-07-02 | Red Analytics Pty Ltd | Method of determining optimal business metrics from a product mix constrained by at least physical shelf space and at least one business rule |
US10776846B2 (en) * | 2016-07-27 | 2020-09-15 | Nike, Inc. | Assortment optimization |
US20200320607A1 (en) * | 2019-04-05 | 2020-10-08 | Shopify Inc. | Recommending items for a surface |
US10926183B2 (en) | 2015-04-24 | 2021-02-23 | Tag.Bio, Inc. | Outcome prediction |
US20210082031A1 (en) * | 2018-07-02 | 2021-03-18 | Beijing Geekplus Technology Co., Ltd. | Order processing method and device, and goods volume estimation method and device |
US10997615B1 (en) * | 2016-11-08 | 2021-05-04 | Blue Yonder Group, Inc. | System and method for assortment planning with interactive similarity and transferable demand visualization |
US11068919B2 (en) * | 2018-12-26 | 2021-07-20 | Red Analytics Pty Ltd. | Method of making changes to product mixes placed on boundary constrained shelves by determining the cost of implementing a pricing strategy formed by changeable business rules |
US11205151B2 (en) * | 2018-12-26 | 2021-12-21 | Red Analytics Pty Ltd | Method of making changes to product mixes on boundary constrained shelves by determining maximum days-on-shelf metric from a product mix constrained by at least physical shelf space |
US11210681B2 (en) | 2012-08-31 | 2021-12-28 | Nielsen Consumer Llc | Methods and apparatus to forecast new product launch sourcing |
US11321722B2 (en) * | 2015-01-20 | 2022-05-03 | Oracle International Corporation | Assortment optimization using incremental swapping with demand transference |
US11403574B1 (en) | 2018-07-02 | 2022-08-02 | Target Brands, Inc. | Method and system for optimizing an item assortment |
US20220335452A1 (en) * | 2021-04-20 | 2022-10-20 | Walmart Apollo, Llc | Systems and methods for retail facilities |
US11727222B2 (en) | 2016-10-31 | 2023-08-15 | Arria Data2Text Limited | Method and apparatus for natural language document orchestrator |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109204966A (en) * | 2018-07-20 | 2019-01-15 | 上海智锘智能设备有限公司 | A kind of packing case system and the packing method using the system |
US11657409B2 (en) | 2018-12-31 | 2023-05-23 | Tatat Consultancy Services Limited | System and method for product demand transfer estimation through machine learning |
US11714926B1 (en) * | 2020-05-29 | 2023-08-01 | The Hershey Company | Product display design and manufacturing using a product display design model |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020156667A1 (en) * | 2000-12-13 | 2002-10-24 | Bergstrom John M. | Stochastic multiple choice knapsack assortment optimizer |
US20030195791A1 (en) * | 1999-01-26 | 2003-10-16 | Waller Matthew A. | System, method and article of manufacture to determine and communicate redistributed product demand |
US20030200129A1 (en) * | 2002-04-23 | 2003-10-23 | Kimberly-Clark Worldwide, Inc. | Method and system for allocating shelf space |
US20050114196A1 (en) * | 2003-11-20 | 2005-05-26 | Tor Schoenmeyr | Product assortment optimization systems, products and methods |
US20070050235A1 (en) * | 2005-08-29 | 2007-03-01 | Sap Ag | System and Method of Modeling and Optimizing Product Parameters from Hierarchical Structure |
US20080147475A1 (en) * | 2006-12-15 | 2008-06-19 | Matthew Gruttadauria | State of the shelf analysis with virtual reality tools |
US20080208719A1 (en) * | 2007-02-28 | 2008-08-28 | Fair Isaac Corporation | Expert system for optimization of retail shelf space |
US20090271245A1 (en) * | 2008-04-25 | 2009-10-29 | Ashutosh Umakant Joshi | Assortment planning based on demand transfer between products |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3705410A (en) | 1971-01-21 | 1972-12-05 | Pillsbury Co | Automated method for optimizing utilization of warehouse storage space |
US5029098A (en) | 1989-01-27 | 1991-07-02 | Coin Acceptors, Inc. | Vend space allocation monitor means and method |
US6256615B1 (en) | 1994-11-10 | 2001-07-03 | Ncr Corporation | Method of assigning electronic shelf labels to price lookup file items |
US6366890B1 (en) | 1998-02-27 | 2002-04-02 | Gerald L. Usrey | Product inventory category management and variety optimization method and system |
US20010047293A1 (en) | 1999-01-26 | 2001-11-29 | Waller Matthew A. | System, method and article of manufacture to optimize inventory and inventory investment utilization in a collaborative context |
US6341269B1 (en) | 1999-01-26 | 2002-01-22 | Mercani Technologies, Inc. | System, method and article of manufacture to optimize inventory and merchandising shelf space utilization |
US6526373B1 (en) | 1999-10-08 | 2003-02-25 | Dassault Systemes | Optimization tool for robot placement |
US6473984B1 (en) | 2000-03-06 | 2002-11-05 | Target Brands, Inc. | Planogram measuring device |
US6922706B1 (en) | 2000-04-27 | 2005-07-26 | International Business Machines Corporation | Data mining techniques for enhancing shelf-space management |
US20030014291A1 (en) | 2001-07-10 | 2003-01-16 | The Procter & Gamble Company | Methods, functional data, and systems for optimizing product factors |
EP1436742A1 (en) | 2001-09-18 | 2004-07-14 | Pro-Corp Holdings International Limited | Image recognition inventory management system |
US20030083925A1 (en) | 2001-11-01 | 2003-05-01 | Weaver Chana L. | System and method for product category management analysis |
US8321302B2 (en) | 2002-01-23 | 2012-11-27 | Sensormatic Electronics, LLC | Inventory management system |
US20030171979A1 (en) | 2002-03-11 | 2003-09-11 | Jenkins Margalyn Toi | System and method for selecting and arranging products on a shelf |
US20030171978A1 (en) | 2002-03-11 | 2003-09-11 | Jenkins Margalyn Toi | Efficient retail item assortment |
US7620563B2 (en) | 2002-07-09 | 2009-11-17 | Palo Associates, Llc | Method, system and computer program product for grouping items in a grocery store |
US7536283B2 (en) | 2003-01-03 | 2009-05-19 | L&P Property Management Company | Storage optimization system and method |
US20050203790A1 (en) | 2004-03-09 | 2005-09-15 | Cohen Robert M. | Computerized, rule-based, store-specific retail merchandising |
US7885865B2 (en) | 2004-05-11 | 2011-02-08 | The Kroger Co. | System and method for mapping of planograms |
US20060149634A1 (en) | 2004-12-30 | 2006-07-06 | Kimberly-Clark Worldwide, Inc. | Method and system for determining product assortment for retail placement |
US7440903B2 (en) | 2005-01-28 | 2008-10-21 | Target Brands, Inc. | System and method for evaluating and recommending planograms |
US8032406B2 (en) | 2005-07-28 | 2011-10-04 | Sap Ag | System and method of assortment, space, and price optimization in retail store |
US20070288296A1 (en) | 2006-05-05 | 2007-12-13 | Graham Lewis | System and method for automatic placement of products within shelving areas using a planogram with two-dimensional sequencing |
US8189855B2 (en) | 2007-08-31 | 2012-05-29 | Accenture Global Services Limited | Planogram extraction based on image processing |
US20100217681A1 (en) | 2009-02-25 | 2010-08-26 | James Geikie | Shopping Cart Planogram Ordering System |
US8838469B2 (en) | 2009-06-12 | 2014-09-16 | Accenture Global Services Limited | System and method for optimizing display space allocation of merchandising using regression analysis to generate space elasticity curves |
US20110035257A1 (en) | 2009-08-06 | 2011-02-10 | Rajendra Singh Solanki | Systems And Methods For Generating Planograms In The Presence Of Multiple Objectives |
US20110276364A1 (en) | 2010-05-04 | 2011-11-10 | Walgreen Co. | Method and System for Optimizing Store Space and Item Layout |
US20120022913A1 (en) | 2010-07-20 | 2012-01-26 | Target Brands, Inc. | Planogram Generation for Peg and Shelf Items |
US20140067467A1 (en) | 2012-08-31 | 2014-03-06 | Target Brands, Inc. | Adjacency optimization system for product category merchandising space allocation |
US9336508B2 (en) | 2012-11-02 | 2016-05-10 | Patrick Soon-Shiong | Virtual planogram management, systems, and methods |
-
2010
- 2010-05-04 US US12/773,617 patent/US20110276364A1/en not_active Abandoned
-
2013
- 2013-03-15 US US13/838,165 patent/US9805333B1/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030195791A1 (en) * | 1999-01-26 | 2003-10-16 | Waller Matthew A. | System, method and article of manufacture to determine and communicate redistributed product demand |
US20020156667A1 (en) * | 2000-12-13 | 2002-10-24 | Bergstrom John M. | Stochastic multiple choice knapsack assortment optimizer |
US20030200129A1 (en) * | 2002-04-23 | 2003-10-23 | Kimberly-Clark Worldwide, Inc. | Method and system for allocating shelf space |
US20050114196A1 (en) * | 2003-11-20 | 2005-05-26 | Tor Schoenmeyr | Product assortment optimization systems, products and methods |
US20070050235A1 (en) * | 2005-08-29 | 2007-03-01 | Sap Ag | System and Method of Modeling and Optimizing Product Parameters from Hierarchical Structure |
US20080147475A1 (en) * | 2006-12-15 | 2008-06-19 | Matthew Gruttadauria | State of the shelf analysis with virtual reality tools |
US20080208719A1 (en) * | 2007-02-28 | 2008-08-28 | Fair Isaac Corporation | Expert system for optimization of retail shelf space |
US20090271245A1 (en) * | 2008-04-25 | 2009-10-29 | Ashutosh Umakant Joshi | Assortment planning based on demand transfer between products |
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9805333B1 (en) | 2010-05-04 | 2017-10-31 | Walgreen Co. | Generating a maximum-profit solution for a merchandizing fixture |
US9513874B2 (en) | 2011-08-18 | 2016-12-06 | Infosys Limited | Enterprise computing platform with support for editing documents via logical views |
US20150120652A1 (en) * | 2012-03-20 | 2015-04-30 | Jens Dittrich | Replicated data storage system and methods |
US20140025420A1 (en) * | 2012-07-18 | 2014-01-23 | Infosys Limited | Simultaneous micro space and assortment optimization for products |
US11210681B2 (en) | 2012-08-31 | 2021-12-28 | Nielsen Consumer Llc | Methods and apparatus to forecast new product launch sourcing |
US20150199627A1 (en) * | 2012-09-28 | 2015-07-16 | Sqi3 Solutions Limited | Method and apparatus for optimizing a multi-dimensional space |
US20140358600A1 (en) * | 2013-05-30 | 2014-12-04 | Oracle International Corporation | Item placement optimizer |
US20160342931A1 (en) * | 2014-01-17 | 2016-11-24 | Genesistems, Inc. | System and method of loading plant species for transportation |
US20150206098A1 (en) * | 2014-01-17 | 2015-07-23 | Genesistems, Inc. | System and method of loading plant species for transportation |
US20150356774A1 (en) * | 2014-06-09 | 2015-12-10 | Microsoft Corporation | Layout design using locally satisfiable proposals |
US9959675B2 (en) * | 2014-06-09 | 2018-05-01 | Microsoft Technology Licensing, Llc | Layout design using locally satisfiable proposals |
US9445674B2 (en) | 2014-08-14 | 2016-09-20 | Kimberly-Clark Worldwide, Inc. | Gravity fed shelving display system |
US10642868B2 (en) * | 2014-08-19 | 2020-05-05 | Tag.Bio, Inc. | Data analysis and visualization |
US20160055221A1 (en) * | 2014-08-19 | 2016-02-25 | Tagb.io. Inc. | Data Analysis And Visualization |
US20160162865A1 (en) * | 2014-12-08 | 2016-06-09 | Vendwatch Telematics, Llc | Vending Machine Route Management |
US11403575B2 (en) * | 2014-12-08 | 2022-08-02 | Vendwatch Telematics, Llc | Vending machine route management |
US9613346B2 (en) * | 2014-12-08 | 2017-04-04 | Vendwatch Telematics, Llc | Vending machine route management |
US10552776B2 (en) * | 2014-12-08 | 2020-02-04 | Vendwatch Telematics, Llc | Vending machine route management |
US11321722B2 (en) * | 2015-01-20 | 2022-05-03 | Oracle International Corporation | Assortment optimization using incremental swapping with demand transference |
US10089597B2 (en) * | 2015-02-06 | 2018-10-02 | Flowvision, Llc | Shipping rack item configuration |
US10926183B2 (en) | 2015-04-24 | 2021-02-23 | Tag.Bio, Inc. | Outcome prediction |
US10417606B2 (en) * | 2015-05-12 | 2019-09-17 | Oracle International Corporation | Display space optimization |
US20160335586A1 (en) * | 2015-05-12 | 2016-11-17 | Oracle International Corporation | Display space optimization |
CN106296064A (en) * | 2015-06-25 | 2017-01-04 | 阿里巴巴集团控股有限公司 | The method and system that data process |
US10683173B2 (en) | 2015-10-22 | 2020-06-16 | Grey Orange Pte. Ltd. | Method of managing resources in a warehouse |
WO2017068420A3 (en) * | 2015-10-22 | 2017-06-29 | Greyorange Pte Ltd. | Method of managing resources in a warehouse |
US10915859B2 (en) | 2016-01-29 | 2021-02-09 | Walmart Apollo, Llc | Systems and methods for order filling |
US10346793B2 (en) * | 2016-01-29 | 2019-07-09 | Walmart Apollo, Llc | Systems and methods for order filling |
US10776846B2 (en) * | 2016-07-27 | 2020-09-15 | Nike, Inc. | Assortment optimization |
US10878476B2 (en) * | 2016-07-27 | 2020-12-29 | Nike, Inc. | Assortment optimization |
US9972158B2 (en) * | 2016-10-01 | 2018-05-15 | Cantaloupe Systems, Inc. | Method and device of automatically determining a planogram in vending |
US20180096555A1 (en) * | 2016-10-01 | 2018-04-05 | Cantaloupe Systems, Inc. | Method and device of automatically determining a planogram in vending |
US11727222B2 (en) | 2016-10-31 | 2023-08-15 | Arria Data2Text Limited | Method and apparatus for natural language document orchestrator |
US11449882B2 (en) | 2016-11-08 | 2022-09-20 | Blue Yonder Group, Inc. | System and method for assortment planning with interactive similarity and transferable demand visualization |
US10997615B1 (en) * | 2016-11-08 | 2021-05-04 | Blue Yonder Group, Inc. | System and method for assortment planning with interactive similarity and transferable demand visualization |
US10460269B1 (en) * | 2017-07-18 | 2019-10-29 | Mastercard International Incorporated | Space dataset optimization |
US10817818B1 (en) * | 2017-07-18 | 2020-10-27 | Mastercard International Incorporated | Space dataset optimization |
US11403574B1 (en) | 2018-07-02 | 2022-08-02 | Target Brands, Inc. | Method and system for optimizing an item assortment |
US20210082031A1 (en) * | 2018-07-02 | 2021-03-18 | Beijing Geekplus Technology Co., Ltd. | Order processing method and device, and goods volume estimation method and device |
US11205151B2 (en) * | 2018-12-26 | 2021-12-21 | Red Analytics Pty Ltd | Method of making changes to product mixes on boundary constrained shelves by determining maximum days-on-shelf metric from a product mix constrained by at least physical shelf space |
US11244271B2 (en) | 2018-12-26 | 2022-02-08 | Red Analytics Pty Ltd | Method of making changes to product mixes on boundary constrained shelves by determining optimal business metrics from a product mix constrained by at least physical shelf space and at least one business rule |
US11068919B2 (en) * | 2018-12-26 | 2021-07-20 | Red Analytics Pty Ltd. | Method of making changes to product mixes placed on boundary constrained shelves by determining the cost of implementing a pricing strategy formed by changeable business rules |
US10803415B2 (en) * | 2018-12-26 | 2020-10-13 | Red Analytics Pty Ltd | Method of determining optimal business metrics from a product mix constrained by at least physical shelf space and at least one business rule |
US20200210923A1 (en) * | 2018-12-26 | 2020-07-02 | Red Analytics Pty Ltd | Method of determining optimal business metrics from a product mix constrained by at least physical shelf space and at least one business rule |
US20200320607A1 (en) * | 2019-04-05 | 2020-10-08 | Shopify Inc. | Recommending items for a surface |
US11610247B2 (en) * | 2019-04-05 | 2023-03-21 | Shopify Inc. | Method and system for recommending items for a surface |
US20230196440A1 (en) * | 2019-04-05 | 2023-06-22 | Shopify Inc. | Determining Positioning of Items on A Surface |
US20220335452A1 (en) * | 2021-04-20 | 2022-10-20 | Walmart Apollo, Llc | Systems and methods for retail facilities |
Also Published As
Publication number | Publication date |
---|---|
US9805333B1 (en) | 2017-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9805333B1 (en) | Generating a maximum-profit solution for a merchandizing fixture | |
US10417606B2 (en) | Display space optimization | |
US6029139A (en) | Method and apparatus for optimizing promotional sale of products based upon historical data | |
Van Nierop et al. | Interaction between shelf layout and marketing effectiveness and its impact on optimizing shelf arrangements | |
US11769194B2 (en) | Method and system for presenting items in online environment based on previous item selections | |
Bianchi-Aguiar et al. | Retail shelf space planning problems: A comprehensive review and classification framework | |
CN101923692A (en) | Be used to use the system and method for the top-down performance optimization of elasticity modeling | |
US20070050235A1 (en) | System and Method of Modeling and Optimizing Product Parameters from Hierarchical Structure | |
US20150199627A1 (en) | Method and apparatus for optimizing a multi-dimensional space | |
US20140025420A1 (en) | Simultaneous micro space and assortment optimization for products | |
US20070288296A1 (en) | System and method for automatic placement of products within shelving areas using a planogram with two-dimensional sequencing | |
US20060149634A1 (en) | Method and system for determining product assortment for retail placement | |
US20200005209A1 (en) | Method and system for optimizing an item assortment | |
AU2002229085A1 (en) | Stochastic multiple choice knapsack assortment optimizer | |
EP1350203A2 (en) | Stochastic multiple choice knapsack assortment optimizer | |
US11410125B2 (en) | Systems and methods for dynamically determining wearable items for a subscription electronics transactions platform | |
Chang et al. | Agent-based simulation of pricing strategy for agri-products considering customer preference | |
Hübner et al. | Maximizing profit via assortment and shelf‐space optimization for two‐dimensional shelves | |
US20170200172A1 (en) | Consumer decision tree generation system | |
CN113469597A (en) | Intelligent supply chain system and server platform | |
Chen et al. | An integrated model for online product placement and inventory control problem in a drop-shipping optional environment | |
CN109886769A (en) | A kind of the displaying optimization method and device of virtual objects | |
US11403574B1 (en) | Method and system for optimizing an item assortment | |
WO2019027564A1 (en) | Automated item assortment system | |
US20180089612A1 (en) | Decision Support System for Optimizing the Unit Identifier Stocking Decision |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: WALGREEN CO., ILLINOIS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BERGSTROM, JOHN;PISINGER, DAVID;SIGNING DATES FROM 20100420 TO 20100701;REEL/FRAME:024839/0253 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |