The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
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[@]dogado.de.
CLAUDE.md and built tarballs to
.Rbuildignore to eliminate non-standard top-level file
NOTEs.PMM3 (S=3) extends the Polynomial Maximization Method to handle symmetric error distributions with negative excess kurtosis (platykurtic), such as uniform, beta-symmetric, and truncated normal errors.
lm_pmm3() - Linear regression
estimation using PMM3 (S=3) with Newton-Raphson solver. Includes
adaptive kappa mode, step-size limiting, and divergence guard.pmm_dispatch() - Automatic method
selection (OLS / PMM2 / PMM3) based on residual cumulant analysis.compute_moments_pmm3() - Compute
central moments m2, m4, m6 and derived quantities (gamma4, gamma6, g3,
kappa) from residuals.pmm3_variance_factor() - Theoretical
variance reduction factor g3 = 1 - gamma4^2 / (6 + 9*gamma4 +
gamma6).pmm_gamma6() - Sixth-order cumulant
coefficient.test_symmetry() - Test residual
symmetry to guide PMM2 vs PMM3 choice.ts_pmm3() - General PMM3 time series
estimation (AR/MA/ARMA/ARIMA).ar_pmm3() - AR model estimation using
PMM3.ma_pmm3() - MA model estimation using
PMM3.arma_pmm3() - ARMA model estimation
using PMM3.arima_pmm3() - ARIMA model estimation
using PMM3.PMM3fit - Standalone class for linear
regression (no inheritance from BasePMM2) with slots for m2, m4, m6,
gamma4, gamma6, g_coefficient, and kappa. Full S4 methods:
coef(), residuals(), fitted(),
predict(), summary(), plot(),
AIC().TS3fit - Base class for PMM3 time
series, with subclasses ARPMM3, MAPMM3,
ARMAPMM3, ARIMAPMM3. Full S4 methods:
coef(), residuals(), fitted(),
predict(), summary(), plot(),
AIC().This release represents a significant architectural improvement based on comprehensive research comparing different PMM2 implementation strategies.
pmm2_nonlinear_onestep() - One-step global correction
(default, recommended)pmm2_nonlinear_iterative() - Full iterative
Newton-Raphson procedurenumDeriv
packagepmm2_variant
parameter in all time series functions:
"unified_global" (default) - One-step correction, fast
and stable"unified_iterative" - Full iterative procedure for
maximum accuracy"linearized" - Specialized linear approach for MA/SMA
models (EstemPMM-style)Based on Monte Carlo simulations (R=50, n=200) comparing three approaches:
| Approach | AR(1) | MA(1) | SARIMA | Status |
|---|---|---|---|---|
| Unified Iterative | -2.9% MSE | -19.9% MSE | -16.4% MSE | ✅ Best overall |
| Unified One-step | -2.2% MSE | -23.0% MSE | -15.6% MSE | ✅ Fastest |
| Linearized (MA) | N/A | -21.6% MSE | N/A | ✅ MA specialist |
| Direct Nonlinear | N/A | ❌ Failed | ❌ Failed | ⛔ Removed |
Key findings: - Unified approaches provide consistent 3-23% MSE improvement - One-step (global) variant offers best speed/accuracy tradeoff - Linearized approach optimal for pure MA/SMA models
pmm2_variant = "unified_global"# Old way (still works, uses unified_global by default)
ar_pmm2(y, order = 2)
# New explicit variant selection
ar_pmm2(y, order = 2, pmm2_variant = "unified_iterative")
ma_pmm2(y, order = 1, pmm2_variant = "linearized") # Best for MA
arima_pmm2(y, order = c(1,0,1), pmm2_variant = "unified_global") # Defaultpmm2_variant
parameternumDeriv to Suggests for numerical Jacobian
computationma_method argument in sarima_pmm2()
with options "mle" (default) and "pmm2"estpmm_style_ma() - PMM2 estimator for pure MA(q)
models using CSS residuals as fixed regressorsestpmm_style_sma() - PMM2 estimator for pure SMA(Q)
modelsestpmm_style_ma_sma() - PMM2 estimator for
mixed MA+SMA models ⭐ NEWsarima_pmm2() with ma_method="pmm2"R/pmm2_ma_estimator.R module with
complete helper functionstests/testthat/test-ma-pmm2.Rma_solve_pmm2,
ma_compute_innovations,
sma_compute_innovations, and sma_build_design
from pmm2_ts_main.R that were overwriting new
implementations in pmm2_ma_estimator.Rsarima_pmm2() now correctly allows s=1 when no
seasonal components (P=0, D=0, Q=0) are specifiedts objects to numeric vectors before
arithmetic operationsREADME.md and README_uk.md
with organized function tables, seasonal SAR/SMA workflow examples, and
refreshed Monte Carlo efficiency results so new users can discover the
seasonal functionality faster.vignettes/pmm2_time_series.Rmd, walking
through sar_pmm2()/sma_pmm2() usage,
convergence tips, and practical guidance for seasonal datasets.NEWS.md, keeping the changelog aligned with the refreshed
documentation.cran-comments.md, CRAN_CHECK_INSTRUCTIONS.md,
and CRAN_SUBMISSION_CHECKLIST.md, plus README sections on
rebuilding docs, reproducing Monte Carlo studies, and running
R CMD check --as-cran.sar_pmm2()) - Full implementation of SAR(p,P)_s
models for seasonal time series
Supports arbitrary seasonal periods (e.g., 12 for monthly, 4 for quarterly data)
Multiple estimation methods: PMM2, OLS
Demonstrated 20-30% variance reduction with asymmetric innovations
Full integration with S4 class system (SARPMM2
class)
sar_pmm2,
sarma_pmm2, and sarima_pmm2 to prevent length
mismatch errors.estpmm_style_ma_sma to support Multiplicative SARIMA models
by including interaction terms in the design matrix. This resolves
efficiency issues for mixed MA+SMA models at small sample sizes.sma_pmm2()) - Complete SMA(Q)_s implementation
compare_sar_methods() - Compare SAR estimation
approachescompare_ts_methods() - Universal wrapper now supports
SAR and SMA modelsdocs/
directorypredict() method for PMM2fit
class - The prediction method now correctly handles arbitrary
variable names instead of requiring hardcoded “x1”, “x2” names. The
method now uses general matrix multiplication approach
(X %*% coefficients) that works with any variable naming
convention.sprintf() call to properly show mean iteration count in
comparison outputsar_pmm2, sarma_pmm2, and
sarima_pmm2 now correctly pad residuals with zeros (instead
of NA) to match the original series length, ensuring
compatibility with standard diagnostic tools.pmm2_classes.R to prevent “no
definition for class” warnings during package loading..gitignore - Added
test_results/ directory to version control exclusionsDESCRIPTION (latest release date, Suggests list
for packages used in the demos).R CMD check --as-cran (now
warning-free after installing qpdf)..R) and
included them in inst/doc for distribution..Rbuildignore and .gitignore,
keeping only files required for CRAN.New Features: - lm_pmm2() - Linear
regression estimation using Polynomial Maximization Method (S=2) -
ar_pmm2() - Autoregressive (AR) time series modeling with
PMM2 - ma_pmm2() - Moving Average (MA) time series modeling
with PMM2 - arma_pmm2() - ARMA time series modeling with
PMM2 - arima_pmm2() - ARIMA time series modeling with PMM2
- pmm2_inference() - Bootstrap inference for linear models
- ts_pmm2_inference() - Bootstrap inference for time series
models - Statistical utilities: pmm_skewness(),
pmm_kurtosis(), compute_moments() - Comparison
functions: compare_with_ols(),
compare_ts_methods(), compare_ar_methods(),
compare_ma_methods(), compare_arma_methods(),
compare_arima_methods()
S4 Classes: - PMM2fit - Results
container for linear regression models - TS2fit - Base
class for time series results - ARPMM2,
MAPMM2, ARMAPMM2, ARIMAPMM2 -
Specialized time series result classes
Methods: - summary() - Model summary
statistics - coef() - Extract coefficients -
fitted() - Fitted values - predict() -
Predictions for new data - residuals() - Model residuals -
plot() - Diagnostic plots
Documentation: - Comprehensive Roxygen2
documentation for all exported functions - README with theoretical
background and basic usage examples - Demonstration script
pmm2_demo_runner.R showing practical applications
Module Organization: - R/pmm2_main.R -
Primary PMM2 fitting functions - R/pmm2_classes.R - S4
class definitions - R/pmm2_utils.R - Utility functions for
moment computation and optimization - R/pmm2_ts_design.R -
Time series design matrix construction
Dependencies: - Core: methods,
stats, graphics, utils -
Optional: MASS (for advanced statistical functions,
available in Suggests)
Quality Assurance: - Unit tests covering core PMM2 functionality - Edge case handling for numerical stability - Convergence diagnostics and warnings
1.0.0 (Stable API): - API stabilization and backward compatibility guarantee - Seasonal PMM3 models (sar_pmm3, sarima_pmm3) - Extended performance benchmarks - Specialized applications (econometrics, biostatistics)
If you use EstemPMM in your research, please cite the relevant publications:
For Linear Regression (lm_pmm2): Zabolotnii S., Warsza Z.L., Tkachenko O. (2018) Polynomial Estimation of Linear Regression Parameters for the Asymmetric PDF of Errors. In: Szewczyk R., Zieliński C., Kaliczyńska M. (eds) Automation 2018. AUTOMATION 2018. Advances in Intelligent Systems and Computing, vol 743. Springer, Cham. https://doi.org/10.1007/978-3-319-77179-3_75
For Autoregressive Models (ar_pmm2): Zabolotnii S., Tkachenko O., Warsza Z.L. (2022) Application of the Polynomial Maximization Method for Estimation Parameters of Autoregressive Models with Asymmetric Innovations. In: Szewczyk R., Zieliński C., Kaliczyńska M. (eds) Automation 2022. AUTOMATION 2022. Advances in Intelligent Systems and Computing, vol 1427. Springer, Cham. https://doi.org/10.1007/978-3-031-03502-9_37
For Moving Average Models (ma_pmm2): Zabolotnii S., Tkachenko O., Warsza Z.L. (2023) Polynomial Maximization Method for Estimation Parameters of Asymmetric Non-gaussian Moving Average Models. In: Szewczyk R., et al. (eds) Automation 2023. AUTOMATION 2023. Lecture Notes in Networks and Systems, vol 630. Springer, Cham.
Algorithm Stability: - Regularization parameter automatically adjusted for ill-conditioned systems - Step size limiting prevents divergence in optimization - Convergence history tracking for diagnostics
Numerical Considerations: - Moment estimation uses robust methods to handle outliers - Design matrices constructed with numerical stability in mind - NA/Inf values detected and handled appropriately
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.
Health stats visible at Monitor.