Menu

About ASPI Kit

aspicc
Attachments
Adaptcontrolloop.jpg (8154 bytes)
Control2.jpg (33178 bytes)
ControlP.jpg (23033 bytes)
Howtouse2.jpg (58565 bytes)
Ident2.jpg (29329 bytes)
PCAMIMO.jpg (62653 bytes)
PCAMIMO2.jpg (11047 bytes)
Picture4.jpg (6678 bytes)

ASPI Kit

1.Installation

The ASPI Kit requires Python 2.6 or 2.7 as its basic running platform. Further to this the wxPython, Matplotlib and Numpy/Scipy modules are required for full functionality of all features to this software.

After successful installation of Python (2.6/.7) and its necessary modules, you are ready to use the ASPI Kit! Simply download one of the zip files attached to this page and save it in any folder on your PC. Be sure that when loading your own experimental data for use in the ASPI Kit, that it is located in the same folder as the AC_Kit_Console.py file. This ensures that the program is able to access the necessary data for simulation. The newly loaded data files must be labeled identically to the standard data files originally downloaded with the software, with the original files themselves being deleted or stored in a different path to avoid clashing within the software.

2.Control Module

The purpose of this section in the ASPI Kit, is to experiment with the use of adaptive methods via Neural Networks (NNs) for modeling engineering process data and further to explore control of the process via adaptive methods.

2.1 AC Kit

The AC Kit was released in a standalone version (v1.0 & v1.1) and maybe downloaded separately on this site if your goal is just to experiment with adaptive identification and control of engineering process data. However, it is recommended to still download the full ASPI Kit from v 1.2 onwards due to a range of added features for signal analysis, which may also be useful in the sense of identification and control of SISO engineering processes. The AC Kit is thus an integrated part of the ASPI Kit software, currently featuring two key components.

  1. Adaptive identification (modeling) and control of engineering processes with no initial form of process control.
  2. Adaptive identification and control of engineering processes already featuring some form of initial control, being PID or even other senses of linear control.

2.1.1 AC Kit - Initial Control of Plant (Process)

Here this module is split into 3 distinct panels. The first allows the user to check their uploaded process data is in the path of the program via the “Check Loaded Data” button. Following this is the “Plot Data” button, enabling the user to see a visualisation of their uploaded process data. After the visualisation of the data is created, the user may require resampling of the data, for the purpose of control. Thus an edit titled “Resampling” is featured on the bottom of this first panel.

The essence behind these used adaptive methods (particularly LNU and QNUs as a class of HONUs), is to train the respective neural weights (i.e. unknown parameters of the model) to fit the shape of the process data. The engineering process can then be said to be identified successfully when the neural model (denoted by the green signal line in the ASPI Kit) resembles closely or even superimposes to original data for which the NN model is trained for. Once successful identification is achieved, the user may then extend adaptive control method onto the newly identified NN model and test whether it is also suitable to apply such method of control on the engineering process. Both the identification and control processes are based on the Gradient Descent method of training the respective NN models weights or RTRL form of training in the sense of dynamic NN models as implemented in the ASPI Kit. However, a second form of training incorporated into the ASPI Kit is the BPTT training method, which is a batch form of training the NN models weights over each epoch, via an extension of the Gradient Descent method with the famous Levenberg-Marquardt equation. For more details on the theoretical background behind these adaptive methods, please refer to the research papers listed in the reference section of this documentation.

The following panels of this program are thus divided into “Plant Identification” and “Neuro- Controller (as a state feedback controller)”. Here the user must fill in the learning rate for usage of gradient descent algorithm and furthermore epochs to tune the respective training algorithms. As the values of the learning rate and number of epochs differ between the RTRL and BPTT methods, separate edits are placed for each within each panel. There is also a feature for the user to define the length of the variables used in the model polynomial equations for the respective controller.


ASPI Kit- Features of the AC Kit Module


Adaptive Identification of Theoretical 2nd order Engineering Process with Noise (ASPI Kit Output of Adaptive Identification)

The control may be calculated for the following options : DLNU Plant Identification with LNU Neuro-Controller, DLNU Plant Identification with QNU Neuro-Controller or DQNU Plant Identification with QNU Neuro-Controller. This thus gives the user the option to compare behaviour of the different methods, furthermore allowing the user to tune for most optimal control to their process data.


Adaptive Control of Theoretical 2nd order Engineering Process with Noise (ASPI Kit Output of Adaptive Neuro-Controller)

2.1.2 AC Kit - Control Optimisation of Plant (Process)

The purpose of this section of the ASPI Kit is to experiment with control optimisation of the examined engineering process, via the above mentioned adaptive approaches. Often in control engineering, the use of PID controller as well as other forms of linear controllers on their own may not achieve the quickest response in terms of convergence to the desired behaviour of the engineering system. Thus it has been tested and proven in the various research works as listed in the reference section of this documentation, that such adaptive methods featured in the ASPI Kit can improve or optimise the behaviour of an already controlled process.

