Reflective Systems Need Models at Run Time

We think that run-time models are a minimum necessity for significant self-awareness in Computationally Reflective systems. For us, a Computationally Reflective system is not only “self-aware” (it can collect information about its own behavior and that of its environment), but also “self-adaptive” (it can reason about that behavior and make adjustments that change it). Moreover, when the system is also “self-modeling”, that is, defined by the models it creates and maintains, then it can modify those models to better align its behavior with changes in its operating environment. In this paper, we show that building and managing these models presents some difficulties that are largely independent of the modeling mechanisms used. We also provide some mechanisms for coping with these difficulties, from a kind of “Behavior Mining” and “Model Deficiency Analysis” for current models to “Dynamic Knowledge Management”, of which major components are “Knowledge Refactoring” and “Constructive Forgetting”. None of these methods eliminate the problem, but each alleviates some of the difficult aspects of the problem, which allows bigger and more complex systems to exist in more complex and diverse environment for longer periods of time.

[1]  Christopher Landauer,et al.  Generic programming, partial evaluation, and a new programming paradigm , 1999, Proceedings of the 32nd Annual Hawaii International Conference on Systems Sciences. 1999. HICSS-32. Abstracts and CD-ROM of Full Papers.

[2]  Francesco Vaccarino,et al.  Topological Strata of Weighted Complex Networks , 2013, PloS one.

[3]  E. Muñoz-Martínez Small Worlds: The Dynamics of Networks Between Order and Randomness, by Duncan J. Watts, (Princeton Studies in Complexity), Princeton University Press, 1999. $39.50 (hardcover), 262 pp. ISBN: 0-691-00541-9. (Book Reviews) , 2000 .

[4]  Colin de la Higuera,et al.  Grammatical Inference: Learning Automata and Grammars , 2010 .

[5]  Joshua Kerievsky,et al.  Refactoring to Patterns , 2004, XP/Agile Universe.

[6]  Patrick M. Reed,et al.  Borg: An Auto-Adaptive Many-Objective Evolutionary Computing Framework , 2013, Evolutionary Computation.

[7]  E. Mark Gold,et al.  Language Identification in the Limit , 1967, Inf. Control..

[8]  Dana Angluin,et al.  Finding Patterns Common to a Set of Strings , 1980, J. Comput. Syst. Sci..

[9]  Lillian Lee,et al.  Learning of Context-Free Languages: A Survey of the Literature , 1996 .

[10]  Philippe Kruchten,et al.  Architecture blueprints—the “4+1” view model of software architecture , 1995, TRI-Ada '95.

[11]  Carl H. Smith,et al.  Inductive Inference: Theory and Methods , 1983, CSUR.

[12]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[13]  Gary B. Lamont,et al.  Evolutionary Algorithms for Solving Multi-Objective Problems , 2002, Genetic Algorithms and Evolutionary Computation.

[14]  Christopher Landauer,et al.  Model-Based Cooperative System Engineering and Integration , 2016, 2016 IEEE International Conference on Autonomic Computing (ICAC).

[15]  J. Berstel,et al.  Context-free languages , 1993, SIGA.

[16]  K. Thompson Reflections on trusting trust , 1984, CACM.

[17]  Joshua D. Reiss,et al.  Construction of symbolic dynamics from experimental time series , 1999 .

[18]  Jesús M. González-Barahona,et al.  The evolution of the laws of software evolution , 2013, ACM Comput. Surv..

[19]  Christopher Landauer,et al.  Self-modeling Systems , 2001, IWSAS.

[20]  H. Edelsbrunner,et al.  Topological data analysis , 2011 .

[21]  Q. Ethan McCallum Bad Data Handbook , 2012 .

[22]  John M. Foster,et al.  Automatic Syntactic Analysis , 1970 .

[23]  M.M. Lehman,et al.  Programs, life cycles, and laws of software evolution , 1980, Proceedings of the IEEE.

[24]  Philippe Krutchen,et al.  Architectural blueprints--the '4+1' view model of software architecture , 1995 .

[25]  Taylor L. Booth,et al.  Grammatical Inference: Introduction and Survey-Part I , 1986, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[26]  Mauricio A. Saca Refactoring improving the design of existing code , 2017, 2017 IEEE 37th Central America and Panama Convention (CONCAPAN XXXVII).

[27]  Pattie Maes,et al.  Computational reflection , 1987, The Knowledge Engineering Review.

[28]  Danijela Horak,et al.  Persistent homology of complex networks , 2008, 0811.2203.

[29]  Jie Wu,et al.  Small Worlds: The Dynamics of Networks between Order and Randomness , 2003 .

[30]  Christopher Landauer Infrastructure for Studying Infrastructure , 2013, ESOS.

[31]  Dana Angluin,et al.  Inductive Inference of Formal Languages from Positive Data , 1980, Inf. Control..

[32]  Phyllis R. Nelson,et al.  Managing Variable and Cooperative Time Behavior , 2010, 2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops.

[33]  Pattie Maes,et al.  Concepts and experiments in computational reflection , 1987, OOPSLA '87.

[34]  Meir M. Lehman,et al.  Program evolution: processes of software change , 1985 .

[35]  Afra Zomorodian,et al.  The tidy set: a minimal simplicial set for computing homology of clique complexes , 2010, SCG.