NMinimize hanging after many iterations
- To: mathgroup at smc.vnet.net
- Subject: [mg62248] NMinimize hanging after many iterations
- From: Ming Hsu <hsu at charter.net>
- Date: Thu, 17 Nov 2005 04:15:46 -0500 (EST)
- Organization: California Institute of Technology, Pasadena
- Sender: owner-wri-mathgroup at wolfram.com
Hi, I am running Mathematica 5.1 on a G4 Powerbook running OS X Tiger. I am getting a very strange problem with mathematica hanging running a constrained nonlinear optimization simulation with 3 unknown parameters. Strangely, I have NEVER actually experienced hanging when I am not looping. The error typically happens around iteration 10-30, so I should've encountered one by chance by now. Also, the hanging does not seem to occur when I am estimating only 1 or 2 of the parameters. Here is a snippet of the self-containing code. Sorry for the length. U[x_, $B&Q(B_] := (x + 1.*^-8)^$B&Q(B Logit[p_, x1_, x2_, c1_, $B&Q(B_, $B&K(B_] := ( u1 = U[x1, $B&Q(B]; u2 = U[x2, $B&Q(B]; u3 = U[c1, $B&Q(B]; u0 = p*u1 + (1 - p)*u2; 1/(1 + Exp[(-$B&K(B)*(u0 - u3)]) ) LogLik[choice__, pList__, xList__, $B&Q(B_, $B&K(B_] := (choiceP = Table[Logit[pList[[i]], xList[[i,1]], xList[[i,2]], xList[[i,3]], $B&Q(B, $B&K(B], {i, 1, Length[pList]}]; likList = Table[choice[[i]]*Log[choiceP[[i]] + 1.*^-6] + (1 - choice[[i]])*Log[1.000001 - choiceP[[i]]], {i, 1, Length[pList]}]; Plus @@ likList) Generate[pList__, xList__, $B&Q(B_, $B&K(B_] := (choiceP = Table[Logit[pList[[i]], xList[[i,1]], xList[[i,2]], xList[[i,3]], $B&Q(B, $B&K(B], {i, 1, Length[pList]}]; rand = Table[Random[], {Length[pList]}]; Table[choiceP[[i]] > rand[[i]], {i, 1, Length[pList]}] /. True :> 1 /. False :> 0) Table[ choices = Generate[G[[All,1]], G[[All, {2, 3, 4}]], $B&Q(B1True, $B&Q(B2True, $B&L(BTrue, $B&K(BTrue]; est = NMaximize[{LogLik[choices, G[[All, 1]], G[[All, {2, 3, 4}]], $B&Q(B1True, $B&Q(B2, $B&L(B, $B&K(B], 0 < $B&Q(B2 < 2, 0 < $B&L(B < 2, $B&K(B > 0}, {$B&Q(B2, $B&L(B, $B&K(B}, Method -> {"NelderMead", "RandomSeed" -> Random[Integer, {0, 100}]}], {iter, 100} ] --------------------------------- Thank you, Ming Hsu