Random Conditional Distribution google
The need to condition distributional properties such as expectation, variance, and entropy arises in algorithmic fairness, model simplification, robustness and many other areas. At face value however, distributional properties are not random variables, and hence conditioning them is a semantic error and type error in probabilistic programming languages. On the other hand, distributional properties are contingent on other variables in the model, change in value when we observe more information, and hence in a precise sense are random variables too. In order to capture the uncertain over distributional properties, we introduce a probability construct — the random conditional distribution — and incorporate it into a probabilistic programming language Omega. A random conditional distribution is a higher-order random variable whose realizations are themselves conditional random variables. In Omega we extend distributional properties of random variables to random conditional distributions, such that for example while the expectation a real valued random variable is a real value, the expectation of a random conditional distribution is a distribution over expectations. As a consequence, it requires minimal syntax to encode inference problems over distributional properties, which so far have evaded treatment within probabilistic programming systems and probabilistic modeling in general. We demonstrate our approach case studies in algorithmic fairness and robustness. …

Consistent Sampling google
We describe a very simple method for `consistent sampling’ that allows for sampling with replacement. The method extends previous approaches to consistent sampling, which assign a pseudorandom real number to each element, and sample those with the smallest associated numbers. When sampling with replacement, our extension gives the item sampled a new, larger, associated pseudorandom number, and returns it to the pool of items being sampled. …

Kernel Mean Embedding google
A Hilbert space embedding of a distribution.


CGPOPS google
A general-purpose C++ software program called $\mathbb{CGPOPS}$ is described for solving multiple-phase optimal control problems using adaptive Gaussian quadrature collocation. The software employs a Legendre-Gauss-Radau direct orthogonal collocation method to transcribe the continuous-time optimal control problem into a large sparse nonlinear programming problem. A class of $hp$ mesh refinement methods are implemented which determine the number of mesh intervals and the degree of the approximating polynomial within each mesh interval to achieve a specified accuracy tolerance. The software is interfaced with the open source Newton NLP solver IPOPT. All derivatives required by the NLP solver are computed using either central finite differencing, bicomplex-step derivative approximation, hyper-dual derivative approximation, or automatic differentiation. The key components of the software are described in detail and the utility of the software is demonstrated on five optimal control problems of varying complexity. The software described in this article provides a computationally efficient and accurate approach for solving a wide variety of complex constrained optimal control problems. …