# Partially observable Markov decision process

A **partially observable Markov decision process** (POMDP) is a generalization of a Markov decision process (MDP). A POMDP models an agent decision process in which it is assumed that the system dynamics are determined by an MDP, but the agent cannot directly observe the underlying state. Instead, it must maintain a probability distribution over the set of possible states, based on a set of observations and observation probabilities, and the underlying MDP.

The POMDP framework is general enough to model a variety of real-world sequential decision processes. Applications include robot navigation problems, machine maintenance, and planning under uncertainty in general. The framework originated in the operations research community, and was later taken over by the artificial intelligence and automated planning communities.

An exact solution to a POMDP yields the optimal action for each possible belief over the world states. The optimal action maximizes (or minimizes) the expected reward (or cost) of the agent over a possibly infinite horizon. The sequence of optimal actions is known as the optimal policy of the agent for interacting with its environment.

## Definition

### Formal definition

A discrete-time POMDP models the relationship between an agent and its environment. Formally, a POMDP is a tuple , where

- is a set of states,
- is a set of actions,
- is a set of conditional transition probabilities between states,
- is the reward function.
- is a set of observations,
- is a set of conditional observation probabilities, and
- is the discount factor.

At each time period, the environment is in some state . The agent takes an action , which causes the environment to transition to state with probability . At the same time, the agent receives an observation which depends on the new state of the environment with probability . Finally, the agent receives a reward equal to . Then the process repeats. The goal is for the agent to choose actions at each time step that maximize its expected future discounted reward: . The discount factor determines how much immediate rewards are favored over more distant rewards. When the agent only cares about which action will yield the largest expected immediate reward; when the agent cares about maximizing the expected sum of future rewards.

### Discussion

The difficulty is that the agent does not know the exact state it is in. This requires the agent to keep track of each observation received, in order to maintain a probability distribution, known as the belief state, over the possible states . This is done by keeping track of the received observations over time, and the probability that they have been received given the particular belief maintained by the agent. In doing so, the belief state is Markovian, which enables the agent to reason again without regards to the past.

It is instructive to compare the above definition with the definition of a Markov decision process. An MDP does not include the observation set, and its reward function is a function of two states.

## Belief update

An agent needs to update its belief upon taking the action and observing . Since the state is Markovian, maintaining a belief over the states solely requires knowledge of the previous belief state, the action taken, and the current observation. The operation is denoted . Below we describe how this belief update is computed.

After reaching , the agent observes with probability . Let be a probability distribution over the state space . denotes the probability that the environment is in state . Given , then after taking action and observing ,

where is a normalizing constant with .

## Belief MDP

A Markovian belief state allows a POMDP to be formulated as a Markov decision process where every belief is a state. The resulting *belief MDP* will thus be defined on a continuous state space, since there are infinite beliefs for any given POMDP.^{[1]} The belief MDP is defined as a tuple where

- is the set of belief states over the POMDP states,
- is the same finite set of action as for the original POMDP,
- is the belief state transition function,
- is the reward function on belief states,
- is the discount factor equal to the in the original POMDP.

Where and need to be derived from the original POMDP. is

where is the value derived in the previous section and

The belief MDP reward function () is the expected reward from the POMDP reward function over the belief state distribution:

The belief MDP is not partially observable anymore, since at any given time the agent knows its belief, and by extension the state of the belief MDP.

### Policy and Value Function

The agent's policy specifies an action for any belief . Here it is assumed the objective is to maximize the expected total discounted reward over an infinite horizon. When defines a cost, the objective becomes the minimization of the expected cost.

The expected reward for policy starting from belief is defined as

where is the discount factor. The optimal policy is obtained by optimizing the long-term reward.

The optimal policy, denoted by , yields the highest expected reward value for each belief state, compactly represented by the optimal value function . This value function is solution to the Bellman optimality equation:

For finite-horizon POMDPs, the optimal value function is piecewise-linear and convex.^{[2]} It can be represented as a finite set of vectors. In the infinite-horizon formulation, a finite vector set can approximate arbitrarily closely, whose shape remains convex. Value iteration applies dynamic programming update to gradually improve on the value until convergence to an -optimal value function, and preserves its piecewise linearity and convexity.^{[3]} By improving the value, the policy is implicitly improved. Another dynamic programming technique called policy iteration explicitly represents and improves the policy instead.^{[4]}^{[5]}

## Approximate POMDP solutions

In practice, POMDPs are often computationally intractable to solve exactly, so computer scientists have developed methods that approximate solutions for POMDPs.

Grid-based algorithms ^{[6]} comprise one approximate solution technique. In this approach, the value function is computed for a set of points in the belief space, and interpolation is used to determine the optimal action to take for other belief states that are encountered which are not in the set of grid points. More recent work makes use of sampling techniques, generalization techniques and exploitation of problem structure, and has extended POMDP solving into large domains with millions of states ^{[7]}^{[8]} For example, point-based methods sample random reachable belief points to constrain the planning to relevant areas in the belief space.^{[9]}
Dimensionality reduction using PCA has also been explored.^{[10]}

## POMDP uses

POMDPs model many kinds of real-world problems. Notable works include the use of a POMDP in assistive technology for persons with dementia ^{[7]}^{[8]} and the conservation of the critically endangered and difficult to detect Sumatran tigers.^{[11]}

## References

- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑ Template:Cite thesis
- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑ {{#invoke:citation/CS1|citation |CitationClass=conference }}
- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑
^{7.0}^{7.1}{{#invoke:citation/CS1|citation |CitationClass=conference }} - ↑
^{8.0}^{8.1}{{#invoke:Citation/CS1|citation |CitationClass=journal }} - ↑ {{#invoke:citation/CS1|citation |CitationClass=conference }}
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}

## External links

- Tony Cassandra's POMDP pages with a tutorial, examples of problems modeled as POMDPs, and software for solving them.
- zmdp, a POMDP solver by Trey Smith
- APPL, a fast point-based POMDP solver
- SPUDD, a factored structured (PO)MDP solver that uses algebraic decision diagrams (ADDs).
- pyPOMDP, a (PO)MDP toolbox (simulator, solver, learner, file reader) for Python by Oliver Stollmann and Bastian Migge
- Finite-state Controllers using Branch-and-Bound An Exact POMDP Solver for Policies of a Bounded Size