Personal observation: upgrading to v. 9 will potentially (occasionally) change the number of estimated parameters for analysis of messy data sets with lots of parameters, so you're advised to watch for these possible changes if you re-run models you previously ran with older versions of MARK (especially for models based on a DM, or where you didn't use a sin link). Having said that, v. 9.0 is designed to do a 'better job' at handling parameter counting, so if you find a difference, take that under advisement.
April, 2018. Version 9.0 — Black-bellied Whistling Ducks
282. The numerical computation of the first and second derivatives has been tweaked to improve accuracy.
282. A major change in estimating the number of parameters that were estimated in a model has been implemented. Two methods are now used. First, a numerical threshold is estimated from the gradient (G) vector as 2 times the maximum absolute value in the gradient. This numerical threshold is then used to determine the number of values in the singular-value decomposition (S) vector that exceed the numerical threshold, with this value taken as the number of parameters estimated. Second, the S vector is searched for the largest ratio S(i)/S(i + 1) between 2 consecutive values, as well as the next largest ratio between 2 consecutive values. If the ratio is >50, the index of the numerator for the maximum ratio is taken as the number of parameters estimated. When both of these estimates agree, all is well. If the 2 estimates disagree, the maximum of the 2 is reported as the number of parameters estimated, and a warning is printed in the full output that the 2 estimates disagree. An option has been provided in the File | Preferences menu choice to make this warning very explicit. The model name has the phrase “Check Par. Cnt.” added to the front of the name, and the model name is shown in blue in the Results Browser. The user should then check the full output to see if the estimate reported is reasonable, or if the number of parameters estimated should be changed. Once an appropriate value is set, the blue coloring can be eliminated by clicking on the model name and deleting the phrase “Check Par. Cnt.”. Unfortunately, neither of the 2 methods can detect that a parameter estimated at its boundary should be counted, e.g., p-hat = 1 with a logit link, or pent-hat = 0 with a MLogit link. Improved numerical precision of the derivatives just made this problem worse. Users should use the sin link when possible to detect parameters estimated at the boundary.