本文字数: 2400, 阅读完需: 12 分钟
导读
演讲者在亚马逊云科技出海日2024上发表了”打造高品质游戏云上分布式AI实践”的演讲。在这个演讲中,演讲者讨论了如何将强化学习应用于游戏开发;具体解释了游戏开发中需要AI机器人的原因和挑战,以及强化学习的核心技术和算法。演讲重点介绍了亚马逊云科技如何支持游戏开发商实现AI虚拟玩家、自动化测试、实时决策优化和虚拟角色行为等功能,带来高效、高覆盖率和个性化的优势。这个演讲由亚马逊云科技公司的运营科学家杨凯歌先生发表。
演讲精华
以下是小编为您整理的本次演讲的精华,共2100字,阅读时间大约是10分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。
在这场富有洞见的演讲中,我们有幸邀请到了杨凯歌,亚马逊云科技的运营科学家,为我们分享了游戏开发环节中人工智能(AI)的应用场景,以及亚马逊云科技提供的相应解决方案。让我们一起沉浸在他丰富的分享中,领略AI在游戏开发中的无限潜力。
杨凯歌首先阐明了游戏开发对AI机器人的迫切需求。在游戏制作过程中,质量保证(QA)测试是一个关键且昂贵的环节,通常会占据整个预算的30%。目前,游戏开发者主要依赖两种工具进行QA测试:脚本测试和人工测试。然而,这两种方式都存在着明显的缺陷。脚本测试需要大量的开发工作,并且需要随着游戏版本的不断迭代而持续更新,工作量巨大。而人工测试则面临着效率低下和覆盖率有限的问题。毕竟,人工测试的效率有限,而复杂的游戏场景又难以确保足够的覆盖率。在这种背景下,AI机器人应运而生,它可以代替脚本和人工,实现自动化测试,从而提高测试效率和覆盖率。
除了QA测试,游戏设计也是AI机器人的另一个应用场景。在游戏设计中,开发者需要精心考虑不同关卡的平衡性和难度设置,这项工作通常由经验丰富的游戏策划人员来完成。然而,有了AI机器人,这一过程就可以被极大简化。开发者只需让AI机器人快速通关,并积累大量数据,就可以通过分析得到关卡平衡度和难度排名的结果,无需依赖游戏上线后的用户数据。这不仅节省了时间,也提高了效率。
此外,AI机器人还可以解决游戏上线初期的”冷启动”问题。对于新上线的游戏,真实用户数量有限,玩家组队时可能需要长时间等待。在这种情况下,我们可以让AI机器人与真实用户匹配,根据用户的不同水平,为他们匹配相应水平和风格的AI机器人。这样一来,玩家就不会因为等待而流失,游戏也可以顺利地渡过”冷启动”阶段。
总的来说,AI机器人在游戏开发中有着广泛的应用场景,包括扮演虚拟玩家、进行自动化测试、提供实时决策优化,以及模拟虚拟角色的行为等。无论是在游戏测试、设计,还是上线运营阶段,AI机器人都可以发挥重要作用,提高效率、优化体验、解决痛点。
那么,如何获得一个智能的虚拟玩家呢?杨凯歌为我们揭示了三个关键步骤。首先,我们需要使用强化学习技术训练AI,让它学会玩这个游戏。在训练过程中,我们可以获得大量的训练数据和指标,监控AI的水平和胜率变化。通过不同的训练时长,我们可以获得不同水平的AI,从初级到高级,应对不同需求。其次,我们需要将训练好的AI接入游戏服务器,使不同水平的AI可以与不同水平的真实玩家匹配,满足个性化需求。最后,对于需要测试关卡难度和平衡性的场景,我们也需要先训练AI会玩游戏,然后让它大范围通关,从而获得每个关卡的详细数据,评估游戏的平衡性。
为了更好地理解强化学习在游戏开发中的应用,杨凯歌为我们深入解析了强化学习的概念。强化学习是一种智能决策框架,它解决的问题是:假设有一个智能体面对未知环境,它需要做出一系列动作或决策,以最大化从环境获得的奖励。这种概念贯穿于我们的日常生活,比如一个人从A点开车到B点,他需要在每个路口做出正确的转向、刹车等决策,以最小化行驶时间(即最大化奖励)。在训练小狗的场景中,我们会给出指令,如果小狗执行了指令就给予奖励,否则不给奖励或惩罚。经过多次训练,小狗就会学会执行指令获得奖励。
在游戏场景中,AI会观察当前游戏状态,选择一个动作(如出牌、攻击等),游戏会执行该动作并给出反馈(如得分、失分等)。AI会根据状态、动作和反馈不断更新算法,逐步学会如何玩这个游戏。强化学习包括多种算法,如PPO、SAC等,不同类型的游戏需要选择不同的算法。对抗性棋牌游戏通常使用自博弈模式和具有搜索能力的算法如AlphaGo;单人休闲游戏可使用PPO、SAC等主流算法;而策略竞技对抗游戏则需要结合自博弈和PPO等算法。选择合适的算法对算法人员的能力要求很高,需要经验调整算法参数和奖励机制。
值得一提的是,强化学习在游戏领域已经取得了许多突破性进展。2017年,DeepMind的AlphaGo战胜了围棋界的顶尖高手李世石,震惊了全世界。随后,DeepMind的AlphaStar也超越了人类在复杂的实时策略游戏星际争霸中的水平。而OpenAI的AI则在多人对战游戏Dota中获胜,展现出了强化学习在复杂场景下的优异表现。这些成就无不彰显了强化学习在游戏领域的巨大潜力。
在介绍了强化学习的概念和在游戏领域的应用后,杨凯歌继而分享了亚马逊云科技为满足游戏AI训练需求而推出的解决方案架构。该解决方案旨在提供三个核心功能:提供大量游戏并行所需的计算资源、提供算法并行所需的计算资源,以及在整个训练和推理过程中提供数据存储和调用。
这一解决方案的架构图清晰地勾勒出了其工作流程。首先,游戏开发人员需要将游戏打包并上传到Amazon Elastic Container Registry (ECR)。接下来,算法人员可以在Amazon SageMaker Notebook实例上开发和测试算法。在算法开发和测试完成后,我们需要在Amazon Elastic Container Service (ECS)上建立包含大量GPU节点、CPU节点和存储资源的集群,用于并行训练。
在训练过程中,我们可以定期保存进度,并在Amazon CloudWatch上监控训练情况,包括游戏运行情况和算法运行情况等,相关数据则存储在Amazon Elastic File System (EFS)中。最后,训练好的模型可以部署到SageMaker Endpoint,暴露API与游戏服务器集成,实现线上推理和使用。
为了让游戏引擎能够直接调用云上的服务,我们还需要进行一些额外的工作,包括通信封装、游戏接口API封装和游戏与算法之间的封装。完成这些工作后,训练完成的模型(如PyTorch模型)就可以部署到SageMaker Endpoint,通过API与游戏引擎连接使用。另外,如果游戏对延迟要求很高,模型也可以直接嵌入到游戏中,避免API延迟问题。
在理论阐释之后,杨凯歌为我们分享了两个成功案例,展示了亚马逊云科技解决方案在实践中的卓越表现。
第一个案例是卡牌游戏智能虚拟玩家。这是一款内部设计的1v1卡牌游戏,玩家拥有初始血量、法术等,通过降低对手血量为0或用完手牌获胜。游戏包含英雄卡牌、法术卡牌和技能卡牌等多种卡牌类型。
在这个案例中,我们首先从镜像仓库拉取游戏并开启服务器,然后定义算法参数并进行训练。训练过程中会产生一些结果供分析,并保存训练好的模型检查点。在本地测试后,确认模型表现良好,我们将模型部署到两个SageMaker Endpoint,游戏服务器可调用这两个AI进行对战。在视频中,我们可以看到两个训练好的AI在进行卡牌对战,展示了解决方案的实际效果。
第二个案例则来自于一家游戏公司的需求。该公司拥有数千个三消游戏关卡,希望能够评估这些关卡的难度排名,以便为用户提供从简单到困难的游戏体验。然而,该公司尝试了单机训练,却无法完成这一任务。
面对这一挑战,我们首先分析出三个主要问题:奖励机制设置不当(奖励过于稀疏)、算法收敛问题和泛化问题(一个模型需要解决所有关卡)。为解决这些问题,我们重新设计了奖励机制、调整了PPO算法的神经网络和超参数,并使用分布式训练加快收敛速度。
经过约3万局训练,AI就学会了通关,并且同一模型可以解决不同的关卡,实现了一定程度的泛化。在视频中,我们可以看到AI智能体在不同的关卡中游刃有余,展现出了强大的泛化能力。这个案例充分证明了亚马逊云科技解决方案的实用性和高效性,能够帮助游戏公司解决实际问题,提高游戏体验。
在演讲的最后,杨凯歌为我们总结了亚马逊云科技在游戏AI领域的贡献。通过这场精彩的分享,我们可以看到,亚马逊云科技为游戏开发者提供了强大的AI训练和部署能力,助力游戏全价值链的创新。AI不再是遥不可及的技术,而是切实可行和高效的解决方案,可以应用于游戏测试、设计、运营等多个环节,提高效率、优化体验、解决痛点。
正如杨凯歌所言,亚马逊云科技的解决方案架构涉及了多项亚马逊云科技服务,如SageMaker、ECS、ECR、EFS、CloudWatch等,为游戏AI训练和部署提供了强有力的支持。通过这一完整的解决方案,游戏开发者可以专注于游戏本身,而将AI训练和部署的复杂工作交给亚马逊云科技,享受高效、可靠的服务。
总的来说,这场演讲为我们拉开了游戏AI的神秘面纱,让我们一窥AI在游戏开发中的广阔前景。通过杨凯歌生动的阐述和真实案例的分享,我们深刻地感受到了AI给游戏开发带来的革新和变革。有了亚马逊云科技的强大支持,游戏开发者无需再为AI训练和部署的复杂性而烦恼,可以全身心投入到游戏创作中,为玩家带来更加身临其境、富有挑战的游戏体验。
下面是一些演讲现场的精彩瞬间:
亚马逊云科技专家分享了游戏中应用强化学习AI的核心技术和解决方案,以及在亚马逊云科技云端部署该方案的实际案例。
在游戏开发过程中,亚马逊云科技AI机器人可以自动化测试,提高效率和覆盖率,节省30%的QA预算。
亚马逊云科技出海日演讲中,介绍了AI机器人在游戏中的多种应用场景,如虚拟玩家、自动化测试、实时决策优化和虚拟角色行为等。
亚马逊网络服务公司展示了如何使用强化学习训练人工智能玩游戏,并根据训练过程中的胜率分析生成不同水平的AI,与真实玩家进行匹配。
图示了DeepMind训练星际争霸AI的过程,从0到14天,AI水平不断提高,从青铜到大师,使用了大量计算资源。
亚马逊云科技高管在亚马逊云科技出海日大会上阐述了强化学习面临的三大挑战:奖励稀疏、收敛问题和泛化问题。
演示了亚马逊云科技的人工智能技术如何通过训练3万局游戏,使AI智能体学会玩游戏并完成不同关卡,展现了AI在泛化问题上的能力。
总结
亚马逊云科技在游戏开发中应用分布式AI的实践经验:
游戏开发中AI机器人的需求与挑战源于质量保证(QA)测试、关卡设计平衡和冷启动问题。强化学习是核心技术,通过训练AI智能体学习游戏规则和策略,实现虚拟玩家、自动化测试和实时决策优化等功能。但训练过程需要大量计算资源,并根据游戏类型选择合适算法。
亚马逊云科技提供了一套分布式AI解决方案,利用亚马逊云科技服务如SageMaker、ECS等,为算法和游戏并行训练提供计算、存储和部署资源。该方案已应用于卡牌游戏虚拟玩家和三消游戏关卡难度评估等案例,通过分布式训练快速收敛,并实现了良好的泛化能力。
总之,分布式AI在游戏开发中具有广阔应用前景,但也面临算法选择、超参数调优和泛化能力等挑战,需要云计算资源的强力支持。亚马逊云科技的解决方案为游戏开发商提供了高效的分布式AI实践途径。