Researches & Projects

Researches

  • Preventing Deep Leakage from Gradients
    Under the Supervision of Prof. Mostafa Tavassolipour
  • Preventing gradients leakage and improving communication efficiency in federated learning algorithms
  • Developing a new model using the ADMM optimization algorithm
  • A paper is in preparation.

  • Network Traffic Classification Using Deep Learning
    Under the Supervision of Prof. Seyed Pooya Shariatpanahi
  • Handling both traffic characterization and application identification using deep learning
  • Data pruning due to the limitation of processing memory; a combination of undersampling and oversampling
  • Implementing an Artificial Neural Network using Pytorch and training on ISCX VPN-nonVPN dataset
  • Based on Deep Packet: A Novel Approach For Encrypted Traffic Classification Using Deep Learning paper, with improvements and modifications in the model structure and data preprocessing.
    [Code]

Notable Projects

  • Doorbell
    It is a smart and efficient door bell. It takes a photo with the camera and sends it using Bluetooth or WiFi module to the android application (based on the location of the mobile phone) to optimize the communication between the Arduino board and the phone.
    This project was developed for the Cyber-Physical Systems course.
    [Server-Code] / [Board-Code] / [Android-Code]

  • Bolbolestan
    An online university course selection website. It is written using Java and Spring for backend and javascript and React-Web for frontend. Also, Docker and Kubernetes helped to increase the portability of this application.
    This application was developed for the Internet Engineering course.
    [Front-End] / [Back-End]

  • FTP Server
    A File Transfer Protocol server with command line interface. It is written using Python.
    This application was developed for the Computer Networks course.
    [Code]

  • Jepeto
    A functional programming languageā€™s compiler. It is written using Java, Gradle, Antlr, and Jasmin.
    This application was developed for the Programming Languages and Compilers course.
    [Code]

  • Parallel Image Processing
    Parallel image processing with Intel Intrinsics liberary. It is written using C++ and OpenCV.
    This application was developed for the Parallel Computing course.
    [Code]

  • XV6 Operating System
    Implemented some new system calls, CPU scheduling methods, and synchronization strategies, using C and Assembly.
    This application was developed for the Operating Systems course.
    [Upgraded CLI] / [Syscalls] / [Scheduler] / [Locks]