APP下载

基于强化学习的动态定价策略研究综述

2019-12-12

计算机应用与软件 2019年12期
关键词:定价供应商动态

王 欣 王 芳

(上海外国语大学国际工商管理学院 上海 200083)

0 引 言

随着互联网的发展及电子商务的普及,人们获取商品和服务信息变得越来越容易而且全面。商品或服务价格的变动也会在最短时间内对消费者的购物行为产生影响,从而直接影响企业效益。为了最大化效益,企业经常会基于某些因素定期或不定期调整商品或服务价格,这也与人工智能领域强化学习的目标一致。强化学习的目标是最大化长期收益,因此,通过强化学习的技术手段可以实现商品或服务的智能定价。

动态定价是企业根据顾客需求和自身供应能力等信息动态调整商品价格,以实现收益最大化的策略[1],有些学者也将其称为个性化定价[2]。随着人工智能技术的不断发展,越来越多的学者尝试采用智能方法来解决动态定价问题,强化学习(Reinforcement Learning,RL)便是最广泛使用的技术之一。它受到自然界人和动物能够有效适应环境的启发,通过不断试错的方式从环境中进行学习,是机器学习的一个重要分支。它在人工智能问题求解、多智能体控制、机器人控制与运动规划、决策控制等领域有着十分广泛的应用[3-5],是智能系统设计与决策的核心技术之一,也是进行智能动态定价策略研究的关键问题。

因此,深入研究强化学习方法在动态定价领域的应用,对于推动人工智能、强化学习方法的发展及其在动态定价等领域的应用都有非常重要的意义。本文将从强化学习的技术和其在动态定价领域的具体应用两方面展开综述。首先,基于现有动态定价用到相关强化学习关键技术进行介绍;然后分别从不同角度综述强化学习在动态定价中的应用,分析其优缺点;最后分析强化学习在动态定价领域的应用前景。

1 强化学习

根据反馈的差异,机器学习技术可以分为监督学习(Supervised Learning,SL)、无监督学习(Unsupervised Learning,UL)和强化学习三大类,其中:监督学习完成的是与环境没有交互的记忆和知识重组,要求给出学习系统在各种输入信号下的期望输出;无监督学习主要是聚类等自组织学习方式;强化学习是通过“试错”的方式与环境进行交互,通过最大化累积奖赏的方式来学习到最优策略[6-7],它通过与环境的交互,并根据交互过程中所获得的立即奖赏信号进行学习,以求极大化期望累积奖赏,是机器学习的一个重要分支。

强化学习的工作原理和人类的学习模式类似。如果Agent的某个动作得到了环境的正奖赏,那么Agent以后的动作就会增强;如果得到了负奖赏,那么以后的动作就会减弱[8]。强化学习的目标是学习到一个动作策略,使得系统获得最大的累积奖赏。在强化学习中,Agent在环境s下选择并执行一个动作a,环境接受动作后变为s′,并把一个奖赏信号r反馈给Agent,Agent根据奖赏信号选择后续动作[9]。在动态定价相关研究中,强化学习系统的目标是使厂商能够最大化总体收益,而忽略单笔交易的短期利益。强化学习架构一般包括四个要素:策略(Policy)、奖惩反馈(Reward)、值函数(Value Function)、环境模型(Environment)。动态定价的环境相关因素繁多且复杂,以往强化学习的动态定价研究主要基于以下几种环境框架。

1.1 马尔可夫决策过程(MDP)

马尔可夫决策过程一般用来解决顺序型强化学习问题。它是一个五元组:(S,A,P,R,γ),其中:

(1)S是一组有限的状态s∈S。

(2)A是一组有限的行为(S,A,P,R,γ)。

(5)γ∈[0,1]是折现系数,代表未来奖励与现在奖励之间的重要差异[7,10]。马尔可夫决策过程的本质是:当前状态向下一状态转移的概率和奖赏值只取决于当前状态和选择的动作,而与历史状态和历史动作无关。在马尔可夫动态模型在策略π下的值函数由贝尔曼方程(Bellman equation)定义[7]。强化学习方法是通过最大化值函数来改进策略,并最终得到最优策略π*。Vπ(s)表示从状态s开始,执行当前策略所得到的状态值函数。状态值函数的贝尔曼最优方程表示为[7,11-12]:

(1)

状态动作值函数Q*(s,a)定义为从状态s开始,执行动作a所得到的期望回报值。因此,在最优策略π*下状态动作值函数Q*(s,a)的贝尔曼最优方程表示为:

(2)

1.2 半马尔可夫决策过程(SMDP)

针对从状态st开始、在st+1结束的动作a,期间执行的步长为τ,它的状态转移概率为:P(τ,st+τ=s|st=s,at=a)[13]。τ可以是连续时间离散系统的实数,也可以是离散系统的整数。SMDPs的状态值函数贝尔曼最优方程表示为[13]:

a)V*(s′)}

(3)

SMDP最优状态动作值函数Q*(s,a)表示为:

(4)

1.3 部分可观测马尔可夫决策过程(POMDP)

POMDP是一种通用化的马尔可夫决策过程。POMDP模拟代理人决策程序是假设系统动态由MDP决定,但是代理人无法直接观察目前的状态。相反地,它必须要根据模型的全域与部分区域观察结果来推断状态的分布[14-19]。与MDP不同的是,POMDP模型中不再直接观察状态s′,而是去感知一个观测(或采样)o∈Ω。离散观察集合Ω={o1,o2,…,oM}代表所有可能的Agent能够接收到的感知器读数。Agent接收到的观测值取决于下一个环境状态s′以及在一定条件下可能也取决于Agent采取的动作a[20]。

正如完全可观察MDP问题一样,Agent的目标是选择动作使得任务尽可能完美的完成,即让Agent学习一个最优策略。在POMDP问题中,一个最优策略π*(b)将信度映射到动作上。但是和MDP问题相反,

策略π描述成一个价值函数V:Δ(S)→R,定义为Agent在遵循策略π的条件下从信度分布b开始收集到的期望未来减量回报V(b),具体表示为:

V(b)=E{∑γtR(bt,π(bt))|b0=b}

(5)

式中:R(bt,π(bt))=∑R(s,π(bt))bt(s)。最大化V的策略π称为最优策略π*,它为每个信度b在当前步长内执行一个最优行为a,并假设Agent会在后续时间步长内执行最优行为a。最优策略π*的值是通过最优价值函数V*定义的。该价值函数满足贝尔曼最优方程,表示为:

V*=HPOMDPV*

(6)

(7)

式中:HPOMDP是POMDP的贝尔曼备份算子[21-29]。

2 强化学习算法

强化学习可以分为基于值函数的强化学习和基于策略的强化学习。在基于值函数的强化学习中,常用的学习算法包括Q-Learning算法、SARSA算法和蒙特卡罗算法。在基于强化学习的动态定价研究中,这三种算法也是经常采用的算法。

2.1 Q-Learning算法

Q-Learning算法是无模型算法,其迭代公式表示为[30-36]:

(8)

式中:Q(st,at)为t时刻的状态动作值;r为奖赏值;γ为折扣因子;αt是学习率;δt表示时间差分(temporal difference,TD)误差;a′是状态st+1能够执行的动作。

2.2 SARSA算法

作为SARSA算法的名字本身而言,它实际上是由S、A、R、S、A几个字母组成的。而S、A、R分别代表状态(State)、动作(Action)和奖励(Reward)。SARSA是一种策略算法,能够在奖赏函数和状态转移概率未知的情况下,通过状态动作值函数迭代找到最优策略。当状态动作对被无限次访问时,该算法会以概率1收敛到最优策略及状态动作值函数。SARSA算法在学习中采用相对安全的动作,因此该算法的收敛速度较慢。迭代公式表示为[6,37-41]:

