CN113010158B - 纯状态的触发动作编程范式到事件驱动系统的转换方法 - Google Patents
纯状态的触发动作编程范式到事件驱动系统的转换方法 Download PDFInfo
- Publication number
- CN113010158B CN113010158B CN202110290814.3A CN202110290814A CN113010158B CN 113010158 B CN113010158 B CN 113010158B CN 202110290814 A CN202110290814 A CN 202110290814A CN 113010158 B CN113010158 B CN 113010158B
- Authority
- CN
- China
- Prior art keywords
- event
- rule
- state
- entity
- action
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明提出一种纯状态的触发动作编程范式到事件驱动系统的转换方法,包括:步骤1:解析用户输入的SS(状态‑状态)规则集合并将解析结果传给动作序列信息生成模块;步骤2:动作序列信息生成模块将同一动作实体的SS规则序列按照期望状态组分类,计算实体要到达X指定状态时所有可能的动作序列和每种动作序列的执行前提Cj,得到二元组集合PairsX,求出与规则组不兼容的条件ΨX;步骤3:事件筛选模块根据实体能力抽象W对ΨX做关键值分析,生成候选事件并筛选;步骤4:EE(事件‑事件)中间表示生成模块接受筛选后的事件集与PairsX作为输入,对PairsX中的每个元组产生动作序列为的EE规则集;步骤5:经规则合并和可读性化简后由EE规则集生成器汇总输出,实现从SS规则得到对应的EE规则。
Description
技术领域
本发明涉及智能家居和物联网以及终端用户编程领域,尤其是一种纯状态的触发动作编程范式到事件驱动系统的转换方法。
背景技术
智能家居正走进千家万户,将家庭中的各种设备互联互通,使用户实现设备的自动控制、远程控制和可编程控制。智能家居系统将要管控的设备抽象化,通过建立通信标准以及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规则。
本发明提出一种智能家居触发动作编程规则的转换算法,能够将纯状态的SS范式自动转换到智能家居系统接受的Event-State→Event范式。该方法基于系统抽象信息(实体-能力抽象)以及一些配置项,运用可满足性求解进行严谨的触发事件筛选和规则化简,在转换过程中能够避免一些低级规则缺陷,并通过启发式方法提高规则生成的效率。该转换方法使得SS范式兼容现有流行的智能家居系统成为可能,从而用户可以选择SS范式作为Event-State→Event时序范式的替代进行规则输入,使得用户编写规则的工作量得以大幅下降,写出的规则更易理解。
本发明的技术方案为:一种纯状态的触发动作编程范式到事件驱动系统的转换方法,包括如下步骤:
步骤2:动作序列信息生成模块将同一动作实体的SS规则序列按照EXPECT子句作用的期望状态组分类,期望状态组相同的SS规则组中的多条规则会放在一起处理;根据实体期望状态组实体能力抽象W计算实体要到达指定状态时所有可能的动作序列和每种动作序列的执行前提Cj,得到二元组集合求出与规则组不兼容的条件n为所有可能动作序列的数量;
步骤3:事件筛选模块首先根据实体-能力抽象信息W对条件做关键值分析,寻找对条件成立与否有影响的能力以及对条件而言等价的所有取值集合,并根据这些能力和取值集合生成一组候选事件然后对中的每个事件E,根据W以及缺省的事件筛选策略判断该事件是否要排除掉,即若E发生后不成立则需将E排除;
进一步的,所述步骤1中,使用json、或yaml数据格式交换解析后的规则。
基于实体的状态机,寻找到达目标状态的所有转移边、及可能的动作序列,并计算执行前提,该前提与后续步骤生成规则的安全性和正确性有关。
进一步的所述步骤3中,事件筛选模块首先根据实体-能力抽象信息W对条件做关键值分析,通过关键值分析减少候选事件,降低了算法的运算成本,且通过可改变的事件筛选策略能够在规则假阳性率和规则转换效率之间做出调整。
进一步的,所述步骤4中,通过按照动作序列和规则执行条件分组输出,便于后续合并以提高执行速度。
进一步的所述步骤5中,规则合并包括:使用Z3判断等价条件进行合并,合并后的条件使用Z3化简后再变换到不含逻辑非的简化易读的形式。
进一步的,在转换过程中,有多个环节需要与Z3交互,在转换开始之前,转换模块会根据实体-能力抽象构建Z3数据类型和Z3常量,并将对应关系填入Z3-Python数据结构转换模块中的Z3常量映射表。
在转换过程中,事件筛选模块和EE中间表示生成模块通过Z3判定事件的可满足性;规则合并模块通过Z3判断等价的条件部分,合并触发事件;可读性化简模块通过Z3进行表达式化简以减少条件表达式长度。
有益效果:
(1)本发明在进行SS→EE转换测试时,SS规则比相同功能的EE规则的规则数目平均减少了60%左右,大大降低了编写和修改难度,使得用户编写规则的工作量得以大幅下降,写出的规则更易理解。
(2)本发明有助于降低用户直接编写EE规则时出现的错误,避免低级规则缺陷,提高使用事件驱动智能家居系统时的安全性。
(3)本发明的内存占用和时间消耗较低,能够在手机等终端设备上实时计算,实现成本较低。
附图说明
图1:SS规则到EE规则转换流程图;
图2:SS规则按照期望状态组分类示例;
图3:当前使用的事件筛选策略与状态转移的关系。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅为本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域的普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
根据本发明的实施例,一个智能家居系统所管理的设备可以包括真实物理设备(如空调)、虚拟设备(如天气、时钟等),还可以是人。SS范式使用实体-能力抽象(Entity-Capability Abstraction)来描述智能家居系统中各种设备的可感知和/或可控制的能力,记为 ND为实体总数。每个设备抽象为一个实体(Entity)ε,每个实体由其一组能力(Capability)以及描述各能力状态之间转移关系的状态机M组成,即每种能力表示单个可变化的只读或者可控属性,可表示为一个四元组其中是该能力在实体内的唯一标识;τ表示该能力的状态值类型,可以是二值(Binary)/枚举(Enum)/实数(Numeric)等类型之一;布尔量ro为真表示能力是只读的、为假表示是可控的;表示一组关联的命令序列,其中每个元素是要执行的命令代号。
根据本发明的实施例,对SS范式与抽象的Event-State→Event范式定义如下:
表1SS范式和EE中间范式的抽象语法
SS范式的抽象语法见表1左侧。其中,FOR语句集结同一动作实体的所有规则,且约定组内靠前的规则优先级更高;每条规则(ssrule)包含在WHILE子句指定的条件成立时对该实体全部或部分能力的期望状态;多条规则按从前到后的次序、以第1条满足WHILE条件的规则中的EXPECT子句来设置期望的实体能力状态;一般地,无WHILE子句的规则放在最后作为安全默认。condition中的“entityID.capName op value”、“historyOp timeperiodentityID.capName value”分别表示当前状态和历史状态型原子判断,其中历史状态运算符historyOp的四种可能取值的含义举例如下:
“WITHIN 5分钟电扇.开关关”表示电扇的开关在5分钟内曾经处于关闭状态,则该原子判断为真
“!WITHIN 5分钟电扇.开关关”表示电扇的开关在5分钟内不曾处于关闭状态,则该原子判断为真
“STAY 5分钟电扇.开关开”表示电扇的开关在5分钟内持续处于开启状态,则该原子判断为真
“!STAY 5分钟电扇.开关关”表示电扇的开关在5分钟内未一直处于开启状态,则该原子判断为真
由于具体平台的Event-State→Event范式有过多平台相关的细节,为了设计SS范式翻译到Event-State→Event范式的通用算法,本发明提出一种抽象的Event-State→Event范式,称为EE范式,其抽象语法如表1右侧所示。
本发明的实施例中,表2给出了SS范式和EE范式的符号表示。这些符号和表1定义的语法结构一一对应,例如,GS对应于语法定义中的一个ssrulesGroup,RS对应于一个ssrule,RS中的C和分别对应于WHILE子句中的条件表达式和EXPECT子句中的期望状态组。wt和st分别表示“WITHIN”和“STAY”。
表2SS规则集合和EE规则集合的符号表示
对于一个由ND个实体组成的智能家居系统每个由三元组 描述。在某个时刻下W的系统状态记为σ,它是各实体的各能力到状态值的映射,即表示实体的能力在该时刻的状态值。不论是SS范式的程序还是EE范式的程序都是对系统状态变迁的描述;而转换的目标是由得到使得与满足一致性。在定义一致性之前,本发明先定义系统抽象状态ω,然后定义SS规则与系统抽象状态ω的关系,包括规则在ω下是否激活、规则是否与ω兼容。
根据本发明的实施例,规则相关的概念定义与执行假设如下,分别定义系统抽象状态、规则在系统抽象状态ω下激活、规则与系统抽象状态ω兼容、SS与EE的一致性,具体如下:
定义1.系统抽象状态
对于规则引擎来说,系统当前状态σ、当前时刻τnow以及状态变化轨迹可抽象为一个三元组称之为系统抽象状态。其中 表示实体的能力在τi时刻变为vi(i∈{1,…,n})。状态变化可能由外部事件引起(如用户交互、环境变化),也可能由或执行动作序列引起。每当发生状态变迁时,都相当于更新为其中τn+1为状态变迁发生时的τnow。
定义2.规则在系统抽象状态ω下激活
假设为某动作实体的SS规则组,表示中期望状态组均为的规则子集,当前的系统抽象状态为ω,称期望状态组相同的一组规则在ω下激活是指该组内任意一条规则RS激活;而规则RS在ω下激活是指在该规则所在的规则组GS内,其前面的规则的条件(对应WHILE子句,即C)在ω下都未满足,而该规则的条件RS.C满足。
定义3.规则与系统抽象状态ω兼容
规则RS与系统抽象状态ω不兼容是指在ω下RS激活且尚不成立;而RS与ω兼容是指在ω下RS未激活或者RS.x已成立;一组规则与ω兼容是指组内每条规则与ω都是兼容的;一组规则与ω不兼容是指组内存在与ω不兼容的规则。
实际的规则引擎提供的时间戳的精度是有限的。假设系统抽象状态ω中的时间戳都有最小时间单位(例如1秒),τnow以最小时间单位离散地更新。那么,对于规则集合执行方式的假设如下:
SS规则执行假设
假设无时序缺陷的规则组的执行方式为:每当发生状态变化,或者τnow变为新值之后,判断中是否存在与最新的ω不兼容的规则;如果存在这样的规则RS,说明其对应实体不满足RS的期望状态组于是计算上的需要执行的动作序列使得执行后实体的状态符合
EE规则执行假设
假设无时序缺陷的规则组的执行的方式为:设中的状态变化事件为集合状态保持事件为集合每当出现与中某事件相符的状态变迁,或者每当τnow的更新触发了中的某个状态保持事件后,检查与触发事件相符的各条规则;如果存在RE,RE.C在ω下成立,则执行
定义4.(SS与EE的一致性)称与一致是指:对于无时序缺陷的在上述规则执行假设下(且不存在超时、执行失败、规则重叠执行的情形),从与兼容的任意系统抽象状态ω开始,对于同样的、同时刻的、一次发生一个事件的外部事件序列,所产生的状态变迁序列和所产生的状态变迁序列一致。
参见图1,为本发明实施例SS规则到EE规则的转换流程图。转换方法的输入分别是左上角的实体-能力抽象信息W和右上角的状态-状态SS规则集合输出是与输入SS规则集对应的EE规则集(右下角)。转换的具体流程如下:
步骤2:动作序列信息生成模块会将同一动作实体的SS规则序列按照EXPECT子句作用的期望状态组分类,期望状态组相同的SS规则组中的多条规则会放在一起处理;一方面,根据实体期望状态组实体能力抽象W计算实体要到达指定状态时所有可能的动作序列和每种动作序列的执行前提Cj,得到二元组集合 另一方面,求出与规则组不兼容的条件(事件发生后、动作执行前系统抽象状态所应满足的条件)。
步骤3:事件筛选模块首先根据实体能力抽象W对做关键值分析,寻找对成立与否有影响的能力以及对而言等价的所有取值集合,并根据这些能力和取值集合生成一组候选事件(这些事件可能改变是否成立的情况);然后对中的每个事件E,根据W以及缺省的事件筛选策略判断该事件是否要排除掉,即若E发生后不成立则需将E排除。
步骤5:再经过规则合并、可读性化简后,这些EE规则集再由EE规则集生成器汇总并输出,最终实现从SS规则得到对应的EE规则。
根据本发明的实施例,在转换过程中,有多个环节需要与约束求解器Z3交互,所述约束求解器Z3是指微软Theorem Prover Z3。在转换开始之前,转换模块会根据实体-能力抽象构建Z3数据类型和Z3常量,并将对应关系填入Z3-Python数据结构转换模块中的Z3常量映射表;在转换过程中,事件筛选模块和EE中间表示生成模块通过Z3判定事件的可满足性;规则合并模块通过Z3判断等价的条件部分,合并触发事件;可读性化简模块通过Z3进行表达式化简以减少条件表达式长度。
不同的事件筛选策略对系统状态转移可能性的判别有所不同。以图2中规则组为例,本方法的默认事件筛选策略与系统抽象状态转换可能性判别的联系如图3。其中左上方是局部状态转移图,按照一次一个外部事件、一次执行一条规则的系统执行假设,不会发生的状态转移用点线表示。若按照当前的事件筛选策略,认为可能到达的不兼容状态的状态转移由右上图中4条事件转移边表示(与左上图对比,可见有转移边③是执行假设不会发生的转移),但是在左下方粗粒度的状态转移图上,却对应同一条转移边。因此,使用较保守的事件筛选策略的缺点在于存在生成出不会执行到的规则的可能性。另外需要注意的是,EE规则中的事件和图中的状态转移边不一定一一对应,能够触发同一条EE规则的状态转移边在细粒度的状态转移图上可能多条。例如EE规则IF模式.状态FROM{回家模式}TO{离家模式}WHILE电扇.开关==开THEN电扇.开关关闭,该规则被触发的情况可能是图3中的状态转移①,也可能是②。从这一角度来说,使用较保守的事件筛选策略的优点在于判定条件较少,运算更快(判定的是宽泛的状态集合间的转移)。
根据本发明的实施例,进行SS→EE转换测试如下,在10组SS规则组成的测试集上,每一组规则至少有一个动作实体(设备),规则中会引用多个相关实体的状态。按照当前的事件筛选策略,翻译前后的规则条数如表3中的SS#和EE#这两列所示。SS规则比相同功能的EE规则的规则数目平均减少了60%左右,大大降低了编写和修改难度。
表3SS→EE转换测试
根据本发明的又一实施例,给出一些转换示例如下:
SS规则:
FOR厨房窗户
EXPECT(开关,关闭)WHILE模式.状态==离家模式
EXPECT(开关,开启)WHILE厨房烟雾传感器.状态==激活
FOR厨房灶台
EXPECT(开关,关闭)WHILE模式.状态==离家模式
EXPECT(开关,关闭)WHILE厨房烟雾传感器.状态STAY 5分钟激活
FOR客厅氛围灯
EXPECT(开关,开启)WHILE客厅人体传感器.状态==激活
EXPECT(开关,关闭)WHILE客厅人体传感器.状态!WITHIN 5分钟激活
FOR客厅空调
EXPECT(模式,制冷)(设定温度,18℃)WHILE客厅温湿度传感器.温度>28℃
EXPECT(模式,关闭)WHILE客厅温湿度传感器.温度<20℃
对应EE规则:
IF(模式.状态FROM{回家模式}TO{离家模式})WHILE厨房窗户.开关==开启THEN厨房窗户.开关关闭
IF(厨房窗户.开关FROM{关闭}TO{开启})WHILE模式.状态==离家模式THEN厨房窗户.开关关闭
IF(模式.状态FROM{离家模式}TO{回家模式})WHILE(厨房烟雾传感器.状态==激活AND厨房窗户.开关==关闭)THEN厨房窗户.开关打开
IF(厨房烟雾传感器.状态FROM{未激活}TO{激活})WHILE(模式.状态==回家模式AND厨房窗户.开关==关闭)THEN厨房窗户.开关打开
IF(厨房窗户.开关FROM{开启}TO{关闭})WHILE(模式.状态==回家模式AND厨房烟雾传感器.状态==激活)THEN厨房窗户.开关打开
IF(模式.状态FROM{回家模式}TO{离家模式})WHILE厨房灶台.开关==开启THEN厨房灶台.开关关闭
IF(厨房灶台.开关FROM{关闭}TO{开启})WHILE(模式.状态==离家模式OR厨房烟雾传感器.状态STAY 5分钟激活)THEN厨房灶台.开关关闭
IF(厨房烟雾传感器.状态STAYON激活REACH 5分钟)WHILE厨房灶台.开关==开启THEN厨房灶台.开关关闭
IF(客厅人体传感器.状态FROM{未激活}TO{激活})WHILE客厅氛围灯.开关==关闭THEN客厅氛围灯.开关打开
IF(客厅氛围灯.开关FROM{开启}TO{关闭})WHILE客厅人体传感器.状态==激活THEN客厅氛围灯.开关打开
IF(客厅氛围灯.开关FROM{关闭}TO{开启})WHILE(客厅人体传感器.状态==未激活AND客厅人体传感器.状态!WITHIN 5分钟激活)THEN客厅氛围灯.开关关闭
IF(客厅人体传感器.状态STAYON未激活REACH 5分钟)WHILE客厅氛围灯.开关==开启THEN客厅氛围灯.开关关闭
IF(客厅温湿度传感器.温度FROM{≤28.0℃}TO{>28.0℃})WHILE(客厅空调.模式!=制冷OR客厅空调.设定温度!=18.0℃)THEN客厅空调.模式设定制冷,客厅空调.设定温度设定18℃
IF(客厅空调.模式FROM{制冷}TO{送风,自动,关闭,制热,干燥})WHILE客厅温湿度传感器.温度>28.0℃THEN客厅空调.模式设定制冷,客厅空调.设定温度设定18℃
IF(客厅空调.设定温度FROM{18.0℃}TO{≠18.0℃})WHILE客厅温湿度传感器.温度>28.0℃THEN客厅空调.模式设定制冷,客厅空调.设定温度设定18℃
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (6)
1.一种纯状态的触发动作编程范式到事件驱动系统的转换方法,其特征在于,包括如下步骤:
步骤2:动作序列信息生成模块将同一动作实体的SS规则序列按照EXPECT子句作用的期望状态组分类,期望状态组相同的SS规则组中的多条规则会放在一起处理;根据实体期望状态组实体能力抽象W计算实体要到达指定状态时所有可能的动作序列和每种动作序列的执行前提Cj,得到二元组集合求出与规则组不兼容的条件n为所有可能动作序列的数量;
步骤3:事件筛选模块首先根据实体-能力抽象信息W对条件做关键值分析,寻找对条件成立与否有影响的能力以及对条件而言等价的所有取值集合,并根据这些能力和取值集合生成一组候选事件然后对中的每个事件E,根据W以及缺省的事件筛选策略判断该事件是否要排除掉,即若E发生后不成立则需将E排除;
2.根据权利要求1所述的一种纯状态的触发动作编程范式到事件驱动系统的转换方法,其特征在于,包括如下步骤:
所述步骤1中,使用json或yaml数据格式交换解析后的规则。
5.根据权利要求1所述的一种纯状态的触发动作编程范式到事件驱动系统的转换方法,所述步骤4中,通过按照动作序列和规则执行条件分组输出,便于后续合并以提高执行速度。
6.根据权利要求1所述的一种纯状态的触发动作编程范式到事件驱动系统的转换方法,所述步骤5中,规则合并包括:使用约束求解器Z3判断等价条件进行合并,合并后的条件使用约束求解器Z3化简后再变换到不含逻辑非的简化易读的形式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110290814.3A CN113010158B (zh) | 2021-03-18 | 2021-03-18 | 纯状态的触发动作编程范式到事件驱动系统的转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110290814.3A CN113010158B (zh) | 2021-03-18 | 2021-03-18 | 纯状态的触发动作编程范式到事件驱动系统的转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113010158A CN113010158A (zh) | 2021-06-22 |
CN113010158B true CN113010158B (zh) | 2022-09-06 |
Family
ID=76409648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110290814.3A Active CN113010158B (zh) | 2021-03-18 | 2021-03-18 | 纯状态的触发动作编程范式到事件驱动系统的转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113010158B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11630624B1 (en) | 2022-03-14 | 2023-04-18 | Ricoh Company, Ltd. | Concurrent event detection for distributed rasterization processing in a printing environment |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08129483A (ja) * | 1994-10-31 | 1996-05-21 | Matsushita Electric Ind Co Ltd | イベント駆動型プロセス制御装置 |
US6353896B1 (en) * | 1998-12-15 | 2002-03-05 | Lucent Technologies Inc. | Method and apparatus for testing event driven software |
US20120059662A1 (en) * | 2010-09-03 | 2012-03-08 | Huisman Jr John E | Automated lead processing systems and methods |
CN104486416B (zh) * | 2014-12-16 | 2018-01-26 | 三星电子(中国)研发中心 | 一种智能家居服务规则的综合利用系统及方法 |
WO2016099148A1 (en) * | 2014-12-16 | 2016-06-23 | Samsung Electronics Co., Ltd. | Method and apparatus for controlling device using a service rule |
US10176086B2 (en) * | 2016-10-03 | 2019-01-08 | Fujitsu Limited | Event-driven software test sequence determination |
CN110175019B (zh) * | 2019-06-04 | 2021-11-16 | 南京大学 | 一种基于中断序列图的中断驱动系统验证方法 |
-
2021
- 2021-03-18 CN CN202110290814.3A patent/CN113010158B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113010158A (zh) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220057927A1 (en) | Scene-operation method, electronic device, and non-transitory computer readable medium | |
CN103294586B (zh) | 对于可替代用户界面模型的用户偏好的自动检测 | |
CN106647645A (zh) | 一种家居控制调节的方法及系统 | |
CN111045901A (zh) | 容器的监控方法、装置、存储介质和电子设备 | |
CN112612214B (zh) | 用于功能界面生成的方法、系统和电子设备 | |
CN113010158B (zh) | 纯状态的触发动作编程范式到事件驱动系统的转换方法 | |
US20230289198A1 (en) | Configuring application scene | |
CN113341743A (zh) | 智能家居设备控制方法、装置、电子设备及存储介质 | |
CA3050159A1 (en) | Artificial intelligence (ai) based automatic rule generation | |
CN109189295A (zh) | 显示控制方法、装置及终端设备 | |
CN111427677A (zh) | 人工智能产品的生成方法、装置和服务器 | |
CN112217697A (zh) | 一种物联网设备智能控制系统 | |
CN105335146A (zh) | 管理软件数据流量的方法及便携式电子装置 | |
CN112364266A (zh) | 小程序和宿主应用无缝导航方法、装置、电子设备及介质 | |
CN116414039A (zh) | 基于多家庭的场景模式控制方法及装置 | |
CN113986349A (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN113836944A (zh) | 用于智能设备的控制方法、系统及其装置、电子设备 | |
CN115307274B (zh) | 控制空调系统的主机的方法、设备和存储介质 | |
CN110045997B (zh) | 基础功能模块的对象初始化方法、装置、设备和存储介质 | |
CN108105947B (zh) | 空气处理设备的控制方法、装置、系统及可读存储介质 | |
CN109254820A (zh) | 窗口关闭方法、装置、终端及计算机可读存储介质 | |
Leelaprute et al. | Describing and verifying integrated services of home network systems | |
CN115793481A (zh) | 设备控制方法、装置、电子设备及存储介质 | |
CN114280953A (zh) | 场景模式创建方法、装置、电子设备及存储介质 | |
CN110347396B (zh) | 系统构建方法、控制方法、装置、控制系统及计算设备 |
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 |