Simulating consciousness

The first wave of my interest in Artificial Intelligence (AI) was before “AI winter” (90s). As a researcher, I concentrated on knowledge representation and acquisition, active memory and behaviour modelling, knowledge-based machine learning, reasoning with defaults and contradictions, and general AI architecture which would allow to combine various modules into an “intelligent system” capable of demonstrating wide range of intelligent behaviours. Today it would be close to working on “Artificial General Intelligence” – AGI.

Then “AI winter” happened (combined with many exciting developments in computing industry), and after many following winters, I found myself with more than 20 years of designing, building, managing… often quite sophisticated but not that intelligent computer systems, well… until recently with revived interest to AI and Machine Learning (ML). I had a chance to refresh Python skills, took contemporary AI, ML courses. Udacity, thank you for thoughtful and practical nano degrees and online courses!. Why? Because many fundamental ideas and promises from 50-90s can be finally implemented and there are so many new opportunities and problems to solve!

After some reflection and thinking about Massively Transformative Purpose (MTP) [1] … for me it is about finding architectures and building intelligent systems with simulated consciousness.

This post is not about why and where simulating consciousness is beneficial/useful, it is more about the pathway of my recent research. It is related to concepts outlined in “Artificial Intelligence A modern Approach” [2], specifically in “Intelligent Agents” chapter. Flavour of intelligent agents that I am interested in can be represented by the following diagram:

We have explicit separation between the environment and the agent. For agents with physical embodiment, this separation comes naturally. For software agents, it takes a discipline to model sensors, sensing, acting, and actuators explicitly. The agent uses its sensors to get raw representation of the environment based on sensor capabilities. This raw representation is interpreted and transformed into an internal state combined with the representation of the agent itself. These representations contribute to evaluation of the current situation and selection of the appropriate actions which is mediated by forecasting, planning, goal management, motivation, emotions and ethics subsystems. Some of the actions are targeted at the environment and some at changing internal states of the agent.

I am specifically interested in agents with multiple skills, capable of working in various domains. This concern is addressed by Expert Agents. They encode knowledge required for some specific domains such as playing chess, solving math puzzles, ordering pizza or supporting “chit chat”. These experts are integrated into the main “observe-orient-decide-act” [3] loop and typically have specialized representations of the environment and domain of their expertise. Expert Agents are active, often run background tasks and compete for “attention”,”focus” specifically when several agents require access to the same unique resource such as communication channel. The main agent architecture is extendable: it supports new/evolving Expert Agents.

Where are the buzz words – “Machine Learning”? ML is in all components of the architecture. For me it is not about one “master algorithm”, it is more about highly modular architecture with various embedded machine learning components. For example, some of the experts can be implemented as reinforcement agents/learners. Training can be done offline or online. In the second case, learning of the expert is part of the expert behaviour and is mediated by other components: “Can we do learning Y now or we have to do something else?”

Everything described before follows “competence without comprehension” meme (I highly appreciate Daniel Dennett’s perspective on the nature and evolution of consciousness). Systems with the outlined architecture can demonstrate sophisticated and intelligent behaviours, including being reactive, establish, follow, change, postpone and revive goals, shift focus, predict situations and results of actions, impact on environment and the agent itself. It includes also basic self-model which mediates selection of actions.

Important component of the proposed architecture is the Reflection Subsystem. Is it a module responsible for “Cartesian Theatre” [4]? Not really. Heavy lifting of intelligent behaviours – competence – is implemented by other components. The Reflection Subsystem implements more advanced agent self-model and has capabilities to influence work of other modules: it is an additional layer of behaviour mediation and control. Fantastic topic for next posts!

1. The Motivating Power of a Massive Transformative Purpose on SingularityHub:
2. Artificial Intelligence A modern Approach on Wikipedia:
3. OODA loop on Wikipedia:
4. Cartesian Theatre on Wikipedia: