NARX for Multi Input Multi Output system Identification
古いコメントを表示
Hello, Can anyone please help how to use NARX method from the Neural Networks Tool box to perform system identification for a system that has Multi inputs Multi Outputs.Thanks.
採用された回答
その他の回答 (2 件)
Ahmed Hakim
2013 年 4 月 1 日
0 投票
Hello GUYS
I have the same problem
I have a model of DC motor which has two inputs (the Voltage and the Load torque) and output DC motor speed
Now I would like to identify this DC motor model with its two inputs using neural network to mimic this Motor Model
The idea is that when I change in the load torque as a disturbance the whole output of the DCM being controlled by PID is changed
So I suggested to make online identification for the DC Motor, so that when there is a disturbance change, the Neural network will identify the new MODEL and then a new design for PID will be according to this new model by Neural network
1 件のコメント
Ahmed Hakim
2013 年 4 月 1 日
How can I make a system identification using Neural Network for a system with Two Inputs and One output
fabian
2013 年 6 月 24 日
0 投票
I need to make the identification of a MISO system with NARX neural network. I have the following code someone can collaborate. thanks
load datoshistoricos.txt;
datoshistoricos;
u=datoshistoricos(:,1:2:3:4)';
y=datoshistoricos(:,5)';
[u,us] = mapminmax(u);
[y,ys] = mapminmax(y);
y = con2seq(y);
u = con2seq(u,587);
d1 = [1:2];
d2 = [1:2];
S1 = 20;
narx_net = narxnet(d1,d2,S1);
narx_net.divideFcn = '';
narx_net.inputs{1}.processFcns = {};
narx_net.inputs{2}.processFcns = {};
narx_net.outputs{2}.processFcns = {};
narx_net.trainParam.min_grad = 1e-10;
[p,Pi,Ai,t] = preparets(narx_net,u,{},y);
narx_net = train(narx_net,p,t,Pi);
narx_net_closed = closeloop(narx_net);
view(narx_net_closed)
mrac_net = feedforwardnet([S1 1 S1]);
mrac_net.layerConnect = [0 1 0 1;1 0 0 0;0 1 0 1;0 0 1 0];
mrac_net.outputs{4}.feedbackMode = 'closed';
mrac_net.layers{2}.transferFcn = 'purelin';
mrac_net.layerWeights{3,4}.delays = 1:2;
mrac_net.layerWeights{3,2}.delays = 1:2;
mrac_net.layerWeights{3,2}.learn = 0;
mrac_net.layerWeights{3,4}.learn = 0;
mrac_net.layerWeights{4,3}.learn = 0;
mrac_net.biases{3}.learn = 0;
mrac_net.biases{4}.learn = 0;
mrac_net.divideFcn = '';
mrac_net.inputs{1}.processFcns = {};
mrac_net.outputs{4}.processFcns = {};
mrac_net.name = 'Model Reference Adaptive Control Network';
mrac_net.layerWeights{1,2}.delays = 1:2;
mrac_net.layerWeights{1,4}.delays = 1:2;
mrac_net.inputWeights{1}.delays = 1:2;
カテゴリ
ヘルプ センター および File Exchange で Deep Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!