EP1537503A2 - Retail store performance optimization system - Google Patents

Retail store performance optimization system

Info

Publication number
EP1537503A2
EP1537503A2 EP03722381A EP03722381A EP1537503A2 EP 1537503 A2 EP1537503 A2 EP 1537503A2 EP 03722381 A EP03722381 A EP 03722381A EP 03722381 A EP03722381 A EP 03722381A EP 1537503 A2 EP1537503 A2 EP 1537503A2
Authority
EP
European Patent Office
Prior art keywords
customer
individual
retail store
individual discount
discount
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.)
Ceased
Application number
EP03722381A
Other languages
German (de)
French (fr)
Inventor
Cem M. Baydar
Valery A. Petrushin
Anatole V. Gershman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Accenture Global Services GmbH
Original Assignee
Accenture Global Services GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US10/189,701 external-priority patent/US20030187708A1/en
Priority claimed from US10/190,004 external-priority patent/US20030187738A1/en
Application filed by Accenture Global Services GmbH filed Critical Accenture Global Services GmbH
Publication of EP1537503A2 publication Critical patent/EP1537503A2/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • This invention generally relates to marketing systems for giving individual discounts to customers. More particularly, this invention relates to a system for simulating and optimizing the performance of a retail store in relation to profits, sales volume, and customer satisfaction.
  • the clustering approach groups or segments customers by one or more attributes such as demographics. These attributes may have little correlation to the buying behavior of the customer. Further, not all customers in a particular group would necessarily have the same buying behavior.
  • the one-to-one marketing approach is a customer relationship management system that aims to build customer loyalty by trying to sell as many as products as possible to one customer at a time.
  • One-to-one marketing aims to treat each customer as an individual rather than a part of a segment.
  • Frequent flyer programs offered by airliners are one example of one-to-one marketing.
  • Many grocery chains offer customer loyalty programs which use the clustering approach. More than half of all U.S households participate in some type of loyalty card program for grocery shopping.
  • a loyalty card program enables a consumer to obtain product discounts when the "card" is presented at the retail store.
  • these loyalty programs apply one or more blanket couponing techniques by giving the same coupons or discounts to all of their subscribers.
  • the information about each individual's shopping behavior generally is underutilized, because data from multiple consumers is aggregated and averaged. These techniques usually assume that most people have similar product and price preferences. However, humans are different. Each individual has his or her own preference of products and price levels.
  • Some grocery chains use one-to-one marketing. In the grocery business, almost every customer is a repeat buyer and grocery goods are consumed at an essentially constant rate. Usually, there are sufficient data to model each regular customer's shopping behavior. Grocery chains that offer one-to-one marketing programs typically model each customer separately to provide him or her individual coupons that could improve a store's performance. There are various modeling directions to model individual customer behaviors including ?m ' te mixture models and multivariate continuous models. In finite mixture models, shopping behavior is obtained by combining basic transaction behaviors obtained from the data. However, many finite mixture models provide poor approximations. Multivariate continuous models typically use Bayesian Reasoning, Markov Chain Monte Carlo, and other methods incorporating observable household characteristics data, such as demographics. [0007] The Internet is another medium in which one-to-one marketing can occur.
  • one-to-one marketing programs typically are difficult to optimize given the presence of many variables and lack of knowledge regarding the performance and location of the optimal and sub-optimal points in the search space.
  • some domains may be stochastic by nature, which makes providing optimal solutions a difficult task.
  • Most optimization approaches are very ineffective when computing individual discounts to optimize store performance.
  • This invention provides a retail store performance optimization system having a simulator and an individual discount or optimization system.
  • the simulator provides one or more individual discounts and determines the retail store performance in relation to the individual discounts.
  • the individual discounts are responsive to models of each customer's shopping behavior, product price variables, and a store's strategy to improve performance.
  • the individual discount or optimization system uses a modified simulated annealing operation to determine the optimal or better individual discounts for each customer that have the minimum or maximum value of an object function for optimizing retail store performance.
  • the retail store performance optimization system has a simulator connected to a customer-product database, a user input device, and an optimization system.
  • the customer-product database stores product price variables and outputs from customer models.
  • the user input device receives a store strategy.
  • the optimization system determines one or more individual discounts for each customer.
  • the simulator provides a result in response to input parameters from the customer-product database, the user input device, and the optimization system.
  • the result includes one or more individual discounts for each customer and the retail store performance in relation to the individual discounts.
  • the retail store is modeled.
  • a store strategy is defined.
  • One or more customer models are generated.
  • One or more agent-based simulations are performed.
  • An individual discount for each customer is identified.
  • the individual discount optimizes the retail store performance.
  • the individual discount may be a coupon and/or rebate.
  • An individual discount system for optimizing retail store performance has a modified simulated annealing operation to determine an individual discount in response to an objective function and one or more customer models.
  • the individual discount may be a coupon and/or rebate.
  • the modified simulated annealing operation has a deterministic selection of initial starting points and/or a weighted relation of next generation starting points.
  • input parameters are selected for a modified simulated annealing operation.
  • a search space is divided in response to the input parameters.
  • Initial starting points are generated in the search space.
  • a random neighbor is selected for such initial starting point.
  • An average fitness of the initial starting points is evaluated.
  • New starting points are generated in response to the average fitness.
  • An optimal individual discount is determined in response to the new starting parts.
  • the individual discount may be a coupon and/or rebate.
  • Figure 1 represents a block diagram or flow chart of a simulation and optimization system according to an embodiment.
  • Figure 2 represents a block diagram or flow chart of a simulation and optimization system according to another embodiment.
  • Figure 3 represents a view of a Graphical User Interface (GUI).
  • GUI Graphical User Interface
  • Figure 4 represents an output screen showing the results of the simulation and optimization system.
  • Figure 5 represents a block diagram or flow chart of an individual discount system for providing individual discounts to optimize retail store performance.
  • Figure 6 is a flowchart of a method for optimizing retail store performance with individual discounts.
  • Figure 1 represents a block diagram or flow chart of a simulation and optimization system 100 that optimizes retail store performance by giving individual discounts.
  • a store model is constructed 102 by modeling the products in the store, the purchasing and stocking costs of the products, and the replenishment rates of the products.
  • a store strategy is defined 104 by the relative importance of three factors — profits, sales volume, and customer loyalty. Other factors may be used.
  • Customer models or agents are generated 106 from transactional and/or other data. These models represent individual customer shopping behaviors, such as shopping frequency, buying probability of each product, and the customer's satisfaction function.
  • Agent-based simulations identify 108, optionally with input from an optimization system 110 and the store model 102, the set of discounts 112 for each customer to optimize the store's performance.
  • the optimization system 110 determines the optimal discounts 112 to maximize or increase the store's performance in response to the store strategy 104. While a particular configuration is shown or discussed, other configurations may be used including those with fewer or additional components and operations.
  • the simulation and optimization system 100 uses an agent-based modeling and simulation approach that is different from a store optimization research approach, which uses complex mathematical equations to account for revenues, costs, and sales volume.
  • Agent-based modeling uses only equations governing the micro-social structure (i.e., shopping behavior of each individual). The overall macroscopic structure of the system is generated from the bottom-up.
  • the revenue, costs, and sales volume are determined by summing up each individual customer's shopping activity such as his or her shopping frequency and spending.
  • FIG. 2 represents a block diagram or flowchart of another simulation and optimization system 200 to optimize retail store performance by giving individual discounts.
  • the simulation and optimization system 200 has a simulator 208 that provides results (individual discounts and the expected retail store performance from the individual discounts) 212 in response to inputs from a customer-product database 214, a Graphical User Interface (GUI) 216, and an optimization system 210.
  • the GUI 216 accepts user inputs 204 from one or more users or managers of the store whose performance optimization is desired.
  • the optimization system 210 determines the optimal or better discounts for each customer to satisfy a store strategy.
  • the simulator 208 determines the retail store performance in response to the individual discounts.
  • Individual discounts include coupons, rebates, and similar price reductions or bulk purchases of a product or products. Individual discounts are responsive to the shopping behavior of a particular customer. Group discounts, which may be given to customers individually, are responsive to the shopping behavior of multiple customers (e.g., the customers within a zip code receive a cents-off coupon for a product). Price reductions and bulk purchases include cents-off coupons, buy-one-get-one-free offers, and the like. Individual discounts may be provided in a physical form such as on paper, plastic, or the like for presentation to a cashier when a customer purchases items at a retail store.
  • Individual discounts also may be provided in electronic form as a stored data file that the customer accesses when the customer purchases items at a retail store. To access the discounts, the customer may provide a key code or password such as name, telephone, address, a combination thereof, and the like. Individual discount also may be provided in a combined physical and electronic form such as when the individual discounts are provided in the form of a stored data file that a customer accesses via a customer loyalty card. The individual discounts may be provided in other forms.
  • the customer-product database 214 holds or stores product price variables 202 and outputs from customer models 206. In one aspect, the customer-product database 214 is implemented by Microsoft® Access® software from Microsoft Corporation. Other database formats may be used.
  • the product price variables 202 include the purchasing costs and the stock keeping cost for each product. The purchasing cost is the acquisition cost of that product to the store. The stock keeping or inventory cost is the cost for the store to keep one quantity of that product for one day.
  • Customer models 206 are mathematical representations of shopping behavior for each customer.
  • a customer model can be composed of one or more parameters such as shopping frequency (for example, once per week on Saturdays), buying probability for each product, consumption rate of each product (for example, two gallons of milk per week), price sensitivity for each product, product dependency or substitutions, and a satisfaction function.
  • the customer models 206 are generally probabilistic, meaning that shopping behavior can be anticipated up to a certain possibility. For example, if the customer comes into the store, there is a 90% probability that the customer will buy milk. Price sensitivity defines the customer's response to a price change. For example, if the customer is highly price sensitive to a price change in ground beef, a moderate discount would increase his probability of buying ground beef. A customer may have different price sensitivities for each product. For example, a customer who is highly price sensitive to beef may be low price sensitive to eggs.
  • Product dependencies represent each customer's product groups for substitutes and complements.
  • substitute products if a customer buys one product, the customer will not buy the other product.
  • multiple products of Coca-Cola may be substitutes for each other, and the customer may buy either of several Coca-Cola products.
  • the store manager gives a discount coupon to that customer for one product to increase the buying probability of that product, the store manager also decreases the buying probability of another product for that customer.
  • the dependency relationship is directly proportional. For example, if buying macaroni increases the buying probability of cheddar cheese (for preparation of macaroni and cheese), then having a discount on either of macaroni or cheddar cheese will increase or complement the buying probability of the other product.
  • a satisfaction function represents a customer's satisfaction level after shopping is completed.
  • the satisfaction function may depend on favorite items and their prices. For example, a customer may not be satisfied fully if a favorite product is more expensive than previously believed.
  • the satisfaction function level is represented as a percentage. For completely satisfied customers, the satisfaction level is 100.
  • the satisfaction level affects the next arrival time of the customer at the store. The customer may skip shopping at the store if the satisfaction level is too low.
  • Figure 3 represents a view of the GUI 216 that gathers inputs supplied by a user and provides these inputs to the simulator 208.
  • the GUI 216 may be another user input device.
  • the user may input the number of days to simulate (simulation period) 320, the replenishment cycle of the products 322, the replenishment threshold of the products 324, the replenishment site of the products 326, the number of times to simulate one shopping day 328, and the store strategy 104.
  • Other inputs or parameters may be also be entered by a user.
  • the replenishment parameters determine the supply rate of a product, such as the truck arrival rate to resupply the store with the product.
  • the replenishment rate may be four days
  • the replenishment threshold may be 200 items
  • the replenishment site may be 300 items.
  • the product stock or amount in the store is checked once every four days. If the product stock is less than 200 items, another 300 items are added.
  • a user can supply the store strategy to be optimized or individual discounts.
  • the store strategy is in terms of profits, sales volume, and customer satisfaction, which may be adjusted.
  • the store strategy may be based on other or different parameters.
  • User defined individual discounts may be used to simulate and compare store performance with a new discount or other discount price strategy.
  • the user can also retrieve past simulation parameters and related results from the simulation history database 218 (See Figure 2), which also may use Microsoft® Access® or another database format.
  • the simulator 208 simulates the shopping behavior for a period of time and in response to the various input parameters.
  • a typical simulation of a shopping day for each individual customer at a retail store includes: the customer comes to the store; the customer looks at the prices of the item in the store; the customer buys products based on the buying probability, the satisfaction function or the satisfaction level; and the customer leaves the store.
  • Buying probability is influenced by discounts and the customer's price sensitivity towards particular products. Other simulations may be used.
  • the simulation is applied for all customers who come to the store on the same day.
  • the numerical method used in the simulation is Monte Carlo simulation. Other numerical methods may be used.
  • the sampled process parameters of the simulation include each customer's shopping behavior, which consists of price sensitivities, buying probabilities, and the likelihood of arrival to the store. Other parameters may be used. This simulation can be repeated several times depending on user's preference to obtain an average, a standard deviation, and other statistical values for the shopping process.
  • Figure 4 represents an output screen showing results of the simulation and optimization system.
  • the results or outputs include average and standard deviation values for estimated revenues, costs (inventory and product purchase), sales volume, customer satisfaction, and minimum customer satisfaction.
  • the results also include the sales and profit performance compared to a non-discounted pricing strategy, as well as the inventory change of each product over time and the inventory cost of each product.
  • the results or outputs include the discounted products and discounted amount, the average satisfaction level, and the average quantity bought of each product.
  • the results also include the change in average spending compared to the non-discount strategy as well as the change in average satisfaction in percent compared to the non-discount strategy. Other results may be obtained.
  • Figure 5 represents a block diagram or flow chart of an individual discount system 510 for providing individual discounts to optimize retail store performance.
  • a modified simulated annealing operation 532 provides the best or optimal individual discounts 540 in response to an objective function 536, input parameters 538, and customer models 506. While particular configurations are shown and discussed, other configurations may be used including those with fewer or additional components.
  • the modified simulated annealing operation 532 determines the best or optimal individual discounts for optimizing retail store performance.
  • the simulated annealing operation is a randomized local search for finding optimal solutions.
  • Modified simulated annealing derives from the roughly analogous physical process of heating and slowly cooling a substance to obtain a crystalline structure.
  • the modified simulated annealing operation 532 finds a solution in the set of all possible solutions that has the minimum or maximum value of the objective function 536.
  • the objective function 536 is a mathematical representation of a retail store strategy.
  • the objective function is associated with a particular optimization objective, such as store performance, that determines how good a result or solution is.
  • the modified simulated annealing operation 532 finds a set of individual discounts which satisfy the store strategy.
  • the objective function 536 is composed of several relative objectives such as profits, sales volume and customer satisfaction. Other objectives may be used.
  • a grocery store manager or other authority decides the store strategy based on the relative importance of these goals or objectives. Some goals are contradictory. For example, a store manager could maximize customer satisfaction by reducing all prices to zero, but that would eliminate any profit. What determines overall store performance is the relative importance of each objective. This relative importance can be defined or set by using a coefficient, a weight, for each objective.
  • an objective function may be the following system:
  • the variables x, y and z are the objectives (which can be profits, sales volume and customer satisfaction).
  • the weights for these objectives are 0.2, 0.5 and 0.3.
  • objective y has the most importance.
  • the total value of all weights is equal to 1.
  • Input parameters 538 are the numeric values required by the modified simulated annealing operation 532.
  • the input parameters 538 include the number of subpopulations, subpopulation size, starting temperature, temperature reduction rate, and cooling temperature.
  • the input parameters 538 may include other values.
  • Customer models 506 are the mathematical representations of customers' shopping behavior. There is one model supplied for each customer.
  • a customer model can contain a customer's shopping frequency (i.e., once a week on Saturdays), price sensitivity, consumption rate for each product, preferred product groups, and the like. Several other parameters can also be included in a customer's model to represent his or her shopping behavior accurately.
  • the individual discounts 540 are provided by the modified simulated annealing operation 532 to maximize retail store performance based on the supplied objective function 536.
  • Figure 6 is a flowchart of a method for optimizing retail store performance with individual discounts.
  • the method provides a modified simulated annealing operation where there is a deterministic selection of starting points and a weighted selection of new starting points with each generation.
  • the deterministic and weighted selections enable the modified simulated annealing operation to determine the individual discounting very efficiently.
  • the method for optimizing retail store performance finds a maximum value of an objective function, as discussed above. However, the method for optimizing retail store performance may also be modified to find a minimum value of an objective function.
  • the starting temperature ⁇ , temperature reduction rate r, and cooling temperature T c are selected 650.
  • the starting temperature 7 ⁇ , temperature reduction rate r, and the cooling temperature T c are selected arbitrarily and control the number of generations or iterations of the modified simulated annealing operation.
  • the use of temperatures or a temperature reduction rate has no relation to physical reality, but in keeping with the modification of a modified simulated annealing operation, allows a user to determine the number of iterations or the length of a "run" of the modified simulated annealing operation.
  • the temperature reduction rate r reduces the starting temperature T s or successive temperature values.
  • the modified simulated annealing operation stops when the temperature is equal to or less than the cooling temperature T c .
  • the number of subpopulations and the subpopulation size m are selected 652.
  • the search space is divided 654 into n equal parts.
  • the total number of starting points S will be n * m.
  • the search space for an algorithm for a retail store may have up to 50,000 products and 5,000 customers. From each partition of the search space, m number of starting points S are randomly generated 656. This deterministic selection of the initial starting points enables all parts of the search space to be explored.
  • the operating temperature T 0 is set 658 to the starting temperature T s .
  • a random neighbor S is picked 660 for each starting point S.
  • a random neighbor S is a point in the partition of the search space adjacent to the starting point S in that partition. For example, points (1,0) and (1,1) are neighbors.
  • a difference value greater than zero means that a particular solution in a particular iteration is approaching the goal set by the objective function, while a difference less than zero means that the particular solution does not approach the goal set by the objective function.
  • a difference less than zero means that the particular solution does not approach the goal set by the objective function.
  • the difference ⁇ is compared 664 to zero. If the difference is greater than or equal to zero, then the starting point S is set 666 to random neighbor S . If the difference is less than zero, then the starting point S is set 668 to random neighbor S with a probability of exp ( ⁇ / T Q ) .
  • the average fitness AF of the whole population is evaluated 670.
  • the average fitaess AF is an average of the objective function f(x) as applied to each of the starting points, an average f(s) value of the whole population.
  • the average fitaess AF is determined by calculating the objective function as applied to each starting point f(s) and dividing the summation of all the objective functions by the total number of starting points as represented by the following equation:
  • Each starting point S is copied 672 to the next generation or iteration in response to the relation between the objective function as applied to the starting point
  • the weighted selection of the next generation of starting points would then eliminate starting points having fitness values f(s) below the average fitaess AF, replacing these points with starting points having fitaess values above the average fitaess AF.
  • the convergence for an optimal solution is obtained more quickly since more promising regions of the search space are explored as points having a fitaess value below the average are replaced with more promising points.
  • the new operating temperature T 0 is set to equal the previous operating
  • T 0 is compared 674 to the cooling temperature T c . If the new operating temperature T 0 is greater than the cooling temperatare T c , a new random neighbor S is picked 660
  • the new operating temperature T 0 is less than or equal to the cooling temperature T c ,
  • a standard modified simulated annealing operation to illustrate the general principle of the method is illustrated. This example has four iterations. Even though “the "temperature” and “temperature reduction rate” have no physical reality, the method uses them to control the number of iterations and the length of a particular operation. This example does not utilize the average fitaess or weights discussed above.
  • T 0 1.25*0.5
  • To 0.625 ⁇ T c
  • a modified simulated annealing operation selects a plurality of starting points in order to search the search space more efficiently.
  • the modified method works in the following manner.
  • a plurality of points is selected, the selection being made in a random or in a deterministic manner.
  • deterministic is meant that there is a particular method or formula used to pick the points, e.g. the central point in each of the n parts of the search space, or the point whose added coordinates form the smallest sum, or the point whose added coordinates form the largest sum.
  • Other deterministic formulae or criteria may be used.
  • each point selected also select a random neighbor, a neighbor defined as differing by not more than 1 integer in each dimension of the search space.
  • the "average fitaess” is the sum of the objective function for each point divided by the number of points.
  • Each starting point is copied to the next generation by its f(s) (objective function) divided by the AF. As stated above, this value may be rounded up, rounded down, or sometimes rounded up and sometimes rounded down. Points having a function value less than the average are not copied to the next iteration. Thus, the convergence to an optimal solution is achieved.
  • the modified simulated annealing operation may be applied to stock portfolio selection.
  • stock portfolio selection With a limited amount of money, there are specific numbers of stocks and bonds that can be bought. Each stock and bond has a risk factor and an expected return for a specified period of time.
  • the decision functions on risk taken and expected return can be formulated as:
  • the modified simulated annealing operation could provide an optimal solution by identifying the stocks and bonds and the amount of spending that will give the maximum return and minimum risk. Several starting points are generated. Each point represents a combined set of stocks and bonds and the amount of spending on each stock and bond. Then, using the modified simulated annealing operation previously described, the optimal selection of bonds and stocks and the amount of spending needed can be found.
  • the modified simulated annealing operation may be applied to the design of a factory floor.
  • each machine has a specification based on the time required to produce a specific part and the cost of the machine.
  • the objective is to determine the combination of machines to use that minimizes spending and the overall time required to produce parts.
  • the objective function is:
  • a modified simulated annealing operation can provide the combination of machines that will provide an optimal design. Several starting points are selected in the decision space. Each point represents a set of machines. Then using the modified simulated annealing operation, the optimum configuration of the factory floor is determined. Of course, in using a modified simulated annealing operation for optimizing performance of a store, the variables in the objective function will be those associated with coupons, pricing, price sensitivity, customer satisfaction, sales, profits, profit margins, and the like. Various embodiments of the invention have been described and illustrated.

