Mohamed Amine Hajji / Projects

Fuzzy Logic Obstacle Avoidance for a Mobile Robot

A from-scratch Mamdani fuzzy inference engine — reproducing a published robotics paper — steering a simulated robot around obstacles in a live browser visualization.

Paper (DOI)

This project reproduces "Design and Implementation of Fuzzy Logic for Obstacle Avoidance in Differential Drive Mobile Robot" (Puriyanto & Mustofa, 2024): a robot that senses its surroundings with proximity sensors and uses a Mamdani fuzzy inference system — implemented entirely from scratch, no fuzzy-logic library — to decide how to steer. It ships as a real-time browser simulator instead of physical hardware: a Flask/Flask-SocketIO backend runs the fuzzy controller and a 2D ray-casting sensor simulation, streaming robot state to an HTML5 Canvas front end at ~30 updates/sec with live membership-function and rule-activation charts alongside the simulation.

Highlights

Stack: Python, Flask, Socket.IO, NumPy, JavaScript