No subject
Sat Jul 11 12:35:05 EST 2009
specification.
On working my way towards this more complicated model, I am just trying to
get a rather simple mixed logit to estimate with user-defined simulated
maximum likelihood, one that is easily implemented in NLOGIT. My basic
likelihood function seems fine, as I am able to replicate exactly the canned
"nlogit" conditional logit results via user-defined simulated maximum
likelihood. The problem arises when I try to make *any* parameter random
("nlogit" works fine for all specifications I have tried with random
parameters). What happens is that the program will go through many
iterations (usually 9-15), I'll get a message "Normal exit from iterations.
Exit status=0" (which is usually a good sign), but then I'll get a message
suggesting the estimating covariance matrix is singular. I have used as
starting values either the conditional logit estimates or values that are
real close to the actual mixed logit values.
Any advice would be most appreciated.
Cheers,
Christian
--------------------------------------
Christian A. Vossler
Assistant Professor
Department of Economics
534 Stokely Management Center
The University of Tennessee
Knoxville, TN 37996-0550
Phone: 865-974-1699
Fax: 865-974-4601
E-mail: cvossler at utk.edu
Web Page: http://econ.bus.utk.edu/Vossler/vossler.htm
For reference, here is the code:
maximize ; labels=c, bcost, br, bb
; start=-1.00, -4.25, 4.75, 4.17
; alg=bfgs
; sim=se
; sdv=1,*,1,1
; pts=500
; halton
; fcn =
IndSQ = br*redval + bb*blueval |
IndA1 = c + bcost*4 + br*redval*2 + bb*blueval*3 |
IndA2 = c + bcost*2.5 + br*redval*2 + bb*blueval*1 |
IndA3 = c + bcost*4 + br*redval*2 + bb*blueval*1 |
IndA4 = c + bcost*2.5 + br*redval*1 + bb*blueval*3 |
IndA5 = c + bcost*4 + br*redval*1 + bb*blueval*3 |
Pnum1 = T11*exp(IndA1)+T21*exp(IndA2)+T31*exp(IndSQ) |
Pden1 = exp(IndA1)+exp(IndA2)+exp(IndSQ) |
Pnum2 = T12*exp(IndA3)+T22*exp(IndA4)+T32*exp(IndSQ) |
Pden2 = exp(IndA3)+exp(IndA4)+exp(IndSQ) |
Pnum3 = T13*exp(IndA4)+T23*exp(IndA1)+T33*exp(IndSQ) |
Pden3 = exp(IndA4)+exp(IndA1)+exp(IndSQ) |
Pnum4 = T14*exp(IndA2)+T24*exp(IndA5)+T34*exp(IndSQ) |
Pden4 = exp(IndA2)+exp(IndA5)+exp(IndSQ) |
Pnum5 = T15*exp(IndA5)+T25*exp(IndA2)+T35*exp(IndSQ) |
Pden5 = exp(IndA5)+exp(IndA2)+exp(IndSQ) |
Pnum6 = T16*exp(IndA2)+T26*exp(IndA1)+T36*exp(IndSQ) |
Pden6 = exp(IndA2)+exp(IndA1)+exp(IndSQ) |
log (Pnum1/Pden1) + log(Pnum2/Pden2) + log(Pnum3/Pden3) + log(Pnum4/Pden4) +
log(Pnum5/Pden5) + log(Pnum6/Pden6) $
More information about the Limdep
mailing list