GitHub PushEvent at 2014-02-18 14:33:37
Repository: commons-math
Actor: asfgit
Payload: {"shas":[["93897bcbae9707180e57e705ee9fd01200ae14a5","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Separate least squares algorithm from problem.\n\nThe least squares package now has two main interfaces LeastSquaresOptimizer and\nLeastSquaresProblem, where the optimizer can be applied to the problem.\n\nIn this commit all of the test cases pass with one change (annotated) to\nLevenbergMarquardt.testControlParameters(). The tests for Gauss Newton were\nexpanded to cover using the QR decomposition, which revealed a QR default\ntolerance discrepancy.\n\nA factory and a mutable builder were create for LeastSquaresProblem.\n\nThis commit is a backport of Evan Ward github commit\n https://github.com/wardev/commons-math/commit/7e9a15efb535b91afad9d8275eb2864ea2295ab4\ninto the current development version.\n\nConflicts:\n\tsrc/main/java/org/apache/commons/math3/fitting/leastsquares/AbstractLeastSquaresOptimizer.java\n\tsrc/main/java/org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.java\n\tsrc/main/java/org/apache/commons/math3/optim/AbstractOptimizer.java\n\tsrc/test/java/org/apache/commons/math3/fitting/leastsquares/AbstractLeastSquaresOptimizerAbstractTest.java\n\tsrc/test/java/org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizerTest.java\n\tsrc/test/java/org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizerTest.java\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569342 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["a7d0b79832ba0218d3926028986cb7996874f3c2","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Immutable Optimizer configuration.\n\nThe GN and LM optimizers now use an immutable fields for their configuration\nparameters and a fluent api. LM still has some mutable fields it uses a scratch\nspace.\n\nThis commit is a backport of Evan Ward github commit\n    https://github.com/wardev/commons-math/commit/157cdde\ninto the current development version.\n\nConflicts:\n\tsrc/main/java/org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.java\n\tsrc/main/java/org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.java\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569343 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["f08a29bba4c4789507899201b20672afc9d74373","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Implicit Weights\n\nThe weights are no longer implicit in LeastSquaresProblem.Evaluation. They are\nalready included in the computed residuals and Jacobian.\n\nGN and LM multiplied the residuals by the weights immediately, so that was easy\nto remove.\n\nCreated an AbstractEvaluation class which handles the derived quantitied (cost,\nrms, covariance,...) and two implementations. UnweightedEvaluation uses the\nstraight forward formulas. DenseWeightedEvaluation delegates to an Evaluation\nand multiples the residuals and Jacobian by the square root of the weight matrix\nbefore returning them. Allowed me to remove the reference to the full weight\nmatrix.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569344 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["db5575bf5bea27c2eb45e603042f93f8d5f07ef4","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Clean up LeastSquaresProblemImpl\n\nReorder constructor parameters to match LeastSquaresFactory and remove an unused\nmethod.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569345 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["aee0624623364035a67a172877c89e88613bf6f9","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Value and Jacobian evaluated in a single method.\n\nA new interface MultivariateJacobianFunction lets the function value and\nJacobian be evaluated at the same time. This saves the user from having to cache\nthe result between calls to get the value and the jacobian.\n\nA factory method was added to create LeastSquaresProblems from the new interface.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569346 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["b1d51cc359fea4ebd7f2f80583921419fe673288","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Fixup javadoc in LeastSquaresProblem\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569347 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["3557eb30437affd580b3d54759420144f21a89d3","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Add Javadoc to LeastSquaresBuilder.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569348 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["d4bf85f98c9e1e213eeacf7bba05ea5dcb9532ea","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","LevenbergMarquardtOptimizer is thread safe.\n\nConverted the mutable fields to locals.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569349 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true],["5c8fe9b76a9f81b41ef38308b0e78650fd1f3c7f","5dc35fa9b5181cf374d77ada02f42716f255ae42@apache.org","Make infinite loop in GaussNewton explicit.\n\nThe main loop in GN could only be ended by convergence or exception. I made that\nexplicit with while(true) and removed an unreachable MathInternalError.\n\ngit-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1569350 13f79535-47bb-0310-9956-ffa450edef68","Luc Maisonobe",true]],"size":9,"ref":"refs/heads/trunk","head":"5c8fe9b76a9f81b41ef38308b0e78650fd1f3c7f"}