24787 Machine Learning and Artificial Intelligence for Engineers
24787 Machine Learning and Artificial Intelligence for Engineers
In this course, we learned Regression, Parametric/Non Parametric Learning, Discriminative and Generative Algorithms, Naive Bayes, Non-linear Classifiers, Feature Engineering/Representation, Ensemble Methods, Support Vector Machine (SVM), Unsupervised Learning and Clustering Algorithms, Principal Component Analysis, Independent Component Analysis, Neural Networks, Training, and Reinforcement Learning. We used Jupyter Notebooks and Python for the practice and the final project. In the programming applications in Python, we learned to use Machine Learning related libraries, such as Matplotlib, Pandas, Numpy and etc.
Traditionally, the Zeigler-Nichols (ZN) Rules are commonly used to manually tune the controller parameters and optimize its performance based on several indexes (steady-state error, settling time, and time constant) of the tracking output. In the final project, we concentrate on applying multiple Machine Learning methods to control systems (PID), in order to reduce the tuning time and improve command tracking and disturbance rejection performance. Neural Network (Multi-layer Perceptron(MLP)) on self-collected dataset and several Reinforcement Learning algorithms (Q-Learning, Deep Q-Network(DQN), Deep Deterministic Policy Gradient(DDPG)) on simulation environments (OpenAI Gym) have been implemented and analyzed. Based on the evaluation of the accuracy and robustness of each method, Deep Reinforcement Learning algorithms turned out to be a better choice for control systems with continuous state and action space.
Datasets (Self-created)
Results of MLP
MLP: Low Accuracy/Robustness & Noises of real environments/robots
Flat
Slope
Valley
Flat Results for Q-Learning
Slope Results for Q-Learning
Valley Results for Q-Learning
3 Different Terrain Conditions: Flat, Slope, Valley
Different OpenAI Gym environments:
MountainCar : continuous states, discrete actions
MountainCarContinuous (Valley) : continuous states, continuous actions
Algorithms :
Q-Learning : for MountainCar
Deep Deterministic Policy Gradient (DDPG) : for MountainCarContinuous (Valley)