sysid: System Identification in R
sysid provides functions for constructing mathematical models of dynamical systems from measured input-output data. It supports discrete-time model estimation using time-domain and frequency-domain data.
Supported model structures include ARX, ARMAX, Output Error (OE), Box-Jenkins (BJ), and instrumental variable methods.
Installation
Install from CRAN:
install.packages("sysid")Usage
library(sysid)
# Load example data (simulated ARX process)
data(arxsim)
# Split into training and validation sets
train <- dataSlice(arxsim, end = 1500)
test <- dataSlice(arxsim, start = 1501)
# Estimate an ARX model: na=1, nb=2, nk=2
model <- arx(train, order = c(1, 2, 2))
print(model)
# Compare model predictions against validation data
compare(test, model)
# Plot residual diagnostics
residplot(model)Documentation
Full documentation is available on CRAN.
Citation
If you use sysid in your research, please cite:
Yerramilli, S., Moudgalya, K. M., & Tangirala, A. K. (2017, January). SYSID: An open-source library for system identification. In 2017 Indian Control Conference (ICC) (pp. 53-58). IEEE.
BibTeX entry:
@inproceedings{yerramilli2017sysid,
title={SYSID: An open-source library for system identification},
author={Yerramilli, Suraj and Moudgalya, Kannan M and Tangirala, Arun K},
booktitle={2017 Indian Control Conference (ICC)},
pages={53--58},
year={2017},
organization={IEEE}
}License
GPL-3