KnowRob Development in CRC EASE

The Institute for Artificial Intelligence (IAI), led by Prof. Michael Beetz at the University of Bremen, is leading the Collaborative Research Center (CRC) Everyday Activity Science and Engineering (EASE), funded by the German Research Foundation (DFG). EASE is an interdisciplinary research centre at the University of Bremen. Its core purpose is to advance our understanding of how human-scale manipulation tasks can be mastered by robotic agents. To achieve this, EASE establishes the research area Everyday Activity Science and Engineering and creates a research community that conducts open research, open training, open data, and knowledge sharing. In-depth information on EASE research can be found on the website.

EASE is composed of multiple phases. The current phase is the first phase where the focus is on what is called narrative enabled episode memories (NEEMs). NEEMs can be best envisioned as a very detailed story about an experience. The story contains a narrative of what happened, but, in addition, low-level data that represents how it felt to make this experience. The latter case is realized by storing huge amounts of sensor data that is coupled with the narrative through time indexing. The representation of such experiential knowledge is key when statistical models are to be trained that generalize over the highly situation depended information contained in NEEMs. The second phase, which supposedly starts in 2022, will focus more on the generalization of acquired NEEMs.

2019/06/27 13:18 · daniel86

OWL-enabled Plan Generation at AAMAS 2018

KnowRob developers have presented their work on OWL-enabled plan generation for assembly activities at AAMAS'18 in Stockholm [1], and have received a best paper nomination for their work. The rational of the contribution is to describe, in an ontology, what the goal of an assembly activity is in terms of what assemblages need to be created from what parts, how the parts connect to each other, and how the robot can interact with them. This model of a final product is compared with what the robot knows about its current situation, what parts are available, and in what assemblages they contribute. The belief state is represented as ABox ontology, and KnowRob detects what information is not yet grounded or inconsistent with respect to the model of the final assemblage to decide what steps are still needed to create a complete assemblage from scattered parts available.

[1] Daniel Beßler, Mihai Pomarlan, Michael Beetz,
    "OWL-enabled Assembly Planning for Robotic Agents",
     In: Proceedings of the 2018 International Conference on Autonomous Agents, Stockholm, Sweden, 2018.

2019/06/20 13:54 · daniel86

KnowRob at ICRA 2018

We are proud to announce that the second generation of the KnowRob has been presented at ICRA'18 in Brisbane Australia.

KnowRob was first introduced in 2009 [1] where Tenorth and Beetz argue that autonomous robot control demands KR&R systems that address several aspects that are commonly not sufficiently considered in AI KR&R systems, such as that robots need a more fine-grained action representation. This was pointed out early by Tenorth and Beetz [2] when they argued that service robots should be able to cope with (often) shallow and symbolic instructions, and to fill in the gaps to generate detailed, grounded, and (often) real-valued information needed for execution.

We have introduced the second generation of the KnowRob system at ICRA'18 [3] where the focus of development has shifted towards the integration of simulation and rendering techniques into a hybrid knowledge processing architecture. The rational is to re-use components of the control program in virtual environments with physics and almost photorealistic rendering, and to acquire experiential knowledge from these sources. Experiential knowledge, called narrative enabled episodic memory in KnowRob, is used to draw conclusions about what action parametrization is likely to succeed in the real world (e.g., through learning methods) – this principle is inspired by the simulation theory of cognition [4].

The architecture blueprint for KnowRob 2.0 is depicted below.

Displayed components exist at least prototypically, and will be elaborated more in future publications.

[1] Moritz Tenorth, Michael Beetz,
    "KnowRob – knowledge processing for autonomous personal robots",
    In: IEEE/RSJ International Conference on Intelligent Robots and Systems, IEEE, pp. 4261–4266, 2009.
[2] Moritz Tenorth, Michael Beetz,
    "Representations for robot knowledge in the KnowRob framework",
    In: Artificial Intelligence, Elsevier, 2015. 
[3] Michael Beetz, Daniel Beßler, Andrei Haidu, et al.,
    "KnowRob 2.0 – A 2nd Generation Knowledge Processing Framework for Cognition-enabled Robotic Agents".
    In: International Conference on Robotics and Automation (ICRA), 2018.
[4] Germund Hesslow,
    "The current status of the simulation theory of cognition",
    In: Brain Research 1428, pp. 71–79, 2012.

2019/06/20 12:21 · daniel86

KnowRob GitHub repository structure

The catkinized KnowRob version is used by the IAI group in Bremen for more then 6 months. For this summer, we plan the next KnowRob release based on the catkinized version that proved to be stable in the last months.

The development was done in the 'indigo-devel' branch at GitHub while the 'master' branch contained the rosws-based KnowRob version. In order to avoid confusion, we decided to restructure the GitHub repository so that the code is actively developed in the master branch again with different branches for different supported ROS versions. The old 'master' branch has moved to a new branch 'groovy'. Note that this KnowRob version is not actively developed anymore. The old 'indigo-devel' branch has moved to the 'master' branch. Additionally, we mirrored the new 'master' branch to new branches 'hydro' and 'indigo' which contain the latest stable snapshot for the corresponding ROS version.

2015/07/20 17:58 · daniel86

Auto-generated API documentation

As part of a recent effort to update the KnowRob documentation, we have included auto-generated API documentation into the KnowRob wiki and increased the documentation coverage to all exported predicates of all modules in the core KnowRob stack and several packages in knowrob_addons and knowrob_dev.

The documentation is generated automatically from structured comments in the source code using the pldoc system, similar to the well-known javadoc or doxygen systems. It is re-generated at every commit by our Jenkins server.

By the way, KnowRob includes a wrapper for pldoc that facilitates the generation of API documentation for KnowRob packages. You can call it for the existing packages or your own packages using

rosrun rosprolog rosprolog-doc <pkgname>
2015/02/12 20:44 · admin

Older entries >>