论文部分内容阅读
随着计算机图形学、人机交互和虚拟现实技术的不断发展,虚拟人任务级行为分解规划方法在虚拟维修以及智能人机交互等方面的应用日益广泛,成为诸多研究领域关注的基本问题。近年来,随着应用要求和计算机交互性能的提升,人们希望能够用直观简单的方法控制虚拟人,将他们当作有思考和行为能力的自然人一样对待,因此控制指令越来越接近于自然语言层次。这种级别的指令控制在为交互带来便利的同时,也为虚拟人任务识别和分解带来一定困难。这主要是因为当前对虚拟人技术的研究程度还不足以做到充分智能化,不能支持虚拟人从不同粒度识别和解决问题。因此,通常的任务分解方法在高层指令控制面前表现出较大的局限性。
在虚拟维修模拟中,维修任务的分解和执行正面临着这样的问题。虚拟维修中一项维修任务往往由众多操作步骤组合;其面向的虚拟样机大多为大型复杂装备,这样复杂的静态场景也会对任务的完成产生极大影响;同时,作为行为主体的虚拟人,不仅需要保证其模型展示的逼真性,而且要在行为模式上也尽量逼真,尤其在实现任务的识别和分解过程时,需要有完善的处理机制保证其对任务的理解正确,并能对环境产生合适的交互行为。上述要求都为研究任务分解算法带来很大的挑战。
本文从面向虚拟维修的已有应用系统出发,围绕上述问题展开研究。论文提出了虚拟人任务分解的一种逻辑推理框架,从环境信息表示、任务和运动建模等方面深入研究了相应的任务分解技术,较好地弥补了现有方法中的逻辑推力缺失。具体来说,论文的主要贡献体现在以下几个方面:
●提出一种基于情景演算的任务分解逻辑推理框架。
任务分解事实上也是一种问题求解的过程。从某个特定的问题状态出发,寻求一系列行为动作,为虚拟人建立一个相应操作序列,直到求得任务的目标状态为止。与一般的问题求解相比,虚拟维修兼具推理过程的不确定性和推理结果的确定性这两个特点。本文结合上述两个特点,提出一种基于因子推演(factored planning)的任务分解方法,自动将较为复杂的规划域分割为相互之间耦合性较低的子规划域进行处理,子规划结果通过域间信息流整合为全局规划结果。该方法旨在弥补前人工作中对于推理逻辑的缺失,进一步强化虚拟人自主决策的能力;同时希望针对该应用领域的方法研究可以为将来向其他应用领域推广提供有益的经验。
●提出一种面向虚拟维修的任务和动作组织方法。
虚拟维修仿真最终展现出来的应该是以人体运动为核心的维修活动的模拟,主要涉及分解、更换、结合等维修活动。本文针对普遍意义上的维修活动将维修过程分为“移动”和“操作”两段,在每个基本任务单元中将此两个阶段统一表达。此外,按照任务的复杂性和任务相关语义的抽象程度将相关数据库分为两层。“任务”层表示与通用语义相关的描述,“运动”层表示与任务无关、包含动作执行详细参数的运动模型。基于上述分段仿真和分层设计思想,我们设计了一种面向虚拟维修的高层任务和底层动作知识表达方法,有效地将任务和运动信息统一组织,进而便于将复杂的维修任务描述转化为易于理解和仿真的人体基本运动。
●实现了一种便于推理的可识别环境表示和构建方法。
在虚拟现实模拟中,环境信息能被虚拟人方便准确地获取和理解,是进行模拟的基础。不论虚拟人在环境中进行简单的位移方式判断,还是复杂的任务分解选择,都需要依赖从环境中获取的信息。因而要求对环境数据的识别和组织要以应用为导向,选择那些对推理有效的环境属性,并对其进行合理有效的表达,使得这些含糊、不可识别的信息转换为模拟中可识别的环境,并对可识别环境中的数据进行统一组织管理。针对这一问题,我们在Smart Object环境定义方式的基础上,结合虚拟人行为逼真性、对智能性任务识别和分解行为的支持性等需要,对环境定义方式进行了应用性改良。为了便于大型场景建立,我们采用基于环境脚本文件的生成方法,通过将这些不可识别的环境转化为脚本文件,再通过脚本解释器及环境解释库的使用从脚本文件生成可识别环境。这种方法不但可以很好地生成可识别环境,还使环境易于重用和修改。