ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2018, Vol. 55 ›› Issue (5): 1014-1033.doi: 10.7544/issn1000-1239.2018.20161039

• 软件技术 • 上一篇    下一篇

面向环境与需求不确定性的系统自适应决策

杨卓群2,金芝1,3   

  1. 1(高可信软件技术教育部重点实验室(北京大学) 北京 100871); 2(中国科学院数学与系统科学研究院数学研究所 北京 100190); 3(北京大学信息科学技术学院软件研究所 北京 100871) (zhuoqun.y@hotmail.com)
  • 出版日期: 2018-05-01
  • 基金资助: 
    国家“九七三”重点基础研究发展计划基金项目(2015CB352200);国家自然科学基金项目(61620106007)

Self-Adaptive Decision Making Under Uncertainty in Environment and Requirements

Yang Zhuoqun2,Jin Zhi1,3   

  1. 1(Key Laboratory of High Confidence Software Technologies (Peking University), Ministry of Education, Beijing 100871); 2(Institute of Mathematics, Academy of Mathematics and Systems Science, Chinese Academy of Sciences, Beijing 100190); 3(Insitute of Software, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871)
  • Online: 2018-05-01

摘要: 软件系统在运行时会与其他软硬件系统、设备和用户发生密切交互.软件运行环境呈现出不稳定的特点,同时软件需求也可能会发生变化.由于难以准确预测和描述软件运行时的环境及需求,两者的变化具有不确定性.为提供持续服务,软件需要通过自适应能力,根据环境和自身的变化来调节其行为.不确定性给软件的自适应过程带来很大挑战.现有相关工作主要关注环境变化给需求带来的影响,以及环境变化时如何调节软件行为来满足固定的需求.这些方法难以处理需求不确定时自适应过程中的变化性和复杂性.针对该问题,提出一种基于模糊控制的自适应决策方法,以应对运行时环境与需求的不确定性.首先通过模糊逻辑建模与规约环境和软件中的变化要素,并构建要素间的推理规则;其次基于前馈-反馈控制结构和模糊控制器设计自适应机制;最后通过模糊推理和遗传算法实现决策求解.不同环境和约束下的自适应结果表明:软件能够通过自适应机制和算法求得优化决策.为验证方法的可行性和有效性,通过一个移动端比特币采矿机案例进行了评估.

关键词: 自适应软件系统, 不确定性, 需求工程, 前馈-反馈控制, 模糊逻辑, 优化决策

Abstract: Software systems intensively interact with other software/hardware systems, devices and users. The operation environment of software becomes unstable and software requirements may also change. Due to the fact that it is hard to predict the environment and requirements at runtime, their changes become uncertain. For providing continuous service, software systems need to adjust themselves according to changes in the environment and themselves. Uncertainties bring great challenges to the adaptation process. Existing related efforts either target at modeling the effects on requirements caused by environmental changes, or focus on how to adjust software behaviors to satisfy fixed requirements under changing environment. With these approaches, it is difficult to deal with the variability and complexity in the adaptation process when requirements are uncertain. This paper proposes a fuzzy control based adaptation decision-making approach, to tackling environment and requirements uncertainties at runtime. It applies fuzzy logic to model and specify variables existing in the environment and software, and generates reasoning rules between variables; designs the adaptation mechanism based on the feedforward-feedback control structure and fuzzy controllers; implements decision-making through fuzzy inference and genetic algorithm. The adaptation results under different environment and constraints show that software can achieve the optimal decision with the adaptation mechanism and algorithms. The feasibility and effectiveness of the approach are illustrated through a mobile bitcoin-miner system.

Key words: self-adaptive software system, uncertainty, requirements engineering, feedforward-feedback control, fuzzy logic, optimal decision-making

中图分类号: