🤖 Part 6: ニューラルネットによる制御 / Neural Network-based Control
本章では、ニューラルネットワーク(NN)を用いた制御手法を学びます。
従来のPID制御との比較や、NNによる補正・逆モデル制御、強化学習との接続可能性についても扱います。
This chapter introduces control techniques using Neural Networks (NN),
covering comparisons with traditional PID control, NN-based compensation, inverse modeling, and potential connections to reinforcement learning.
🎯 学習目標 / Learning Objectives
- NN制御の基本原理(関数近似・逆モデル)を理解する
Understand the fundamentals of NN control (function approximation & inverse modeling) - ニューラルPID(NN-PID)制御器を設計・訓練する
Design and train a Neural PID controller (NN-PID) - 逆モデル学習によるフィードフォワード制御を実装する
Implement feedforward control using inverse model learning - PIDとの比較や統合設計(AITL構想)を考察する
Explore integration of PID and NN-based control in the AITL framework
📁 ディレクトリ構成 / Directory Structure
part06_nn_control/
├── theory/ # 理論資料 / Theoretical docs
│ ├── 01_nn_control.md
│ ├── 02_nn_pid.md
│ ├── 03_inverse_model.md
│ └── 04_ai_vs_classical.md
├── simulation/ # 実装コード / PyTorch-based simulations
│ ├── nn_pid_control.py
│ ├── inverse_model_train.py
│ └── ai_vs_pid_sim.py
├── notebooks/ # 実験Notebook / Jupyter Notebooks
│ ├── train_nn_pid.ipynb
│ └── (future) ai_vs_pid_comparison.ipynb
├── figures/ # 図版 / Figures
│ └── nn_pid_structure.png など
└── README.md # 本章の概要と進捗まとめ / This file
🧪 実験コードとNotebook / Experiments & Notebooks
内容 / Description | ファイル / File |
---|---|
NN-PID制御器(PyTorch) Neural PID controller in PyTorch |
nn_pid_control.py |
NN制御の学習・可視化 Training & visualizing NN controller |
train_nn_pid.ipynb |
逆モデル制御の学習 Inverse model learning for control |
inverse_model_train.py |
PID vs NN 比較 PID vs NN simulation comparison |
ai_vs_pid_sim.py |
🧠 理論資料 / Theory Files theory/
タイトル / Topic | ファイル / File |
---|---|
NN制御の概要と特徴 Overview of NN-based control |
01_nn_control.md |
NN-PID制御の構成と学習法 Structure & training of NN-PID |
02_nn_pid.md |
逆モデル制御の理論と実装 Inverse model theory & implementation |
03_inverse_model.md |
AI制御と古典制御の比較と統合 AI vs classical control & hybrid strategy |
04_ai_vs_classical.md |
🔜 今後の展開 / Next Steps
- LSTM / Transformer による時系列制御への応用
Application of LSTM / Transformer to time-series control - 強化学習ベース制御との連携 →
part07_rl_control/
Integration with Reinforcement Learning (Part 7) - AITL構想との統合:PID + NN + LLM による三層制御アーキテクチャ →
part09_llm_control/
Unified three-layer architecture: PID + NN + LLM (AITL)
📚 参考文献・リンク / References & Links
- 🔗 PyTorch公式ドキュメント / PyTorch Docs
- Narendra & Parthasarathy (1990), “Neural Networks for Control”
- 本教材プロジェクト / This project: EduController (GitHub)
👤 著者・ライセンス | Author & License
📌 項目 / Item | 📄 内容 / Details |
---|---|
著者 / Author | 三溝 真一(Shinichi Samizo) |
💻 GitHub | |
ライセンス / License | MIT License(再配布・改変自由) Redistribution and modification allowed |
⬅️ 前章 / Previous Chapter
Pythonによる制御系実装、ROSを用いたロボット制御演習、FPGAによる制御ハードウェア化を学びます。
Covers control system implementation in Python, robot control exercises using ROS, and FPGA-based hardware realization.
次章 / Next Chapter ➡️➡️
強化学習による制御(Q学習、DDPG、PPOなど)を扱います。
Covers reinforcement learning control methods including Q-learning, DDPG, and PPO.