Q(s,a)=Q(s,a)+α{r+γQ(s′,a′)-Q(s,a)}

(9)

2.3 蒙特卡罗算法

蒙特卡罗算法不需要对环境的完整知识,仅仅需要经验就可以求解最优策略,这些经验可以在线获得或者根据某种模拟机制获得。蒙特卡罗方法保持对状态动作和未来奖赏的频率计数,并根据估计建立它们的值。蒙特卡罗技术基于样本来估计平均样本的回报。对于每个状态s∈S,保留所有从s获得的状态,一个状态s∈S的值是它们的平均值。特别对于周期性任务,蒙特卡罗技术是非常有用的。由于采样依赖于当前策略π,策略π只评估建议动作的回报[42-46]。值函数更新规则表示为:

V(st)→V(st+1)+α(rt-V(st))

(10)

式中:rt为t时刻的奖赏值;α为步长参数。

3 基于强化学习的动态定价策略

强化学习方法用于解决动态定价问题时,主要从供应商数目(单供应商、多供应商)、所处环境模型(MDP、POMDP、Semi-MDP)、选用算法(Q-Learning,SARSA,Monte-Carlo)等方面进行假设和研究。

无论是传统还是基于强化学习的多供应商动态定价研究通常对市场中供应商数量进行假设,一般分为单供应商和多供应商。而对于多供应商的研究,大多假设市场存在两个供应商,且两个供应商之间存在某种竞争关系。在基于强化学习的研究中表示为两个Agent,且在它们之间存在相互影响和竞争。文献[4]研究了网格服务供应商(Grid Service Provider)在市场上存在两家供应商时如何进行动态定价。文献[48-49]对于航空公司定价策略的研究中,将市场上存在的航空公司数量假定为两家。文献[50]研究了电子商务市场多家供应商竞争的情况,但在供应商的数量上依然延续了两家供应商的假设。文献[51]在研究中,假设市场由一个供应商分别供货给两个零售商,从而研究如何定价能使零售商的利益最大化,因此也是将研究对象定位在了两个零售商上。文献[52]针对两销售商间没有信息交互的异步动态定价问题进行了研究。文献[53]基于多Agent强化学习算法对季节性商品动态定价策略进行研究,并在研究中将Agent数目确定为两个。与此同时,也有文献对垄断供应商动态定价策略进行了相关研究。文献[54]研究了处于垄断地位的公司如何进行动态定价以实现利润最大化。文献[55]研究了只有一家供应商的情况下,基于强化学习的动态定价专家系统的设计方法。文献[56]研究了动态环境中,航空、酒店和时尚等行业只有一家供应商的情况下,如何进行动态定价,以实现最佳的收益管理(revenue management)。文献[57]研究了在垄断能源行业如何通过强化学习技术实现动态定价和收益最大化。

在环境模型的选择方面,之前的研究也根据不同情况做了界定。文献[48-49]对于航空企业票价动态定价的研究全部基于MDP模型。文献[50]在环境模型为MDP的前提下对两个Agent的系统进行了研究,从而提出了一种竞争定价策略。文献[51]通过使用SARSA算法提出了一种解决动态定价问题的方法,该研究的前提也是决策过程符合MDP。文献[52]在MDP环境模型下对于异步动态定价进行了相关研究。文献[53]结合强化学习和性能势,在MDP环境下,对动态定价进行了研究。文献[54]在MDP下对有交互作用的商品的动态定价进行研究。文献[56]根据不同客户类型划分,研究了电子商务市场的动态定价策略。文献[57]研究了垄断能源行业如何在MDP环境下建立智能动态定价策略。文献[58]在MDP下研究了动态环境下实时动态定价策略。文献[59]基于Q-learning算法对能源行业白天零售市场的定价策略研究。文献[47]将基于POMDP梯度的函数逼近应用于产品或服务定价。文献[60]基于POMDP,研究了电子商务市场的动态定价策略。文献[61]基于SMDP研究了动态定价的最优策略。此外,文献[62]基于SMDP研究了垄断企业的动态定价策略。

