CN115175750A - 基于ai的游戏应用程序内容生成 - Google Patents
基于ai的游戏应用程序内容生成 Download PDFInfo
- Publication number
- CN115175750A CN115175750A CN202180012333.4A CN202180012333A CN115175750A CN 115175750 A CN115175750 A CN 115175750A CN 202180012333 A CN202180012333 A CN 202180012333A CN 115175750 A CN115175750 A CN 115175750A
- Authority
- CN
- China
- Prior art keywords
- game
- game content
- candidate
- new
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Artificial Intelligence (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明公开了一种程序内容生成工具,其通过以下进行操作:经由图像分析生成现有游戏内容的图形;基于所述图形生成对称马尔可夫随机场(SMRF)模型;以及经由迭代人工智能(AI)基于所述SMRF模型自动生成新游戏内容。
Description
技术领域
本公开涉及在由游戏***和其它游戏装置使用的游戏应用程序的开发中使用的处理***和应用程序。
附图说明
本专利或申请文件含有至少一张彩色附图。专利局将根据要求和支付必要的费用提供本专利或专利申请出版物的彩色附图副本。
图1呈现了根据本公开的实施例的游戏开发***的图示/块图表示。
图2呈现了根据本公开的实施例的游戏开发平台的块图表示。
图3A呈现了根据本公开的实施例的游戏开发流水线的流程/块图表示。
图3B呈现了根据本公开的实施例的一般体验人物角色的组件的流程/块图表示。
图4呈现了根据本公开的实施例的方法的流程图表示。
图5呈现了根据本公开的实施例的游戏遥测数据的图形表示。
图6呈现了根据本公开的实施例的方法的流程图表示。
图7呈现了根据本公开的实施例的方法的流程图表示。
图8呈现了根据本公开的实施例的方法的流程图表示。
图9呈现了根据本公开的实施例的方法的流程图表示。
图10A和10B呈现了根据本公开的实施例的图形。
图10C呈现了根据本公开的实施例的方法的流程图表示。
图11A呈现了根据本公开的实施例的现有游戏的图示表示。
图11B呈现了根据本公开的实施例的现有游戏的图形表示。
图11C呈现了根据本公开的实施例的现有游戏的图示表示。
图11D呈现了根据本公开的实施例的现有游戏的图形表示。
图11E呈现了根据本公开的累积配置表。
图11F呈现了根据本公开的条件概率表。
图12A呈现了根据本公开的实施例的现有游戏的图示表示。
图12B呈现了根据本公开的实施例的现有游戏的图示表示。
图12C呈现了根据本公开的实施例的现有游戏的图形表示。
图12D呈现了根据本公开的实施例的现有游戏的图形表示。
具体实施方式
图1呈现了根据本公开的实施例的游戏开发***的图示/块图表示。具体地,呈现了游戏开发平台125,其经由网络115将游戏数据118和玩家数据119与例如移动装置113的游戏装置和游戏***112经由网络115通信。网络115可以是因特网或其它广域网或局域网。游戏开发***125可用于游戏应用程序的创建、开发、测试、平衡和更新。
游戏数据118可包括例如呈现给用于玩的游戏装置的游戏应用程序的当前版本。此外,从游戏装置发送到游戏开发平台125的游戏数据118可以包括游戏遥测数据或被处理以产生游戏遥测数据和/或在游戏开发中使用的其它游戏分析。玩家数据119可以包括一种或多种输出模式,例如通过与游戏***112或113相关联的麦克风生成的玩家或观众语言数据、与玩家或观众相关联的聊天数据和/或玩家或观众的非语言数据,例如面部表情、头部姿势,其经由与指示例如玩家和/或观众情绪的游戏***112或113相关联的相机或其它成像传感器捕获。
将结合图2至12更详细地描述游戏开发平台125的操作,包括若干可选的功能和特征及其实例。
图2呈现了根据本公开的实施例的游戏开发平台的块图表示。具体地,游戏开发平台125包括网络接口220,例如3G、4G、5G或其它蜂窝无线收发器、蓝牙收发器、WiFi收发器、超宽带收发器、WIMAX收发器、ZigBee收发器或其它无线接口、通用串行总线(USB)接口、IEEE 1394火线接口、以太网接口或其它有线接口和/或其它网卡或调制解调器,用于通过网络115与一个或多个游戏装置通信。
游戏开发平台125还包括处理模块230和存储操作***(O/S)244的存储器模块240(例如Apple、Unix、Linux或Microsoft操作***或其它操作***)、游戏开发应用程序246、一个或多个游戏应用程序248、一个或多个游戏机器人250、一个或多个程序内容生成(PCG)工具252以及一个或多个行为体验分析(BEA)工具254。具体地,O/S 244、游戏开发应用程序246、游戏应用程序248、游戏机器人250、PCG工具252和BEA工具254各自包括操作指令,该操作指令在由处理模块230执行时协作以将处理模块配置到专用装置中以执行本文描述的特定功能。
游戏开发平台125还包括用户界面(I/F)262,例如显示装置、触摸屏、小键盘、触摸板、操纵杆、拇指轮、鼠标、一个或多个按钮、扬声器、麦克风、加速计、陀螺仪或其它运动或位置传感器、摄像机或向游戏开发平台125的用户提供信息并响应于用户与游戏开发平台125的交互而生成数据的其它接口装置。
处理模块230可以经由单个处理装置或多个处理装置来实现。此类处理装置可以包括微处理器、微控制器、数字信号处理器、微型计算机、中央处理单元、现场可编程门阵列、可编程逻辑装置、状态机、逻辑电路、模拟电路、数字电路/或基于存储在存储器(例如存储器240)中的操作指令来操纵信号(模拟和/或数字)的任何装置。存储器模块240可以包括硬盘驱动器或其它磁盘驱动器、只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、快闪存储器、高速缓冲存储器和/或存储数字信息的任何装置。注意,当处理装置经由状态机、模拟电路、数字电路和/或逻辑电路实现其一个或多个功能时,存储对应操作指令的存储器可以嵌入包含状态机、模拟电路、数字电路和/或逻辑电路的电路的内部或外部。虽然呈现了包括单个总线260的特定总线体系结构,但是包括附加数据总线和/或一个或多个元件之间的直接连接的其它体系结构也是可能的。进一步,游戏开发平台125可以包括未具体示出的一个或多个附加元件。
游戏开发应用程序246可由游戏开发者用于游戏应用程序248的创建、开发、测试、平衡、改进、修订、优化和/或更新。游戏应用程序248可以是例如多人或单人游戏,其包括射击或其它战斗游戏、幻想游戏或其它动作或冒险游戏、模拟真实世界车辆装置或***的操作的模拟游戏、实时策略游戏、益智游戏、体育游戏、角色扮演游戏、棋盘游戏或其它视频或数字动画游戏。在各种实施例中,可以存储游戏应用程序248的一个或多个版本,包括例如游戏应用程序的多个版本或更新、一组或多组游戏参数、一个或多个关卡和其它内容和/或其它游戏数据。
游戏机器人250结合游戏开发应用程序246来操作以测试游戏应用程序246的操作和/或作为游戏中的一个或多个非玩家角色(NPC)操作。游戏机器人250可以包括和/或作为玩游戏的AI(人工智能)人物角色来操作,该人物角色是经由机器学***的自动测试器来操作。这些AI人物角色可用于例如比实际玩家更快地进行游戏以更快地评估游戏内容;用千种玩法变化随机评估关卡的难度;生成关键绩效指标(KPI),提高设计迭代的速度,以释放设计者的时间专注于游戏性和高级概念;例如,通过游戏应用程序248的各种版本和/或迭代,以相同的技能水平和风格进行反复测试。人工智能而不是人类智能的使用允许游戏机器人250以实际上无法在人脑中执行的速度和一致性来执行。
此外,AI人物角色中的一个或多个可以作为基于对所记录的人类演示的机器学习来玩游戏的回归游戏测试者操作并检查在内容或代码改变之后游戏仍是可玩的。具体地,当在游戏中发现错误时,回归游戏测试者可以生成报告、生成KPI、预测整体游戏时间和游戏难度的变化和/或结合BEA工具250操作以预测玩家行为动机量的变化,积极的和消极的,包括厌倦、兴奋、完成等。
如上文中指出,AI人物角色可以作为单人和多人游戏的玩家替身、AI对手和/或NPC。这使游戏开发者确保在启动之前和之后总是有人对战并模仿真实的对手;与技术水平和风格不同的对手挑战玩家;并生成生动的、令人信服的世界,其中的角色的行为模式不同。
PCG工具252使用例如经由机器学习(PCGML)或其它AI的程序内容生成的程序内容生成来启动和加速游戏开发者使用游戏开发应用程序246开发新游戏应用程序248和/或对现有游戏应用程序的新内容或关卡的创造性过程。PCG工具252可以经由机器学习算法来构建,并且包括例如马尔可夫随机场(Markov random field)模型、对称马尔可夫随机场模型、卷积神经网络、堆叠神经网络、生成对抗网络、深度学习算法、无监督学习算法、黑斯廷斯梅特罗波利斯(Hastings Metropolis)采样或其它人工智能模型或方法论,其基于对游戏的先前版本、游戏数据118(例如游戏遥测数据、行为动机数据和/或由一个或多个AI人物角色的游戏玩法)的分析进行迭代训练并且操作以生成新的游戏内容(例如新的游戏变化、新的关卡和其它内容)。
在各种实施例中,玩游戏的AI人物角色可以通过跨游戏内容生成AI人物角色游戏轨迹和统计数据来评估和评论经由PCG生成的内容,并且根据预测的KPI和/或其它性能度量来评估程序生成的内容。这允许游戏开发应用程序246有助于游戏开发者理解和评估启用PCG的游戏的游戏空间,以保护PCG设计免受无法播放或退化的实例的影响。
此外,PCG工具252可以通过学***台125的实例来生成新的益智游戏、关卡或其它内容,以播种人工智能模型并生成用于评估的新候选内容。这允许使用游戏开发平台125的游戏开发者利用预先生成的益智游戏、关卡和/或其它内容来提高其生产力;专注于概念和重要细节,而不是平凡的布局;从生成的实例而不是空白画布开始创建,和/或基于游戏开发者提供给游戏开发平台125的种子实例以从先前游戏开发者那里学习的风格和偏好来生成内容。
BEA工具254与游戏开发应用程序246结合操作以实时地从玩家的游戏轨迹自动预测玩家动机和其它玩家体验。此外,BEA工具254与游戏机器人250和/或PCG工具252的结合使用允许游戏开发者基于模拟游戏玩法从AI人物角色的玩法轨迹预测未来玩家动机和其它玩家体验。
游戏开发平台125的使用助于游戏开发者理解为何玩家喜欢特定游戏应用程序248、减少流失、优化玩家体验和长期参与。具体地,潜在游戏玩家是不同的并且出于不同的原因进行游戏。预测玩家动机帮助游戏开发者理解潜在玩家群体的这些差异和分组。
BEA工具254可以通过偏好学习或基于玩家问卷、游戏数据118和/或玩家数据119训练的其它机器学习技术来构建以便学习和预测实际玩家动机。在操作中,BEA工具254使用游戏遥测数据、游戏数据118和/或来自其它玩家的玩家数据以预测各个玩家与游戏交互的原因。例如,生成指示玩家受动机因素激励的程度的BEA数据允许游戏开发者相应地优化玩家体验,根据玩家的动机匹配以创建更好的游戏会话,给玩家优化和个性化游戏以留住玩家并提高终身价值,在不良玩家匹配和潜在负面互动成为问题之前识别它们,随着时间的推移跟踪玩家基础的发展,并每天了解你的典型玩家动机或行为简档是否开始改变。
考虑以下案例实例。
案例#1
背景
·游戏开发者使用游戏开发平台125来开发作为多玩家移动游戏的游戏应用程序248。
·游戏的特征是两个对立的队伍,每个队伍最多有四个角色,玩幻想美式足球的形式。
·玩家可以使用的人物角色取自更大的池,可供玩家使用,并且被构建到“牌组”用于特定比赛。
·每个角色都有不同的能力,从根本上改变了玩家的体验。在不同的牌组中组合不同的角色会给玩家不同的队伍。
·附加地,每个角色都可以根据生命值、伤害、速度等组合进行无限调整。
·重要的是了解这些不同的牌组如何相互对抗,以确保很好地平衡游戏并激励玩家在玩游戏时获得更多的角色。
·游戏开发者计划在初始启动后持续开发新角色并定期发布新角色。
·附加地,游戏开发者计划开发和发布新游戏区,其改变游戏的特性,再次影响具体牌组的游戏价值。
需要
·游戏开发者需要理解每个角色的玩法特性,无论是单独的还是当与牌组中的其它角色组合时。
·这意指游戏开发者需要理解在游戏过程中不同的角色在游戏中动态地相互对抗。
·这意指以不同的角色牌组配置玩许多游戏并且以各种组合观察和分析各种游戏风格和策略的影响。
·游戏特征是18个角色,并且除了选择4个角色之外,玩家可以在4个可以添加到其牌组中的魔法师之间进行选择。
·这意指游戏的当前版本支持293,760种不同的牌组合,其中角色和法术的特性可以无限变化。
·由于每场比赛使用两个牌组(可能相同),因此在调整任何游戏值之前可以设置和进行86,294,937,600场不同的比赛。
·除此之外,不同的游戏地图进一步增加了复杂性。
·随着更多的角色和地图被添加到游戏中,该组合问题会继续扩大。
·游戏开发者想要探索尽可能多的不同牌组解决方案和匹配组合的特性,以优化游戏并确保具有高留存率的产品良好地货币化,以便最大化客户终身价值(LTV)。
游戏开发平台125的使用
·两个人玩单场比赛以调查人物和牌组的特性目前花费大约5分钟,每个人需要协调以便能够同时玩。
·两个游戏机器人250玩单场比赛以调查角色和牌组的特性目前花费20至25秒。
·除了比人类玩家快15倍之外,游戏机器人250允许并行执行许多匹配,使用统计数据对数据进行汇总和比较,而不需要定性解释。
·对角色进行定性检查的游戏开发者可以与游戏机器人250对战,将所涉及的人力减少50%,并释放员工时间用于其它任务,同时消除了在两个员工之间进行调度的需要。
·附加地,游戏机器人250可以作为面向玩家的NPC包括在完成的游戏中。这消除了游戏开发者在内部单独开发面向AI的玩家的需要,并且通过为新玩家提供无限数量的对手来改善游戏的硬启动,因为游戏开发者正在构建其玩家基础。
案例#2
背景
·游戏开发者具有实现益智游戏的现有游戏应用程序248。
·让玩家对游戏保持新鲜感需要持续生产新内容。
·新内容需要具有高质量。
·内容是不可互换的:游戏开发者从分析中报告关卡质量的差异对客户终身价值具有主要影响,良好关卡是留住玩家的关键部分。
·当前创建新关卡的团队由创建新关卡的2至3个关卡设计者组成。
·以前,设计者每两周可以制作15个新关卡发布到游戏中。与外部游戏测试公司一起评估这些关卡需要1周时间。
·减少迭代时间允许设计者专注于增加关卡质量的新特征,这是游戏性能的主要预测值。
需要
·游戏开发者想要自动生成新关卡概念的算法,供设计者从中选择,以允许设计者专注于新关卡想法,而不是构建关卡设计的平凡方面。
·游戏开发者想要使用自动内容生成以激发设计者的新想法-解决“空白画布问题”-即从零开始构思。
·游戏开发者想要机器人玩得更像人类,以便提高其对设计者创建关卡的评估。
游戏开发平台125的使用
·通过单个游戏机器人250的自动游戏测验,该速度可以增加到每1周完成30个关卡。评估关卡几乎是即时的,允许设计者在其想法新鲜时进行迭代。
案例#3
背景
·游戏开发者正在开发实现用于PC、Mac和游戏站4的多平台叙述游戏的游戏应用程序248。
·该游戏是高度复杂的分支叙述,由大约8小时的完整玩法的游戏组成。
需要
·游戏的元素是高度相互依赖的。
·改变故事的早期部分可能会对故事的后期部分产生影响并且使得游戏无法完成。
·更改代码以解决开发后期确定的需求或修复错误可能会破坏游戏早期部分的功能。
·团队规模有限并且团队中没有专职质量保证人员。
·当非程序员团队成员遇到错误时,由于无法测试游戏或在创建内容时体验内容,因此他们的工作通常会停止。
·这打破了创造性的流程,并且显着地增加了在故事想法上迭代时间。
·向程序员请求紧急错误修复往往会破坏程序员的工作流程,因此具有连锁成本效应。
·测试完整游戏以响应变化花费至少8小时的完整时间工作,加上日志记录、案例创建和衍生任务。
·游戏开发者需要一种能够自动识别遍历游戏故事内容时的失败点的解决方案。
游戏开发平台125的使用
·游戏机器人250自动穿行游戏的故事,允许游戏开发者识别游戏何时会崩溃或玩家何时会卡住。
·该***以两种方式运行:
1.通过玩家模仿,游戏机器人250模拟先前的玩家动作以验证先前的演示在游戏代码或内容改变后仍然有效。
2.游戏机器人250自动搜索游戏、穿行故事线、寻找崩溃情况和/或死端。
·游戏开发平台125的实现具有三个好处:
1.游戏开发平台125可以持续验证游戏在变化后仍能工作。
2.游戏开发平台125可以持续验证游戏是可完成的。
3.游戏开发平台125可以无限地玩游戏,实现模拟人类交互的压力测试并提供比简单地让游戏在没有输入的情况下运行更真实的用例。
·游戏开发平台125大致替代了一个QA员工的工作。
·对于大约10个人的团队,这对应于在初始实现后节省了大约7%的预算。
·附加地,游戏开发平台125提供创造性效率的改进,导致更高质量的内容,这可以积极影响最终的游戏性能。
案例#4
背景
·游戏开发者已经实现了无限奔跑游戏。
需要
·当玩家基础很大时,很难了解玩家。
·只有约5%的玩家完成游戏。
·游戏设计者的目标是使大多数玩家完成游戏。
游戏开发平台125的使用
·BEA工具254的使用可以确定实时玩家体验并帮助提高游戏完成率和玩家留存率。
图3A呈现了根据本公开的实施例的游戏开发流水线325的流程/块图表示。该游戏开发流水线325结合图1和2的游戏开发平台125操作并使用其中描述的一种或多种功能和特征。具体地,呈现了游戏开发流水线,其中游戏开发从步骤300中的游戏的初始生成暂时进展到通过例如α测试、β测试和/或软启动,并且导致在步骤314中生成用于硬启动的改进游戏。
在步骤300中,生成游戏,例如游戏应用程序248的初始版本。在各种实施例中,游戏的初始版本由使用游戏开发应用程序246的游戏开发者从零开始或从由PCG工具252基于例如由游戏开发者开发的先前游戏或游戏的先前版本而生成的初始游戏内容来开发。
在步骤302中,使用非模仿游戏机器人250来测试游戏,例如通过测试和评估由游戏开发者开发的先前游戏或游戏的先前版本来开发和训练该游戏机器人。在各个实施例中,游戏机器人250包括非模仿游戏机器人库和指示例如每个游戏机器人的来源、先前使用、对应的玩家动机和/或其它特点的描述性元数据。游戏开发者可以选择和评估用于该测试的一个或多个现有游戏机器人。一旦选择了一个或多个游戏机器人250,就可以对游戏进行测试和改进,以例如识别死端,并开始平衡游戏,增加可玩性等。
在步骤304中,基于来自实际玩家的游戏遥测数据生成模仿游戏机器人250,该实际玩家例如是在硬启动之前测试中使用的内部或外部玩家。在各种实施例中,游戏遥测数据可包括从游戏轨迹收集的数据,该游戏轨迹可包括例如包括音频和像素数据的游戏输出、玩家输入、游戏状态、游戏事件、游戏成就、游戏目标进度、游戏参数、KPI和其它游戏分析。
在各种实施例中,游戏机器人250经由机器学习算法来操作,该机器学习算法经由来自实际玩家的游戏遥测数据来训练。此类机器学习算法的实例包括人工神经网络(或更简单地如本文所使用的“神经网络”)、支持向量机、贝叶斯网络、遗传算法和/或经由无监督、半监督、监督和/或强化学习训练并且还可以包括特征学习、稀疏字典学习、异常检测、决策树、关联规则和/或其它过程的其它机器学习技术。
在步骤306中,通过监控输出,例如包括例如由游戏机器人250的游戏玩法生成的KPI和其它游戏分析的游戏遥测数据的来进一步测试和改进游戏。以这种方式,可以测试、评估和改进游戏的各种版本,以例如识别死端、进一步平衡游戏、进一步增加可玩性、优化预测的玩家留存率等。
在步骤308中,从游戏数据、玩家问卷或包括各种玩家动机的其它体验度量收集BEA数据,该玩家动机可以是例如与KPI、游戏事件、玩家行为、游戏状态、游戏成就、游戏目标进度、游戏参数和其它游戏分析相关。玩家动机可以是广泛的动机因素,例如能力、自主性、关联性和存在感。附加地或替代地,玩家动机和行为可以是游戏相关的,包括竞争、完成、幻想、破坏、发现、策略、兴奋、力量,包括更具体的动机,例如实现高分、不断受到挑战、以一些其它频率受到挑战、达到游戏目标和成就、完成关卡、放松、击败其它玩家或破坏其它玩家的游戏、作弊、避免其它玩家作弊以及其它游戏风格等。
在步骤310中,BEA数据用于训练一个或多个BEA工具。如前所述,BEA工具254可以经由偏好学习或基于BEA数据训练的其它有序机器学习技术来构建,以便学习和预测实际的玩家动机。
在步骤312中,可以基于来自实际玩家和/或模仿或非模仿游戏机器人350的游戏遥测数据,经由BEA工具自动并实时地预测玩家体验。该玩家体验数据可以与步骤306中的游戏机器人测试结合使用以在步骤314中进一步改进游戏以进行硬启动,例如,通过改进预测的玩家对游戏的满意度、增加预测的玩家留存率和/或增加预测的收入生成。
虽然已经描述了游戏开发流水线325,其对应于将游戏的初始版本测试、分析和细化为用于硬启动的改进游戏,但是游戏开发流水线325中的一个或多个步骤也可以用于类似地处理游戏应用程序248的新版本、更新和/或新内容添加。此外,虽然游戏开发流水线325被描述为包括收集BEA数据的步骤308和基于BEA数据生成BEA工具254的步骤310,但是在游戏开发平台125被用于处理类似游戏,游戏应用程序248的新版本、更新和/或新内容添加的情况下,可以选择从游戏的先前版本或从类似游戏生成的一个或多个BEA工具254进行重用。例如,BEA工具254包括BEA工具库和指实例如每个BEA工具的来源、先前使用和/或其它特点的描述性元数据。游戏开发者可以选择和评估在步骤312中使用的一个或多个现有BEA工具254,以基于来自外部玩家的游戏遥测数据来预测包括动机和/或行为的玩家体验和其它体验。
附加地,考虑以下用于生成的和一般的玩家体验的计算模型(例如“一般体验人物角色”)的进一步实例。人物角色是生成的,因为其能够模拟作为人类体验演示提供的玩家体验。该过程在涉及人类体验的数字化和模拟的特定领域的各种示例中也是通用的。
为了获得一般体验人物角色,游戏开发平台125可以在计算模型的三个方面融合创新:模型的输入、计算和模型的输出。该方法可以构建在心理学的锚定方法上,根据该方法,人类以比较(相对)的方式对值进行编码。基于创新的有序建模方法,人物角色经由可概括的特征来感知人类(或其演示),并且其逐渐通过机器学习像人类一样体验环境。
游戏开发平台125普遍解决了心理测量学和人类心理学的基本问题:以可靠和有效的方式计算地测量体验。它还解决了人机交互和玩家体验研究的核心问题:如何在模拟世界中模拟与人类感觉相同的体验。最后,它解决了机器学习和情感计算交汇处的一个传统问题:我们如何从主观性较小的数据中学习最多。
图3B呈现了根据本公开的实施例的一般体验人物角色的组件的流程/块图350表示。具体地,提出了一种结合图1、2和3A描述的任何功能和特征的方法。该过程通过结合三个核心子过程的创新:输入(描述符映射)、计算本身(生成模型)和输出(演示),为玩家体验的生成建模(例如,包括动机和/或行为)提供了可靠和有效的解决方案。
步骤352-体验演示:所提出的用于处理角色输出的方法是通用的,因为它可以支持来自传统心理度量的任何注释类型。例如,在收集和处理体验标记的方式上,它可以不同于先前的方法。具体地,可以经由从交互中提取的参与度量以持续的方式收集人类的体验演示。这包括从被动观察视频(例如游戏视频)到主动注释任何交互(例如游戏)的整个过程。体验标记以有序和无界的方式处理,从而允许构建与价值不可知的一般的体验模型。通过遵循一阶和二阶组合技术,我们不仅可以产生有效和可靠的人类体验演示,还可以从有限的数据中生成大型数据集。不再需要任何类型的问卷--人类计算机交互中的主要实践状态(即使仍然可以处理问卷数据),并且人类的参与只限于实际的小规模玩家群体规模。
步骤354-体验生成模型:体验人物角色可以学***台涉及学习预测标记体验的全局或部分顺序的深度(偏好)学习的方法。对于后者,人类演示的顺序(如从上面)定义了强化学习方法(例如,神经进化、随机树搜索)将学习推断的效用。结果是生成的体验模型,其能够在模拟环境中像人类玩家一样“感受”。
步骤356-体验描述符映射:体验是通过交互进行的方式感知的,并受体验标记的限制。感知模型专注于对模型有意义的标记体验的区域,并且消除了没有观察到或报告关于体验的变化的区域。通过观察交互的一般方面,即一般体验描述符映射来学习体验的表示。映射的设计可以从高级行为表征变化到交互的顺序模式,再变化到映射到体验标记的详细潜在变量。后者是在可能的情况下通过模拟交互直接构建的,或者在无法访问生成交互的代码时通过机器学习的交互正向模型间接构建的。
除了单纯的游戏开发之外,游戏开发平台125的BEA工具254可以并入最终游戏本身中。以这种方式,可以根据各个玩家的动机和/或行为对其进行评估。在各种实施例中,可以从单个玩家的可能游戏版本/设置的库中选择特定游戏版本或游戏参数设置,以便补充或以其它方式匹配被预测为与单个玩家对应的特定动机和/或行为,以便例如改进特定玩家的体验。以这种方式,可以挑战喜欢挑战的玩家,喜欢完成的玩家可以被给予提供更容易完成的游戏等。
此外,游戏开发平台125的BEA工具254可用于基于玩家各自的动机和/或行为在多玩家游戏中将玩家配对在一起。例如,基于BEA工具的判断,喜欢玩剧透的有价值的玩家可以通过常规地将他或她与体验不足的玩家配对搭档来留住。在另一实例中,被BEA工具确定为作弊的玩家可以与其它此类玩家或作弊中立的玩家配对,从而避免其它玩家被作弊的对手打击积极性等。
虽然以上结合游戏的生成BEA数据进行了描述,但是上述技术也可以应用于其它行业。既能建模又能生成人类体验,可以用于任何涉及人类行为和体验的研究领域或工业部门。该过程的潜在应用范围很广,并且包括例如创意产业、营销、零售、网络服务、建筑和建成环境、信息物理***、汽车工业和数字艺术等领域。生成和一般体验人物角色不仅利用更快更有效地测试、开发和提供服务的能力。它们还实现了从构思到原型设计、生产和发布人类将与之交互的服务、项目或对象的所有方式的更好的(角色驱动的)决策。
图4呈现了根据本公开的实施例的方法的流程图表示。具体地,提出了一种结合图1至2、3A和3B描述的任何功能和特征的方法。在步骤400中,生成对应于游戏机器人的游戏机器人模型,例如先前描述的任何游戏机器人350。
步骤402包括从例如游戏应用程序348的游戏应用程序(app)接收游戏输出。步骤404包括经由游戏机器人模型向游戏应用程序生成游戏输入,其中游戏输入对应于一个或多个模拟玩家的游戏玩法。步骤406包括响应于模拟玩家的游戏玩法而生成游戏性能数据。该游戏性能数据可以用于更快地评估游戏内容;用千种玩法变化随机评估关卡的难度;并且可以包括关键绩效指标(KPI)或其它游戏分析。
图5呈现了根据本公开的实施例的游戏遥测数据的图形表示500和510。具体地,实际游戏输出形式的游戏遥测数据在时间t1呈现在图500中,并且在时间t2呈现在图510中。游戏遥测数据包括由例如游戏机器人250、另一AI角色或其它AI等游戏机器人模型生成的角色502。游戏遥测数据还包括由实际玩家生成的角色504,例如游戏机器人模型正试图模仿或模拟的主玩家。
游戏开发应用程序246生成角色502的位置和角色504的位置之间的差异。在游戏遥测数据500所示的实例中,时间t1处的差异d(t1)被测量为角色502和504的质心之间的欧氏距离(Euclidean distance)。在游戏遥测数据510所示的实例中,时间t2处的差异d(t2)被测量为角色502和504的质心之间的欧氏距离。考虑时间周期t0至tn,对应于例如主玩家完成关卡所花费的时长、主玩家游戏轨迹的样本的时长或一些其它时间间隔,可以通过对i=0、n的d(ti)的值进行积分或求和来生成差异数据。
以这种方式生成的差异数据可以用作拟合的度量来更新游戏机器人以更接近地模仿主玩家。例如,游戏机器人250可以使用强化学习来学习如何“跟踪”人类主玩家,同时还从环境中学习如何处理新的、未见的条件。从母版到阴影的距离测量用于了解它与复制人类行为的接近程度。应当注意,值d(ti)可以是线性距离测量值、对数距离测量值或由一些其它非线性函数转换的距离测量值。此外,尽管以上描述为欧式距离,但是同样可以采用包括非欧式距离的其它距离。
尽管以上根据累积距离测量进行了描述,但是除了距离之外或者作为距离的替代,差异数据可以包括一个或多个其它测量,例如在时间段t0至tn期间游戏机器人和人类玩家之间的累积游戏得分的差异、在时间段t0至tn期间游戏机器人和人类玩家之间的游戏成就的差异、在时间段t0至tn期间游戏机器人和人类玩家之间达到游戏目标的时间差异、游戏机器人和人类玩家之间的其它游戏度量或其它游戏分析的差异和/或其任何组合。
图6呈现了根据本公开的实施例的方法的流程图表示。具体地,提出了一种结合图1至2、3A、3B、4和5描述的用于任何功能和特征的方法。步骤602包括生成游戏机器人。步骤604包括从对应于实际玩家的游戏应用程序接收游戏遥测数据。步骤606包括从对应于游戏机器人的游戏应用程序生成游戏遥测数据。
步骤608包括基于依据对应于实际玩家的游戏遥测数据和对应于游戏机器人的游戏数据生成的差异数据来更新游戏机器人,该差异数据指示由实际玩家生成的第一角色和由游戏机器人生成的第二角色之间的随时间变化的距离。
图7呈现了根据本公开的实施例的方法的流程图表示。具体地,提出了一种结合图1至2、3A、3B、和4至6描述的用于任何功能和特征的方法。步骤702包括基于偏好学习来生成行为体验分析(BEA)工具。步骤704包括从游戏应用程序接收游戏遥测数据。步骤706包括通过将BEA工具应用于游戏遥测数据来生成预测的用户体验,例如动机和/或行为。步骤708包括基于预测的用户动机和/或行为来优化游戏和/或玩家体验。
图8呈现了根据本公开的实施例的方法的流程图表示。具体地,提出了一种结合图1至2、3A、3B、和4至7描述的用于任何功能和特征的方法。步骤800包括经由包括处理器的***基于先前游戏内容接收程序内容。步骤804包括经由***基于机器学习和来自游戏机器人的模拟游戏的游戏轨迹数据和/或行为动机数据迭代地改进程序内容。步骤806包括经由***基于改进的程序内容生成候选游戏内容。
图9呈现了根据本公开的实施例的方法的流程图表示。具体地,提出了一种结合图1至2、3A、3B、和4至8描述的用于任何功能和特征的方法。步骤902包括经由包括处理器的***接收对应于游戏的游戏应用程序。步骤904包括经由***基于至少一个非模仿游戏机器人的游戏玩法来更新游戏应用程序,以生成对应于第一更新游戏的第一更新游戏应用程序。步骤906包括基于响应于第一多个实际玩家对第一更新游戏的玩法而生成的第一游戏遥测数据经由***来生成至少一个模仿游戏机器人。步骤908包括经由***基于第一多个实际玩家对第一更新游戏的玩法来生成行为体验分析(BEA)数据。步骤910包括经由***基于BEA数据生成至少一个BEA工具。步骤912包括经由***基于由至少一个模仿游戏机器人玩第一更新的游戏,更新第一游戏应用程序,以生成对应于第二更新游戏的第二更新游戏应用程序。步骤914包括经由***基于响应于第二多个实际玩家对第二更新游戏的玩法而生成的第二遥测数据来生成预测的玩家体验。步骤916包括经由***基于预测的玩家体验更新第二游戏应用程序以生成对应于第三更新游戏的第三更新游戏应用程序。
图10A和10B呈现了根据本公开的实施例的图形。如先前所讨论的,PCG工具252可以通过学***台125的实例来生成新的益智游戏、关卡或其它内容,以播种人工智能模型并生成用于评估的新候选内容。具体地,PCG工具252可以采用机器学***台游戏关卡上进行训练,该模型可以学***台125的游戏开发者利用预先生成的益智游戏、关卡和/或其它内容来提高其生产力;专注于概念和重要细节,而不是平凡的布局;从生成的实例而不是空白画布开始创建,和/或基于游戏开发者提供给游戏开发平台125的种子实例以从先前游戏开发者那里学习的风格和偏好来生成内容。
在各种实施例中,对称马尔可夫随机场(SMRF)模型可用于结合游戏开发平台125的PCG工具252的人工智能来生成新的游戏内容。马尔可夫随机场(MRF)可用于通过在给定变量的邻居的情况下对随机变量X(其对应于图形中的顶点)取值的概率进行建模来对图形中的变量之间的关系进行建模。或P(X=x|邻居(X))。在这种情况下,MRF通常使用定义为与当前像素/格栅位置相邻的4或8个像素/格栅位置的局部邻域。
其它方法已经探索了MRF的非本地邻居和动态邻域。具体地,一些方法使用更长的范围依赖性,并且选择的特定邻居根据当前变量周围的补丁的内容和潜在的其它邻居而变化。一些方法已经使用了通过包括距当前位置越来越远的节点而定义的远程邻居。然而,这些邻域函数不会基于图形中的内容或空间位置而改变。一些方法基于当前变量和预定义区域中的其它变量之间的关系强度已经对每个变量使用自适应邻域。然而,当定义邻域而不是任意距离的邻居时,这些方法受限于预定义的局部区域。
本文引入的对称MRF通过在图形中除了局部邻居之外还包括对称位置来修改标准MRF邻域公式。SMRF基于图形中变量之间的空间关系而不是基于内容来定义不同的邻居。这导致包括非本地邻居并且能够捕获图形中的特定对称关系的MRF邻域。这使得本文描述的方法更适合于生成任务,其中每个变量的内容可能在最初没有被很好地定义。此外,虽然MRF已经用于图像和纹理处理任务,例如图像去噪、图像填充和信号重构,但是相反,本文讨论的方法提供了对游戏内容生成领域的改进,包括图像合成、游戏关卡生成和其它内容合成。结果通过更快速和更准确地模仿现有游戏的内容和特征的自动游戏内容生成改进了游戏开发技术。
标准马尔可夫随机场定义:
正式:给定无向图形G=<V,E>,如果满足马尔可夫性质,则对应于顶点V的一组随机变量X形成马尔可夫随机场:
1.成对马尔可夫性质:任意两个不相邻的变量是条件独立的
2.局部马尔可夫性质:变量有条件地独立于所有给定其邻居其它变量。
3.全局马尔可夫性质:任意两个变量子集在给定分离的变量集合的情况下是条件独立的。
非正式:马尔可夫随机场由邻域结构定义,该邻域结构定义了图形中哪些变量相互依赖。这实质上模拟了变量与其邻居之间的关系。
通常,MRF使用图形中空间局部节点的邻域。即例如:X是当前变量/顶点,1是因变量/顶点,并且0独立于X,如图10A的实例图形所示。
对称马尔可夫随机场扩展:
本文采用的SMRF模型可以采用局部MRF邻域,其使用图10A的实例图形中的空间局部节点的邻域以及潜在包括图10B中所示的图形中的远处对称位置的全局邻域。即例如:X是当前变量/顶点,1是因变量/顶点,0独立于X。这示出了具有水平、垂直和对角对称节点的网络结构。
SMRF和标准MRF之间的差异在于
1.SMRF在网络结构中使用非本地邻居;以及
2.在SMRF中,相邻顶点/变量相对于当前顶点的网络定位根据图形中当前顶点的位置而改变,即局部邻居保持相同,但对称邻居可能离当前顶点很远或很近,这取决于其离图形中心的距离。
图10C呈现了根据本公开的实施例的方法的流程图表示。提出了一种结合图1至2、3A、3B和4至9描述的用于任何功能和特征的方法。具体地,提出了一种使用对称马尔可夫随机场模型结合PCG工具252或游戏开发平台125的其它用途来生成新游戏内容的方法。
步骤1002包括经由图像分析生成现有游戏内容的图形。步骤1004包括基于图形生成对称马尔可夫随机场(SMRF)模型。步骤1006包括经由迭代人工智能基于SMRF模型自动生成新游戏内容。
在各种实施例中,现有游戏内容的每个图形表示多个游戏元素在现有游戏内容中的位置。SMRF模型可以包括条件概率分布,其指示可能在图形中彼此位于预定距离内的多个游戏元素的子集。
步骤1006可以包括:基于多个游戏元素的出现频率选择候选图形;基于SMRF模型生成改进的候选图形;以及基于改进的候选图生成新的游戏内容。改进的图形可以基于梅特罗波利斯-黑斯廷斯(Metropolis-Hastings)采样或其它基于AI的技术生成。
步骤1006可以包括:基于改进的候选图形生成候选新游戏内容;经由利用游戏机器人(例如一个或多个游戏机器人250)的游戏玩法测试候选新内容;以及基于利用游戏机器人的游戏玩法,将候选新游戏内容接受为新游戏内容。以此方式,当一个或多个游戏机器人确定新游戏内容是可玩的(例如,没有死端、无限循环、有可能完成)并且此外具有大于用户体验阈值的预测的用户体验时,它可以被接受为可行的新内容。人工智能而不是人类智能的使用允许游戏机器人250以实际上无法在人脑中执行的速度和一致性来执行,并进一步改进游戏开发的技术。
可以结合以下实例进一步描述包括若干任选功能和特征的各种实施例。
考虑为2D游戏建模和生成视频游戏关卡的情况。为此,该方法获取关卡的图像,并将其转换为图形,例如图块栅格阵列中不同游戏元素的基于图块的栅格表示。在所示的实例中,通过例如计算机视觉模型、模式识别技术或其它人工智能模型的图像分析来分析图像,该人工智能模型将唯一符号分配给存在于图像的每个方形栅格中的每种类型的游戏元素。例如,在图11A中呈现的游戏超级马里奥兄弟的关卡的一部分用于基于结合图11B呈现的13×13图形表示(其也可称为阵列或图块栅格)的训练。在以下所示的实例中,以下符号用于表示所指示类型的游戏元素:
B=砖块
M=蘑菇加电
G=敌人
?=隐藏类型的元素
#=接地
p P[](在图块的2x2区域上的总合)=管道
注意,添加标记图块“s”以表示格栅中关卡的边界。虽然在图形的左边缘和下边缘使用标记边界,但是标记图块同样也可以位于上边界和右边界上。此外,对应于游戏的“空”元素(例如云、天空、叶子等)的图块可被分配共同的符号“-”,指示它们不是活动的游戏元素。在以上的实例中,某些游戏元素由可以表示多个游戏元素类型/子类型的通用符号表示。例如,“G”表示多种敌人类型中的任何一种,“M”表示多种加电类型中的任何一种,″?″表示可以隐藏的多个元素中的任何元素,包括不同价值的硬币、不同类型的加电等。在其它实例中,可以使用单独的符号来唯一地表示每种特定类型的游戏元素。以这种方式,“M6”可以表示第六种加电。“?C3”可以表示隐藏的第三硬币值,G9可以表示第九种敌人等。在任一情况下,可以对现有游戏的多个游戏图像重复该过程,以便构建表示现有游戏的图块格栅/图形的训练数据集。
在各种实施例中,机器学习用于对现有游戏中的不同图块类型和/或子类型(一般地或具体地)与其对应(例如相对)位置之间的关系进行建模。具体地,在训练数据集的图块栅格上训练SMRF模型,学习不同图块类型/子类型和位置与相邻栅格位置之间的关系,该相邻栅格位置可以是局部的并且还可以包括对称的并且可能是非局部的邻居。例如,SMRF模型指示多个游戏元素的子集,这些子集可能位于图形中彼此之间的预定距离内,并且产生条件概率分布,该条件概率分布描述在特定配置中哪些图块类型通常位于彼此位于或相对于彼此,正如现有游戏中的图块格栅的训练数据集所呈现的那样。
考虑结合图11C和11D所呈现的局部MRF模型的进一步实例。在图11C中呈现的游戏超级马里奥兄弟(Super Mario Brothers)的关卡的一部分用于基于结合图11D呈现的10x12图形表示的训练。在所示的实例中,以下符号用于表示所指示类型的游戏元素:
E=空
Q=功率块
X=接地
S=边界
考虑由以下相对格栅位置定义的邻域:
0 | 1 | 0 |
1 | 2 | 1 |
0 | 1 | 0 |
其中2表示当前格栅位置,格栅位置1包括在邻域中并且格栅位置0不包括在邻域中。四个1位置处的图块的可能组合为每个可能的当前图块位置2产生配置。对于所有可能的当前位置2,这些配置的出现可以累积在图11D的图形中。结果呈现在图11E的表中。模型中邻域配置中的每一个的条件概率呈现在图11F的表中。虽然以上实例中使用的邻域是基于局部MRF模型的,但SMRF模型同样可以用于生成如先前讨论的对应配置的条件概率。
然后,该方法可以采用迭代搜索算法,例如梅特罗波利斯-黑斯廷斯采样或其它迭代人工智能技术,以生成一个或多个新关卡。例如,该方法首先根据其在训练数据中的总体频率(例如,70%的空图块类型、15%的接地类型、10%的敌人、5%的加电等)随机填充具有不同图块类型/子类型的图块格栅)。然后,该方法随机选择图形中的两个位置,基于SRMF模型的条件概率,计算这些位置的图块配置的似然性,以及如果要交换位置则计算图块的似然性。如果交换的似然性较高,则该方法使它们保持交换。该方法这样迭代多次(例如,数千次、数万次或更多次),直到水平的整体似然性高于阈值或在预定范围内。
实际上,PCGML操作以从现有游戏的一组实例中固有地学习不变模式。捕获的模式类型和规模在很大程度上由底层机器学习方法、训练数据及其表示来确定。术语“模式”在不同的领域中具有不同的含义,但该术语通常描述给定对象内的规律性。在频繁模式挖掘的上下文中,这意指出现多次的项目、子序列或子结构的集合。在游戏中,模式最突出的用途是在游戏设计模式中可以采用多种形状,包括与整体游戏设计相关的相当抽象的模式,还有更细粒度和可见的空间模式,其定义了可以由PCGML学习的图块之间的特定关系。
考虑以下关于糖果粉碎传奇(Candy Crush Saga,CCS)的附加实例,这是King在2012年发布的一款免费三消益智游戏,此后作为顶级移动休闲游戏之一并获得了巨大成功。在CCS中,三个或更多个糖果(图块)可以与相同颜色的相邻糖果水平或垂直匹配。匹配时,糖果从棋盘上消失。如果没有阻碍的项目,这导致现有的糖果掉落并填充所产生的间隙,并生成随机颜色的新糖果(通常在棋盘顶部)。游戏引入了各种限制、障碍和目标,该限制、障碍和目标一起定义了每个关卡,从而创建了不同难度的益智游戏。在CCS的上下文中,可以使用以下术语:
·全局模式:只能通过观察游戏棋盘上所有元素的空间结构来识别的模式。
·局部模式:可以在游戏棋盘的小区域中识别的模式。
CCS关卡通常表现出普遍被认为在美学上令人愉悦或吸人眼球的全局模式。实例包括将项目以可识别的形状或以对称的布置(参见例如图12B的蓝色方形区域)放置在棋盘上。还有重复较小的局部模式的关卡。常见实例是具有附加有益效果的糖果被阻碍项目包围,使得它们更难使用(参见例如图12A的红色和绿色方形区域)。关卡可以显示局部和全局模式。CCS的全局方面不同于PCGML的其它应用程序,例如超级马里奥兄弟,其中可以使用局部图块邻域来界定许多主要游戏元素(间隙、管道、敌人群体等)。为此,在CCS上采用PCGML来固有地学习不同类型的模式,包括例如局部和全局模式。考虑在以下部分中详细描述的以下三种方法。
1.丰富数据
鼓励生成特定类型模式的一种方法是丰富用于训练的数据。这样做的明确方法是通过用所显示的全局模式的类型来标记每个实例。条件生成对抗网络(GAN)是非常适合处理这种数据的AI技术的实例。也可以分别在每一类上训练模型。两种选择都旨在增强数据中存在的全局模式周围的信号。此外,可以采用数据驱动的方法来丰富数据,并使用无监督学习来自动识别类标记。如果有限的标记数据是可用的,则具有对学习的偏差进行编码的分类器的相应方法也是可能的。
2.扩充算法
改进模型的另一策略是扩充算法以确保其专注于一个或多个期望的模式。如果领域知识是可用的,则这可以通过修改模型的结构以检测期望的模式来明确地完成。例如,为了生成具有对称性的MRF模型,可以添加应当在给定位置处镜像的位置作为算法的输入。
另一种方法是将描述期望特征(例如对称分数)的度量馈送到算法,使得便于基于期望特征来识别个体的适合度。例如,这可以通过向GAN的鉴别器给出附加输入来完成。虽然这些方法可以生成展示期望特征的内容,但是它们可能依赖于领域知识和数字表征特征的能力。
另一种方法不是依赖领域知识,而是确保输入至少允许算法在期望的全局模式的规模上建立项目之间的连接。这种数据驱动方法的一个实例是在GAN中添加全连接层作为鉴别器的第一层。另一种方法是将每个输入的位置(例如,作为坐标)添加到神经网络的输入中。在这两个极端之间存在具有习得偏差的方法。此类偏差可以通过标记样本或对手训练来学习,并且然后作为附加输入给到模型。
3.过滤解决方案
第三种方法是过滤解决方案,如果明确完成,这是最简单的,但可以想到学习期望的模式和方式来识别它们。过滤可以在训练过程中的不同时间执行。在训练之前将意指创建仅对具有期望全局模式的解决方案进行编码的表示。例如,在对称的情况下,仅生成一半的关卡并自动镜像以构建最终关卡。在训练期间或之后也可以修复解决方案以遵守模式(例如,通过镜像)。训练后过滤的进一步选择是将搜索算法应用于生成内容的空间,例如GAN的潜在向量演变。
继续CSS的PCGML的例子,注意CCS含有大约80个具有不同特点的游戏元素。一些关卡依赖于独特的机制或游戏元素,这使得它们难以复制。为此,可以选择公布的CCS关卡的子集进行更加同质的训练。具体地,从特定的游戏模式(果冻)中选择关卡,并丢弃含有复杂动态元素的关卡(例如青蛙和传送带)产生用于训练的504个关卡。减少的关卡集中仍然存在51个独特的项目。一些项目可以堆叠在棋盘中的同一单元格上,并且该训练数据集中存在789个独特的项目堆叠。
为降低表示的复杂性,生成了以下CCS关卡的抽象表示:
·形状:指示哪个游戏棋盘单元格是非空的。
·规则:可以与相同颜色的其它糖果匹配的六种类型的普通糖果。
·特殊:具有附加效果的可匹配项目
·块:通过占据单元格来阻碍匹配的项目
·果冻:在果冻游戏模式中,指示需要发生匹配才能赢得关卡的单元格的项目。
·锁定:通过限制同一单元格中项目的移动来阻碍匹配的项目
对于上文提到的六个类别,每个关卡表示为具有尺寸9×9×6的矩阵,其具有二进制编码以表示给定单元格中项目类别的出现。
为了能够确保生成的CCS关卡的有效性,可以引入以下后处理方法。前四层不能在同一单元格中共存。通过选择具有最高值的层来确定每个单元格的选择。然而如果没有值高于阈值(例如0.5),则该单元格被指示为空。此外,仅允许将锁放置在非空或空的单元格上,并且将果冻仅放置在非空的单元格上。
为了保持关卡表示的复杂度低,可以将以下后处理步骤添加到所有关卡,包括原始关卡:(1)糖果通过糖果炮产出。糖果炮不包括在该表示中,所以其被自动地放置在非空单元格上方,以确保掉落新糖果。(2)从游戏中移除附加的、复杂的动态元素(例如传送门、特殊糖果炮),以避免引入不必要的复杂性。(3)不包括进一步的游戏元数据,例如表示中的可用移动的数量。
评估了两种不同的MRF技术,一种称为LocalMRF-符合图12C的样本邻域的MRF的例程和一种称为GlobalMRF-包括符合图12D的样本邻域的局部和非局部对称邻居的SMRF的例程。为了将这些模型与CCS一起使用,将六层表示压缩成单层表示,其中位置处的值是每一层中值的串联。这样,六层的值的每个可能的组合被视为不同的图块类型。
考虑到模型的严格局部邻域,LocalMRF生成的关卡导致水平和垂直对称性的分数非常低,并且因此与传统CSS关卡的更大的不同。扩展具有对称邻居的邻域(GlobalMRF)显着地增加了沿水平和垂直轴的对称分数,并且导致与传统CSS关卡的更大类似性。
还评估了两种不同的GAN技术。第一GAN模型鉴别器采用产生9×9个补丁的滤波器--在CCS的情况下是整个关卡。第一变体在整个关卡集(GlobalGAN)上进行训练,第二变体仅在垂直对称关卡上进行训练(GlobalGAN-vert)。应当注意,在其它变体中,可以采用两个卷积流,一个具有9×9滤波器用于全局模式,一个具有3×3滤波器用于局部模式。结果表明,GlobalGAN在棋盘上产生平均得分,然而通过使用(GlobalGAN-vert)仅在垂直对称关卡上训练,实现了垂直对称性的明确改善。然而,分数的提升并不大,这可能是因为大多数原始关卡已经是垂直对称的。
如先前所讨论的,游戏机器人可以通过确定新游戏内容是可玩的并且具有大于用户体验阈值的预测的用户体验来进一步验证以此方式生成的候选关卡。人工智能而不是人类智能的使用,以执行该过程的各种元素允许PCG工具252以实际上无法在人脑中执行的速度、精度和一致性来执行。虽然上文已根据基于条件图块类型概率的单个过程描述了若干实例,但以上过程可以以分层方式重复以首先考虑图块类型并且然后基于选定图块类型的子类型执行扩展取样。此外,AI机器人可用于评估所选图块类型的特定子类型,以便增强或最大化观众/用户体验的预测度量。
应注意,可在本文中使用的术语(例如,比特流、流、信号序列等(或其等效物))已可互换地用于描述其内容对应于若干期望类型中的任一种的数字信息(例如,数据、视频、语音、文本、图形、音频等,其中任何一个通常可以称为“数据”)。
如本文所用,术语“基本上”和“大约”为其对应的术语和/或项目之间的相对性提供了行业接受的公差。对于一些行业,行业可接受的公差小于1%,而对于其它行业,行业可接受的公差为10%或更多。行业可接受的公差范围的其它实例的范围从小于1%到50%。行业接受的公差对应于但不限于组件值、集成电路工艺变化、温度变化、上升和下降时间、热噪声、尺寸、信号错误、丢弃的数据包、温度、压力、材料成分和/或性能度量。在行业内可接受公差的公差差异可能大于或小于百分比水平(例如,尺寸公差小于+/-1%)。项目之间的一些相关性的范围可以从小于百分比水平的差异到百分之几。项目之间的其它相关性的范围可以从百分之几的差异到巨大差异。
如本文也可使用的,术语“被配置成”、“可操作地耦合到”、“耦合到”和/或“耦合”包括项目之间的直接耦合和/或经由中间项目(例如,项目包括但不限于组件、元件、电路和/或模块)的项目之间的间接耦合,其中对于间接耦合的实例,中间项目不修改信号的信息,而是可以调整其电流电平、电压电平和/或功率电平。如本文可进一步使用的,推断耦合(即,其中一个元件通过推断耦合到另一元件)包括以与“耦合到”相同的方式在两个项目之间的直接和间接耦合。
如本文甚至可进一步使用的,术语“被配置成”、“可操作成”、“耦合到”或“可操作地耦合到”指示项目包括电源连接、输入、输出中的一个或多个等,以在被激活时执行一个或多个其对应的功能,并且可以进一步包括与一个或多个其它项目的推断耦合。如本文还可以进一步使用的,术语“关联”包括单独项目和/或嵌入另一项目内的一个项目的直接和/或间接耦合。
如本文所使用的,术语“有利地比较”表示两个或更多个项目、信号等之间的比较提供了期望的关系。例如,当期望的关系是信号1的幅度大于信号2时,当信号1的幅度大于信号2的幅度或者当信号2的幅度小于信号1的幅度时,可以实现有利的比较。如本文所使用的,术语“不利地比较”表示两个或更多个项目、信号等之间的比较不能提供期望的关系。
如可以在本文使用的,一个或多个权利要求可以包括在该通用形式的特定形式中的短语“a、b和c中的至少一个”或该通用形式的短语“a、b或c中的至少一个”,具有比“a”、“b”和“c”更多或更少的元素。在任一短语中,短语的解释都是相同的。具体地,“a、b和c中的至少一个”等同于“a、b或c中的至少一个”,并且应意指a、b和/或c。作为实例,它意指:仅“a”、仅“b”、仅“c”、“a”和“b”、“a”和“c”、“b”和“c”和/或“a”、“b”和“c”。
如本文也可以使用的,术语“处理模块”、“处理电路”、“处理器”、“处理电路”和/或“处理单元”可以是单个处理装置或多个处理装置。此类处理装置可以是微处理器、微控制器、数字信号处理器、微型计算机、中央处理单元、现场可编程门阵列、可编程逻辑设备、状态机、逻辑电路、模拟电路、数字电路和/或基于电路和/或操作指令的硬编码来操纵信号(模拟和/或数字)的任何装置。处理模块、模块、处理电路、处理电路***和/或处理单元可以是或进一步包括存储器和/或集成存储器元件,其可以是单个存储器装置、多个存储器装置和/或另一处理模块、模块、处理电路、处理电路***和/或处理单元的嵌入式电路。此类存储器装置可以是只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、闪存、高速缓冲存储器和/或存储数字信息的任何装置。注意,如果处理模块、模块、处理电路、处理电路***和/或处理单元包括多于一个处理装置,则处理装置可以位于中央(例如,通过有线和/或无线总线结构直接耦合在一起)或者可以分布地位于中央(例如,通过局域网和/或广域网间接耦合的云计算)。进一步注意,如果处理模块、模块、处理电路、处理电路***和/或处理单元经由状态机、模拟电路***、数字电路***和/或逻辑电路***来实现其一个或多个功能,则存储对应操作指令的存储器和/或存储器元件可以被嵌入在包含状态机、模拟电路***、数字电路***和/或逻辑电路***的电路***内部或外部。还应注意,存储器元件可存储并且处理模块、模块、处理电路、处理电路***和/或处理单元执行对应于一个或多个图中所绘示的步骤和/或功能中的至少一些的硬编码和/或操作指令。此类存储器装置或存储器元件可以包括在制品中。
借助于说明特定功能的性能及其关系的方法步骤,上面已经描述了一个或多个实施例。为了便于描述,本文任意定义了这些功能构建块和方法步骤的边界和顺序。只要适当地执行指定的功能和关系,就可以定义替代的边界和序列。因此,任何此类替代边界或顺序都在权利要求的范围和精神内。此外,为了便于描述,已经任意定义了这些功能构建块的边界。只要适当地执行某些重要功能,就可以定义替代边界。类似地,流程块图也可以在本文中任意定义以说明某些重要功能。
在所使用的范围内,流程块图边界和顺序可以以其它方式定义,并且仍然执行某些重要的功能。因此,功能构建块和流程图块和序列的此类替代定义在权利要求的范围和精神内。本领域普通技术人员还将认识到,本文中的功能构建块和其它说明性块、模块和组件可以如所绘示的那样或由分立组件、专用集成电路、执行适当软件的处理器等或其任何组合来实现。
附加地,流程图可以包括“开始”和/或“继续”指示。“开始”和“继续”指示反映所呈现的步骤可以任选地并入一个或多个其它例程中或以其它方式与一个或多个其它例程结合使用。附加地,流程图可以包括“结束”和/或“继续”指示。“结束”和/或“继续”指示反映所呈现的步骤可以如所描述和示出的那样结束,或者任选地结合在一个或多个其它例程中,或者以其它方式与一个或多个其它例程结合使用。在该上下文中,“开始”指示所呈现的第一步骤的开始,并且可以在未具体显示的其它活动之前进行。进一步,“继续”指示反映了所呈现的步骤可以被执行多次和/或可以由未具体示出的其它活动接续。此外,虽然流程图指示步骤的特定顺序,但是只要保持因果原则,其它顺序同样是可能的。
本文使用一个或多个实施例以说明一个或多个方面、一个或多个特征、一个或多个概念和/或一个或多个实例。设备、制品、机器和/或过程的物理实施例可以包括参考本文讨论的一个或多个实施例描述的一个或多个方面、特征、概念、实例等。此外,从图到图,实施例可以并入相同或类似命名的功能、步骤、模块等,其可以使用相同或不同的附图标记,并且功能、步骤、模块等可以是相同或类似的功能、步骤、模块等或不同的功能、步骤、模块等。
除非特别说明,在本文呈现的任何图的图中的到达、来自和/或在元件之间的信号可以是模拟或数字的、持续时间或离散时间的,以及单端或差分的。例如,如果信号路径显示为单端路径,它也表示差分信号路径。类似地,如果信号路径显示为差分路径,它也表示单端信号路径。虽然本文描述了一个或多个特定体系结构,但是如本领域普通技术人员所认识到的,同样可以实现使用未明确示出的一个或多个数据总线、元件之间的直接连接和/或其它元件之间的间接耦合的其它体系结构。
在一个或多个实施例的描述中使用术语“模块”。模块经由例如处理器或其它处理装置或其它硬件的装置来实现一个或多个功能,该其它硬件可以包括存储操作指令的存储器或与其相关联地操作。模块可以独立地和/或结合软件和/或固件来操作。如本文所用,模块可以含有一个或多个子模块,每个子模块可以是一个或多个模块。
如本文进一步使用的,计算机可读存储器包括一个或多个存储器元件。存储器元件可以是单独的存储器装置、多个存储器装置或存储器装置内的一组存储器位置。此类存储器装置可以是只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、闪存、高速缓冲存储器、量子寄存器或其它量子存储器和/或以非暂时性方式存储数据的任何其它装置。此外,存储器装置可以是固态存储器、硬盘驱动器存储器或其它磁盘存储器、云存储器、拇指驱动器、服务器存储器、计算装置存储器和/或用于存储数据的其它非暂时性介质的形式。数据的存储包括临时存储(即,当从存储器元件移除电源时数据丢失)和/或持久存储(即,当从存储器元件移除电源时数据保留)。如本文所使用的,暂时介质应意指以下中的一个或多个:(a)用于将数据作为信号从一个计算装置传输到另一计算装置用于临时存储或持久存储的有线或无线介质;(b)用于在计算装置内将数据作为信号从计算装置的一个元件传输到计算装置的另一元件用于临时存储或持久存储的有线或无线介质;(c)用于将数据作为信号从一个计算装置传输到另一计算装置用于由另一计算装置处理数据的有线或无线介质;以及(d)用于将数据作为计算装置内的信号从计算装置的一个元件传输到计算装置的另一元件用于由计算装置的另一元件处理数据的有线或无线介质。如本文中所使用的,非暂时性计算机可读存储器基本上等同于计算机可读存储器。非暂时性计算机可读存储器也可以称为非暂时性计算机可读存储介质。
虽然本文已经明确描述了一个或多个实施例的各种功能和特征的特定组合,但是这些特征和功能的其它组合同样是可能的。本公开不限于本文公开的特定实例,并且明确地并入这些其它组合。
Claims (20)
1.一种游戏开发平台,其包含:
机器,其包括:
处理电路;和
非暂时性计算机可读存储介质,其被配置成存储游戏应用程序和进一步的操作指令,所述进一步的操作指令在由所述处理电路执行时使所述处理电路执行包括以下的操作:
经由图像分析生成现有游戏内容的图形;
基于所述图形生成对称马尔可夫随机场(SMRF)模型;以及
经由迭代人工智能(AI)基于所述SMRF模型自动生成新游戏内容。
2.根据权利要求1所述的游戏开发平台,其中所述现有游戏内容的所述图形中的每一个表示多个游戏元素在所述现有游戏内容中的位置。
3.根据权利要求2所述的游戏开发平台,其中所述SMRF模型包括条件概率分布,所述条件概率分布指示可能在所述图形中彼此位于预定距离内的所述多个游戏元素的子集。
4.根据权利要求2所述的游戏开发平台,其中所述SMRF模型是基于所述图形经由机器学习训练的。
5.根据权利要求2所述的游戏开发平台,其中迭代AI通过以下进行操作:
基于所述多个游戏元素的出现频率选择候选图形;
基于所述SMRF模型生成改进的候选图形;以及
基于所述改进的候选图形生成所述新游戏内容。
6.根据权利要求5所述的游戏开发平台,其中所述改进的候选图形是基于梅特罗波利斯-黑斯廷斯采样生成的。
7.根据权利要求5所述的游戏开发平台,其中基于所述改进的候选图形生成所述新游戏内容包括:
基于所述改进的候选图形生成候选新游戏内容;
经由利用游戏机器人的游戏玩法测试所述候选新内容;以及
基于利用所述游戏机器人的所述游戏玩法,将所述候选新游戏内容接受为所述新游戏内容。
8.根据权利要求7所述的游戏开发平台,其中所述游戏玩法是通过所述游戏机器人执行的所述新游戏内容的AI模拟游戏玩法。
9.根据权利要求7所述的游戏开发平台,其中当与所述游戏玩法相关联的预测的用户体验超过阈值时,所述候选新游戏内容被接受为所述新游戏内容。
10.根据权利要求7所述的游戏开发平台,其中当所述游戏玩法指示所述新游戏内容是可玩的时,所述候选新游戏内容被接受为所述新游戏内容。
11.一种用于实现程序内容生成工具的方法,其包含:
经由图像分析生成现有游戏内容的图形;
基于所述图形生成对称马尔可夫随机场(SMRF)模型;以及
经由迭代人工智能(AI)基于所述SMRF模型自动生成新游戏内容。
12.根据权利要求11所述的方法,其中所述现有游戏内容的所述图形中的每一个表示多个游戏元素在所述现有游戏内容中的位置。
13.根据权利要求12所述的方法,其中所述SMRF模型包括条件概率分布,所述条件概率分布指示可能在所述图形中彼此位于预定距离内的所述多个游戏元素的子集。
14.根据权利要求12所述的方法,其中所述SMRF模型是基于所述图形经由机器学习训练的。
15.根据权利要求12所述的方法,其中迭代AI通过以下进行操作:
基于所述多个游戏元素的出现频率选择候选图形;
基于所述SMRF模型生成改进的候选图形;以及
基于所述改进的候选图形生成所述新游戏内容。
16.根据权利要求15所述的方法,其中所述改进的候选图形是基于梅特罗波利斯-黑斯廷斯采样生成的。
17.根据权利要求15所述的方法,其中基于所述改进的候选图形生成所述新游戏内容包括:
基于所述改进的候选图形生成候选新游戏内容;
经由利用游戏机器人的游戏玩法测试所述候选新内容;以及
基于利用所述游戏机器人的所述游戏玩法,将所述候选新游戏内容接受为所述新游戏内容。
18.根据权利要求17所述的方法,其中所述游戏玩法是通过所述游戏机器人执行的所述新游戏内容的AI模拟游戏玩法。
19.根据权利要求17所述的方法,其中当与所述游戏玩法相关联的预测的用户体验超过阈值时,所述候选新游戏内容被接受为所述新游戏内容。
20.根据权利要求17所述的方法,其中当所述游戏玩法指示所述新游戏内容是可玩的时,所述候选新游戏内容被接受为所述新游戏内容。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062969928P | 2020-02-04 | 2020-02-04 | |
US62/969,928 | 2020-02-04 | ||
US17/159,907 | 2021-01-27 | ||
US17/159,907 US11596867B2 (en) | 2019-03-19 | 2021-01-27 | AI-based content generation for gaming applications |
PCT/US2021/015496 WO2021158423A1 (en) | 2020-02-04 | 2021-01-28 | Ai-based content generation for gaming applications |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115175750A true CN115175750A (zh) | 2022-10-11 |
Family
ID=77200439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180012333.4A Pending CN115175750A (zh) | 2020-02-04 | 2021-01-28 | 基于ai的游戏应用程序内容生成 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4100139A1 (zh) |
CN (1) | CN115175750A (zh) |
WO (1) | WO2021158423A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114832376B (zh) * | 2022-04-29 | 2023-01-10 | 完美世界(北京)软件科技发展有限公司 | 游戏地图中数据交互的方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7580972B2 (en) * | 2001-12-12 | 2009-08-25 | Valve Corporation | Method and system for controlling bandwidth on client and server |
KR101380565B1 (ko) * | 2009-12-21 | 2014-04-02 | 한국전자통신연구원 | 실시간 게임 사용자 특성 분석 장치 및 그 제어 방법 |
JP6103683B2 (ja) * | 2012-06-06 | 2017-03-29 | 国立大学法人北見工業大学 | ロールプレイングゲームの攻略法算出装置、算出方法、算出プログラム及びこのプログラムを記録した記録媒体 |
-
2021
- 2021-01-28 CN CN202180012333.4A patent/CN115175750A/zh active Pending
- 2021-01-28 WO PCT/US2021/015496 patent/WO2021158423A1/en unknown
- 2021-01-28 EP EP21750106.3A patent/EP4100139A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2021158423A1 (en) | 2021-08-12 |
EP4100139A1 (en) | 2022-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Risi et al. | Increasing generality in machine learning through procedural content generation | |
Perez-Liebana et al. | General video game ai: A multitrack framework for evaluating agents, games, and content generation algorithms | |
CN108499108B (zh) | 视频游戏应用程序内玩游戏参数的实时动态修改和优化 | |
Risi et al. | From chess and atari to starcraft and beyond: How game ai is driving the world of ai | |
Smed et al. | Algorithms and networking for computer games | |
Ortega et al. | Imitating human playing styles in super mario bros | |
JP2024026285A (ja) | クラウドゲーミングネットワークを使用した人工知能(ai)モデルの訓練 | |
US10918948B2 (en) | Game bot generation for gaming applications | |
US11325048B2 (en) | User experience modeling for gaming applications | |
US20210366183A1 (en) | Glitch detection system | |
US11596867B2 (en) | AI-based content generation for gaming applications | |
CN115175750A (zh) | 基于ai的游戏应用程序内容生成 | |
Zook et al. | Temporal game challenge tailoring | |
Mahlmann | Modeling and Generating Strategy Games Mechanics | |
US11413541B2 (en) | Generation of context-aware, personalized challenges in computer games | |
Ferguson | Machine learning arena | |
Alves | Modeling of synthetic players as an instrument for testing generative content | |
Gorgan | Performance Analysis in Implementation of a Dodgeball Agent for Video Games | |
Sriram | Automated playtesting of platformer games using reinforcement learning | |
Togelius et al. | Evolutionary Machine Learning and Games | |
Maung | Tile-based Method for Procedural Content Generation | |
Horn | A Skill-based Framework to Analyze the Generation and Presentation of Instructional Videogame Content | |
Correia | Modeling and Generation of Playable Scenarios Based on Societies of Agents | |
Zook | Automated iterative game design | |
dos Santos Lima | Adaptivity in Single Player Video Games |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |