Emad Razavi

Robotics Engineer (MSc) focused on perception and navigation research for mobile robots, with a background in electronics, embedded systems, and control theory, and hands-on robotics system development experience.

Portrait of Emad Razavi

About Me

A timeline of the moments that shaped my path into robotics, from my first school competitions to the research and startup work that drives me today.

Building what comes next

Right now I am collaborating with a startup and working on Microsoft HoloLens 2 software, while also staying open to PhD opportunities where robotics, perception, and real-world systems meet. It feels like a new chapter shaped by everything that came before it: embedded systems, late nights in labs, research discipline, and the patience to keep growing.

I want the next step to keep that same balance between serious engineering and meaningful research.

Current startup collaboration and HoloLens 2 work

Graduation with the people who shaped me

On 18 December 2025, I graduated and closed one of the most meaningful chapters of my academic life. It was not only about the degree itself, but also about the people who helped me understand what it really means to grow into research with seriousness, discipline, and curiosity.

Angelo and Joao were more than supervisors to me. They taught me how I should become an academic researcher, and that lesson will stay with me much longer than the ceremony itself.

Graduation day with Angelo and Joao

DLS, Spot, and one of the best periods of my career

In 2024 I joined Dynamic Legged Systems as a guest researcher to complete my thesis. My work focused on modular semantic navigation on the Spot robot, bringing together mapping, perception, autonomy, and the kind of systems thinking that only becomes real when a robot is moving in the world.

That period became one of the best experiences of my life. It gave me the chance to work in a serious research environment, test ideas on a real platform, and understand more clearly the kind of robotics work I want to keep doing.

Working with Spot at Dynamic Legged Systems during thesis research

Leaving home to follow robotics in Italy

After working across companies and finishing my bachelor's degree in electrical engineering, I made one of the biggest decisions of my life. In 2023 I said goodbye to my family and friends and immigrated to Italy so I could follow my robotics path more seriously.

That move was not only academic. It was emotional, uncertain, and deeply personal. But it was also the moment I chose to bet on my dream with full commitment.

Moving to Italy to continue robotics studies

After COVID, rebuilding through ORBI

After the COVID period, the robotics labs were essentially destroyed, and that chapter of life changed abruptly. I joined Hooshmand Afzar Mayan, a startup that produced a robot toy for kids called ORBI, and that move gave me a different kind of robotics memory: lighter in product, but still full of creativity, teamwork, and practical engineering.

ORBI holds some of my warmest memories. It reminded me that robotics is not only about research labs and competitions. It can also be playful, human, and close to everyday life.

A memory from the post-COVID transition period

RoboCup Sydney and life inside the lab

In 2019, when we were preparing for RoboCup Sydney, the lab stopped feeling like a workplace and became a second home. We spent days and nights there, solving failures, testing systems, adjusting electronics, and pushing ourselves to be ready in time for the competition.

That period taught me what technical commitment really looks like when a team is chasing something ambitious together. It was exhausting, intense, and unforgettable.

Late-night preparation at MRL for RoboCup Sydney 2019

Electrical engineering and the real start of MRL

When I graduated from high school, I officially began my bachelor's degree in electrical engineering. At the same time, I joined MRL SSL as an embedded and electronic systems intern. What started as an internship quickly became a deeper role, and I grew into development work inside a serious robotics team.

That overlap between university and MRL was foundational for me. I was learning theory in one place and watching it become real, urgent, and useful in the other.

Early days at MRL working on embedded and electronic systems

The beginning in middle school

In 2013, while I was still a middle school student, I started my journey in robotics. I competed in several competitions and built robots such as line followers and rescue robots. At that age, I did not yet know the full shape of the future, but I already loved the mix of logic, hardware, experimentation, and challenge.

Looking back, that was the real starting point. The curiosity that began there never left, and nearly every later step in my career can be traced back to those early builds and competitions.

An early robotics competition memory from 2013

Education

My academic background combines robotics engineering, electrical engineering, embedded systems, control theory, and optimization.

MSc in Robotics Engineering

University of Genoa, 2023-2025.
Thesis: Semantic Object-Goal Navigation on a Quadruped Robot in Known Environments View thesis details

BSc in Electrical Engineering

Qazvin Azad University, 2018-2023.
Thesis: Optimal PID Controller Tuning for Time-Delayed Systems Using Ant Colony Optimization View thesis details

Master's Thesis

Semantic Object-Goal Navigation on a Quadruped Robot in Known Environments

University of Genoa logo

This thesis developed a two-stage object-goal navigation pipeline for Boston Dynamics Spot. The system first records a clean 2D map and a compact set of confirmed object instances, then reuses that saved world model to navigate to named objects safely and repeatably.

