【捆绑定价】A Data-Driven Approach to Personalized Bundle Pricing and Recommendation

本文主要是介绍【捆绑定价】A Data-Driven Approach to Personalized Bundle Pricing and Recommendation,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 摘要

1.1 背景

网络购物的增长趋势引发了越来越复杂的产品推荐系统(product recommendation systems)的发展。本文建立了一个模型,在选择与消费者偏好相关的产品时,考虑利润最大化和库存管理之间的权衡,向网上购物者推荐一个个性化的折扣产品包。

1.2 理论与实践的相关性 (Academic practical relevance)

我们提供分析性的性能保证,以说明潜在问题的复杂性,该问题将产品组合优化与定价相结合。我们在两个独立的案例研究中实现了我们的算法,这些案例研究来自美国一家大型电子零售商和一家全球一流航空公司的实际数据

1.3 方法

通过消费者购买倾向个性化功能(individualized functions of consumer propensity-to-buy)、长期盈利能力库存管理(inventory management for long-run profitability)、实用业务实施的可操作性( tractability for practical business implementation)等功能,实现个性化的同时平衡。我们开发了两类近似算法,乘法和加法,以产生用于在线设置的实时输出。

1.4 结果

我们的计算结果显示,预期收入明显高于现行行业定价策略,根据具体情况,价格策略的预测收益率为2%–7%。我们发现,平均而言,我们的最佳算法在所有库存设置中获得了全知识透视策略预期收益的92%,在最佳情况下,这一比例提高到98%

1.5 管理含义(Managerial implications)

我们比较了算法,发现乘法方法相对更容易实现,并且当两者与完全知识策略进行比较时,平均经验上获得的预期收益在加法方法的1%-6%之间。此外,我们发现最大的预期收益来自于对价格敏感度较低的高端消费者,预计销量的提高取决于产品类别,是提供相关建议的结果。

2. 模型

考虑一个在线销售商(monopolist online seller),它向每个到达的消费者提供一个动态捆绑报价 (dynamic bundle offer),这些消费者可以选择接受这个捆绑报价,也可以以全价单独购买单个商品,或者什么也不购买。
在这里插入图片描述
假设所有的产品为 S ^ = { 1 , ⋯ , n } \hat{S}=\{1,\cdots,n\} S^={1,,n},这些产品的价格可能会相互影响,它们可以是互补的、可替代的,甚至是独立的。考虑 S ^ \hat{S} S^内产品的圈养在线消费者( captive online consumer ),或 S ^ \hat{S} S^为辅助货物组(ancillary goods)的特定机票行程(specific ticket itinerary)。本文的模型提供了一系列来自 S ^ \hat{S} S^的相关产品的捆绑( S ^ \hat{S} S^)。我们感兴趣的是, S ^ \hat{S} S^包含库存受限的产品,利用这些产品,通过考虑未来需求,最大限度地实现预期的长期盈利能力。

因此,本文假定销售期是固定的并且有限的 T T T,并且在销售期中不能补货。每个到达的消费者都由与偏好、人口统计、购买历史、忠诚度和网上购物环境相关的分类和连续特征的组合来唯一地描述。因此,本文不考虑传统的细分中所做的离散消费者类型集,而是假设存在无限的连续消费者类型集。此外,由于本文处理的是双层定价问题( bilevel pricing problem),每个顾客记为 ( k , t ) , k = 1 , ⋯ , K t (k,t), \quad k=1,\cdots,K^t (k,t),k=1,,Kt 其中 t t t 是某个销售周期, K t K^t Kt 是周期 t t t 内到达的总顾客数。
p ˉ i t \bar{p}_i^t pˉit:产品 i i i 在周期 t t t 内的销售价格
S k , t S_{k,t} Sk,t:提供给顾客 ( k , t ) (k,t) (k,t) 的捆绑组合
p ˉ S k , t \bar{p}_{S_{k,t}} pˉSk,t:捆绑组合的总价
p S k , t p_{S_{k,t}} pSk,t:捆绑组合的促销价
定义
p ˉ t = [ p ˉ 1 t , p ˉ 2 t , ⋯ , p ˉ n t ] \bar{\boldsymbol{p}}^t=[\bar{p}_1^t,\bar{p}_2^t,\cdots,\bar{p}_n^t] pˉt=[pˉ1t,pˉ2t,,pˉnt]: 周期 t t t 内的价格向量
p S k , t = [ p ˉ 1 t , p ˉ 2 t , ⋯ , p ˉ n t , p S k , t ] \boldsymbol{p}_{S_{k,t}}=[\bar{p}_1^t,\bar{p}_2^t,\cdots,\bar{p}_n^t,p_{S_{k,t}}] pSk,t=[pˉ1t,pˉ2t,,pˉnt,pSk,t]
ξ S k , t ( p S k , t ) \xi_S^{k,t}(\boldsymbol{p}_{S_{k,t}}) ξSk,t(pSk,t): 顾客购买捆绑产品的购买倾向(the individual consumer propensity-to-buy)
e S k , t \boldsymbol{e}_{S_{k,t}} eSk,t: 捆绑单位向量(bundle unit vector)
I k , t = [ I 1 k , t , I 2 k , t , . . . . , I n k , t ] \boldsymbol{I}^{k,t}=[I_1^{k,t},I_2^{k,t},....,I_n^{k,t}] Ik,t=[I1k,t,I2k,t,....,Ink,t]:顾客 ( k , t ) (k,t) (k,t)到达时的库存水平

