Formal Specification and Analysis of Autonomous Systems under Partial Compliance

The widespread adoption of autonomous systems depends on providing guarantees of safety and functional correctness, at both design time and runtime. Information about the extent to which functional requirements can be met in combination with non-functional requirements (NFRs) -- i.e. requirements that can be partially complied with -- , under dynamic and uncertain environments, provides opportunities to enhance the safety and functional correctness of systems at design time. We present a technique to formally define system attributes that can change or be changed to deal with dynamic and uncertain environments (denominated weakened specifications) as a partially ordered lattice, and to automatically explore the system under different specifications, using probabilistic model checking, to find the likelihood of satisfying a requirement. The resulting probabilities form boundaries of "optimal specifications", analogous to Pareto frontiers in multi-objective optimization, informing the designer about the system's capabilities, such as resilience or robustness, when changing its attributes to deal with dynamic and uncertain environments. We illustrate the proposed technique through a domestic robotic assistant example.

[1]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[2]  Mary Shaw,et al.  A Design Space for Self-Adaptive Systems , 2010, Software Engineering for Self-Adaptive Systems.

[3]  Nelly Bencomo,et al.  RELAX: a language to address uncertainty in self-adaptive systems requirement , 2010, Requirements Engineering.

[4]  Diana F. Gordon,et al.  Asimovian Adaptive Agents , 2000, J. Artif. Intell. Res..

[5]  Jesper Andersson,et al.  FORMS: Unifying reference model for formal specification of distributed self-adaptive systems , 2012, TAAS.

[6]  Hadas Kress-Gazit,et al.  Temporal-Logic-Based Reactive Mission and Motion Planning , 2009, IEEE Transactions on Robotics.

[7]  Nelly Bencomo,et al.  Requirements-Aware Systems , 2010 .

[8]  Rogério de Lemos,et al.  Robustness evaluation of the rainbow framework for self-adaptation , 2014, SAC.

[9]  Zhi Jin,et al.  A Systematic Literature Review of Requirements Modeling and Analysis for Self-adaptive Systems , 2014, REFSQ.

[10]  Kim G. Larsen,et al.  Methodologies for Specification of Real-Time Systems Using Timed I/O Automata , 2009, FMCO.

[11]  Edmund M. Clarke,et al.  Model Checking and the State Explosion Problem , 2011, LASER Summer School.

[12]  Alessandro Cimatti,et al.  Model Checking at Scale: Automated Air Traffic Control Design Space Exploration , 2016, CAV.

[13]  J. Michael Spivey,et al.  An introduction to Z and formal specifications , 1989, Softw. Eng. J..

[14]  Sriram Sankaranarayanan,et al.  On the revision problem of specification automata , 2012, 2012 IEEE International Conference on Robotics and Automation.

[15]  Amit K. Chopra Requirements-driven adaptation: Compliance, context, uncertainty, and systems , 2011, 2011 2nd International Workshop on Requirements@Run.Time.

[16]  Radu Calinescu,et al.  Formal Methods @ Runtime , 2010, Monterey Workshop.

[17]  Lhouari Nourine,et al.  A Fast Algorithm for Building Lattices , 1999, Inf. Process. Lett..

[18]  Jonathan P. Bowen,et al.  High-Integrity System Specification and Design , 1999, Formal Approaches to Computing and Information Technology (FACIT).

[19]  Maurício Serrano,et al.  Dealing with softgoals at runtime: A fuzzy logic approach , 2011, 2011 2nd International Workshop on Requirements@Run.Time.

[20]  Jian Lu,et al.  Verifying self-adaptive applications suffering uncertainty , 2014, ASE.

[21]  Gerald Jay Sussman,et al.  Building Robust Systems an essay , 2007 .

[22]  Franck Fleurey,et al.  A Domain Specific Modeling Language Supporting Specification, Simulation and Execution of Dynamic Adaptive Systems , 2009, MoDELS.

[23]  Saeed Jalili,et al.  Towards modeling and runtime verification of self-organizing systems , 2016, Expert Syst. Appl..

[24]  Ufuk Topcu,et al.  Resilience to intermittent assumption violations in reactive synthesis , 2014, HSCC.

[25]  Richard W. Buskens,et al.  The AdaptiV approach to verification of adaptive systems , 2012, C3S2E '12.

[26]  Andreas Krause,et al.  "Smart" design space sampling to predict Pareto-optimal solutions , 2012, LCTES 2012.

[27]  Danny Weyns,et al.  A Self-Adaptive Software System to Support Elderly Care , 2013 .

[28]  Pierfrancesco Bellini,et al.  Temporal logics for real-time system specification , 2000, CSUR.

[29]  Neil A. Ernst,et al.  The Requirements Problem for Adaptive Systems , 2014, ACM Trans. Manag. Inf. Syst..

[30]  Yang Zhao,et al.  Probabilistic model checking for comparative analysis of automated air traffic control systems , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[31]  Emilio Frazzoli,et al.  Minimum-violation LTL planning with conflicting specifications , 2013, 2013 American Control Conference.

[32]  Derek J. Hatley,et al.  Strategies for Real-Time System Specification , 1987 .

[33]  Danny Weyns,et al.  Towards an integrated approach for validating qualities of self-adaptive systems , 2012, WODA 2012.

[34]  Marta Z. Kwiatkowska,et al.  PRISM 4.0: Verification of Probabilistic Real-Time Systems , 2011, CAV.

[35]  Bradley R. Schmerl,et al.  Proactive self-adaptation under uncertainty: a probabilistic model checking approach , 2015, ESEC/SIGSOFT FSE.

[36]  Bernd Finkbeiner,et al.  Does It Pay to Extend the Perimeter of a World Model? , 2011, FM.

[37]  Roberto Bruni,et al.  A Conceptual Framework for Adaptation , 2012, FASE.

[38]  Ezio Bartocci,et al.  Adaptive Runtime Verification , 2012, RV.