Re: long evaluation time
- To: mathgroup at smc.vnet.net
- Subject: [mg51221] Re: [mg51208] long evaluation time
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Sat, 9 Oct 2004 04:18:33 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
What do you think it should not take long? The answer is obviously 0 at {0,0,0}, which can be easily proved by most reasonably competent human beings. Nminimize can also do it: NMinimize[{(x^2 + x)/(y^2 + 1) + (z^2 + z)/(x^2 + 1) + (y^2 + y)/(z^2 + 1), x > 0 && y > 0 && z > 0}, {x, y, z}] {0., {x -> 0., y -> 0., z -> 0.}} though nothing NMinimize does constitutes a proof. But Minimize returns only exact results,and when it returns an answer then (barring of course bugs) it is the equivalent of a proof. To solve this kind of non-linear problem it relies on a famous algorithm, due to Collins, known as Cylindirical Algebraic Decomposition. However, the running time of this algorithm is doubly exponential in the number of variables, so you rarely can expect it to deal with more than 2 variable problems. If you reduce the number of variables by substituting something for one of them, you will get an answer in reasonable time, vis: Minimize[{(x^2 + x)/(y^2 + 1) + (z^2 + z)/(x^2 + 1) + (y^2 + y)/(z^2 + 1), x > 0 && y > 0 && z > 0} /. z -> 1/2, {x, y}] Minimize::"wksol":"Warning: There is no minimum in the region described by the contraints; returning a result on the boundary. {3/4, {y -> 0, x -> 0}} On 8 Oct 2004, at 15:55, _n3g wrote: > Hi everybody! > > Can anyone explain me, why it takes so long to evaluate > > Minimize[ > > (x + x^2)/(1 + y^2) + (y + y^2)/(1 + z^2) + (z + z^2)/(1 + x^2), > > x > 0 && y > 0 && z > 0, > > {x,y,z} > > ] > > ? > > thx, _n3g > > Andrzej Kozlowski Chiba, Japan http://www.akikoz.net/~andrzej/ http://www.mimuw.edu.pl/~akoz/