Robotics · Multi-Robot Coordination · Autonomous Systems · Embedded Engineering
I build robotic systems and measure how they behave under congestion, timing faults, and imperfect assumptions—from planning and perception to real-time control and hardware interfaces.
C++17 ROS 2 Python Multi-Agent Planning Embedded Systems
Warehouse multi-agent pickup and delivery (MAPD) — a C++17 fleet coordinator and grid simulator for up to 100 robots, covering task allocation, multi-agent pathfinding, traffic management, and execution delays.
- Coordination: With 25 robots and 360 orders/hour offered, independent A* froze in every benchmark run; coordinated ECBS averaged 359.5 deliveries/hour over 10 seeds.
- Late execution: At a 10% missed-step probability, turning off both traffic rules produced 44,170 simulated safety stops over 80 one-hour runs. With the rules enabled, the matched experiments recorded 0.
- Planner trade-offs: Under heavy load, ECBS delivered about 40% more orders than faster-to-compute PIBT (653.3 versus 465.1 deliveries/hour with 25 robots).
- Learning result: A learned travel-time model improved prediction accuracy but did not pass the predefined test for higher delivery throughput against a tuned rule-based allocator.
Status: Grid simulation, planning, and traffic experiments are complete through Stage 5. Next: communication faults and fuzz testing; then an Isaac Sim + ROS 2/Nav2 comparison on matched maps and metrics, followed by hardware-in-the-loop and overhead localization. These later stages are planned, not yet validated.
Source, benchmark commands, and results · Interactive algorithm atlas
|
359.5 deliveries/h 25 coordinated robots 360 orders/h offered · 10 seeds |
44,170 → 0 simulated safety stops traffic rules off → on · 80 h |
+40% throughput ECBS vs faster-to-compute PIBT 25 robots · heavy load |
|
65 ms p50 capture → arm motion latency teleoperation stack |
100 Hz control loop rate p99 period 10.1 ms |
5.23 cm APE RMSE on EuRoC MH_01_easy |
All figures above are taken from the linked project documentation and evaluation results in this profile's repositories.
My work connects robotics algorithms to running systems: multi-robot planning, navigation, state estimation, motion control, embedded interfaces, and safety mechanisms. I focus on measurable performance, repeatable tests, and fault handling—not just successful demos.
| Project | What it does | Documented highlight |
|---|---|---|
| 🤖 Multi-robot fleet coordination C++17 · Multi-agent pathfinding · MAPD · Benchmarks |
Reproducible warehouse fleet simulator with coordinated planning, order assignment, execution delays, and traffic safeguards for up to 100 robots. | 359.5 deliveries/hour with 25 robots at 360 orders/hour offered; 0 simulated safety stops with traffic rules on in the matched 80-hour delay experiment. |
| 🧭 Terrain-aware autonomous navigation ROS 2 · Nav2 · NVIDIA Isaac Sim · C++ · Python · CAN |
Custom Nav2 terrain costmap layer that detects slope, roughness, and height steps from 3D lidar, with evaluation against simulator ground truth, a safety command arbiter, and a simulated drive ECU. | Safety arbiter demo reached standstill in 0.55 s during an e-stop while turning, with documented takeover and stop behavior. |
| 🦾 Robot arm teleoperation ROS 2 · C++ · Eigen · Jetson Orin Nano · RealSense · Isaac Sim |
Marker-driven teleoperation of a simulated Franka arm using custom inverse kinematics, a safety supervisor, and network fault testing. | 65 ms median end-to-end capture-to-motion latency, 100 Hz control loop, and documented no-overrun sessions. |
| 👁️ Stereo visual odometry C++17 · OpenCV · EuRoC |
Metric stereo visual-odometry frontend with tracking, triangulation, PnP-RANSAC, motion-consistency gating, and trajectory evaluation. | 5.23 cm APE RMSE, 3.60 ms mean latency, and 0.0642% PnP failure rate on EuRoC MH_01_easy. |
| 🔌 STM32 real-time sensor logger STM32 · FreeRTOS · C · DMA · UART |
Multitasking sensor collection with RTOS queues and synchronization, DMA-backed storage, Bluetooth monitoring, and sensor fault recovery. | Built around concurrency primitives, DMA offload, and trace-based timing checks for reliable real-time behavior. |
| 🌿 BeagleBone environmental monitor BeagleBone Black · C · Linux · GPIO · I²C · PWM · ADC |
Embedded Linux environmental sensing, on-device display, actuator control, and cloud data logging. | Integrates sensing, local display, PWM control, and ThingSpeak logging using plain C on embedded Linux. |
| Area | Tools and topics |
|---|---|
| 🤖 Robotics & autonomy | Multi-agent pathfinding, fleet coordination, ROS 2, Nav2, Isaac Sim, teleoperation, localization, motion control |
| 👁️ Perception & estimation | stereo visual odometry, lidar terrain analysis, tracking, pose estimation |
| 🔧 Systems software | C, C++, Python, Linux, instrumentation, testing, fault handling |
| ⚙️ Embedded & hardware | STM32, FreeRTOS, Jetson, BeagleBone Black, CAN, UART, I²C, DMA |