Stage 1: Pre run mapping

A short teleoperation run builds the occupancy map and records only stable RGB D object observations into a semantic database.

Stage 2: Object goal navigation

Spot localizes on the saved map, selects a requested object, and sends Nav2 a safe standoff goal near that object. Targets can be selected from a CLI or by voice.

Work carried out at Dynamic Legged Systems, Istituto Italiano di Tecnologia.

System overview

The stack is intentionally lightweight: Spot uses a 2D LiDAR for mapping/localization, a RealSense T265 for visual-inertial odometry, and a RealSense D435 for RGB D detections. SLAM Toolbox builds the pre-run map; during navigation, AMCL localizes on the fixed map and Nav2 sends goals through the ROS 2 bridge.

  • Two-stage design: navigation relies on a fixed map and a recorded semantic database instead of rebuilding the world online.
  • Confirmed objects only: detections are saved after repeated support over time, with gating and duplicate merging.
  • Inspectable behavior: the map, object list, selected target, generated goal, and Nav2 plans can be checked in RViz.

Demo 1: Semantic mapping

During the pre run, D435 RGB detections are projected into 3D using depth and transformed into the map frame. The semantic layer keeps temporary observations separate from confirmed objects, which reduces noisy entries in the final database.

  • Proposal memory: temporary observations that must survive repeated checks.
  • Static memory: confirmed object instances, merged when nearby detections describe the same object.
  • Recorder output: a human readable YAML database used later for object-goal navigation.

Demo 2: Voice based object goal navigation

In the second stage, Spot loads the saved map and object database, then receives a target request by voice. Whisper transcribes the command, embedding matching selects the closest recorded object instance, and the object pose is converted into a safe standoff goal for Nav2.

  • Goal generation: targets are not placed inside objects; they are offset with a clear facing direction.
  • Execution: Nav2 receives a standard NavigateToPose goal with map, LiDAR obstacle, and inflation costmaps.
  • Safety: Spot's native safety layer remains active under the ROS 2 navigation stack.

Implementation and evaluation

The implemented system includes a confirmed-only semantic layer, an object-to-goal interface for Nav2, onboard Spot deployment, RViz/rosbag tooling, and repeated-run supervision. Evaluation covered three real indoor environments: a church, the DLS lab, and a large IIT test room.

The same pipeline produced usable 2D maps across different layouts and kept the semantic database compact by focusing on a small set of object classes. The main observed limitations were depth alignment bias in object placement and localization inconsistency causing early goal acceptance in edge cases. Both failure modes were visible in logs and RViz, making the system inspectable and technically actionable.

Bachelor's Thesis

Optimal PID Controller Tuning for Time-Delayed Systems Using Ant Colony Optimization

Qazvin Azad University logo

This project was my Bachelor thesis during my studies at Qazvin Azad University under the supervision of Prof. Hamid Qadiri.

Overview

This project investigates PID tuning with Ant Colony Optimization for a second-order control system, while explicitly modeling a delayed baseline to study how time delay affects the transient response. The goal is to minimize the Integral of Time-weighted Absolute Error (ITAE) and obtain a faster, cleaner response with reduced oscillation and smaller tracking error.

We implemented the project in MATLAB and combined classical transfer-function modeling, heuristic optimization, and result visualization. We first build the delayed reference model, then search for PID gains that improve closed-loop performance through repeated simulation and pheromone-based updates.

System definition and delay modeling

We define the plant as G = tf([1], [1 2 3]), which corresponds to a second-order transfer function. A pure delay is then introduced through exp(-1 * s). Since a pure delay is not directly convenient for rational transfer-function analysis, we use a first-order Pade approximation to construct the delayed model used for the baseline step response.

Plant transfer function

G(s) = 1 / (s2 + 2s + 3)

Time delay term

e-s

First-order Pade approximation

e-s ≈ (1 - s/2) / (1 + s/2)

Delayed model used for baseline analysis

Gt(s) = G(s) . Pade[e-s]

  • Plant model: the base system is a stable second-order transfer function with denominator coefficients [1 2 3].
  • Delay model: we approximate exp(-s) with pade(delay, 1) to obtain a rational delayed model.
  • Baseline response: the delayed model is closed with unity feedback as Gf = feedback(Gt, 1) and plotted before controller tuning.

Controller objective

The controller follows the standard PID structure with proportional, integral, and derivative gains. The performance target is ITAE, which weights the tracking error by time and therefore penalizes not only large deviations but also errors that persist for too long.

PID controller law

u(t) = Kpe(t) + Ki∫e(t)dt + Kdde(t)/dt

ITAE objective

ITAE = ∫0T t|e(t)|dt

Closed-loop model evaluated in the optimization loop

