确定人工智能行为的方法、装置及人工智能服务器的制造方法

文档序号:6521635阅读:218来源:国知局
确定人工智能行为的方法、装置及人工智能服务器的制造方法
【专利摘要】本发明公开了一种确定人工智能行为的方法、装置及人工智能服务器,属于人工智能领域。该方法包括:接收应用逻辑服务器发送的请求协议命令,请求协议命令携带应用程序标识、通知消息和当前环境数据;从预先设置的多个AI系统中查找应用程序标识对应的AI系统,并从应用程序标识对应的AI系统中查找与通知消息对应的归类组件;从归类组件中获取与当前环境数据匹配的行为组件,根据获取到行为组件确定AI行为。本发明在确定AI行为时,无需再通过运算代码,而直接从构成AI系统的多个组件中确定AI行为组件进而确定AI行为,操作简单。另外,确定AI行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。
【专利说明】确定人工智能行为的方法、装置及人工智能服务器

【技术领域】
[0001]本发明涉及人工智能领域,特别涉及一种确定人工智能行为的方法、装置及人工智能服务器。

【背景技术】
[0002]Al (Artificial Intelligence,人工智能)是指利用计算机等现代化工具来模拟人类的思维和行动的技术,随着Al技术的日渐进步,Al技术已被应用于生产生活的各个方面。例如,当Al技术被应用于游戏应用程序中时,会生成一个与人具有相似行为的主体,该主体即为Al智能体。由于Al智能体能表现出与人的智能行为、活动相类似,或者与玩家的思维、感知相符合的特性,因而可以提高游戏应用程序的可玩性。在设计包含Al技术的具体应用程序时,将Al智能体表现出的与人类似的行为称为Al行为。而如何确定Al行为,是使应用程序中的Al智能体表现出与人具有相类似行为的关键。例如,在设计人与计算机对战的游戏应用程序时,确定Al行为可以确保游戏中的Al智能体作出与玩家相匹配的行为。
[0003]现有技术在确定Al行为之前,通常需要在设计好应用程序的逻辑后,由编程人员将应用程序的逻辑翻译为对应的代码,通过代码组合形成Al系统。也就是说,现有技术在确定Al行为之前,需要针对每款应用程序开发一套对应的代码。在确定Al行为时,由应用逻辑服务器根据Al智能体当前所处的环境数据查找相应的代码,通过代码运算确定Al行为,从而控制Al智能体执行确定的Al行为,以达到使Al智能体作出与当前环境数据相匹配的Al行为。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]由于现有技术需要通过应用逻辑服务器运算应用程序对应的代码来确定Al行为,操作复杂。另外,当由应用逻辑服务器确定Al行为时,会占用应用逻辑服务器的资源,影响应用程序的运行速度。


【发明内容】

[0006]为了解决现有技术的问题,本发明实施例提供了一种确定人工智能行为的方法、装置及人工智能服务器。所述技术方案如下:
[0007]第一方面,提供了一种确定人工智能行为的方法,所述方法包括:
[0008]接收应用逻辑服务器发送的请求协议命令,所述请求协议命令携带应用程序标识、通知消息和当前环境数据;
[0009]从预先设置的多个人工智能Al系统中查找所述应用程序标识对应的Al系统,并从所述应用程序标识对应的Al系统中查找与所述通知消息对应的归类组件,所述Al系统由预设的多个组件构成,所述预设的多个组件包括归类组件,所述归类组件挂载至少一个行为组件;
[0010]从与所述通知消息对应的归类组件中获取与所述当前环境数据匹配的行为组件,根据获取到的与所述当前环境数据匹配的行为组件确定Al行为。
[0011]第二方面,提供了一种确定人工智能行为的装置,所述装置包括:
[0012]接收模块,用于接收应用逻辑服务器发送的请求协议命令,所述请求协议命令携带应用程序标识、通知消息和当前环境数据;
[0013]查找模块,用于从预先设置的多个人工智能Al系统中查找所述应用程序标识对应的Al系统,并从所述应用程序标识对应的Al系统中查找与所述通知消息对应的归类组件,所述Al系统由预设的多个组件构成,所述预设的多个组件包括归类组件,所述归类组件挂载至少一个行为组件;
[0014]获取模块,用于从与所述通知消息对应的归类组件中获取与所述当前环境数据匹配的行为组件;
[0015]确定模块,用于根据获取到的与所述当前环境数据匹配的行为组件确定Al行为。
[0016]第三方面,提供了一种人工智能服务器,所述人工智能服务器包括确定人工智能行为的装置;
[0017]其中,所述确定人工智能行为的装置如上述第二方面提供的确定人工智能行为的
>J-U ρ?α装直。
[0018]本发明实施例提供的技术方案带来的有益效果是:
[0019]通过从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为,使得在确定Al行为时,无需再通过运算代码,而直接从构成Al系统的多个组件中确定Al行为组件进而确定Al行为,操作简单。另外,确定Al行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。

