PID tuning / optimization usig machine learning/deep learning algorithm
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
Hello, I would like to ask about PID tuning using ML/DL algorithms. is there any article available in mathworks to do PID tuning using Machine learning for the optimization of the function. IF anyone did same thing, could you please help me?
I have created a model in Simulink. I want to do optimization to minimize the error. for that I want to do PID tuning.
採用された回答
Hi Avdhut,
You could use the blocks that are shipped with the Reinforcement Learning Toolbox to tune a PID controller. An example application is also shipped with the documentation of the Reinforcement Learning Toolbox.
Please find the link to the same here - https://www.mathworks.com/help/reinforcement-learning/ug/tune-pi-controller-using-td3.html. This example shows how to tune the two gains of a PI controller using the twin-delayed deep deterministic policy gradient (TD3) reinforcement learning algorithm.You may adapt the workflows used in the above application (which tunes a PI controller) to your PID controller.
9 件のコメント
Avdhut Machchhindra
2024 年 5 月 7 日
移動済み: Sam Chak
2024 年 5 月 7 日
Thank you for your answer, However I would like to do PID tuning with Genetic algorithm. GA for PID tuning is not available in MATLAB forum. is it possible to guide me with how to do PID tuning using GA.
if possible please guide me through sequence which I should follow to do it, Since I don't have previous experience of PID tuning.
Thank you in advance!
Regards,
Avdhut
I'm not entirely sure, but perhaps @Raghava S N can assist you. However, I believe it might be quite challenging for you to tune PID gains with a genetic algorithm (GA) if you don't have any experience in mathematically tuning PID gains using formulas. Let's consider a double integrator system as an example.
Can you tune the PID controller using textbook knowledge?
Gp = tf(1, [1 0 0])
Gp =
1
---
s^2
Continuous-time transfer function.
Avdhut Machchhindra
2024 年 5 月 13 日
移動済み: Sam Chak
2024 年 5 月 13 日
Hello Sam,
I tried Genetic algorithm by method mentioned on youtube, however I am getting following error. Could you please help me to rectify this.

Avdhut Machchhindra
2024 年 5 月 13 日
編集済み: Sam Chak
2024 年 5 月 13 日
Hello Sam,
I used integral time absolute error (ITAE) for optimization and directly took its value from simulink model as shown in figure. I have 5 controllers in my model so i added ITAE of all controllers and called it to workspace.


Hi @Avdhut Machchhindra, The error message suggests that you have passed a time series data to ga(), which I assume originates from your Simulink model. The value of the cost function should indeed be a scalar. Is that the case in your implementation?
Hello Sam,
Thank you so much for your response. Issue has been resolved. I selected time series data type in 'to workspace' block, Now I changed data type to array.
Would this one more compact?
cost = ITAE(end);
instead of
cost = ITAE(length(ITAE));
Hello,
Both of them are giving same output.
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で PID Controller Tuning についてさらに検索
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
