I have a constrained optimization problem, looking for Nash equilibria. I use the KKT conditions programmed using Reduce to solve it. For the general case I get a very large output, with more than 100 different solutions(and this is just trying with a very simple setting). This is an example of one solution:

w[1] > 0 && Inequality[0.5, Less, a, Less, 1.] && 
Inequality[0, Less, b[1], LessEqual, (1. - 2.*a + a^2)/a^2] && 
Inequality[0, Less, b[2], Less, 1.] && 
Inequality[(-1.*a*b[1]*w[1])/(-1. + a), LessEqual, w[2], LessEqual, 
(w[1] - 1.*a*w[1])/(a*b[2])] && x == 0 && y == 0 && 
λ[1, 1] == (-1.*a*b[1]*w[1] + w[2] - 1.*a*w[2])/(w[1]*w[2]) && 
λ[1, 2] == 0 && λ[2, 1] == 
(w[1] - 1.*a*w[1] - 1.*a*b[2]*w[2])/(w[1]*w[2]) && 
λ[2, 2] == 0

The main problem is that the different solutions are not even consistent in terms of ordering of variables. For example I would think that it is a good idea to look at it in a table where columns contain expressions for the individual variables and parameters, and rows represent solutions.

Is there a way to force Reduce or apply some transformation to it's output which would enable us to see better what is going on within so many solutions? It doesn't have to be just reordering of variables, other ideas on how to understand the solutions would be appreciated.

  • $\begingroup$ I would say that such systems should be solved numerically instead... $\endgroup$ – Henrik Schumacher Feb 25 '18 at 14:36
  • $\begingroup$ I was hoping to understand a bit more generally the whole solution set instead of just getting a set of points. For concrete parameters it also gives unique solutions so it's not an issue to use it in that sense $\endgroup$ – František Kaláb Feb 25 '18 at 14:45
  • $\begingroup$ I'm voting to close this question as off-topic because it is too localized; i.e, it applies only to the local situation and needs of its poster and answers will not benefit others. $\endgroup$ – m_goldberg Feb 25 '18 at 17:29
  • 1
    $\begingroup$ @m_goldberg it feels quite general to me, can I do something particular to make it of more use according to you? Interpreting big outputs from Reduce doesn't seem to be uncommon... $\endgroup$ – František Kaláb Feb 25 '18 at 17:44
  • $\begingroup$ If your question is to be taken as general and the your code is only an meant as example — that is, if you are asking for a general treatise on extracting info from Reduce — then it is too broad. $\endgroup$ – m_goldberg Feb 25 '18 at 18:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.