Re: [eigen] Simplex solver

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Hi Gael,

thanks for the reply. I've finished it already: http://blog.bolner.hu/2012/08/22/simplex/ But I came to the conclusion that for the future it will be wiser to use some existing mature implementations, and just connect them with the data structures of Eigen :) (although I've put it under GPL, so use it freely) And thanks for the quadratic solver, I'll check it on the weekend. What I've made is only a special case of that.

Oh and the expressions like:
m1 = m2 < 0;
supposed to work only with arrays? (It did not work with matrices in Visual Studio 2008/2010.) If yes, then I might add some feature requests :)

cheers,
Tamas


On 2012-08-27 15:51, Gael Guennebaud wrote:
Hi Tamas,

sorry for the late  reply.

1. Does Eigen (or an extension) have a built-in simplex solver, or any
linear programming-related functionality? Or, is any open source
implementation available? (I did some google searches, and found none)
Note really what you're looking for, but somewhat related, I've
quickly adapted a quadradic solver there:

https://dl.dropbox.com/u/260133/QuadProg/eiquadprog.hpp

2. Does Eigen have method for a single pivot operation? Like:
M.pivotOperation(2, 3); If not, then would row-level operations give the
best performance?
You can swap columns or rows:

M.row(i).swap(M.row(j));
M.col(i).swap(M.col(j));

Store the transpositions into a Transpositions<>
(http://eigen.tuxfamily.org/dox-devel/classEigen_1_1Transpositions.html)
that you apply to matrices or vectors, and also convert it into a
PermutationMatrix<>
(http://eigen.tuxfamily.org/dox-devel/classEigen_1_1PermutationMatrix.html).
  The file Eigen/src/LU/PartialPivLU.cpp is a good example.

Please keep us informed on your progress, and feel free to ask questions.

Best,
Gael.

And I have to mention that I discovered Eigen some weeks ago, and I liked it
immediately :) It has a really nice API.

Thank you for your answers,
Tamas Bolner








Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/