针对智能服务系统实现编程化设计场景的方法和系统与流程

文档序号:17694785发布日期:2019-05-17 21:23阅读:175来源:国知局
针对智能服务系统实现编程化设计场景的方法和系统与流程

本发明涉及智能场景设计领域,尤其涉及编程化智能场景设计领域,具体是指一种针对智能服务系统实现编程化设计场景的方法和系统。



背景技术:

大量现有的智能服务系统,其在产品设计时未能以可视化的场景表达需求,或者,产品设计团队未能以表达了需求的快捷原型与产品实现团队高效沟通,增加了产品设计团队与产品实现团队之间的沟通成本,场景设计时切换不流畅,不能鲜明体现任务需求。



技术实现要素:

本发明的目的是克服了上述现有技术的缺点,提供了一种运行流畅、操作简便、适用范围较为广泛的针对智能服务系统实现编程化设计场景的方法和系统。

为了实现上述目的,本发明的针对智能服务系统实现编程化设计场景的方法和系统如下:

本发明的针对智能服务系统实现编程化设计场景的方法,其主要特点是,所述的方法包括以下步骤:

(1)新建或打开现有的场景设计文件;

(2)通过建模为编程块的场景建模要素和事件模拟器进行场景设计;

(3)运行和评估所述的设计后的场景,判断是否要修改迭代,如果是,则继续步骤(2);否则,保存场景设计结果,退出步骤。

较佳地,所述的步骤(2)具体包括以下步骤:

(2.1)枚举智能服务系统的事件和任务;

(2.2)为智能服务系统划分子场景,并设置其关注的事件及处理逻辑;

(2.3)定制事件的处理逻辑,并设置默认子场景。

较佳地,所述的步骤(2.1)具体包括以下步骤:

(2.1.1)枚举智能服务系统的伺服目标、部署地点和服务时间段,并将其转化为事件;

(2.1.2)枚举智能服务系统的其余相关事件;

(2.1.3)枚举智能服务系统提供的具体服务,并将其转化为任务。

较佳地,所述的步骤(2.2)具体包括以下步骤:

(2.2.1)根据智能服务系统的地点信息将智能服务系统的整体场景划分为子场景;

(2.2.2)设置子场景关注的事件及其处理逻辑。

较佳地,所述的步骤(2.3)具体包括以下步骤:

(2.3.1)定制所述的事件在受关注场景下的处理逻辑,并将任务在其中调度和控制;

(2.3.2)为包含子场景的场景设置默认的子场景。

较佳地,所述的步骤(2.1)中智能服务系统的事件和任务由系统预先设置。

较佳地,所述的步骤(2.1.2)中的其余相关事件包括智能服务系统本体的事件、智能服务系统关注的与之通信的设备和系统相关的事件。

较佳地,所述的步骤(2.2.1)中的智能服务系统的地点信息包括智能服务系统所处的地点、服务时间、提供的具体服务和伺服目标。

较佳地,所述的步骤(3)中通过场景设计工程文件保存场景设计结果。

较佳地,所述的步骤(3)中通过网络保存场景设计结果。

较佳地,所述的步骤(3)中通过终端本地保存场景设计结果。

较佳地,所述的步骤(3)中通过将场景设计结果转换为编程语言代码保存场景设计结果。

本发明的基于上述方法针对智能服务系统实现编程化设计场景的系统,其主要特点是,所述的系统包括:

主控制器模块,用于控制系统各项功能;

场景要素工具箱模块,与所述的主控制器模块相连接,用于提供定义场景需要的相关编程块,并提供编程块支持;

编程块装配间模块,与所述的场景要素工具箱模块相连接,用于装配所述的编程块;

运行器模块,与所述的主控制器模块相连接,用于渲染已解析的场景设计工程文件,控制并呈现模拟场景或实际运行场景;

事件通信收发及存储模块,与所述的主控制器模块相连接,用于进行事件间的数据传输和存储;

事件模拟生成器模块,与所述的主控制器模块相连接,用于模拟生成指定的事件;

