智能空间应用的增量式开发及其支撑技术研究
发布时间:2017-05-04 18:16
本文关键词:智能空间应用的增量式开发及其支撑技术研究,由笔耕文化传播整理发布。
【摘要】:普适计算(Ubiquitous Computing)作为一种新的计算模式,其本质特征是信息空间与物理空间的融合和计算对人的透明性。智能空间(Smart Space)作为普适计算典型、具体而集中的体现,受到国内外学术界与工业界的广泛关注。诸如MIT、GIT、CMU、UIUC以及清华大学等国内外知名大学都开展了对智能空间积极的探索;而诸如微软、IBM以及HP等知名企业也有相应的研究计划。智能空间基础设施持续变化、用户需求多变等特性决定了智能空间及其应用系统的开发不应也不可能是一蹴而就的,而是“增量式的”:需要在系统部署运行之后不断重新认识所部属的空间环境以及用户新的需求、调整或打破已有假设,并在此基础上进一步增加新的应用或完善现有应用。然而,近年来普适计算研究领域的研究集中于感知数据处理技术以及新型应用研制两个方面,缺乏针对智能空间应用系统增量式开发的系统性工作。针对这一现状,本文的研究工作主要围绕如何实现能空间及其应用系统的增量式开发这一问题而展开。针对这一问题,本文首先对智能空间及其应用系统的增量式开发需求进行分析。在此基础上,本文提出了三点基本思路:从软件模型角度入手,明确智能空间应用系统的软件构成及其相互关系;从开发技术角度,提供对智能空间应用系统便捷、完整、统一的增量开发支持;从运行/演化支撑的角度,解决智能应用系统的增量式动态部署以及多应用冲突处理问题。具体而言,本文的主要创新点如下:第一,本文系统分析了智能空间及其应用系统的特征和增量式开发需求,以关注分离原则为指导,提出了一个以“环境主体部分与业务逻辑显式分离”为内涵的智能空间应用系统软件模型,为系统的设计、开发、运行和维护提供统一的指导。该软件模型将智能空间应用系统视为由环境主体部分与业务逻辑部分这两个相互独立并相互作用的部分所构成。其中,环境主体是对应用系统所处的真实环境的及时的数字化映像,是应用业务逻辑与真实运行环境交互的桥梁;业务逻辑部分实现系统的业务功能,它依靠环境主体获取系统的环境状态信息、调节指定的环境要素状态。整个应用系统可以封装为一系列configuration。不同configuration应对系统所处的不同环境条件并提供类似的功能或服务。系统行为的动态变化在大尺度上体现为不同configuration的切换,小尺度上体现为在一个configuration下对系统功能的细粒度调整。第二,为了支持应用业务逻辑的增量式开发与动态部署,本文对传统对象模型进行了扩充,提出了可调节对象模型。可调节对象模型将应用业务逻辑视为由一系列相互交互的可调节对象(adapt-ready object)所构成。每个可调节对象的行为通过其操作方法所刻画,而每个操作方法的具体执行行为则由一系列的操作变体(operation variant)的组合而实现。而可调节对象对外提供接口,可以动态对其某个具体操作方法添加、替换、删除或重组其操作变体。基于可调节对象模型,我们的核心业务即可以通过一系列的可调节对象来承载,而系统的适应性业务则可以通过相应操作变体来承载,通过操作变体的动态重组的方式来动态调节单个对象乃至整个系统的行为。第三,应对智能空间部署应用的增多而带来的多个应用之间的潜在冲突问题,我们提出了两套冲突避免策略:策略1尝试显示刻画应用间的影响,将一个智能空间中的所有应用及其之间的相互影响建模为一个Influence Graph,并在此基础上给出了一个基于遗传算法的解决手段。经试验验证,较暴力求解算法而言,该算法能够在可接受的有限时间内找到一个足够好的应用配置方案;策略2则从应用对共享的环境的要求和影响的角度出发,将多应用冲突处理这一问题转换为一个约束满足问题(Constraint Satisfaction Problem, CSP),并给出一个高效的求解算法。特别的,策略2采用了(1)一个两阶段效用预估手段和(2)两个有效的应用排序技术。经实验验证,较已有同类工作而言,策略2可以节省超过90%的一致性检测开销,具备更好的实用性。最后,在智能空间应用系统软件模型基础之上,我们对智能空间应用增量式开发方法和框架展开研究。与智能空间应用系统软件模型对应,我们将整个系统的开发分为业务逻辑开发和环境主体开发两大部分;而针对每一部分,则可进一步划分为初始开发和增量开发两个阶段。初始开发阶段依据初始的系统功能需求,完成对环境的初步建模以及相关环境设施的开发和部署,实现系统与上下文无关的核心业务逻辑。增量开发阶段则负责实现系统的适应性行为的阶段性开发。依据应用新的需求,对现有环境模型进行扩展,开发并部署相应的环境设施,开发一系列的操作变体并进一步定义(或修改)一系列的configuration,完成适应性行为的增量开发与发布。为了对上述开发过程提供统一的支持,我们还设计并实现了一组编程语言(AdaptJ+CfgL)以及相应集成开发环境。
【关键词】:普适计算 智能空间 上下文感知 增量式开发 多应用冲突避免
【学位授予单位】:南京大学
【学位级别】:博士
【学位授予年份】:2015
【分类号】:TP311.52
【目录】:
- 摘要4-6
- 英文摘要6-21
- 第一章 绪论21-37
- 1.1 普适计算与智能空间21-23
- 1.1.1 普适计算的特征21-23
- 1.1.2 智能空间——典型普适计算场景23
- 1.2 智能空间应用系统23-28
- 1.2.1 智能空间应用的特征24
- 1.2.2 智能空间应用的结构24-25
- 1.2.3 假想智能空间场景25-26
- 1.2.4 智能空间应用的开发26-28
- 1.3 本文研究问题及研究思路28-35
- 1.3.1 智能空间应用的增量开发与动态部署29-31
- 1.3.2 智能空间应用的冲突避免技术31-33
- 1.3.3 研究思路33-35
- 1.4 本文主要贡献35-36
- 1.5 文章组织36-37
- 第二章 智能空间应用系统软件模型37-55
- 2.1 设计原则37-38
- 2.2 智能空间应用系统软件模型38-40
- 2.3 环境主体40-46
- 2.3.1 上下文模型40-43
- 2.3.2 环境主体的功能43-44
- 2.3.3 环境主体的逻辑构成44-46
- 2.4 可调节业务逻辑46-53
- 2.4.1 智能空间应用的Configuration46-47
- 2.4.2 基于Configuration的应用业务封装47-48
- 2.4.3 可调节对象模型48-53
- 2.5 小结53-55
- 第三章 智能空间应用系统的增量开发55-69
- 3.1 智能空间应用系统软件形态55-56
- 3.2 基于智能空间应用系统软件模型的增量开发56-59
- 3.2.1 初始开发56-58
- 3.2.2 增量迭代开发58-59
- 3.2.3 适应性行为的部署59
- 3.3 AdaptJ语言59-63
- 3.3.1 SystemState的声明59-60
- 3.3.2 Situation的声明60-61
- 3.3.3 Adaptable Class的声明61-62
- 3.3.4 Vaiant的声明62-63
- 3.4 CfgL语言63-66
- 3.4.1 ConfigurationSet的声明63-64
- 3.4.2 Configuration的声明64-66
- 3.5 小结66-69
- 第四章 多应用冲突避免技术69-101
- 4.1 基于Configuration选取的应用冲突处理69-70
- 4.2 基于Influence Graph的多应用冲突处理技术70-85
- 4.2.1 Influence Graph模型71-73
- 4.2.2 基于遗传算法的最优方案搜索73-77
- 4.2.3 模拟与评估77-84
- 4.2.4 分析与讨论84-85
- 4.3 基于环境规约的多应用冲突处理技术85-100
- 4.3.1 环境规约86
- 4.3.2 环境规约之间的冲突86-87
- 4.3.3 搜索最优配置方案87-94
- 4.3.4 模拟与评估94-100
- 4.4 小结100-101
- 第五章 原型系统实现101-145
- 5.1 环境主体的实现101-106
- 5.1.1 探测器、抽象器与效应器101-103
- 5.1.2 应用环境体103-105
- 5.1.3 协同器105-106
- 5.2 可调节对象系统与自适应转换器106-122
- 5.2.1 可调节对象系统106-113
- 5.2.2 自适应转换器113-122
- 5.3 运行管理平台122-126
- 5.3.1 业务逻辑运行管理122-123
- 5.3.2 环境主体运行管理123-126
- 5.4 编程语言的实现126-130
- 5.4.1 AdaptJ语言的实现126-129
- 5.4.2 CfgL语言的实现129-130
- 5.5 集成开发环境130-139
- 5.5.1 Eclipse简介130
- 5.5.2 开发向导130-136
- 5.5.3 AdaptJ Editor136-137
- 5.5.4 AdaptJ Builder137-138
- 5.5.5 自适应转换器与运行/管理平台138-139
- 5.6 小结139-145
- 第六章 示例系统的开发145-165
- 6.1 模拟智能空间简介145
- 6.2 公共环境模型的创建145-146
- 6.2.1 Ontology Schema的开发146
- 6.2.2 实例数据的开发146
- 6.3 环境设施的开发与部署146-151
- 6.3.1 Detector与Effector的开发148
- 6.3.2 Detector与Effector的部署148-151
- 6.4 智能影音系统151-158
- 6.4.1 核心业务逻辑152-155
- 6.4.2 适应性业务逻辑的增量开发155-158
- 6.5 智能阅读支撑系统158-161
- 6.5.1 系统状态声明158
- 6.5.2 情境声明158-160
- 6.5.3 基本功能实现与部署160-161
- 6.6 冲突的处理161-163
- 6.7 小结163-165
- 第七章 结论和展望165-169
- 7.1 结论165-167
- 7.2 展望167-169
- 附录A 环境主体的实现169-181
- A.1 公共基础类169-170
- A.2 应用环境体170
- A.3 探测器与抽象器170-171
- A.4 效应器171-172
- A.5 推理器172-173
- A.6 情境评估器173-174
- A.7 策略评估器174-178
- A.8 AEE_Actuator178-179
- A.9 基于Jena的推理器、评估器实现179-181
- 附录B 运行支撑平台的实现181-199
- B.1 通讯模块181
- B.2 探测器管理器181-185
- B.3 抽象器管理器185-188
- B.4 效应器管理器188
- B.5 推理器管理器188-189
- B.6 情境评估器管理器189-192
- B.7 策略评估器管理器192-193
- B.8 应用环境体管理器193-194
- B.9 应用代理管理器194-197
- B.10 Platform管理与PlatformDictionary197-199
- 附录C 智能空间应用开发语言199-203
- C.1 AdaptJ语言199-201
- C.2 CfgL语言201-203
- 参考文献203-215
- 简历与科研成果215-219
- 致谢219-220
【参考文献】
中国期刊全文数据库 前4条
1 杨芙清,梅宏,吕建,金芝;浅论软件技术发展[J];电子学报;2002年S1期
2 吕建;马晓星;陶先平;徐锋;胡昊;;网构软件的研究与进展[J];中国科学E辑:信息科学;2006年10期
3 吕建;马晓星;陶先平;曹春;黄宇;余萍;;面向网构软件的环境驱动模型与支撑技术研究[J];中国科学(E辑:信息科学);2008年06期
4 余萍;马晓星;吕建;陶先平;;一种面向动态软件体系结构的在线演化方法[J];软件学报;2006年06期
本文关键词:智能空间应用的增量式开发及其支撑技术研究,,由笔耕文化传播整理发布。
本文编号:345577
本文链接:https://www.wllwen.com/shoufeilunwen/xxkjbs/345577.html