[Math] Reasonable “Random” matrices to test numerical algorithms

algorithmsapplied-mathematicsna.numerical-analysissoft-question

Hello,

in numerical analysis, it is common to compare the behavior of different algorithms, and of different implementation of algorithms. This occurs not only on the theoretical level, but also on the concrete level of implementation – and not to forget, it serves the purpose of demonstration.

A prominent problem is the solution of linear systems, both general as well as various subcases.

To test, benchmark and profile numerical implementations, you run your work on several instances of the problem. However, it is difficult question to obtain a good set of these instances. You want to inspect pathological cases (diff. degrees of ill-conditionedness) as well as "real-life" examples (whatever this may mean). Ideally, you have an algorithm which puts out matrices with certain properties in a "reasonable" probability measure. A good notion of "reasonable" might be accessible, as most such LSE problems from physics or simulations have much more structure as is actually demanded by the algorithms in theory.

In so far, I wonder whether there are works in numerical analysis how to, given $n \in \mathbb N$ randomly produce

  • a sequence of ${n \times n}$-matrices
  • optionally constraint to be symmetric, positive definite, well-conditioned
  • which is reasonable in whatever sense

This is probably an interesting topic within the theory of numerical algorithms.

Thanks,
Martin

Best Answer

A good set of benchmark matrices depends on the problem being solved (sparse solvers, eigenvalue problems, special structures, et cetera). Often, you'll want to include some real-life example applications of the algorithm that you are testing, or matrices that lead to particularly difficult problems to solve. Just choosing matrices at random won't cut that. Hence good sets of benchmarks mostly contain matrices that are carefully chosen, and are publication-worthy in themselves; some get lots of citations.

Among many of them, I shall mention here:

Related Question