PNLSS 1.0 demo Koen Tiels Uppsala University Jan Decuyper Vrije Universiteit Brussel Toolbox available at http://homepages.vub.ac.be/~jschouk
Goal: Capture nonlinear dynamic system behavior Error signal Input Output + System + – Modeled output Model 2/13
Goal: Capture nonlinear dynamic system behavior Error signal Input Output + System + – Modeled output Model 3/13
Goal: Capture nonlinear dynamic system behavior Error signal Input Output + System + – Modeled output Model 4/13
Linear model in PNLSS form = x ( t + 1) A BLA x ( t ) + B BLA u ( t ) + E = 0 ζ ( x ( t ) , u ( t )) = y ( t ) C BLA x ( t ) + D BLA u ( t ) + η ( x ( t ) , u ( t )) F = 0 x 2 1 x 1 x 2 x 1 u . . with e.g. ζ ( x , u ) = . x 2 2 u u 3 . . . 5/13
Linear model in PNLSS form = x ( t + 1) A BLA x ( t ) + B BLA u ( t ) + E = 0 ζ ( x ( t ) , u ( t )) = y ( t ) C BLA x ( t ) + D BLA u ( t ) + η ( x ( t ) , u ( t )) F = 0 x 2 1 x 1 x 2 x 1 u . . with e.g. ζ ( x , u ) = . x 2 2 u u 3 . . . % Set which monomials are free for optimization model init.xactive = fSelectActive(’statesonly’,n,m,n,nx); 6/13
Linear model in PNLSS form = x ( t + 1) A BLA x ( t ) + B BLA u ( t ) + E = 0 ζ ( x ( t ) , u ( t )) = y ( t ) C BLA x ( t ) + D BLA u ( t ) + η ( x ( t ) , u ( t )) F = 0 x 2 1 x 1 x 2 x 1 u . . with e.g. ζ ( x , u ) = . x 2 2 u u 3 . . . % Set which monomials are free for optimization model init.xactive = fSelectActive(’statesonly’,n,m,n,nx); model init.yactive = fSelectActive(’empty’,n,m,p,ny); 7/13
Selection of best model on validation set Selection of the best model on a separate data set -76 -78 -80 Validation error [dB] -82 -84 -86 -88 -90 -92 0 5 10 15 20 25 30 35 40 45 Successful iteration number 8/13
Estimation initial conditions x 0 , u 0 10 -4 6 Output Error with x 0 = 0 Error with estimated x 0 4 2 Output 0 -2 -4 0 500 1000 1500 2000 2500 Sample number model.x0active = [1:n]; % Select initial states to estimate model.u0active = [1:m]; % Select initial inputs to estimate % Levenberg-Marquardt optimization [model, y mod, models] = fLMnlssWeighted x0u0(u,y,model init,nIter,W,lambda); 9/13
Applications Mechanical Electronics combine harvester crystal detector semi-active damper quarter car setup Electrochemical robot arm Li-ion battery hydro-static drive-line Fluid dynamics Medical vortex-induced interaction insulin-glucose vibrations (VIV) for diabetic patients 10/13
<latexit sha1_base64="wZsGeoNOlzFpB02JaBWSO6c0=">ACXicdVBNS8NAEN34bf2qevSyWAS9lCQGWw9CoRePFa0KTQmb7cYu3WzC7kQsoVcv/hUvHhTx6j/w5r9xYyuo6IOBx3szMwLU8E12Pa7NTU9Mzs3v7BYWlpeWV0r2+c6yRTlLVpIhJ1GRLNBJesDRwEu0wVI3Eo2EU4aBb+xTVTmifyDIYp68bkSvKIUwJGCsq4GQh8hH3N5a7rpxHQe4Du4H8FEYjDHtBuWJXD+sHrneA7apt1xzXKYhb8/Y97BilQAVN0ArKb34voVnMJFBtO4dgrdnCjgVLBRyc80SwkdkCvWMVSmOlu/vnJCO8YpYejRJmSgD/V7xM5ibUexqHpjAn09W+vEP/yOhlE9W7OZoBk3S8KMoEhgQXseAeV4yCGBpCqOLmVkz7RBEKJrySCeHrU/w/OXerjl1TrxKoz6JYwFtoW20ixUQw10jFqojSi6RfoET1Zd9aD9Wy9jFunrMnMJvoB6/UDLAqZXQ=</latexit> <latexit sha1_base64="wZsGeoNOlzFpB02JaBWSO6c0=">ACXicdVBNS8NAEN34bf2qevSyWAS9lCQGWw9CoRePFa0KTQmb7cYu3WzC7kQsoVcv/hUvHhTx6j/w5r9xYyuo6IOBx3szMwLU8E12Pa7NTU9Mzs3v7BYWlpeWV0r2+c6yRTlLVpIhJ1GRLNBJesDRwEu0wVI3Eo2EU4aBb+xTVTmifyDIYp68bkSvKIUwJGCsq4GQh8hH3N5a7rpxHQe4Du4H8FEYjDHtBuWJXD+sHrneA7apt1xzXKYhb8/Y97BilQAVN0ArKb34voVnMJFBtO4dgrdnCjgVLBRyc80SwkdkCvWMVSmOlu/vnJCO8YpYejRJmSgD/V7xM5ibUexqHpjAn09W+vEP/yOhlE9W7OZoBk3S8KMoEhgQXseAeV4yCGBpCqOLmVkz7RBEKJrySCeHrU/w/OXerjl1TrxKoz6JYwFtoW20ixUQw10jFqojSi6RfoET1Zd9aD9Wy9jFunrMnMJvoB6/UDLAqZXQ=</latexit> <latexit sha1_base64="wZsGeoNOlzFpB02JaBWSO6c0=">ACXicdVBNS8NAEN34bf2qevSyWAS9lCQGWw9CoRePFa0KTQmb7cYu3WzC7kQsoVcv/hUvHhTx6j/w5r9xYyuo6IOBx3szMwLU8E12Pa7NTU9Mzs3v7BYWlpeWV0r2+c6yRTlLVpIhJ1GRLNBJesDRwEu0wVI3Eo2EU4aBb+xTVTmifyDIYp68bkSvKIUwJGCsq4GQh8hH3N5a7rpxHQe4Du4H8FEYjDHtBuWJXD+sHrneA7apt1xzXKYhb8/Y97BilQAVN0ArKb34voVnMJFBtO4dgrdnCjgVLBRyc80SwkdkCvWMVSmOlu/vnJCO8YpYejRJmSgD/V7xM5ibUexqHpjAn09W+vEP/yOhlE9W7OZoBk3S8KMoEhgQXseAeV4yCGBpCqOLmVkz7RBEKJrySCeHrU/w/OXerjl1TrxKoz6JYwFtoW20ixUQw10jFqojSi6RfoET1Zd9aD9Wy9jFunrMnMJvoB6/UDLAqZXQ=</latexit> <latexit sha1_base64="wZsGeoNOlzFpB02JaBWSO6c0=">ACXicdVBNS8NAEN34bf2qevSyWAS9lCQGWw9CoRePFa0KTQmb7cYu3WzC7kQsoVcv/hUvHhTx6j/w5r9xYyuo6IOBx3szMwLU8E12Pa7NTU9Mzs3v7BYWlpeWV0r2+c6yRTlLVpIhJ1GRLNBJesDRwEu0wVI3Eo2EU4aBb+xTVTmifyDIYp68bkSvKIUwJGCsq4GQh8hH3N5a7rpxHQe4Du4H8FEYjDHtBuWJXD+sHrneA7apt1xzXKYhb8/Y97BilQAVN0ArKb34voVnMJFBtO4dgrdnCjgVLBRyc80SwkdkCvWMVSmOlu/vnJCO8YpYejRJmSgD/V7xM5ibUexqHpjAn09W+vEP/yOhlE9W7OZoBk3S8KMoEhgQXseAeV4yCGBpCqOLmVkz7RBEKJrySCeHrU/w/OXerjl1TrxKoz6JYwFtoW20ixUQw10jFqojSi6RfoET1Zd9aD9Wy9jFunrMnMJvoB6/UDLAqZXQ=</latexit> VIV application Modelling unsteady fluid dynamics: relate displacement to lift force C l = sin(2 πf St t ) coupled PNLSS state nonlinearity ζ degrees 0,3,5,7 output nonlinearity η degrees 0,3,5,7 # d.o.f 1396 e rms validation realisation 0.06 11/13
VIV application – result PNLSS model 1.5 CFD model 1 0.5 0 -0.5 -1 -1.5 0 5 10 15 20 25 30 35 40 Time (s) tic simulation time of 40 s y sim = fFilterNLSS(model,u); 20 x @2.40 GHz toc Computation time is 0.43 seconds. Computation time is 45h 29min. 12/13
Future features ◮ Decoupling ◮ Sine basis functions ◮ Outputs in the regressors 13/13
Recommend
More recommend