互联网资讯 / 人工智能 · 2023年11月26日 0

AI技术在游戏全链路中的应用

随着游戏行业的飞速发展,尤其是在2020年第一季度,中国游戏市场的销售收入已经突破了700亿元。作为互联网公司流量转化和商业化变现的重要渠道,各大互联网企业纷纷加大对游戏行业的投入。AI技术在各个领域的应用已被广泛认可,在游戏领域的潜力也同样巨大。从深蓝到AlphaGo,AI早已在众多游戏中超越了人类。

虽然大众对AI与游戏的关系的认知还停留在初步阶段,但我们注意到AI能够为游戏的研发、推广和运营等多个环节提供支持。本文将重点介绍快手在游戏业务全链路中应用AI技术的探索与实践,这些工作由快手AI平台部、游戏技术中台及快游工作室共同完成。

在推关类游戏中,随着游戏运营时间的延续,关卡数量也在不断增加。例如,对于成熟的推关类游戏如消消乐,关卡数量可达到成千上万。合理设置关卡的难度是提升用户沉浸体验的关键因素。优秀的关卡设计能够根据用户的当前水平激发他们的游戏兴趣,而不稳定的关卡难度则会严重影响用户的游戏体验。

为系统性解决上述两个问题,我们尝试利用AI技术在游戏关卡设计上进行创新。针对游戏机制的特点,我们有两个主要的业务需求:一是通过AI评估已有关卡的难度,二是自动生成指定难度的关卡。快手在这两方面均已开发出相应的解决方案,并成功应用于点消和斗地主等游戏中。

点消游戏的特点是操作相对单一,关卡盘面通常由最多9*9个格子组成,操作方式仅为点击。然而,其状态空间极为庞大,每个格子上具有多种属性,如元素种类(方块、障碍元素、道具等)及其属性(颜色、层数、状态、朝向等)。

我们基于强化学习(结合CNN与A2C)以及蒙特卡洛树搜索(MCTS)设计了相应的算法以解决这一问题。一个主要的挑战是并行MCTS算法的实现。由于多个工作进程同时执行选择、扩展、仿真和反向传播过程,某个工作进程在选择时无法获取其他进程尚未结束的仿真结果,这导致各工作进程只能获取过时且相似的信息,从而影响搜索树中的节点选择,破坏了探索与利用之间的平衡。

为了解决这一问题,我们提出了WU-UCT算法(Watch the Unobserved in UCT)。该算法借鉴了异步并行算法的思想,核心在于维护一个额外的统计量,用于记录每个节点进行仿真的工作进程数量,并基于此调整选择算法。此外,我们采用了主从工作模式,由主进程维护完整的搜索树并执行选择和反向传播操作,同时负责将扩展和仿真的任务分配给子进程。这样做保证了每次选择时统计信息的完整性,并避免了进程间共享内存和访问冲突的问题。

最终,我们利用上述方法训练的AI对超过1000关进行了自动难度验证,以用户实际通关率为标准,我们的AI难度评估系统的误差控制在8.6%以内。得益于WU-UCT,我们的系统能够准确预测某一关卡上线后玩家的预期通关率,为关卡设计师提供了有效指导,达成无需人工测试即可获得反馈,从而显著降低了开发成本,改变了游戏制作的方式。此外,该工作已总结成论文并发表在ICLR2020大会上,且被选为口头报告论文。

在游戏研发测试完成后,下一步重要任务是推广。在此,我们将介绍AI在游戏广告投放中的一些实践与探索。

游戏工作室通常会在流量平台(如快手)上购买用户流量,而作为广告主,他们会建立或雇佣第三方投放团队进行广告投放。投放团队利用素材(短视频、图片封面、广告文案)构建广告创意,并设置相应的投放参数,最终形成广告计划在广告平台上进行投放。广告平台则负责曝光广告创意并收取费用,用户通过观看广告并点击其中的链接下载游戏,成为游戏用户,进而在游戏内进行消费,带来流水收入。

传统广告投放方式主要依赖人工制作广告创意和生成广告计划,但人工投放存在明显缺陷:一方面需要大量人力进行重复性操作,另一方面投放效果往往依赖于优化师的直觉和经验,缺乏可泛化的通用方法。

为了解决这些问题,我们搭建了智能投放系统,目标是实现全链路闭环的投放过程,无需人工干预。该系统基于召回和组合排序的投放策略框架。

