Skip to content

A MatLab package for System Identification using linear and nonlinear auto-regresive models (N)AR, (N)ARX and (N)ARMAX models

License

Notifications You must be signed in to change notification settings

raj-gun/NonSysID

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NonSysId: Nonlinear System Identification with Improved Model Term Selection for NARMAX Models

An open-source MATLAB package for system identification of ARX, NARX and (N)ARMAX models, featuring improved term selection and robust long-term simulation capabilities.

Authors: Rajintha Gunawardena1, Zi-Qiang Lang2, Fei He1

  1. Centre for Computational Science and Mathematical Modelling, Coventry University, Coventry CV15FB, UK.
  2. School of Electrical and Electronic Engineering, The University of Sheffield, Western Bank, Sheffield S10 2TN, UK.

MATLAB MATLAB License arXiv


Overview 📖

NonSysId is a MATLAB package designed for the identification of nonlinear dynamic systems using (N)AR(MA)X models. It incorporates an enhanced Orthogonal Forward Regression (OFR) algorithm, iterative-OFR (iOFR), and PRESS-statistic based criterion to improve model term selection and ensure robust long-term predictions. The package is particularly suited for applications where separate validation datasets are difficult to obtain, such as real-time fault diagnosis and electrophysiological studies.

Features

  • Iterative OFR (iOFR): Improves term selection by iterating through multiple orthogonalisation paths to produce parsimonious models.
  • Simulation-based Model Selection: Ensures simulation stability and enhances long-term prediction accuracy.
  • PRESS-statistic Integration: Includes a PRESS-statistic based term selection criterion that aims to minimise the leave-one-out cross-validation error. Therefore, the model can be validated without requiring separate validation datasets.
  • Reduced Computational Time (RCT): Optimized procedures to accelerate model term selection for complex NARX models.

Getting Started 🚀

Prerequisites

  • MATLAB R2017a or later.
  • Required MATLAB Toolboxes:
    • Signal Processing Toolbox (required if using earlier than Matlab 2019a, for correlation analysis).
    • Parallel Computing Toolbox (required for accelerating system identification procedures).

Installation

  1. Clone the repository:

    git clone https://github.com/raj-gun/NonSysId.git

    or manually download the folder 'NonSysId'.

  2. In Matlab, either;

Documentation

Brief documentation explaining the main functions and a code structure for identifying a model, simulating and validating an identified model is given in the doc folder.

Examples

Paper

If you are using the NonSysId package for academic purposes, kindly reference our pre-print paper as follows:

NonSysId: A nonlinear system identification package with improved model term selection for NARMAX models

Rajintha Gunawardena, Zi-Qiang Lang, Fei He

DOI: 10.48550/arXiv.2411.16475

@misc{10.48550/arXiv.2411.16475,
      title={NonSysId: A nonlinear system identification package with improved model term selection for NARMAX models}, 
      author={Rajintha Gunawardena and Zi-Qiang Lang and Fei He},
      year={2024},
      eprint={2411.16475},
      archivePrefix={arXiv},
      primaryClass={eess.SY},
      url={https://arxiv.org/abs/2411.16475}, 
}

References

[1] M. Korenberg, S. Billings, Y. Liu, and P. McIlroy, “Orthogonal parameter estimation algorithm for non-linear stochastic systems,” Int. J. Control, vol. 48, no. 1, pp. 193–210„ 1988.

[2] S. Chen, S. Billings, and W. Luo, “Orthogonal least squares methods and their application to non-linear system identification,” Int. J. Control, vol. 50, no. 5, pp. 1873–1896„ 1989.

[3] S. Billings, Nonlinear System Identification: NARMAX Methods In The Time, Frequency, And Spatio-Temporal Domains, vol. 13. Chichester, UK: John Wiley & Sons, Ltd, 2013.

[4] S. B. Yuzhu Guo, L.Z. Guo and H.-L. Wei, “An iterative orthogonal forward regression algorithm,” International Journal of Systems Science, vol. 46, no. 5, pp. 776–789, 2015.

[5] X. Hong, P. Sharkey, and K. Warwick, “Automatic nonlinear predictive model-construction algorithm using forward regression and the press statistic,” IEE Proceedings-Control Theory and Applications, vol. 150, no. 3, pp. 245–254, 2003.

[6] L. Ljung, System identification. Springer, 1998.