人工智能在最近几年吸引了全世界的眼球,从一开始的AlphaGo,到马斯克的OpenAI大战DOTA2中的各大职业好手,人工智能也广泛应用于用户推荐,工业生产中的基于大数据预测等,那么如果应用到游戏产业中能有什么潜在的应用呢?
心流理论
游戏界中有一个很重要的理论,叫做心流理论,如下图所示:
图1:心流理论
游戏策划者当然希望所有玩家都能进入心流状态,但是如果人工调整数值需要大量的实验,调研等等。那么在大数据时代下,能否利用大数据技术来调整数值呢?
本次的主题就是围绕大数据调整游戏中的数值以优化心流体验。这里主要介绍神经网络构建心流体验模型,根据神经网络模型对相应的数值进行调整,从而使玩家能一直处于心流体验的过程中,达到优化游戏体验,提升游戏乐趣的目的。
神经网络
首先介绍神经网络,以二元一次方程为例子:y=1/(1+e^(-ax-b) ),为了简单化描述,这里假设x是玩家的力量属性,y为玩家通过某个副本的成功率,这里假设通过副本的成功率仅与玩家的力量属性相关,a,b则是该数值模型的两个参数。为什么用这么复杂的函数呢,因为 y=1/[1+e^(-x)] 这个函数(Sigmoid函数)长这样:
图2:Sigmoid 函数
注意图中的Y的分布,Y总是处于(0,1)这个区间的,这样就可以用于表示玩家通关的概率。
那么怎么把这个东西应用到游戏中呢,回到刚才的公式y=1/(1+e^(-ax-b) ),我想要预测这个玩家的通过概率,首先我要知道这个玩家的X,也就是力量值是多少,其次我还要知道上面公式的a和b分别是多少。对于玩家的X(力量数值)可以通过抓取玩家数据得到,但是对于a和b其实我并不清楚,这样就无法算出Y,也就是玩家的通关概率。
神经网络优化游戏体验
在此时神经网络就可以派上用场了,神经网络可以基于历史数据推演出a和b,最终得到能预测玩家副本通过率的模型。这里历史数据我指的是, X,即玩家的力量属性,以及Y,本副本通过与否。
那为什么要用神经网络呢,因为在现实中影响通关的因素有非常多种,因此就会有非常多不同的的X以及a,b,而神经网络则在数据足够充分的情况把全部的a和b都准确地推算出来。具体的模型可能就如下图所示:
图3:游戏预测神经网络概念图
这样,我们可以抓取所有对该副本通关有影响的因素以及玩家的通过与否来构建上图所示的神经网络。网络构建完成之后,就可以通过上面的这些参数预测副本的通关概率了。
那么问题来了,这个模型有什么用,在这里仅提供两个思路。
1,根据玩家属性动态调整在游戏中的怪物的数值
若发现玩家的各项属性值较强,原本的通关概率高达90以上,则相应地自动提升怪物的属性值,并降低玩家的预计通过概率到60%的一个水平,以此提升游戏的挑战性,达到心流的效果。这么做可能对单机游戏有比较好的效果,但是对于网游的话还是涉及到一个公平性的问题,应该谨慎。
2,根据模型做副本建议功能/竞技类游戏匹配类功能
第二个潜在应用可能更具有实际意义,把上面的模型嵌入到游戏的副本系统中,在副本进入界面根据神经网络预测的通关概率对玩家给出建议,假设玩家心流体验的通关概率在75%,那么系统则可以这么建议玩家:
If 通关概率>95%
Then 强烈建议挑战更高难度的副本
Elseif 通关概率<=95% and 通关概率>80%
Then 不那么强烈地建议挑战更高难度的副本
Elseif 通关概率<=80 and 通关概率>70%
Then 非常欢迎玩家进行副本
Elseif 通关概率<70%
Then 推荐玩家继续提升
其中特别是在预测玩家通过概率较小时给出具体的建议,分析玩家的数值,若是等级较低造成的低属性,则建议玩家继续提升等级。若是玩家装备较差,则建议玩家打造高级装备(氪金),等等。
总结
总的来说,本文的主要思想是构建一个神经网络数学模型,模型的输入变量是玩家的数值,与副本有关的数值,模型的输出变量是副本通关概率(或者其他与游戏体验的属性,例如通关时间等)。潜在的应用空间包括:1) 通过根据这个数学模型所推算出的玩家通关概率,对副本怪物属性进行实时性的改变,以提升/降低通关概率,达到优化玩家的游戏体验的目的。2) 通过该数据模型,预测玩家此副本的通关概率等与游戏体验相关的参数,在玩家进行副本前给出针对性建议,以提升游戏体验。