Abstract: The disclosure generally relates to determining optimal price promotion parameters for Consumer-packaged goods (CPG). The CPGs includes items that are frequently purchased by consumers and requires routine replacement or replenishment such as food, beverages, clothes, tobacco, makeup, and household products, etc., The techniques to determine the optimal pricing strategy is subjective and is dependent on goods/products being sold. The existing techniques mostly determine the optimal pricing strategy of CPG based on non-behavioral factors or on historic price/sales trends, wherein there is no explicit focus on consumers’ behavior patterns and are not efficient. The disclosure proposes to determine the optimal price promotion parameters in several steps including - estimating a plurality of behavioral elements, generating a plurality of synthetic consumer data, mapping the plurality of synthetic consumer data and the plurality of behavioral elements and finally using simulation-based optimization to determine the optimal price promotion parameters. [To be published with FIG.2]
Description:FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
METHOD AND SYSTEM FOR DETERMINING OPTIMAL PRICE PROMOTION PARAMETERS
Applicant
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th floor,
Nariman point, Mumbai 400021,
Maharashtra, India
Preamble to the description:
The following specification particularly describes the invention and the manner in which it is to be performed.
TECHNICAL FIELD
The disclosure herein generally relates to price promotion for consumer-packaged goods (CPGs), and, more particularly, to a method and a system for determining optimal price promotion parameters for CPGs.
BACKGROUND
A reference price (RP) is the price that a consumer is willing to pay for a goods or service. The optimal pricing strategy can be determined via segmenting the market into distinct consumer groups based on the RP that a consumer group is willing to pay. Further based on the consumers RPs, the organization fixes a selling price at which the organization maximizes its profits.
The techniques to determine the optimal pricing strategy is subjective and is dependent on goods/products being sold, wherein the optimal pricing strategy for Consumer-packaged goods (CPG) is different compared to other types of goods or products. The CPGs includes items that are frequently purchased by consumers and requires routine replacement or replenishment. The CPGs includes goods such as food, beverages, clothes, tobacco, makeup, and household products, etc.,
The existing techniques mostly determine the optimal pricing strategy of CPG based on non-behavioral factors, wherein there is no explicit focus on consumers’ behavior patterns and idiosyncrasies. Further, other state-of-art techniques utilize historic price/sales trends for determining optimal pricing strategy, however, these are not efficient. Hence there is a need for techniques to determine optimal pricing strategy based on an understanding of consumer’s RP.
SUMMARY
Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for determining optimal price promotion parameters is provided.
The system includes a memory storing instructions, one or more communication interfaces, and one or more hardware processors coupled to the memory via the one or more communication interfaces, wherein the one or more hardware processors are configured by the instructions to receive a plurality of inputs from a plurality of sources, via one or more hardware processors, wherein the plurality of inputs is associated with one of a consumer-packaged goods (CPGs) and the plurality of inputs comprises information on a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands. The system is further configured to pre-process the plurality of inputs to obtain a plurality of pre-processed data, via the one or more hardware processors, wherein the plurality of inputs is pre-processed based on a plurality of pre-processing techniques. The system is further configured to extract a plurality of features via the one or more hardware processors, wherein the plurality of features is extracted using the plurality of pre-processed data, wherein the plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory. The system is further configured to estimate a plurality of behavioral elements by training a plurality of behaviour models, via the one or more hardware processors, wherein the plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters and the training of the plurality of behaviour models comprises: estimating the plurality of purchase incidence parameters based on training a purchase incidence model, wherein the purchase incidence model is trained based on a logistic regression technique; estimating the plurality of brand choice parameters based on training a brand choice model, wherein the brand choice model is trained based on a multinomial logistic regression technique; and estimating the plurality of purchase quantity parameters based on training a purchase quantity model, wherein the purchase quantity model is trained based on a Zero-truncated Poisson regression technique. The system is further configured to generate a plurality of synthetic consumer data based on the plurality of pre-processed data and the plurality of feature using a data sampling technique, wherein the plurality of synthetic consumer data indicates a population of virtual consumers. The system is further configured to map the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models to obtain a model population synthesis component based on an association technique. The system is further configured to estimate a plurality of optimal price promotion parameters, using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
In another aspect, a method for determining optimal price promotion parameters is provided. The method includes receiving a plurality of inputs from a plurality of sources, wherein the plurality of inputs is associated with one of a consumer-packaged goods (CPGs) and the plurality of inputs comprises information on a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands. The method further includes pre-processing the plurality of inputs to obtain a plurality of pre-processed data, wherein the plurality of inputs is pre-processed based on a plurality of pre-processing techniques. The method further includes extracting a plurality of features, wherein the plurality of features is extracted using the plurality of pre-processed data, wherein the plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory. The method further includes estimating a plurality of behavioral elements by training a plurality of behaviour models, wherein the plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters and the training of the plurality of behaviour models comprises: estimating the plurality of purchase incidence parameters based on training a purchase incidence model, wherein the purchase incidence model is trained based on a logistic regression technique; estimating the plurality of brand choice parameters based on training a brand choice model, wherein the brand choice model is trained based on a multinomial logistic regression technique; and estimating the plurality of purchase quantity parameters based on training a purchase quantity model, wherein the purchase quantity model is trained based on a Zero-truncated Poisson regression technique. The method further includes generating a plurality of synthetic consumer data based on the plurality of pre-processed data and the plurality of feature using a data sampling technique, wherein the plurality of synthetic consumer data indicates a population of virtual consumers. The method further includes mapping the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models to obtain a model population synthesis component based on an association technique. The method further includes estimating a plurality of optimal price promotion parameters, using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
In yet another aspect, a non-transitory computer readable medium for determining optimal price promotion parameters is provided. The program includes receiving a plurality of inputs from a plurality of sources, wherein the plurality of inputs is associated with one of a consumer-packaged goods (CPGs) and the plurality of inputs comprises information on a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands. The program further includes pre-processing the plurality of inputs to obtain a plurality of pre-processed data, wherein the plurality of inputs is pre-processed based on a plurality of pre-processing techniques. The program further includes extracting a plurality of features, wherein the plurality of features is extracted using the plurality of pre-processed data, wherein the plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory. The program further includes estimating a plurality of behavioral elements by training a plurality of behaviour models, wherein the plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters and the training of the plurality of behaviour models comprises: estimating the plurality of purchase incidence parameters based on training a purchase incidence model, wherein the purchase incidence model is trained based on a logistic regression technique; estimating the plurality of brand choice parameters based on training a brand choice model, wherein the brand choice model is trained based on a multinomial logistic regression technique; and estimating the plurality of purchase quantity parameters based on training a purchase quantity model, wherein the purchase quantity model is trained based on a Zero-truncated Poisson regression technique. The program further includes generating a plurality of synthetic consumer data based on the plurality of pre-processed data and the plurality of feature using a data sampling technique, wherein the plurality of synthetic consumer data indicates a population of virtual consumers. The program further includes mapping the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models to obtain a model population synthesis component based on an association technique. The program further includes estimating a plurality of optimal price promotion parameters, using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
FIG.1 illustrates an exemplary system for determining optimal price promotion parameters according to some embodiments of the present disclosure.
FIG.2 is a block diagram depicting a functional overview of the system of FIG. 1 for determining optimal price promotion parameters according to some embodiments of the present disclosure.
FIG.3A, FIG.3B and FIG.3C is a flow diagram illustrating a method (300) for determining optimal price promotion parameters, by the system of FIG.1, in accordance with some embodiments of the present disclosure.
DETAILED DESCRIPTION OF EMBODIMENTS
Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the scope of the disclosed embodiments.
Referring now to the drawings, and more particularly to FIG.1 through FIG.3C, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
FIG.1 is a functional block diagram of a system 100 for determining optimal price promotion parameters in accordance with some embodiments of the present disclosure.
In an embodiment, the system 100 includes a processor(s) 104, communication interface device(s), alternatively referred as input/output (I/O) interface(s) 106, and one or more data storage devices or a memory 102 operatively coupled to the processor(s) 104. The system 100 with one or more hardware processors is configured to execute functions of one or more functional blocks of the system 100.
Referring to the components of the system 100, in an embodiment, the processor(s) 104, can be one or more hardware processors 104. In an embodiment, the one or more hardware processors 104 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the one or more hardware processors 104 is configured to fetch and execute computer-readable instructions stored in the memory 102. In an embodiment, the system 100 can be implemented in a variety of computing systems including laptop computers, notebooks, hand-held devices such as mobile phones, workstations, mainframe computers, servers, a network cloud and the like.
The I/O interface(s) 106 can include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, a touch user interface (TUI) and the like and can facilitate multiple communications within a wide variety of networks N/W and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. In an embodiment, the I/O interface (s) 106 can include one or more ports for connecting a number of devices (nodes) of the system 100 to one another or to another server.
The memory 102 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random-access memory (SRAM) and dynamic random-access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
Further, the memory 102 may include a database 108 configured to include information regarding determining optimal price promotion parameters. The memory 102 may comprise information pertaining to input(s)/output(s) of each step performed by the processor(s) 104 of the system 100 and methods of the present disclosure. In an embodiment, the database 108 may be external (not shown) to the system 100 and coupled to the system via the I/O interface 106.
The system 100 supports various connectivity options such as BLUETOOTH®, USB, ZigBee and other cellular services. The network environment enables connection of various components of the system 100 using any communication link including Internet, WAN, MAN, and so on. In an exemplary embodiment, the system 100 is implemented to operate as a stand-alone device. In another embodiment, the system 100 may be implemented to work as a loosely coupled device to a smart computing environment. The components and functionalities of the system 100 are described further in detail.
Functions of the components of system 100 are explained in conjunction with functional overview of the system 100 in FIG.2 and flow diagram of FIGS.3A-3C.
FIG.2 is an example block diagram of the various modules of the system of FIG.1, in accordance with some embodiments of the present disclosure. As depicted in the architecture, the FIG.2 illustrates the functions of the modules of the system 100 that includes determining optimal price promotion parameters.
The system 200 for determining optimal price promotion parameters is configured to receive a plurality of inputs, using an input module 202. The plurality of inputs is associated with one of a consumer-packaged goods (CPGs). The plurality of inputs comprises a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands. The system 200 further comprises a pre-processor 204 configured for pre-processing the plurality of inputs to obtain a plurality of pre-processed data. The plurality of inputs is pre-processed based on a plurality of pre-processing techniques. The system 200 further comprises a feature extractor 206 configured for extracting a plurality of features using the plurality of pre-processed data. The plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory. The system 200 further comprises a behavioral element module 208 configured for estimating a plurality of behavioral elements. The plurality of behavioral elements is estimated by training a plurality of behaviour models. The plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters. The system 200 further comprises a synthetic consumer module 210 configured for generating a plurality of synthetic consumer data. The plurality of synthetic consumer data indicates a population of virtual consumers. The plurality of synthetic consumer data is generated based on the plurality of pre-processed data and the plurality of feature using a data sampling technique. The system 200 further comprises a model population synthesis component 212 configured for mapping the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models. The mapping is performed to obtain a model population synthesis component based on an association technique. The system 200 further comprises an optimal price promotion parameters module 214 configured for estimating a plurality of optimal price promotion parameters. The plurality of optimal price promotion parameters is estimated using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
The various modules of the system 100 and the block in FIG.2 are configured for determining optimal price promotion parameters and are implemented as at least one of a logically self-contained part of a software program, a self-contained hardware component, and/or, a self-contained hardware component with a logically self-contained part of a software program embedded into each of the hardware component that when executed perform the above method described herein.
Functions of the components of the system 200 are explained in conjunction with functional modules of the system 100 stored in the memory 102 and further explained in conjunction with flow diagram of FIG.3A, FIG.3B and FIG.3C. The FIG.3A, FIG.3B and FIG.3C with reference to FIG.1, is an exemplary flow diagram illustrating a method 300 for determining optimal price promotion parameters using the system 100 of FIG.1 according to an embodiment of the present disclosure.
The steps of the method of the present disclosure will now be explained with reference to the components of the system 100 for determining optimal price promotion parameters and the modules 202-214 as depicted in FIG.2 and the flow diagrams as depicted in the FIG.3A, FIG.3B and FIG.3C. Although process steps, method steps, techniques or the like may be described in a sequential order, such processes, methods and techniques may be configured to work in alternate orders. In other words, any sequence or order of steps that may be described does not necessarily indicate a requirement that the steps to be performed in that order. The steps of processes described herein may be performed in any order practical. Further, some steps may be performed simultaneously.
At step 302 of the method (300), a plurality of inputs is received in the input module 202. The plurality of inputs is associated with one of a consumer-packaged goods (CPGs). The plurality of inputs comprises a plurality of customers, a plurality of products and a range of promotion parameters.
In an embodiment, the range of promotion parameters are promotion depth expressed as a percentage of the base price, the promotion duration (the length of time for which the promotion will run) and the price rigidity (denotes the time interval between two price changes). The plurality of customers are persons or entities who are willing to purchase the plurality of products, wherein the plurality of customers also includes a demographic data, a transaction data of the customers.
The plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands. In an example scenario, a customer chooses to buy a pasta product where the product is of brand ‘?Barilla?^TM’, of class “Spaghetti” of category “pasta”. The promotion parameters (promotion depth, promotion duration and price rigidity) determine the price of the product on a given day.
At step 304 of the method (300), the plurality of inputs is pre-processed to obtain a plurality of pre-processed data at the pre-processor 204. The plurality of inputs is pre-processed based on a plurality of pre-processing techniques.
In an embodiment, the plurality of pre-processing techniques includes a data cleaning technique and a data filtration technique.
During the data cleaning, missing prices (associated with the brand) is generated for each product for a specific day. In, the transaction data which involves price discount by utilizing a coupon is also removed. Further, the transaction containing invalid price are also removed, wherein the invalid price is a negative or null value.
During the data filtration, the plurality of inputs is processed to identify a category/subcategory based on highest sales, as the plurality of inputs comprises multiple product categories/sub-categories. Further there are several more filtrations performed based on the selection of relevant brands and selection of consumers. The process of selection of relevant brands includes identification of the top selling brands based on sales and filtering out the transactions corresponding to other brands from the data. Further the process of selection of consumers includes selection of consumers having number of repeat purchase greater than a pre-defined threshold, such as consumers having at-least five transactions in an initialization period and a training period is selected, wherein the initialization period is the initial few weeks of transaction data used for initialization of features, and the subsequent weeks of data are used for training the models called training period.
At step 306 of the method (300), a plurality of features is extracted using the plurality of pre-processed data in the feature extractor 206. The plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory.
In an embodiment, the memory-based reference price is computed based on previous purchases of a consumer, as shown below:
?RefPrice?_ct= a?RefPrice?_(c(t-1))+(1-a) ?Price?_(c(CB[t-1])(t-1)) (1)
where,
?RefPrice?_ct is reference price of consumer c on purchase occasion t,
?Price?_(c(CB[t-1])(t-1)) is the price of the chosen brands (CB) by consumer c on a past purchase occasion (t-1), and
a is a price carryover parameter.
?RefPrice?_ckt= a?RefPrice?_ckt+(1-a)?Price?_(hk(t-1)) (2)
where,
?RefPrice?_ckt is reference price of consumer c for brand k on purchase occasion t,
?Price?_(hk(t-1)) is the price of the brand k chosen by consumer c on past purchase occasion (t-1), and
a is a price carryover parameter.
In an embodiment, the consumer brand loyalty is associated with an inclination to purchase a brand over another brand, the average consumption rate is an average weekly consumption of the product for the consumer. Thus, the consumer brand loyalty of consumer c to brand k on purchase occasion t is expressed as:
?BLOY?_ckt= µB?LOY?_(ck(t-1))+(1-µ) I_(ck(t-1)) (3)
where,
?BLOY?_ckt is brand loyalty of consumer c towards brand k on purchase occasion t,
µ is the loyalty carryover parameter, and
I_(ck(t-1))= 1, if brand k is purchased by consumer c at (t-1), 0 otherwise.
While performing the selection of the RP model, the most suitable RP model is selected from plurality of reference price models (equation 1 and 2). Further, the unknown price carryover parameter (a) and loyalty carryover parameter (µ) are estimated. The selection of reference price model as well as carryover parameters is performed based on the model fit (pseudo R2 and log-likelihood) of reference price-based brand choice model as shown in equation 7. The model is trained for a plurality of reference price models, a range of price carryover and loyalty carryover parameters. The specific model and the carryover parameters are chosen so as to give the best model fit.
At step 308 of the method (300), a plurality of behavioral elements is estimated by training a plurality of behaviour models in the behavioral module 208. The plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters. The training of the plurality of behaviour models comprises several steps as explained in below steps – 308A to 308C.
At step 308A of the method (300), the plurality of purchase incidence parameters is estimated based on training a purchase incidence model. The purchase incidence model is trained based on a logistic regression technique.
In an embodiment, the probability that consumer c will purchase the product category at time t is given by:
P_ct (inc)= exp??(V_ct)?/(1+exp??(V_ct)? ) (5)
where,
V_ct= ß_0+ ß_1 (CR_c ) ¯+ ß_2 INV_ct,
(CR_c ) ¯ = the rate of weekly consumption for consumer c, and
INV_ct = household inventory for consumer c at time t.
In an embodiment, the weekly consumption rate is defined by the following equation:
(CR_c ) ¯= 1/N ?_(t=1)^N¦Q_ct (4)
where,
(CR_c ) ¯ is the average consumption rate of consumer c,
Q_ct is quantity bought by consumer c at time t
N is total duration (in weeks)
In an embodiment, the household inventory indicates an inventory estimate for a consumer at a pre-defined time. To estimate inventory, it is considered that consumers draw down their household inventory linearly based on their consumption rate. The household inventory of the consumer c is calculated using the following equation:
INV_ct = INV_c(t-1) + Q_(c(t-1))- (CR_c ) ¯*I_((t,t-1)) (6)
where,
Q_(c(t-1)) is quantity brought on previous store visit by consumer c, and
I_((t,t-1)) is interval (in weeks) between store visit (t-1) and t.
At step 308B of the method (300), the plurality of brand choice parameters is estimated based on training a brand choice model. The brand choice model is trained based on a multinomial logistic regression technique.
In an embodiment, the brand choice model is expressed as a multinomial logit model and the conditional probability that a consumer c will choose brand k during shopping trip t, if it decides to buy is calculated as:
P_ct (j¦inc)=exp??(U_ckt)/?_i^n¦exp??(U_cit)? ? (7)
where,
u_ckt is the utility of brand j for consumer c on an occasion t, and
i=1,2,3…n are number of brands.
Scenario 1: When RP is brand specific, then to account for competitive effects of the prices of other brands, a separate price variable is included in the utility function:
U_ckt= ß_(0,k)+ ß_p ?Price?_ckt+ß_rp (?RefPrice?_ckt-?Price?_ckt )+ ß_L B?LOY?_ckt (8)
where,
?Price?_ckt , ?RefPrice?_ckt and B?LOY?_ckt are the price, RP and brand loyalty towards brand k for consumer c (on occasion t ) respectively.
Scenario 2: When RP is brand independent, the difference is computed by subtracting a fixed quantity (RP) from the respective prices. Therefore, a separate price term should not be included in the model:
U_ckt= ß_(0,k)+ ß_rp (?RefPrice?_ck-?Price?_ck )+ ß_L B?LOY?_ckt (9)
A symmetric model with gain (RP-Price) and loss (Price-RP) have been considered to have symmetric effects.
At step 308C of the method (300), the plurality of purchase quantity parameters is estimated based on training a purchase quantity model. The purchase quantity model is trained based on a Zero-truncated Poisson regression technique.
In an embodiment, a Zero-truncated Poisson regression is used to compute the units purchased. The conditional probability of purchasing n units (n= 1) by consumer c is given by:
P_ct (n¦|inc & k)= ?(?_ckt)?^n/(exp?(?_ckt-1)n!) (10)
where,
?_ckt=exp?(ß_0+ ß_1 ?Size?_t+ ß_2 ?INV?_ct+ ß_3 U_c)
?Size?_t is the size in ounces of the chosen brand at time t
?INV?_ht is the mean-centered inventory
U_c is the average number of units purchased by consumer c
At step 310 of the method (300), a plurality of synthetic consumer data is generated in the model population synthesis component 212. The plurality of synthetic consumer data indicates a population of virtual consumers.
The plurality of synthetic consumer data is generated based on the plurality of pre-processed data and the plurality of feature using a data sampling technique.
In an embodiment, the consumer data containing the demographic variables is taken as input and additional variables generated by the feature extractor 206 and outputs a population of virtual consumers.
The feature extractor component provides the additional variables for each consumer which is integrated into the consumer data. Within the combined consumer data, each row corresponds to a different consumer id along with his/her demographic variables (age, household size and income) and additional variables (Consumer Reference Price, Consumer brand loyalty, Average consumption rate, and Household inventory). The synthetic consumer module 210 then generates synthetic consumer data of required size by sampling (using stratified or random sampling) from the combined dataset.
At step 312 of the method (300), the plurality of synthetic consumer data and the plurality of behavioral elements is mapped with the plurality of behaviour models in the model population synthesis component 212. The mapping is performed to obtain a model population synthesis component based on an association technique.
In an embodiment, the three trained behaviour models are taken as input and the synthetic consumers population generated by synthetic consumer module 210, and outputs a synthetic population with behavior models attached to each synthetic consumer.
These variables present in the synthetic population describes the state of the consumers and the attached models determine the behavior of each consumer in terms of the actions they will take based on the choices presented to them. The synthetic population with attached behavior models is operationalized in the optimal price promotion parameters module 214.
At step 314 of the method (300), a plurality of optimal price promotion parameters is estimated in the optimal price promotion parameters module 214. The plurality of optimal price promotion parameters is estimated using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
In an embodiment, optimal price promotion parameters module 214 is a simulation driven system that takes as input the population of synthetic consumers, the range of promotion parameters such as promotion depth, promotion duration and the price rigidity and then generates as output the optimal price promotion parameters for various products to generate maximal sales. The optimal price promotion parameters module 214 has two functionalities -
Retail Environment Setup:
Given details of top selling identified product brands such as brand name, and the brand price as well as the promotion parameters that determines how the prices will change with time, the Retail Environment setup is assumed to have no limit on the number of consumers purchasing and can fulfill the quantity ordered by all consumers (no shortages of stocks).
Simulation:
The simulator takes as input the retail setup and the population of synthetic consumers with attached behavior on purchase incidence, brand choice and purchase quantity. The simulator (used for simulation) is an agent-based modeling and simulation platform, where each synthetic consumer is taken as an agent with their behavior described by the attached behavior models. The simulator is run for a period of virtual simulation time (i.e., the virtual time in terms of days / weeks / months) and where on each sim-day, a subset of synthetic consumers whose purchase incidence model indicates that the time has come to visit the store, will visit the virtual store. On subset of synthetic consumer's virtual visit, they will face a specific combination of promotion parameters associated with various brands in the in-focus product category. The brand choice model of each virtual consumer will then decide which brand to purchase and of how much quantity. The simulator generates the weekly sales for the specific brand in focus for the given combinations. Next, it aggregates the weekly sales for the period of virtual simulation time to generate the total sales. Simulations are run multiple times to run through various combinations of promotion parameters. The optimization step uses heuristic methods such as genetic algorithm to efficiently identify the combination of optimal promotion parameters. The parameters which generate the maximal sales for the selected brand/s are considered as optimal promotion parameters.
EXPERIMENTS:
Experiments had been conducted for the disclosed method using a publicly available dataset containing transaction data covering 2 years for the pasta product category. The top 6 best-selling pasta brands comprising national and private labels are considered. In the data preprocessing, the consumers who have made at least 5 purchases in the training period and at least 10 purchases in the whole duration are considered. The features such as memory-based reference price, inventory and loyalty are generated within the data and further the three behavioral models (brand choice models, purchase incidence model, purchase quantity model) are trained. A total of 283 synthetic consumers are generated, where 170 belongs to the group with low RP (mean value of 0.5 Euro) and remaining 113 belongs to group with high RP (mean value of 0.98 Euro), maintaining the original distribution of repeat buyers present in the data. These synthetic customers attached with trained behavioral models were taken as input to the simulator. The input range of promotion parameters (depth – 10% to 50%, duration- 1 to 5 weeks and rigidity 1 to 5 weeks). The optimal promotion parameters for the two brands are identified. The brand A was the top selling product for the consumer group with low RP and Brand B was the top selling product for the consumer group with high RP. For Brand A, the optimal promotion parameters were identified as Price Rigidity - 4 weeks, Promotion Duration - 1 week and Promotion Depth - 20% leading to an increase of 4% in the sales. For Brand B, the optimal parameters were Price Rigidity - 3 weeks, Promotion Duration - 3 weeks and Promotion Depth - 50% leading to an increase of 94% in sales. The surge in sales for Brand B with high promotion depth is seen due to the brand switching behavior exhibited by consumers group with low RP towards brand B. As a result of high promotion depth (range of 40% to 50%), which leads to Brand B price coming nearly identical to price of Brand A (0.53 Euro). Therefore, consumers from Group 1 having low RP (~0.5 Euro) now see a high value in purchasing Brand B which belongs to a popular national brand. This ultimately induces brand switching behavior towards Brand B.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
The disclosure generally relates to determining optimal price promotion parameters for Consumer-packaged goods (CPG). The CPGs includes items that are frequently purchased by consumers and requires routine replacement or replenishment such as food, beverages, clothes, tobacco, makeup, and household products, etc., The techniques to determine the optimal pricing strategy is subjective and is dependent on goods/products being sold. The existing techniques mostly determine the optimal pricing strategy of CPG based on non-behavioral factors or on historic price/sales trends, wherein there is no explicit focus on consumers’ behavior patterns and are not efficient. The disclosure proposes to determine the optimal price promotion parameters in several steps including - estimating a plurality of behavioral elements, generating a plurality of synthetic consumer data and mapping the plurality of synthetic consumer data and the plurality of behavioral elements, and using simulation-based optimization to finally determine the optimal price promotion parameters.
It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g., any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g., hardware means like e.g., an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g., an ASIC and an FPGA, or at least one microprocessor and at least one memory with software processing components located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g., using a plurality of CPUs.
The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various components described herein may be implemented in other components or combinations of other components. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.
, Claims:We Claim:
1. A processor implemented method (300), comprising:
receiving a plurality of inputs from a plurality of sources, via one or more hardware processors, wherein the plurality of inputs is associated with one of a consumer-packaged goods (CPGs) and the plurality of inputs comprises information on a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands (302);
pre-processing the plurality of inputs to obtain a plurality of pre-processed data, via the one or more hardware processors, wherein the plurality of inputs is pre-processed based on a plurality of pre-processing techniques (304);
extracting a plurality of features via the one or more hardware processors, wherein the plurality of features is extracted using the plurality of pre-processed data, wherein the plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory (306);
estimating a plurality of behavioral elements by training a plurality of behaviour models (308), via the one or more hardware processors, wherein the plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters and the training of the plurality of behaviour models comprises:
estimating the plurality of purchase incidence parameters based on training a purchase incidence model, wherein the purchase incidence model is trained based on a logistic regression technique (308A);
estimating the plurality of brand choice parameters based on training a brand choice model, wherein the brand choice model is trained based on a multinomial logistic regression technique (308B); and
estimating the plurality of purchase quantity parameters based on training a purchase quantity model, wherein the purchase quantity model is trained based on a Zero-truncated Poisson regression technique (308C);
generating a plurality of synthetic consumer data based on the plurality of pre-processed data and the plurality of feature using a data sampling technique, wherein the plurality of synthetic consumer data indicates a population of virtual consumers (310);
mapping the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models to obtain a model population synthesis component based on an association technique (312); and
estimating a plurality of optimal price promotion parameters, using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique (314).
2. The processor implemented method of claim 1, wherein the plurality of pre-processing techniques includes a data cleaning technique and a data filtration technique.
3. The processor implemented method of claim 1, the memory-based reference price is computed based on previous purchases of a consumer, the consumer brand loyalty is associated with an inclination to purchase a brand over another brand, the average consumption rate is an average weekly consumption of the product for the consumer and the household inventory indicates an inventory estimate for the consumer at a pre-defined time.
4. The processor implemented method of claim 1, wherein the data sampling technique include a random sampling technique, a stratified random sampling.
5. The processor implemented method of claim 1, wherein the simulation-based optimization technique is based on an agent-based modelling and simulation, wherein plurality of optimal price promotion parameters is estimated using an optimization technique, wherein the optimization technique is a heuristic method that includes a genetic algorithm and a tabu search.
6. A system (100), comprising:
a memory (102) storing instructions;
one or more communication interfaces (106); and
one or more hardware processors (104) coupled to the memory (102) via the one or more communication interfaces (106), wherein the one or more hardware processors (104) are configured by the instructions to:
receive a plurality of inputs from a plurality of sources, via one or more hardware processors, wherein the plurality of inputs is associated with one of a consumer-packaged goods (CPGs) and the plurality of inputs comprises information on a plurality of customers, a plurality of products and a range of promotion parameters, where the plurality of products is associated with a plurality of categories, a plurality of classes and a plurality of brands;
pre-process the plurality of inputs to obtain a plurality of pre-processed data, via the one or more hardware processors, wherein the plurality of inputs is pre-processed based on a plurality of pre-processing techniques;
extract a plurality of features via the one or more hardware processors, wherein the plurality of features is extracted using the plurality of pre-processed data, wherein the plurality of features comprises a memory-based reference price, a consumer brand loyalty, an average consumption rate and a household inventory;
estimate a plurality of behavioral elements by training a plurality of behaviour models, via the one or more hardware processors, wherein the plurality of behavioral elements comprises a plurality of purchase incidence parameters, a plurality of brand choice parameters and a plurality of purchase quantity parameters and the training of the plurality of behaviour models comprises:
estimating the plurality of purchase incidence parameters based on training a purchase incidence model, wherein the purchase incidence model is trained based on a logistic regression technique;
estimating the plurality of brand choice parameters based on training a brand choice model, wherein the brand choice model is trained based on a multinomial logistic regression technique; and
estimating the plurality of purchase quantity parameters based on training a purchase quantity model, wherein the purchase quantity model is trained based on a Zero-truncated Poisson regression technique;
generate a plurality of synthetic consumer data based on the plurality of pre-processed data and the plurality of feature using a data sampling technique, wherein the plurality of synthetic consumer data indicates a population of virtual consumers;
map the plurality of synthetic consumer data and the plurality of behavioral elements with the plurality of behaviour models to obtain a model population synthesis component based on an association technique; and
estimate a plurality of optimal price promotion parameters, using the range of promotion parameters, the model population synthesis component and the plurality of brands based on a simulation-based optimization technique.
7. The system of claim 6, wherein the plurality of pre-processing techniques includes a data cleaning technique and a data filtration technique.
8. The system of claim 6, the memory-based reference price is computed based on previous purchases of a consumer, the consumer brand loyalty is associated with an inclination to purchase a brand over another brand, the average consumption rate is an average weekly consumption of the product for the consumer and the household inventory indicates an inventory estimate for the consumer at a pre-defined time.
9. The system of claim 6, wherein the data sampling technique include a random sampling technique, a stratified random sampling.
10. The system of claim 6, wherein the simulation-based optimization technique is based on an agent-based modelling and simulation, wherein plurality of optimal price promotion parameters is estimated using an optimization technique, wherein the optimization technique is a heuristic method that includes a genetic algorithm and a tabu search.
Dated this 4th Day of October 2022
Tata Consultancy Services Limited
By their Agent & Attorney
(Adheesh Nargolkar)
of Khaitan & Co
Reg No IN-PA-1086
| # | Name | Date |
|---|---|---|
| 1 | 202221057043-STATEMENT OF UNDERTAKING (FORM 3) [04-10-2022(online)].pdf | 2022-10-04 |
| 2 | 202221057043-REQUEST FOR EXAMINATION (FORM-18) [04-10-2022(online)].pdf | 2022-10-04 |
| 3 | 202221057043-FORM 18 [04-10-2022(online)].pdf | 2022-10-04 |
| 4 | 202221057043-FORM 1 [04-10-2022(online)].pdf | 2022-10-04 |
| 5 | 202221057043-FIGURE OF ABSTRACT [04-10-2022(online)].pdf | 2022-10-04 |
| 6 | 202221057043-DRAWINGS [04-10-2022(online)].pdf | 2022-10-04 |
| 7 | 202221057043-DECLARATION OF INVENTORSHIP (FORM 5) [04-10-2022(online)].pdf | 2022-10-04 |
| 8 | 202221057043-COMPLETE SPECIFICATION [04-10-2022(online)].pdf | 2022-10-04 |
| 9 | 202221057043-FORM-26 [29-11-2022(online)].pdf | 2022-11-29 |
| 10 | Abstract1.jpg | 2022-12-13 |
| 11 | 202221057043-Power of Attorney [02-02-2024(online)].pdf | 2024-02-02 |
| 12 | 202221057043-Form 1 (Submitted on date of filing) [02-02-2024(online)].pdf | 2024-02-02 |
| 13 | 202221057043-Covering Letter [02-02-2024(online)].pdf | 2024-02-02 |
| 14 | 202221057043-CORRESPONDENCE(IPO)(WIPO DAS)-06-02-2024.pdf | 2024-02-06 |