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]