CN115814421A - 虚拟人行为自驱调度生成方法、装置、设备及存储介质 - Google Patents

虚拟人行为自驱调度生成方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115814421A
CN115814421A CN202310036149.4A CN202310036149A CN115814421A CN 115814421 A CN115814421 A CN 115814421A CN 202310036149 A CN202310036149 A CN 202310036149A CN 115814421 A CN115814421 A CN 115814421A
Authority
CN
China
Prior art keywords
behavior
virtual human
executed
execution
behaviors
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.)
Granted
Application number
CN202310036149.4A
Other languages
English (en)
Other versions
CN115814421B (zh
Inventor
徐亚军
刘晶杰
周力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Hongmian Xiaoice Technology Co Ltd
Original Assignee
Beijing Hongmian Xiaoice Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Hongmian Xiaoice Technology Co Ltd filed Critical Beijing Hongmian Xiaoice Technology Co Ltd
Priority to CN202310036149.4A priority Critical patent/CN115814421B/zh
Publication of CN115814421A publication Critical patent/CN115814421A/zh
Application granted granted Critical
Publication of CN115814421B publication Critical patent/CN115814421B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明提供一种虚拟人行为自驱调度生成方法、装置、设备及存储介质,涉及人工智能技术领域。该方法包括:配置虚拟人的多个行为生成器,并利用多个行为生成器监听虚拟人所处的外界环境;在虚拟人的行为生成器监听到外界环境的外界输入信号的情况下,根据外界输入信号生成多个对应的待执行行为,并根据外界输入信号生成对应的决策因子;根据决策因子,从待执行行为中确定执行行为,并执行执行行为,生成驱动虚拟人自驱调度的驱动数据;根据驱动数据,驱动虚拟人执行新的执行行为。通过本发明提供的实施例生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。

Description

虚拟人行为自驱调度生成方法、装置、设备及存储介质
技术领域
本发明涉及人工智能技术领域,尤其涉及一种虚拟人行为自驱调度生成方法、装置、设备及存储介质。
背景技术
虚拟世界作为新兴的科技领域,虚拟人是虚拟世界中的重要组成部分。随着人与人之间的沟通成本逐渐升高,虚拟人逐渐成为人类的“陪伴者”,能够满足人类的社交需求、情感需要。
现有技术中,已有的方法是按照传统游戏世界中非玩家角色的行为控制方式对虚拟人的行为进行控制,需要为角色预先设置设其行为及触发条件,即当用户的输入满足触发条件时,角色才能执行相应的预设行为。传统行为的控制方法只能按照有限的预设行为,为虚拟人生成行为调度,使得虚拟人在虚拟世界中的行为缺乏多样性和连续性。
不同于传统的游戏世界,虚拟世界中具有极高的自由度和内容的多样性,用户长时间沉浸在虚拟世界中,可以从不同的角度观察虚拟人的行为,长时间与虚拟人进行互动。但是传统的控制方法会使得虚拟人的行为呆滞,重复模式显著,最终导致用户失去与虚拟人互动的兴趣和意愿,降低对虚拟世界的体验及评价。
因此,如何更好地在虚拟环境中控制、驱动虚拟人的行为是目前亟待解决的技术问题。
发明内容
有鉴于此,本发明提供一种虚拟人行为自驱调度生成方法、装置、设备及存储介质,通过生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
第一方面,本发明提供一种虚拟人行为自驱调度生成方法,包括:
配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
优选地,根据本发明提供的一种虚拟人行为自驱调度生成方法,所述根据所述外界输入信号生成多个对应的待执行行为,包括:
获取与所述外界环境对应的环境参数,以及获取所述虚拟人的虚拟人状态;
将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述行为生成器,生成多个对应的所述待执行行为。
优选地,根据本发明提供的一种虚拟人行为自驱调度生成方法,所述根据所述外界输入信号生成对应的决策因子,包括:
将多个所述待执行行为输入待执行队列存储;
在监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子。
优选地,根据本发明提供的一种虚拟人行为自驱调度生成方法,所述根据所述决策因子,从所述待执行行为中确定执行行为,包括:
基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为。
优选地,根据本发明提供的一种虚拟人行为自驱调度生成方法,所述基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为,包括:
基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件;
将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为;
基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
优选地,根据本发明提供的一种虚拟人行为自驱调度生成方法,所述执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据,包括:
基于所述执行行为,确定与所述执行行为对应的执行指令;
将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为;
在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号;
基于所述行为状态变化信号,生成所述驱动数据。
第二方面,本发明还提供一种虚拟人行为自驱调度生成装置,包括:
配置模块,用于配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
生成模块,用于在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
执行模块,用于根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
驱动模块,用于根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述虚拟人行为自驱调度生成方法的步骤。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述虚拟人行为自驱调度生成方法的步骤。
第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述虚拟人行为自驱调度生成方法的步骤。
本发明提供的一种虚拟人行为自驱调度生成方法、装置、设备及存储介质,通过配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。通过生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的虚拟人行为自驱调度生成方法的流程示意图之一;
图2是本发明提供的虚拟人对话行为生成器的示意图;
图3是本发明提供的决策调度器的决策示意图;
图4是本发明提供的虚拟人行为状态变化示意图;
图5是本发明提供的虚拟人行为自驱调度生成方法的流程示意图之二;
图6是本发明提供的虚拟人行为自驱调度生成装置的结构示意图;
图7是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先对本申请中涉及的若干名词进行解析:
行为生成器:可以使用各种算法来生成虚拟人的多种待执行行为。这些算法,可以是一些规则、模式匹配算法,也可以使用决策树、深度神经网络等机器学习模型。
决策调度器:用于对待执行队列中的待执行行为进行决策、调度,以确定出执行行为,并去执行确定的执行行为,其也可以使用规则匹配、机器学习等算法来管理虚拟人的行为。
下面结合图1-图7描述本发明的虚拟人行为自驱调度生成方法、装置、设备及存储介质,其通过生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
如图1所示,其为本发明实施例提供的虚拟人行为自驱调度生成方法的实施流程示意图之一,虚拟人行为自驱调度生成方法可以包括但不限于步骤S100至S400。
S100,配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
S200,在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
S300,根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
S400,根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
在一些实施例的步骤S100中,配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境。
可以理解的是,一个虚拟人可能含有多个行为生成器,这些行为生成器,可以针对特定的输入信号生成不同类型的待执行行为,也可以根据不同的信号产生特定的待执行行为,或者根据不同的信号生成不同类型的待执行行为。
因此,服务器或计算机执行程序首先配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境,以根据外界环境的外界输入信号生成待执行行为。
更具体地为,配置虚拟人的各个行为生成器,以监听外界环境的外界输入信号。
行为生成器根据外界多模态信号、环境参数和虚拟人状态等输入,利用各种算法(如规则匹配、决策树等机器学习算法),生成虚拟人的多种待执行行为。行为生成器模拟了虚拟人对环境、外界信号的反应。例如当作曲家虚拟人收到一个用户请求(“请帮我谱曲”,外界语音信号输入),其谱曲行为生成器,则根据环境参数、虚拟人状态生成一个新的谱曲行为(该行为可具体描述为:立刻开始,持续10分钟谱写某段音频);或者拒绝该输入、不产生任何输出行为。
如图2所示,是本发明提供的虚拟人对话行为生成器的示意图,以对话行为生成器为示例,虚拟人的行为描述了虚拟人在某段时间的某个具体动作。例如:虚拟人小冰打算3秒之后说一句话“嘿,你好啊!”,整个动作持续时间5秒。
行为生成器可以使用各种计算机算法来生成虚拟人的多种行为。例如,对于对谈行为生成器,其实现过程为:
首先通过深度神经网络(Deep Nueral Network, DNN)模型对历史对话数据进行训练,生成对谈索引数据,用于回复对方的语料;再利用梯度提升树(Gradient BoostingDecision Tree, GBDT)对虚拟人的历史行为、用户反馈数据进行训练,得到一个决策回归树,用于判断是否回复对方。
在一些实施例的步骤S200中,在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子。
可以理解的是,在执行完步骤S100配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境的步骤之后,其具体执行步骤可以为:服务器在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,首先获取与所述外界环境对应的环境参数,以及获取所述虚拟人的虚拟人状态,并将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述行为生成器,生成多个对应的所述待执行行为。
服务器在此同时还将多个所述待执行行为输入待执行队列存储,在服务器监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子,以利用决策因子从待执行队列的待执行行为中确定出将要执行的执行行为。
在本发明的一些实施例中,外界环境的多模态外界输入信号,可以来自真实用户(如肢体动作、语音聊天、路上偶遇),也可以是其他事件(如天气开始下雨等)。这些输入可以是各种多媒体数据,如多媒体音频流(对谈)、文本数据(下雨,Json格式文本)、二进制数据(如Protobuf格式,挥手)等。虚拟人也是信号生成源之一,它的行为可能作为其他虚拟人的外界输入信号。例如,某个虚拟人“看见”其它的虚拟人,它可以向对方挥手问好(发送挥手信号到目标虚拟人)等。
在一些实施例的步骤S300中,根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据。
可以理解的是,在执行完步骤S200在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子的步骤之后,其具体执行步骤可以为:服务器首先基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件,再将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为,最后基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
在确定执行行为之后,服务器基于所述执行行为,确定与所述执行行为对应的执行指令,将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为,在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号,最后基于所述行为状态变化信号,生成所述驱动数据。
在一些实施例的步骤S400中,根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
可以理解的是,在执行完步骤S300根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据的步骤之后,其具体执行步骤可以为:服务器根据步骤S300生成的驱动数据,驱动虚拟人自主执行新的执行行为,从而使虚拟人在不需外界信号触发条件下,也可不断持续活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
在本发明的一些实施例中,所述根据所述外界输入信号生成多个对应的待执行行为,包括:
获取与所述外界环境对应的环境参数,以及获取所述虚拟人的虚拟人状态;
将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述行为生成器,生成多个对应的所述待执行行为。
可以理解的是,外界输入信号可以为音频信号、文本信号等。
外界输入信号可以为真实用户的输入信号,如语音问候;也可以为其他虚拟人产生的信号,如对方请求和你一起祈祷;也可以为周围环境事件,如天气由晴朗变成下雨等事件信号。
需要说明的是,当前虚拟人的行为变化等信号,不仅需要发送到当前虚拟人,也需要发送到周围其它的虚拟人。
进一步需要说明的是,环境参数包括虚拟世界的时间、天气、周边建筑等各种数据。
虚拟人状态包含虚拟人当前的行为、心情、身份等信息。
在一些实施例中,一旦监听到外界输入信号,这些外界输入信号会立刻发送到各个行为生成器,行为生成器还需要读取环境参数、虚拟人状态数据,行为生成器根据外界输入信号、环境参数、虚拟人状态等生成虚拟人的各种待执行行为。
行为生成器生成的待执行行为,会发送到虚拟人的待执行队列(PlanQueue)中。这些待执行行为并未执行,等待决策调度器来判断、调度执行。
在本发明的一些实施例中,所述根据所述外界输入信号生成对应的决策因子,包括:
将多个所述待执行行为输入待执行队列存储;
在监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子。
可以理解的是,将多个所述待执行行为输入待执行队列存储,服务器在监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子,以利用决策因子对待执行队列中的待执行行为进行判断、调度执行。
在本发明的一些实施例中,所述根据所述决策因子,从所述待执行行为中确定执行行为,包括:
基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为。
可以理解的是,其具体执行步骤可以为:服务器基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件,再将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为,最后基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
在本发明的一些实施例中,所述基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为,包括:
基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件;
将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为;
基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
可以理解的是,行为生成器生成的待执行行为,可能是一个细微的动作,如手部动作(挥手)、面部动作(说话)、肢体动作(走路)等,也可能是一个较复杂的动作(如唱歌,需要手和面部配合)。这些动作有些互相兼容,可以组合、同时执行,如虚拟人一边挥手、一边走路;有些动作互相冲突,需要决策调度器基于决策因子进行判断、协调,如执行对话、终止唱歌行为。
决策调度器会根据环境参数、虚拟人状态等决策因子,对待执行队列(PlanQueue)中的各个待执行行为进行决策。如果某些待执行行为可以被执行,则执行这些待执行行为;否则暂停执行,或终止、删除对应的待执行行为。
决策调度器可以通过监听待执行队列(PlanQueue)和执行队列(DoingQueue)的变化,或由定时器定时触发(如每20毫秒触发一次),来保证决策调度器被不断地执行,以驱动虚拟人不间断地活动。
如图3所示是本发明提供的决策调度器的决策示意图,决策调度器根据环境参数和虚拟人状态等决策因子,判断是否需要执行待执行队列(PlanQueue)中的各个待执行行为。如果是,则将这些待执行行为从待执行队列(PlanQueue)中取出,发送到执行队列(DoingQueue)中,并执行它们。
虚拟人的多个执行行为,可能互相兼容,同时执行;也可能因互相冲突而选择其中一个进行执行、暂停其他行为。例如,对于一个作曲家角色的虚拟人,行为生成器可能同时生成谱曲、唱歌、交谈、走路、休息等行为。这些行为中,唱歌、走路两个行为互相兼容,可以被组合起来同时执行;而唱歌、交谈行为会互相冲突,同一时间只能执行其中一个行为,如执行交谈、丢弃唱歌行为。
决策调度器模拟了虚拟人对行为的思考、决策,判断待执行队列(PlanQueue)中的行为是否调度、如何执行。具体逻辑如下:
若待执行队列(PlanQueue)中的某个行为A的执行条件不满足,则本次忽略A的调度执行。
否则若行为A与待执行队列(PlanQueue)的其他行为、以及DoingQueue中所有行为都不存在冲突,则执行A。
否则若行为A优先级较低,则本次忽略A的调度执行,或丢弃、终止它,否则执行A。若待执行队列(PlanQueue)中某些行为与A冲突,则本次忽略它们的调度执行;若执行队列(DoingQueue)中某些行为与A冲突,则中断它们的执行(变成暂停状态,并发送到待执行队列(PlanQueue)中),或终止它们(变成终止状态,并从执行队列(DoingQueue)中删除)。
在本发明的一些实施例中,决策调度器的每个判断逻辑,可以使用规则匹配或机器学习算法。例如使用规则匹配算法:如果虚拟人正在唱歌,允许交谈行为并暂停唱歌。如果正在唱歌,不允许执行闲逛。如果虚拟人没有其任何行为,则允许闲逛。以及其他各种规则。
因此如果虚拟人收到交谈的新行为,它会暂停唱歌,执行交谈;交谈结束后继续唱歌(如果没有其它高优先级行为),即使收到新的行为闲逛;最终唱完歌进行闲逛活动。
在本发明的一些实施例中,所述执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据,包括:
基于所述执行行为,确定与所述执行行为对应的执行指令;
将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为;
在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号;
基于所述行为状态变化信号,生成所述驱动数据。
可以理解的是,服务器基于执行行为,确定与所述执行行为对应的执行指令,将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为,在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号,基于所述行为状态变化信号,生成所述驱动数据。
如图4所示是本发明提供的虚拟人行为状态变化示意图,虚拟人的每个行为,都会经历如下过程:
(1)行为生成器生成的行为发送到待执行队列(PlanQueue)中,此时行为状态为“待执行”;
(2)决策调度器调度若执行该行为,那么该行为发送到DoingQueue中,行为状态变成“执行”;若认为应该丢弃,则直接终止它,行为状态变成“终止”;
(3)行为在执行期间若被更高优先级的行为中断,则状态变为“暂停”,或被终止、丢弃(状态变为“终止”);若行为正常执行结束,则状态变成“结束”。
“暂停”状态表明行为在执行期间被中断运行,“暂停”的行为可能在将来重新运行,也可能被终止、丢弃。
“结束”状态表明行为被正常执行完毕。“终止”状态表明行为非正常结束,可能未执行就被终止,也可能执行了一部分被强行终止。“终止”状态的行为不会被再次调度执行。
在本发明的一些实施例中,行为生成器、决策调度器监听着虚拟人的行为状态变化
行为生成器除了监听外界环境的外界输入信号,也同样监听虚拟人的行为状态变化事件。如果虚拟人的某些行为状态发生改变(如执行结束),会生成一个行为状态变化信号,并像外界输入信号一样,发送到行为生成器,驱动行为生成器生成新的行为(或忽略该信号,没有新行为输出)。
例如虚拟人对谈行为结束,会发送该信号到当前虚拟人的行为生成器,行为生成器可能会生成一个挥手告别的行为,经过决策调度器判断(认为该行为优先级高,允许执行),虚拟人执行这个挥手告别的行为。执行完之后,可能会触发生成另一个新行为(如回家),从而驱动虚拟人不停地活动。
决策调度器也同样监听虚拟人的行为状态变化,并可能对待执行队列(PlanQueue)中的行为进行决策。例如,虚拟人的交谈行为结束,这个状态变化会触发决策调度器检查待执行队列(PlanQueue),发现有一个暂停的唱歌行为(此前被优先级更高的交谈行为打断)。决策调度器认为唱歌行为可以被恢复执行(忽略被触发生成的低优先级行为:回家),于是虚拟人会继续进行之前的唱歌活动(从中断除开始,而非重新开始)。
如图5所示,是本发明提供的虚拟人行为自驱调度生成方法的流程示意图之二,在虚拟人自驱行为生成调度方法流程图中,多个行为生成器监听外界输入信号(含虚拟人状态变化信号)。一旦有信号输入,这些行为生成器根据环境参数、虚拟人状态等数据,生成新的待执行行为(或者没有输出,不生成新行为)。例如,周边环境有虚拟人、用户朝你打招呼(挥手、说话等),或者天气由白天变成黄昏等。这些事件都可以是外界的输入信号(音频、文本等数据格式),经行为生成器,可以生成虚拟人告别、回家等行为。
行为生成器生成的行为都是等待执行的待执行行为,将这些待执行行为发送到待执行队列(PlanQueue)中,等待决策调度器的决策、调度。
决策调度器不断地检查待执行队列(PlanQueue)中的各个待执行行为,判断它们是否可以被执行;若可以执行则把它们发送到执行队列(DoingQueue)中,并把执行队列(DoingQueue)中被暂停的行为,移到待执行队列(PlanQueue)。执行队列(DoingQueue)中被打断终止、执行结束的行为,从执行队列(DoingQueue)移除(可能会存储在虚拟人历史行为中)。
例如,决策调度器发现执行队列(DoingQueue)中有2个行为:回复、唱歌,且虚拟人当前正在闲逛。那么决策调度器可能判定“回复行为的优先级比较高,故打断当前的行为(闲逛)并终止它,执行行为为“回复”行为。唱歌行为被暂停执行,直到回复行为执行结束。
同时这些行为变化(闲逛终止、回复开始执行),会作为一个输入信号发送到行为生成器中,可能会生成其他新的行为,经过虚拟人的思考(决策调度器)来选择新行为并执行。
结束、终止的行为,会被记录到虚拟人状态中(历史行为),以辅助行为生成器、决策调度器进行判断、处理。例如,一个刚刚唱歌的虚拟人,大概率不会在短时间内再次唱歌。
在本发明的一些实施例中,至少具有以下技术效果:行为生成器可支持音频、文本等多模态输入信号;多个生成器可以生成多个不同的行为,这些行为可以互相兼容、排斥;决策调度器可以组合行为、并行执行,支持选择性执行部分行为;即使没有外界输入,行为生成器也可以根据虚拟人行为状态变化,不停地生成新行为,经决策调度器调度、执行新行为,进而驱动虚拟人不断地活动;行为可以被部分暂停、终止、恢复执行,决策调度器可以灵活地控制行为状态。
本发明使得虚拟世界中的虚拟人,可以根据外界信号、环境参数以及虚拟人状态等各种输入,持续地生成多个行为。这些行为可以进行组合,或被并行执行,或更新当前行为,从而驱动虚拟人进行丰富、多样的活动。同时虚拟人行为可以在执行中被暂停、恢复执行,或直接终止结束,这让虚拟人的行为更加灵活、逼真,甚至可以让用户无法分清虚拟人与真实用户。由于多模态信号的支持,用户可以通过语音对话、肢体动作等多种简单、便捷的交互方式与虚拟人进行互动。这些都让整个虚拟世界更加真实、有趣,进而激发用户的兴趣,使之更愿意加入到虚拟环境中进行体验,并可与虚拟人进行交流和互动,将虚拟人当成用户的虚拟伙伴和朋友。
本发明提供的一种虚拟人行为自驱调度生成方法、装置、设备及存储介质,通过配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。通过生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
下面对本发明提供的虚拟人行为自驱调度生成装置进行描述,下文描述的虚拟人行为自驱调度生成装置与上文描述的虚拟人行为自驱调度生成方法可相互对应参照。
如图6所示是本发明提供的虚拟人行为自驱调度生成装置的结构示意图,一种虚拟人行为自驱调度生成装置,包括:
配置模块610,用于配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
生成模块620,用于在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
执行模块630,用于根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
驱动模块640,用于根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
优选地,根据本发明提供的虚拟人行为自驱调度生成装置,生成模块620,用于获取与所述外界环境对应的环境参数,以及获取所述虚拟人的虚拟人状态;
将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述行为生成器,生成多个对应的所述待执行行为。
优选地,根据本发明提供的虚拟人行为自驱调度生成装置,生成模块620,用于将多个所述待执行行为输入待执行队列存储;
在监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子。
优选地,根据本发明提供的虚拟人行为自驱调度生成装置,执行模块630,用于基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为。
优选地,根据本发明提供的虚拟人行为自驱调度生成装置,执行模块630,用于基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件;
将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为;
基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
优选地,根据本发明提供的虚拟人行为自驱调度生成装置,执行模块630,用于基于所述执行行为,确定与所述执行行为对应的执行指令;
将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为;
在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号;
基于所述行为状态变化信号,生成所述驱动数据。
本发明提供的一种虚拟人行为自驱调度生成方法、装置、设备及存储介质,通过配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。通过生成驱动数据驱动虚拟人持续的执行新的执行行为进行活动,进而使虚拟人的行为更加灵活、逼真,大大地提高用户的体验感。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行虚拟人行为自驱调度生成方法,该方法包括:配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的虚拟人行为自驱调度生成方法,该方法包括:配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的虚拟人行为自驱调度生成方法,该方法包括:配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种虚拟人行为自驱调度生成方法,其特征在于,包括:
配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
2.根据权利要求1所述的虚拟人行为自驱调度生成方法,其特征在于,
所述根据所述外界输入信号生成多个对应的待执行行为,包括:
获取与所述外界环境对应的环境参数,以及获取所述虚拟人的虚拟人状态;
将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述行为生成器,生成多个对应的所述待执行行为。
3.根据权利要求2所述的虚拟人行为自驱调度生成方法,其特征在于,
所述根据所述外界输入信号生成对应的决策因子,包括:
将多个所述待执行行为输入待执行队列存储;
在监测到所述待执行队列中存有至少一个所述待执行行为的情况下,将所述外界输入信号、所述环境参数和所述虚拟人状态输入所述虚拟人的决策调度器中,生成所述决策因子。
4.根据权利要求3所述的虚拟人行为自驱调度生成方法,其特征在于,
所述根据所述决策因子,从所述待执行行为中确定执行行为,包括:
基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为。
5.根据权利要求4所述的虚拟人行为自驱调度生成方法,其特征在于,
所述基于所述决策调度器和所述决策因子,对所述待执行队列中的多个所述待执行行为进行决策,确定出至少一个执行行为,包括:
基于所述决策因子,确定所述待执行队列中的多个待执行行为所对应的执行条件;
将所述执行条件和预设条件阈值进行比较处理,确定所述执行条件达到所述预设条件阈值的所述待执行行为;
基于所述决策调度器,对所述执行条件达到所述预设条件阈值的所述待执行行为,分别依次进行行为冲突判断和优先级比较处理,确定出未与其他所述待执行行为有行为冲突,且优先级最高的所述待执行行为作为所述执行行为。
6.根据权利要求4所述的虚拟人行为自驱调度生成方法,其特征在于,
所述执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据,包括:
基于所述执行行为,确定与所述执行行为对应的执行指令;
将至少一个所述执行行为输入执行队列存储,并根据所述执行指令执行所述执行队列中的至少一个所述执行行为;
在所述虚拟人执行完对应的所述执行行为的情况下,生成与所述虚拟人对应的行为状态变化信号;
基于所述行为状态变化信号,生成所述驱动数据。
7.一种虚拟人行为自驱调度生成装置,其特征在于,包括:
配置模块,用于配置虚拟人的多个行为生成器,并利用多个所述行为生成器监听所述虚拟人所处的外界环境;
生成模块,用于在所述虚拟人的所述行为生成器监听到所述外界环境的外界输入信号的情况下,根据所述外界输入信号生成多个对应的待执行行为,并根据所述外界输入信号生成对应的决策因子;
执行模块,用于根据所述决策因子,从所述待执行行为中确定执行行为,并执行所述执行行为,生成驱动所述虚拟人自驱调度的驱动数据;
驱动模块,用于根据所述驱动数据,驱动所述虚拟人执行新的执行行为。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述虚拟人行为自驱调度生成方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述虚拟人行为自驱调度生成方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述虚拟人行为自驱调度生成方法的步骤。
CN202310036149.4A 2023-01-10 2023-01-10 虚拟人行为自驱调度生成方法、装置、设备及存储介质 Active CN115814421B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310036149.4A CN115814421B (zh) 2023-01-10 2023-01-10 虚拟人行为自驱调度生成方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310036149.4A CN115814421B (zh) 2023-01-10 2023-01-10 虚拟人行为自驱调度生成方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN115814421A true CN115814421A (zh) 2023-03-21
CN115814421B CN115814421B (zh) 2023-10-27

Family

ID=85520583

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310036149.4A Active CN115814421B (zh) 2023-01-10 2023-01-10 虚拟人行为自驱调度生成方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115814421B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130179139A1 (en) * 2012-01-05 2013-07-11 Yi-Ming Chiu Method for applying virtual person and portable electronic device for use with the method
CN106940594A (zh) * 2017-02-28 2017-07-11 深圳信息职业技术学院 一种虚拟人及其运行方法
CN107765852A (zh) * 2017-10-11 2018-03-06 北京光年无限科技有限公司 基于虚拟人的多模态交互处理方法及系统
CN111063024A (zh) * 2019-12-11 2020-04-24 腾讯科技(深圳)有限公司 三维虚拟人驱动方法、装置、电子设备及存储介质
WO2022048403A1 (zh) * 2020-09-01 2022-03-10 魔珐(上海)信息科技有限公司 基于虚拟角色的多模态交互方法、装置及系统、存储介质、终端
CN115356953A (zh) * 2022-10-21 2022-11-18 北京红棉小冰科技有限公司 虚拟机器人决策方法、系统和电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130179139A1 (en) * 2012-01-05 2013-07-11 Yi-Ming Chiu Method for applying virtual person and portable electronic device for use with the method
CN106940594A (zh) * 2017-02-28 2017-07-11 深圳信息职业技术学院 一种虚拟人及其运行方法
CN107765852A (zh) * 2017-10-11 2018-03-06 北京光年无限科技有限公司 基于虚拟人的多模态交互处理方法及系统
CN111063024A (zh) * 2019-12-11 2020-04-24 腾讯科技(深圳)有限公司 三维虚拟人驱动方法、装置、电子设备及存储介质
WO2022048403A1 (zh) * 2020-09-01 2022-03-10 魔珐(上海)信息科技有限公司 基于虚拟角色的多模态交互方法、装置及系统、存储介质、终端
CN115356953A (zh) * 2022-10-21 2022-11-18 北京红棉小冰科技有限公司 虚拟机器人决策方法、系统和电子设备

Also Published As

Publication number Publication date
CN115814421B (zh) 2023-10-27

Similar Documents

Publication Publication Date Title
US20220020360A1 (en) System and method for dialogue management
US11222632B2 (en) System and method for intelligent initiation of a man-machine dialogue based on multi-modal sensory inputs
US20190206402A1 (en) System and Method for Artificial Intelligence Driven Automated Companion
CN106205612B (zh) 面向智能机器人的信息处理方法及系统
US11468885B2 (en) System and method for conversational agent via adaptive caching of dialogue tree
US11003860B2 (en) System and method for learning preferences in dialogue personalization
US11504856B2 (en) System and method for selective animatronic peripheral response for human machine dialogue
US20190206407A1 (en) System and method for personalizing dialogue based on user's appearances
US10239202B1 (en) Robot interaction system and method
US10994421B2 (en) System and method for dynamic robot profile configurations based on user interactions
US10880192B1 (en) Interactive agents for user engagement in an interactive environment
CN112204654A (zh) 用于基于预测的先发式对话内容生成的系统和方法
WO2021003471A1 (en) System and method for adaptive dialogue management across real and augmented reality
EP3756188A1 (en) System and method for dynamic robot configuration for enhanced digital experiences
WO2019133680A1 (en) System and method for detecting physical proximity between devices
CN106774845A (zh) 一种智能交互方法、装置及终端设备
Bogdanovych et al. Formalising believability and building believable virtual agents
CN115814421B (zh) 虚拟人行为自驱调度生成方法、装置、设备及存储介质
CN108197189A (zh) 主动交互方法及装置
CN111659106B (zh) 游戏交互方法、装置、设备及存储介质
Patel et al. A guided performance interface for augmenting social experiences with an interactive animatronic character
CN115738281A (zh) 一种自动组队的方法及装置
CN118170882A (zh) 基于虚拟角色的对话方法、装置、设备和存储介质
JP2004195636A (ja) 対話制御装置及び方法並びにロボット装置

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
GR01 Patent grant
GR01 Patent grant