[发明专利]纯状态的触发动作编程范式到事件驱动系统的转换方法有效
申请号: | 202110290814.3 | 申请日: | 2021-03-18 |
公开(公告)号: | CN113010158B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 张昱;王博;耿佳宁;李向阳 | 申请(专利权)人: | 中国科学技术大学 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 张乾桢 |
地址: | 230026 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 状态 触发 动作 编程 范式 事件 驱动 系统 转换 方法 | ||
本发明提出一种纯状态的触发动作编程范式到事件驱动系统的转换方法,包括:步骤1:解析用户输入的SS(状态‑状态)规则集合并将解析结果传给动作序列信息生成模块;步骤2:动作序列信息生成模块将同一动作实体的SS规则序列按照期望状态组分类,计算实体要到达X指定状态时所有可能的动作序列和每种动作序列的执行前提Cj,得到二元组集合PairsX,求出与规则组不兼容的条件ΨX;步骤3:事件筛选模块根据实体能力抽象W对ΨX做关键值分析,生成候选事件并筛选;步骤4:EE(事件‑事件)中间表示生成模块接受筛选后的事件集与PairsX作为输入,对PairsX中的每个元组产生动作序列为的EE规则集;步骤5:经规则合并和可读性化简后由EE规则集生成器汇总输出,实现从SS规则得到对应的EE规则。
技术领域
本发明涉及智能家居和物联网以及终端用户编程领域,尤其是一种纯状态的触发动作编程范式到事件驱动系统的转换方法。
背景技术
智能家居正走进千家万户,将家庭中的各种设备互联互通,使用户实现设备的自动控制、远程控制和可编程控制。智能家居系统将要管控的设备抽象化,通过建立通信标准以及API互联等方式连接设备和应用(app),并且通常采用“触发-动作编程”(Trigger-Action Programming,TAP)支持用户定制规则以指定系统行为。
TAP规则(如IFTTT—“IF This Then That”)典型地将单个触发器(trigger)与单个动作(action)关联起来,例如,“如果开始下雨,则关窗”。然而,许多常见行为需要TAP提供更强的表达能力。2019年,Brackenbury等人首次提出和规范可用于TAP规则触发器的三种时序范式Event-Event、State-State和Event-State,并与动作时序类型相结合,形成4种范式,分别是Event-Event→Event、Event-State→Event、State-State→Event和State-State→State。
TAP编程中的Event-State→Event范式(IF event WHILE state THEN event)在智能家居系统中最为流行。这一编程范式能够被事件驱动的系统很好地支持,且终端用户能够灵活地组合触发事件、系统状态与动作事件以实现各种复杂的需求。但是,这种范式存在语义不清晰、编写修改琐碎易错等不足,不便于用户使用;随着设备数量和设备间交互的增加,使用这种范式编程需要考虑的可能情形会迅速增多,编写出错的可能性也会上升。
一些基于State→State的时序的规则范式,如本发明提出的SS范式,在规则缺陷的避免和编写难度方面相比Event-State→Event有优势,更容易被用户理解,且随着设备的增多和用户需求的迭代,其编写和修改难度要低于Event-State→Event范式。SS范式使用实体-能力抽象来描述智能家居系统中各种设备的可感知和/或可控制的能力。它以状态为基础,将规则按照动作实体分组、组内靠前的规则优先级更高,并提供当前状态和历史状态型的原子判断等手段。但是,这种SS范式不被主流的事件驱动的智能家居系统支持。
例如,HomeAssistant是基于Python的成熟智能家居开源系统,支持多种操作系统/平台和多种设备及服务集成方式;其规则输入语言为Trigger-Condition-Action(即Event-State→Event)范式,单规则中可以含有多触发器、多动作,动作不仅可以是与设备相关的服务调用,也可以是自定义的事件触发和状态值写入、HTTP接口调用等,自由度很高。
发明内容
为使SS范式得以运行在现有智能家居开源系统上,本发明提出一种规则转换方法能将SS范式的规则自动转换到事件驱动系统所支持的Event-State→Event规则。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学,未经中国科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110290814.3/2.html,转载请声明来源钻瓜专利网。