序列化和反序列化模块,与所述的主控制器模块相连接,用于生成或解析为场景设计工程文件。

较佳地,所述的系统还包括场景素材制作工具箱模块,与所述的主控制器模块相连接,用于扩展系统的功能模块。

较佳地,所述的系统还包括代码生成模块,与所述的主控制器模块相连接,用于将场景设计工程文件的内容转换为编程语言代码。

采用了该针对智能服务系统实现编程化设计场景的方法和系统,将场景相关的各要素,如地点、时刻、人物、事件、任务,建模为编程块,功能上和/或形式上可能类似于scratch中的block,通过简单的拖拽和点击等操作,即可快速完成智能系统的原型场景设计,配合事件模拟器,场景可以执行,并可在此基础上进行迭代,本发明使得可以非常快捷地以原型的方式来定义软件产品,而原型可以自然地作为后续实现的基础,这样可以极大地减少产品设计团队与产品实现团队之间的沟通成本;而场景任务式的设计,可能使得场景自然而流畅地切换,从而使得系统提供服务时鲜明地体现其智能化和人性化。

附图说明

图1为本发明的针对智能服务系统实现编程化设计场景的方法的流程图。

图2为本发明的针对智能服务系统实现编程化设计场景的方法的实施例的流程图。

具体实施方式

为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。

本发明的针对智能服务系统实现编程化设计场景的方法,其中包括以下步骤:

(1)新建或打开现有的场景设计文件;

(2)通过建模为编程块的场景建模要素和事件模拟器进行场景设计;

(3)运行和评估所述的设计后的场景,判断是否要修改迭代,如果是,则继续步骤(2);否则,保存场景设计结果,退出步骤。

较佳地,所述的步骤(2)具体包括以下步骤:

(2.1)枚举智能服务系统的事件和任务;

(2.1.1)枚举智能服务系统的伺服目标、部署地点和服务时间段,并将其转化为事件;

(2.1.2)枚举智能服务系统的其余相关事件;

(2.1.3)枚举智能服务系统提供的具体服务,并将其转化为任务;

(2.2)为智能服务系统划分子场景,并设置其关注的事件及处理逻辑;

(2.2.1)根据智能服务系统的地点信息将智能服务系统的整体场景划分为子场景;

(2.2.2)设置子场景关注的事件及其处理逻辑;

(2.3)定制事件的处理逻辑,并设置默认子场景;

(2.3.1)定制所述的事件在受关注场景下的处理逻辑,并将任务在其中调度和控制;

(2.3.2)为包含子场景的场景设置默认的子场景;

作为本发明的优选实施方式,所述的步骤(2.1)中智能服务系统的事件和任务由系统预先设置。

作为本发明的优选实施方式,所述的步骤(2.1.2)中的其余相关事件包括智能服务系统本体的事件、智能服务系统关注的与之通信的设备和系统相关的事件。

作为本发明的优选实施方式,所述的步骤(2.2.1)中的智能服务系统的地点信息包括智能服务系统所处的地点、服务时间、提供的具体服务和伺服目标。

作为本发明的优选实施方式,所述的步骤(3)中通过场景设计工程文件保存场景设计结果。

作为本发明的优选实施方式,所述的步骤(3)中通过网络保存场景设计结果。

作为本发明的优选实施方式,所述的步骤(3)中通过终端本地保存场景设计结果。

作为本发明的优选实施方式,所述的步骤(3)中通过将场景设计结果转换为编程语言代码保存场景设计结果。

本发明的基于上述方法针对智能服务系统实现编程化设计场景的系统,其主要特点是,所述的系统包括:

主控制器模块,用于控制系统各项功能;

场景要素工具箱模块,与所述的主控制器模块相连接,用于提供定义场景需要的相关编程块,并提供编程块支持;

编程块装配间模块,与所述的场景要素工具箱模块相连接,用于装配所述的编程块;

运行器模块,与所述的主控制器模块相连接,用于渲染已解析的场景设计工程文件,控制并呈现模拟场景或实际运行场景;

事件通信收发及存储模块,与所述的主控制器模块相连接,用于进行事件间的数据传输和存储;

