The Apache Commons Team is pleased to announce the availability of version 1.4 of "Apache Commons RNG".
Apache Commons RNG provides Java implementations of pseudo-random numbers generators. Changes in this version include: New features: o RNG-156: New "DirichletSampler" class to sample from a Dirichlet distribution. o RNG-137: New "StableSampler" class to sample from a stable distribution. o RNG-138: New "CompositeSamplers" class to sample from a weighted combination of samplers. o RNG-140: New "LongSampler" interface for sampling a long. New "UniformLongSampler" to sample from a range. o RNG-151: New "ZigguratSampler" implementation of the modified "Ziggurat" algorithm for Gaussian and exponential sampling. o RNG-147: New "LevySampler" to sample from a Levy distribution. o RNG-145: "ContinuousUniformSampler": Add optional support for an open interval: (lower, upper). o RNG-143: "RandomSource": Add an instance create method. Deprecate the static create method. o RNG-136: New "ObjectSampler<T>" and "SharedStateObjectSampler<T>" interfaces. These interfaces are implemented by samplers returning an object. This changes the functional compatibility of existing samplers that implement SharedStatedSampler<R>: CollectionSampler<T>; CombinationSampler; DiscreteProbabilityCollectionSampler<T>; PermutationSampler; and UnitSphereSampler. The method signature of the SharedStateSampler<R> interface remains 'public R withUniformRandomProvider(UniformRandomProvider)'. The result can still be assigned to an instance of the same class R; it can no longer be assigned to an instance of SharedStatedSampler<R>. It can now be assigned to SharedStateObjectSampler<T> which can be used to generate samples of type <T>. Code that assigned to SharedStatedSampler<R> should be updated. o RNG-135: New "TetrahedronSampler" to sample uniformly from a tetrahedron. o RNG-134: New "BoxSampler" to sample uniformly from a box (or hyperrectangle). o RNG-133: New "LineSampler" to sample uniformly on a line segment. o RNG-131: New "TriangleSampler" to sample uniformly from a triangle. o RNG-132: New "o.a.c.rng.sampling.shape" package for sampling coordinates from shapes. o RNG-128: New "UnitBallSampler" to generate coordinates uniformly within an n-unit ball. o RNG-126: "PoissonSamplerCache": Method to return a SharedStateDiscreteSampler. o RNG-124: Add fixed increment versions of the PCG generators. Fixed Bugs: o RNG-159: "ZigguratSampler.NormalizedGaussian": Corrected biased sampling within convex regions at the edge of the ziggurat. o RNG-146: "GaussianSampler": Prevent infinite mean and standard deviation. o RNG-144: "AhrensDieterExponentialSampler": Avoid possible infinite loop during sampling if the underlying UniformRandomProvider creates a zero for the uniform deviate. o RNG-130: "UnitSphereSampler": Fix 1 dimension sampling to only return vectors containing 1 or -1. Changes: o RNG-163: Update test suite to JUnit 5. o Simplify assertions with simpler equivalent. Thanks to Arturo Bernal. o RNG-162: Update the minimum Java version to 1.8. o RNG-160: "ZigguratSampler.NormalizedGaussian": Performance improvement by extracting ziggurat edge sampling to a separate method. o RNG-157: "UnitSphereSampler": Deprecate public constructor. Use the factory constructor to create an optimal sampler. o RNG-155: "ZigguratNormalizedGaussianSampler": Update to a table size of 256. o RNG-152: Update samplers to use ZigguratSampler.NormalizedGaussian for Gaussian deviates. o RNG-154: Update Gaussian samplers to avoid infinity in the tails of the distribution. Applies to: ZigguratNormalisedGaussianSampler; BoxMullerNormalizedGaussianSampler; and BoxMullerGaussianSampler. o RNG-153: "UnitBallSampler": Update to use the ZigguratSampler for an exponential deviate for ball point picking. o RNG-150: Update "LargeMeanPoissonSampler" and "GeometricSampler" to use the ZigguratSampler for exponential deviates. o RNG-129: "UnitSphereSampler": Improve performance with specialisations for low order dimensions. Added a factory constructor to create the sampler. Historical list of changes: https://commons.apache.org/proper/commons-rng/changes-report.html For complete information on Apache Commons RNG, including instructions on how to submit bug reports, patches, or suggestions for improvement, see the Apache Commons RNG website: https://commons.apache.org/proper/commons-rng/ Distribution packages can be downloaded from https://commons.apache.org/proper/commons-rng/download_rng.cgi When downloading, please verify signatures using the KEYS file available at https://www.apache.org/dist/commons/KEYS Maven artifacts are also available in the central Maven repository: https://repo.maven.apache.org/maven2/org/apache/commons/ ---- <groupId>org.apache.commons</groupId> <artifactId>commons-rng-client-api</artifactId> <version>1.4</version> ---- <groupId>org.apache.commons</groupId> <artifactId>commons-rng-simple</artifactId> <version>1.4</version> ---- <groupId>org.apache.commons</groupId> <artifactId>commons-rng-sampling</artifactId> <version>1.4</version> ---- The Apache Commons Team --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@commons.apache.org For additional commands, e-mail: user-h...@commons.apache.org