SSRules:让智能家居自动化规则更易于编写和检查*
2021-02-25耿佳宁李向阳
王 博,张 昱,耿佳宁,李向阳
1(中国科学技术大学 计算机科学与技术学院 下一代移动计算与数据创新实验室,安徽 合肥 230027)
2(中国科学院 无线光电通信重点实验室,安徽 合肥 230027)
随着物联网、人工智能与5G 等创新技术驱动的万物互联时代的到来,智能家居作为物联网的重要应用场景之一,正快速进入千家万户.智能家居令家庭中的各种设备互联互通,使用户实现设备的自动控制、远程控制和可编程控制,甚至可以根据历史经验主动进行自动化服务.根据MarketWatch 发布的报告[1],2016 年,全球智能家居市值556.5 亿美元,预计2025 年将达到1 742.4 亿美元;同时,中国的智能家居市场也在快速发展,据艾瑞咨询发布的报告[2],2017 年,中国智能家居市场规模为3 254.7 亿元,预计2020 年将达到5 819.3 亿元.
为管理种类和规模不断增加的智能设备,国内外主要领导厂商纷纷推出智能家居平台,如三星的SmartThings、Amazon 的Alexa、Google 的Home、小米的米家、华为HiLink、云端规则定制平台IFTTT(“IF This Then That”)[3]等,但它们几乎不开源并且仅支持相关品牌的设备,限制了用户所能管控的设备类型及范围;在开源的智能家居平台中,基于Python3 的HomeAssistant[4]相对成熟,支持多种操作系统/平台,集成了IFTTT、GoogleAssistant、MQTT 等产品/功能.这些智能家居平台将要管控的设备抽象化,通过建立通信标准以及API互联等方式连接设备和app,采用“触发-动作编程”(trigger-action programming,简称TAP)[5]支持用户定制规则以指定系统行为.但我们通过多次调研发现:现有TAP 虽足以满足终端用户表达简单的自动化任务,但灵活性不足,难以支持更复杂的用例[5-8].
TAP 规则……