在算法方面,国内外学者也根据研究内容的差异进行了差别选择。在动态定价方相关研究中,应用最广泛的是Q-learning及其改进算法。在网格计算市场上,文献[47]基于Q-learning算法提出了在部分可观测环境中的动态决策模型,并通过调节参数来调节梯度方向,从而使算法收敛到最优值函数。在航空业动态定价的中,文献[48]在2012年对Q-learning、SARSA和蒙特卡罗算法进行了对比研究。在电子商务领域,文献[50]基于Q-learning算法,对多Agent的环境定价策略进行了研究。文献[52]对于两销售商间没有信息交互的异步动态定价问题的研究也是基于Q-learning和WoLF-PHC算法。文献[55]基于带资格迹(eligibility traces)的Q-learning算法研究了相互影响的商品和服务应该如何动态定价。文献[56]通过Q-learning对电子商务市场的动态定价策略进行了研究。文献[59]使用Q-learning实现了多Agent系统,完成零售市场的动态定价。文献[60]利用改进Q-Learning对电子商务中不同产品线的动态定价策略。

同时,也有很多研究采用了SARSA和蒙特卡罗算法。文献[49]在不同客户模型下,通过SARSA算法实现了对航空业的动态定价。在竞争性订单的动态定价策略中,文献[51]也使用了SARSA算法。在竞争背景下垄断企业的动态定价策略采用了蒙特卡罗算法[54]。文献[58]也采用无模型的蒙特卡罗算法实现了非静态环境的动态定价。文献整体情况如表1所示。

表1 文献总结表

4 结 语

在前人关于动态定价的研究中,学者们分别基于单Agent和多Agent进行了相关研究。在解决现实问题中,对于模型的选择要根据实际需求,以最简单有效的方式解决问题为原则。在今后的研究中,需要结合不同实际应用场景和领域对Agent的数量进行界定。从目前强化学习技术的发展来看,对于单Agent和双Agent的研究比较系统和完善,因此对于Agent的不同数量及Agent之间的相互作用需要进一步加强和完善。多Agent之间的信息交换是应用强化学习技术解决动态定价问题时需要进一步考虑的因素。

决策过程框架是强化学习实现的前提,不同的问题需要在不同环境框架下解决。从以往的研究来看,学者们的研究多基于马尔可夫决策过程(MDP),MDP是强化学习中最简单的一类过程,半马尔可夫决策过程(SMDP)和POMDP因为考虑了学习过程中其他的因素,是更复杂的决策过程。近几年,基于SMDP和POMDP的动态定价研究也逐渐展开。由于SMDP可以在随机个时间步上完成,因此动态定价可以应用于连续系统,更接近真实的定价环境。POMDP是一种更通用化的马尔可夫决策过程,对于Agent来说,因为部分状态不可知,所以也更符合动态定价的实际情况。

目前对于动态定价研究的算法主要基于Q-learning、SARSA和蒙特卡罗及其改进算法,尤其是Q-learning算法应用最为广泛。但Q-learning算法属于表格型算法,对于小规模和离散系统有比较好的学习效果,但对于连续的大规模系统,则会有收敛速度慢或无法收敛的情况。而深度强化学习(Deep Reinforcement Learning,DRL)正能弥补这一不足。它将深度学习的感知能力与强化学习的决策能力相结合,并因为AlphaGo的成功而成为人工智能发展的一个里程碑。它是一种通用性很强的端到端的感知和控制系统。目前,其在机器人控制、机器视觉、自然语言处理、智能医疗等领域获得了广泛的推广。虽然目前鲜有基于深度强化学习进行动态定价研究,但这是一个值得学者们努力实践的方向。

猜你喜欢

定价供应商动态
国内动态
国内动态
国内动态
本刊2020年36卷第12期版权页定价勘误
动态
基于分层Copula的CDS定价研究
帮爸爸定价
供应商汇总
供应商汇总
供应商汇总