Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a263c1254e75aedd

Jump to content

Draft:Cognitive robotic abstract machine

From Wikipedia, the free encyclopedia
  • Comment: Vague and superficial analysis such as The framework has been cited in research related to knowledge-enabled robotics, semantic reasoning, robot planning, and autonomous service robots (added after the previous LLM decline) is characteristic of LLM usage; please remove all text from the draft and start over from a blank slate without LLMs. Helpful Raccoon (talk) 03:23, 18 June 2026 (UTC)
  • Comment: Notability requires multiple sources giving in-depth coverage, see the WP:GOLDENRULE. We aren't here to promote just one essay. I think this is AI assisted since the paper is obviously online and the reference here is offline.... Plus the language used is AI-ish. ChrysGalley (talk) 08:32, 23 April 2026 (UTC)

Cognitive Robot Abstract Machine (CRAM) is an open-source software framework and cognitive architecture used in autonomous robotics research. It was developed to support robots performing everyday manipulation tasks in human environments by combining symbolic reasoning, perception, planning, and low-level robot control.[1]

CRAM was originally developed within robotics research projects at the Technical University of Munich and was later continued and expanded by researchers at the University of Bremen through the CRAM 2 project.[2][3]

Background

[edit]

Robots operating in domestic or service environments must frequently deal with incomplete information, changing surroundings, and tasks that cannot be fully specified in advance. Traditional robot control systems generally rely on predefined procedures and often struggle in situations requiring adaptation or context-sensitive decisions.

CRAM was proposed as an attempt to address these limitations using a cognitive robotics approach that integrates reasoning mechanisms directly into robot control programs.[1] The framework allows robots to make execution decisions dynamically during task performance instead of relying exclusively on fixed action sequences.

Architecture

[edit]

CRAM uses a modular architecture that combines symbolic knowledge processing with robot perception and execution systems.

CRAM Plan Language

[edit]

The CRAM Plan Language (CPL) is a Lisp-based language for specifying robot behavior. In CPL, plans are represented as persistent data structures that can be inspected, modified, and reasoned about during execution.[1]

The language supports:

  • Concurrent execution of actions
  • Failure handling and recovery
  • Reactive behavior based on sensor input
  • Dynamic parameter selection during execution

Plans in CPL are typically goal-oriented rather than strictly procedural. Tasks are expressed in terms of desired world states, allowing robots to determine how goals should be achieved depending on the current context.

KnowRob

[edit]

KnowRob is the knowledge-processing component used within CRAM. It provides semantic reasoning capabilities based on logic representations and ontologies.[4]

KnowRob stores information about objects, environments, actions, and spatial relationships. It also allows external data sources and perception systems to be connected through computable predicates, enabling robots to combine symbolic reasoning with real-time sensor data.

Designators

[edit]

CRAM uses symbolic structures called designators to describe objects, actions, trajectories, and locations. Designators allow abstract task descriptions to remain unresolved until execution time.

For example, a robot instructed to pick up a cup may initially represent the object abstractly. During execution, additional sensory information—such as whether the cup is full—can modify the resulting motion strategy.[1]

Process modules

[edit]

Process modules connect high-level plans to low-level robot controllers and middleware systems such as the Robot Operating System (ROS). These modules translate symbolic instructions into executable actions while incorporating continuous sensory feedback.

Cognitive capabilities

[edit]

CRAM includes mechanisms intended to support cognitive robot behavior in uncertain environments.

Reasoning and introspection

[edit]

The framework allows robots to reason about their own execution processes. Plan structures, execution traces, failures, and parameter values can be represented explicitly and queried during runtime.[1]

This approach enables introspection, allowing robots to analyze why a task failed and potentially modify future behavior.

Prediction and simulation

[edit]

Later CRAM extensions introduced simulation-based prediction modules that use physical simulation to evaluate possible outcomes of actions before execution.[5]

Learning and adaptation

[edit]

Research associated with CRAM has also explored learning from experience and transformational planning. These methods allow robots to improve task execution strategies or reorganize action sequences based on observations and prior outcomes.[6]

CRAM 2

[edit]

The CRAM 2 project expanded the original framework with updated software infrastructure, documentation, and integration methods for modern robotics systems.[7]

CRAM 2 places greater emphasis on modularity and interoperability with ROS-based systems while preserving the original framework’s focus on cognition-enabled robot control.

Applications

[edit]

CRAM has mainly been used in research environments involving:

  • Domestic service robotics
  • Mobile manipulation
  • Autonomous household assistants
  • Human-robot interaction
  • Cognitive robotics research

The framework has been demonstrated on robots performing tasks such as object manipulation, kitchen assistance, and navigation in indoor environments.[1]

Reception and significance

[edit]

CRAM has been described as an example of a hybrid cognitive robotics architecture because it combines symbolic reasoning techniques with reactive robot control systems.[8]

The framework has been cited in research related to knowledge-enabled robotics, semantic reasoning, robot planning, and autonomous service robots.

See also

[edit]

References

[edit]
  1. 1 2 3 4 5 6 Beetz, Michael; Mösenlechner, Lorenz; Tenorth, Moritz (2010). "CRAM – A Cognitive Robot Abstract Machine for Everyday Manipulation in Human Environments". 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.
  2. "CRAM". University of Bremen. Retrieved 2026-05-07.
  3. "Cognitive Robot Abstract Machine Documentation". CRAM 2 Documentation. Retrieved 2026-05-07.
  4. Tenorth, Moritz; Beetz, Michael (2013). "KnowRob: A Knowledge Processing Infrastructure for Cognition-enabled Robots". The International Journal of Robotics Research. 32 (5): 566–590. doi:10.1177/0278364913481635.
  5. Mösenlechner, Lorenz; Beetz, Michael (2009). "Using Physics- and Sensor-based Simulation for High-fidelity Temporal Projection of Realistic Robot Behavior". Proceedings of the International Conference on Automated Planning and Scheduling.
  6. Kirsch, Andreas (2009). "Robot Learning Language: Integrating Programming and Learning for Cognitive Systems". Robotics and Autonomous Systems. 57 (9): 943–954. doi:10.1016/j.robot.2009.05.001.
  7. "CRAM 2 Documentation". GitHub Pages. Retrieved 2026-05-07.
  8. "Cognitive Architectures for Robotics: A Survey". IEEE Transactions on Autonomous Mental Development. 2012.
[edit]