智能投放系统的召回过程是从素材库中选取部分素材。召回方法包括基于规则和基于模型的方式。我们的召回模型主要采用回归和分类模型,如线性模型、树模型和神经网络等。通过设定优化目标(如ROI、激活数、激活单价等),建立监督学习模型以预测单个素材的表现,从而优选出潜力素材。

智能投放系统的组合排序则是将召回的素材进行组合(笛卡尔积)以构建广告创意,并对其进行排序。根据排序结果将优质创意编排至广告计划中。我们开发了多种排序模型,包括张量分解模型和基于神经网络的双塔模型。在张量分解方法中,我们将一个创意视为若干类型的元组,如(短视频、图像封面、广告文案),可视为三阶张量。

双塔模型,准确地说是多塔模型,将各维度素材特征经过神经网络得到各自的抽象特征表示,然后融合映射为一个分数。例如,最基本的双塔模型在短视频和图像封面场景下,可以理解为为视频素材找到合适的封面。

基于召回和组合排序框架,我们可以设计多种具体的投放策略,包括新素材冷启动、创意空间探索、智能创意制作等。此外,我们还开发了多种辅助策略,如素材的黑白名单策略、老素材的回收策略及关停策略等。这些策略的配合已基本满足我们的所有场景需求。目前,我们已介入10多款游戏,其中2款游戏实现了全面自动托管,AI生成的广告计划所占费用约为总花费的40%。

游戏推广之后,下一环节是运营。在这一过程中,诸多游戏内的策略问题会显著影响用户体验和留存率,进而影响收入。合适的策略设置通常是游戏策划的重要职责,优秀的策略往往依赖策划者丰富的经验和直觉。

在多人竞技或对抗游戏中,匹配策略是提升用户体验的重要环节,直接关系到用户留存率。用户匹配算法一般先粗略筛选出实力相当或符合某种规则的用户群体,再进行局部精排,以确保游戏平衡。然而,从全局用户体验出发进行优化以实现玩家分场和分队的匹配,仍然是一个NP-hard问题。

以《爱游斗地主》的原始基于规则的匹配策略为例,将待匹配用户构成匹配池,以用户状态(剩余金币量、胜率、段位等)为主要依据,计算战力系数后进行匹配。然而,这些信息并不能准确反映玩家的真实实力,难以确保对局玩家状态的平衡,导致用户体验差异。

我们利用玩家历史游戏行为序列和画像数据,基于深度神经网络实现多维特征融合的用户匹配策略。将玩家历史游戏行为的统计特征和用户画像作为模型输入,玩家历史对局的连桌数区间作为标签,训练出一个多分类模型。在预测过程中,首先通过设计的聚类模型对用户进行粗略聚类,即粗排过程。随后将每个聚类下的用户以三人一组(斗地主规则)进行分组,并将所有组合输入预测模型,输出不同组合的匹配概率值,优先将概率值较大的组合进行匹配,即精排过程。

在斗地主游戏中,发牌的方式直接影响游戏的进行和玩家体验。发牌完成后,玩家自行进行游戏,因此发牌策略是关键环节。传统发牌策略通常采用随机发牌或根据规则生成牌组,但随机发牌可能出现不均衡的手牌,严重影响玩家体验。

我们首先建立了牌库,包含大量牌组,入选标准则依据玩家反馈。玩家反馈包括在一局后超过一个玩家点击“再来一局”,可视为正向反馈;而无人点击则被视为负向反馈。我们收集各种反馈以标记牌组的“好坏”,并利用这些样本数据训练二分类模型。

我们提出了一种基于强化学习的牌组选择与牌位分配方法。我们从玩家历史游戏信息及近期胜负信息中提取基本特征、行为特征和状态特征。同时,从牌局中提取相应的牌组特征。将玩家特征视为状态,牌组特征视为动作,一局游戏的奖励定义为玩家是否继续游戏,从而建立强化学习框架。

在游戏运营过程中,我们有多个场景需要游戏AI的支持,例如出牌提示和掉线代打等。游戏AI技术的应用主要体现在《兜来玩麻将》业务中的落地以及在斗地主业务中的推广。《兜来斗地主》涵盖了6种麻将玩法,如四川麻将-血流成河、四川麻将-血战到底、大众麻将、二人麻将等。

我们基于深度强化学习进行创新性研究,针对缺乏专家级数据等技术难点,积累出一套扩展性极强的算法框架。

[[[IMG_1]]]
[[[IMG_2]]]
[[[IMG_3]]]
[[[IMG_4]]]
[[[IMG_5]]]
[[[IMG_6]]]
[[[IMG_7]]]
[[[IMG_8]]]
[[[IMG_9]]]
[[[IMG_10]]]