19,939 research outputs found

    Efficient and Accurate Parallel Inversion of the Gamma Distribution

    Get PDF
    A method for parallel inversion of the gamma distribution is described. This is very desirable for random number generation in Monte Carlo simulations where gamma variates are required. Let α\alpha be a fixed but arbitrary positive real number. Explicitly, given a list of uniformly distributed random numbers our algorithm applies the quantile function (inverse CDF) of the gamma distribution with shape parameter α\alpha to each element. The result is, therefore, a list of random numbers distributed according to the said distribution. The output of our algorithm has accuracy close to a choice of single- or double-precision machine epsilon. Inversion of the gamma distribution is traditionally accomplished using some form of root finding. This is known to be computationally expensive. Our algorithm departs from this paradigm by using an initialization phase to construct, on the fly, a piecewise Chebyshev polynomial approximation to a transformation function, which can be evaluated very quickly during variate generation. The Chebyshev polynomials are high order, for good accuracy, and generated via recurrence relations derived from nonlinear second order ODEs. A novelty of our approach is that the same change of variable is applied to each uniform random number before evaluating the transformation function. This is particularly amenable to implementation on SIMD architectures, whose performance is sensitive to frequently diverging execution flows due to conditional statements (branch divergence). We show the performance of a CUDA GPU implementation of our algorithm (called Quantus) is within an order of magnitude of the time to compute the normal quantile function

    Fast and accurate parallel computation of quantile functions for random number generation

    Get PDF
    The fast and accurate computation of quantile functions (the inverse of cumulative distribution functions) is very desirable for generating random variates from non-uniform probability distributions. This is because the quantile function of a distribution monotonically maps uniform variates to variates of the said distribution. This simple fact is the basis of the inversion method for generating non-uniform random numbers. The inversion method enjoys many significant advantages, which is why it is regarded as the best choice for random number generation. Quantile functions preserve the underlying properties of the uniform variates, which is beneficial for a number of applications, especially in modern computational finance. For example, copula and quasi-Monte Carlo methods are significantly easier to use with inversion. Inversion is also well suited to variance reduction techniques. However, for a number of key distributions, existing methods for the computational of their quantile functions are too slow in practice. The methods are also unsuited to execution on parallel architectures such as GPUs and FPGAs. These parallel architectures have become very popular, because they allow simulations to be sped up and enlarged. The original contribution of this thesis is a collection of new and practical numerical algorithms for the normal, gamma, non-central χ2 and skew-normal quantile functions. The algorithms were developed with efficient parallel computation in mind. Quantile mechanics—the differential approach to quantile functions—was used with inventive changes of variables and numerical methods to create the algorithms. The algorithms are faster or more accurate than the current state of the art on parallel architectures. The accuracy of GPU implementations of the algorithms have been benchmarked against independent CPU implementations. The results indicate that the quantile mechanics approach is a viable and powerful technique for developing quantile function approximations and algorithms

    Multidisciplinary computational aerosciences

    Get PDF
    As the challenges of single disciplinary computational physics are met, such as computational fluid dynamics, computational structural mechanics, computational propulsion, computational aeroacoustics, computational electromagnetics, etc., scientists have begun investigating the combination of these single disciplines into what is being called multidisciplinary computational aerosciences (MCAS). The combination of several disciplines not only offers simulation realism but also formidable computational challenges. The solution of such problems will require computers orders of magnitude larger than those currently available. Such computer power can only be supplied by massively parallel machines because of the current speed-of-light limitation of conventional serial systems. Even with such machines, MCAS problems will require hundreds of hours for their solution. To efficiently utilize such a machine, research is required in three areas that include parallel architectures, systems software, and applications software. The main emphasis of this paper is the applications software element. Examples that demonstrate application software for multidisciplinary problems currently being solved at NASA Ames Research Center are presented. Pacing items for MCAS are discussed such as solution methodology, physical modeling, computer power, and multidisciplinary validation experiments

    Evaluation of mineralogy per geological layers by Approximate Bayesian Computation

    Full text link
    We propose a new methodology to perform mineralogic inversion from wellbore logs based on a Bayesian linear regression model. Our method essentially relies on three steps. The first step makes use of Approximate Bayesian Computation (ABC) and selects from the Bayesian generator a set of candidates-volumes corresponding closely to the wellbore data responses. The second step gathers these candidates through a density-based clustering algorithm. A mineral scenario is assigned to each cluster through direct mineralogical inversion, and we provide a confidence estimate for each lithological hypothesis. The advantage of this approach is to explore all possible mineralogy hypotheses that match the wellbore data. This pipeline is tested on both synthetic and real datasets
    • …
    corecore