Knowledge Processing Lab


Projects in KPLAB

Research in KPLAB takes place in a number of projects, which are often run in close cooperation with excellence centers and research environments such as MOVIII, CADICS and LinkLab. The following projects (listed in alphabetical order) are actively being pursued.

Execution Monitoring

Execution and monitoring applied to the UASTech UAV platform.

[Knowledge Processing Lab, UASTechnologies Lab]

The execution monitoring project aims to develop methods for detecting and classifying failures during plan execution, regardless of whether those failures result from mechanical problems, incorrect assumptions, or interference from other agents. For this purpose, TALplanner has been extended to allow the intended behavior of actions and plans over time to be specified as formulas in Temporal Action Logic (TAL) and to automatically extract such information from planning domains. At execution time, knowledge gathered from sensors is used by DyKnow to incrementally build partial logical models representing the actual development of the system and its environment over time. Violations of intended behavior are detected in a timely manner using formula progression.

» Read more about the Execution Monitoring project!

Logical Agents

A dialog-based adventure game using Logical Agents.

[Knowledge Processing Lab]

The Logical Agents project builds an agent architecture based on automated reasoning in TAL. Each agent is equipped with a knowledge base, a database of logical formulas encoding background knowledge as well as memory. Automated theorem proving is used for reasoning with the content of the knowledge base, answering questions, and planning actions. Issues investigated in this project include the use of incompletely specified action timing, the generation of plans with infinite loops, and the integration of planning, execution, and plan revision.

» Read more about Logical Agents!

QET: Quantifier Elimination Techniques

The DLS algorithm eliminates quantifiers for a wide class of second-order formulas.

[Knowledge Processing Lab]

Just as there are a number of techniques which reduce sentences in fragments of 1st-order logic to equivalent sentences in propositional logic via the application of quantifier elimination techniques, there are also quantifier elimination techniques which may be applied to reduce sentences in fragments of 2nd-order logic to equivalent sentences in 1st-order logic. Such techniques are studied in the Quantifier Elimination Project (QET). (Group: KPLAB, SCML)

» Read more about the QET project!

Reconfigurable Diagnosis Systems: FlexDx

An overview of the components of the FlexDx implementation.

[Knowledge Processing Lab]

Detecting and isolating multiple faults is a computationally intense task which typically consists of computing a set of tests, and then computing the diagnoses based on the test results. FlexDx is a reconfigurable diagnosis framework that reduces the computational burden by only running the tests that are currently needed. The method selects tests such that the isolation performance of the diagnostic system is maintained. The DyKnow knowledge processing middleware framework plays an important role by handling issues related to the dynamic addition and removal of tests, the ability to perform tests on historic data, and the combination of synchronous and asynchronous processing.

» Read more about FlexDx!

RoboCup Activities

[Knowledge Processing Lab]

One of KPLAB's members, Fredrik Heintz, has created a framework for developing RoboCup agents called RoboSoc. It is designed to encourage and simplify the modification, extension and sharing of RoboCup agents and is used in the AI Programming undergraduate course. The students taking the course develop and experiment with their own RoboCup simulation league teams, which would not be possible to do in such a limited timespan without the use of a framework.

» Read more about Robocup activities!

Stream-Based Reasoning

DyKnow is a central component of the UASTech UAV system.

[Knowledge Processing Lab, UASTechnologies Lab]

Both deliberative and reactive parts of a robotic architecture, including functionalities for planning, fault detection and diagnosis, require timely access to information about the environment. Gathering such information is a complex process, often involving a multitude of information sources and processing techniques at varying levels of abstraction. DyKnow is a stream-based knowledge processing middleware service that helps organize knowledge processing for distributed robotic architectures in a coherent network of high-level knowledge processes communicating through streams.

» Read more about Stream-Based Reasoning!

TAL: Temporal Action Logics

[Knowledge Processing Lab]

The Temporal Action Logic (TAL) project focuses on modeling and reasoning about dynamic processes which arise due to interactions between physical or software artifacts and the complex dynamic environment in which they are situated, or among several physical artifacts situated in similar environments. The environments of interest may be characterized by the inability to provide complete representations of their dynamics due to their complexity.

