This U.S. patent application claims priority under 35 U.S.C. § 119 to Indian Application No. 202421002291, filed on Jan. 11, 2024. The entire content of the abovementioned application is incorporated herein by reference.
The disclosure herein generally relates to the field of recommender systems, and more particularly, a method and system for recommending ancillary bundled offers for segmented customers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices using customers' historical ancillary purchase data.
Many service industries offer main services as well as ancillary services that go with main service. It is up to the customer to choose whatever ancillary services they need and purchase them. Most of the times, the absence of purchased ancillaries could indicate either customer's may not be aware of the full list of what all ancillaries are available (customer have not seen them), customer saw them, but did not prefer them, or customer saw them, liked them but did not purchase yet. At the same time, service providers also lose a lot of revenue due to non-purchase of ancillary services.
However, the problem of how to make optimized decisions jointly on customer ancillary bundles preferences and optimal ancillary bundle pricing using data in order to increase the traffic and maximize revenues remains challenging. For example, how to create an airline ancillary bundled offer consisting of air ancillary products like Food, Drinks, In-flight entertainment, Priority boarding, Internet Wi-Fi, Seat upgrade, Exit Seat, Express Check-in, Excess Baggage, Seat Assignment etc., and in the case of hotels, ancillaries like Meal's reservation, Room upgrades, Early check-in, Late check-out, Internet Wi-Fi, Tour and leisure activities, Live event tickets, Spa, Golf, Fitness center etc. Similarly for rental cars and other service businesses or even consumer retail products. This problem becomes even more challenging in most cases, as these perishable products have to be sold before expiry.
Existing solutions consider only limited or very few bundles, also without any diversity and also not scalable. These solutions also have these limitations: Lack of modeling customers/segment of customers and bundle interactions and thereby fail learning to rank based on bundles as only customer and item interactions are modeled in a multi-task manner, lack modeling of pairwise bundle interactions, lack granular segmentation that distinguishes various customer segments based on their ancillary bundle purchase behavior. Further in existing solutions pricing is rarely considered and when considered, most bundle Pricing of current technology is based on only discounts rather than optimized for maximum bundle revenue.
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 generating ancillary bundled offers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices for segmented customers using customers' historical ancillary purchase data is provided. The processor-implemented method includes receiving, via an input/output interface a historical data of (i) one or more ancillary items, or (ii) one or more ancillary bundles purchased by one or more customers as input. The system received historical data to recognize one of (i) a single ancillary item, or (ii) a combination of two or more ancillary items, or (iii) one or more ancillary bundles purchased by the one or more customers. Further, the processor-implemented method includes converting if the historical data is recognized as single ancillary item, or the combination of two or more ancillary items purchased together into a bundle of one or more ancillary items by assigning a bundle-identification to each of the one or more ancillary bundles. A customer feature vector is identified for each of the one or more customers from the received historical data of one or more ancillary items. A customer feature vector is a set of attributes that is dependent on the customer context. For example, in the context of the passenger airlines customer travel, customer feature vector is customer travel related attributes like number of travelers with the customer, month of travel, time of purchase of ticket, flight departure time, day of week of travel, flight journey hour, etc. In the context of hotels, customer feature vector can again be customer travel and stay related attributes like month of travel, number of adults and children traveling, day of week of travel, time of purchase, etc. Further, the processor-implemented method includes identifying one or more existing customers, and one or more new customers of the one or more customers based on the received historical data, wherein each of the one or more existing customers are identified based on a customer identification who has one or more ancillary items, or one or more ancillary bundles purchase history. Further, each of the one or more existing customers is segmented into one or more segments based on a Similar Preferred Bundles Customer Segmentation (SPBCS) technique to recommend one or more unique set of bundles of ancillary items.
Furthermore, the processor-implemented method comprises ranking one or more set of bundles of ancillary items for the each of the one or more segments using Segmented Customer Bayesian Personalized Ranking Learning to Rank technique (SCBPR-LTR) and pricing the ranked one or more set of bundles of ancillary items for the identified customer segments using Segmented Customer Optimal Bundle Pricing (SCOBP) technique. The outputs of SCBPR-LTR technique and SCOBP technique is jointly optimized considering customer ancillary bundle preferences and revenue maximizing optimal bundle prices for each segment of the one or more existing customers to recommend the jointly optimized one or more set of bundles of ancillary items to the segmented each of the one or more existing customers.
In another embodiment, a system for generating ancillary bundled offers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices for segmented customers using customers' historical ancillary purchase data is provided. The system comprises a memory storing a plurality of instructions, one or more Input/Output (I/O) interfaces, and one or more hardware processors coupled to the memory via the one or more I/O interfaces. The one or more hardware processors are configured by the instructions to receive a historical data of (i) one or more ancillary items, or (ii) one or more ancillary bundles purchased by one or more customers as input. The system received historical data to recognize one of (i) a single ancillary item, or (ii) a combination of two or more ancillary items, or (iii) one or more ancillary bundles purchased by the one or more customers. Further, one or more hardware processors are configured by the instructions to convert if the historical data is recognized as single ancillary item, or the combination of two or more ancillary items purchased together into a bundle of one or more ancillary items by assigning a bundle-identification to each of the one or more ancillary bundles. A customer feature vector is identified for each of the one or more customers from the received historical data of one or more ancillary items. A customer feature vector is a set of attributes that is dependent on the customer context. For example, in the context of the passenger airlines customer travel, customer feature vector is customer travel related attributes like number of travelers with the customer, month of travel, time of purchase of ticket, flight departure time, day of week of travel, flight journey hour, etc. In the context of hotels, customer feature vector can again be customer travel and stay related attributes like month of travel, number of adults and children traveling, day of week of travel, time of purchase, etc. Further, the one or more hardware processors are configured by the instructions to identify one or more existing customers, and one or more new customers of the one or more customers based on the received historical data, wherein each of the one or more existing customers are identified based on a customer identification who has one or more ancillary items, or one or more ancillary bundles purchase history. Further, each of the one or more existing customers is segmented into one or more segments based on a Similar Preferred Bundles Customer Segmentation (SPBCS) technique to recommend one or more unique set of bundles of ancillary items.
Furthermore, the one or more hardware processors are configured by the instructions to rank one or more set of bundles of ancillary items for the each of the one or more segments using Segmented Customer Bayesian Personalized Ranking Learning to Rank technique (SCBPR-LTR) and pricing the ranked one or more set of bundles of ancillary items for the identified customer segments using Segmented Customer Optimal Bundle Pricing (SCOBP) technique. The outputs of SCBPR-LTR technique and SCOBP technique is jointly optimized considering customer ancillary bundle preferences and revenue maximizing optimal bundle prices for each segment of the one or more existing customers to recommend the jointly optimized one or more set of bundles of ancillary items to the segmented each of the one or more existing customers.
In yet another aspect, there are provided one or more non-transitory machine-readable information storage mediums comprising one or more instructions, which when executed by one or more hardware processors causes a method for generating ancillary bundled offers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices for segmented customers using customers' historical ancillary purchase data. The processor-implemented method includes receiving, via an input/output interface a historical data of (i) one or more ancillary items, or (ii) one or more ancillary bundles purchased by one or more customers as input. The system received historical data to recognize one of (i) a single ancillary item, or (ii) a combination of two or more ancillary items, or (iii) one or more ancillary bundles purchased by the one or more customers. Further, the processor-implemented method includes converting if the historical data is recognized as single ancillary item, or the combination of two or more ancillary items purchased together into a bundle of one or more ancillary items by assigning a bundle-identification to each of the one or more ancillary bundles. A customer feature vector is identified for each of the one or more customers from the received historical data of one or more ancillary items. A customer feature vector is a set of attributes that is dependent on the customer context. For example, in the context of the passenger airlines customer travel, customer feature vector is customer travel related attributes like number of travelers with the customer, month of travel, time of purchase of ticket, flight departure time, day of week of travel, flight journey hour, etc. In the context of hotels, customer feature vector can again be customer travel and stay related attributes like month of travel, number of adults and children traveling, day of week of travel, time of purchase, etc. Further, the processor-implemented method includes identifying one or more existing customers, and one or more new customers of the one or more customers based on the received historical data, wherein each of the one or more existing customers are identified based on a customer identification who has one or more ancillary items, or one or more ancillary bundles purchase history. Further, each of the one or more existing customers is segmented into one or more segments based on a Similar Preferred Bundles Customer Segmentation (SPBCS) technique to recommend one or more unique set of bundles of ancillary items.
Furthermore, the processor-implemented method comprises ranking one or more set of bundles of ancillary items for the each of the one or more segments using Segmented Customer Bayesian Personalized Ranking Learning to Rank technique (SCBPR-LTR) and pricing the ranked one or more set of bundles of ancillary items for the identified customer segments using Segmented Customer Optimal Bundle Pricing (SCOBP) technique. The outputs of SCBPR-LTR technique and SCOBP technique is jointly optimized considering customer ancillary bundle preferences and revenue maximizing optimal bundle prices for each segment of the one or more existing customers to recommend the jointly optimized one or more set of bundles of ancillary items to the segmented each of the one or more existing customers.
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.
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:
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.
Many service industries offer main services as well as ancillary services that go with main service. It is up to the customer to choose whatever ancillary services they need and purchase them. Most of the times, the absence of purchased ancillaries could indicate either customer's may not be aware of the full list of what all ancillaries are available (customer have not seen them), customer saw them, but did not prefer them, or customer saw them, liked them but did not purchase yet. At the same time, service providers also lose a lot of revenue due to non-purchase of ancillary services.
In the airline industry, ancillary revenue is revenue from non-ticket sources, such as meals, drinks, checked baggage, extra leg room, etc. Ancillary revenue ranges anywhere from 20 percent of total revenue for major airlines to 50 percent for low-cost carriers.
Ancillary revenue has become a major revenue stream and an important driver for increasing revenues for many service businesses. Due to rapid technological developments in online markets, e-commerce service providers and retailer businesses are expected to increasingly leverage the technological developments especially Artificial Intelligence (AI) and Machine Learning (ML) to create and control their service offers especially the ancillary service offerings that go together with the main service. For example, in an airline, the seat is the main service, and the ancillary services are meals, drinks, etc. Similarly, in hotels, room is the main service and ancillary services are breakfast, meals, etc. There is a need to significantly enrich consumers, shopping experience by providing segmented levels of personalization, and also allow businesses to evolve from being commodity suppliers to becoming modern digital service retailers. In the process, service provider businesses can provide greater value to their customers while increasing their own revenues/profits.
However, the problem of how to make optimized decisions jointly on customer ancillary bundles preferences and optimal ancillary bundle pricing using data in order to increase the traffic and maximize revenues remains challenging. For example, how to create an airline ancillary bundled offer consisting of air ancillary products like Food, Drinks, In-flight entertainment, Priority boarding, Internet Wi-Fi, Seat upgrade, Exit Seat, Express Check-in, Excess Baggage, Seat Assignment etc., and in the case of hotels, ancillaries like Meal's reservation, Room upgrades, Early check-in, Late check-out, Internet Wi-Fi, Tour and leisure activities, Live event tickets, Spa, Golf, Fitness center etc. Similarly for rental cars and other service businesses or even consumer retail products. This problem becomes even more challenging in most cases, as these perishable products have to be sold before expiry.
Embodiments herein provide a method and system for generating ancillary bundled offers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices for segmented customers using customers' historical ancillary purchase data. The historical ancillary purchase data can include historical bundles purchase data, or historical items purchase data depending upon the service provider, whether they offer bundles or items only. The overall flow of the disclosure for recommending top-k ancillary bundle offers for segmented customers by jointly optimizing the ancillary bundle products/services and bundle pricing for existing and new customers is provided.
Referring now to the drawings, and more particularly to
In an embodiment, the network 106 may be a wireless or a wired network, or a combination thereof. In an example, the network 106 can be implemented as a computer network, as one of the different types of networks, such as virtual private network (VPN), intranet, local area network (LAN), wide area network (WAN), the internet, and such. The network 106 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), and Wireless Application Protocol (WAP), to communicate with each other. Further, the network 106 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices. The network devices within the network 106 may interact with the system 100 through communication links.
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. Further, the system 100 comprises at least one memory 110 with a plurality of instructions, one or more databases 112, and one or more hardware processors 108 which are communicatively coupled with the at least one memory to execute a plurality of modules 114 therein. The plurality of modules 114 include a data handling module 116, a segmentation module 118, an ancillary bundled products/services recommendation module 120, a pricing module 122, a new customer handling module 124, and ancillary bundles offer presentation module 126. The components and functionalities of the system 100 are described further in detail.
The Ancillary bundled products/services recommendation module 120 of the system 100 takes the output of the segmentation module i.e., segment, segment side feature, and ancillary bundles purchased in the segment as an input to the Segmented Customer Bayesian Personalized Ranking Learning to Rank technique, in short SCBPR-LTR technique and outputs the ancillary bundles recommendation for existing and new customer (without price). The Ancillary bundled products/services recommendation module 120 includes a relative bundle preference data generator and an optimizer. The relative bundle preference data generator converts segment bundles purchase data to relative bundle preference data that will be used as a training data set for the SCBPR-LTR technique. The optimizer optimizes the pair wise ranking loss function (SCBPR-OPT) using the training data generated to arrive at the preference ranking of bundles for all the segments of customers.
The pricing module 122 of the system 100 uses Segmented Customer optimal bundle pricing (SCOBP) technique to determine the optimal price of the recommended ancillary bundles for each segment that maximizes revenue. The module has two submodules for two sub technique defined under SCOBP technique. Using neural network based MLP model to learn the pricing parameter using the historical ancillary bundles or items purchase data and finding the revenue optimal price that maximizes revenue using optimization technique (Dual Annealing). The new customer handling module 124 of the system 100 is configured to recommend ancillary bundle offers for new customers, who do not have any ancillary items/bundles purchase history. The ancillary bundles offer presentation module 126 displays the final top-k offers by integrating the recommended ancillary bundled products from the Ancillary bundled products/services recommendation module and the prices of those ancillary bundled products from the pricing module 122, wherein top-k offers includes first k bundles from the list of ranked one or more bundles of ancillary items with optimal bundles price that maximizes revenue.
Starting at step 402 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to receive, via an input/output interface, a historical data of (i) one or more ancillary items, or (ii) one or more ancillary bundles purchased by one or more customers as input, wherein each of the one or more ancillary bundles include one or more predefined ancillary items.
At the next step 404 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to analyze the received historical data to recognize one of (i) a single ancillary item, or (ii) a combination of two or more ancillary items, or (iii) one or more ancillary bundles purchased by the one or more customers.
The historical ancillary purchase data can include historical bundles purchase data, or historical items purchase data depending upon the service provider, whether they offer bundles or items only. The Items purchase to bundles purchase data conversion comes into play only when the service provider offers only items and not bundles and, in this case, the customer purchased a single item or a combination of items.
At the next step 406 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to convert if the historical data is recognized as single ancillary item, or the combination of two or more ancillary items purchased together into a bundle of one or more ancillary items by assigning a bundle-identification to each of the one or more ancillary bundles. The output from items to bundle conversion data technique is stored into the historical ancillary purchase database and is taken as input to customer segmentation technique.
At step 408 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to identify whether the customer is an existing customer or a new customer. The existing customer is the one who has ancillary items/bundles purchase history while the new customer is the one, who does not have any ancillary items/bundles purchase history.
At the next step 410 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to segment each of the one or more existing customers into one or more segments based on a similar preferred bundles customer segmentation technique to recommend one or more unique set of bundles of ancillary items. Customer segmentation is done granularly using a Similar Preferred Bundles Customer Segmentation (SPBCS) technique. In one example, customers bundle historical purchase data as shown in Table 1.
The detailed steps of SPBCS technique are:
Step 1: Analyzing the one or more bundles historically purchased by the one or more customers to determine the unique set of ordered bundles purchased and unique set of customer feature vectors for each customer from the input customer bundles historical purchase data. It is to be noted that the unique set of ordered bundles purchased, and the unique set of customer feature vectors are identified for each customer from the input customer bundles historical purchase data. The technique to find the Unique set of ordered bundles Purchased involves, first, creating a list of bundles based on bundle identification purchased by the customer say L1 of size N, then sorting the list L1 using any of the standard sorting techniques like quick sort, insertion sort, etc. Then the system starts traversing the list L1 from index 0 to N−1 and for any element/bundle at index i(L1[i]), the system will search for the duplicate element from index 0 to i. If the system finds a duplicate element, then the system skips the current element otherwise stores it in another list L2. The list L2 is a unique set of ordered bundles purchased. Wherein ordering means that the unique set of bundles are listed down in ascending order of their bundle identification. Table 2 shows the unique set of customer feature vectors and unique set of ordered bundles purchased for the one or more customers.
Step 2: Find one or more customers who have a similar unique set of ordered bundles purchased by forming key-value with segment as key and customers in the segment as value, wherein segment is the unique set of ordered bundles historically purchased.
Step 3: Find a unique set of customer feature vectors associated with the segments by forming the key-value pairs with the segment as key and the unique set of customer feature vectors associated with the segment as value. There already exists information on the customers present in the segment, and a customer is related to customer feature vectors. In this way, the system identifies all customer feature vectors present in the segment, then find the unique among them.
Step 4: Assign a Segment-id to each of the identified list of segments and combine output from step 2 and step 3 to get output as segment-id, customers in the segment, unique set of ordered bundles purchased in the segment and unique set of customer feature vectors associated with the segments.
Step 5: Obtain segment side features for each of the segments to be used in the SCBPR-LTR technique. To find segment side features, first, the total possible customer feature vectors are defined. The value at the index of the customer feature vector present in the segment is made of 1 and the value at the index of the customer feature vector does not present in the segment is made of 0. The segment side features are used later in ancillary bundle recommendation (SCBPR-LTR) technique.
Step 6: Store the output of the SPBCS technique that consists of segment side features, segment-ids, customers in the segments and unique set of ordered bundles purchased associated with the segment into the SPBCS database as shown in
At the next step 412 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to rank one or more set of bundles of ancillary items for the each of the one or more segments of one or more existing customers using the SCBPR-LTR technique illustrated as a flow chart 500 in
The SCBPR-LTR technique does the top-k ancillary bundled products/services recommendation for segmented customers considering the bundle preferences. The SCBPR-LTR technique comprises of segment relative preference bundle data generation, Optimization criterion SCBPR-OPT, a recommendation model (Factorization machine), Optimization model (Stochastic gradient descent), trained model evaluation and storing the optimally ranked one or more bundles of ancillary items for each segment of customers into SCBPR-LTR ranked ancillary bundled products/services recommendation database as shown in
Here the optimization criterion is described. Let S={s1, s2, s3, . . . sn} to be the set of all segments and B={b1, b2, b3 . . . bn} to be the set of all bundles. The >s is the total ordering of bundle preferences for all segments of customers, which given any two bundles b1 and b2, the segment of customers will prefer one or the other. Let (θ) be parameter vector of the recommender model that needs to be found. The Bayesian formulation of the ranking problem will be to find the models' parameters (θ) such that there is the highest probability that this model will generate an optimal ordering for all segments of customers. So, the posterior probability will be written as p (θ|>s).
According to Bayes' theorem, to maximize this probability, maximize the following because they are proportional.
It is assumed that the parameters of the model are normally distributed and independent with zero mean and variance/covariance matrix as Σθ, so prior becomes:
where λ is equal to regularization parameter and θ is parametric vector of the model.
In another aspect, likelihood p (>s|θ) for all segments of customers is maximized—
wherein, the equation (4) can be written as:
since pairwise ranking and probability of ordering for each datapoint (s, bi, bj) in the training dataset Ds are considered, then this becomes:
where Ds is defined below, is the training set, with Bs+ denoting the bundle, the segment of customers liked, B denoting all the bundles and B\Bs+ indicating all other bundles excluding the bundles the segment of customers liked.
Ds represent training data in the form of tuple (s, bi, bj), which represents that the segment of customers s, prefers bundle bi over bundle bj. Now considering sigmoid function (σ) which is integrable and also ŷs,b
So, likelihood becomes:
Now coming to the maximum posterior estimator
since the function
is continuous and always increasing, this can be re-written as
Further, a maximum posterior probability is formulated to derive the generic Optimization criterion for the segmented personalized ranking task that is:
which is proportional to p (>s|θ)p(θ). Now inserting the above equations of likelihood (equation 9) and prior (equation 3) into this becomes
Setting λ=½λ for simplification and expanding the log, this equation becomes
The maximum posterior estimator is formulated to derive the optimization criterion for our SCBPR-LTR and can be written as
Updation of model parameter is done using the gradient of SCBPR and is shown below:
and
Here η represents the learning rate. As the algorithm sweeps through the training set, it performs the gradient update until convergence. After convergence the segment's predicted ranking score for a bundle is calculated using ŷs,b. For a given segment the bundles are ranked based on the calculated ranking score and top-k bundles are recommended for a customer based on their segment.
Here the segments relative preference data generation that will be used for training the SCBPR-LTR technique is described. The segment relative preference bundle data is split into training data and test data. The training and test data is constructed by tuples in the form of (s, bi, bj), where the first bundle bi referred as the positive bundle, is chosen from the segment positive feedback and the second bundle, referred as the negative bundle, bj is sampled from the unobserved interactions.
Here the recommendation model is described. The SCBPR-LTR uses a modified version of general-purpose Factorization machine (FM) model as a recommendation model. The Factorization machine (FM) model is modified to suit segments and bundles and is given below:
wherein Segment's latent factors matrix (P:|S|×T), bundle's latent factors matrix (Q:|B|×T), Segment side feature latent factors matrix (F:Z×T) and bundle bias terms (Bb) are model parameters of the FM. Here |S| is the total number of segments, |B| is total number of bundles, Z is total number of segment side features and T is one of the hyper-parameters, which represents the number of latent factors to represent segments, bundles and segment side features. Each row Ps in P is latent factors describing a segment s, each row Qb in Q is latent factors describes a bundle b and each row Fz in F is latent factors describes the segment side feature z. The fs,z is the value of side feature z for segment s.
In SCBPR-LTR technique, optimization is done based on Stochastic Gradient Descent with graph sampling to optimize the factorization machine model with respect to the optimization criterion (SCBPR-Opt) to arrive at the Optimal personalized ranking for all segments of customers. The segments side features are used as input to factorization machine which are taken from SPBCS database. Optimization starts with initialization of (θ) parameters, bias and calculation of loss sample, then trains the model, calculates the pairwise ranking loss, ranking score, gradient, updates model parameters and this is continued iteratively till convergence. The segments optimal personalized ranking results are evaluated using NDGC and AUC metrics.
At the next step 414 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to price the ranked one or more top-k set of bundles of ancillary items for the identified customer segments using SCOBP technique. The optimal price of one or more ranked bundles of ancillary items for each segmented customer is stored in SCOBP database as shown in
Pricing parameter estimation (Using MLP model) involves learning the pricing parameters of the Neural network based Multilayer perceptron classifier (MLP classifier) model using the historical ancillary bundles or items purchase data. When using ancillary bundles purchase data; the segment is represented by segment configuration. The segment configuration is defined as a list with zero everywhere and 1 at the index of bundle purchased in the segment. For example, if there are 5 bundles and say segment s is (3,5) i.e., the customers in this segment have historically purchased bundles 3 and 5. The segment configuration is defined as [0,0,1,0,1] when training the model. The bundles are represented by bundle configuration. When using ancillary items purchase data; To define an item/items combination, combination of 1 and zeros is used. Say there are 5 items, and a customer has purchased item 1 and item 2 together then it is defined as [1,1,0,0,0] and the price is defined as the sum of the price for two items. The equation for MLP classifier when using ancillary bundles purchase data is:
where fMLP is the standard MLP classifier and Ŷ1,i, . . . ŶC,i are predicted scores for classes 1, . . . , C. There are ‘C’ classes/decisions including not purchasing any bundle. Xi is i-th input sample, W-weights of the MLP.
wherein the cross-entropy loss function (LCE) is given by the above equation. Where c∈{1, . . . , C} is a class, i denotes the i-th input sample and N is total number of samples in the train set. MLP Classifier trains iteratively since at each time step the partial derivatives of the loss function with respect to the model parameters are computed to update the parameters.
In another embodiment, the optimal price that maximizes revenue is found using a Dual Annealing as an optimization technique. It involves predicting the optimal price of ancillary bundle combination recommended (when using bundles data)/Individual ancillary bundle recommended (when using items data) over the range of price using the pricing parameters estimated in the above pricing parameters estimation sub-model. Following is the equation for revenue i-th sample/i-th bundle combination when using ancillary bundles purchase data.
wherein, (C−1) bundles are offered to the customer and pr is the price for those bundles. So, there will be ‘C’ classes/decisions including not purchasing any bundle. The revenue-optimal price is obtained for the bundles offered by maximizing this revenue equation using Dual Annealing, a global optimization algorithm.
At the step 416 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to construct top-k ancillary bundle offers by jointly optimizing the outputs of SCBPR-LTR technique and SCOBP technique considering customer ancillary bundle preferences and revenue maximizing optimal bundle prices for each of the one or more segments of one or more existing customers.
Finally, at the last step 418 of the processor-implemented method 400, the one or more hardware processors 108 are configured by the programmed instructions to recommend the jointly optimized one or more set of bundles of ancillary items to the segmented each of the one or more existing customers.
In another aspect, recommendation is created for the new customer, who does not have any ancillary items/bundles purchase history, by mapping new customer feature vector to the segments obtained using the SPBCS technique and new customer handling technique. This new customer handing part comes into play only for new customers and not for existing customers. The new customer handling considers new customer feature vector and does the respective segments mapping. This involves performing new customer feature vector to existing customer feature vector mapping and then this existing feature vector to segments mapping. The new customer is identified with the feature vector, say fnew and is mapped to the existing customer feature vectors say fext among all feature vectors. This feature vector-to-feature vector mapping is done based on the similarity score of the two feature vectors using cosine similarity. Customer feature vector fext to segment mapping involves listing down different segments present under a customer feature vector. This involves identifying all existing customers that matches with identified existing customer feature vector fext and then Mapping all identified customers to one or more segments obtained using SPBCS technique. The output of new customer handling is one or more segments associated with the new customer's feature vector.
For new customers recommendation, first a new customer is identified by the feature vector fnew. This feature vector is mapped to segments using the above new customer handling technique. These segments are now passed as an input to the SCBPR-LTR technique. The output of SCBPR-LTR technique is the optimally ranked ancillary bundles recommended with ranking score for these segments (without price). The recommended bundles for these segments are now sorted based on ranking score to arrive at top-k bundles. These top-k ranked ancillary bundles act as our new group gnew. Now this group gnew, customer feature vector, and recommended ancillary bundles are passed as input to the SCOBP technique to arrive at the optimal offer price for the top-k ranked ancillary bundles. The top-k ranked ancillary bundles recommendations together with the offer price constructed after joint optimization of bundling and pricing is made to the new customer. The output is top-k jointly optimized recommended ancillary bundle offers for new customers and is stored into the Ancillary bundle offers recommendation system database (ABORS-DB).
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 embodiments of present disclosure herein address unresolved problems of how to make optimized decisions jointly on ancillary bundles recommendation and optimal ancillary bundle pricing using data in order to increase the traffic and maximize revenues. Embodiments herein provide a method and system for generating ancillary bundled offers by jointly optimizing the customer bundle preferences of ancillary product bundles and revenue maximizing bundle prices for segmented customers using customers' historical ancillary purchase data.
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 group of servers 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 custom build server, 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.
| Number | Date | Country | Kind |
|---|---|---|---|
| 202421002291 | Jan 2024 | IN | national |