Abstract

A retail store performance optimization system has a simulator and an optimization system. The simulator provides individual discounts and determines the retail store performance in relation to the individual discounts. The individual discounts are responsive to input parameters such as price variables, customer models, and user inputs. Product price variables include purchasing costs, inventory costs, and replenishment rates. Customer models represent customer shopping behaviors. User inputs include a store strategy providing the relative importance of profits, sales volume, and customer loyalty. The optimization or individual discount system uses a modified simulated annealing operation to determine the optimal or better individual discounts for each customer that optimize store performance. The modified simulated annealing operation provides individual discounts in response to an objective function and customer models. The objective function is a mathematical representation of the retail store strategy for optimizing performance.

Description

RETAIL STORE PERFORMANCE OPTIMIZATION SYSTEM
FIELD OF THE INVENTION [0001] This invention generally relates to marketing systems for giving individual discounts to customers. More particularly, this invention relates to a system for simulating and optimizing the performance of a retail store in relation to profits, sales volume, and customer satisfaction.
BACKGROUND OF THE INVENTION
[0002] As competition in the retail industry increases, retailers want to optimize store performance. For sectors such as grocery retail that have tighter profit margins and where customer loyalty is dependent on product prices, it is important to understand customer behavior and to manage customer relationships appropriately. In marketing to these sectors, there are several approaches to customer relationship management. These approaches include clustering and one-to-one marketing. [0003] The clustering approach groups or segments customers by one or more attributes such as demographics. These attributes may have little correlation to the buying behavior of the customer. Further, not all customers in a particular group would necessarily have the same buying behavior. [0004] The one-to-one marketing approach is a customer relationship management system that aims to build customer loyalty by trying to sell as many as products as possible to one customer at a time. One-to-one marketing aims to treat each customer as an individual rather than a part of a segment. Frequent flyer programs offered by airliners are one example of one-to-one marketing. There are similar types of loyalty programs offered by on-line music retailers. [0005] Many grocery chains offer customer loyalty programs which use the clustering approach. More than half of all U.S households participate in some type of loyalty card program for grocery shopping. A loyalty card program enables a consumer to obtain product discounts when the "card" is presented at the retail store. However, these loyalty programs apply one or more blanket couponing techniques by giving the same coupons or discounts to all of their subscribers. In these techniques, the information about each individual's shopping behavior generally is underutilized, because data from multiple consumers is aggregated and averaged. These techniques usually assume that most people have similar product and price preferences. However, humans are different. Each individual has his or her own preference of products and price levels.
[0006] Some grocery chains use one-to-one marketing. In the grocery business, almost every customer is a repeat buyer and grocery goods are consumed at an essentially constant rate. Usually, there are sufficient data to model each regular customer's shopping behavior. Grocery chains that offer one-to-one marketing programs typically model each customer separately to provide him or her individual coupons that could improve a store's performance. There are various modeling directions to model individual customer behaviors including ?m'te mixture models and multivariate continuous models. In finite mixture models, shopping behavior is obtained by combining basic transaction behaviors obtained from the data. However, many finite mixture models provide poor approximations. Multivariate continuous models typically use Bayesian Reasoning, Markov Chain Monte Carlo, and other methods incorporating observable household characteristics data, such as demographics. [0007] The Internet is another medium in which one-to-one marketing can occur.
Online grocery stores can benefit from targeted couponing by analyzing their customer's shopping, behavior and even their customers' browsing behavior using click-stream data. Several software applications are available to log a user's browsing movements on a website. These movements can later be used for customer modeling. In the retail industry, most supermarkets use customer loyalty cards to obtain market data and provide documents. Several companies have started to analyze this data for one-to-one marketing. Some supermarkets already have identified over 5,000 "needs segments" among their customers and have improved inventory management, product selection, pricing and discounts. Other supermarkets have more than 1.8 terabytes of market data and are able to analyze markets to obtain customer purchasing behavior.
[0008] While several one-to-one marketing programs have been proposed, these approaches usually do not optimize the store performance in relation to the discounts. The reason is that the customer shopping behavior models are probabilistic and usually have a search space consisting of at least 30,000 products and 1,000 customers. This search space makes finding optimal discounts for each customer computationally difficult even for high-performance optimization methods. As a consequence, store performance optimization usually remains at the assortment and layout optimization level, where the number of the products as well as their store layout is considered.
[0009] In addition, one-to-one marketing programs typically are difficult to optimize given the presence of many variables and lack of knowledge regarding the performance and location of the optimal and sub-optimal points in the search space. In addition, some domains may be stochastic by nature, which makes providing optimal solutions a difficult task. Most optimization approaches are very ineffective when computing individual discounts to optimize store performance.
SUMMARY
[0010] This invention provides a retail store performance optimization system having a simulator and an individual discount or optimization system. The simulator provides one or more individual discounts and determines the retail store performance in relation to the individual discounts. The individual discounts are responsive to models of each customer's shopping behavior, product price variables, and a store's strategy to improve performance. The individual discount or optimization system uses a modified simulated annealing operation to determine the optimal or better individual discounts for each customer that have the minimum or maximum value of an object function for optimizing retail store performance.
[0011] The retail store performance optimization system has a simulator connected to a customer-product database, a user input device, and an optimization system. The customer-product database stores product price variables and outputs from customer models. The user input device receives a store strategy. The optimization system determines one or more individual discounts for each customer. The simulator provides a result in response to input parameters from the customer-product database, the user input device, and the optimization system. The result includes one or more individual discounts for each customer and the retail store performance in relation to the individual discounts.
[0012] In a method for optimizing the performance of a retail store, the retail store is modeled. A store strategy is defined. One or more customer models are generated. One or more agent-based simulations are performed. An individual discount for each customer is identified. The individual discount optimizes the retail store performance. The individual discount may be a coupon and/or rebate.
[0013] An individual discount system for optimizing retail store performance has a modified simulated annealing operation to determine an individual discount in response to an objective function and one or more customer models. The individual discount may be a coupon and/or rebate. The modified simulated annealing operation has a deterministic selection of initial starting points and/or a weighted relation of next generation starting points.
[0014] In a method for optimizing retail store performance with individual discounts, input parameters are selected for a modified simulated annealing operation. A search space is divided in response to the input parameters. Initial starting points are generated in the search space. A random neighbor is selected for such initial starting point. An average fitness of the initial starting points is evaluated. New starting points are generated in response to the average fitness. An optimal individual discount is determined in response to the new starting parts. The individual discount may be a coupon and/or rebate.
[0015] Other systems, methods, features, and advantages of the invention will be or will become apparent to one skilled in the art upon examination of the following figures and detailed description. All such additional systems, methods, features, and advantages are intended to be included within this description, within the scope of the invention, and protected by the accompanying claims. BRIEF DESCRIPTION OF THE FIGURES
[0016] The invention may be better understood with reference to the following figures and detailed description. The components in the figures are not necessarily to scale, emphasis being placed upon illustrating the principles of the invention.
Moreover, like reference numerals in the figures designate corresponding parts throughout the different views. [0017] Figure 1 represents a block diagram or flow chart of a simulation and optimization system according to an embodiment. [0018] Figure 2 represents a block diagram or flow chart of a simulation and optimization system according to another embodiment. [0019] Figure 3 represents a view of a Graphical User Interface (GUI).
[0020] Figure 4 represents an output screen showing the results of the simulation and optimization system. [0021] Figure 5 represents a block diagram or flow chart of an individual discount system for providing individual discounts to optimize retail store performance. [0022] Figure 6 is a flowchart of a method for optimizing retail store performance with individual discounts.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0023] Figure 1 represents a block diagram or flow chart of a simulation and optimization system 100 that optimizes retail store performance by giving individual discounts. A store model is constructed 102 by modeling the products in the store, the purchasing and stocking costs of the products, and the replenishment rates of the products. A store strategy is defined 104 by the relative importance of three factors — profits, sales volume, and customer loyalty. Other factors may be used. Customer models or agents are generated 106 from transactional and/or other data. These models represent individual customer shopping behaviors, such as shopping frequency, buying probability of each product, and the customer's satisfaction function. Agent-based simulations identify 108, optionally with input from an optimization system 110 and the store model 102, the set of discounts 112 for each customer to optimize the store's performance. The optimization system 110 determines the optimal discounts 112 to maximize or increase the store's performance in response to the store strategy 104. While a particular configuration is shown or discussed, other configurations may be used including those with fewer or additional components and operations.
[0024] The simulation and optimization system 100 uses an agent-based modeling and simulation approach that is different from a store optimization research approach, which uses complex mathematical equations to account for revenues, costs, and sales volume. Agent-based modeling uses only equations governing the micro-social structure (i.e., shopping behavior of each individual). The overall macroscopic structure of the system is generated from the bottom-up. In an agent-based approach, the revenue, costs, and sales volume are determined by summing up each individual customer's shopping activity such as his or her shopping frequency and spending.
[0025] Figure 2 represents a block diagram or flowchart of another simulation and optimization system 200 to optimize retail store performance by giving individual discounts. The simulation and optimization system 200 has a simulator 208 that provides results (individual discounts and the expected retail store performance from the individual discounts) 212 in response to inputs from a customer-product database 214, a Graphical User Interface (GUI) 216, and an optimization system 210. The GUI 216 accepts user inputs 204 from one or more users or managers of the store whose performance optimization is desired. The optimization system 210 determines the optimal or better discounts for each customer to satisfy a store strategy. The simulator 208 determines the retail store performance in response to the individual discounts. While a particular configuration is shown and discussed, the simulation and optimization system 200 may have other configurations including those with fewer additional components. Individual discounts include coupons, rebates, and similar price reductions or bulk purchases of a product or products. Individual discounts are responsive to the shopping behavior of a particular customer. Group discounts, which may be given to customers individually, are responsive to the shopping behavior of multiple customers (e.g., the customers within a zip code receive a cents-off coupon for a product). Price reductions and bulk purchases include cents-off coupons, buy-one-get-one-free offers, and the like. Individual discounts may be provided in a physical form such as on paper, plastic, or the like for presentation to a cashier when a customer purchases items at a retail store. Individual discounts also may be provided in electronic form as a stored data file that the customer accesses when the customer purchases items at a retail store. To access the discounts, the customer may provide a key code or password such as name, telephone, address, a combination thereof, and the like. Individual discount also may be provided in a combined physical and electronic form such as when the individual discounts are provided in the form of a stored data file that a customer accesses via a customer loyalty card. The individual discounts may be provided in other forms. [0027] The customer-product database 214 holds or stores product price variables 202 and outputs from customer models 206. In one aspect, the customer-product database 214 is implemented by Microsoft® Access® software from Microsoft Corporation. Other database formats may be used. The product price variables 202 include the purchasing costs and the stock keeping cost for each product. The purchasing cost is the acquisition cost of that product to the store. The stock keeping or inventory cost is the cost for the store to keep one quantity of that product for one day.
[0028] Customer models 206 are mathematical representations of shopping behavior for each customer. A customer model can be composed of one or more parameters such as shopping frequency (for example, once per week on Saturdays), buying probability for each product, consumption rate of each product (for example, two gallons of milk per week), price sensitivity for each product, product dependency or substitutions, and a satisfaction function.
[0029] The customer models 206 are generally probabilistic, meaning that shopping behavior can be anticipated up to a certain possibility. For example, if the customer comes into the store, there is a 90% probability that the customer will buy milk. Price sensitivity defines the customer's response to a price change. For example, if the customer is highly price sensitive to a price change in ground beef, a moderate discount would increase his probability of buying ground beef. A customer may have different price sensitivities for each product. For example, a customer who is highly price sensitive to beef may be low price sensitive to eggs.
[0030] Product dependencies represent each customer's product groups for substitutes and complements. With substitute products, if a customer buys one product, the customer will not buy the other product. For a particular customer, for example, multiple products of Coca-Cola may be substitutes for each other, and the customer may buy either of several Coca-Cola products. When a store manager gives a discount coupon to that customer for one product to increase the buying probability of that product, the store manager also decreases the buying probability of another product for that customer. With complementary products, the dependency relationship is directly proportional. For example, if buying macaroni increases the buying probability of cheddar cheese (for preparation of macaroni and cheese), then having a discount on either of macaroni or cheddar cheese will increase or complement the buying probability of the other product.
[0031] A satisfaction function represents a customer's satisfaction level after shopping is completed. The satisfaction function may depend on favorite items and their prices. For example, a customer may not be satisfied fully if a favorite product is more expensive than previously believed. The satisfaction function level is represented as a percentage. For completely satisfied customers, the satisfaction level is 100. The satisfaction level affects the next arrival time of the customer at the store. The customer may skip shopping at the store if the satisfaction level is too low.
[0032] Figure 3 represents a view of the GUI 216 that gathers inputs supplied by a user and provides these inputs to the simulator 208. The GUI 216 may be another user input device. The user may input the number of days to simulate (simulation period) 320, the replenishment cycle of the products 322, the replenishment threshold of the products 324, the replenishment site of the products 326, the number of times to simulate one shopping day 328, and the store strategy 104. Other inputs or parameters may be also be entered by a user. [0033] The replenishment parameters determine the supply rate of a product, such as the truck arrival rate to resupply the store with the product. For example, the replenishment rate may be four days, the replenishment threshold may be 200 items, and the replenishment site may be 300 items. In this example, the product stock or amount in the store is checked once every four days. If the product stock is less than 200 items, another 300 items are added.
[0034] Since shopping behavior is probabilistic, the shopping process is simulated several times to obtain average output values and other statistical properties, such as standard deviations. The user can enter the simulation size as an input.
[0035] In addition, a user can supply the store strategy to be optimized or individual discounts. The store strategy is in terms of profits, sales volume, and customer satisfaction, which may be adjusted. The store strategy may be based on other or different parameters. User defined individual discounts may be used to simulate and compare store performance with a new discount or other discount price strategy. The user can also retrieve past simulation parameters and related results from the simulation history database 218 (See Figure 2), which also may use Microsoft® Access® or another database format.
[0036] In Figure 2, the simulator 208 simulates the shopping behavior for a period of time and in response to the various input parameters. A typical simulation of a shopping day for each individual customer at a retail store includes: the customer comes to the store; the customer looks at the prices of the item in the store; the customer buys products based on the buying probability, the satisfaction function or the satisfaction level; and the customer leaves the store. Buying probability is influenced by discounts and the customer's price sensitivity towards particular products. Other simulations may be used.
[0037] The simulation is applied for all customers who come to the store on the same day. The numerical method used in the simulation is Monte Carlo simulation. Other numerical methods may be used. The sampled process parameters of the simulation include each customer's shopping behavior, which consists of price sensitivities, buying probabilities, and the likelihood of arrival to the store. Other parameters may be used. This simulation can be repeated several times depending on user's preference to obtain an average, a standard deviation, and other statistical values for the shopping process.
[0038] Figure 4 represents an output screen showing results of the simulation and optimization system. The results or outputs include average and standard deviation values for estimated revenues, costs (inventory and product purchase), sales volume, customer satisfaction, and minimum customer satisfaction. The results also include the sales and profit performance compared to a non-discounted pricing strategy, as well as the inventory change of each product over time and the inventory cost of each product. For each customer, the results or outputs include the discounted products and discounted amount, the average satisfaction level, and the average quantity bought of each product. In addition, for each customer, the results also include the change in average spending compared to the non-discount strategy as well as the change in average satisfaction in percent compared to the non-discount strategy. Other results may be obtained. These results may be saved in the simulation history database 218 (see Figure 2). [0039] Figure 5 represents a block diagram or flow chart of an individual discount system 510 for providing individual discounts to optimize retail store performance. In the individual discount or optimization system 510, a modified simulated annealing operation 532 provides the best or optimal individual discounts 540 in response to an objective function 536, input parameters 538, and customer models 506. While particular configurations are shown and discussed, other configurations may be used including those with fewer or additional components.
[0040] The modified simulated annealing operation 532 determines the best or optimal individual discounts for optimizing retail store performance. The simulated annealing operation is a randomized local search for finding optimal solutions. Modified simulated annealing derives from the roughly analogous physical process of heating and slowly cooling a substance to obtain a crystalline structure. The modified simulated annealing operation 532 finds a solution in the set of all possible solutions that has the minimum or maximum value of the objective function 536. The objective function 536 is a mathematical representation of a retail store strategy. The objective function is associated with a particular optimization objective, such as store performance, that determines how good a result or solution is. After the store strategy or objective function 536 is defined, the modified simulated annealing operation 532 finds a set of individual discounts which satisfy the store strategy.
[0041] The objective function 536 is composed of several relative objectives such as profits, sales volume and customer satisfaction. Other objectives may be used. A grocery store manager or other authority decides the store strategy based on the relative importance of these goals or objectives. Some goals are contradictory. For example, a store manager could maximize customer satisfaction by reducing all prices to zero, but that would eliminate any profit. What determines overall store performance is the relative importance of each objective. This relative importance can be defined or set by using a coefficient, a weight, for each objective. For example, an objective function may be the following system:
[0042] f{x, y, z) = 0.2 * x + 0.5 * y + 0.3 * z .
[0043] The variables x, y and z are the objectives (which can be profits, sales volume and customer satisfaction). The weights for these objectives are 0.2, 0.5 and 0.3. In this example, objective y has the most importance. The total value of all weights is equal to 1.
[0044] Input parameters 538 are the numeric values required by the modified simulated annealing operation 532. The input parameters 538 include the number of subpopulations, subpopulation size, starting temperature, temperature reduction rate, and cooling temperature. The input parameters 538 may include other values.
[0045] Customer models 506 are the mathematical representations of customers' shopping behavior. There is one model supplied for each customer. A customer model can contain a customer's shopping frequency (i.e., once a week on Saturdays), price sensitivity, consumption rate for each product, preferred product groups, and the like. Several other parameters can also be included in a customer's model to represent his or her shopping behavior accurately. The individual discounts 540 are provided by the modified simulated annealing operation 532 to maximize retail store performance based on the supplied objective function 536. [0046] Figure 6 is a flowchart of a method for optimizing retail store performance with individual discounts. The method provides a modified simulated annealing operation where there is a deterministic selection of starting points and a weighted selection of new starting points with each generation. The deterministic and weighted selections enable the modified simulated annealing operation to determine the individual discounting very efficiently.
[0047] The method for optimizing retail store performance finds a maximum value of an objective function, as discussed above. However, the method for optimizing retail store performance may also be modified to find a minimum value of an objective function.
[0048] At start-up, the starting temperature ^, temperature reduction rate r, and cooling temperature Tc are selected 650. The starting temperature 7^, temperature reduction rate r, and the cooling temperature Tc are selected arbitrarily and control the number of generations or iterations of the modified simulated annealing operation. The use of temperatures or a temperature reduction rate has no relation to physical reality, but in keeping with the modification of a modified simulated annealing operation, allows a user to determine the number of iterations or the length of a "run" of the modified simulated annealing operation. With each iteration, as discussed further below, the temperature reduction rate r reduces the starting temperature Ts or successive temperature values. The modified simulated annealing operation stops when the temperature is equal to or less than the cooling temperature Tc.
[0049] The number of subpopulations and the subpopulation size m are selected 652.
The search space is divided 654 into n equal parts. The total number of starting points S will be n * m. The search space for an algorithm for a retail store may have up to 50,000 products and 5,000 customers. From each partition of the search space, m number of starting points S are randomly generated 656. This deterministic selection of the initial starting points enables all parts of the search space to be explored.
[0050] The operating temperature T0 is set 658 to the starting temperature Ts. A random neighbor S is picked 660 for each starting point S. A random neighbor S is a point in the partition of the search space adjacent to the starting point S in that partition. For example, points (1,0) and (1,1) are neighbors.
[0051] The difference Δ between the objective function ^) as applied to the random neighbor S and as applied to the starting point S is calculated 662 as follows:
[0052] Δ = /(S')-/(S)
[0053] For a maximizing function, a difference value greater than zero means that a particular solution in a particular iteration is approaching the goal set by the objective function, while a difference less than zero means that the particular solution does not approach the goal set by the objective function. For a minimizing function, the opposite is true.
[0054] The difference Δ is compared 664 to zero. If the difference is greater than or equal to zero, then the starting point S is set 666 to random neighbor S . If the difference is less than zero, then the starting point S is set 668 to random neighbor S with a probability of exp (Δ / TQ ) .
[0055] The average fitness AF of the whole population is evaluated 670. The average fitaess AF is an average of the objective function f(x) as applied to each of the starting points, an average f(s) value of the whole population. The average fitaess AF is determined by calculating the objective function as applied to each starting point f(s) and dividing the summation of all the objective functions by the total number of starting points as represented by the following equation:
[0056] Each starting point S is copied 672 to the next generation or iteration in response to the relation between the objective function as applied to the starting point
f(s) and the average fitaess AF. Each starting point is copied 7ω" times to the
AF
next generation. The value of , a real number, is rounded-up, rounded-down,
AF or may be rounded-up in one instance and rounded-down in another instance, to an integer. The weighted selection of the next generation of starting points would then eliminate starting points having fitness values f(s) below the average fitaess AF, replacing these points with starting points having fitaess values above the average fitaess AF. The convergence for an optimal solution is obtained more quickly since more promising regions of the search space are explored as points having a fitaess value below the average are replaced with more promising points.
[0057] The operating temperature To is adjusted 674 by the temperature reduction rate
r. The new operating temperature T0 is set to equal the previous operating
temperature To times the temperature reduction rate r. The new operating temperature
T0 is compared 674 to the cooling temperature Tc. If the new operating temperature T0 is greater than the cooling temperatare Tc, a new random neighbor S is picked 660
for each starting point S and the modified simulated annealing operation continues. If
the new operating temperature T0 is less than or equal to the cooling temperature Tc,
then the solution is returned 678.
[0058] EXAMPLE
[0059] A standard modified simulated annealing operation to illustrate the general principle of the method is illustrated. This example has four iterations. Even though " the "temperature" and "temperature reduction rate" have no physical reality, the method uses them to control the number of iterations and the length of a particular operation. This example does not utilize the average fitaess or weights discussed above.
[0060] The objective is to maximize f(x, y, z) = 2*x - 3*y + z2, in which
[0061] x ε [0,3]
[0062] y ε [0,3]
[0063] z ε [0,3]
[0064] Ts = 10; Tc=l; r=0.5.
[0065] First Iteration or Generation
[0066] To = 10
[0067] Starting point S = (l, 1, 1)
[0068] f(S) = 2*(l)-3(l)+(l)2
[0069] f(S) = 0
[0070] random neighbor S'=(l, 2, 0)
[0071] f(S') = 2*(l)-3(2)+(0) 2
[0072] f(S') = -4
[0074] Δ = -4 - 0
[0075] Δ = -4 <=0
[0076] Probability: exp (-4/10) = 0.67
[0077] The random number sampled from the [0, 1] interval is 0.43
[0078] 0.43 < 0.67 then change the point S with S'
[0079] S = (l,2,0),f(S') = -4
[0080] T0 = 10*0.5
[0081] To =5
[0082] Second Iteration or Generation
[0083] To = 5
[0084] S =(1,2,0)
[0085] random neighbor S '=(2, 1, 1)
[0086] f(S') = 2*(2)-3(l)+(l)2
[0087] f(S') = 2
[0088] Δ = f(S')-f(S)
[0089] Δ = 2-(-4)
[0090] Δ = 6>0
[0091] Since Δ > 0 take (2, 1, 1) as the new S
[0092] S = (2,l,l)
[0093] T0 = 5*0.5
[0094] To =2.5
[0095] Third Iteration or Generation
[0096] To = 2.5
[0097] S = (2, 1,1) [0098] random neighbor S'=(3, 0, 1)
[0099] f(S') = 2*(3)-3(0)+(l)2
[00100] f(S') = 7
[00101] Δ = f(S')-f(S)
[00102] Δ = 7-(2)
[00103] Δ = 5>0
[00104] Since Δ > 0 take (3, 0, 1) as the new S
[00105] S = (3,0,l)
[00106] 70 = 2.5*0.5
[00107] To =1.25
[00108] Fourth Iteration
[00109] To =1.25
[00110] S = (3,0, 1)
[00111] random neighbor S'=(3, 1, 2)
[00112] f(S') = 2*(3)-3(l)+(2)2
[00113] f(S') = 7
[00114] Δ = f(S')-f(S)
[00115] Δ = 7-(7)
[00116] Δ = 0
[00117] Probability: exp (-0/1.25) = 1
[00118] The random number sampled from the
[00119] 0.8 < 1 so select a random neighbor
[00120] S = (3,l,2),f(S) = 7
[00121] T0 =1.25*0.5 [00122] To = 0.625 < Tc
[00123] Return Solution Found
[00124] STOP
[00125] While the preceding example depicts a standard modified simulated annealing operation, one embodiment of a modified simulated annealing operation selects a plurality of starting points in order to search the search space more efficiently. The modified method works in the following manner. A plurality of points is selected, the selection being made in a random or in a deterministic manner. By deterministic is meant that there is a particular method or formula used to pick the points, e.g. the central point in each of the n parts of the search space, or the point whose added coordinates form the smallest sum, or the point whose added coordinates form the largest sum. Other deterministic formulae or criteria may be used.
[00126] For each point selected, also select a random neighbor, a neighbor defined as differing by not more than 1 integer in each dimension of the search space. Evaluate Δ, and based on whether Δ is less than zero, or greater than or equal to zero, pick the point or its nearest neighbor. Then evaluate AF, the average fitaess as defined above. Based on the average fitness, copy or map points to the next iteration. The "average fitaess" is the sum of the objective function for each point divided by the number of points. Each starting point is copied to the next generation by its f(s) (objective function) divided by the AF. As stated above, this value may be rounded up, rounded down, or sometimes rounded up and sometimes rounded down. Points having a function value less than the average are not copied to the next iteration. Thus, the convergence to an optimal solution is achieved.
[00127] In addition to retail store performance, the modified simulated annealing operation may be applied to stock portfolio selection. With a limited amount of money, there are specific numbers of stocks and bonds that can be bought. Each stock and bond has a risk factor and an expected return for a specified period of time. The decision functions on risk taken and expected return can be formulated as:
[00128] Maximize f(x) = x [00129] Minimize f(y) — y [00130] where [00131] x is the overall expected return of the invested stocks and/or bonds and [00132] v is the overall risk factor associated with these stocks and/or bonds
[00133] The decision is focused on which stocks and/or bonds to buy and what amount should be invested in each stock and/or bond.
[00134] The modified simulated annealing operation could provide an optimal solution by identifying the stocks and bonds and the amount of spending that will give the maximum return and minimum risk. Several starting points are generated. Each point represents a combined set of stocks and bonds and the amount of spending on each stock and bond. Then, using the modified simulated annealing operation previously described, the optimal selection of bonds and stocks and the amount of spending needed can be found.
[00135] Optimal Design of a Factory Floor:
[00136] In a similar manner, the modified simulated annealing operation may be applied to the design of a factory floor. To design a factory floor with a specified number of machines, each machine has a specification based on the time required to produce a specific part and the cost of the machine. The objective is to determine the combination of machines to use that minimizes spending and the overall time required to produce parts. The objective function is:
[00137] Minimize f(x, y) = x + y [00138] where [00139] x is the overall time spent on producing products, and [00140] y is the overall spending on the machines used.
[00141] A modified simulated annealing operation can provide the combination of machines that will provide an optimal design. Several starting points are selected in the decision space. Each point represents a set of machines. Then using the modified simulated annealing operation, the optimum configuration of the factory floor is determined. Of course, in using a modified simulated annealing operation for optimizing performance of a store, the variables in the objective function will be those associated with coupons, pricing, price sensitivity, customer satisfaction, sales, profits, profit margins, and the like. Various embodiments of the invention have been described and illustrated.
However, the description and illustrations are by way of example only. Other embodiments and implementations are possible within the scope of this invention and will be apparent to those of ordinary skill in the art. Therefore, the invention is not limited to the specific details, representative embodiments, and illustrated examples in this description. Accordingly, the invention is not to be restricted except in light as necessitated by the accompanying claims and their equivalents.

Claims

WHAT IS CLAIMED IS:
1. A retail store performance optimization system, comprising: a simulator connected to a customer-product database, a user input device, and an optimization system, where the customer-product database stores product price variables and outputs from customer models, where the user input device receives a store strategy; where the optimization system determines at least one individual discount for each customer, where the simulator provides a result in response to input parameters from the customer-product database, the user input device, and the optimization system, and where the result includes the at least one individual discount for each customer and the retail store performance relation to the at least one individual discount.
2. The retail store performance optimization system according to Claim 1, where the at least one individual discount comprises at least one of a coupon and a rebate.
3. The retail store performance optimization system according to Claim 1 , where the at least one individual discount comprises at least one of a physical form and an electronic form.
4. The retail store performance optimization system according to Claim 1, where the product price variables comprise at least one of purchasing cost and inventory cost.
5. The retail store performance optimization system according to Claim 1 , where the customer models comprise at least one of a shopping frequency, a buying probability, a consumption rate, a price sensitivity, a product dependency, and a satisfaction function.
6. The retail store performance optimization system according to Claim 1, where the user input device comprises a Graphical User Interface (GUI).
7. The retail store performance optimization system according to Claim 6, where the simulator receives at least one of a simulation period, a simulation size, and a replenishment parameter from the GUI.
8. The retail store performance optimization system according to Claim 1, where the simulator includes a Monte-Carlo simulation.
9. The retail store performance optimization system according to Claim 1 , where the optimization system comprises: a modified simulated annealing operation for providing the at least one individual discount in response to an objective function and at least one customer model, where the modified simulated annealing operation has a deterministic selection of initial starting points, and where the modified simulated annealing operation has a weighted selection of next generation starting points.
10. A method for optimizing the performance of a retail store, comprising: modeling the retail store; defining a store strategy; generating at least one customer model; performing at least one agent-based simulation; and identifying an individual discount for each customer in response to the at least one agent-based simulation, where the individualized discount optimizes the retail store performance, and where the individual discount is at least one of a coupon or a rebate.
11. The method according to Claim 10, where the individual discount comprises at least one of a physical form and an electronic form.
12. The method according to Claim 10, where modeling the retail store comprises modeling at least one of the products in the store, the purchasing and stocking costs of the products, and the replenishment rates of the products.
13. The method according to Claim 10, where the store strategy is responsive to at least one of profits, sales volume, and customer loyalty.
14. The method according to Claim 10, where the at least one customer model comprises at least one of a shopping frequency, a buying probability of each product, and a customer's satisfaction level.
15. The method according to Claim 10, where identifying at least one individual discount for each customer comprises: selecting input parameters for a modified simulated annealing operation; dividing a search space in response to the input parameters; generating initial starting points in the search space; selecting a random neighbor for each initial starting point; evaluating an average fitaess of the initial starting points; generating new starting points in response to the average fitaess; and determining an optimal individual discount in response to the new starting points.
16. An individual discount system for optimizing retail store performance, comprising: a modified simulated annealing operation for providing an individual discount in response to an objective function and at least one customer model, where the individual discount is at least one of a coupon and a rebate, where the modified simulated annealing operation has a deterministic selection of initial starting points, and where the modified simulated annealing operation has a weighted selection of next generation starting points.
17. The individual discount system according to Claim 16, where the individual discount comprises at least one of a physical form and an electronic form.
18. The individual discount system according to Claim 16, where the objective function comprises at least one of profits, sales volume, and customer satisfaction.
19. The individual discount system according to Claim 16, where the at least one customer model comprises at least one of a shopping frequency, a buying probability, a consumption rate, a price sensitivity, a product dependency, and a satisfaction function.
20. An individual discount system for optimizing retail store performance, comprising: a modified simulated annealing operation for providing an individual discount in response to an objective function and at least one customer model, where the individual discount is at least one of a coupon and a rebate, where the modified simulated annealing operation has a deterministic selection of initial starting points.
21. The individual discount system according to Claim 20, where the individual discount comprises at least one of a physical form and an electronic form.
22. The individual discount system according to Claim 20, where the at least one customer model comprises at least one of a shopping frequency, a buying probability, a consumption rate, a price sensitivity, a product dependency, and a satisfaction function.
23. The individual discount system according to Claim 20, where the objective function comprises at least one of profits, sales volume, and customer satisfaction.
24. An individual discount system for optimizing retail store performance, comprising: a modified simulated annealing operation for providing an individual discount in response to an objective function and at least one customer model, where the individual discount is at least one of a coupon and a rebate. where the modified simulated annealing operation has a weighted selection of next generation starting points.
25. The individual discount system according to Claim 24, where the individual discount comprises at least one of a physical form and an electronic form.
26. The individual discount system according to Claim 24, where the at least one customer model comprises at least one of a shopping-frequency, a buying probability, a consumption rate, a price sensitivity, a product dependency, and a satisfaction function.
27. The individual discount system according to Claim 24, where the objective function comprises at least one of profits, sales volume, and customer satisfaction.
28. A method for optimizing retail store performance with individual discounts comprising: selecting input parameters for a modified simulation annealing operation; dividing a search space in response to the input parameters; generating initial starting points in the search space; selecting a random neighbor for each initial starting point; evaluating an average fitaess of the initial starting points; generating new starting points in response to the average fitaess; and determining an optimal individual discount in response to the new starting points, where the individual discount is at least one of a coupon and a rebate.
29. The method according to Claim 28, where the at least one individual discount comprises at least one of a physical form and an electronic form.
30. The method according to Claim 28, further comprising: selecting a number of subpopulations and subpopulation size; dividing the search space into subpopulations; and for each subpopulation, generating initial starting points randomly.
31. The method according to Claim 28, further comprising: comparing objective function values of an initial starting point and a random neighbor; if the difference between the objective function values of the random neighbor and initial starting point is greater than or equal to zero, setting the starting point to the random neighbor; and if the difference between the objective function values of the initial starting point is less than zero, setting the starting point to the random neighbor in response to a probability.
32. The method of optimizing retail store performance according to Claim 28, further comprising: eliminating initial starting points having fitaess values below the average fitness; and replacing eliminated starting points with starting points having fitness values above the average fitaess values.
EP03722381A 2002-04-01 2003-03-31 Retail store performance optimization system Ceased EP1537503A2 (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US36944802P 2002-04-01 2002-04-01
US369448P 2002-04-01
US10/189,701 US20030187708A1 (en) 2002-04-01 2002-07-03 Simulation and optimization system for retail store performance
US10/190,004 US20030187738A1 (en) 2002-04-01 2002-07-03 Individual discount system for optimizing retail store performance
US189701 2002-07-03
US190004 2002-07-03
PCT/EP2003/003416 WO2003083732A2 (en) 2002-04-01 2003-03-31 Retail store performance optimization system

Publications (1)

Publication Number Publication Date
EP1537503A2 true EP1537503A2 (en) 2005-06-08

Family

ID=28678871

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03722381A Ceased EP1537503A2 (en) 2002-04-01 2003-03-31 Retail store performance optimization system

Country Status (4)

Country Link
EP (1) EP1537503A2 (en)
AU (1) AU2003229592B2 (en)
CA (1) CA2480422A1 (en)
WO (1) WO2003083732A2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11861637B2 (en) * 2016-09-29 2024-01-02 Clear Demand, Inc. System of demand modeling and price calculation based on interpolated market price elasticity functions
US11328313B2 (en) * 2019-05-08 2022-05-10 Retailmenot, Inc. Predictive bounding of combinatorial optimizations that are based on data sets acquired post-prediction through high-latency, heterogenous interfaces
CN111598516B (en) * 2020-05-20 2023-08-22 圆通速递有限公司 Post site selection method and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010014868A1 (en) * 1997-12-05 2001-08-16 Frederick Herz System for the automatic determination of customized prices and promotions

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO03083732A2 *

Also Published As

Publication number Publication date
CA2480422A1 (en) 2003-10-09
WO2003083732A8 (en) 2004-05-27
AU2003229592B2 (en) 2009-04-23
WO2003083732A2 (en) 2003-10-09
AU2003229592A1 (en) 2003-10-13

Similar Documents

Publication Publication Date Title
US20030187708A1 (en) Simulation and optimization system for retail store performance
Beladev et al. Recommender systems for product bundling
US20200364740A1 (en) Commerce System and Method of Controlling Commerce System Using Share Grabber to Leverage Shopping List
US8082175B2 (en) System and method for optimization of a promotion plan
US7552069B2 (en) Techniques for optimizing promotion delivery
US20030033190A1 (en) On-line shopping conversion simulation module
Johnson et al. To whom, when, and how much to discount? A constrained optimization of customized temporal discounts
CA3057521A1 (en) Method and system for generation of at least one output analytic for a promotion
CN102282551A (en) Automated decision support for pricing entertainment tickets
Scholz et al. Using PageRank for non-personalized default rankings in dynamic markets
US20130325554A1 (en) Commerce System and Method of Optimizing Profit for Retailer from Price Elasticity of Other Retailers
US20120016727A1 (en) Commerce System and Method of Controlling The Commerce System Using Performance Based Pricing, Promotion and Personalized Offer Management
Hsu et al. Selection of the optimum promotion mix by integrating a fuzzy linguistic decision model with genetic algorithms
Provost et al. Data acquisition and cost-effective predictive modeling: targeting offers for electronic commerce
US20130254055A1 (en) Commerce System and Method of Learning Consumer Behavior Based on Prior and Current Transactions
Day et al. Profitability in product line pricing and composition with manufacturing commonalities
AU2003229592B2 (en) Retail store performance optimization system
US20030187738A1 (en) Individual discount system for optimizing retail store performance
Banerjee Optimal retail pricing model under multi-period consumer purchase planning horizon
JP2004054439A (en) Method, device and program for supporting formulation of marketing strategy based on analysis of customer behavior
Baydar Agent-based modeling and simulation of store performance for personalized pricing
Zhang et al. Ordering and ranking products for an online retailer
Baydar A hybrid parallel simulated annealing algorithm to optimize store performance
Dasgupta et al. Dynamic consumer profiling and tiered pricing using software agents
US20240127277A1 (en) Markup optimization

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20041021

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ACCENTURE GLOBAL SERVICES GMBH

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20081016