The project includes development of temporal logics for reasoning about action, change and processes; the development of inference techniques for use in robotics systems; the development of visuallization tools to support this type of research; the application of temporal logics to planning, prediction, explanation and diagnosis; and development of tools to support the structuring of large narrative applications using object-oriented techniques.(Group: KPLAB)

» Read more about the TAL project!


Simulated plan execution: Emergency services logistics.

[Knowledge Processing Lab, UAS Technologies Lab]]

TALplanner is a forward-chaining planner based on the use of rich domain knowledge in Temporal Action Logics (TAL) to constrain and prune the standard forward-chaining search tree. TALplanner can generate both concurrent and sequential temporal plans and has support for metric resource constraints. Plans can be annotated with constraints to be tested at execution time by an execution monitoring system, implemented as part of the DyKnow knowledge processing middleware service. The planner implementation is in active use in the UASTech UAV project and also serves as a basis for new research in extending the expressivity of plans and domain knowledge.

» Read more about TALplanner!

Troubleshooting of Automotive Systems

Heavy trucks – an application domain for troubleshooting.

[Knowledge Processing Lab, Scania AB]

In the Troubleshooting of Automotive Systems project, we develop methods for efficient automatic troubleshooting of complex systems such as heavy trucks. Troubleshooting software should guide mechanics in a workshop in the process of finding and repairing vehicle faults, with the aim being to minimize the expected cost in terms of time and money. This problem can be modeled as a probabilistic planning problem where the vehicle to be repaired is a partially observable system. This project is run in close collaboration with the truck manufacturer Scania CV AB.

» Read more about Troubleshooting of Automotive Systems!

UAV Cooperation

[Knowledge Processing Lab, UASTechnologies Lab]

Under construction!

» Read more about this project!

UAV Relay

Two potential relay chains between a source s and a target t.

[Knowledge Processing Lab, UASTechnologies Lab]

A wide variety of applications for unmanned aerial vehicles (UAVs) include the need for surveillance of distant targets, including search and rescue operations, traffic surveillance and forest fire monitoring. Communication ranges are often limited and line of sight may be required for high bandwidth without interruptions, which is problematic in urban or mountainous areas. Both problems can be handled using intermediate relay UAVs. The UAV Relay project aims at developing special purpose planners for the placement of such relays for single targets, multiple targets, and moving targets.

» Read more about UAV Relays!

Previous projects in the AIICS Division


Many forms of deliberation used by autonomous agents, including prediction and planning, make use of formal models of the environment in which the agent operates. In many cases, a tradeoff must be made between accuracy and performance, where more detailed models may provide highly accurate results but are not always feasible given limited computational resources. In most cases, this tradeoff is fixed by humans when a system is designed. The DARE project – Dynamic Abstraction-driven Replanning and Execution – investigates methods where agents take over part of this responsibility in the context of interleaved task planning and execution for fully or partially observable stochastic domains, dynamically constructing planning models at varying levels of abstraction as required by the problem at hand.


The Heuristic Planning and Prediction Project (HPAP) revolved around the development of a set of domain-independent heuristics for automated planning.

» Read more about the HPAP project!


A plan generated by PARADOCS and its associated temporal constraint network.

PARADOCS is a Prolog implementation of a reasoning system for a subset of TAL, that views Planning And Reasoning As DeductiOn with ConstraintS. It supports prediction from a fully instantiated set of actions, planning from the empty set of actions, and anything in between.

PARADOCS has been superseded by the Logical Agents project, which uses many of the insights gained through the development of PARADOCS.


The Yamaha RMAX was the main platform for the WITAS project.

The WITAS Unmanned Aerial Vehicle project (1997-2005) had the long term goal of designing and deploying intelligent autonomous aircraft. Though the WITAS project itself has finished, many of the research topics are still actively being pursued withing other projects. (Groups: KPLAB, CASL, SCML)

» Read more about the WITAS project!