48,675 research outputs found
Learning logic specifications for soft policy guidance in POMCP
Partially Observable Monte Carlo Planning (POMCP) is an effi- cient solver for Partially Observable Markov Decision Processes (POMDPs). It allows scaling to large state spaces by computing an approximation of the optimal policy locally and online, using a Monte Carlo Tree Search based strategy. However, POMCP suffers from sparse reward function, namely, rewards achieved only when the final goal is reached, particularly in environments with large state spaces and long horizons. Recently, logic specifications have been integrated into POMCP to guide exploration and to satisfy safety requirements. However, such policy-related rules require manual definition by domain experts, especially in real-world sce- narios. In this paper, we use inductive logic programming to learn logic specifications from traces of POMCP executions, i.e., sets of belief-action pairs generated by the planner. Specifically, we learn rules expressed in the paradigm of answer set programming. We then integrate them inside POMCP to provide soft policy bias toward promising actions. In the context of two benchmark sce- narios, rocksample and battery, we show that the integration of learned rules from small task instances can improve performance with fewer Monte Carlo simulations and in larger task instances. We make our modified version of POMCP publicly available at https://github.com/GiuMaz/pomcp_clingo.git
Design and optimization of a portable LQCD Monte Carlo code using OpenACC
The present panorama of HPC architectures is extremely heterogeneous, ranging
from traditional multi-core CPU processors, supporting a wide class of
applications but delivering moderate computing performance, to many-core GPUs,
exploiting aggressive data-parallelism and delivering higher performances for
streaming computing applications. In this scenario, code portability (and
performance portability) become necessary for easy maintainability of
applications; this is very relevant in scientific computing where code changes
are very frequent, making it tedious and prone to error to keep different code
versions aligned. In this work we present the design and optimization of a
state-of-the-art production-level LQCD Monte Carlo application, using the
directive-based OpenACC programming model. OpenACC abstracts parallel
programming to a descriptive level, relieving programmers from specifying how
codes should be mapped onto the target architecture. We describe the
implementation of a code fully written in OpenACC, and show that we are able to
target several different architectures, including state-of-the-art traditional
CPUs and GPUs, with the same code. We also measure performance, evaluating the
computing efficiency of our OpenACC code on several architectures, comparing
with GPU-specific implementations and showing that a good level of
performance-portability can be reached.Comment: 26 pages, 2 png figures, preprint of an article submitted for
consideration in International Journal of Modern Physics
Maximum a Posteriori Estimation by Search in Probabilistic Programs
We introduce an approximate search algorithm for fast maximum a posteriori
probability estimation in probabilistic programs, which we call Bayesian ascent
Monte Carlo (BaMC). Probabilistic programs represent probabilistic models with
varying number of mutually dependent finite, countable, and continuous random
variables. BaMC is an anytime MAP search algorithm applicable to any
combination of random variables and dependencies. We compare BaMC to other MAP
estimation algorithms and show that BaMC is faster and more robust on a range
of probabilistic models.Comment: To appear in proceedings of SOCS1
kmos: A lattice kinetic Monte Carlo framework
Kinetic Monte Carlo (kMC) simulations have emerged as a key tool for
microkinetic modeling in heterogeneous catalysis and other materials
applications. Systems, where site-specificity of all elementary reactions
allows a mapping onto a lattice of discrete active sites, can be addressed
within the particularly efficient lattice kMC approach. To this end we describe
the versatile kmos software package, which offers a most user-friendly
implementation, execution, and evaluation of lattice kMC models of arbitrary
complexity in one- to three-dimensional lattice systems, involving multiple
active sites in periodic or aperiodic arrangements, as well as site-resolved
pairwise and higher-order lateral interactions. Conceptually, kmos achieves a
maximum runtime performance which is essentially independent of lattice size by
generating code for the efficiency-determining local update of available events
that is optimized for a defined kMC model. For this model definition and the
control of all runtime and evaluation aspects kmos offers a high-level
application programming interface. Usage proceeds interactively, via scripts,
or a graphical user interface, which visualizes the model geometry, the lattice
occupations and rates of selected elementary reactions, while allowing
on-the-fly changes of simulation parameters. We demonstrate the performance and
scaling of kmos with the application to kMC models for surface catalytic
processes, where for given operation conditions (temperature and partial
pressures of all reactants) central simulation outcomes are catalytic activity
and selectivities, surface composition, and mechanistic insight into the
occurrence of individual elementary processes in the reaction network.Comment: 21 pages, 12 figure
- …