http://git-wip-us.apache.org/repos/asf/commons-numbers/blob/c7608e46/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 6bb0189..941d628 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -47,3614 +47,18 @@ If the output is not quite correct, check for invisible trailing spaces! <document> <properties> - <title>Commons Math Release Notes</title> + <title>Apache Commons Numbers Release Notes</title> </properties> <body> - <release version="TBD" date="TBD" description="TBD"> - </release> - - <release version="4.0" date="XXXX-XX-XX" description=""> - <action dev="erans" type="fix" issue="MATH-1301"> - "JDKRandomGenerator": Method "nextInt(int)" now throws a "NotStrictlyPositiveException". - The class now delegates to (rather inherits from) "java.util.Random". - </action> - <action dev="erans" type="update" issue="MATH-1305" due-to="Rostislav Krasny"> - "AbstractRandomGenerator" and "BitsStreamGenerator": Slight performance - improvement of the "nextBytes" method (particularly when the number of - requested bytes is a multiple of 4). - </action> - <action dev="erans" type="fix" issue="MATH-1300" due-to="Rostislav Krasny"> - "AbstractRandomGenerator" and "BitsStreamGenerator": Remove a redundant call - to the random data provider. - </action> - <action dev="erans" type="add" issue="MATH-1295" due-to="Aleksei Dievskii"> - "FactorialLog": Cache-based computation of the "log factorial" function (implemented - as an inner class of "CombinatoricsUtils" in package "o.a.c.m.util"). - </action> - <action dev="luc" type="add" issue="MATH-1271" due-to="Qualtagh"> - Added divideUnsigned and remainderUnsigned to ArithmeticUtils. - </action> - <action dev="erans" type="fix" issue="MATH-1231"> - Lifted unnecessary restriction on constructor's argument of - "MicrosphereInterpolator" (package "o.a.c.m.analysis.interpolation"). - </action> - <action dev="tn" type="fix" issue="MATH-1230"> - The "SimplexSolver" will now throw a "DimensionMismatchException" - when calling "optimize(...)" with linear constraints whose dimension - does not match the dimension of the objective function. - </action> - <action dev="luc" type="add" > - Added a fast implementation of IEEEremainder in FastMath. - </action> - <action dev="luc" type="fix" issue="MATH-1222" due-to="Benedikt Ritter"> - Use Double.isNaN rather than x != x in FastMath. - </action> - <action dev="luc" type="fix" issue="MATH-1143"> - Added helper methods to FunctionUtils for univariate and multivariate differentiable functions conversion. - </action> - <action dev="tn" type="fix" issue="MATH-964"> - Removed unused package private class PollardRho in package primes. - </action> - <action dev="tn" type="fix" issue="MATH-1221"> - Improve performance of "ZipfDistribution" by caching the nth generalized harmonic. - </action> - <action dev="tn" type="update" issue="MATH-853"> - "MathRuntimeException" is now the base class for all commons-math - exceptions (except for "NullArgumentException" which extends - "NullPointerException"). - </action> - <action dev="tn" type="remove" issue="MATH-1205"> - Removed methods "test(...)" from "AbstractUnivariateStatistic". - The already existing methods "MathArrays#verifyValues(...)" shall - be used instead. - </action> - <action dev="tn" type="update" issue="MATH-1205"> - The abstract class "AbstractStorelessUnivariateStatistic" does not - extend anymore from "AbstractUnivariateStatistic". - </action> - <action dev="tn" type="update" issue="MATH-1205"> - Default implementation of - "AbstractStorelessUnivariateStatistic#equals(Object)" - will only return true if both instances have the same type. Previously - different statistics were considered to be equal if their current state - happened to be equal. - </action> - <action dev="tn" type="update" issue="MATH-1205"> - Default implementations of "AbstractStorelessUnivariateStatistic#evaluate(...)" - do not alter the internal state anymore. Instead a temporary copy of - the statistic is created for evaluation purposes. - </action> - <action dev="tn" type="fix" issue="MATH-1205"> - Methods "evaluate(...)" of class "Variance" changed the internal state - although it was stated differently in the javadoc. - </action> - <action dev="luc" type="fix" issue="MATH-1191"> - Fixed ignored method parameters in QRDecomposition protected methods. - </action> - <action dev="luc" type="fix" issue="MATH-1212"> - Changed javadoc as the RandomDataGenerator class does not implement - an interface anymore (the previous interface has been deprecated in - 3.X and removed in 4.0). - </action> - <action dev="erans" type="update" issue="MATH-1206"> - Added new API methods in "LeastSquaresProblem.Evaluation" (package - "o.a.c.m.fitting.leastsquares"). - </action> - <action dev="erans" type="update" issue="MATH-1210"> - "QRDecomposition": include information about the condition that - triggers a "SingularMatrixException". - </action> - <action dev="tn" type="update" issue="MATH-757"> - Removed broken synchronization support in "ResizableDoubleArray". - </action> - <action dev="tn" type="add" issue="MATH-945"> - Added method "T log10()" to interface "RealFieldElement". - </action> - <action dev="tn" type="update" issue="MATH-869"> - "SpearmansCorrelation" will now throw an "MathIllegalArgumentException" - if provided with a "NaturalRanking" instance that uses "REMOVED" as "NaNStrategy". - </action> - <action dev="tn" type="update" issue="MATH-869"> - "NullArgumentException" extends now "java.lang.NullPointerException" - instead of "MathIllegalArgumentException". - </action> - <action dev="tn" type="update" issue="MATH-839" due-to="Gilles Sadowski"> - Renamed "cumulativeProbability(double, double)" to "probability(double, double)" - in "IntegerDistribution" and "RealDistribution". - </action> - <action dev="tn" type="add" issue="MATH-1039" due-to="Aleksei Dievskii"> - Added logDensity(double) to RealDistribution and logProbability(int) - to IntegerDistribution interface. The implementations have already been - updated in release 3.3. - </action> - <action dev="tn" type="update" issue="MATH-1155"> - WELL type pseudo-random number generators have been refactored: - the cached indirection index tables per instance are now stored - in a static instance. This reduces the initialization cost when - creating a new instance. - </action> - <action dev="tn" type="remove" issue="MATH-1050"> - Removed "ArithmeticUtils#pow(int, long)" and "ArithmeticUtils#pow(long, long)". - </action> - <action dev="tn" type="update" issue="MATH-825" due-to="Gilles Sadowski"> - Method "LaguerreSolver#laguerre(...)" has been made private. - </action> - <action dev="tn" type="update" issue="MATH-760" due-to="sebb"> - Field "windowSize" in "DescriptiveStatistics" has been made private. - </action> - </release> - - <release version="3.6" date="2016-01-05" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.x JAR file. - -Most notable among the new features are: - field-based version of Ordinary Differential Equations framework, - numerous improvements in distributions, statistics and neuralnet packages, - refactored implementation of microsphere interpolation algorithm, - explicit specification of rotation convention to use (both vector - operator and frame transform conventions are now available). - -The minimum version of the Java platform required to compile and use - Commons Math is Java 5. - -Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). -"> - <action dev="psteitz" type="fix" issue="MATH-1310"> - Improved performance and accuracy of 2-sample KolmogorovSmirnov tests. - </action> - <action dev="luc" type="fix" issue="MATH-1297"> - Detect start failures with multi-step ODE integrators. - </action> - <action dev="luc" type="add" issue="MATH-1302,MATH-1303"> - Added a RotationConvention enumerate to allow specifying the semantics - or axis/angle for rotations. This enumerate has two values: - VECTOR_OPERATOR and FRAME_TRANSFORM. - </action> - <action dev="luc" type="fix" due-to="Julien Queyrel"> - Fixed stability issues with Adams-Bashforth and Adams-Moulton ODE integrators. - The integrators did not estimate the local error properly and were sometimes - stuck attempting to reduce indefinitely the step size as they thought the - error was too high. - </action> - <action dev="luc" type="add" issue="MATH-1288"> - Added a field-based version of Ordinary Differential Equations framework. - This allows integrating ode that refer to RealField elements instead of - primitive double, hence opening the way to use DerivativeStructure to - compute partial differential without using variational equations, or to solve - ode with extended precision using Dfp. - </action> - <action dev="erans" type="fix" issue="MATH-1295" due-to="Luke Lindsay"> - Increased default value for number of allowed evaluations in - "o.a.c.m.optim.univariate.BracketFinder". - </action> - <action dev="psteitz" type="update" issue="MATH-1246"> - Modified 2-sample KolmogorovSmirnovTest to handle ties in sample data. By default, - ties are broken by adding random jitter to input data. Also added bootstrap method - analogous to ks.boot in R Matching package. - </action> - <action dev="tn" type="fix" issue="MATH-1294" due-to="Kamil WÅodarczyk"> - Fixed potential race condition in PolynomialUtils#buildPolynomial in - case polynomials are generated from multiple threads. Furthermore, the - synchronization is now performed on the coefficient list instead of the class. - </action> - <action dev="psteitz" type="update" issue="MATH-1246"> - Added bootstrap method to KolmogorovSmirnov test. - </action> - <action dev="psteitz" type="update" issue="MATH-1287"> - Added constructors taking sample data as arguments to enumerated real and integer distributions. - </action> - <action dev="oertl" type="fix" issue="MATH-1269"> - Fixed FastMath.exp that potentially returned NaN for non-NaN argument. - </action> - <action dev="luc" type="add"> - Added a nth order Brent solver for general real fields, replacing the former - solver that was restricted to Dfp fields only. - </action> - <action dev="erans" type="add" issue="MATH-1286"> - New "Range" inner class of "o.a.c.m.util.IntegerSequence". - </action> - <action dev="oertl" type="fix" issue="MATH-1285" due-to="Pim van der Hoorn "> - Updated reference in ZipfDistribution's javadoc. - </action> - <action dev="tn" type="fix" issue="MATH-1283" due-to="Jean Noel Delavalade"> - Fixed "Gamma#gamma(double)" for negative values smaller than -20. - </action> - <action dev="tn" type="fix" issue="MATH-1237" due-to="Ken Williams"> - Fixed javadoc of methods {floorDiv,floorMod} in class "FastMath". - </action> - <action dev="tn" type="add" issue="MATH-837"> - "AggregateSummaryStatistics" can now aggregate any kind of - "StatisticalSummary". - </action> - <action dev="erans" type="fix" issue="MATH-1279"> - Check precondition (class "o.a.c.m.random.EmpiricalDistribution"). - </action> - <action dev="erans" type="add" issue="MATH-1278"> - Deep copy of "Network" (package "o.a.c.m.ml.neuralnet") to allow evaluation of - of intermediate states during training. - </action> - <action dev="oertl" type="update" issue="MATH-1276"> - Improved performance of sampling and inverse cumulative probability calculation - for geometric distributions. - </action> - <action dev="oertl" type="fix" issue="MATH-1277" due-to="Marc Rosen"> - Fixed incorrect Kendall's tau coefficient calculation due to internal integer overflow. - </action> - <action dev="oertl" type="update" issue="MATH-1274"> - Representation of Kolmogorov-Smirnov statistic as integral value. - </action> - <action dev="luc" type="add" issue="MATH-1273" due-to="Qualtagh"> - Added negative zero support in FastMath.pow. - </action> - <action dev="erans" type="add" issue="MATH-1270"> - Various SOFM visualizations (in package "o.a.c.m.ml.neuralnet.twod.util"): - Unified distance matrix, hit histogram, smoothed data histograms, - topographic error, quantization error. - </action> - <action dev="erans" type="add" issue="MATH-1268"> - New interfaces to be implemented by algorithms that visualizes properties - of a "NeuronSquareMesh2D" (package "o.a.c.m.ml.neuralnet.twod.util"). - </action> - <action dev="luc" type="add" > - Reimplemented pow(double, double) in FastMath, for better accuracy in - integral power cases and trying to fix erroneous JIT optimization again. - </action> - <action dev="luc" type="add" > - Added a pow(double, long) method in FastMath. - </action> - <action dev="luc" type="fix" issue="MATH-1266"> - Fixed split/side inconsistencies in BSP trees. - </action> - <action dev="erans" type="add" issue="MATH-1265"> - "NeuronSquareMesh2D" (package "o.a.c.m.ml.neuralnet.twod") implements "Iterable". - </action> - <action dev="erans" type="add" issue="MATH-1264"> - "MapUtils" (package "o.a.c.m.ml.neuralnet"): Method to sort units according to distance - from a given vector. - </action> - <action dev="erans" type="add" issue="MATH-1263"> - Accessor (class "o.a.c.m.ml.neuralnet.twod.NeuronSquareMesh2D"). - </action> - <action dev="erans" type="add" issue="MATH-1259"> - New "IntegerSequence" class (in package "o.a.c.m.util") with "Incrementor" inner class. - </action> - <action dev="oertl" type="update" issue="MATH-1220"> - Faster generation of Zipf distributed random numbers by using rejection-inversion sampling. - </action> - <action dev="oertl" type="update" issue="MATH-990"> - Improved performance of sort-in-place methods by avoiding boxing. - </action> - <action dev="erans" type="fix" issue="MATH-1261" due-to="Osamu Ikeuchi"> - Avoid overflow in "Fraction" (multiplication or division by an int). - </action> - <action dev="oertl" type="fix" issue="MATH-1258" due-to="Gunel Jahangirova"> - Added check for equal array lengths to distance measure functions. - </action> - <action dev="erans" type="fix" issue="MATH-1257" due-to="Bill Murphy"> - Better accuracy in computation of cumulative probability of "NormalDistribution" - (package "o.a.c.m.distribution"). - </action> - <action dev="erans" type="fix" issue="MATH-1256"> - Boundary check to construct an "Interval" (package "o.a.c.m.geometry.euclidean.oned"). - </action> - <action dev="erans" type="fix" issue="MATH-1255"> - Wrong neighbourhood size in class "KohonenUpdateAction" (package "o.a.c.m.ml.neuralnet.sofm"). - </action> - <action dev="psteitz" type="fix" issue="MATH-1252" due-to="John Bay"> - ResizableDoubleArray constructor does not work with double array of size 1. - </action> - <action dev="erans" type="fix" issue="MATH-1251"> - Fixed initial value of "number of calls" counter in class "KohonenUpdateAction" - (package "o.a.c.m.ml.neuralnet.sofm"). - </action> - <action dev="erans" type="add" issue="MATH-1250"> - "Neuron" class (package "o.a.c.m.ml.neuralnet"): added methods that can be used - to assess concurrency performance. - </action> - <action dev="erans" type="fix" issue="MATH-1248" due-to="Chris Popp"> - Removed unnecessary allocations in "BigFraction" (package "o.a.c.m.fraction"). - </action> - <action dev="psteitz" type="fix" issue="MATH-1245"> - Fixed error in computing discrete distribution of D statistics for small-sample - 2-sample Kolmogorov-Smirnov tests. Error was causing incorrect p-values returned - by exactP and monteCarloP methods (used by default for small, mid-size samples). - </action> - <action dev="erans" type="update" issue="MATH-1243"> - Refactored implementation of the "miscrosphere projection" - interpolation algorithm. - New classes: "MicrosphereProjectionInterpolator", - "InterpolatingMicrosphere" and "InterpolatingMicrosphere2D" - replace "MicrosphereInterpolator" and "MicrosphereInterpolatingFunction". - (package "o.a.c.m.analysis.interpolation"). - </action> - <action dev="erans" type="add" issue="MATH-1244"> - Method "cosAngle" in "o.a.c.m.util.MathArrays". - </action> - <action dev="tn" type="fix" issue="MATH-1240"> - "KolmogorovSmirnovTest#ksSum(...)" returned wrong result in case the provided - t-parameters was zero. This affected the calculation of "approximateP(...)" for - identical samples. - </action> - <action dev="tn" type="fix" issue="MATH-1242" due-to="Otmar Ertl"> - Improved performance to calculate the two-sample Kolmogorov-Smirnov test - via monte carlo simulation ("KolmogorovSmirnovTets#monteCarloP(...)"). - </action> - <action dev="tn" type="fix" issue="MATH-1241" due-to="Aleksei Dievskii"> - A "StackOverflowException" was thrown when passing Double.NaN or infinity - to "Gamma#digamma(double)" or "Gamma#trigamma(double)". Now the input value - is propagated to the output if it is not a real number. - </action> - <action dev="tn" type="fix" issue="MATH-1232" due-to="Otmar Ertl"> - Improved performance of calculating the two-sample Kolmogorov-Smirnov - test statistic. - </action> - <action dev="luc" type="fix" issue="MATH-1232"> - Fixed error message for unknown parameter name in ODE. - </action> - <action dev="luc" type="fix" issue="MATH-1226"> - Fixed wrong event detection in case of close events pairs. - </action> - <action dev="tn" type="fix"> - Fix potential branching errors in "FastMath#pow(double, double)" when - passing special values, i.e. infinity, due to erroneous JIT optimization. - </action> - <action dev="luc" type="fix" issue="MATH-1118" > - Fixed equals/hashcode contract failure for Dfp. - </action> - <action dev="luc" type="fix" issue="MATH-1223" > - Fixed wrong splitting of huge number in extended accuracy algorithms. - </action> - <action dev="tn" type="fix" issue="MATH-1153" due-to="Sergei Lebedev"> - Improve performance of "BetaDistribution#sample()" by using Cheng's algorithm. - </action> - <action dev="tn" type="fix" issue="MATH-1197"> - Computation of 2-sample Kolmogorov-Smirnov statistic in case of ties - was not correct. - </action> - </release> - - <release version="3.5" date="2015-04-17" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.4.1 JAR file. - -Most notable among the new features are: - getQuadraticMean method added to DescriptiveStatistics SummaryStatistics - which calculates the root mean square, and a way to build polyhedrons sets - from list of vertices and the facets they belong too. There have been - numerous bug fixes. See below for a full list. - -The minimum version of the Java platform required to compile and use - Apache Commons Math is Java 5. - -Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). -"> - <action dev="luc" type="fix" issue="MATH-1195"> - Moved FastMathTestPerformance out of the main test tree, as is is - a benchmark rather than a test. - </action> - <action dev="luc" type="add"> - Added a way to build polyhedrons sets from a list of vertices and - facets specified using vertices indices. - </action> - <action dev="psteitz" type="update" issue="MATH-1213"> - Added Laguerre complex solve methods taking maxEval parameters. - </action> - <action dev="luc" type="fix" issue="MATH-1191"> - Fixed ignored method parameters in QRDecomposition protected methods. - </action> - <action dev="luc" type="fix" issue="MATH-1211" due-to="Mike Zimmerman"> - Fixed wrong selection of line/polyhedron intersection point. - </action> - <action dev="luc" type="fix" issue="MATH-1162"> - Improved fix for corner cases in BSP-tree merging, when cut sub-hyperplanes vanish. - </action> - <action dev="tn" type="fix" issue="MATH-1209" due-to="Jonathan Ogilvie"> - Fixed link to algorithm description in "PoissonDistribution#sample()". - </action> - <action dev="psteitz" type="fix" issue="MATH-1208"> - EmpiricalDistribution cumulativeProbability can return NaN when evaluated within a constant bin. - </action> - <action dev="psteitz" type="fix" issue="MATH-1203"> - EmpiricalDistribution getKernel fails for buckets with only multiple instances of the same value. - </action> - <action dev="evanward" type="fix" issue="MATH-1204"> - "UnivariateSolverUtils#bracket(...)" sometimes failed to bracket - if a reached the lower bound. - </action> - <action dev="sebb" type="add" issue="MATH-1198"> - Simplified "FastMath#exp(double)" in order to avoid a potential - Java 1.5 JIT bug when calling with negative infinity as argument. - </action> - <action dev="erans" type="add" issue="MATH-1199"> - Added method "getQuadraticMean()" to "DescriptiveStatistics" - and "SummaryStatistics" which calculates the root mean square. - </action> - </release> - - <release version="3.4.1" date="2015-01-11" description=" -This is a maintenance release: It fixes issue MATH-1188. -"> - <action dev="sebb" type="fix" issue="MATH-1188"> - Fixed non-Java1.5 code in BesselJ. - </action> - </release> - - <release version="3.4" date="2014-12-26" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.3 JAR file. - -Most notable among the new features are: - new distributions (Gumbel, Laplace, Logistic, Nakagami), and - improvements on percentiles algorithms (better handling for NaNs - in the regular algorithm, plus a new storeless implementation). - Bicubic and tricubic interpolators have been fixed and new - implementations added. There have been numerous bug fixes and - several improvements on performances or robustness. See below - for a full list. - -The minimum version of the Java platform required to compile and use - Apache Commons Math is Java 5. - -Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). -"> - <action dev="psteitz" type="add" issue="MATH-1066" due-to="Brian Wignall"> - Added Bessel functions of the first kind, based on NetLib implementation. - </action> - <action dev="tn" type="fix" issue="MATH-1142" due-to="Arne Schwarz"> - Improve performance of kalman gain calculation in "KalmanFilter" by - directly solving a linear system rather than computing the matrix - inverse. - </action> - <action dev="psteitz" type="fix" issue="MATH-1181"> - Fixed integer overflow in KolmogorovSmirnovTest causing 2-sample test - to use exact method when the product of the sample sizes exceeds - Integer.MAX_VALUE, resulting in effectively hung execution. - </action> - <action dev="erans" type="add" issue="MATH-1180"> - Method to create a sequence of integers (in "o.a.c.m.util.MathArrays"). - </action> - <action dev="erans" type="add" issue="MATH-1172"> - New class "SimpleCurveFitter": Boiler-plate code to allow fitting of - a user-defined parametric function. - </action> - <action dev="erans" type="add" issue="MATH-1173"> - New classes "TricubicInterpolatingFunction" and "TricubicInterpolator" to - replace "TricubicSplineInterpolatingFunction" and "TricubicSplineInterpolator". - </action> - <action dev="erans" type="fix" issue="MATH-1178" due-to="Dmitriy"> - Fixed example in userguide ("stat" section). - </action> - <action dev="erans" type="fix" issue="MATH-1175" due-to="Karsten Loesing"> - Fixed inverse cumulative probability of 0 in "LaplaceDistribution". - </action> - <action dev="erans" type="add" issue="MATH-1166"> - New classes "BicubicInterpolatingFunction" and "BicubicInterpolator" to - replace "BicubicSplineInterpolatingFunction" and "BicubicSplineInterpolator". - </action> - <action dev="luc" type="update" > - Spurious vertices in the middle of otherwise straight edges are now - filtered out when rebuilding polygons boundaries from BSP trees. - </action> - <action dev="luc" type="fix" issue="MATH-1174" > - Fixed a problem with too thin polygons considered to have infinite size. - </action> - <action dev="luc" type="add" > - Boundary attributes in regions now provides the BSP tree nodes that - were used to split the sub-hyperplane forming the boundary part of the facet. - </action> - <action dev="luc" type="fix" issue="MATH-1162" > - Fixed a problem with vanishing cut sub-hyperplanes during BSP tree merging. - </action> - <action dev="erans" type="fix" issue="MATH-1167" due-to="Neil Ireson"> - "o.a.c.m.stat.regression.OLSMultipleLinearRegression": Use threshold - when performing "QRDecomposition". - </action> - <action dev="tn" type="fix" issue="MATH-1165" due-to="Pashutan Modaresi"> - "FuzzyKMeansClusterer" has thrown an exception in case one of the data - points was equal to a cluster center. - </action> - <action dev="erans" type="add" issue="MATH-1144"> - Interface to allow parameter validation in "o.a.c.m.fitting.leastsquares": - the point computed by by the optimizer can be modified before evaluation. - </action> - <action dev="luc" type="fix" issue="MATH-1160" > - Provide access to state derivatives in ContinuousOutputModel. - </action> - <action dev="luc" type="fix" issue="MATH-1138" due-to="Hank Grabowski"> - Fixed bicubic spline interpolator, using Akima splines. - </action> - <action dev="psteitz" type="add" issue="MATH-1154" > - Changed classes in the inference package that instantiate distributions to - pass null RandomGenerators to avoid initialization overhead for the default - generator. - </action> - <action dev="luc" type="add" issue="MATH-1156" > - Added all Java 8 StrictMath methods to FastMath, so FastMath remains compatible - with newer Java versions. - </action> - <action dev="tn" type="add" issue="MATH-1139" due-to="Alexey Volkov"> - Added Gumbel, Laplace, Logistic and Nakagami distributions. - </action> - <action dev="psteitz" type="fix" issue="MATH-1147"> - Added statistics missing from toString method in SummaryStatistics. - </action> - <action dev="tn" type="fix" issue="MATH-1152" due-to="Andras Sereny"> - Improved performance of "EnumeratedDistribution#sample()" by caching - the cumulative probabilities and using binary rather than a linear search. - </action> - <action dev="tn" type="fix" issue="MATH-1148" due-to="Guillaume Marceau"> - "MonotoneChain" did not take the tolerance factor into account when - sorting the input points. In case of collinear points this could result - in a "ConvergenceException" when computing the hull. - </action> - <action dev="erans" type="fix" issue="MATH-1151"> - Interface "ValueAndJacobianFunction" is a precondition for lazy - evaluation (in "o.a.c.m.fitting.leastsquares"). - </action> - <action dev="tn" type="fix" issue="MATH-1145" due-to="Anders Conbere"> - Fix potential integer overflows in "MannWhitneyUTest" when providing - large sample arrays. - </action> - <action dev="tn" type="fix" issue="MATH-1149" due-to="M Kim"> - Fixed potential null pointer dereferencing in constructor of - "DummyStepInterpolator(DummyStepInterpolator)". - </action> - <action dev="psteitz" type="fix" issue="MATH-1136" due-to="Aleksei Dievskii"> - Fixed BinomialDistribution to deal with degenerate cases correctly. - </action> - <action dev="tn" type="fix" issue="MATH-1135" due-to="Guillaume Marceau"> - "MonotoneChain" failed to generate a convex hull if only a minimal hull - shall be created (includeCollinearPoints=false) and collinear hull points - were present in the input. - </action> - <action dev="psteitz" type="fix" issue="MATH-1131" due-to="Schalk W. Cronjé"> - Improve performance of "KolmogorovSmirnovTest#kolmogorovSmirnovTest(...)" for - large samples. Also changed implementation for large n to use Pelz-Good - approximation. - </action> - <action dev="erans" type="fix" issue="MATH-1134"> - "BicubicSplineInterpolatingFunction": all fields made final and initialized in - the constructor. Added flag to request initialization, or not, of the internal - data needed for partial derivatives. - </action> - <action dev="psteitz" type="fix" issue="MATH-984"> - Constrained EmpiricalDistribution sample/getNextValue methods to return - values within the range of the data; correctly linked RandomGenerator to - superclass so that RealDistribution reseedRandomGenerator method works. - </action> - <action dev="luc" type="add" issue="MATH-1120" due-to="Venkatesha Murthy"> - Added several different estimation types and NaN handling strategies for Percentile. - </action> - <action dev="psteitz" type="add" issue="MATH-418" due-to="Venkatesha Murthy"> - Added implementation of PSquare algorithm to estimate percentiles without - storing data in memory (i.e. as StorelessUnivariateStatistic). - </action> - <action dev="erans" type="fix" issue="MATH-1129"> - "Percentile": wrong sorting in the presence of NaN. - </action> - <action dev="erans" type="update" issue="MATH-1128"> - Added lazy evaluation to "LeastSquaresFactory" (in "o.a.c.m.fitting.leastsquares") - to avoid evaluating the model when the optimization algorithm does not actually - require it. - </action> - <action dev="luc" type="fix" issue="MATH-1127"> - Fixed overflow in Precision.equals with ulps (both double and float versions). - </action> - <action dev="tn" type="fix" issue="MATH-1125" due-to="Ajo Fod"> - Performance improvements for Student's t-distribution. - </action> - <action dev="luc" type="fix" issue="MATH-1123" due-to="Aurélien Labrosse"> - Fixed NullPointerException when chopping-off a sub-hyperplane - that is exactly at a region boundary. - </action> - <action dev="erans" type="fix" issue="MATH-1121" due-to="Ajo Fod"> - "BrentOptimizer": increment base class iteration counter. - </action> - </release> - - <release version="3.3" date="2014-05-05" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.x JAR file. - -Most notable among the new features are: - Framework for creating artificial neural nets, self organizing feature maps, - computational geometry algorithms (convex hull, enclosing ball), performance - improvements of the linear simplex solver, refactoring of curve fitters, - low-discrepancy random generators (sobol, halton), least-squares fitting. - -The minimum version of the Java platform required to compile and use - Commons Math is Java 5. - -Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). - 3. A few methods/constructors in the package o.a.c.m.geometry.partitioning - have changed their signature in a non backwards-compatible way. The respective - classes are intended to be package private only and are not supposed to be - used for other purposes. -"> - <action dev="tn" type="add" issue="MATH-1110" due-to="Edward Segall"> - Added new constructor to "OLSMultipleLinearRegression" to be able - to specify a custom singularity threshold for QR decomposition. - </action> - <action dev="erans" type="fix" issue="MATH-1092"> - Extracted class "LineSearch" from "PowellOptimizer", to be used in - "NonLinearConjugateGradientOptimizer" (in place of the implementation - that triggered this issue). - </action> - <action dev="luc" type="fix" issue="MATH-1115"> - Build properly empty polyhedrons set when given equal min/max boundaries. Also explained - better in the javadoc about some wrong usage of PolyhedronsSet constructor. - </action> - <action dev="luc" type="fix" issue="MATH-1117"> - Build properly empty polygons set when given equal min/max boundaries. Also explained - better in the javadoc about some wrong usage of PolygonsSet constructor. - </action> - <action dev="luc" type="add" issue="MATH-1119"> - Added a fast single-step method for fixed-step Runge-Kutta integrators. - </action> - <action dev="erans" type="fix" issue="MATH-1118"> - "Complex": Fixed compatibility of "equals(Object)" with "hashCode()". - Added new methods for testing floating-point equality between the real - (resp. imaginary) parts of two complex numbers. - </action> - <action dev="luc" type="add" > - Added an order 6 fixed-step ODE integrator designed by H. A. Luther in 1968. - </action> - <action dev="luc" type="update" > - Bracketing utility for univariate root solvers returns a tighter interval than before. - It also allows choosing the search interval expansion rate, supporting both linear - and asymptotically exponential rates. - </action> - <action dev="luc" type="fix" issue="MATH-1107" due-to="Bruce A Johnson"> - Prevent penalties to grow multiplicatively in CMAES for out of bounds points. - </action> - <action dev="psteitz" type="update" issue="MATH-437"> - Added KolmogorovSmirnovTest class, deprecating KolmogorovSmirnovDistribution. - </action> - <action dev="luc" type="add" issue="MATH-1101"> - Improved documentation of QR decomposition handling of singular matrices. - </action> - <action dev="luc" type="add" issue="MATH-1053" due-to="Sean Owen"> - QR decomposition can compute pseudo-inverses for tall matrices. - </action> - <action dev="luc" type="add" issue="MATH-820"> - Field vectors now implement the visitor pattern just like real vectors. - </action> - <action dev="luc" type="fix" issue="MATH-875"> - Un-deprecated RealVector.sparseIterator, documenting explicitly that entries - not iterated above are the zero ones. - </action> - <action dev="luc" type="fix" issue="MATH-821"> - Relaxed specification for function mapping on vectors, thus allowing straightforward - implementation for sparse vectors. - </action> - <action dev="luc" type="update" issue="MATH-1099" due-to="Evan Ward"> - Make QR the default in GaussNewtonOptimizer. - </action> - <action dev="luc" type="update" issue="MATH-1099" due-to="Evan Ward"> - Add Cholesky option to GaussNewtonOptimizer. - </action> - <action dev="luc" type="update" issue="MATH-1099" due-to="Evan Ward"> - Make QR in GaussNewton faster and more accurate. - </action> - <action dev="luc" type="update" issue="MATH-870"> - The sparse vector and matrix classes have been un-deprecated. This is a reversal - of a former decision, as we now think we should adopt a generally accepted - behavior which is ... to ignore the problems of NaNs and infinities in - sparse linear algebra entities. - </action> - <action dev="tn" type="add" issue="MATH-749"> - Added MonotoneChain algorithm to compute the convex hull of a collection of - points in 2D. Additionally, the AklToussaintHeuristic can be used to speed up - the generation. - </action> - <action dev="tn" type="fix" issue="MATH-1065" due-to="matteodg"> - Calculating the inverse cumulative probability of an "EnumeratedRealDistribution" - will now return the correct result according to the selected enumerated probability - mass function. - </action> - <action dev="erans" type="update" issue="MATH-1050"> - Deprecated "ArithmeticUtils#pow(int, long)" and "ArithmeticUtils#pow(long, long)" - in favor of corresponding methods "ArithmeticUtils#pow(..., int)". - </action> - <action dev="erans" type="fix" issue="MATH-976"> - Create additional artifact "commons-math3-x.y.z-tools.jar" as part of the - release process. This artifact contains useful tools, e.g. for performance testing. - </action> - <action dev="erans" type="fix" issue="MATH-990"> - Improved performance of "MathArrays#sortInPlace(...)". - </action> - <action dev="tn" type="fix" issue="MATH-1044" due-to="Sean Owen"> - Clarify javadoc of "DecompositionSolver#getInverse()" and corresponding implementations - wrt the actually returned inverse. Several decomposition implementations are able - to return a pseudo-inverse in case of a singular matrix. - </action> - <action dev="luc" type="add" issue="MATH-1095"> - Added Emo Welzl algorithm to find the smallest enclosing ball of a collection of points. - </action> - <action dev="erans" type="fix" issue="MATH-985" due-to="Johnathan Kool"> - Fixed an indexing problem in "BicubicSplineInterpolatingFunction" which - resulted in wrong interpolations. - </action> - <action dev="tn" type="add" issue="MATH-1072"> - Added a constructor to "AbstractListChromosome" that does not copy the - input argument. - </action> - <action dev="luc" type="add" issue="MATH-1091"> - BSP tree now provides an API to compute a global signed distance from - a test point to the region. The distance is positive if the point is - outside of the region, negative if the point is inside, and zero - when the point is at the boundary. The distance is continuous - everywhere, so it can be used with a root solver to identify accurately - boundary crossings. This API is available for all BSP trees, in - Euclidean and spherical geometries, and in all dimensions. - </action> - <action dev="luc" type="add"> - Added new geometry sub-packages: spherical.oned which deals with geometry - on the 1-sphere (i.e. the circle) and spherical.twod which deals with the - 2-sphere (i.e. the regular sphere). BSP trees can be used in these new - spaces, so one can build arcs sets and spherical polygons sets with all - the regular operations (inside/outside/boundary checks, union, intersection, - symetric difference, complement ...). - </action> - <action dev="luc" type="add" issue="MATH-1090"> - IntervalsSet now implements Iterable<double[]>, so one can iterate - over the sub-intervals without building a full list containing - a copy of everything beforehand. - </action> - <action dev="tn" type="fix" issue="MATH-1089"> - "Precision#round(double, ...)" will now return negative zero for negative - values rounded to zero, similar to the float variant. - </action> - <action dev="erans" type="fix" issue="MATH-1088"> - The iterator returned by "MultiDimensionalCounter#iterator()" will now - correctly throw a "NoSuchElementException" when calling "next()" and the - iterator is already exhausted. - </action> - <action dev="luc" type="fix" > - Fixed an issue with noisy functions for ODE events detection. - </action> - <action dev="erans" type="add" issue="MATH-923"> - Utilities for creating artificial neural networks (package "o.a.c.m.ml.neuralnet"). - Implementation of Kohonen's Self-Organizing Feature Map (SOFM). - </action> - <action dev="tn" type="fix" issue="MATH-1082"> - The cutOff mechanism of the "SimplexSolver" in package o.a.c.math3.optim.linear - could lead to invalid solutions. The mechanism has been improved in a way that - the tableau does not need to be updated anymore. Additionally, a new check will - prevent impossible solutions to be returned as valid. - </action> - <action dev="tn" type="fix" issue="MATH-1079"> - Improved performance of "SimplexSolver" in package o.a.c.math3.optim.linear by - directly performing row operations and keeping track of the current basic variables. - </action> - <action dev="tn" type="update" issue="MATH-1080"> - The "LinearConstraintSet" will now return the enclosed collection of "LinearConstraint" - objects in the same order as they have been added. - </action> - <action dev="tn" type="fix" issue="MATH-842"> - Added support for different pivot selection rules to the "SimplexSolver" by introducing - the new "OptimizationData" class "PivotSelectionRule". Currently supported rules are: - Dantzig (default) and Bland (avoids cycles). - </action> - <action dev="tn" type="fix" issue="MATH-1070" due-to="Oleksandr Muliarevych"> - Fix "Precision#round(float, int, int)" when using rounding mode "BigDecimal.ROUND_UP" - and the discarded fraction is zero. - </action> - <action dev="tn" type="fix" issue="MATH-1059"> - Use "FastMath" instead of "Math" within Commons Math. - </action> - <action dev="tn" type="fix" issue="MATH-1068" due-to="Gal Lalouche"> - Avoid overflow when calculating Kendall's correlation for large arrays. - </action> - <action dev="erans" type="fix" issue="MATH-1067" due-to="Florian Erhard"> - Avoid infinite recursion in "Beta.regularizedBeta" (package "o.a.c.m.special"); - </action> - <action dev="erans" type="add" issue="MATH-1014"> - Refactoring of curve fitters (package "o.a.c.m.fitting"). - </action> - <action dev="tn" type="add" issue="MATH-970"> - Added possibility to retrieve the best found solution of the "SimplexSolver" in case - the iteration limit has been reached. The "optimize(OptimizationData...)" method now - supports a "SolutionCallback" which provides access to the best solution if - a feasible solution could be found (phase 2 of the Two-Phase simplex method has been reached). - </action> - <action dev="tn" type="update" issue="MATH-1031" due-to="Thorsten Schäfer"> - Added new class "ClusterEvaluator" to evaluate the result of a clustering algorithm - and refactored existing evaluation code in "MultiKMeansPlusPlusClusterer" - into separate class "SumOfClusterVariances". - </action> - <action dev="psteitz" type="add" issue="MATH-1061"> - Added InsufficientDataException. - </action> - <action dev="psteitz" type="fix" issue="MATH-1056" due-to="Sean Owen"> - Fixed unintended integer division error in PoissonDistribution sampling method. - </action> - <action dev="tn" type="fix" issue="MATH-1057"> - Fixed failing unit tests for "BOBYQAOptimizer" when executed with a Oracle/Sun JVM 1.5. - </action> - <action dev="tn" type="fix" issue="MATH-1062"> - A call to "KalmanFilter#correct(...)" may have resulted in "NonSymmetricMatrixException" - as the internally used matrix inversion method was using a too strict symmetry check. - </action> - <action dev="erans" type="fix" issue="MATH-1058" due-to="Sean Owen"> - Precision improvements (for small values of the argument) in "Beta" function - and in "LogNormalDistribution" and "WeibullDistribution". - </action> - <action dev="tn" type="fix" issue="MATH-1055" due-to="Sean Owen"> - Fixed some invalid links inside javadoc and added missing deprecated annotations. - </action> - <action dev="tn" type="add" issue="MATH-983"> - Added a graphical overview of available continuous distributions to the userguide. - </action> - <action dev="tn" type="add" issue="MATH-1051" due-to="Matt Adereth,devl"> - Added Kendall's tau correlation (KendallsCorrelation). - </action> - <action dev="tn" type="fix" issue="MATH-1051"> - "EigenDecomposition" may have failed to compute the decomposition for certain - non-symmetric matrices. Port of the respective bugfix in Jama-1.0.3. - </action> - <action dev="erans" type="fix" issue="MATH-1047"> - Check for overflow in methods "pow" (class "o.a.c.m.util.ArithmeticUtils"). - </action> - <action dev="erans" type="fix" issue="MATH-1045" due-to="Sean Owen"> - "EigenDecomposition": Using tolerance for detecting whether a matrix is singular. - </action> - <action dev="luc" type="add" issue="MATH-1036" due-to="Ajo Fod"> - Added SparseGradient to deal efficiently with first derivatives when the number - of variables is very large but most computations depend only on a few of the - variables. - </action> - <action dev="psteitz" type="update" issue="MATH-1039" due-to="Aleksei Dievskii"> - Added logDensity methods to AbstractReal/IntegerDistribution with naive default - implementations and improved implementations for some current distributions. - </action> - <action dev="psteitz" type="add" issue="MATH-1038" due-to="Thorsten Schäfer"> - Added ConfidenceInterval class and BinomialConfidenceInterval providing several - estimators for confidence intervals for binomial probabilities. - </action> - <action dev="tn" type="fix" issue="MATH-1035" due-to="derphead"> - Simplified and improved performance of "ArithmeticUtils#addAndCheck(long, long)". - </action> - <action dev="tn" type="add" issue="MATH-1004" due-to="Ajo Fod"> - Added new methods to compute the inverse of a matrix to "DiagonalMatrix" - and "MatrixUtils". - </action> - <action dev="tn" type="fix" issue="MATH-1029"> - The "BigFraction" constructor will throw a "FractionConversionException" - also in case negative values are provided which exceed the allowed range - (+/- Integer.MAX_VALUE). - </action> - <action dev="erans" type="add" issue="MATH-1041" due-to="Sean Owen"> - "Pair": added factory method and "toString" method. - </action> - <action dev="sebb" type="add" issue="MATH-1002"> - "AbstractUnivariateStatistic.test(...)" methods have uses outside subclasses; - implementation moved to MathArrays.verifyValues(...). - </action> - <action dev="tn" type="fix" issue="MATH-1033" due-to="Yuan Qu"> - The "KalmanFilter" wrongly enforced a column dimension of 1 for - the provided control and measurement noise matrix. - </action> - <action dev="tn" type="fix" issue="MATH-1037" due-to="Aleksei Dievskii"> - Fix a typo in the test class of "GeometricDistribution" and ensure that a meaningful - tolerance value is used when comparing test results with expected values. - </action> - <action dev="psteitz" type="add" issue="MATH-1034" due-to="Thorsten Schäfer"> - Added exact binomial test implementation. - </action> - <action dev="tn" type="add" issue="MATH-1018" due-to="Ajo Fod"> - Added overloaded constructors for subclasses of "RealDistribution" implementations - which do not require an explicit "inverseCumulativeAccuracy". The default accuracy will - be used instead. - </action> - <action dev="tn" type="add" issue="MATH-1001" due-to="sebb"> - Added overloaded methods for "Frequency#incrementValue(Comparable, long)" with - int, long and char primitive arguments. - </action> - <action dev="tn" type="add" issue="MATH-1030" due-to="Thorsten Schäfer"> - Added a section to the userguide for the new package o.a.c.m.ml with an - overview of available clustering algorithms and a code example. - </action> - <action dev="tn" type="fix" issue="MATH-996" due-to="Tim Allison"> - Creating a "Fraction" or "BigFraction" object with a maxDenominator parameter - does not throw a "FractionConversionException" anymore in case the value is - very close to fraction. - </action> - <action dev="tn" type="add" issue="MATH-1028" due-to="Thorsten Schäfer"> - Added new distance metric "EarthMoversDistance". - </action> - <action dev="tn" type="fix" issue="MATH-999" due-to="Ajo Fod"> - Improve performance of "DiagonalMatrix#preMultiply(RealVector)". - </action> - <action dev="psteitz" type="add" issue="MATH-1025"> - Added CombinatoricsUtils to the util package, moving binomial - coefficients, factorials and Stirling numbers there and adding - a combinations iterator. - </action> - <action dev="erans" type="add" issue="MATH-991"> - "PolynomialSplineFunction": added method "isValidPoint" that - checks whether a point is within the interpolation range. - </action> - <action dev="erans" type="add" issue="MATH-989"> - "BicubicSplineInterpolatingFunction": added method "isValidPoint" that - checks whether a point is within the interpolation range. - </action> - <action dev="erans" type="fix" issue="MATH-1021" due-to="Brian Bloniarz"> - Fixed overflow in "HypergeometricDistribution". - </action> - <action dev="erans" type="fix" issue="MATH-1020"> - Fixed "nextPermutation" method (in "o.a.c.m.random.RandomDataGenerator"). - This bug does not affect applications using a previous version of - Commons Math. - </action> - <action dev="erans" type="fix" issue="MATH-1019"> - Buggy (private) method "shuffle" in "o.a.c.m.random.RandomDataGenerator" - superseded by "MathArrays.shuffle" (cf. MATH-1010). - </action> - <action dev="erans" type="add" issue="MATH-1010"> - Utility to shuffle an array. - </action> - <action dev="erans" type="fix" issue="MATH-1012"> - Created "RandomGeneratorFactory" (package "o.a.c.m.random") to reduce - code duplication in "RandomDataGenerator". - </action> - <action dev="erans" type="add" issue="MATH-1008"> - Created package ("o.a.c.m.fitting.leastsquares") for least-squares - fitting, with implementations of "LevenbergMarquardtOptimizer" and - "GaussNewtonOptimizer" adapted to a new ("fluent") API. - </action> - <action dev="erans" type="update" issue="MATH-1011"> - Improved implementation of "sample" method of "UniformIntegerDistribution". - </action> - <action dev="sebb" type="add" issue="MATH-1007"> - Add mode function to StatUtils class. - </action> - <action dev="psteitz" type="update" issue="MATH-1006"> - Enabled LaTeX expressions in javadoc and site docs via MathJax. - </action> - <action dev="sebb" type="add" issue="MATH-1000"> - Add mode function to Frequency class. - </action> - <action dev="erans" type="fix" issue="MATH-1005" due-to="Roman Werpachowski"> - Fixed "MathArrays.linearCombination" when array length is 1. - </action> - <action dev="erans" type="add" issue="MATH-997"> - Implemented Gauss-Hermite quadrature scheme (in package - "o.a.c.m.analysis.integration.gauss"). - </action> - <action dev="erans" type="update" issue="MATH-995"> - Documented limitation of "IterativeLegendreGaussIntegrator" (added - warning about potential wrong usage). - </action> - <action dev="erans" type="fix" issue="MATH-993"> - In "GaussNewtonOptimizer", check for convergence before updating the - parameters estimation for the next iteration. - </action> - <action dev="luc" type="add" issue="MATH-967" due-to="Oleksandr Kornieiev"> - Added midpoint integration method. - </action> - <action dev="luc" type="fix" issue="MATH-988" due-to="Andreas Huber"> - Fixed NullPointerException in 2D and 3D sub-line intersections. - </action> - <action dev="psteitz" type="update" issue="MATH-987" due-to="Ajo Fod"> - Added append method to SimpleRegression, making this class map/reducible. - </action> - <action dev="psteitz" type="update" issue="MATH-978" due-to="Ajo Fod"> - Added append method to StorelessCovariance, making this class map/reducible. - </action> - <action dev="tn" type="add" issue="MATH-851" due-to="Clemens Novak"> - Added method "MathArrays#convolve(double[], double[])" to compute the - discrete, linear convolution of two sequences. - </action> - <action dev="tn" type="add" issue="MATH-977"> - Added low-discrepancy random generator "HaltonSequenceGenerator". - </action> - <action dev="tn" type="add" issue="MATH-826" due-to="Sam Halliday"> - Added low-discrepancy random generator "SobolSequenceGenerator". - </action> - <action dev="tn" type="add" issue="MATH-973" due-to="Mauro Tortonesi"> - Added "GeometricDistribution" to "o.a.c.m.distribution" package. - </action> - <action dev="tn" type="add" issue="MATH-968" due-to="Alex Gryzlov"> - Added "ParetoDistribution" to "o.a.c.m.distribution" package. - </action> - <action dev="tn" type="fix" issue="MATH-962"> - Added clarification to the javadoc of "VectorFormat" and derived classes - in case "," is used as a separator. - </action> - <action dev="tn" type="add" issue="MATH-898"> - Added "FuzzyKMeansClusterer" to "o.a.c.m.ml.clustering" package. - </action> - <action dev="luc" type="fix" issue="MATH-965" > - Fixed inconsistent dimensions preventing use of secondary states - in ODE events. - </action> - </release> - <release version="3.2" date="2013-04-06" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.1[.1] JAR file. - -Most notable among the new features are: Framework for automatic - differentiation, Lévy distribution, prime numbers, enumerated - distributions, real field allowing to use several algorithms - (solvers, linear algebra, 3D geometry) with different real-like - classes (high accuracy or automatic differentiation), spherical - coordinates with gradients and Hessians, reorganized clustering - package with different distance implementations. - -The minimum version of the Java platform required to compile and use - Commons Math is Java 5. - -Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). -"> - <action dev="luc" type="fix" issue="MATH-961" > - Fixed wrong array dimensions in secondary equations handling in some cases. - </action> - <action dev="luc" type="fix" issue="MATH-960" > - Fixed missing side effects of secondary equations on main state in - Ordinary Differential Equations integration. - </action> - <action dev="luc" type="fix" issue="MATH-957" due-to="Evan Ward"> - Fixed inverse cumulative probability for uniform distribution. - </action> - <action dev="tn" type="add" issue="MATH-917,MATH-918,MATH-919,MATH-920" due-to="Reid Hochstedler"> - All contents of package "o.a.c.m.stat.clustering" refactored into - new package "o.a.c.m.ml.clustering" and added support for additional - distance measures in package "o.a.c.m.ml.distance": "CanberraDistance", - "ChebyshevDistance", "EuclideanDistance" and "ManhattanDistance". - </action> - <action dev="tn" type="fix" issue="MATH-891"> - "SpearmansCorrelation" now works correctly in case of a provided - "NaturalRanking" with a "NaNStrategy.REMOVED" strategy and the input - data contains NaN values. From version 4.0 onwards this strategy will - not be supported anymore. - </action> - <action dev="erans" type="update" issue="MATH-956"> - Replaced hard-coded numbers in "LevenbergMarquardtOptimizer". - </action> - <action dev="luc" type="update" issue="MATH-955" due-to="Evan Ward"> - Fixed loading of test file when path contains a space. - </action> - <action dev="luc" type="update" issue="MATH-954" due-to="Charles Cooper"> - Improved speed of FastMath.abs methods for all signatures, by removing branching. - </action> - <action dev="luc" type="update" issue="MATH-953" due-to="Charles Cooper"> - Improved speed of several FastMath methods. - </action> - <action dev="luc" type="fix" issue="MATH-934"> - Fixed Complex.reciprocal() for zero argument. - </action> - <action dev="luc" type="update" issue="MATH-951" due-to="Charles Cooper"> - Improved speed of FastMath copysign methods. - </action> - <action dev="erans" type="add" issue="MATH-817" due-to="Jared Becksfort"> - Added Multivariate Normal Mixture Model Fitting by Expectation Maximization. - </action> - <action dev="tn" type="fix" issue="MATH-862"> - AbstractRealMatrix will now check for rectangular input arrays in - its copySubMatrix methods. - </action> - <action dev="erans" type="fix" issue="MATH-949"> - Increment iteration counter in optimization algorithms. - </action> - <action dev="luc" type="add" issue="MATH-811" > - Added a way to trigger only increasing or decreasing events in ODE integration. - </action> - <action dev="luc" type="fix" issue="MATH-950" > - Fixed missing update in ODE event handlers, when a RESET_STATE is triggered. - </action> - <action dev="psteitz" type="update" issue="MATH-671"> - Made EmpiricalDisribution smoothing kernel pluggable. - </action> - <action dev="psteitz" type="add" issue="MATH-946" due-to="Jared Becksfort"> - Added array-scaling methods to MathArrays. - </action> - <action dev="luc" type="update" issue="MATH-877" due-to="Peter Andrews"> - Allow direct use of SummaryStatistics in one-way ANOVA. - </action> - <action dev="luc" type="fix" issue="MATH-947" > - Fixed infinite loop when NaN occurs in singular value decomposition. - </action> - <action dev="luc" type="add" issue="MATH-460" due-to="Andrew Waterman"> - Added the Lévy distribution. - </action> - <action dev="luc" type="update" > - Normal distribution now uses a direct implementation of the - inverse error function to compute inverse cumulative probability - instead of relying on a numerical solver. This is much faster, - more accurate and does not need convergence threshold. - </action> - <action dev="luc" type="add" issue="MATH-948" > - Implementations for inverse error function and inverse complementary - error functions have been added. - </action> - <action dev="luc" type="fix" issue="MATH-580" > - Extended ranges for FastMath performance tests. - </action> - <action dev="luc" type="fix" issue="MATH-925" > - Finalized implementation of diagonal matrix. - </action> - <action dev="luc" type="fix" issue="MATH-630" due-to="Christopher Nix" > - Added rank revealing QR decomposition. - </action> - <action dev="luc" type="fix" issue="MATH-570" due-to="Arne Plöse" > - ArrayFieldVector can now be constructed from any FieldVector. - </action> - <action dev="luc" type="fix" issue="MATH-861" due-to="Sébastien Brisard" > - Improved checking of null vector elements. - </action> - <action dev="luc" type="add" issue="MATH-845" due-to="Sébastien Riou" > - Added utilities for prime numbers. - </action> - <action dev="luc" type="fix" issue="MATH-936" > - Fixed generation of long random numbers between two bounds. - </action> - <action dev="luc" type="fix" issue="MATH-942" due-to="Piotr Wydrych" > - Fixed creation of generic array. - </action> - <action dev="luc" type="add" issue="MATH-914" > - Check bounds in multi-start vector optimizers. - </action> - <action dev="luc" type="add" issue="MATH-941" due-to="Piotr Wydrych" > - Added discrete distributions. - </action> - <action dev="luc" type="fix" issue="MATH-940" due-to="Piotr Wydrych" > - Fixed abstract test class naming that broke ant builds. - </action> - <action dev="luc" type="fix" issue="MATH-939" due-to="Piotr Wydrych" > - Allow covariance to be computed for one-dimensional variables. - </action> - <action dev="luc" type="fix" issue="MATH-938" > - Fixed accuracy of 3D Line.revert(). - </action> - <action dev="luc" type="fix" issue="MATH-937" > - Improved javadoc to explain how switching functions should - behave across events in ODE events detection. - </action> - <action dev="luc" type="add" > - Added Hermite interpolator for RealFieldElement instances. - </action> - <action dev="luc" type="add" > - Added RealFieldElement interface to represent anything that is - real number like, implemented by both Decimal64, Dfp and DerivativeStructure. - </action> - <action dev="luc" type="add" > - Added partial derivatives computation for 3D vectors and rotations. - </action> - <action dev="luc" type="fix" issue="MATH-935" > - Fixed DerivativeStructure.atan2 for special cases when both arguments are +/-0. - </action> - <action dev="luc" type="add" > - Added accurate linear combination of DerivativeStructure instances, - avoiding cancellation. - </action> - <action dev="erans" type="update" issue="MATH-933"> - Throw "MathUnsupportedOperationException" from optimizers that do - not support constraints (previous behaviour was to silently ignore - the "SimpleBounds" argument). - </action> - <action dev="luc" type="add" > - Added conversion of gradients and Hessians from spherical to Cartesian - coordinates in 3D. - </action> - <action dev="erans" type="update" issue="MATH-931" due-to="Sean Owen"> - Greater efficiency in "UnitSphereRandomVectorGenerator". - </action> - <action dev="tn" type="fix" issue="MATH-930"> - Improved class javadoc wrt convergence criteria and added - additional constructors to override the default epsilon and cut-off - values in class "SimplexSolver". - </action> - <action dev="erans" type="fix" issue="MATH-929" due-to="Piotr Wydrych"> - Fixed truncated value in "MultivariateNormalDistribution". - </action> - <action dev="erans" type="fix" issue="MATH-927" due-to="Dennis Hendriks"> - Made "BitStreamGenerator" implement the "Serializable" interface. - </action> - </release> - - <release version="3.1.1" date="2013-01-14" description=" -This is a point release: It fixes a bug that renders version 3.1 unusable - in some situations (see details below). -"> - <action dev="erans" type="fix" issue="MATH-924"> - Added a (minimal) "DiagonalMatrix" implementation, such that the - case of a large number of uncorrelated observations is handled - efficiently. - </action> - </release> - - <release version="3.1" date="2012-12-23" description=" -This is a minor release: It combines bug fixes and new features. - Changes to existing features were made in a backwards-compatible - way such as to allow drop-in replacement of the v3.0 JAR file. - - Most notable among the new features are: Framework for automatic - differentiation, multivariate mixture model distribution, quaternions, - Gauss integration framework, Hermite polynomial interpolation, - eigenvalue decomposition of non-symmetric matrices, DBSCAN clustering. - Most notable among the changes are: Greatly improved precision in - the implementation of the Gamma and Beta special functions, optimizers - API, deprecation of the sparse vector implementation. - - The minimal version of the Java platform required to compile and use - Commons Math is Java 5. - Users are encouraged to upgrade to this version as this release not - only includes bug fixes but also deprecates numerous classes and - methods that will be deleted from the next major release (4.0). - - Caveat: - 1. The implementation of the BOBYQA optimization algorithm is in alpha - state (cf. MATH-621): Many code paths are untested, and we are looking - for volunteers to improve the code readability, robustness and performance - and to extend the unit tests suite. - 2. A few methods in the FastMath class are in fact slower that their - counterpart in either Math or StrictMath (cf. MATH-740 and MATH-901). -"> - <action dev="erans" type="add" issue="MATH-874"> - All contents of package "o.a.c.m.optimization" refactored into - new packages "o.a.c.m.optimization" and "o.a.c.m.fitting". - </action> - <action dev="psteitz" type="update" issue="MATH-672"> - Added methods to EmpiricalDistribution to implement the RealDistribution - interface. - </action> - <action dev="tn" type="add" issue="MATH-897" due-to="Reid Hochstedler"> - DBSCAN clustering algorithm (in package "o.a.c.m.stat.clustering"). - </action> - <action dev="erans" type="add" issue="MATH-910"> - Added element-by-element addition, subtraction, multiplication and division - (in class "o.a.c.m.util.MathArrays"). - </action> - <action dev="erans" type="fix" issue="MATH-904" due-to="Jeff Hain"> - Fixed "pow" method in class "FastMath". - </action> - <action dev="erans" type="update" issue="MATH-902" due-to="Bruce A. Johnson"> - Created a "maximum number of iterations" stopping criterion in the - convergence checkers (package "o.a.c.m.optimization") that allows the - optimizers to return the "current best point" even if the convergence - criteria are not met. - </action> - <action dev="erans" type="fix" issue="MATH-905" due-to="Jeff Hain"> - Fixed overflow in "sinh" and "cosh" methods in class "FastMath". - </action> - <action dev="celestin" type="update" issue="MATH-849"> - Accuracy improvements of Gamma.logGamma, and implementation of - Gamma.gamma. Both new implementations are based on the NSWC - Library of Mathematical Functions. - </action> - <action dev="erans" type="add" issue="MATH-902"> - New constructor in the custom checker classes (package - "o.a.c.m.optimization") for passing the number of iterations - after which the "convergence test" will return true. - This allows an algorithm to return the best solution found (after - the user-defined number of iterations) even if it does not meet the - other convergence criteria. - </action> - <action dev="tn" type="update" issue="MATH-906" due-to="Patrick Meyer"> - Use "NaNStrategy#FAILED" as default strategy in "NaturalRanking". - </action> - <action dev="erans" type="add" issue="MATH-899"> - Added a new "SynchronizedRandomGenerator" that wraps another - "RandomGenerator" with all methods being synchronized, thus - rendering the code thread-safe (at some efficiency cost). - </action> - <action dev="tn" type="add" issue="MATH-893" due-to="Patrick Meyer"> - Add new "NaNStrategy": FAILED, used in "RankingAlgorithm" implementations. - Any encountered input value that succeeds a "Double#isNaN" check, results in a - "NotANumberException". - </action> - <action dev="tn" type="add" issue="MATH-892"> - Add new constructor to "SpearmansCorrelation" class which allows to specify the - "RankingAlgorithm" to be used. - </action> - <action dev="luc" type="fix" issue="MATH-890"> - Fixed naming inconsistencies between Interval and IntervalsSet classes. - </action> - <action dev="luc" type="add" issue="MATH-889"> - Added a method to check points in the Interval class, with a tolerance for boundary. - </action> - <action dev="psteitz" type="add" issue="MATH-878" due-to="Radoslav Tsvetkov"> - Added G-test statistics. - </action> - <action dev="erans" type="add" issue="MATH-883"> - New "getSquareRoot" method in class "EigenDecomposition" (package - "o.a.c.m.linear"). - </action> - <action dev="erans" type="update" issue="MATH-884"> - Added "isSymmetric" and "checkSymmetric" in "MatrixUtils" (package - "o.a.c.m.linear"). - </action> - <action dev="psteitz" type="update" issue="MATH-885"> - Moved private array argument validation methods from ChiSquareTest to MathArrays. - </action> - <action dev="erans" type="add" issue="MATH-816" due-to="Jared Becksfort"> - New class for generic multivariate mixture model distributions. - </action> - <action dev="tn" type="fix" issue="MATH-759" due-to="sebb"> - Use getter/setter methods of super class for access to field "windowSize" in - "ListUnivariateImpl". - </action> - <action dev="luc" type="fix" issue="MATH-880"> - Improved construction of polygons with an additional constructor, more robust numerically. - </action> - <action dev="tn" type="add" issue="MATH-474" due-to="Dan Checkoway"> - Added new methods "merge(Frequency)", "merge(Collection<Frequency>)", - "incrementValue(Comparable<?>, long)" and "entrySetIterator()" to the "Frequency" class. - </action> - <action dev="tn" type="fix" issue="MATH-778" due-to="Sébastien Brisard"> - Allow unlimited input values for "Dfp#multiply(int)". - </action> - <action dev="luc" type="fix" issue="MATH-641" due-to="Curtis Jensen"> - Added distance to point to 2D Line and Segment. - </action> - <action dev="erans" type="fix" issue="MATH-783"> - "PowellOptimizer" (package "o.a.c.m.optimization.direct") uses - "BrentOptimizer" as its internal line search optimizer. The fix - forces the convergence criterion of "BrentOptimizer" to use - function values (instead of domain values). - </action> - <action dev="erans" type="fix" issue="MATH-865,MATH-867,MATH-868" due-to="Nikolaus Hansen, Frank Hess"> - Numerical accuracy problems arose in "CMAESOptimizer" (in package - "o.a.c.m.optimization.direct") when large finite boundaries were - specified, because the interval of allowed values was mapped to - [0, 1]. This mapping was not necessary and its removal allows - finite and infinite boundaries to be used together. - </action> - <action dev="luc" type="fix" > - Fixed some issues in nth root derivatives at 0. - </action> - <action dev="tn" type="fix" issue="MATH-848"> - Fixed transformation to a Schur matrix for certain input matrices. - </action> - <action dev="erans" type="add" issue="MATH-860"> - Added matrix "block inversion" (in "o.a.c.m.linear.MatrixUtils"). - </action> - <action dev="erans" type="fix" issue="MATH-864" due-to="Frank Hess"> - "CMAESOptimizer": Solution was not constrained to lie within the - provided boundaries. - </action> - <action dev="erans" type="add" issue="MATH-863" due-to="Julien Anxionnat"> - New "Quaternion" class (package "o.a.c.m.complex"). - </action> - <action dev="erans" type="add" issue="MATH-866" due-to="Yannick Tanguy"> - Added method to test for floating-point numbers equality with a - relative tolerance (class "o.a.c.m.util.Precision"). - </action> - <action dev="tn" type="fix" issue="MATH-666"> - Deprecated "FieldVector#getData()" in favor of "toArray()". - </action> - <action dev="luc" type="fix" issue="MATH-789"> - Fixed an error in rectangular Cholesky decomposition. - </action> - <action dev="psteitz" type="update" issue="MATH-859"> - Clarified definition of isSupportXxxBoundInclusive in RealDistribution - interface, made code consistent with the definition, and deprecated - these methods, marking for removal in 4.0. - </action> - <action dev="erans" type="update" issue="MATH-841" due-to="Sebastien Riou"> - Performance improvement in computation of the greatest common divisor - (in class "o.a.c.m.util.ArithmeticUtils"). - </action> - <action dev="erans" type="fix" issue="MATH-855"> - Added a check so that the returned point will always be the best one. - </action> - <action dev="luc" type="add" > - Added a NewtonRaphsonSolver that uses the new differentiation package - to define the function to solve. This class is intended to replace the - former NewtonSolver which is deprecated. - </action> - <action dev="psteitz" type="update" issue="MATH-850"> - Added RandomDataGenerator to replace RandomDataImpl and deprecated - RandomData interface and RandomDataImpl class. Deprecated - nextInversionDeviate methods from RandomDataImpl class. Ensured that - all nextXxx methods in RandomDataImpl/RandomDataGenerator use the - configured RandomGenerator. - </action> - <action dev="erans" type="fix" issue="MATH-844"> - Generate an exception for rare ill-conditioned cases in "HarmonicFitter" - guessing procedure (package "o.a.c.m.optimization.fitting"). - </action> - <action dev="erans" type="add" issue="MATH-815" due-to="Jared Becksfort"> - New interface for multivariate distributions. - Added multivariate normal distribution. - </action> - <action dev="luc" type="add" > - Added a utility method to compute Stirling numbers of the second kind. - </action> - <action dev="luc" type="add" > - Added a new package dealing with differentials, for one or more free - parameters and derivation order 1 or higher. - </action> - <action dev="tn" type="add" issue="MATH-777" due-to="Reid Hochstedler"> - Added additional crossover policies: "CycleCrossover", "NPointCrossover", - "OrderedCrossover" and "UniformCrossover". - </action> - <action dev="tn" type="fix" issue="MATH-828"> - Improved numerical stability of "SimplexSolver" by introducing Bland's rule - to prevent cycling and a cutoff threshold to zero out very small values. - </action> - <action dev="tn" type="fix" issue="MATH-836" due-to="Baste Nesse Buanes"> - Fixed overflow detection for negative values in constructor of class "Fraction". - </action> - <action dev="erans" type="fix" issue="MATH-835" due-to="Baste Nesse Buanes"> - Fixed overflow in method "percentageValue" in class "Fraction". - </action> - <action dev="erans" type="fix" issue="MATH-622"> - Raised (to 10) the default number of fractional digits to print out. - </action> - <action dev="erans" type="fix" issue="MATH-762"> - Removed duplicate code. - </action> - <action dev="tn" type="add" issue="MATH-831"> - Added a new "RealMatrixFormat" class for input/output of RealMatrix instances. - Default formatter instances for commons-math and octave have been added to - "MatrixUtils". - </action> - <action dev="erans" type="add" issue="MATH-827"> - New "IterativeLegendreGaussIntegrator" that performs the same automatic - subdivision of the integration interval as "LegendreGaussIntegrator", - but uses the classes from package "o.a.c.m.analysis.integration.gauss" - to perform the Gauss integration on the sub-interval. - Deprecated "LegendreGaussIntegrator". - </action> - <action dev="tn" type="fix" issue="MATH-578"> - Improve performance of quantile evaluation in "Percentile" class for cases - with lots of equal values. - </action> - <action dev="erans" type="add" issue="MATH-797"> - New framework for Gauss integration schemes (in package - "o.a.c.m.analysis.integration.gauss"). - Gauss-Legendre quadrature rules (of unlimited order) implemented in - double precision, and high precision (using "BigDecimal"). - </action> - <action dev="erans" type="add" issue="MATH-764,MATH-823"> - For all distribution classes (in package "o.a.c.m.distribution"), a new - constructor takes a "RandomGenerator" parameter. - The "RandomDataImpl" instance has been superseded by this RNG. - All "sample()" methods have been modified to use this RNG instead of - delegating to the methods in "RandomData". - </action> - <action dev="tn" type="add" issue="MATH-235"> - Added support for real asymmetric matrices to "EigenDecomposition". - </action> - <action dev="erans" type="add" issue="MATH-768"> - Re-instated methods to find all complex roots of a polynomial (class - "LaguerreSolver" in package "o.a.c.m.analysis.solvers"). - </action> - <action dev="erans" type="add" issue="MATH-810"> - Added accessors to the "Pair" class (package "o.a.c.m.util"). - </action> - <action dev="tn" type="add" issue="MATH-822" due-to="Jared Becksfort"> - Added new constructors in "EigenDecomposition" and deprecated two constructors - with unused parameters. - </action> - <action dev="erans" type="fix" issue="MATH-798"> - Added overridden method in "PolynomialFitter" (package - "o.a.c.m.optimization.fitting") to limit the number of evaluations. - </action> - <action dev="celestin" type="add" issue="MATH-807"> - Added a new constructor to o.a.c.m.utils.IterationManager, allowing - for the specification of a callback function in case the maximum - number of iteration is reached. - </action> - <action dev="luc" type="add"> - A new HermiteInterpolator class allows interpolation of vector-valued - functions using both values and derivatives of the function at sample - points. - </action> - <action dev="erans" type="fix" issue="MATH-804"> - Parameterized "CurveFitter" class (package "o.a.c.m.optimization.fitting") - with the type of the fitting function. Updated subclasses "PolynomialFitter", - "HarmonicFitter", "GaussianFitter". - </action> - <action dev="luc" type="fix" issue="MATH-801"> - Fixed a problem when building rotations from two pairs of vectors. In very rare cases, - due to numerical inaccuracies the computed quaternion was not normalized (some examples - went as high as 1.0e8) and even after normalization, the quaternion was plain wrong. - </action> - <action dev="celestin" type="remove" issue="MATH-796"> - Removed unused fields LocalizedFormats.ALPHA and LocalizedFormats.BETA. This is - an acceptable compatibility break, as these fields are only meant for internal use. - </action> - <action dev="tn" type="fix" issue="MATH-644" due-to="marzieh"> - Fix computation of upperCumulativeProbability in "HypergeometricDistribution" and - cleanup of duplicate probability mass function. - </action> - <action dev="celestin" type="fix" issue="MATH-791"> - In GammaDistribution, deprecated getAlpha() and getBeta(). Replaced with - getShape() and getScale(), respectively. - </action> - <action dev="luc" type="fix" issue="MATH-793" due-to="Sebb"> - Use inline computation for OrderedTuple hash code. - </action> - <action dev="tn" type="fix" issue="MATH-718" > - Use modified Lentz-Thompson algorithm for continued fraction evaluation to avoid - underflows. - </action> - <action dev="luc" type="fix" issue="MATH-780" > - Fixed a wrong assumption on BSP tree attributes when boundary collapses to a too - small polygon at a non-leaf node. - </action> - <action dev="luc" type="fix" issue="MATH-787" > - Put serialization back for PointValuePair and PointVectorValuePair. - </action> - <action dev="tn" type="fix" issue="MATH-627" due-to="Arne Plöse"> - Avoid superfluous null check when using iterators in RealVector and ArrayRealVector. - </action> - <action dev="tn" type="fix" issue="MATH-781" due-to="Scheiber ErnÅ"> - Use epsilon instead of ulp in floating-point comparison when dropping columns after - phase 1 in SimplexSolver. - </action> - <action dev="luc" type="fix" issue="MATH-721"> - Added a workaround for an OpenJDK issue on sparc solaris with too small constants. - </action> - <action dev="tn" type="fix" issue="MATH-779" due-to="Reid Hochstedler"> - Fixed ListPopulation#iterator to return an unmodifiable iterator. - </action> - <action dev="tn" type="fix" issue="MATH-775" due-to="Reid Hochstedler"> - Cleanup of ListPopulation to consistently enforce the population limit. - </action> - <action dev="tn" type="fix" issue="MATH-776" due-to="Reid Hochstedler"> - Use same range check in constructor for ElitisticListPopulation as in corresponding setter. - </action> - <action dev="tn" type="fix" issue="MATH-767" due-to="Dennis Hendriks"> - Fixed unbalanced use of code tags in javadoc of several classes. - </action> - <action dev="tn" type="add" issue="MATH-773" due-to="Reid Hochstedler"> - Added class FixedElapsedTime (new StoppingCondition for evolution of generations) to genetics package. - </action> - <action dev="celestin" type="add" issue="MATH-756"> - Added classes Decimal64 and Decimal64Field, which are wrapper classes around primitive doubles. - These classes implement FieldElement and Field, respectively. - </action> - </release> - <release version="3.0" date="2012-03-07" description=" -This is a major release: It combines bug fixes, new features and -changes to existing features. - -Most notable among the new features are: Iterative solvers, Kalman filter, -ISAAC RNG, Illinois and Pegasus root finders, enhanced ODE framework, -refactored geometry package, Binary Space Partition trees. - -Most notable among the changes are: Exclusive use of unchecked exceptions, -removal of interfaces for which a single implementation is assumed to exist, -improved coding and API consistency across packages, performance (matrix -product, FFT) and robustness (SVD). + <release version="1.0" date="TBD" description=" +This is the first release of Apache Commons Numbers. -Because of the base package name change, this release can be used together -with earlier versions of Commons Math. -The minimal version of the Java platform required to compile and use -Commons Math is Java 5. -Users are encouraged to upgrade to this version as, in addition to new -features, this release includes numerous bug fixes. -Users of Commons Math 2.0-2 should recompile their code against the 3.0 JAR -file and must adjust the import statements to use the appropriate -org.apache.commons.math3 base package. -Most of the compilation errors users will encounter after the switch will -be due to moved or deleted classes/interfaces resulting from package -reorganization. - -Caveat: -1. The implementation of the BOBYQA optimization algorithm is in alpha state -(cf. MATH-621): Many code paths are untested, and we are looking -for volunteers to improve the code readability, robustness and performance -and to extend the unit tests suite. -2. A few methods in the FastMath class are in fact slower that their -counterpart in either Math or StrictMath (cf. MATH-740). +Apache Commons Numbers 1.0 contains
<TRUNCATED>