【专利附图】

【附图说明】
[0020]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是本发明实施例提供的确定人工智能行为的实施环境的结构示意图;
[0022]图2是本发明实施例一提供的确定人工智能行为的方法流程图;
[0023]图3是本发明实施例二提供的确定人工智能行为的方法流程图;
[0024]图4是本发明实施例二提供的组件挂载方式结构示意图;
[0025]图5是本发明实施例三提供的一种确定人工智能行为的装置结构示意图;
[0026]图6是本发明实施例三提供的另一种确定人工智能行为的装置结构示意图;
[0027]图7是本发明实施例三提供的确定模块的结构示意图;
[0028]图8是本发明实施例五提供的Al服务器的结构示意图。

【具体实施方式】
[0029]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0030]随着计算机技术的迅速发展,越来越多的应用程序被应用于人们的生活中,给人们的生活带来很大的便捷和趣味。随着Al技术的迅速发展,越来越多的Al技术被应用于计算机等现代化工具的应用程序中,使计算机等现代化工具可以模拟并作出与人的思维和行为相似的行为。当计算机等现代化工具作出的行为与人的行为相似时,即充当了 Al智能体的角色。Al智能体通常是指具有目标、行为和知识,并在一定环境下自主运行的实体。Al智能体的典型例子为应用程序中的怪物或者NPC(Non-Player Character,非玩家角色)。另夕卜,在运行人与计算机对战的应用程序时,Al智能体为计算机所充当的角色。Al智能体作出的与人的思维和行为相类似的行为称为Al行为。
[0031]在设计与Al技术相关的应用程序时,通常会由应用程序的策划者设计好应用程序中Al智能体的逻辑关系,然后由编程人员将应用程序中Al智能体的逻辑关系通过具体的程序语言翻译为对应的代码,通过代码组合形成应用程序的Al系统。然而,由于不同的应用程序包含不同的Al智能体,同一应用程序也包含实现不同的Al智能体,因此,如果针对每个Al智能体所表现的行为均通过编译代码来实现的话,不仅设计Al系统的操作复杂,而且会占用大量的人力资源。此种情况下,在根据设计好的Al系统确定应用程序中Al智能体的Al行为时,操作更复杂。鉴于此,本发明实施例基于软件系统中的组件提供一种设计Al系统的方法,并在基于组件设计的Al系统上,提供一种确定Al智能体的Al行为的方法。其中,确定Al行为的方法详见下面的实施例一和实施例二。
[0032]为了对本发明实施例提供的方法进行详细说明,下面首先介绍一下本发明实施例涉及的各种组件:
[0033]本发明实施例中的组件通过将实现特定功能的代码进行封装得到,其具有相对独立功能、接口由契约指定、和语境有明显依赖关系、可独立部署、可组装。为了在后续便于通过组件构成Al系统,本发明实施例提供的方法可以预先将实现特定功能的代码进行封装,以备后续可以直接使用封装好的组件。另外,为了使组件的使用操作简单,在封装好组件后,可以为每个组件配置对应的组件详细信息。
[0034]进一步地,为了便于对发明实施例提供的方法进行阐述,在本发明实施例中,将封装好的各个组件按照所实现的功能进行了分类,得到归类组件、选择组件、条件组件和行为组件。其中,条件组件是指执行条件判断,返回判断结果的功能组件。例如:判断玩家当前是否有红桃K卡牌的组件。行为组件是指执行设定的功能的组件。例如:打出一张红桃K卡牌的组件。选择组件是指可以根据一定的选取规则来选取一个行为组件来执行的组件,选取规则包括但不限于权值最大选取方式,随机选取方式和顺序选取方式等。另外,为了对上述各个组件进行归类管理,提出了归类组件。归类组件是对各个组件进行归类管理的组件,一般不做任何功能操作,用于组件管理。
[0035]如图1所示,其示出了本发明实施例提供的确定人工智能Al行为的方法的实施环境的结构示意图。本发明实施例提供的确定Al行为的方法的实施环境包括应用逻辑服务器和Al服务器,且Al服务器可以挂载至少一个应用的Al系统。不同应用的Al系统通过调用预设的组件实现。如图1所示,组件之间的挂载方式可以为归类组件挂载至少一个选择组件或至少一个条件组件,选择组件挂载至少一个行为组件,行为组件挂载至少一个条件组件。在应用逻辑服务器和Al服务器交互完成确定Al行为的方法时,应用逻辑服务器需要同步全部应用程序环境数据至Al服务器。
[0036]接下来,将结合上述说明及附图对本发明实施例提供的方法进行详细地说明,具体详见如下各个实施例:
[0037]实施例一
[0038]结合上述内容,本发明实施例提供了一种确定人工智能行为的方法。参见图2,本发明实施例提供的方法流程包括:
[0039]101:接收应用逻辑服务器发送的请求协议命令,该请求协议命令携带应用程序标识、通知消息和当前环境数据。
[0040]102:从预先设置的多个人工智能Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,其中,Al系统由预设的多个组件构成,预设的多个组件包括归类组件,归类组件挂载至少一个行为组件。
[0041]103:从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为。
[0042]优选地,从预先设置的多个人工智能Al系统中查找应用程序标识对应的Al系统之前,还包括:
[0043]将实现特定功能的代码封装成实现特定功能的组件,该组件包括选择组件、行为组件和条件组件;
[0044]从组件中选择多组组件,并为每组组件设置用于管理组件的归类组件;
[0045]将每组组件及管理每组组件的归类组件构成与一个应用程序对应的Al系统,得到多个应用程序对应的Al系统。
[0046]优选地,归类组件挂载至少一个选择组件或至少一个条件组件,选择组件挂载至少一个行为组件,行为组件挂载至少一个条件组件。
[0047]其中,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,包括但不限于:
[0048]遍历与通知消息对应的归类组件挂载的多个条件组件,确定与当前环境数据匹配的至少一个条件组件;
[0049]激活挂载与当前环境数据匹配的至少一个条件组件的至少一个行为组件;
[0050]由挂载至少一个行为组件的选择组件按照预设的筛选规则从至少一个行为组件中选择与当前环境数据匹配的行为组件。
[0051]优选地,接收应用逻辑服务器发送的请求协议命令之前,还包括:
[0052]接收应用逻辑服务器同步的全部应用程序环境数据;
[0053]遍历与通知消息对应的归类组件挂载的多个条件组件,确定与当前环境数据匹配的至少一个条件组件,包括但不限于:
[0054]在全部应用程序环境数据中查找多个条件组件中的至少一个条件组件对应的应用程序环境数据,并判断当前环境数据是否满足多个条件组件中的至少一个条件组件对应的应用程序环境数据;
[0055]如果当前环境数据满足多个条件组件中的至少一个条件组件对应的应用程序环境数据,则将当前环境数据满足的至少一个条件组件确定为与当前环境数据匹配的至少一个条件组件。
[0056]本发明实施例提供的方法,通过从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为,使得在确定Al行为时,无需再通过运算代码,而直接从构成Al系统的多个组件中确定Al行为组件进而确定Al行为,操作简单。另外,确定Al行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。
[0057]实施例二
[0058]结合上述实施例一的内容,本发明实施例提供了一种确定人工智能行为的方法。为了便于说明,本发明实施例以Al服务器执行本发明实施例提供的确定人工智能行为的方法为例,并结合图1所示的实施环境对本发明实施例提供的确定人工智能行为的方法进行详细说明。
[0059]在本发明实施例中,Al服务器可以挂载不同应用程序的Al系统,且不同应用程序的Al系统是通过将封装好的各个组件进行组合而得到的。应用逻辑服务器是为多个客户端提供特定应用程序逻辑服务的服务器,且Al服务器通过接收应用逻辑服务器与客户端用户的交互协议,根据当前环境数据从Al系统中确定Al智能体的Al行为。参见图3,本发明实施例提供的方法流程包括:
[0060]201:AI服务器将实现特定功能的代码封装成实现特定功能的组件,该组件包括选择组件、行为组件和条件组件;AI服务器从组件中选择多组组件,并为每组组件设置用于管理组件的归类组件。
[0061]针对该步骤,为了使构成不同应用程序的Al系统的操作简单,Al服务器将实现特定功能的代码封装成实现特定功能的组件。封装好的组件是一个单入单出的软件实体,不仅具有相对独立的功能,而且具有通用性。当不同的应用程序要实现相类似的功能时,可以通过调用相同的组件来实现。关于将实现特定功能的代码封装成实现特定功能的组件的方式,本发明实施例不作具体限定。另外,由于不同的组件实现的功能不同,因此,将代码封装成组件后,可以根据组件实现的功能将封装的组件划分为选择组件、行为组件和条件组件等。此外,为了对组件进行归类管理,确保在使用组件时,能够花费最少的时间搜索到最合适的组件,Al服务器可以将封装的组件进行分组,并为每组组件设置用于管理组件的归类组件。设置归类组件后,当使用组件时,Al服务器可以根据要实现的功能从对应的归类组件中选择组件。关于归类组件的具体内容可以有很多种,可以根据应用程序的逻辑对归类组件的内容进行具体限定,本发明实施例对此不作具体限定。具体应用时,例如在棋牌类应用程序中,归类组件可以包括打基本牌的归类组件、判断Al智能体道具状况的归类组件等。
[0062]需要说明的是,封装好的组件之间的挂载方式可以有很多种,在具体的应用程序中,可以根据不同组件之间的输入输出关系确定组件的挂载方式。如图4所示,其示了一般应用程序中组件之间的挂载方式。其中,如图4 (a)所示,归类组件可以挂载至少一个选择组件,选择组件可以挂载至少一个行为组件,行为组件可以挂载至少一个条件组件;另外,如图4 (b)所示,归类组件也可以直接挂载至少一个条件组件。
[0063]202:AI服务器将每组组件及管理每组组件的归类组件构成与一个应用程序对应的Al系统,得到多个应用程序对应的Al系统。
[0064]针对该步骤,封装好各个组件之后,Al服务器可以根据应用程序的逻辑关系,将每组组件及管理每组组件的归类组件组合构成与一个应用程序对应的Al系统,进而采用相同的方式组合各个组件得到多个应用程序对应的Al系统。为了区分每个应用程序对应的Al系统,可以为每个Al系统设置标识,该标识与其对应的应用程序的标识一一对应。因此在确定某一应用程序的Al系统时,只需要查找与该应用程序的标识对应的Al系统的标识即可。
[0065]通过组合组件构成不同应用程序的Al系统,使得在构成Al系统时,仅需根据应用程序的逻辑组合封装的组件就能实现,无需再根据应用程序的逻辑编译代码,构成应用程序的Al系统的操作简单。另外,由于每个组件功能单一,因此,可以根据一定的逻辑关系任意组装,使得同一组件可以被应用于不同的应用程序中或者同一应用程序的不同Al智能体上,使得封装的组件具有通用性。
[0066]需要说明的是,步骤201和步骤202为基于组件设计Al系统的基本步骤,通过该两个步骤,可以为调用组件设计至少一个应用的Al系统作基础,进而为后续确定Al智能体的Al行为作基础。因此,该两个步骤不需要每次执行确定Al行为时均执行该两个步骤,可以根据需要选择执行。
[0067]203:AI服务器接收应用逻辑服务器发送的请求协议命令,该请求协议命令携带应用程序标识、通知消息和当前环境数据。
[0068]针对该步骤,当应用逻辑服务器通过与客户端用户交互,需要Al服务器配合完成一定的Al行为时,向Al服务器发送请求协议命令。Al服务器为了触发后续可以根据该请求协议命令确定Al行为的步骤,需要接收应用逻辑服务器发送的请求协议命令。关于应用逻辑服务器向Al服务器发送请求协议命令以及Al服务器接收应用逻辑服务器发送的请求协议命令的方式,本发明实施例不作具体限定。
[0069]需要说明的是,由于Al服务器可以挂载不同应用程序的Al系统,因此,为了区分不同应用程序的Al系统,该请求协议命令中需要携带应用程序的标识。另外,由于Al服务器对内部存储的各个组件进行归类管理,得到不同的归类组件,为了使Al服务器明确当前应用逻辑服务器需要Al服务器匹配的行为属于哪种行为,该请求协议命令中需要携带通知消息。Al服务器可以根据该通知消息定位到对应的归类组件,进而确保后续可以从通知消息对应的归类组件中选择当前应用逻辑服务器需要Al服务器匹配的行为组件。再者,Al服务器需要根据玩家或其它Al智能体当前的状态来确定当前Al智能体的下一步行为,因此,该请求协议命令中需要携带当前环境数据。关于当前环境数据,本实施例不作具体限定,具体实施时,可根据具体情况进行设定。例如,在人与计算机对战的棋牌类应用程序中,当玩家打出一张红桃10后,为了使Al服务器根据玩家打出的红桃10来确定Al智能体应该打出的牌,此时,用于描述玩家打出红桃10的数据即为当前环境数据,且该当前环境数据被携带在请求协议命令中。
[0070]204:AI服务器从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件。
[0071]针对该步骤,由于Al服务器挂载了不同应用程序的Al系统,且不同的Al系统又分别由不同的归类组件管理各个组件,因此,Al服务器在接收应用逻辑服务器发送的请求协议命令后,从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件。
[0072]关于Al服务器从预先设置的多个Al系统中查找应用程序标识对应的Al系统的方式,可以有很多种。例如,Al服务器可以在内部不同的存储结构中存储不同应用程序的Al系统,且将存储应用程序的Al系统的存储结构进行标号,该标号与应用程序的Al系统的标识匹配。此时,当Al服务器接收包含应用程序标识的请求协议命令后,Al服务器通过从不同的存储结构对应的标号中查找与应用程序标识匹配的存储结构来从预先设置的多个Al系统中查找应用程序标识对应的Al系统。进一步地,当查找到与应用程序标识对应的Al系统后,Al服务器通过通知消息从应用程序标识对应的Al系统中查找与通知消息对应的归类组件。例如,如果通知消息为通知Al智能体打出一张牌的消息,则Al服务器定位到打基本牌的归类组件中,并在后续从打基本牌的归类组件中获取一个行为组件来确定Al智能体的Al行为。
[0073]205:AI服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为。
[0074]针对该步骤,由于Al服务器接收应用逻辑服务器发送的请求协议命令的最根本目的是为了使当前充当的Al智能体作出的行为匹配玩家或别的Al智能体的行为,亦即Al服务器需要确定以什么行为来匹配玩家或别的Al智能体的行为,又由于Al智能体作出的行为与当前环境数据有关,因此,Al服务器需要从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件。Al服务器获取到与当前环境数据匹配的行为组件后,根据获取到的与当前环境数据匹配的行为组件确定Al行为。其中,与当前环境数据匹配的行为组件即为Al服务器确定的与当前环境数据匹配的Al行为。
[0075]Al服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件的方式,可以有很多种。具体实施时,如果组件之间的挂载方式为如图4(a)所示的方式,SP一个归类组件下挂载至少一个选择组件,一个选择组件挂载至少一个行为组件,一个行为组件挂载至少一个条件组件。在这种挂载结构下,Al服务器在确定Al行为时,需要结合当前环境数据,当当前环境数据满足预设的条件组件对应的条件时,才能确定执行某一行为,否则,不执行该行为。综上,Al服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件的方式包括但不限于采用如下方式:
[0076]遍历与通知消息对应的归类组件挂载的多个条件组件,确定与当前环境数据匹配的至少一个条件组件;激活挂载与当前环境数据匹配的至少一个条件组件的至少一个行为组件;由挂载至少一个行为组件的选择组件按照预设的筛选规则从至少一个行为组件中选择与当前环境数据匹配的行为组件。
[0077]需要说明的是,预设的筛选规则包括但不限于权值最大选取方式、随机选取方式、顺序选取方式。由于不同的应用程序或不同的Al智能体在不同的环境条件下,表现出的Al行为并不相同,因此,Al服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件时,需要根据当前环境数据确定,并且即使在相同的环境下,也需要根据合适的筛选规则来确定选择哪个Al行为组件。
[0078]优选地,由于应用程序中涉及到的规则等内容通常是通过判断数据之间的关系来确定的,因此,通常Al服务器在接收应用逻辑服务器发送的请求协议命令之前,还包括:AI服务器接收应用逻辑服务器同步的全部应用程序环境数据,该全部应用程序环境数据包括运行该应用程序会涉及到的所有数据。
[0079]其中,Al服务器接收应用逻辑服务器同步的全部应用程序环境数据的方式,可以有很多种,例如,如果应用逻辑服务器在同步全部应用程序环境数据时,采用socket ()方式,则Al服务器以socket ()方式接收应用逻辑服务器同步的全部应用程序环境数据。此夕卜,应用逻辑服务器在同步全部应用程序环境数据时,可以采用全量式同步方式,也可采用增量式同步方式。无论应用逻辑服务器采用哪种方式同步全部应用程序环境数据,Al服务器均以同样的方式接收应用逻辑服务器同步的全部应用程序环境数据。
[0080]Al服务器在接收应用逻辑服务器同步的全部应用程序环境数据后,相应地,Al服务器遍历与通知消息对应的归类组件挂载的多个条件组件,确定与当前环境数据匹配的至少一个条件组件,包括但不限于:
[0081]在全部应用程序环境数据中查找多个条件组件中的至少一个条件组件对应的应用程序环境数据,并判断当前环境数据是否满足多个条件组件中的至少一个条件组件对应的应用程序环境数据;如果当前环境数据满足多个条件组件中的至少一个条件组件对应的应用程序环境数据,则将当前环境数据满足的至少一个条件组件确定为与当前环境数据匹配的至少一个条件组件。
[0082]下面以一个具体的例子来对上述Al服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件的方式进行详细说明。
[0083]例如,某一具体的应用程序为玩家与计算机进行对战玩牌,应用程序的规则为玩家需要与计算机充当的Al智能体出的牌进行大小比较,玩家与Al智能体分别需要保证打出的牌与对方打出的牌同花色且大于对方出的牌才能获胜。假设在某一局牌中,玩家打出一张红桃5,为了保证按照应用程序的规则进行对战,Al智能体当前需要打出一张比红桃5大的牌来。此时,Al服务器从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件的过程为:
[0084]Al服务器在应用逻辑服务器同步的全部应用程序环境数据中查找多个条件组件中的至少一个条件组件对应的应用程序环境数据,找到能够大于当前玩家打出的红桃5对应的条件组件,并判断当前Al智能体手中的牌哪些符合全部应用程序环境数据中查找到的当前玩家打出的红桃5对应的条件组件。假设当前Al智能体手中有红桃10、红桃K和红桃A,此时,Al服务器判断得到当前环境数据满足三个条件组件对应的应用程序环境数据;此时Al服务器将当前环境数据满足的三个条件组件确定为与当前环境数据匹配的至少一个条件组件。
[0085]由于在图4 Ca)所示的组件拓扑结构中,行为组件挂载条件组件,因此,Al服务器激活挂载该三个条件组件的行为组件;又由于选择组件挂载行为组件,因此,由挂载该三个条件组件的行为组件的选择组件按照预设的筛选规则从挂载该三个条件组件的行为组件中选择与当前环境数据匹配的行为组件。
[0086]具体地,假设该应用程序中,A最大,接下来为K等。因此当Al服务器判断玩家出红桃5后,由于Al智能体当前有红桃10、红桃K以及红桃A,虽然此时选择组件可以按照随机选取方式随便选取一张便可使Al智能体出的牌大于玩家出的牌,但是,由于红桃中的两个大牌都在Al智能体手中,Al智能体出红桃K和红桃A中的任何一张即可在整个这局牌中战胜玩家。因此,Al服务器此时可以按照权值最大选取方式在红桃K和红桃A中选一张。进一步地,由于红桃K小于红桃A,此时Al智能体出红桃K即可战胜玩家,没必要出红桃A,因此,Al服务器按照预设的权值最大的计算方法计算出应该出红桃K,因此Al服务器将挂载红桃K对应的条件组件的行为组件确定为与当前环境数据匹配的行为组件。进一步地,确定打出红桃K的行为为与当前环境数据匹配的Al行为。至此,Al服务器已经确定打出红桃K为与当前玩家打出的红桃5匹配的行为。
[0087]优选地,在根据获取到的与当前环境数据匹配的行为组件确定Al行为之后,还包括:
[0088]Al服务器执行该Al行为,并将执行结果发送给应用逻辑服务器。结合上面的具体例子,在Al服务器执行打出红桃K的行为后,将该执行结果发送给该应用对应的应用逻辑服务器。此时,应用逻辑服务器得到的结果即为Al智能体打出了一张红桃K。
[0089]本发明实施例提供的方法,通过从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为,使得在确定Al行为时,无需再通过运算代码,而直接从构成Al系统的多个组件中确定Al行为组件进而确定Al行为,操作简单。另外,确定Al行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。
[0090]实施例三
[0091]参见图5,本发明实施例提供了一种确定人工智能行为的装置,该装置包括:
[0092]接收模块401,用于接收应用逻辑服务器发送的请求协议命令,该请求协议命令携带应用程序标识、通知消息和当前环境数据;
[0093]查找模块402,用于从预先设置的多个人工智能Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,Al系统由预设的多个组件构成,预设的多个组件包括归类组件,归类组件挂载至少一个行为组件;
[0094]获取模块403,用于从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件;
[0095]确定模块404,用于根据获取到的与当前环境数据匹配的行为组件确定Al行为。
[0096]优选地,参见图6,所述装置还包括:
[0097]封装模块405,用于将实现特定功能的代码封装成实现特定功能的组件,组件包括选择组件、行为组件和条件组件;
[0098]设置模块406,用于从组件中选择多组组件,并为每组组件设置用于管理组件的归类组件;
[0099]得到模块407,用于将每组组件及管理每组组件的归类组件构成与一个应用程序对应的Al系统,得到多个应用程序对应的Al系统。
[0100]优选地,所述设置模块406设置的用于管理组件的归类组件挂载至少一个选择组件或至少一个条件组件,选择组件挂载至少一个行为组件,行为组件挂载至少一个条件组件。
[0101]其中,参见图7,所述获取模块403包括但不限于:
[0102]遍历单元4031,用于遍历与通知消息对应的归类组件挂载的多个条件组件;
[0103]确定单元4032,用于确定与当前环境数据匹配的至少一个条件组件;
[0104]激活单元4033,用于激活挂载与当前环境数据匹配的至少一个条件组件的至少一个行为组件;
[0105]选择单元4034,用于由挂载至少一个行为组件的选择组件按照预设的筛选规则从至少一个行为组件中选择与当前环境数据匹配的行为组件。
[0106]优选地,所述接收模块401还用于接收应用逻辑服务器同步的全部应用程序环境数据;
[0107]确定单元4032,用于在全部应用程序环境数据中查找多个条件组件中的至少一个条件组件对应的应用程序环境数据,并判断当前环境数据是否满足多个条件组件中的至少一个条件组件对应的应用程序环境数据;
[0108]如果当前环境数据满足多个条件组件中的至少一个条件组件对应的应用程序环境数据,则将当前环境数据满足的至少一个条件组件确定为与当前环境数据匹配的至少一个条件组件。
[0109]本发明实施例提供的装置,通过从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为,使得在确定Al行为时,无需再通过运算代码,而直接从构成Al系统的多个组件中确定Al行为组件进而确定Al行为,操作简单。另外,确定Al行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。
[0110]实施例四
[0111]本发明实施例提供了一种人工智能服务器,该人工智能服务器包括确定人工智能行为的装置。
[0112]其中,该装置如上述实施例三中提供的确定人工智能行为的装置。具体详见上述实施例三的内容,此处不再赘述。
[0113]本发明实施例提供的人工智能服务器,通过从预先设置的多个Al系统中查找应用程序标识对应的Al系统,并从应用程序标识对应的Al系统中查找与通知消息对应的归类组件,从与通知消息对应的归类组件中获取与当前环境数据匹配的行为组件,根据获取到的与当前环境数据匹配的行为组件确定Al行为,使得在确定Al行为时,无需再通过运算代码,而直接从构成Al系统的多个组件中确定Al行为组件进而确定Al行为,操作简单。另夕卜,确定Al行为的操作不通过应用逻辑服务器实现,因此,加快了应用程序运行的速度,给用户带来良好的操作体验。
[0114]实施例五
[0115]图8是本发明实施例中Al服务器的结构示意图。该Al服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits, CPU) 722 (例如,一个或一个以上处理器)和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730 (例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在Al服务器700上执行存储介质730中的一系列指令操作。
[0116]Al服务器700还可以包括一个或一个以上电源726,一个或一个以上有线或无线网络接口 750,一个或一个以上输入输出接口 758,一个或一个以上键盘756,和/或,一个或一个以上操作系统 741,例如 Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM
坐坐寸寸ο
[0117]需要说明的是:上述实施例提供的确定人工智能行为的装置在确定人工智能行为时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的确定人工智能行为的装置与确定人工智能行为的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0118]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0119]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0120]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种确定人工智能行为的方法,其特征在于,所述方法包括: 接收应用逻辑服务器发送的请求协议命令,所述请求协议命令携带应用程序标识、通知消息和当前环境数据; 从预先设置的多个人工智能Al系统中查找所述应用程序标识对应的Al系统,并从所述应用程序标识对应的Al系统中查找与所述通知消息对应的归类组件,所述Al系统由预设的多个组件构成,所述预设的多个组件包括归类组件,所述归类组件挂载至少一个行为组件; 从与所述通知消息对应的归类组件中获取与所述当前环境数据匹配的行为组件,根据获取到的与所述当前环境数据匹配的行为组件确定Al行为。
2.根据权利要求1所述的方法,其特征在于,所述从预先设置的多个人工智能Al系统中查找所述应用程序标识对应的Al系统之前,还包括: 将实现特定功能的代码封装成实现特定功能的组件,所述组件包括选择组件、行为组件和条件组件; 从所述组件中选择多组组件,并为每组组件设置用于管理组件的归类组件; 将每组组件及管理每组组件的归类组件构成与一个应用程序对应的Al系统,得到多个应用程序对应的Al系统。
3.根据权利要求2所述的方法,其特征在于,所述归类组件挂载至少一个选择组件或至少一个条件组件,所述选择组件挂载至少一个行为组件,所述行为组件挂载至少一个条件组件。
4.根据权利要求1所述的方法,其特征在于,所述从与所述通知消息对应的归类组件中获取与所述当前环境数据匹配的行为组件,包括: 遍历与所述通知消息对应的归类组件挂载的多个条件组件,确定与所述当前环境数据匹配的至少一个条件组件; 激活挂载所述与所述当前环境数据匹配的至少一个条件组件的至少一个行为组件; 由挂载所述至少一个行为组件的选择组件按照预设的筛选规则从所述至少一个行为组件中选择与所述当前环境数据匹配的行为组件。
5.根据权利要求4所述的方法,其特征在于,所述接收应用逻辑服务器发送的请求协议命令之前,还包括: 接收所述应用逻辑服务器同步的全部应用程序环境数据; 所述遍历与所述通知消息对应的归类组件挂载的多个条件组件,确定与所述当前环境数据匹配的至少一个条件组件,包括: 在所述全部应用程序环境数据中查找所述多个条件组件中的至少一个条件组件对应的应用程序环境数据,并判断所述当前环境数据是否满足所述多个条件组件中的至少一个条件组件对应的应用程序环境数据; 如果所述当前环境数据满足所述多个条件组件中的至少一个条件组件对应的应用程序环境数据,则将所述当前环境数据满足的至少一个条件组件确定为与所述当前环境数据匹配的至少一个条件组件。
6.一种确定人工智能行为的装置,其特征在于,所述装置包括: 接收模块,用于接收应用逻辑服务器发送的请求协议命令,所述请求协议命令携带应用程序标识、通知消息和当前环境数据; 查找模块,用于从预先设置的多个人工智能Al系统中查找所述应用程序标识对应的Al系统,并从所述应用程序标识对应的Al系统中查找与所述通知消息对应的归类组件,所述Al系统由预设的多个组件构成,所述预设的多个组件包括归类组件,所述归类组件挂载至少一个行为组件; 获取模块,用于从与所述通知消息对应的归类组件中获取与所述当前环境数据匹配的行为组件; 确定模块,用于根据获取到的与所述当前环境数据匹配的行为组件确定Al行为。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括: 封装模块,用于将实现特定功能的代码封装成实现特定功能的组件,所述组件包括选择组件、行为组件和条件组件; 设置模块,用于从所述组件中选择多组组件,并为每组组件设置用于管理组件的归类组件; 得到模块,用于将每组组件及管理每组组件的归类组件构成与一个应用程序对应的Al系统,得到多个应用程序对应的Al系统。
8.根据权利要求7所述的装置,其特征在于,所述设置模块设置的用于管理组件的归类组件挂载至少一个选择组件或至少一个条件组件,所述选择组件挂载至少一个行为组件,所述行为组件挂载至少一个条件组件。
9.根据权利要求6所述的装置,其特征在于,所述获取模块包括: 遍历单元,用于遍历与所述通知消息对应的归类组件挂载的多个条件组件; 确定单元,用于确定与所述当前环境数据匹配的至少一个条件组件; 激活单元,用于激活挂载所述与所述当前环境数据匹配的至少一个条件组件的至少一个行为组件; 选择单元,用于由挂载所述至少一个行为组件的选择组件按照预设的筛选规则从所述至少一个行为组件中选择与所述当前环境数据匹配的行为组件。
10.根据权利要求9所述的装置,其特征在于,所述接收模块还用于接收所述应用逻辑服务器同步的全部应用程序环境数据; 所述确定单元,用于在所述全部应用程序环境数据中查找所述多个条件组件中的至少一个条件组件对应的应用程序环境数据,并判断所述当前环境数据是否满足所述多个条件组件中的至少一个条件组件对应的应用程序环境数据; 如果所述当前环境数据满足所述多个条件组件中的至少一个条件组件对应的应用程序环境数据,则将所述当前环境数据满足的至少一个条件组件确定为与所述当前环境数据匹配的至少一个条件组件。
11.一种人工智能服务器,其特征在于,所述人工智能服务器包括确定人工智能行为的装置; 其中,所述确定人工智能行为的装置如权利要求6至10中任一项权利要求所述的装置。
【文档编号】G06F9/44GK104133666SQ201310632411
【公开日】2014年11月5日 申请日期:2013年11月29日 优先权日:2013年11月29日
【发明者】邱林辉, 王旭新, 姚建辉, 钟勇, 杨敏 申请人:腾讯科技(成都)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1