事件模拟生成器模块,与所述的主控制器模块相连接,用于模拟生成指定的事件;

序列化和反序列化模块,与所述的主控制器模块相连接,用于生成或解析为场景设计工程文件。

作为本发明的优选实施方式,所述的系统还包括场景素材制作工具箱模块,与所述的主控制器模块相连接,用于扩展系统的功能模块。

作为本发明的优选实施方式,所述的系统还包括代码生成模块,与所述的主控制器模块相连接,用于将场景设计工程文件的内容转换为编程语言代码。

本发明的具体实施方式中,一般地,一个智能服务系统部署在某个或某些地点,在某个或某些时间段内,为其预设的伺服目标提供合规的业务服务,伺服目标可能是某些人和/或物;而为了维持系统自身的运转,通常也要提供一些非业务服务,如初始化和维护之类。

本发明中包含以下定义。

1、场景及其层次和切换

场景是名称、入口条件集合、受关注事件的集合、对受关注事件的响应即事件处理逻辑的集合形成的四元组。同一个系统中的不同场景,其名称不能相同、其入口条件集合不能完全相同。

入口条件集合通常实现为一些布尔类型的并运算。

事件包含名称、时间戳及关注的必要数据。

事件处理逻辑通常实现为函数。

场景有其层次并可能被切分从而形成一个树形结构。一个智能服务系统的整体场景(这里记为s0),其层次定义为0;s0通常可以被切分为多个场景。如果场景si被切分为入口条件更严格的n个场景sij,j=1,2,...,n,那么称sij为si的子场景,si为sij的父场景,此时需要指定一个子场景为默认的。若某场景的层次为l,那么其各子场景的层次均为l+1。

假定智能服务系统当前所处场景为sc,如果当前发生的事件在其处理逻辑过滤后满足某个场景sn的入口条件,那么智能服务系统将会切换到sn。

2、任务

任务是为指定的伺服目标提供的具体服务。

一个智能服务系统通常有多个任务,一个任务可能被若干个事件处理逻辑调度和控制;有时,几个任务之间,可能串行或并行执行,可能要进行同步或互斥等通信。任务可以实现为线程或进程等形式。

例如本技术方案的实施例中,部署在教室里的某个教学机器人系统,其伺服目标是教师和学生,其任务是下载课件、呈现课件、回答学生的提问、向学生提问并做评价、控制教室里的相关设备或系统等。其整体场景可能切分为初始化、正常工作、异常处理、维护这4个层次为1的场景;正常工作场景可能切分为课内、课外这2个层次为2的场景;课内场景可能切分为执行课件中、非执行课件中这2个层次为3的场景;如图2所示。

本发明的针对智能服务系统实现编程化设计场景的方法,其中,包括以下步骤:

1、新建或打开既有的场景设计。

2、定义与伺服目标(角色及其言语和/或行为)、部署地点、服务时间段相关的事件。可以通过增删改,迭代完善。具体来说,枚举智能服务系统的伺服目标、部署地点、服务时间段,将其转化为事件,如:检测到系统位于%1、已触发了%1的定时、检测到基本属性为%1角色为%2的人/物到来、检测到基本属性为%1角色为%2的人/物离去、检测到基本属性为%1角色为%2的人/物的%3言语、检测到基本属性为%1角色为%2的人/物的%3行为,这里的%n,n=1,2,3...是事件的参数。如果事件没有在场景要素工具箱组件中预定义,那么需要自定义。

3、定义其他事件。可以通过增删改,迭代完善。具体来说,枚举智能服务系统的其他事件,如智能服务系统本体的事件、智能服务系统关注的与之通信的设备或系统相关的事件。如果事件没有在场景要素工具箱组件中预定义,那么需要自定义。

4、定义任务。可以通过增删改,迭代完善。具体来说,枚举智能服务系统提供的具体服务,将其转化为任务。如果任务没有在场景要素工具箱组件中预定义,那么需要自定义。

5、定义场景。可以通过增删改,迭代完善。具体来说,根据智能服务系统所处的地点、服务时间、提供的具体服务、伺服目标等中的若干项,划分智能服务系统的整体场景为若干子场景:指定场景的名称和入口条件。