Gcf(s) = feedback(C(s)G(s), 1)

One implementation detail is worth stating clearly: in our current implementation, the delayed model is used for the initial baseline plot, while the ACO loop evaluates PID candidates on the nominal plant through feedback(Gc * G, 1). This page reflects that implementation exactly.

ACO search setup

We use 10 ants, 10 iterations, a pheromone decay factor of 0.6, a scaling factor of 2, and three tuning variables for Kp, Ki, and Kd. Candidate gains are sampled through pheromone-weighted roulette-wheel selection.

Optimization loop

For each ant, MATLAB builds a controller with pid(kp, ki, kd), simulates the step response, computes an ITAE-style cost, and reinforces the pheromone trail of the best candidate in that iteration while the others decay.

Why these methods

  • Time delay modeling: delays often degrade damping and tracking performance, so they should be represented explicitly during analysis.
  • Pade approximation: it converts the exponential delay into a rational form that can be simulated with standard transfer-function tools.
  • ACO: it offers a practical derivative-free search strategy for coupled tuning parameters.
  • ITAE: it encourages fast error reduction and typically leads to responses with better settling and lower oscillation.

Code structure and workflow

Our MATLAB workflow is organized around four stages: system definition, ACO initialization, iterative search, and result visualization. We define the nominal and delayed models, allocate the pheromone tables and candidate arrays, evaluate sampled PID gains in closed loop, and store the best cost value across iterations.

  • System setup: defines G, builds the delayed model with pade(delay, 1), and plots the unity-feedback delayed response.
  • ACO initialization: sets the number of ants, decay factor, scaling factor, iterations, and candidate gain structure.
  • Main loop: computes selection probabilities, samples gains, evaluates each controller, records the best solution, and updates pheromones.
  • Visualization: generates the delayed baseline response, the optimized closed-loop response, and the ITAE history over iterations.

Results

Step response of original system with delay

Figure 1. Step response of the original delayed system. The uncompensated response shows overshoot and oscillatory behavior, highlighting the performance degradation introduced by delay.

Step response with optimized PID controller

Figure 2. Step response after tuning the PID gains with ACO. The optimized controller improves settling behavior and produces a noticeably cleaner transient response.

ITAE over optimization iterations

Figure 3. ITAE across optimization iterations. The downward trend indicates convergence toward more effective PID gains.

How to run the code

The project is implemented in MATLAB with the Control System Toolbox. Running the main file builds the delayed baseline model, executes the ACO-based PID search, reports the best gains and minimum ITAE in the command window, and generates the three figures used in the thesis.

  • Open the MATLAB file such as PID_ACO.m.
  • Run it in MATLAB.
  • Inspect the reported values for kp, ki, kd, and Min_ITAE.
  • Review the three generated figures for baseline behavior, optimized response, and cost convergence.

The experiment can also be repeated with different ACO settings. The most direct parameters to adjust are the number of ants, pheromone decay factor, scaling factor, number of iterations, and the lower bound, upper bound, and step size of the PID gain search space.

Conclusion

This thesis shows that Ant Colony Optimization can be used effectively to tune a PID controller for a second-order control problem with a delayed reference model. By minimizing ITAE, the optimized controller achieves a cleaner transient response and better settling behavior than the uncontrolled baseline.

It also demonstrates the value of combining classical control tools with heuristic optimization in a compact, reproducible MATLAB workflow. The project was a solid first experience in algorithmic controller tuning and technical evaluation during my undergraduate studies.

Experiences

A selected timeline of my research, embedded systems, electronics, and robotics development work.

Research Laboratory

Dynamic Legged Systems, IIT

MSc Thesis Student / Research Intern

Nov 2024 - Dec 2025 · Genova, Italy

Semantic object-goal navigation on Boston Dynamics Spot, connecting ROS 2, Nav2, RGB-D perception, mapping, localization, and real robot testing.

Startup

DOPE Aerospace

Embedded & Electronics Developer

Feb 2024 - Jul 2024 · Genova, Italy

Flight-controller and wireless communication work for drone systems, integrating hardware and firmware into practical prototypes.

Industry

Radman System

Electronics Technician

Oct 2021 - Aug 2022 · Tehran, Iran

Electronic and electrical systems work across PCB design, embedded hardware, circuit implementation, firmware, and customized electronics-based products.

Startup

Syntech / ORBI

Robotics R&D Developer

Sep 2020 - Sep 2021 · Qazvin, Iran

Robotics development for ORBI, the Syntech smart-toy robot project, including STM32 hardware, sensing, control behavior, and power optimization.

Research Laboratory

Mechatronics Research Laboratory

Embedded & Control Systems Developer

