The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for computing a plan recognition problem.
Automated planning and scheduling is a branch of artificial intelligence (AI) that concerns the realization of strategies or action sequences, typically for execution by intelligent agents, autonomous robots, and unmanned vehicles. Unlike classical control and classification problems, solutions are complex and must be discovered and optimized in multidimensional space. Planning is also related to decision theory. Planning may be performed such that solutions may be found and evaluated prior to execution; however, any derived solution often needs to be revised. Solutions usually resort to iterative trial and error processes commonly seen in artificial intelligence. These include dynamic programming, reinforcement learning, and combinatorial optimization.
A planning problem generally comprises the following main elements: a finite set of facts, the initial state (a set of facts that are true initially), a finite set of action operators (with precondition and effects), and a goal condition. An action operator maps a state into another state. In the classical planning, the objective is to find a sequence of action operators (or planning action) that, when applied to the initial state, will produce a state that satisfies the goal condition. This sequence of action operators is called a plan.
Plan recognition is the problem of recognizing the plans and the goals of an agent given a set of observations. There exist a number of different approaches to the plan recognition problem including the use of SAT solvers and planning where the domain theory is given as an input as well as the use of techniques that assume a plan library is given as an input. Plan recognition continues to be an important problem to study as it has many practical applications such as assisted cognition, computer games, and network monitoring.