- Ph.D. in Control Theory and Engineering.
Model-Predictive-Control-Implementation-in-Python-1. Here, we post the codes that implement the Model Predictive Controller (MPC) for linear systems.
122Model-Predictive-Control-for-Linear-Systems-in-Cpp-by-Using-Eigen-Library. This repository contains C++ files that explain how to implement the Model Predictive Control (MPC) algorithm for linear systems in C++ by using the Eigen C++ matrix library.
90Subspace-Identification-State-Space-System-Identification-of-Dynamical-Systems-and-Time-Series-. Python
49Machine-Learning-of-Dynamical-Systems-using-Recurrent-Neural-Networks. This project deals with learning to reproduce the input-output behavior of state-space models using recurrent neural networks and the Keras machine learning toolbox.
36Linear-Quadratic-Regulator-Optimal-Control-in-Cpp-From-Scratch-by-Using-Newton-Method. We implemented a solution of the Linear Quadratic Regulator (LQR) Optimal Control problem in C++. We use the Newton method to solve the Riccati equation and to compute the solution.
31Kalman-Filter-Implementation-in-Cpp-Using-Eigen-Library. C++
31Deep-Q-Learning-Network-from-Scratch-in-Python-TensorFlow-and-OpenAI-Gym. These code files implement the deep Q learning network algorithm from scratch by using Python, TensorFlow, and OpenAI Gym. The codes are tested in the OpenAI Gym Cart Pole (v1) environment.
24Disciplined-Python-Implementation-of-the-Recursive-Least-Squares-Method. This is a disciplined Python implementation of the Recursive Least Squares Method
23Model-Reference-Adaptive-Control---MIT-Rule. MATLAB
21Mobile-Robot-Dead-Reckoning-and-Visualization-of-Motion-in-RViz. In this repository, we post Robot Operating System (ROS) and Python code that implement real-time robot motion tracking using dead reckoning and visualization in real-time in RViz.
21Machine-Learning-and-System-Identification-for-Adaptive-Optics. This project deals with system identification and machine learning of large-scale deformable mirrors used in adaptive optics. I have submitted two papers that deal with this important problem. The approaches can be generalized two other problems of estimating large-scale system with the dynamics described by partial differential equations.
21Simulation-of-State-Space-Models-of-Dynamical-Systems-in-Cpp--Eigen-Matrix-Library-Tutorial. C++
16Extended-Kalman-Implementation-in-Python. Python
12Low-Cost-Brain-Computer-Interface-by-Using-OpenBCI-Cython-Board-MATLAB-and-Arduino. This repository contains MATLAB and Arduino C codes for establishing a low-cost brain computer interface. The brain computer interface is based on the Cython OpenBCI board, MATLAB, Arduino, and a stepper motor.
11Save-and-Load-Eigen-Cpp-Matrices-Arrays-to-and-from-CSV-files. The functions provided in this C++ source files are used to save and load Eigen C++ matrices/arrays to and from CSV values.
11Introduction-to-Eigen-Cpp-Matrix-Computation-Library. This C++ code explains how to use the Eigen C++ library to perform matrix computations. A video lecture and a post accompanying this code is provides.
10Monte-Carlo-Method-for-Estimating-State-Value-Function-in-Python-. This code implements the (first visit) Monte Carlo method for estimating the state value function in Python.
10PID-control-implementation-Arduino-Ball-and-Beam-System. This is a C/C++ Arduino file that implements a PID controll algorithm for a ball and beam system.
8Execute-Python-Code-From-MATLAB. These code files explain how to execute Python code directly from MATLAB
8Simulation-and-Animation-of-Cart-Pole-State-Space-Model-in-Python-and-Pygame. In this GitHub repository we posted Python scripts that are used to automatically derive a symbolic state-space model of a cart
7Plot-Phase-Portraits-and-State-Space-Trajectories-of-Dynamical-Systems-in-MATLAB. In this tutorial, we explain how to generate phase portraits and state-space trajectories of dynamical systems in MATLAB.
7Simple-Latex-Template. This is a simple latex template. This template accompanies the YouTube video I made.
7Introduction-to-OpenAI-Gym-Python-Library-and-Frozen-Lake-Reinforcement-Learning-Environment. This code demonstrates how to use OpenAI Gym Python Library and Frozen Lake Environment. This code accompanies the tutorial webpage given here:
7Control-Node-Selection-and-Control-Action-Design-for-Nonlinear-Networks-and-Systems. These are the codes for optimally selecting control nodes and computing control actions for networks with nonlinear dynamics and systems.
7Disciplined-Kalman-Filter-Implementation-in-Python. This code implements the Kalman filter in Python by using an object oriented approach.
6Solve-Nolinear-Equations-in-Python-by-Using-fsolve. Python
6Demonstration-of-Cart-Pole-OpenAI-Gym-Reinforcement-Learning-Environment-in-Python-. This code file demonstrates how to use the Cart Pole OpenAI Gym (Gymnasium) environment in Python.
6Graphics-User-Interface-in-Cpp-and-Plotting-Using-Qt-QCustomPlot-and-Eigen-Matrix-Library. This project demonstrates how to develop graphic user interfaces in C++ using the Qt development environment. Also, we demonstrate how to couple Eigen matrix library with QCustomPlot Qt library to generate graphs and plots in C++
6Simulation-of-Differential-Equations-in-Python-with-Time-Varying-Inputs-and-Parameters. Python
6Q-Learning-Algorithm-in-Python-with-Cart-Pole-OpenAI-Gym--Gymnasium-Environment. In this repository, we post the implementation of the Q-Learning (Reinforcement) learning algorithm in Python. The codes are tested in the Cart Pole OpenAI Gym (Gymnasium) environment.
6Multi-Armed-Bandit-Problem-and-Epsilon-Greedy-Action-Value-Method-in-Python. This GitHub repository contains Python implementation of the epsilon-greedy action value method for solving multi-armed bandit problem.
6Phase-portraits-of-dynamical-systems-and-state-space-models-in-Python. In this Python dynamical system tutorial, we explain how to construct phase portraits of dynamical systems and state-space models. The posted code will construct a phase portrait and a state-space trajectory of a dynamical system. The webpage tutorial accompanying these codes is given here: https://aleksandarhaber.com/phase-portraits-of-state-space
6Machine-learning-of-ARX-models-of-Dynamical-Systems-using-Keras-and-MLP. Python
6Policy-Iteration-Algorithm-in-Python-with-Tests-on-Frozen-Lake-OpenAI-Gym-Environment. Reinforcement Learning Tutorial. Implementation of the Policy Iteration Algorithm in Python Tested on the Frozen Lake OpenAI Gym environment.
5Introduction-to-Time-Series-Analysis-and-Estimation-in-Python. These are the codes that support the lectures on time-series analysis and estimation in Python.
5Sparse-Approximate-Inverse-of-a-Sparse-Matrix--MATLAB-Implementation. This is a MATLAB function that computes an approximate (sparse) inverse of a sparse matrix.
5Bagging-Classifier-in-Python. In this repository, we posted the codes that demonstrate how to implement the Bagging classifier in the Scikit-learn library and Python.
5Modeling-of-Mirror-Temperature-Dynamics-and-Model-Order-Reduction. MATLAB
5matlab_arduino_interface. This is a MATLAB-Arduino interface for controlling mechatronics devices directly from MATLAB. It uses a serial port communication
5Greedy-in-the-Limit-with-Infinite-Exploration-GLIE-Monte-Carlo-Reinforcement-Learning-in-Python. The Python codes given here, explain how to implement the Greedy in the Limit with Infinite Exploration (GLIE) Monte Carlo Control Method in Python. We use the OpenAI Gym (Gymnasium) to test the Python codes. More precisely we use the Frozen Lake Environment to test the GLIE Monte Carlo Control method.
5transient-structural-thermal-optical-performance-STOP-analysis-of-reflective-optics. This code repository contains COMSOL Multiphysics and MATLAB files used to perform transient (time-dependent) Structural Thermal Optical Performance (STOP) analysis of reflective optics. We perform the transient STOP analysis of a Newtonian telescope.
5Iterative-Policy-Evaluation-Algorithm-and-OpenAI-Gym. This code implements the iterative policy evaluation algorithm in Python. We use the Frozen Lake environment from OpenAI Gym library to illustrate the performance of the iterative policy evaluation algorithm.
4Python-Implementation-of-Particle-Filter. Python
4Sensor-Selection-for-Nonlinear-Networks. In this repository, we post MATLAB algorithms for selecting nodes of networks with nonlinear dynamics.
4ROS_OpenCV_Camera. Makefile
4Implementation-of-Voting-Classifier-in-Scikit-learn-and-Python---Ensemble-Machine-Learning. Python
4Introduction-to-Recurrent-Neural-Networks-in-Keras-and-TensorFlow. Python
4Eigen-Cpp-Matrix-Library-Demonstration. This repository contains code files that demonstrate how to use the Eigen C++ Matrix library for performing the basic matrix operations, computing eigenvalues, solving linear systems, and computing matrix decompositions.
3ROS_modeling_using_xacro_and_urdf. These repository contains xacro/urdf and launch files necessary to model a robot.
3C-code-Arduino-for-the-Weightlifter-Project. This is an Arduino (C code) for controlling the experimental setup "Arduino Weightlifter". Here is the YouTube video of the project: https://www.youtube.com/watch?v=Fj_0KRzNGfA This code is written by Francesco Pecora (undegraduate student) and Aleksandar Haber (professor) CUNY College of Staten Island April 2018
3SARSA-Temporal-Difference-Learning-in-Python. These code files implement the on-policy SARSA (State-Action-Reward-State-Action) reinforcement learning algorithm in Python.
3Introduction-to-Scikit-learn-Classification-and-Visualization. Python
3Machine-learning-of-transient-structural-thermal-optical-peformance-STOP-models. This code repository contains Python codes that are used for estimating structural thermal optical performance (STOP) models of optical systems
3Machine-Learning-and-Identification-of-Temperture-Dynamics.
3Demonstration-of-Inheritance-in-Cpp. C++
2Demonstration-of-Vector-Containers-in-Cpp-Standard-Template-Library-STL-. This file demonstrates how to use and perform basic operations on vector containers in C++ Standard Template Library (STL). The tutorial webpage accompanying this code file is given here:
2Three-must-know-approaches-for-computing-the-Fibonacci-sequence-in-Cpp. C++
2Linear-Quadratic-Regulator-With-Nonzero-Set-Points-in-MATLAB. MATLAB
2test1-git.
1aleksandarhaber.github.io. This is my webpage/blog.
1