Changes in version 1.7 2015-01-26
-----------------------------------
o Added argument "xreg" for external regressors in function "stsmFit".
This function is the main interface to package "stsm" used by package
"tsoutliers". "xreg" is defined within the "stsm" class object but
having "xreg" as argument in "stsmFit" is more convenient for "tsoutliers".
Changes in version 1.6 2015-01-24
-----------------------------------
o Added "\VignetteIndexEntry" to "stsm.Rnw" file.
It wasn't reported by "R CMD check --as-cran stsm" run under R-devel
but it was reported by "R CMD check --as-cran stsm_1.6.tar.gz" as
required by CRAN policies.
Changes in version 1.5 2015-01-24
-----------------------------------
o Packages "stsm.class" (version 1.3) and "stsm" have been merged.
The S4 class from package "stsm.class" and related methods as well as
the remaining functions of the package are now defined in package "stsm".
o Function "datagen.stsm" takes now the initial state vector from the
input argument "model". If NULL, it is set to zeros.
Suggested at http://stats.stackexchange.com/questions/125946/.
o Function "maxlik.td.optim" and "maxlik.fd.optim":
The standard errors of parameter estimates are set to NULL for the
optimization methods that do not return the Hessian matrix (e.g. "AB-NM").
In previous version an error was returned since for those methods
no Hessian matrix could be found to be inverted.
o Fixed file 'index.html' in the 'doc' directory and validated
at as HTML 4.01 Transitional.
o pdf files attached to the package have been removed. Those files
made the .tar.gz file a bit large in size. The information contained
in those files has been moved to more appropriate places. A small
vignette has been added containing a basic example and references to
further material available from the author's website.
Changes in version 1.4 2014-07-22
-----------------------------------
o Added a document describing the package in vignettes directory.
A duplicate of the document was required in directory "stsm/inst/doc"
in order to pass the R CMD check. Other solutions can be possible
in order to include the pdf: for example the package "tsoutlies" provides an
"index.html" file "doc" directory so that the suplementary pdf
file is shown in the main help page of the package. But this way,
the pdf is not detected as a vignette and is not shown on CRAN web site of the package.
o "mloglik.td" and "mloglik.fd":
These functions have been adapted for the case where the input model
contains external regressors. The argument "xreg" is removed and information
from the slot "xreg" in the input model is used since this information has been
added to the "stsm" class defined in package "stsm.class".
o "mloglik.td.deriv":
Added argument "convergence = c(0.001, length(model@y))".
o "mloglik.td.deriv" and "mloglik.td.grad":
The gradient and the information matrix (in the former function) are now
obtained with respect to the coefficients of external regressors that
may be defined in the "stsm" object.
o "mloglik.fd.deriv" and "mloglik.fd.grad":
The gradient, the Hessian and the information matrix are now
obtained with respect to the coefficients of external regressors that
may be defined in the "stsm" object.
o "maxlik.td.scoring" and "maxlik.fd.scoring":
As the analytical derivatives are now available also for the
coefficients of external regressors, they are used used in
the scoring algorithms. The current approach seems to work better
than in the previous version where the vector of parameters was split
in two vectors (one for the variance parameters and other for the
externa regressors). Before, the coefficients of the external regressors
were obtained (at each step of the procedure) in a linear regression
(OLS or frequency domain linear regression). Now, the availability of
analytical derivatives allows including these coefficients in the
updating equation of the scoring algorithm.
o "maxlik.td.optim" and "maxlik.fd.optim":
- Removed argument "hessian" and set fixed to TRUE. The Hessian is
returned and is used to compute the standard errors of parameter
estimates. This way is more convenient because when printing the output
the standard errors will be already available in the "stsmFit"
object and do not need to be computed whenever the object is printed.
- These functions have been adapted for the case where external
regressors are defined in the input model.
- The coefficients of external regressors (if any) are not removed
from the slot "pars" of the output object, they are no longer placed
separately in a list "xreg" containing the regressors, estimates and
standard errors.
o "maxlik.td.optim":
Fixed the sign of the value of the log-likelihood that was reported.
The element "loglik" in the in output list stored the value of
the minus log-likelihood function, changed to (not-minus) log-likelihood.
o Function "mll.step" defined within "maxlik.fd.scoring":
set.pars(m, get.pars(m) + x * pd) changed to
set.pars(m, m@pars + x * pd), which is the correct
way if m@transPars is not null.
o "maxlik.td.scoring":
the information matrix at the local optimum is now returned.
o Methods "fitted" and "residuals":
the arguments "std.residuals" and "standardised" have been added,
respectively in each method. By default, "fitted" returns
the standardised residuals (as in previous versions); "residuals" does
not standardise the residuals by default because that way is more
convenient when used in package "tsoutliers".
o Method "print.stsmFit" has been simplified by taking advantage of
new output (optimHessian, analytical Hessian or information matrix)
returned by the functions that fit the structural time series model.
Changes in version 1.3 2014-05-29
-----------------------------------
o NAMESPACE: the functions "KalmanFilter", "KF", "KF.deriv.C", "KS" and
"make.KF.args" are imported instead of importing the whole "KFKSDS" package.
o DESCRIPTION: packages "KFSKSD" and "stsm.class" are moved
from the "Depends" field to the "Imports" field.
o The Expetation-Maximization algorithm can now be executed in parallel.
The function "mclapply" from package "parallel" is used. The number of
parallel processes can be specified in argument "num.cores". By default
it is set equal to the number of CPU cores.
o Added argument "xreg" in functions "mloglik.fd" and "mloglik.td".
External regressor variables can be passed to these functions.
o The concatenation of the elements in the list returned by
"maxlik.fd.optim" and "maxlik.td.optim" has been corrected.
Before, the Hessian matrix was not concatenated as a matrix element
but each cell was split in different elements in the list.
"res2 <- c(list(), hessian = res$hessian)"
was changed to
"res2 <- c(list(), list(hessian = res$hessian))".
o In order to reduce the size of the package, the data sets of simulated
series "llm" and "llmseas" have been removed. The first series of "llmseas"
is kept in the "data" directory because it is used in the examples of
the documentation.
The complete data sets can be generated by means of the scripts
"datagen-llm.R" and "datagen-llmseas.R" of the "sims" directory.
Changes in version 1.2 2014-01-20
-----------------------------------
o Fixed the warning reported by compiler
"ISO C++ forbids variable length array āvā [-Wvla]"
in file "KFKSDS-steady-v2.cpp".
o Removed some unused variables from files "KFKSDS-steady-v2.cpp" and
"KFKSDS-steady.cpp".
Version 1.1 2014-01-26
-----------------------------------
o First version on CRAN.
Version 1.0 2014-01-25
-----------------------------------
o First version submitted to CRAN.