Software & machine learning

Muhammad
Al-Muzahid

Computer science graduate from Bangladesh. I work on software, algorithms and machine learning. This is a selection of my projects and published research.

Bangladesh/GitHubLinkedIn
Muhammad Al-Muzahid

Selected projects

Read how each project works, explore the code, or try the cache demo.

Algorithms · Real-world routing

Bangladesh Route Optimizer

A route planner for Bangladesh’s road network, with a 64-district heuristic and an exact Held–Karp solver for 15 commercial hubs.

  • C++
  • Python
  • OSRM
  • Folium
GitHub

C++ · Concurrent systems

TurboCache

A multithreaded in-memory key–value store built with C++17, TCP networking, a worker pool and concurrent reads and writes.

  • C++17
  • TCP
  • Concurrency
GitHub

Applied AI · Local document search

VaultMind

A local PDF question-answering project using document retrieval and language models, with references to source pages.

  • Python
  • Ollama
  • ChromaDB
  • Streamlit
GitHub

Research

Machine learning, with a focus on learning from imbalanced datasets.

IEEE · STI 2024CONFERENCE PAPER

DASS: Density-Adaptive Synthetic Sampling for Improved Imbalanced Classification

A study of density-aware synthetic sampling for classification on imbalanced datasets. Published at STI 2024.

Muhammad Al-Muzahid, Md Abdul Masud, Md. Samsuzzaman, Md. Jahidul Islam

Read the paper

Education & skills

Computer science and engineering.

B.Sc. in CSE from PSTU, with postgraduate study in ICT at BUET. My projects cover C++, Python, algorithms and machine learning.

PSTU

Patuakhali Science and Technology University

B.Sc. Engineering in Computer Science and Engineering

BUET

Bangladesh University of Engineering and Technology

Postgraduate study in Information and Communication Technology

TOOLS & INTERESTS

  • C / C++
  • Python
  • TypeScript
  • React
  • Systems design
  • Machine learning
  • Algorithms
  • Git
Competitive programmingCodeforces

Get in touch

For questions about my work or research, send me an email.

Algorithms · Real-world routing

Bangladesh Route Optimizer

The problem

How can a route visit multiple locations using road distances rather than straight-line estimates?

How it works

The project uses real driving distances from OSRM instead of straight-line distances. Python prepares road data and Folium maps; a separate C++ bitmask dynamic programming solver finds an exact route for the smaller, 15-hub problem.

View source codeAsk about this project

C++ · Concurrent systems

TurboCache

The problem

How can a key–value server handle several clients while keeping shared data consistent?

How it works

A raw Winsock TCP server accepts text commands including SET, GET, DEL, DBSIZE, and PING. A thread pool reuses workers, while a shared mutex protects the store and permits concurrent readers. The repository includes a Python benchmark tool.

Try the commands

Browser simulation

A small illustration of key–value commands. The C++ server is not running here; entries stay in this page and reset when it reloads.

Choose an example above or type SET key value, GET key, DEL key, DBSIZE or PING.

Ready. Try SET name Seyam.
View source codeAsk about this project

Applied AI · Local document search

VaultMind

The problem

How can someone ask questions about a PDF and trace the answer back to a source page?

How it works

The Streamlit interface connects PDF extraction, CPU-based embeddings, a ChromaDB vector store, and models served by Ollama. It brings retrieval and answer generation together in a local workflow, with references back to document pages.

View source codeAsk about this project