training MLP by learning from PID controller

28 visualizzazioni (ultimi 30 giorni)
Yang Chen
Yang Chen il 27 Ott 2022
I have a PID controller, and I need to train MLP by learning from PID controller. The simulink structure is like the following, and the inputs are two sine waves.
The configuration of PID is like the following.
The architecture of MLP is like the following, and the normalization has been set in Sequence layer.
The training plot is good in reference to the following.
However, there is something wrong with comparision scope in simulink, where the mark red and mark green represents the outputs of PID controller, while the mark yellow an mark blue represents the outputs of Neural Network. Obviously, the performance of Neural Network is not so good, but I don't know the reason. If anyone knows about that, please help me, I will appreciate it.

Risposte (1)

David Willingham
David Willingham il 28 Ott 2022
Hi,
Firstly, you may need to train a model that type includes state information, i.e.LSTM. I would recommend trying a LSTM network.
Another consideration, have you thought about using reinforcement learning? It is better suited to modeling control systems. This example shows how you can use it to tune a PI controller Tune PI Controller Using Reinforcement Learning
  4 Commenti
Yang Chen
Yang Chen il 1 Nov 2022
I haven't tried Reinforcement learning, because my current research is to replace PID by simple deep neural network. Reinforcement learning is a further step.
David Willingham
David Willingham il 3 Nov 2022
Hi Yang,
What is the goal to replace the PID with Deep Learning? What's your measures for success?
For the LSTM architecture, have you tried tuning any of the parameters?

Accedi per commentare.

Prodotti


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by