<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Writing on Mahdi Sarfarazi</title>
    <link>https://mahdisf.ir/posts/</link>
    <description>Recent content in Writing on Mahdi Sarfarazi</description>
    <image>
      <title>Mahdi Sarfarazi</title>
      <url>https://mahdisf.ir/images/social-card.png</url>
      <link>https://mahdisf.ir/images/social-card.png</link>
    </image>
    <generator>Hugo</generator>
    <language>en-US</language>
    <lastBuildDate>Sun, 11 Oct 2026 00:00:00 +0330</lastBuildDate>
    <atom:link href="https://mahdisf.ir/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hierarchical Deep Reinforcement Learning for Quadruped Navigation over Complex Terrains</title>
      <link>https://mahdisf.ir/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/</link>
      <pubDate>Sun, 11 Oct 2026 00:00:00 +0330</pubDate>
      <guid>https://mahdisf.ir/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/</guid>
      <description>Our ICRoM 2025 paper on separating quadruped navigation and locomotion through a velocity interface. Research summary, five original figures, simulation results and the full PDF.</description>
      <content:encoded><![CDATA[<p>Our ICRoM 2025 paper separates a quadruped robot&rsquo;s navigation and locomotion into two learned policies. A high-level policy decides how to move toward a goal around obstacles; a low-level policy turns its velocity commands into stable motion over uneven ground. This page brings together the paper&rsquo;s abstract, original figures and reported simulation results.</p>
<p><a class="btn btn-primary" href="/papers/hierarchical-deep-reinforcement-learning-quadruped-navigation.pdf" type="application/pdf">Read the full paper (PDF · 6 pages)</a></p>
<p><strong>Authors:</strong> Yousef Ayoubi Rad, Seyyed Mahdi Sarfarazi and Mohammad Shahbazi.<br>
<strong>Affiliation:</strong> AI &amp; Dynamic Systems Lab, School of Mechanical Engineering, Iran University of Science and Technology.<br>
<strong>Conference:</strong> 13th RSI International Conference on Robotics and Mechatronics (ICRoM 2025), December 16–18, 2025, Tehran, Iran.</p>
<p>The downloadable PDF is the conference manuscript supplied by the authors. All results below were obtained in simulation. This page does not report deployment on a physical robot.</p>
<h2 id="abstract">Abstract</h2>
<p>Quadruped robots are promising for tasks like disaster response and exploration, navigating cluttered spaces while maintaining stability over uneven terrains such as stairs, slopes, and obstacles. This paper presents a hierarchical deep reinforcement learning (HRL) framework that decouples high-level navigation from low-level locomotion via a compact velocity-command interface <code>u = (vₓ, vᵧ, ωz)</code>. The high-level policy generates smooth body-frame velocity commands for goal-directed movement in 2D maps, while the low-level policy executes these commands using joint targets with PD control, enhanced by proprioceptive feedback and local terrain sampling. This modular approach mitigates reward conflicts, boosts training efficiency, and enables independent layer optimization in Isaac Gym. Evaluations on maze-like maps and varied terrains show reliable goal reaching, stable tracking, and improved robustness over monolithic baselines. The results underscore how hierarchical decomposition enhances generalization and stability, offering a promising path for intelligent quadruped mobility in real-world applications.</p>
<h2 id="why-separate-navigation-from-locomotion">Why separate navigation from locomotion?</h2>
<p>Choosing a route and keeping a legged robot balanced involve different observations, actions and time scales. Training a single policy to solve both can introduce competing rewards and make it harder to reuse a locomotion controller on a new map.</p>
<p>The proposed hierarchy connects the policies through a bounded body-frame velocity command. The navigation layer uses the robot&rsquo;s pose, relative goal and obstacle information. The locomotion layer uses body and joint measurements together with a fixed pattern of <strong>187 local terrain-height samples</strong>. Joint targets are tracked by a PD controller. Command saturation and smoothing keep the interface within the motion limits used in the simulation.</p>
<figure>
    <img loading="lazy" src="/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/hierarchical-architecture.webp"
         alt="Flowchart connecting the environment and robot state to separate high-level path-planning and low-level locomotion policies through velocity commands."/> <figcaption>
            <p>Figure 2 from the paper. The high-level path planner and low-level locomotion controller communicate through a compact velocity interface.</p>
        </figcaption>
</figure>

<h2 id="simulation-and-terrain-awareness">Simulation and terrain awareness</h2>
<p>Experiments use Isaac Gym with a Legged-Gym-style task wrapper. The terrain suite includes stairs, ramps, discrete obstacles and sinusoidal surfaces. Navigation is trained in a 10 × 10 m workspace with procedurally generated obstacles; larger maps are normalized to the training domain.</p>
<figure>
    <img loading="lazy" src="/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/terrain-types.webp"
         alt="Isaac Gym terrain suite with regions marked A, B and C for sinusoidal waves, discrete obstacles and pyramid stairs."/> <figcaption>
            <p>Figure 1 from the paper. The simulated terrain suite: A, sinusoidal waves; B, discrete obstacles; C, pyramid stairs.</p>
        </figcaption>
</figure>

<p>The high-level planner is trained with Proximal Policy Optimization (PPO), using an MLP with two 256-neuron hidden layers. Training proceeds in stages: first train locomotion on procedural terrains, then hold that policy fixed while training navigation. The paper reports about five hours of combined training on an NVIDIA RTX 3080 Ti, with roughly 12,000 parallel simulation environments.</p>
<figure>
    <img loading="lazy" src="/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/terrain-traversal.webp"
         alt="Four simulated quadruped examples: ascending obstacles, traversing stairs, descending obstacles and walking over sinusoidal waves, with local terrain sampling points shown in green."/> <figcaption>
            <p>Figure 3 from the paper. Terrain traversal: (a) ascending obstacles, (b) stairs, (c) descending obstacles and (d) sinusoidal waves. Green points show local terrain sampling.</p>
        </figcaption>
</figure>

<h2 id="from-a-map-to-a-velocity-command">From a map to a velocity command</h2>
<p>Input occupancy maps are converted into obstacle features for the navigation policy. The planner uses goal and obstacle information to produce commands, while the locomotion policy handles contact and balance in the physics simulation.</p>
<figure>
    <img loading="lazy" src="/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/map-representation.webp"
         alt="Side-by-side input occupancy map and circle-based obstacle representation, with a blue planned path through the obstacles."/> <figcaption>
            <p>Figure 4 from the paper. (a) Input occupancy map; (b) circle-based obstacle representation and navigation path.</p>
        </figcaption>
</figure>

<figure>
    <img loading="lazy" src="/posts/hierarchical-deep-reinforcement-learning-quadruped-navigation/navigation-results.webp"
         alt="Three panels showing a clustered obstacle map, a simulated quadruped along its route and a three-dimensional view of the complete blue trajectory from start to goal."/> <figcaption>
            <p>Figure 5 from the paper. (a) Obstacle map and route; (b) intermediate robot position; (c) complete trajectory in the simulated environment.</p>
        </figcaption>
</figure>

<h2 id="reported-results">Reported results</h2>
<p>The following values reproduce Table I of the paper. Navigation success, collision rate, path ratio and linear velocity-tracking error are distinct measures; navigation success alone does not describe end-to-end performance on uneven terrain.</p>
<table>
  <thead>
      <tr>
          <th>Method</th>
          <th style="text-align: right">Navigation success</th>
          <th style="text-align: right">Collisions per episode</th>
          <th style="text-align: right">Path ratio</th>
          <th style="text-align: right">Tracking error (m/s)</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Hierarchical framework</td>
          <td style="text-align: right">94.2%</td>
          <td style="text-align: right">0.08</td>
          <td style="text-align: right">1.083</td>
          <td style="text-align: right">0.042</td>
      </tr>
      <tr>
          <td>Monolithic baseline</td>
          <td style="text-align: right">81.7%</td>
          <td style="text-align: right">0.28</td>
          <td style="text-align: right">1.194</td>
          <td style="text-align: right">0.061</td>
      </tr>
      <tr>
          <td>Ablation: no hierarchy</td>
          <td style="text-align: right">83.5%</td>
          <td style="text-align: right">0.22</td>
          <td style="text-align: right">1.176</td>
          <td style="text-align: right">0.057</td>
      </tr>
      <tr>
          <td>Ablation: no terrain sensing</td>
          <td style="text-align: right">91.8%</td>
          <td style="text-align: right">0.11</td>
          <td style="text-align: right">1.091</td>
          <td style="text-align: right">0.069</td>
      </tr>
  </tbody>
</table>
<p>The paper also reports <strong>88.6% navigation success on unseen map layouts</strong>, without retraining, and <strong>87.4% end-to-end success</strong> when obstacles and terrain variations are combined. Compared with the monolithic baseline, collisions per episode fall from 0.28 to 0.08, a 71.4% reduction. Removing terrain sensing raises the reported fall rate from 1.4% to 7.3%.</p>
<h2 id="scope-and-limitations">Scope and limitations</h2>
<p>Evaluation uses simulation, static obstacles and nominal sensing. The local height representation does not provide semantic understanding or long-range terrain topology. Tight bends and small-platform sequences can slow progress, and freezing locomotion during navigation training limits how the two layers adapt together.</p>
<p>Online mapping, dynamic obstacles, selective co-training and hardware validation remain directions for further work. The reported simulation results are not evidence of real-world reliability.</p>
<p>For my contribution and the ongoing thesis work, see the <a href="/projects/quadruped-navigation-hierarchical-rl/">related research case study</a>.</p>
<h2 id="paper-and-citation">Paper and citation</h2>
<p><a href="/papers/hierarchical-deep-reinforcement-learning-quadruped-navigation.pdf">Download the complete conference manuscript (PDF)</a>.</p>
<p>Y. Ayoubi Rad, S. M. Sarfarazi and M. Shahbazi, “Hierarchical Deep Reinforcement Learning for Quadruped Navigation over Complex Terrains,” <em>13th RSI International Conference on Robotics and Mechatronics (ICRoM 2025)</em>, Tehran, Iran, December 16–18, 2025.</p>
<p>All five figures on this page were extracted from the supplied Word manuscript. The full PDF contains the equations, references and complete discussion.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Starting This Blog</title>
      <link>https://mahdisf.ir/posts/starting-this-blog/</link>
      <pubDate>Wed, 27 May 2026 09:00:00 +0330</pubDate>
      <guid>https://mahdisf.ir/posts/starting-this-blog/</guid>
      <description>Why I am keeping a technical blog about robotics, AI, simulation, and control.</description>
      <content:encoded><![CDATA[<p>This blog is a place for concise technical notes from my work in AI and robotics.</p>
<p>The topics I plan to write about include ROS2 software architecture, reinforcement learning for control, Isaac Gym and Gazebo simulation workflows, multimodal robot data pipelines, and the practical details of connecting LLMs and VLMs to robotic systems.</p>
<p>My goal is to keep the writing useful: implementation notes, design decisions, experiments, lessons from hardware integration, and research summaries that can help another engineer reproduce or improve the work.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
