[发明专利]一种基于因式分解机进行棋牌游戏行为克隆的方法有效
申请号: | 202110703194.1 | 申请日: | 2021-06-24 |
公开(公告)号: | CN113426109B | 公开(公告)日: | 2023-09-26 |
发明(设计)人: | 郝文江;宁伟;周恩光;晏子华;林深;欧阳正瞻 | 申请(专利权)人: | 深圳市优智创芯科技有限公司 |
主分类号: | A63F13/45 | 分类号: | A63F13/45 |
代理公司: | 西安智大知识产权代理事务所 61215 | 代理人: | 段俊涛 |
地址: | 518066 广东省深圳市前海深港合*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 因式分解 进行 棋牌 游戏 行为 克隆 方法 | ||
1.一种基于因式分解机进行棋牌游戏行为克隆的方法,其特征在于,包括如下步骤:
步骤1,选择离散输入特征作为输入,所述离散输入特征通过神经元是否激活的二元状态进行表示;其中,离散输入特征指取值为真假的输入特征或者表示类别的输入特征,输入特征指在棋牌游戏中,AI需要做决策时能够获取到的数据特征;对于每个取值为真假的输入特征,使用一个神经元进行表示,当输入特征取值为真时,用于表示该输入特征的神经元激活,当输入特征取值为假时,用于表示该输入特征的神经元不激活;对于每个表示类别的输入特征,更改为c个取值为真假的输入特征,分别表示是否输入c个类别的输入特征,其中c表示输入特征的类别数;
步骤2,训练因式分解机模型,通过更改模型并重新计算损失函数进行排序选取m组输入特征对进行组合,得到新增加的m个输入特征,该m个输入特征各使用一个神经元进行表示,当其取值为真时,用于表示该输入特征的神经元激活,当其取值为假时,用于表示该输入特征的神经元不激活,其中m是一个超参数,根据具体的棋牌游戏特性进行调节;
所述步骤2具体包括:
步骤2.1,构建一个隐向量长度为k的不指定输入特征数量的因式分解机模型,定义因式分解机隐向量权重为V、一次项权重为W、截距为B,并进行训练,使用SoftMax激活函数和交叉熵损失函数,从而使得V为一个三阶张量,形状是(k,t,r),其中t表示在每次进行此步骤构建时神经元的数量,r表示AI可以进行的动作的数量,W为一个矩阵,形状是(t,r),B为一个向量,得到因式分解机模型的计算公式如下:
其中k是一个超参数,根据具体的棋牌游戏特性进行调节;
步骤2.2,对于任意的两个神经元的组合构成的一对神经元i、j,将输入向量即全部输入特征的一次取值构成的向量记为x,将因式分解机模型的计算公式分别减去:
得到三个新模型,并分别重新评估损失函数的值,计算三个损失函数的最小值l,记录使l最大的前m对神经元,其中:
表示隐向量权重中神经元i和神经元j的组合对结果造成的影响,由于V是一个三阶张量,因此Vf,i和Vf,j是两个向量,xi和xj分别表示输入向量中神经元i和神经元j对应的分量,因此xi和xj是两个表示真或假的数字;
步骤2.3,将所述m对神经元进行组合形成新的神经元作为新增的输入特征,组合方式为一一对应新增加m个神经元,所述m个神经元的激活条件为当且仅当使其生成的一对神经元都激活;
步骤3,重复进行步骤2,直至神经元数量大于设定的值l,其中l是一个超参数,根据具体的棋牌游戏特性进行调节;
步骤4,将最终组合后的输入特征连接一个模型重新训练,包括以下步骤:
步骤4.1,准备最终训练样本;
获取来自特定个体玩家或特定群体玩家的棋牌游戏历史记录并进行预处理,得到如步骤1中所述的神经元激活状态的表示,作为最终训练样本,从而使最终得到的AI更加符合该特定个体玩家或特定群体玩家的习惯而不是一般玩家的习惯;
步骤4.2,以最终增加后的输入特征为输入特征,使用单个全连接层为模型,使用最终训练样本进行训练得到最终的棋牌AI;
所述棋牌游戏为斗地主,输入特征包括两部分,一部分来自智能体在当前场上可观测到的瞬时状态,一部分来自本局的历史信息;
所述瞬时状态表示为如下部分:
1)、自己当前手牌的牌型;
2)、最后被打出的牌,即当前智能体需要决定是否应该管上的牌的牌型;
3)、最后被打出的牌的出牌人,即智能体需要决定当前是否应该管上的牌的出牌人;
4)、敌人可能存在的牌的牌型,其中敌人可能存在的牌指的是不在自己手中且场上尚未被打出的牌;
5)、上下家分别剩余的手牌的数量;
6)、自己与地主的位置关系;
所述历史信息表示为如下部分:
1)、对于上下家两位置来说,他们各自要不起的单牌的最小大小;
2)、对于上下家两位置来说,他们各自剩余1张手牌的时候要不起的单牌的最小大小;
3)、对于上下家两位置来说,他们各自剩余2张手牌的时候要不起的对牌的最小大小;
4)、对于上下家两位置来说,他们各自剩余3张手牌的时候要不起的三牌的最小大小;
最终:
使用混合玩家样本训练,得到根据混合玩家样本监督学习出的模仿大多数玩家的斗地主出牌AI-1;
使用单个玩家样本训练,得到根据单个玩家样本迁移学习单个玩家出牌习惯的斗地主出牌AI-2;
或者,
所述棋牌游戏为黑白棋,以黑白棋的64个位置是否为己方落子、是否为敌方落子、是否为空白位置为输入特征,共192个离散化输入特征;
最终:
使用混合玩家样本训练,得到根据混合玩家样本监督学习出的模仿大多数玩家的黑白棋AI-1;
使用单个玩家样本训练,得到根据单个玩家样本迁移学习单个玩家落子习惯的黑白棋AI-2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市优智创芯科技有限公司,未经深圳市优智创芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110703194.1/1.html,转载请声明来源钻瓜专利网。