本发明涉及人工智能,尤其涉及一种斗地主游戏自动博弈方法、系统、设备及存储介质。
背景技术:
1、游戏作为现实的抽象环境,是验证人工智能算法性能的天然测试平台,在人工智能技术的发展中起到重要作用。目前人工智能技术在完美信息游戏问题,如围棋、国际象棋等游戏上已取得超越人类的水平,研究热点开始转向非完美信息游戏问题。斗地主游戏作为在中国广为流行的扑克游戏,研究斗地主的游戏人工智能具有较高的实用价值。随着深度神经网络的成熟,应用深度强化学习技术已成为解决斗地主这一非完美信息游戏的主流方向。
2、解决斗地主游戏问题的一种方法是基于策略的深度学习强化学习算法,即根据输入的游戏状态,产生相应的动作分布,选取最优动作。但是由于斗地主游戏规则复杂,手牌组合丰富,具有很大的状态和动作空间,这种方法只利用状态特征,很难对未见过的动作进行适当的推理,会导致人工智能的训练十分困难,难以取得良好性能;此处的状态主要是指已知的相关信息,除了目前已经上打出的手牌外,还包含自己的手牌,他人剩下的手牌数量,出过的炸弹数量等信息。
3、另一种解决斗地主游戏问题的一种方法是基于价值的深度强化学习方法,即计算游戏中各个状态-动作对的价值,选择具有最高价值的动作作为出牌策略。这种方法可以同时利用状态和动作特征,但是经典的基于价值的强化学习算法很容易出现高估的现象,导致对于价值的近似出现偏差,斗地主庞大的状态和动作空间更会加剧这一现象,因此经典的基于价值的深度强化学习算法在斗地主游戏中同样性能堪忧。
4、现有的性能表现良好的斗地主人工智能方案采用人类先验知识,以此缩小斗地主游戏庞大的动作空间,同时结合蒙特卡洛树搜索的方法,建立针对游戏的决策树,并使用神经网络进行推理。目前这一方法可以实现接近人类水平的斗地主人工智能;但是,在训练过程中结合了蒙特卡洛树搜索的方法,需要对决策树进行遍历,导致训练过程和游戏时的推理过程非常耗时;而且使用了一定的人类先验知识来缩小斗地主游戏的动作空间,这一方法虽然可以加快人工智能的训练,但是会限制人工智能的性能上限。因此,现有的斗地主人工智能方案的性能不佳,导致斗地主游戏中智能化程度较低,有鉴于此,有必要研究新的技术方案,来提升斗地主游戏中智能化程度。
技术实现思路
1、本发明的目的是提供一种斗地主游戏自动博弈方法、系统、设备及存储介质,可以有效的提升斗地主游戏中智能化程度,并且能够有助于科研人员对自动博弈的学术研究。
2、本发明的目的是通过以下技术方案实现的:
3、一种斗地主游戏自动博弈方法,包括:
4、步骤1:获取当前游戏中的已知手牌信息、历史动作以及当前步的动作;对当前游戏中的已知手牌信息与历史动作分别进行编码,获得全局状态;对当前步的动作进行编码,获得动作特征;
5、步骤2:利用所述全局状态对下家手牌信息进行预测;
6、步骤3:结合所述全局状态、动作特征以及下家手牌信息的预测结果,确定下一步的动作,所述动作即为对应的出牌信息。
7、一种斗地主游戏自动博弈系统,包括:
8、信息获取与编码单元,用于执行步骤1,所述步骤1包括:获取当前游戏中的已知手牌信息、历史动作以及当前步的动作;对当前游戏中的已知牌面信息与历史动作分别进行编码,获得全局状态;对当前步的动作进行编码,获得动作特征;
9、预测模型,用于执行步骤2,所述步骤2包括:利用所述全局状态对下家手牌信息进行预测;
10、决策模型,用于执行步骤3,所述步骤3包括:结合所述全局状态、动作特征以及下家手牌信息的预测结果,确定下一步的动作,所述动作即为对应的出牌信息。
11、一种处理设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
12、其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述的方法。
13、一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时实现前述的方法。
14、由上述本发明提供的技术方案可以看出,无需依赖人类先验知识,同时可以应对斗地主游戏庞大的状态和动作空间的斗地主游戏自动博弈方案,通过对手建模机制,预测下家的手牌,进而决策下一步的出牌策略,可以有效的提升斗地主游戏中智能化程度;并且,自博弈训练的过程也能够有助于科研人员对自动博弈的学术研究。
1.一种斗地主游戏自动博弈方法,其特征在于,包括:
2.根据权利要求1所述的一种斗地主游戏自动博弈方法,其特征在于,所述步骤1、步骤2与步骤3均通过智能体实现,不同角色与不同位置使用不同的智能体;其中,对于地主角色,其对应的智能体称为第一智能体;对于农民角色,它包含地主上家与下家两个位置,分别对应第二智能体与第三智能体;
3.根据权利要求2所述的一种斗地主游戏自动博弈方法,其特征在于,所述对当前游戏中的已知手牌信息与历史动作分别进行编码,获得全局状态包括:
4.根据权利要求2或3所述的一种斗地主游戏自动博弈方法,其特征在于,所述决策模型采用深度蒙特卡洛方法进行训练包括:
5.根据权利要求2所述的一种斗地主游戏自动博弈方法,其特征在于,所述预测模型包括:多层感知机,以及与多层感知机相连的多个全连接层;其中,所述多层感知机的输入为所述全局状态,多层感知机的输出进入每一全连接层,通过每一全连接层结合多层感知机的输出以及从全局状态中得到的合法标签,预测出下家每种手牌的数目。
6.根据权利要求2所述的一种斗地主游戏自动博弈方法,其特征在于,该方法还包括:在所述预测模型和决策模型的自博弈训练中设置教练模型,通过所述教练模型根据初始手牌信息预测地主胜率,若地主胜率未处于阈值范围内,则重新生成牌局。
7.根据权利要求6所述的一种斗地主游戏自动博弈方法,其特征在于,所述教练模型与所述预测模型和决策模型同时进行自博弈训练,通过自博弈训练调整所述阈值范围。
8.一种斗地主游戏自动博弈系统,其特征在于,基于权利要求1~7任一项所述的方法实现,该系统包括:
9.一种处理设备,其特征在于,包括:一个或多个处理器;存储器,用于存储一个或多个程序;
10.一种可读存储介质,存储有计算机程序,其特征在于,当计算机程序被处理器执行时实现如权利要求1~7任一项所述的方法。