getLamb.RdIt computes the vector of Lagrange multipliers, which maximizes the GEL objective function, using an iterative Newton method.
A \(n \times q\) matrix with typical element \(g_i(\theta,x_t)\)
Vector of starting values for lambda
"EL" for empirical likelihood, "ET" for exponential tilting, "CUE" for continuous updated estimator, and "HD" for Hellinger Distance. See details for "ETEL" and "ETHD". "RCUE" is a restricted version of "CUE" in which the probabilities are bounded below by zero. In that case, an analytical Kuhn-Tucker method is used to find the solution.
Tolerance for \(\lambda\) between two iterations. The
algorithm stops when \(\|\lambda_i -\lambda_{i-1}\|\) reaches
tol_lam
The algorithm stops if there is no convergence after "maxiterlam" iterations.
Tolerance for the gradiant of the objective function. The
algorithm returns a non-convergence message if \(\max(|gradiant|)\)
does not reach tol_obj. It helps the gel algorithm to
select the right space to look for \(\theta\)
It represents the ratio k1/k2, where \(k1=\int_{-\infty}^{\infty} k(s)ds\) and \(k2=\int_{-\infty}^{\infty} k(s)^2 ds\). See Smith(2004).
The iterative procedure uses a Newton method for solving
the FOC. It i however recommended to use optim or
nlminb. If type is set to "EL" and method to "optim",
constrOptim is called to prevent \(log(1-gt'\lambda)\)
from producing NA. The gradient and hessian is provided to
nlminb which speed up the convergence. The latter is therefore
the default value. "Wu" is for "EL" only. It uses the algorithm of Wu
(2005). The value of method is ignored for "CUE" because in
that case, the analytical solution exists.
Controls to send to optim,
nlminb or constrOptim
It solves
the problem \(\max_{\lambda} \frac{1}{n}\sum_{t=1}^n
\rho(gt'\lambda)\). For the type "ETEL", it is only used by
gel. In that case \(\lambda\) is obtained by maximizing
\(\frac{1}{n}\sum_{t=1}^n \rho(gt'\lambda)\), using
\(\rho(v)=-\exp{v}\) (so ET) and \(\theta\) by minimizing the same
equation but with \(\rho(v)-\log{(1-v)}\). To avoid NA's,
constrOptim is used with the restriction \(\lambda'g_t
< 1\). The type "ETHD" is experimental and proposed by Antoine-Dovonon
(2015). The paper is not yet available.
lambda: A \(q\times 1\) vector of Lagrange multipliers which solve the system of equations given above.
conv: Details on the type of convergence.
Newey, W.K. and Smith, R.J. (2004), Higher Order Properties of GMM and Generalized Empirical Likelihood Estimators. Econometrica, 72, 219-255.
Smith, R.J. (2004), GEL Criteria for Moment Condition Models. Working paper, CEMMAP.
Wu, C. (2005), Algorithms and R codes for the pseudo empirical likelihood method in survey sampling. Survey Methodology, 31(2), page 239.
g <- function(tet,x)
{
n <- nrow(x)
u <- (x[7:n] - tet[1] - tet[2]*x[6:(n-1)] - tet[3]*x[5:(n-2)])
f <- cbind(u, u*x[4:(n-3)], u*x[3:(n-4)], u*x[2:(n-5)], u*x[1:(n-6)])
return(f)
}
n = 500
phi<-c(.2, .7)
thet <- 0.2
sd <- .2
x <- matrix(arima.sim(n = n, list(order = c(2, 0, 1), ar = phi, ma = thet, sd = sd)), ncol = 1)
gt <- g(c(0,phi),x)
getLamb(gt, type = "EL",method="optim")
#> $lambda
#> [1] -0.008533879 0.014384584 -0.046047875 0.015726456 0.023393249
#>
#> $convergence
#> $convergence$convergence
#> [1] 0
#>
#> $convergence$counts
#> function gradient
#> 44 21
#>
#> $convergence$message
#> NULL
#>
#>
#> $obj
#> [1] 0.001123229
#>