pkg <- 'pomdp' source("https://raw.githubusercontent.com/mhahsler/pkg_helpers/main/pkg_helpers.R") pkg_title(pkg)
A partially observable Markov decision process (POMDP) models an agent decision process where the agent cannot directly observe the environment's state, but has to rely on observations. The goal is to find an optimal policy to guide the agent's actions.
The pomdp
package provides the infrastructure to define and analyze the solutions
of optimal control problems formulated as Partially Observable Markov Decision Processes (POMDP).
The package uses the solvers from pomdp-solve (Cassandra, 2015)
available in the companion R package pomdpSolve to solve
POMDPs using a variety of exact and approximate algorithms.
The package provides
fast functions (using C++, sparse matrix representation, and parallelization with foreach
)
to perform experiments (sample from the belief space,
simulate trajectories,
belief update,
calculate the regret of a policy). The package also interfaces
to the following algorithms:
Incremental pruning algorithm [@Zhang1996; @Cassandra1997].
Approximate value iteration
If you are new to POMDPs then start with the POMDP Tutorial.
pkg_citation(pkg, 1) pkg_install(pkg)
Solving the simple infinite-horizon Tiger problem.
library("pomdp") data("Tiger") Tiger
sol <- solve_POMDP(model = Tiger) sol
Display the value function.
plot_value_function(sol, ylim = c(0, 20))
Display the policy graph.
plot_policy_graph(sol)
Development of this package was supported in part by National Institute of Standards and Technology (NIST) under grant number 60NANB17D180.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.