Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

A list of feature requests made by Commons-Math users, contributors, and committers. These requests will be considered when deciding on new functionality for future releases. At any time, additional feature requests can be added simply by editing this page.

  • Enabling math3.stat for ANY usage in the data mining context, there must be a MissingValues class that is able to be switched off, to hold a list of missing values, etc. This refers to any class that imports data (like DescriptiveStatistics or clustering); this is also mandatory for clustering in real-life contexts (see next entry)
  • Enabling math3.clustering for ANY reasonable usage in the data mining context, there must be a small extension for the KNN++ clustering method: a usevector, of the same length as the variable vector, holding 0|1 and indicating whether a variable (column) should be used: a working versoin (exhibits also the MissingValues class) is prototypicall available here: http://code.google.com/p/noolabsimplecluster/
  • Add more special math functions such as Bessel functions and so on.
  • Add support for iterative linear solvers (see discussion
  • Wiki Markup
    Add remedian statistic - \[http://www.agoras.ua.ac.be/abstract/Remrob90.htm The Remedian: a Robust Averaging method for Large Data Sets\]
  • Add alternative pseudo-random number generators (PRNGs)
    • "implement good random number generators, e.g., like those described in Numerical Recipes or Knuth". – AlChou
    • Wiki Markup
      I highly recommend working with Paul Houle \[http://www.honeylocust.com/RngPack/\] to get these random number generators integrated into the math library. He has stated to me in the past that he is willing to relicense them under the Apache license. As well I beleive that with the BSD being compatable with Apache licensing, there would be little stopping us from integrating them ourselves as a derivative work. - Mark Diggory
    • Wiki Markup
      Investigate alternative methods for generating values from discrete distributions \[http://www.jstatsoft.org/v11/i03/\]
  • Wiki MarkupAdd sparse matrix implementation. \[http://mail-archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=736078\]
  • Add Vector implementation (RealVector would extend RealMatrix)
  • Wiki Markup
    Develop Genetic Algorithms Framework \[http://mail-archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=882939\]
  • mod_mbox/commons-dev/201104.mbox/%3C20110413062230.2B0E41405982C@svoboda.polytechnique.org%3E): see wiki page IterativeLinearSolvers
  • Add remedian statistic - The Remedian: a Robust Averaging method for Large Data Sets
  • Add Dirichlet, Multinomial distributions
  • Investigate alternative methods for generating values from discrete distributions http://www.jstatsoft.org/v11/i03/
  • Resampling http://markmail.org/message/u3diwc76m66r7qme Wiki MarkupResampling \[http://mail-archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=582054\]
  • Applied-mathematical/Mathematical-physics algorithms? - Henri Yandell
    • Examples, please? This item goes to the heart of what I consider an ongoing lack of consensus about what Commons-Math is supposed to be for. Should it include discipline-specific algorithms that do not overlap core numerical mathematical areas? Maybe, but we should discuss it. – AlChou
  • Numerical Enhancements
      unmigratedwiki-markup
    • Implement monte carlo simulation "Rolling" statistics with large windows but limited storage \[http://mail-archivesen.apachewikipedia.org/eyebrowse/ReadMsg?listName=commons-dev@jakarta.apache.org&msgNo=41870\]
      • I don't understand; we already have some storage-less statistics. What am I missing from the post you refer to? – AlChou
      • Oh, I remember now that with the standard deviation algorithm I researched, in order to maintain a rolling window, it would have to store all the data in the window so it could delete the least recent one while adding the most recent one. Sorry for the denseness. – AlChou
    • Numerical Enhancements (Summer of Code Proposal)
      • Du Li
        • an approximation package, with an emphasis on the support for B-splines, which is used to approximate curves in general, given a set of points on the curve.
        • generic PDE/ODE solvers, with built-in support for Poisson/heat/wave equations.
        • an optimization package, including linear programming (simplex method, later also interior point method), quadratic programming, nonlinear unconstraint/constraint minimization, later will also include search methods including genetic programming.
        • a simulation package, to provide a framework for running (Quasi)Monte-Carlo simulations
      • James Stephenson
        • Compressed Matrix Storage classes for Diagonal and Sparse Matricies.
        • Advanced Matrix Decomposition Methods including Singular Value Decomposition, Q-R Factorization, and L-U Decomposition.
        • Advanced Matrix Solvers including Gauss-Jordan, Gauss-Seidel, the Jacobi solver, and the Relaxation method.
        • Matrix Functions optimized for Sparse and Compressed format for existing and newly developed functions.
      • Xiaogang Zhang
        • Integration and Quadrature
        • Interpolation and Extrapolation
        • Root Finding (add Ridder's method, Muller's method, Laguerre's method.)
        • Fast Fourier Transform
        • Wiki Markup
          \[http://zxg32.blogchina.com/2787280.html Post-SOC TODO List\] - Xiaogang Zhang
    • wiki/Monte_Carlo_method
    • Prime Numbers FunctionalitySharonLourduraj
      • Ofcourse, we will take it slowly, this area is vast and time consuming.
      • Implementing algorithms for practicality, and look into optimizing the algorithms (in terms of implementing it).
    • AbstractStorelessUnivariateStatistic.evaluate(...) and all the workhorse implementations in subclasses should be static methods. – NickGuenther
    • StandardDeviation has versions of .evaluate which take a precalculated mean. It would be nice if the same sort of thing could be had for all the other measures (e.g. skewness & kurtosis should be able to take both precalculated means and standard deviations) – NickGuenther
    • Generalized Matrix Inversion, as I describe on http://mjollnir.com/matrix/ – Rand Huso
    • Estimation of Omega in GLSMultipleLinearRegression using, for example Feasible Generalized Least Squares http://en.wikipedia.org/wiki/Feasible_generalized_least_squares
    • Add Laplace transform, Z-transform and similar signal/image processing and filtering related essentials.
    • Add further functionality for BigDecimal and BigInteger arithmetic in particular a power function that will input two BigDecimal type numbers and raise one to the power of the other and return the result correct to a number of specified decimal places. This may best be added to the util.MathUtils class along with other pow functions - suggested by Andy Turner (2011-01-20)
    • Add fitter functions for linear models similar to lm.wfit in R(2011-11-14)
    • A mixed integer linear programming solver
    • A quadratic programming solverANOVA in stat.inference package. Is this beyond the scope? --SamikR