6、为各场景设置其关注的事件及其处理逻辑。可以通过增删改,迭代完善。默认生成的事件处理逻辑,其内容默认为空,其名称可以根据一定的规则默认生成,如“on某具体事件名in某具体场景名”,支持修改。

7、定制事件在受关注场景下的处理逻辑,任务将在其中被调度和控制。可以通过增删改,迭代完善。

8、为有子场景的场景设置默认的子场景。可以通过修改,迭代完善。

9、运行和评估场景,必要时重复2~8进行迭代,直到满意。

10、保存场景设计结果或生成相关代码。场景设计结果可(自动)被保存为场景设计工程文件,根据用户的使用环境或选择,其可能存储在网络或终端本地;或者将场景设计结果转换为指定编程语言的代码。

本发明所述设计场景的方法包括下列步骤:

s100.新建或打开既有的场景设计。转到s110~s170进行编辑。

s110.定义与伺服目标(角色及其言语和/或行为)、部署地点、服务时间段相关的事件。

s120.定义其他事件。

s130.定义任务。

s140.定义场景(指定其名称和入口条件)。

s150.为各场景设置其关注的事件及其处理逻辑。

s160.定制事件在受关注场景下的处理逻辑。

s170.为有子场景的场景设置默认的子场景。

s180.运行和评估场景,必要时重复s110~s170进行修改迭代,直到满意。

s190.保存场景设计结果或生成相关代码。

本发明所述设计场景的工具系统,可能包括但不限于以下组件:

1、主控制器组件c1,其控制其他组件。

2、场景要素工具箱组件c2,可视,其提供定义场景需要的相关编程块,如定义场景、定义事件、定义任务、调度任务、管理任务、定义事件处理逻辑、指定场景入口条件集、指定场景关注的事件及其处理逻辑;并提供自定义编程块支持。注:这里地点、时刻、人物都被事件化了,如:检测到系统位于%1、已触发了%1的定时、检测到基本属性为%1角色为%2的人/物来、检测到基本属性为%1角色为%2的人/物往、检测到基本属性为%1角色为%2的人/物的%3言语、检测到基本属性为%1角色为%2的人/物的%3行为,这里的%n,n=1,2,3...是事件的参数。

3、编程块装配间组件c3,可视,编程块从c2拖拽到此处装配。

4、场景素材制作工具箱组件c4,可视,是用于扩展系统的可选组件。

5、运行器组件c5,渲染已解析的场景设计工程文件,控制其模拟或实际运行并呈现;该组件可能被独立发布或部署。

6、事件通信、收发和存储组件c6,等价于通常意义上的消息队列。

7、事件模拟生成器组件c7,用于模拟生成指定的事件以便模拟演出。

8、序列化和反序列化组件c8,其序列化时用于将自定义编程块的定义(若有)和编程块装配间的装配生成为场景设计工程文件以便保存;反序列化时用于将场景设计工程文件解析为自定义编程块的定义(若有)和编程块的装配,设计时更新场景要素工具箱组件c2和编程块装配间组件c3区域,运行时作为模拟运行组件c5的输入。

9、代码生成组件c9,可选,其将场景设计工程文件的内容转换为指定编程语言(如javascript,dart,python,c++,c#,java等)的代码。

采用了该针对智能服务系统实现编程化设计场景的方法和系统,将场景相关的各要素,如地点、时刻、人物、事件、任务,建模为编程块,功能上和/或形式上可能类似于scratch中的block,通过简单的拖拽和点击等操作,即可快速完成智能系统的原型场景设计,配合事件模拟器,场景可以执行,并可在此基础上进行迭代,本发明使得可以非常快捷地以原型的方式来定义软件产品,而原型可以自然地作为后续实现的基础,这样可以极大地减少产品设计团队与产品实现团队之间的沟通成本;而场景任务式的设计,可能使得场景自然而流畅地切换,从而使得系统提供服务时鲜明地体现其智能化和人性化。

在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1