DASH客户端的自适应策略
摘要
超文本传输协议(HTTP)是一项支持互联网浏览的基本技术,HTTP服务器存储着大量的内容,当客户端发出请求时,服务器将特定的片段传送给客户端。最近在使用HTTP传输视频流媒体方面也有一个进步,保证了视频传输在现有服务器平台上的无缝集成。通过将视频分割成许多小的视频块,然后在服务器上以单独的文件存储这些视频块实现的。对于自适应流媒体,服务器将相同的块以不同的文件存储成不同版本的质量等级,以使视频随网络带宽的变化实时变化,从而达到自适应。因此,要下载哪个版本的视频块,成为流媒体客户端决策的一个重要问题。为了解决这个问题,我们利用马尔可夫最优决策过程。本文中,我们介绍了两种决策方法,都在带宽变化明显的环境下使用,并比较其优缺点。
关键词—基于HTTP的动态自适应流媒体,视频流媒体,马尔可夫决策过程.
Ⅰ. 介绍
由于巨大的可扩展性优势,在行业强烈推动下,我们采用HTTP作为提供所有内容类型(包括视频)的通用平台。 Apple,Microsoft和Adobe等公司已经部署了他们自己专有的基于HTTP的视频流传输平台,被称为基于HTTP的动态自适应流传输(DASH)标准。
DASH中的关键概念是以多个比特率(质量)对相同的视频进行编码,并将每个视频流存储为一系列持续时间为2-10秒的小视频块。客户端只需使用用于获取Web上的任何其他对象的标准HTTP GET命令,下载并播放一个给定视频质量的块即可。由于视频对每个帧都有严格的显示截止时间,因此每个块需要在截止时间之前下载,以避免“冻结”效应。因此,DASH客户端负责动态地选择下一个块的“正确”质量,以确保在接收器处具有从一个块到下一块的具有最高质量和最小频率质量波动的流畅视频。 DASH标准指定关于块的元数据的格式,诸如它们的URL和比特率, 存放在MPD文件中,发送到客户端。实际的流媒体策略,即用于为每个视频块选择正确的质量等级,开发者设计最优客户端,以便使观众的用户体验(QoE)达到最好。
在本文中,我们将介绍两种决策策略,Q学习和FA(Q),并比较它们的差异和优缺点。在之前的工作中还有其他方法,例如简单的启发式方法,它仅基于客户端中当前缓冲的视频和最近观察到的网络带宽来决定下一个块的质量。这些启发式执行得相当好,但没有优化各个QoE度量之间的权衡,特别是在网络带宽变化显著的情况下。我们的关键目标是探索更先进的决策工具,使得客户端能够在冲突的QoE度量之间进行改进的权衡。特别地,我们研究马尔科夫决策过程(MDP)的有效性,其被称为在不确定性下优化决策的能力。
本文的其余部分组织如下:我们在第二部分讨论MDP的相关表示;第三部分展示了如何将DASH中的质量决策问题描述成一个MDP问题;第四部分讨论了两种MDP实现算法;最后是总结和展望。
II.DASH中的MDP描述
MDP是一个元组
系统状态:我们观察视频块完全下载时的系统状态。系统状态
动作:在每个州,所采取的决策被称为行动。对于我们的自适应HTTP流系统,动作基本上是关于下一个块的质量水平的决定。
如果我们有N个质量水平可供选择,那么我们有N个可能的行动。在当前状态下选择的动作(决策)将影响在下一步骤达到特定状态的转移概率。
转移概率:它表明达到特定缓冲区状态的概率取决于采取什么行动。给定所采取的动作,一些转变概率将明显为零。
回报函数:当在状态s选择动作q时,回报函数使用一些奖励和惩罚来评估结果:
III. MDP解决方法
如上一节所述,有两种普遍的MDP解决方法,Q学习和 FA(Q)。
A.Q学习算法
在该技术中,定义每个状态值的Q矩阵初始化为零。DASH客户端在始状态采取行动,并在结束状态,将Q(s,a)更新为:
B.FA(Q)
在初步模拟中发现,使用Q-Learning客户端对环境变化的反应缓慢。当动作对于特定状态具有显著低于另一动作的Q值时,那么它被选择的概率非常低。当环境改变时,关于动作质量的新信息获得非常缓慢,因为动作不可能被选择并且Q值适应缓慢,特别是当使用小的学习速率时。为了解决这个问题,我们调查了FAQ - 学习技术的一个变体,由Kaisers提出的多代理RL。在所提出的技术中,如等式(4)所定义的方式来更新Q值,其中P(s,a)是在状态s中采取动作a的概率。
使用此更新方式,当动作a的选择概率低时,能更快地执行更新。另外,需要以1为截止值以避免Q值的溢出。
IV. 探索策略
当观察到状态s时,使用Q矩阵以如下方式做出决策:在大多数时间基于Q矩阵中的当前估计来选择能够提供最大值的动作,而在剩余时间内随机选择动作。
我们使用Boltzmann分布函数进行这种概率决策如下:
其中f(s,a)是在状态s时选择动作a的概率,θ(通常被称为温度)控制选择动作的随机度。对于数值大的θ值,将随机地选择动作,而不考虑Q矩阵中的值,但是对于更接近于零的小θ值,将以高的概率基于Q值来选择最佳动作。对于没有带宽先验知识的DASH客户端,以大的θ值开始是有用的,因此客户端主要做出随机决定并从其观察中学习。随着它继续学习,会更频繁地用Q值做决定。
Ⅴ. 结论和未来的工作
在本文中,我们设计了基于强化学习(RL)的HTTP动态自适应流媒体(DHAS)客户端,动态调整其行为以智能的感知网络环境。我们提出了一个扩展参数分析来优化客户端配置,使其在动态网络环境中运行。接下来,我们建议使用频率调整在线学习(Online Learning)方法,以强烈提高客户在可变环境中的性能。此外,我们提出了一个估计算法,将领域知识纳入初始Q表。使用这些估计,我们能够在其学习阶段,无论是在平均意见得分(MOS)和总冻结时间方面,大幅提高用户的体验质量。
我们的下一个目标是开发一个DASH播放器的实际客户端,它结合了提出的MDP选项,并使用真实的视频流评估体验。
可以扩展当前MDP模型的状态空间,以通过扩展状态定义来包括稳定性参数来考虑不稳定性,稳定性参数将定义视频流的稳定性的当前状态。然后惩罚函数将必须扩展以引入取决于当前稳定状态的惩罚。这些扩展将使MDP能够调整DASH流的稳定性能,尽管复杂度更高。如何最好地设计用于稳定性控制的MDP将成为未来的重要工作。