Research article
A domain-specific visual language for modeling metacognition in intelligent systems

https://doi.org/10.1016/j.bica.2015.06.004Get rights and content

Abstract

Metacognition has been used in artificial intelligence to increase the level of autonomy of intelligent systems. However the design of systems with metacognitive capabilities is a difficult task due to the number and complexity of processes involved. This paper presents a domain-specific visual language specifically developed for modeling metacognition in intelligent systems called M++. In M++ the specifications of the cognitive level (object-level) and metacognitive level (meta-level) are supported in a metamodel configured according to the standard Meta-Object Facility (MOF) of Model-Driven Architecture (MDA) methodology. M++ allows the generation of metacognitive diagrams in a visual editor named MetaThink. A validation process was conducted to ensure the reliability of M++ in terms of quality of the notation and consistency of generated models. The validation was performed using two techniques: (i) empirical study and (ii) model tracing. The results given in the experimental study demonstrate that M++ is a useful notation for the process of modeling metacognitive components in intelligent systems. Metacognitive models generated from the validation process using the Tracing technique were consistent with the MOF-based metamodel. M++ contribute to cognitive architecture research adding precision to metacognitive concepts and enabling cognitive architecture researchers to do fast and exploratory prototyping of metacognitive systems using MetaThink tool.

Introduction

Metacognition from cognitive science is defined as mental awareness and regulation of one’s thinking (Cox, 2005, Koedinger et al., 2009). Metacognition has two executive processes that the subject performs over its cognitive processes; these processes are the monitoring and control (Anderson et al., 2008). The term metacognition in Artificial Intelligence (AI) refers to the ability of intelligent systems to monitor and to control their own learning and reasoning processes (Anderson et al., 2006, Cox and Raja, 2012, Singh, 2005); therefore, metacognition in AI is often referred by some authors as meta-reasoning (Anderson et al., 2008, Cox, 2005).

Metacognition has been widely used in AI for designing robust systems capable of both detecting anomalies in their own reasoning and to generate strategies to solve them using two metacognitive mechanisms: introspective monitoring and meta-level control. Introspective monitoring includes mechanisms for detecting reasoning failures and Meta-level control includes rules for the recommendation of the best strategy available to correct the reasoning failures. This work focuses on the modeling the metacognitive mechanisms used to monitor and control the reasoning processes in an intelligent system. The design of an intelligent system with metacognitive support is a difficult task due to the number and complexity of processes involved (Caro et al., 2013, Cox, 2005).

The modeling process is even more complicated because there is no standard model for the computational design of metacognitive processes. The design of systems based on available metacognitive models is difficult, since some models are theoretical (Cox et al., 2011, Nelson and Narens, 1990) and the computational models (Alonso et al., 2010, Kennedy, 2010, Schmill et al., 2011) do not provide formalisms of software engineering methodologies that allow systematic development. The variety of existing approaches to computational design of metacognitive processes delays the selection process of the design model for any application. These problems confirm the lack of an appropriate notation for designing and modeling intelligent systems with metacognitive support.

To address the issues pointed out, we defined a notation included in a Domain-Specific Visual Language (DSVL) for modeling metacognitive processes. A Domain-Specific Language (DSL) has notations and constructs focused on a particular application domain (e.g. Metacognitive Systems). DSVLs have a declared syntax composed of an abstract syntax and a concrete syntax. The abstract syntax describes the concepts and their relations to other concepts without any consideration of meaning. Concrete syntax is the set of notations that facilitates the presentation and construction of the language; graphical syntax offers benefits, like easier design, when modeling within certain domains.

The main objective of this paper is to introduce a novel DSVL for modeling metacognition in an intelligent system. The DSVL is called M++ and has a core based on a metacognitive metamodel named MISM (Caro, Josyula, Cox, & Jiménez, 2014). MISM is configured according to the standard Meta-Object Facility (MOF) (OMG., 2013) of Model-Driven Architecture (MDA) methodology. MDA is an approach from the Object Management Group’s (OMG) (OMG, 2013) for the development of model-driven software. In MDA, the development of a system is viewed as a sequence of transformations and model refinement (Chitforoush, Yazdandoost, & Ramsin, 2007). MOF standard provides a sequence of transformations and refinement of models. The transformations allow designers to have general, easily adaptable schemes to integrate metacognitive components in the system design process. MDA architecture is based on meta-modeling of four layers: (i) meta–Meta-modeling layer, which corresponds to MOF and defines an abstract language for metamodel specification; (ii) metamodel layer, which consists in metamodels that are defined in the standard MOF; (iii) layer model, which includes real-world models; (iv) the layer of “real world” which includes real-world things.

For the validation process, two metacognitive systems present in the literature were modeled using M++. All concepts in the original systems could be represented. Artifacts from the models generated with M++ were consistent with the concepts of MISM.

This paper is structured as follows. Section ‘M++: A visual language for modeling metacognition’ describes the architectural components of M++. Section ‘Validation’ presents the results of validation process. Finally, the paper concludes with a brief discussion.

Section snippets

M++: A visual language for modeling metacognition

M++ is a DSVL for modeling metacognition in intelligent systems and incorporates two meta-reasoning mechanisms, i.e., introspective monitoring and meta-level control. In M++, the abstract syntax is specified with MOF-based metamodels and the concrete syntax is expressed by some mapping of the abstract syntax elements to visual constructs. The main artifacts of M++ are models specified in a visual manner. M++ is available on the website: https://sites.google.com/site/rgcicc/home.

Validation

M++ validation was performed on three dimensions: potential usefulness, usability and logic of generated models. For the validation process, the following methods were used: (i) Empirical study based on user perception. In the empirical study, the user perception with regard to the quality of the M++ notation was measured. (ii) Tracing. The instantiation of different types of specific concepts in the metamodel were traced (followed) through the model generation process to determine if the

Discussion and future work

M++ adds precision to metacognitive concepts in biologically inspired cognitive architectures and provides a visual framework for software engineering of such systems. It can potentially support rapid prototyping of metacognitive architectures by allowing candidate systems to be built, tested and revised quickly (in the sense of agile software engineering). In future work we will investigate the usability and speed of prototyping by users of different backgrounds (e.g. software engineering,

Conclusion

In this paper, a DSVL for modeling metacognition in intelligent systems was described. The DSVL was called M++ and has a central core based on a metacognitive metamodel named MISM. MISM has rules that automate some aspects of metacognitive modeling of intelligent systems.

M++ has approximately 20 tools for modeling metacognitive systems supporting introspective monitoring and meta-level control. Two types of validations were performed to validate M++ notation and the consistency of the generated

Acknowledgment

This research was funded in part by the scholarship commission of doctoral studies from the Universidad de Córdoba.

References (30)

  • F. Chitforoush et al.

    Methodology support for the model driven architecture

  • E. Clayberg et al.

    Eclipse: Building commercial-quality plug-ins

    (2006)
  • Cox, M., Oates, T., & Perlis, D. (2011). Toward an integrated metacognitive architecture. In P. Langley (Ed.), Advances...
  • M. Cox et al.

    Metareasoning: An introduction

  • Josyula, D., Hughes, F., Vadali, H., Donahue, B., Molla, F., Snowden, M., et al. (2010). Metacognition for...
  • Cited by (0)

    View full text