决策变量

当每个顾客 ( k , t ) (k,t) (k,t)到达时,推荐何种捆绑策略 S k , t S_{k,t} Sk,t 以及它的价格 p S k , t ≤ p ˉ S k , t p_{S_{k,t}}\leq \bar{p}_{S_{k,t}} pSk,tpˉSk,t
在这里插入图片描述

这篇关于【捆绑定价】A Data-Driven Approach to Personalized Bundle Pricing and Recommendation的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/437841

相关文章

BD错误集锦3——ERROR: Can't get master address from ZooKeeper; znode data == null

hbase集群没启动,傻子!   启动集群 [s233 s234 s235]启动zk集群 $>zkServer.sh start $>zkServer.sh status   [s233] 启动dfs系统 $>start-dfs.sh 如果s237 namenode启动失败,则 [s237] $>hadoop-daemon.sh start namenode [s233]启动yarn集群

【鸿蒙】ERROR_GET_BUNDLE_INSTALLER_FAILED

错误信息 [ERROR_GET_BUNDLE_INSTALLER_FAILED] Troubleshooting guide $ hdc file send D:\Huawei\devEcoProjects\entry\build\default\outputs\default\entry-default-unsigned.hap /sdcard/e8a215ea7be1444197e6a58e

游戏高度可配置化(一)通用数据引擎(data-e)及其在模块化游戏开发中的应用构想图解

游戏高度可配置化(一)通用数据引擎(data-e)及其在模块化游戏开发中的应用构想图解 码客 卢益贵 ygluu 关键词:游戏策划 可配置化 模块化配置 数据引擎 条件系统 红点系统 一、前言 在插件式模块化软件开发当中,既要模块高度独立(解耦)又要共享模块数据,最好的方法是有个中间平台(中间件)提供标准的接口来进行数据的交换,这在很多行业软件开发中已经广泛应用。但是,由于中间件的抽象和封

Core Data 网络应用实例

转自:http://www.cocoachina.com/applenews/devnews/2014/0430/8275.html 转自 answer_huang的博客 几乎每一个应用开发者都需要经历的就是将从 web service 获取到的数据转变到 Core Data 中。这篇文章阐述了如何去做。我们在这里讨论的每一个问题在之前的文章中都已经描述过了,并且 Apple 在

spring-data-redis 连接池应用

具体配置看我的项目。用的是redisTemplate ,和jdbctemplate  是不是很相似。 真的不想吐槽csdn,钻钱眼里了,我想上传我的代码,免费都不行吗 想要测试代码可以私信,也可以模仿https://www.cnblogs.com/tankaixiong/p/3660075.html  这个链接下的。

Windows 内核驱动无法使用 __DATA__、__TIME__、__TIMESTAMP__ 解决方法

项目 -> 属性 -> Driver Settings -> Driver Model -> Allow Date, Time and Timestamp -> Yes。 感谢单总的解答和这篇文章:https://developercommunity.visualstudio.com/content/problem/186922/-timestamp-macro-not-defined-in-r

python请求multipart/form-data数据

今天遇见发送post请求时,post data是类似下面的数据: 解决办法,参考:python拼接multipart/form-data类型post请求格式

使用asyncua模块的subscribe_data_change监控opcua的Server节点数据变化

报错信息如下; ERROR:asyncua.common.subscription:DataChange subscription created but handler has no datachange_notification method 上述报错原因在于创建监控句柄SubscriptionHandler类时,节点数据变化的函数名称有问题,不是默认的datachange_notifi

Avue-data数据大屏显示饼图(附Demo)

目录 前言1. Sql查询2. 颜色细节 前言 对于这部分知识,原先有过柱状图实战:Avue-data数据大屏显示柱状图(附Demo讲解) 以下直奔主题,以Sql数据库数据为主 1. Sql查询 以饼图为例,需要返回的形式如下: [{"name": "周口","value": 55},{"name": "南阳","value": 120},{"name": "西峡","v

346. Moving Average from Data Stream

https://leetcode.com/problems/moving-average-from-data-stream/description/ 题目大意:初始化一个滑动窗口,大小为w,输入一系列数,求窗口内的平均数,窗口会向前滑动,当窗口填满时,将最早进入的数弹出,加入新的数. 解题思路:用队列,求和时可以利用上次的和,不用每次从头到尾求 代码: class MovingAverag