Neural network gives very bad results for change in condition.

4 views (last 30 days)

I have a simulink circuit which has two PI controllers. I wanted to replace them with neural network blocks. I trained neural network blocks from data for normal conditions of the circuit. The neural network blocks give good results. But when I changed the normal condition of the circuit (changed input voltage) the output was unexpected. I need to know can the Ann blocks work for changed conditions of circuit? How can I make it able to work at variable conditions? The training results are given above.

Answers (1)

Drew
Drew on 8 Jan 2025
Here are some suggestions from Generative AI. If this answer helps you, please remember to accept the answer.
Replacing traditional controllers like PI controllers with neural network blocks can be motivated by several reasons:
  1. Adaptability: Neural networks can potentially adapt to complex and non-linear systems better than linear controllers like PI controllers.
  2. Improved Performance: In some cases, neural networks can provide better performance in terms of speed and accuracy.
  3. Learning from Data: Neural networks can be trained using data, which might capture dynamics that are not well-modeled by traditional control strategies.
However, the issue you're encountering, where the neural network performs well under trained conditions but poorly under new conditions, is a common challenge. This is likely because the neural network was trained on a limited dataset that does not generalize well to new conditions. Here are some suggestions to improve the performance of neural network controllers under varying conditions:
  1. Expand the Training Dataset: Include data that covers a wider range of operating conditions. This might include varying the input voltage and other parameters during data collection.
  2. Data Augmentation: Use techniques to augment your dataset artificially, such as adding noise or slight variations to the input data.
  3. Regularization: Apply regularization techniques during training to prevent overfitting to the training data.
  4. Transfer Learning: Use transfer learning to adapt the neural network to new conditions more quickly by fine-tuning it on a smaller dataset of new conditions.
  5. Adaptive Neural Networks: Implement adaptive neural networks that can update their weights in real-time based on new data.
  6. Hybrid Approach: Consider using a hybrid approach where both PI controllers and neural networks are used. The PI controller can handle scenarios outside the training data of the neural network.
  7. Robustness Testing: Before deploying, test the neural network under various simulated conditions to understand its limitations and robustness.
  8. Model Validation: Ensure the neural network model is validated using a separate validation set that includes varied conditions.
By following these strategies, you may improve the generalization of your neural network controller and achieve better performance under varying conditions.

Categories

Find more on Image Data Workflows in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!