This repository contains implementations of Examples 1 and 3 from the research paper “Identification and Control of Dynamical Systems Using Neural Networks” by KUMPATI S. NARENDRA and KANNAN PARTHASARATHY. The "plant" in this context represents a nonlinear dynamical system whose exact behavior is unknown or partially unknown, who is governed by a difference equation that relates the next output to its previous time steps. These examples demonstrate using neural networks to approximate the plant’s behavior, enabling us to model and predict its response to various inputs.
Below are the results for examples one and three, showing the neural network’s output in comparison to the expected plant behavior:
The network accurately approximates the plant’s response, with the output closely matching the expected behavior over time.
In Example 3, a more complex nonlinear system is modeled, demonstrating the network's ability to adapt to complex plant dynamics.
-
Clone this repository to your local machine:
git clone https://github.com/markshperkin/DynamicNN.git
-
Navigate into the project directory:
cd DynamicNN
-
Install the required packages:
pip install -r requirements.txt
This file will train the model and show an evaluation plot.
python example01.py
This file will train the model and show an evaluation plot.
python example03.py
This project was developed as part of the Neural Network class under the instruction of Professor Vignesh Narayanan at the University of South Carolina.