Skip links
Main content



H-CogAff is short for Human-CognitionAffect. The H-CogAff research team has defined a meta-architecture, CogAff, with which cognitive architectures may be compared. In their view, different cognitive architectures form an instance of a subset of CogAff. They created H-CogAff (also named CogAff-H) as a human-like architecture based on CogAff.

The main idea behind this architecture is that the mind is essentially two-dimensional. On the first dimension (displayed horizontally) information flows from perception, via processing/reasoning, to action. On the second dimension (vertically) information flows from reactive processes, via deliberate processes, to reflective processes. The information flows are bidirectional. Next to this tidy organization, it poses an alarm system, used for quick all-out responses of the entire system.

H-CogAff is primarily a philosophical tool.

Research Group

The research is done by the Cognition and Affect project of the University of Birmingham, which is lead by Aaron Sloman. Their website is very chaotic.

Systems built from this architecture

The architecture has not been implemented. The high degree of interconnectedness of its modules will not make this an easy task.

Supported Cognitive Faculties

  • Planning
  • Long Term Memory
  • Perception
  • Emotion

The architecture: main data-flow, main control-flow

The research group stresses the idea that H-CogAff is a Layered Architecture. The three "layers" form perform tasks of varying abstractness:
  • Top "layer": reflective processes
  • Middle "layer": deliberate processes
  • Bottom "layer": reactive processes
It's visual representation has changed over time. Its latest schema is presented here:

However, two main features of layered architectures are missing in H-CogAff. In such an architecture two layers may only communicate to with each other if they directly adjoin. In H-CogAff all layers communicate directly with one another. Also, in a layered architecture, the upper layer is a more abstract version of the lower level. In H-CogAff the "upper" functions are not more abstract versions of the "lower" functions, they are very different from each other. Furthermore, besides the three layers, several other modules are used as well, and these are positioned next to the main layers, making it unclear to which layer, if any they belong.

The data-flow of the architecture does not compare to any software architecture known to me. In fact, it just looks like a lot of boxes and arrows to me :)
The control flow is emulated parallel: all modules are active at the same time.


Major articles