Notable Projects

Simulation of a Smart House

In this project, we will simulate a smart house equipped with IoT devices to control and monitor the lights, open and close a door, and regulate the home's temperature. A user interface dashboard is created in the ThingsBoard IoT platform in order to simulate the smart house. The data transferring is done via MQTT protocols. Below is a sample of a designed dashboard in ThingsBoard.
DeepDDR

To illustrate the data transfer between the server and the IoT dashboard, we run our simulation script. As a result of running the code temperature will fluctuate, the door will continue to close and open randomly, and the lights will turn on and off randomly. Below is the app log after running

DeepDDR
The source code for this project is available on my [Github]

Reinforcement Learning Based Path Planning for a Robot

This project is about finding the optimal path between a start point and an endpoint in an environment with blocks. Reaching the end goal has a reward, and hitting or moving close to the obstacles has negative rewards (punishments). Also, there is little punishment for moving for the robot.

DeepDDR
In order to guide the robot in the environment, we will use the policy iteration method to obtain the value of each block in the environment. The robot will decide its next action based on the value of its neighbouring blocks (there are 8 neighbouring blocks in general, but this number changes if the robot is on the circumference of the environment). After applying the policy iteration algorithm, the value of each block is obtained as below. The black blocks with 0 value are obstacles, and the robot will receive a negative reward if it hits them. So the robot can choose the proper direction for its next step.
DeepDDR

The source code for this project is available on my [Github]

Selected Course Projects

DQN for OpenAI LunarLander-v2

LunarLander-v2 learning how to land efficiently using DQN and DDQN for training DQN. This project can be found Here.

Generating Stuff with GANs and VAEs

Generating images in different contexts using GANs and Variational Autoencoders. This project can be found Here.

Contextual embeddings Using RNNs

Using HateBert and two RNNs as its last trainable layers to classify context of the tweets in the dataset (0: hate tweets, 1: offensive tweets, 2: neutral tweets). This project can be found Here.

Stock Market Prediction

Predicting the price of Apple and Google stock using RNN, LSTM, GRU. This project can be found Here.

Object Detection Using YOLOv5

Detecting bocce balls and labeling their color. This project can be found Here.

Route Planning in Tehran with Dynamic Programming

Dynamic programming is used to determine the best (shortest) path between two desired points in the city of Tehran. This project can be found Here.

Blood Sugar Level Control

The blood sugar dynamics are modeled with an LTI system and we try to regulate this system. This project can be found Here.

EEG Signal Processing

In this project we try to analyse the brain waves during stages of the sleep and try to specify the stage of sleep for the unlabelled recorded signals. This project can be found Here.