estMaxLik {dse1}R Documentation

Maximum Likelihood Estimation

Description

Maximum likelihood estimation.

Usage

    estMaxLik(obj1, obj2=NULL, ...) 
    ## S3 method for class 'TSmodel':
    estMaxLik(obj1, obj2, algorithm="optim",
        algorithm.args=list(method="BFGS", upper=Inf, lower=-Inf, hessian=TRUE),
        ...)
    ## S3 method for class 'TSestModel':
    estMaxLik(obj1, obj2=TSdata(obj1), ...)
    ## S3 method for class 'TSdata':
    estMaxLik(obj1, obj2, ...) 

Arguments

obj1 an object of class TSmodel, TSdata or TSestModel
obj2 TSdata or a TSmodel to be fitted with obj1.
algorithm the algorithm ('optim', 'nlm' or 'nlmin') to use for maximization.
algorithm.args arguments for the optimization algorithm.
... arguments passed on to other methods.

Details

One of obj1 or obj2 should specify a TSmodel and the other TSdata. If obj1 is a TSestModel and obj2 is NULL, then the data is extracted from obj1. The TSmodel object is used to specify both the initial parameter values and the model structure (the placement of the parameters in the various arrays of the TSmodel). Estimation attempts to minimimize the negative log likelihood (as returned by l ) of the given model structure by adjusting the parameter values. A TSmodel can also have constant values in some array elements, and these are not changed.

Value

The value returned is an object of class TSestModel with additional elements est$converged, which is TRUE or FALSE indicating convergence, est$converceCode, which is the code returned by the estimation algorithm, and est$results, which are detailed results returned by the estimation algorithm. The hessian and gradient in results could potentially be used for restarting in the case of non-convergence, but that has not yet been implemented.

See Also

optim nlm estVARXls bft TSmodel l

Examples

  true.model <- ARMA(A=c(1, 0.5), B=1)
  est.model <-  estMaxLik(true.model,  simulate(true.model))
  summary(est.model)
  est.model
  tfplot(est.model)

[Package Contents]