SIMIO: Matlab package for system identification with missing inputs and outputsZhang Liu, Anders Hansson, and Lieven Vandenberghe IntroductionSIMIO is a Matlab package for solving system identification problems with missing inputs and outputs. The approach of recovering the missing inputs and outputs is based on the nuclear norm optimization of a subspace system identification formulation. The optimization is solved using the alternating direction method of multipliers (ADMM). Details of the algorithm are described in the paper Nuclear norm system identification with missing inputs and outputs by Z. Liu, A. Hansson, and L. Vandenberghe. Download
The examples in the SIMIO package require MATLAB’s System Identification Toolbox. User GuideSIMIO contains two main system identification functions.
This function computes a sequence of optimized inputs and outputs from
the regularized nuclear norm optimization
An example is provided in the file optimize_missing_yu_example.m. The figures below illustrate the results for the compact disc arm data of the DaISy collection. The system has two inputs and two outputs. The circles in the figures indicate the available data points for system identification. The red lines in the figures show the optimized inputs and outputs returned by the optimize_missing_yu function, which can be used by a standard system identification routine, e.g., Matlab’s n4sid.
optimize_y.m This function computes a sequence of optimized outputs from the
regularized, weighted nuclear norm optimization
FeedbackWe welcome and appreciate any comments, suggestions, and reports of applications of SIMIO. Please send feedback to Zhang Liu (zhang@ee.ucla.edu), Anders Hansson (hansson@isy.liu.se) or Lieven Vandenberghe (vandenbe@ee.ucla.edu). Copyright InformationSIMIO is free and distributed under the terms and conditions of the GNU General Public License. |