The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
[.]_+
convention of the integrated intensity: when xi_t < 0
and the upper endpoint mu_t - sigma_t / xi_t lies below the
threshold, period t contributes zero to
Lambda. Previously such parameter vectors were rejected
(1e9) while the gradient already treated them as zero, so
fits with a negative shape could stop at an artificial boundary without
being stationary. Values remain 1e9 only outside the model
support (an exceedance beyond the upper endpoint, or a threshold below
the lower endpoint when xi_t > 0).fit_nhpp(shape_lower = -0.5): the shape parameter
is restricted to xi_t >= shape_lower (Smith, 1985,
regular region; below -1 the likelihood is unbounded). For
a shape design with an intercept and at most one covariate the bound is
handled exactly, with KKT conditions and multipliers; otherwise it acts
as a barrier. Use shape_lower = -Inf for the previous
unbounded behaviour. Fitted objects store shape_lower and
shape_at_bound, and print() reports an active
bound.pp_nllh() and pp_grad() gain
shape_lower (default -Inf).shape_lower from
the fit.fit_nhpp() gains scaling, with default
"auto" (see Performance). Estimates change within the
optimizer tolerance, and selected models were unchanged in all tests;
scaling = "none" reproduces earlier versions.z_u,
log z_u and tau once;
z_u^(-1/xi - 1) as tau / z_u), about 4 times
faster per call.optim() computes the gradient
only when it is requested: line-search trials, many of which fall
outside the support, now cost one value evaluation. Previously every
call also computed the gradient, and support violations went through the
slow path..nhpp_eval_ref() for
support violations with gradient and for Gumbel limits
(|xi| < 1e-6).fit_nhpp() sets options(matprod = "blas")
while it runs (restored on exit). Its covariates are checked to be
finite, so the NaN scan that the default runs over the whole design
matrix before each product is redundant; results are bitwise identical.
On a daily-size adaptive fit (16436 days, 52 parameters) this cut the
time from 182 s to 146 s.scaling in fit_nhpp(). With
"auto" (default) the optimizer receives the parameter
scales 1 / sqrt(|H_kk|), from the diagonal curvature of the
unpenalized likelihood at the starting values (computed once per call,
reused along the regularization path and stored in the fit, so bootstrap
and backtest refits use the same setting). Unscaled BFGS evaluated the
objective about 9 times per gradient, cutting back steps of the wrong
size. On the daily-size fit above: 147 s -> 77 s, same lambda and
active set, lower objective (negative log-likelihood 1093.94 vs 1094.09)
and a KKT violation 28 times smaller (6.8e-6 vs 1.9e-4), with all 54
path points certified (53 before). Estimates change within the optimizer
tolerance; along flat directions of the likelihood the change can reach
a few percent of a coefficient (2.6% for one location slope in that
example), always towards a lower objective.
scaling = "none" reproduces earlier versions bitwise.bootstrap_rl(), bootstrap_coef() and
bootstrap_nhpp() gain occurrence:
"fixed" (default, as before) keeps the observed number and
timing of exceedances; "simulated" also draws them from the
fitted point process (probability 1 - exp(-tau_t / n_y) per
period), so the uncertainty about the exceedance rate enters the
intervals.bootstrap_nhpp(): return-level and coefficient
intervals from one set of refits. New refit_nhpp() and
annual_prob() (exported helpers).backtest() gains approaches:
"C" (default; resampled training years, as before) and/or
"B", a VAR generator fitted to the training years only
(generator_args are passed to
fit_var_generator()). Both approaches are evaluated on the
same window refit; results carry F_ann_<a> and
exc_<a>_T<TR> columns, binom_tests
and ks_test an approach column. The legacy
columns F_ann and exc_T<TR> repeat the
first approach.backtest() gains decluster, a function
applied to the training-year series in each window, so declustering no
longer uses validation data.build_cov_annual() no longer warns about a covariate
missing from cov_vals when all its operational coefficients
are zero (filling it with 0 is then exact). This happens whenever the
VAR generator, which models only the active covariates, feeds
trajectories to a fit with inactive candidates.fit_nhpp(lambda_scaling = ) now defaults to
"common" (one scalar penalty for all parameter blocks), the
convention used in the dissertation and articles. Use
lambda_scaling = "gradient" for the previous
score-calibrated block penalties.lambda = "bic", the returned model is now the
regularization-path solution at the selected penalty, so the reported
fit is exactly the one scored by the BIC.grad_tol, scaled by the number of
exceedances) rather than by the optimizer’s return code. Fits that
previously reported convergence may now warn, and vice versa.summary() returns an object of class
summary.nhpp_fit (printed as before) instead of printing
directly.vars dependency was removed. VAR(p) generators are
fitted by least squares with Schwarz order selection on a common sample,
which reproduces vars::VARselect() and
vars::VAR(); a single covariate is a VAR(p) with K = 1
rather than a separate AR model.penalty_weights = "adaptive" computes
weights 1 / |theta|^adaptive_gamma from an unpenalized fit
(ridge fallback); numeric coordinate weights are also accepted.fit_nhpp() arguments lambda_grid,
init, and grad_tol. The optimizer falls back
from BFGS to L-BFGS-B and a restarted BFGS when the KKT check
fails.fit$path), and the observed
series.logLik(), nobs(),
predict(), residuals(), and
coef() for nhpp_fit; AIC() and
BIC() work through logLik().residuals() returns time-rescaling interarrival
residuals and magnitude residuals, both standard exponential under the
model.plot.nhpp_fit() gains type = "path" (BIC
curve and coefficient paths) and type = "qq" (exponential
Q-Q plots with exact pointwise bands).n_exceedances() uses the stored series when
y is omitted.seasonal_harmonics(); harmonics of any order
(cos<k>, sin<k>,
sen<k>) are recognized and rebuilt
automatically.marginalize() returns an nhpp_rl object
with Monte Carlo standard errors of the return-level roots
(se_mc), accepts fixed covariate values
(e.g. list(trend = 1)), fills inactive design columns
silently, and has a plot() method.fit_var_generator() gains n_harmonics,
excludes deterministic variables from the VAR, and supports derived
covariates (lags, moving averages) through derive and
derive_lead. simulate_covariates() simulates
all trajectories at once and gains seed.cores argument; replicate matrices
are returned as the attribute "replicates".backtest() gains trend_col (trend
renormalized within each training window), fixed,
reselect_lambda, and cores. Adaptive weights
are recomputed inside each training window, and covariates inactive in a
window refit are filled without warnings.lambda_scaling to fit_nhpp().
Automatic BIC selection can retain the score-calibrated block penalties
introduced in 0.2.0 or use a common scalar penalty to reproduce the
estimation convention used in the dissertation analyses.par) and the operational activity-thresholded solution
(par_oper). Downstream parameter prediction uses the
operational estimator by default, while
coef(fit, operational = FALSE) preserves access to the
smooth solution.active_tol to fit_nhpp() and stored
it in fitted objects. The same tolerance is now used by automatic BIC
selection, print(), summary(),
bic_nhpp(), active_covariates(), bootstrap
refits, and downstream covariate generators.build_cov_annual(), fit_var_generator(),
simulate_covariates(), marginalize(), and
backtest() now inherit the temporal resolution from the
fitted model unless the user supplies an explicit override.fit_var_generator() now verifies the VAR root
condition, stores the root moduli and spectral radius, and refuses to
simulate from an unstable fit.simulate_covariates() now generates independent annual
Monte Carlo paths, each with its own burn-in, instead of splitting one
dependent long path into nominal annual replicates.not_rejected alongside the
legacy calibrated field and uses language appropriate for
nominal binomial comparisons and exploratory tail-conditional PIT
diagnostics.bootstrap_rl() now reports the original fitted-model
return level in RL_est; previous versions reported the mean
of successful bootstrap roots.NA
when the requested quantile lies outside the point-process tail
domain.plot.nhpp_fit() for cumulative-intensity and
fitted-parameter plots.These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.