The principal of this module is analogical to that of the previous for initial control as in 2.1.1. Now with the control loop featuring the identified NN model as an already controlled plant (i.e. with input being desired behaviour "d", and output being the controlled output "yreal"), as opposed to just the identified process in itself. Here the adaptive Neuro-Controller takes the outputs from the previously identified NN model following the adaptive identification, as well as the difference between the desired behaviour of the process and the identified NN model output of the process. These parameters thus fill the input vector of the Neuro-Controller, with adaptive weights v, trained via the RTRL or BPTT methods analogical to that for the adaptive identification.

An adaptive gain parameter ro, may also be tuned for advantage to certain engineering processes. This parameter is thus multiplied with the newly calculated process input i.e. u = ro.(d - q). If it's desired to disable the adaptive gain parameter, it may be achieved by simply setting the "muro" edit to zero (i.e. muro = 0).


Adaptive Control Loop Principal Implemented in the ASPI Kit

Considering the above, the user must save the respective data as follows: "uoutP.txt" - for the process input, "dP.txt" for the desired process behaviour and "youtP.txt" - corresponding to the controlled output of the engineering system. Following this you may then investigate in the same manner whether the engineering process under investigation may be successfully modeled via NN based approaches and furthermore controlled.


Adaptive Control of Bathyscaphe Engineering Process with (ASPI Kit Output of Adaptive Neuro-Controller)

3.Signal Processing Module

A key area of research within the ASPICC group is not only to use such adaptive methods in the sense of engineering process control, but also as an experimental tool for signal analysis!

3.1 PCA Process Data Analysis

Often in more complex processes there is a need to detect random anomalies within the process data for the purposes distinguishing the main dynamics of a signal or even detection of particular errors within an engineering process. Or furthermore, the need to filter out effects due to additional perturbations within a signal for the purposes of process identification. Thus, the ASPI Kit features such signal analysis tool in the form of a PCA analysis module, with further tools to be added shortly with ongoing research provided by the ASPICC group.

3.1.1 PCA Analysis for Single Input Single Output (SISO) Processes

This section of the ASPI Kit is focused on analysis of SISO processes. Consider the following scheme:


Principal of PCA Analysis - Process Scheme

For this given process, the output is not only influenced by the process input, but also due to the addition of certain pertubations within the process output. In this case these perturbations can be considered in the form of e.g. signal errors, thus the goal here is to analyse how the output of the process is influenced by the process input and for the purposes of adaptive modelling of such process behaviour, to rebuild the NN model with an input vector that most significantly resembles the main dynamics of the process with supressed effects due to these perturbations, hence the purpose of using this PCA module. For more comprehensive theory behind the principle of PCA analysis in the sense of adaptive modelling, please refer to the references section of this documentation.

On loading the respective data for the process under investigation, the next step is to setup the calculation and modelling of the process via PCA. The edits nu and ny, are enabled to set the previous amount of samples that are considered into the NN model. Tnu represents the time delay between the process input and output, with the ratio of dt/dthu, being the sampling rate to which the NN model is trained in modelling the behaviour of the considered process. For consideration in the PCA algorithm, the "neig" edit controls how many eigenvectors are taken for construction of the X back matrix or reconstructed input matrix for the NN model. After all the parameters are filled, the "Data after PCA Analysis" button provides a comparison of the NN model resembling the process output with that of the original data, with effects due to the additional perturbations within the process.

3.1.2 PCA Analysis for Multiple Input Multiple Output (MIMO) Processes

Apart from analysis of SISO engineering processes, the ASPI Kit is also aimed towards PCA analysis in the sense of MIMO systems as well. This module considers that for a given process output affected by the addition of perturbations i.e. due to sensor error, due to various process inputs, each process input may have its own respective time delay in relation to the process response i.e. process output. Further to this, the process output in itself may also have certain delays i.e. sensor delay.


Concept of Considered MIMO process for PCA Analysis

Thus, the ASPI Kit features two key components for analysis of such MIMO processes. The first element is the Plant Identification. Here all process data is loaded with definition of the individual time delays for the process inputs with respect to a given process output (represented in samples). Further to this, any individual output delays i.e. due to sensor delay, is defined. The "neig" edit adjusts the number of eigenvectors considered for the reconstruction of the NN input vector.

It is important that the "Data After PCA Analysis" button is pressed first, before and further functions are used. This is due to the input vector x, not yet being defined as the goal is to first process the data for an input vector of the NN model, such to suppress the effects in the process output due to the pertubations within the process. Once computed, the NN architectures via LNU and QNU may be visualised to analyse modelling of the engineering process both with and without the effects of the PCA data processing.


Features of the PCA Analysis for MIMO Process Data Module

The second key field is the "Plot Data" functions. After the NN models are computed, their respective NN weights are saved in within the ASPI Kit program. If the user wishes to understand how each individual process input effects a particular process output value according to the respective magnitude of the particular process input and at which sample of the process output. The "Visualise Expert System" function for all above NN architecture setups is incorporated.

