Take the 2-minute tour ×
MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

I'm working on rational number field $\mathbb{Q}$.

Is there an efficient algorithm finding a solution of system of linear inequalities?

In many computer algebra systems like Sage or Maple, there are functions finding the whole solution set, but in my problem (approximately 40 dimensional vector space with 600 inequalities) it seems that the computation is too heavy. Also, in my situation I don't need the whole set - just a single solution is sufficient. What is a good method to find a solution?

share|improve this question
    
Mathematica has a function called FindInstance that looks for a single solution satisfying a set of specified criteria. –  Yoav Kallus Feb 12 '13 at 0:14
add comment

2 Answers

You can use a genetic algorithm (very fast in this kind of problems) http://en.wikipedia.org/wiki/Genetic_algorithm The possible DNA is a sequence of the binary representation of 40 float numbers. One evaluation criteria you can use is the uniform error of all inequalities. So, you will find 'a' solution of your problem if the evaluation of the best individual is zero. Of course this is the lazy method, it just works! You can try to solve this using a linear program, but i can't tell you if 600 inequalities and 40 dimensions will be solved very fast with a simple LP-solver.

share|improve this answer
add comment

You can do linear programming (for example, by giving it a random objective function); this will return a feasible solution - in fact, a vertex of the solution set. You can run such a linear program in maple (and possibly in sage). For something faster see the exact rational LP solver at http://www2.isye.gatech.edu/~wcook/qsopt/ex/index.html

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.