Next Patent: Method and system for automated linkable promotions
Next Patent: Method and system for automated linkable promotions
Plaque It!
|
[0001] This application is related to and claims priority to U.S. provisional application Serial No. 60/415,011 (entitled “Computer-Implemented Offer Optimization System and Method” filed Sep. 30, 2002). By this reference, the full disclosure, including the drawings, of U.S. provisional application Serial No. 60/415,011 is incorporated herein by reference.
[0002] 1. Technical Field
[0003] The present invention is generally directed to computer-implemented data analysis systems. More specifically, the present invention is directed to computer-implemented data analysis systems for the optimization of making offers.
[0004] 2. Description of the Related Art
[0005] In a typical sales organization, planning for each marketing event is performed by targeting the most profitable customers for cross-selling opportunities, that is, offering that customer other related products. A given event is separately planned and budgeted and the potentially most profitable customers are targeted. “Most profitable” in this context means most profitable for that event, not most profitable across all potential and future events. Although a customer may appear to be a “good bet” for a given event they may be more profitable, in the long run, for another offer which appears less profitable immediately but results in a better application of resources across all customers and all events. Such an approach may not result in the most profitable use of marketing resources and the highest return on marketing investment (ROMI) because, among other reasons, it is a decoupled and sub-optimal algorithm for assigning offers to customers.
[0006] Because events are planned independently, this targeting of only the most profitable customers is called a greedy approach. The greedy approach typically ignores larger business issues that tie together multiple marketing events and can result in offers to customers that do not result in the highest possible return from those customers called wrong offers. In addition to being sub-optimal, the greedy approach may not meet overall business objectives. For example, certain customer segments may have hard targets by product. It may be difficult to meet these targets across product boundaries while still trying to achieve the greedy sub-optimum.
[0007] Another approach may be to solve the customer offer optimization problem by building an integer program that maximizes the expected return of each customer. To put this in perspective, consider an example with 10,000,000 customers (not an unusually large number) and just 2 products and 2 channels. The resulting integer program would have 40,000,000 integer variables. This becomes unwieldy in many situations to solve, especially in a production environment situation.
[0008] In accordance with the teachings of the present inventions, a computer-implemented method and system are provided for optimization of cross-selling opportunities. Customer purchasing data is received as well as business objectives and constraints. An optimization model is then constructed and solved to maximize the expected return from each customer.
[0009] The present invention satisfies the general needs noted above and provides many advantages, as will become apparent from the following description when read in conjunction with the accompanying drawings, wherein:
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022] The system
[0023] The customer raw data
[0024] To handle the analysis of large numbers of customers, the module
[0025] The linear program solution module
[0026] This allows that instead of a 0-1 integer variable identifying whether a specific offer is given to a specific customer, a continuous variable identifies the number of members of an aggregation that should be given a specific offer. Then, the identification of a specific offer
[0027] FIGS.
[0028] A unique customer id κ.
[0029] The probability of selling product i over channel j to customer κ.
[0030] The expected return from selling product i to customer κ.
[0031] The cost of selling product i over channel j to customer κ.
[0032] The segment of customer κ.
[0033] The method of the aggregation module
[0034]
[0035] With reference to
[0036] x
[0037] P
[0038] c
[0039] W
[0040] T
[0041] S
[0042] V
[0043] r
[0044] Model constraints
[0045] Subject to:
[0046] The solution of the objective function
[0047] As shown in
[0048] The disaggregation process may also utilize integer programming techniques
[0049] To illustrate this approach, an example with two products, two channels, three segments, and 1000 customers is presented. In this example, it is noted that customers are individuals who belong to a segment and have some likelihood of buying products over channels. Products are assumed to be available for cross-sell to an existing customer base. A channel is a fixed capacity vehicle for making cross-selling offers of products to customers. It should be understood that these terms may be broadly construed. For example, customers may broadly include actual or potential customers as well as individual people, businesses or other types of entities that may receive offers. As another example, the system may handle more than products, such as services or other items that may be the subject of an offer.
[0050] For the example, the customer raw data was randomly generated by the program shown at
[0051] Note that the computer program
[0052] It is noted that the aggregation process may use many different aggregation techniques to form the aggregations based upon the offer acceptance-related data. For this example, the aggregation process uses a clustering technique. The example clusters the customers to aggregate for the linear programming approximation of the integer program. The program shown at
[0053]
[0054] The following columns are shown in
[0055] As shown in
[0056] The linear program for solving the approximation to the integer program is built on top of the clustered information (shown in
[0057] Once the linear program is solved the solution is used to identify approximate optimal product and channel assignments to the raw customer data. In this example, this assignment is given using a greedy approach. Additionally, the expected return for each customer within a cluster is calculated and the most profitable x
[0058] The table below shows the values of the cost constraints in the optimized and actual data. The model in this example required that $2,500 be spent on each channel product combination (which is reflected in the actual cost).
Product Channel Optimized Cost Actual Cost 1 1 2500 2490 1 2 2500 2497 2 1 2500 2475 2 2 2500 2483
[0059] The table below shows values for the optimal solution to the linear program and the disaggregated actual solution when applied to the customers for 7 different sizes. As the number of clusters increases these converge.
Actual Clusters Optimum (# customers) 1 58,188 2,285 (831) 2 75,359 45,667 (831) 4 90,840 77,176 (642) 8 108,190 104,724 (834) 16 113,229 110,586 (772) 32 114,243 114,059 (819) 64 115,420 115,175 (832)
[0060] It is interesting to compare these values with two other approaches, the random approach and the greedy approach. The random approach simply picks a product and channel for each customer randomly and ignores any constraints. The greedy approach picks the product channel combination that gives the greatest expected return for each customer and also ignores any constraints. To make the comparison evenhanded, only 830 customers were used in calculating the total expected return because approximately 830 customers had treatments in the optimal solutions (see the table above for the actual number for each cluster number). For the greedy approach 830 best customers were selected.
[0061] For the random approach the expected return turned out to be 62,261 and for the greedy approach the expected return was 123,287. Clearly, the optimal solution does much better than the random approach. Not only does the optimal solution exceed the expected return of the random approach but it is directed to satisfying the constraints. The greedy approach also typically does not meet the constraints and is an upper bound on the optimal integer solution. This is further exemplified by the table below which shows how the random and greedy approaches compare with respect to the cost constraints.
Product Channel Random Cost Greedy Cost 1 1 1990 0 1 2 2343 0 2 1 3150 7665 2 2 2704 4147
[0062] As shown by this table, neither the random nor the greedy approach provides a solution that meets the constraints with the greedy approach yielding particularly unsatisfactory results.
[0063] While examples have been used to disclose the invention, including the best mode, and also to enable any person skilled in the art to make and use the invention, the patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. As an example of the wide scope of the present invention, the constructed model may be optimized by techniques other than linear programming, such as non-linear optimization techniques. As another example of the wide scope, many different types of constraints may be used. As an illustration, constraints may be used to specify that certain customers are not to receive a certain product. The constraints may also specify that certain customers are not to receive one or more products over a certain channel. Constraints may also specify values are to be within a range, such as specifying that at least a certain amount of resources need to be expended provided they do not exceed a maximum threshold; or a product constraint may specify that the number of offers should be within a specified upper and lower bound.
[0064] The system and method described herein may be applied in different areas of marketing and are applicable to many different types of offers (such as up-sell and cross-sell offers). As an illustration and with reference to