Core Concepts
IntervalMDP.jl is a Julia package that introduces parallelization and GPU-powered processing to perform efficient value iteration for Interval Markov Decision Processes, enabling faster verification and strategy synthesis.
Abstract
IntervalMDP.jl is a Julia package that provides tools for the analysis of Interval Markov Decision Processes (IMDPs). Key features of the package include:
Support for value iteration and strategy synthesis for all combinations of optimistic/pessimistic probabilities and maximizing/minimizing strategies.
Compatibility with dense and sparse matrix representations, as well as customizable numerical precision.
Multi-threaded CPU and CUDA-accelerated value iteration algorithms to leverage parallel hardware.
Ability to load and write IMDP models in various formats, including PRISM, bmdp-tool, and a custom IntervalMDP.jl format.
The package solves the robust value iteration problem for IMDPs by iteratively computing the optimal pessimistic or optimistic probabilities of reaching a given set of states or optimizing a discounted reward. The authors introduce a GPU-accelerated algorithm that leverages parallel sorting and cumulative sum computations to significantly improve the efficiency of value iteration compared to existing tools.
Computational experiments on a set of 35 IMDP benchmarks show that the CPU implementation of IntervalMDP.jl is on average 2-4 times faster than the state-of-the-art, while the GPU implementation can achieve speedups of up to 200 times on larger models. Additionally, the package requires less memory compared to other tools due to its use of sparse matrices and the Julia type system.
Stats
The number of transitions in the IMDP models used for benchmarking ranges from a few tens to tens of millions.