Aug 2018 - Sep 2020 · Qazvin, Iran

Embedded and control systems work for RoboCup holonomic robots, spanning wireless boards, STM32 firmware, sensor feedback, repairs, and debugging.

Research Laboratory · Genova, Italy

Dynamic Legged Systems, IIT

Research Intern, Nov 2024 - May 2025 · MSc Thesis Student, May 2025 - Dec 2025

At Dynamic Legged Systems, I worked on semantic object-goal navigation for Boston Dynamics Spot, moving from research integration as an intern into the full system developed for my master's thesis.

This work is the main implementation behind my MSc thesis, Semantic Object-Goal Navigation on a Quadruped Robot in Known Environments.

  • Built an end-to-end autonomy pipeline on Spot in ROS 2, covering driver integration, sensor setup, and system data flow.
  • Deployed ROS 2 Nav2 on Spot with the official driver and configured it for reliable indoor navigation.
  • Integrated a 2D LiDAR and tracking camera, then fused their outputs for mapping, localization, and navigation.
  • Built a semantic map from RGB-D detections by associating depth and projecting confirmed objects into the map frame.
  • Added voice-commanded navigation with Whisper speech recognition and CLIP-based target matching.

Research Laboratory · Qazvin, Iran

Mechatronics Research Laboratory

Embedded & Control Systems Developer · Aug 2018 - Sep 2020

MRL was my first serious robotics environment: a competition-focused lab where hardware, firmware, control, debugging, and teamwork all had to come together inside real RoboCup robots.

  • Developed holonomic robots for RoboCup competition work.
  • Designed a custom STM32F4 wireless board, including schematic and PCB design in Altium for NRF24L01 communication.
  • Developed STM32F7 firmware, integrated IMU data with current-sensor feedback, and built an onboard menu for robot peripherals.
  • Maintained and repaired electronic boards, troubleshooting hardware faults and resolving firmware bugs.

Startup · Genova, Italy

DOPE Aerospace

Embedded & Electronics Developer · Feb 2024 - Jul 2024

At DOPE Aerospace, I worked on embedded and electronics development for drone-related systems, where design choices had to connect cleanly across hardware, firmware, and wireless communication.

  • Designed flight-controller electronics and wireless communication elements for drone prototypes.
  • Integrated hardware and firmware so prototype behavior could be tested and refined as a complete system.
  • Built practical experience in autonomy-adjacent engineering, implementation quality, and fast technical iteration.

Industry · Tehran, Iran

Radman System

Electronics Technician · Oct 2021 - Aug 2022

Radman Hitech Systems is an engineering company specializing in the design, development, and consulting of electronic and electrical systems. The company provides technical solutions in areas such as PCB design, embedded hardware, circuit implementation, and customized electronics-based products for industrial and commercial applications.

  • Designed, built, and tested electronic systems including flex shaft machines and automatic humidifiers.
  • Programmed and optimized firmware for system functionality and performance.
  • Strengthened my production-minded habits around testing, debugging, and stable delivery.

Startup · Qazvin, Iran

Syntech / ORBI

Robotics R&D Developer · Sep 2020 - Sep 2021

ORBI was the robotics product I worked on under the Syntech organization: a spherical smart-toy robot where embedded control, sensing, power, hardware debugging, and product behavior were tightly connected.

  • Developed the spherical ORBI robot as a smart toy product.
  • Integrated an STM32F4-based main board with IMU data fusion to improve control-loop performance.
  • Added free-fall, throw, and collision-detection mechanisms.
  • Optimized power efficiency through hardware and firmware improvements.
  • Debugged and refined hardware to improve overall system stability and performance.

Publications

Semantic Object-Goal Navigation on a Quadruped Robot in Known Environments 2025 Open publication

My master's thesis presents a practical object-goal navigation pipeline for Boston Dynamics Spot in real indoor environments. A pre-run records a 2D map and semantic object database; during operation, the robot localizes on the saved map, selects a recorded object target, and navigates using a layered Nav2 costmap with onboard sensing and computation.

Online Object-Level Semantic Mapping for Quadrupeds in Real-World Environments 2025 Open publication

This paper describes an online semantic object mapping system for quadruped robots. The mapper combines range geometry with RGB D detections, merges repeated observations into persistent object instances, and produces a compact object layer that can be queried by class, pose, and confidence.

MRL Extended Team Description 2020 2020 Open publication

This team description paper presents the MRL Small Size League robot hardware and software design, including rule-driven software updates, reliability improvements, accuracy enhancements, and changes to the electronic structure that enabled more complex robot behavior.

Contact

I am open to PhD, research, and robotics engineering opportunities involving autonomy, perception, navigation, SLAM, and real-world robot deployment.