Research Papers by the ASPICC group (References)

  1. Gupta, M.M., Liang, J. and Homma, N. (2003), “Static and Dynamic Neural Networks: From Fundamentals to Advanced Theory,” IEEE Press and Wiley-Interscience, published by John Wiley & Sons, Inc.
  2. Bukovsky, I., Bila, J., Gupta, M., M, Hou, Z-G., Homma, N.: “Foundation and Classification of Nonconventional Neural Units and Paradigm of Nonsynaptic Neural Interaction” in Discoveries and Breakthroughs in Cognitive Informatics and Natural Intelligence series Advances in Cognitive Informatics and Natural Intelligence (ACINI), ed. Y. Wang, IGI Publishing, Hershey PA, USA, Nov.. 2010. ISBN: 978-1-60566-902-1, pp.508-523
  3. Bukovsky, I., Ichiji, K., Homma, N., Yoshizawa, M.: “Testing Potentials of Dynamic Quadratic Neural Unit for Prediction of Lung Motion during Respiration for Tracking Radiation Therapy”, WCCI 2010, IEEE Int. Joint. Conf. on Neural Networks IJCNN, Barcelona, Spain, 2010.
  4. Bukovsky, I., Rodriguez, R., Bila, J., Homma, N.: “Prospects of Gradient Methods for Nonlinear Control”, Strojárstvo Extra, MEDIA/ST, s.r.o. publishing house, 2012, ISSN 1335-2938.
  5. Gupta, M., M., Bukovsky, I., Homma, N. , Solo M. G. A., Hou Z.-G.: “Fundamentals of Higher Order Neural Networks for Modeling and Simulation“, in Artificial Higher Order Neural Networks for Modeling and Simulation, ed. M. Zhang, IGI Global, 2012.
  6. Bukovsky I., S. Redlapalli and M. M. Gupta : Quadratic and Cubic Neural Units for Identification and Fast State Feedback Control of Unknown Non-Linear Dynamic Systems, Fourth International Symposium on Uncertainty Modeling and Analysis ISUMA 2003, IEEE Computer Society, 2003, Maryland USA, ISBN 0-7695-1997-0, p.p.330-334
  7. Rodriguez , R., Bukovsky, I., Homma, N.: “Potentials of Quadratic Neural Unit for Applications”, in International Journal of Software Science and Computational Intelligence (IJSSCI) ,vol 3, issue 3, IGI Global, Publishing, Hershey PA, USA ISSN
  8. Ladislav Smetana: Nonlinear Neuro-Controller for Automatic Control Laboratory System, Master’s Thesis (sup. Ivo Bukovsky), Czech Tech. Univ. in Prague, 2008
  9. P.M.Beneš: “Software Application for Adaptive Identification and Controller Tuning”, STČ Conference CTU Prague, Czech Republic, 2013. (Received Best Paper + BOSCH Award). Link: http://stc.fs.cvut.cz/pdf13/2611.pdf?_=1364170340
  10. Bukovsky, I. Learning Entropy: Multiscale Measure for Incremental Learning. Entropy 2013, 15, 4159-4187. (Full text pdf: http://www.mdpi.com/1099-4300/15/10/4159 ).
  11. Bukovsky, I., Kinsner, W., Bila, J.: „Multiscale Analysis Approach for Novelty Detection in Adaptation Plot“, 3rd Sensor Signal Processing for Defence 2012 (SSPD 2012), Imperial College London, UK, September 24-27, 2012, doi: 10.1049/ic.2012.0114, E-ISBN: 978-1-84919-712-0.
  12. Bukovsky, I., Bila. J: “Adaptive Evaluation of Complex Dynamic Systems using Low-Dimensional Neural Architectures”, in Advances in Cognitive Informatics and Cognitive Computing, Series: Studies in Computational Intelligence, Vol. 323/2010, eds. D. Zhang, Y. Wang, W. Kinsner, Springer-Verlag Berlin Heidelberg, 2010, ISBN: 978-3-642-16082-0, pp.33-57.
  13. Bukovsky, I. : Modeling of Complex Dynamic Systems by Nonconventional Artificial Neural Architectures and Adaptive Approach to Evaluation of Chaotic Time Series, Ph.D. THESIS, Faculty of Mechanical Engineering, Czech Technical University in Prague, 2007.
  14. P. M. Benes et al., "Neural Network Approach to Railway Stand Lateral Skew Control" in Computer Science & Information Technology (CS& IT), Sydney, NSW, Australia, AIRCC, 2014, pp. 327-339
  15. Bukovsky, I. Cejnek, M. Oswald, C. Beneš, P.M.:"Learning Entropy for Novelty Detection - A Cognitive Approach for Adaptive Filters", Sensor Signal Processing for Defence (SSPD), Edinburgh, Scotland, 8th-9th September 2014.