roboptim / roboptim-shared-tests

RobOptim Shared Tests (to be used as a Git submodule)
1 stars 8 forks source link

Add tests that show the influence of sparse matrices #12

Open bchretien opened 10 years ago

bchretien commented 10 years ago

For now, the tests available are too "small" to really demonstrate the influence of the sparsity of the Jacobian matrix for solvers that support it. We need larger sparse problems to really compare dense and sparse implementations.

What we could do at first is create a RobOptim filter that "duplicates" or "copy-pastes" a problem to artificially increase its size:

Problem:              --->     Enlarged problem:
  cost: f(x0,x1)                  cost: f(x0,x1) + f(x2,x3) + f(x4,x5) + ...
  constraints:                    constraints:
    g0(x0,x1)                       g0_0(x0,x1), g0_1(x2,x3), g0_2(x4,x5), ...
    g1(x0,x1)                       g1_0(x0,x1), g1_1(x2,x3), g1_2(x4,x5), ...

The solver would be solving several times the same problem, with a very sparse structure. Also, if we know the optimal solution of the problem, we also know the optimal solution of the enlarged problem.

Having actual problems would of course be better, but this trick may be sufficient for now.

thomas-moulard commented 10 years ago

Why not, but if you have any reference for biggest tests (cute, cuter or cutest maybe?) it may also be worth a try to directly implement at least one big problem. I am still afraid that there will be side effects we won't foresee if we do that.

bchretien commented 10 years ago

We could use the AMPL-NLP benchmark, but this will probably take some time to implement.

bchretien commented 10 years ago

Also, they seem to be doing something similar in the AMPL benchmark, since they wrote:

The sources of the AMPL scripts are (partly with increased dimensions): 
...