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

Reply via email to