﻿<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.0 20120330//EN" "http://jats.nlm.nih.gov/publishing/1.0/JATS-journalpublishing1.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-id journal-id-type="nlm-ta">Intell. Robot.</journal-id>
      <journal-id journal-id-type="publisher-id">IR</journal-id>
      <journal-title-group>
        <journal-title>Intelligence &amp; Robotics</journal-title>
      </journal-title-group>
      <issn pub-type="epub">2770-3541</issn>
      <publisher>
        <publisher-name>OAE Publishing Inc.</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
	<article-id>IR-2026-050501</article-id>
      <article-id pub-id-type="doi">10.20517/ir.2026.24</article-id>
      <article-categories>
        <subj-group>
          <subject>Research Article</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Search-based hierarchical whole-body motion planning and control for quadrotors</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <name>
            <surname>Cui</surname>
            <given-names>Peiyu</given-names>
          </name>
          <xref ref-type="aff" rid="I1">
            <sup>1</sup>
          </xref>
          <contrib-id contrib-id-type="orcid">https://orcid.org/0009-0002-5135-5955</contrib-id>
        </contrib>
        <contrib contrib-type="author" corresp="yes">
          <name>
            <surname>Zhang</surname>
            <given-names>Hao</given-names>
          </name>
          <xref ref-type="aff" rid="I1">
            <sup>1</sup>
          </xref>
          <xref ref-type="corresp" rid="cor1" />
          <contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-4527-9610</contrib-id>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Du</surname>
            <given-names>Zhixu</given-names>
          </name>
          <xref ref-type="aff" rid="I2">
            <sup>2</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Huang</surname>
            <given-names>Chao</given-names>
          </name>
          <xref ref-type="aff" rid="I1">
            <sup>1</sup>
          </xref>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Sun</surname>
            <given-names>Jian</given-names>
          </name>
          <xref ref-type="aff" rid="I3">
            <sup>3</sup>
          </xref>
        </contrib>
      </contrib-group>
      <aff id="I1">
        <sup>1</sup>College of Electronic and Information Engineering, Tongji University, Shanghai 201210, China.</aff>
      <aff id="I2">
        <sup>2</sup>Shanghai Research Institute for Intelligent Autonomous Systems, Tongji University, Shanghai 201210, China.</aff>
      <aff id="I3">
        <sup>3</sup>College of Transportation Engineering, Tongji University, Shanghai 201210, China.</aff>
      <author-notes>
        <corresp id="cor1">Correspondence to: Prof. Hao Zhang, College of Electronic and Information Engineering, Tongji University, Shanghai 201210, China. E-mail: <email>zhang_hao@tongji.edu.cn</email></corresp>
        <fn fn-type="other">
          <p>
            <bold>Received:</bold> 5 May 2026 | <bold>First Decision:</bold> 4 Jun 2026 | <bold>Revised:</bold> 17 Jul 2026 | <bold>Accepted:</bold> 10 Aug 2026 | <bold>Published:</bold> 19 Aug 2026</p>
        </fn>
        <fn fn-type="other">
          <p>
            <bold>Academic Editor:</bold> Chaomin Luo | <bold>Copy Editor:</bold> Pei-Yun Wang | <bold>Production Editor:</bold> Pei-Yun Wang</p>
        </fn>
      </author-notes>
      <pub-date pub-type="ppub">
        <year>2026</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>19</day>
        <month>8</month>
        <year>2026</year>
      </pub-date>
      <volume>6</volume>
	  <issue>3</issue>
      <fpage>504</fpage>
	  <lpage>23</lpage>
      <permissions>
        <copyright-statement>© The Author(s) 2026.</copyright-statement>
        <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
          <license-p>© The Author(s) 2026. <bold>Open Access</bold> This article is licensed under a Creative Commons Attribution 4.0 International License (<uri xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</uri>), which permits unrestricted use, sharing, adaptation, distribution and reproduction in any medium or format, for any purpose, even commercially, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.</license-p>
        </license>
      </permissions>
      <abstract>
        <p>In this paper, we propose a novel search-based hierarchical whole-body motion planning framework that can divide the planning process of a quadrotor into two parts: position-only planning and attitude-aware planning. A safe flight corridor (SFC) containing spatial scale information is designed to partition collision-free regions to identify narrow regions in the environment, and the attitude-aware planning process is triggered only in narrow regions. Based on the spatial-scale SFC, a carefully designed hierarchical collision detection mechanism can constrain the attitude of the quadrotor along the trajectory to the safe corridor to ensure collision-free and accelerate the planning process. Afterward, a trajectory refinement strategy is introduced to preserve the searched safe attitude-aware trajectory segments and optimize the neighboring position-only trajectory segments with position, velocity, and acceleration continuity, ensuring smooth transitions between different planning stages. Subsequently, a differentially flat model predictive controller is used to track aggressive trajectories. Benchmark results show that the proposed method generates safe and aggressive trajectories while reducing computation time by approximately 4-9 times relative to the search-based whole-body baseline. High-fidelity simulation experiments are conducted in various unknown environments to demonstrate the feasibility of the generated trajectories.</p>
      </abstract>
      <kwd-group>
        <kwd>Motion and path planning</kwd>
        <kwd>trajectory optimization</kwd>
        <kwd>autonomous navigation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec1">
      <title>1. INTRODUCTION</title>
      <p>Quadrotors have attracted much attention in the field of aircraft due to their flexible maneuverability and diverse application scenarios. Traditional quadrotor flight motion planning achieves obstacle avoidance by modeling the quadrotor as a sphere or simply inflating the obstacles. The resulting trajectory is relatively conservative and is mainly used for low-speed, stable flight missions<sup>[<xref ref-type="bibr" rid="B1">1</xref>-<xref ref-type="bibr" rid="B5">5</xref>]</sup>. However, when performing tasks such as high-maneuverability flight, stunts, or dealing with dynamic obstacles in complex environments, quadrotors need to adjust their attitude to pass through narrow gaps that are much smaller than themselves, as shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>. In such scenarios, motion planning must be carried out in the full configuration space, where both position and orientation are considered, which significantly increases planning complexity.</p>
      <fig id="fig1" position="float" width="350">
        <label>Figure 1</label>
        <caption>
          <p>By finely dividing the environment into safe corridors with spatial scale information, our method can separate attitude-aware planning from position-only planning, which can greatly speed up the search efficiency compared with existing methods.</p>
        </caption>
        <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.1.jpg" />
      </fig>
      <p>Whole-body motion planning is crucial for applications such as quadrotor navigation<sup>[<xref ref-type="bibr" rid="B6">6</xref>]</sup>, robotic manipulation<sup>[<xref ref-type="bibr" rid="B7">7</xref>]</sup>, and vehicle control. Unlike simpler motion planning in Euclidean space, where only point-mass objects are considered<sup>[<xref ref-type="bibr" rid="B8">8</xref>]</sup>, whole-body motion planning involves additional complexity because rotational motion must also be taken into account. Despite recent progress, whole-body motion planning for quadrotors still faces three main challenges.</p>
      <p>(1) <bold>Efficient extraction and characterization of feasible regions.</bold> Whole-body motion planning relies on environmental perception and free-space representation to identify regions where the quadrotor attitude must be explicitly considered. Some methods use onboard cameras to detect narrow regions<sup>[<xref ref-type="bibr" rid="B9">9</xref>]</sup>, but they typically rely on specific gap geometries or visual features. Other methods require external motion-capture systems to obtain prior position and orientation information of narrow gaps<sup>[<xref ref-type="bibr" rid="B6">6</xref>,<xref ref-type="bibr" rid="B10">10</xref>]</sup>, limiting their applicability in unstructured environments. Another line of work models obstacles or feasible regions using convex polyhedra<sup>[<xref ref-type="bibr" rid="B11">11</xref>,<xref ref-type="bibr" rid="B12">12</xref>]</sup>. However, high-quality convex decomposition can be computationally expensive. Voronoi-based methods<sup>[<xref ref-type="bibr" rid="B13">13</xref>]</sup> can also partition the feasible space and provide safe paths with large clearance, but they are often conservative. Safe flight corridors (SFCs)<sup>[<xref ref-type="bibr" rid="B14">14</xref>-<xref ref-type="bibr" rid="B16">16</xref>]</sup> have been widely adopted for quadrotor trajectory generation because they provide compact convex constraints for optimization. Nevertheless, conventional SFCs usually describe only the geometric boundary of the collision-free space and lack explicit spatial-scale information, making it difficult to distinguish spacious regions suitable for position-only planning from narrow regions that require attitude-aware planning.</p>
      <p>(2) <bold>Real-time whole-body motion planning.</bold> Existing whole-body motion planning methods can be broadly classified into search-based methods<sup>[<xref ref-type="bibr" rid="B9">9</xref>,<xref ref-type="bibr" rid="B17">17</xref>]</sup>, learning-based methods<sup>[<xref ref-type="bibr" rid="B18">18</xref>,<xref ref-type="bibr" rid="B19">19</xref>]</sup>, and optimization-based methods<sup>[<xref ref-type="bibr" rid="B6">6</xref>,<xref ref-type="bibr" rid="B10">10</xref>,<xref ref-type="bibr" rid="B12">12</xref>,<xref ref-type="bibr" rid="B20">20</xref>]</sup>. Search-based methods generate motion primitives by sampling the control space to find feasible trajectories. Liu <italic>et al.</italic> modeled the quadrotor as an ellipsoid and detected collisions by testing whether obstacle points lie inside it<sup>[<xref ref-type="bibr" rid="B17">17</xref>]</sup>. Although finer sampling can improve feasibility, the search may require several seconds, while sampling in jerk space to ensure acceleration continuity leads to the curse of dimensionality. Learning-based methods have shown promising performance in narrow-gap traversal. Wu <italic>et al</italic>. proposed a pixel-to-action policy using reinforcement learning<sup>[<xref ref-type="bibr" rid="B18">18</xref>]</sup>, while Zhang <italic>et al.</italic> developed a differentiable-simulation-based end-to-end framework for irregular gaps<sup>[<xref ref-type="bibr" rid="B19">19</xref>]</sup>. However, such methods typically require extensive simulation training and careful reward design, and may face generalization challenges in unseen cluttered environments. Optimization-based methods typically use convex decomposition to generate SFCs at the front end and optimize trajectory smoothness, safety, and dynamic feasibility at the back end<sup>[<xref ref-type="bibr" rid="B6">6</xref>,<xref ref-type="bibr" rid="B10">10</xref>,<xref ref-type="bibr" rid="B12">12</xref>,<xref ref-type="bibr" rid="B20">20</xref>]</sup>. However, imposing attitude constraints along the entire trajectory increases the computational burden. Therefore, a real-time model-based framework that exploits spatial-scale information and selectively activates attitude-aware planning in narrow regions remains necessary.</p>
      <p>(3) <bold>Real-time control with constraints.</bold> Conventional quadrotor tracking controllers usually adopt a cascaded feedback structure for position and attitude tracking. However, dynamic constraints are typically not explicitly handled in the control layer, placing a heavy burden on the planning module<sup>[<xref ref-type="bibr" rid="B21">21</xref>-<xref ref-type="bibr" rid="B23">23</xref>]</sup>. If the reference trajectory violates the dynamic limits of the quadrotor, the controller may suffer from large tracking errors or even tracking failure. Model predictive control (MPC) is a widely used strategy for explicitly handling dynamic constraints by predicting future states and optimizing control inputs online<sup>[<xref ref-type="bibr" rid="B24">24</xref>]</sup>. However, quadrotor dynamics are inherently nonlinear, especially during aggressive flight with large roll and pitch angles. Directly applying nonlinear MPC to such systems requires solving a constrained nonlinear optimization problem at each control step, which can introduce considerable computational burden. When high-dimensional states, input limits, and fast control frequencies are considered simultaneously, the resulting nonlinear MPC problem may be difficult to solve in real time, thereby limiting its applicability as a high-frequency control module for aggressive quadrotor motion.</p>
      <p>To address these challenges, we develop a search-based hierarchical whole-body motion planning and control framework for quadrotors. First, a spatial-scale-aware SFC strategy classifies the free space into spacious regions suitable for position-only planning and narrow regions requiring attitude-aware planning. Attitude-aware whole-body collision checking is selectively activated only in narrow regions, reducing unnecessary state expansion and improving search efficiency. Next, attitude-aware trajectory segments are retained, while the neighboring position-only segments are refined subject to position, velocity, and acceleration continuity. Finally, a differentially flat model predictive controller (DF-MPC) is used to track the resulting aggressive trajectory while explicitly enforcing dynamic constraints. The main contributions of this paper are summarized as follows:</p>
      <p>• A spatial-scale-aware SFC generation method is proposed. Compared with widely used SFC generation methods<sup>[<xref ref-type="bibr" rid="B14">14</xref>-<xref ref-type="bibr" rid="B16">16</xref>]</sup>, the proposed method not only provides geometric containment constraints for trajectory generation but also characterizes the local spatial scale of the free space. This information enables the environment to be classified into spacious regions suitable for position-only planning and narrow regions requiring attitude-aware planning.</p>
      <p>• A hierarchical collision-checking and trajectory-refinement mechanism is proposed. Using the spatial-scale information provided by the SFCs, attitude-aware whole-body collision checking is selectively activated in narrow regions, while efficient position-only collision checking is performed in spacious regions. The resulting attitude-aware trajectory segments are retained, whereas the neighboring position-only segments are refined to improve the higher-order continuity of the overall trajectory.</p>
      <p>• A model predictive controller based on differential flatness is developed for whole-body trajectory tracking. The controller explicitly enforces dynamic constraints and maintains accurate tracking as the reference trajectory approaches the dynamic limits of the quadrotor. Its tracking performance is evaluated using the high-fidelity AirSim simulator.</p>
      <p>The remainder of this paper is organized as follows. Section 2 introduces the differential flatness and collision-checking formulations. Section 3 presents the hierarchical whole-body motion planning and trajectory refinement methods. Section 4 develops the DF-MPC. Section 5 reports benchmark comparisons and high-fidelity simulation results. Finally, Section 6 concludes the paper.</p>
    </sec>
    <sec id="sec2">
      <title>2. PRELIMINARIES</title>
      <sec id="sec2-1">
        <title>2.1. Differential flatness and attitude reconstruction</title>
        <p>The quadrotor has been shown to be a differentially flat system, whose state and control inputs can be represented by the flat output <italic>σ</italic> = [<italic>x</italic>, <italic>y</italic>, <italic>z</italic>, <italic>ψ</italic>]<inline-formula><tex-math id="M1">$$ ^{\top} $$</tex-math></inline-formula> and its higher-order derivatives. In whole-body planning, the key step is to recover the attitude of the quadrotor from the planned translational trajectory. Following the differential-flatness formulation in<sup>[<xref ref-type="bibr" rid="B17">17</xref>]</sup>, the rotation matrix of the quadrotor is denoted by</p>
        <p><disp-formula> <label>(1)</label> <tex-math id="E1"> $$  R=[\mathbf{x}_b(\sigma),\mathbf{y}_b(\sigma),\mathbf{z}_b(\sigma)]\in SO(3), $$ </tex-math></disp-formula></p>
        <p>where <bold>x</bold><italic><sub>b</sub></italic>, <bold>y</bold><italic><sub>b</sub></italic>, and <bold>z</bold><italic><sub>b</sub></italic> are the body-frame axes expressed in the world frame. Let</p>
        <p><disp-formula> <label>(2)</label> <tex-math id="E1"> $$  a_x=\ddot{x},\ a_y=\ddot{y},\ a_z=\ddot{z}+g . $$ </tex-math></disp-formula></p>
        <p>Then, the body <italic>z</italic>-axis is aligned with the desired total force direction:</p>
        <p><disp-formula> <label>(3)</label> <tex-math id="E1"> $$  \mathbf{z}_b
=
\frac{1}{\sqrt{
a_x^2+a_y^2+a_z^2}}
\begin{bmatrix}
a_x\\
a_y\\
a_z
\end{bmatrix}. $$ </tex-math></disp-formula></p>
        <p>The desired yaw angle <italic>ψ</italic> defines an intermediate heading direction:</p>
        <p><disp-formula> <label>(4)</label> <tex-math id="E1"> $$  \begin{aligned}
\mathbf{x}_c
&amp;=
\begin{bmatrix}
\cos\psi,\ \sin\psi,\ 0
\end{bmatrix}^{\top},\\
\mathbf{y}_c
&amp;=
\begin{bmatrix}
-\sin\psi,\ \cos\psi,\ 0
\end{bmatrix}^{\top}.
\end{aligned} $$ </tex-math></disp-formula></p>
        <p>According to <bold>y</bold><italic><sub>b</sub> </italic>= <inline-formula><tex-math id="M1">$$ \mathcal{N} $$</tex-math></inline-formula>(<bold>z</bold><italic><sub>b</sub> </italic>× <bold>x</bold><italic><sub>c</sub></italic>), the body <italic>y</italic>-axis can be explicitly written as</p>
        <p><disp-formula> <label>(5)</label> <tex-math id="E1"> $$  \mathbf{y}_b
=
\frac{1}{\sqrt{
a_z^2+
(a_x\sin\psi-a_y\cos\psi)^2
}}
\begin{bmatrix}
-a_z\sin\psi\\
a_z\cos\psi\\
a_x\sin\psi-a_y\cos\psi
\end{bmatrix}. $$ </tex-math></disp-formula></p>
        <p>Finally, from <bold>x</bold><italic><sub>b</sub> </italic>=<bold>y</bold><italic><sub>b</sub> </italic>× <bold>z</bold><italic><sub>b</sub></italic>, the body <italic>x</italic>-axis is obtained as</p>
        <p><disp-formula> <label>(6)</label> <tex-math id="E1"> $$  \mathbf{x}_b
=
\frac{1}{\sqrt{
a_x^2+a_y^2+a_z^2
} \sqrt{
a_z^2+
(a_x\sin\psi-a_y\cos\psi)^2
}}
\begin{bmatrix}
a_z^2\cos\psi+a_y^2\cos\psi-a_xa_y\sin\psi\\
a_z^2\sin\psi+a_x^2\sin\psi-a_xa_y\cos\psi\\
-a_z(a_x\cos\psi+a_y\sin\psi)
\end{bmatrix}. $$ </tex-math></disp-formula></p>
        <p>If the collective thrust <italic>f</italic> and the body angular velocity <italic>ω</italic> are used as control inputs, they can be computed from the flat outputs as</p>
        <p><disp-formula> <label>(7)</label> <tex-math id="E1"> $$  \begin{aligned}
f
&amp;=
m\sqrt{
a_x^2+a_y^2+a_z^2
},\\
\omega
&amp;=
(R^{\mathrm{T}}\dot{R})^{\vee},
\end{aligned} $$ </tex-math></disp-formula></p>
        <p>where <inline-formula><tex-math id="M1">$$ (\cdot)^{\vee}:\mathfrak{so}(3) $$</tex-math></inline-formula> → ℝ<sup>3</sup> denotes the vee map. From Equations (3)-(7), we observed that the collective thrust is directly determined by the desired acceleration, while the attitude is algebraically determined by the desired acceleration and yaw angle. Moreover, the body angular velocity is related to the derivative of the attitude, and therefore to higher-order derivatives of the flat output, such as jerk. This property is useful for both attitude-aware whole-body planning and differential-flatness-based control.</p>
      </sec>
      <sec id="sec2-2">
        <title>2.2. Collision checking</title>
        <p>SFCs decompose the collision-free space into an ordered sequence of convex polyhedra. Each SFC is represented in half-space form as</p>
        <p><disp-formula> <label>(8)</label> <tex-math id="E1"> $$  \mathcal{P}^{\mathcal{H}}
=
\left\{
\mathbf{x}\in\mathbb{R}^{3}
\;\middle|\;
\mathbf{A}\mathbf{x}\preceq\mathbf{b}
\right\}, $$ </tex-math></disp-formula></p>
        <p>where each row of <bold>A</bold> defines the normal vector of a supporting plane and the corresponding element of <bold>b</bold> defines its offset. Based on this representation, we introduce position-only and attitude-aware collision-checking conditions for various spatial regions.</p>
        <sec id="sec2-2-1">
          <title>2.2.1. Position-only collision checking</title>
          <p>In regions with sufficient clearance, the quadrotor is approximated as a point mass, allowing collision checking to be performed using only its center position. Let the SFC associated with the <italic>i</italic>-th trajectory segment be</p>
          <p><disp-formula> <label>(9)</label> <tex-math id="E1"> $$  \mathcal{P}_i^{\mathcal{H}}
=
\left\{
\mathbf{x}\in\mathbb{R}^{3}
\;\middle|\;
\mathbf{A}_i\mathbf{x}\preceq\mathbf{b}_i
\right\}, $$ </tex-math></disp-formula></p>
          <p>where <inline-formula><tex-math id="M1">$$ \mathbf{A}_i\in\mathbb{R}^{m_i\times 3} $$</tex-math></inline-formula>, <inline-formula><tex-math id="M1">$$ \mathbf{b}_i\in\mathbb{R}^{m_i} $$</tex-math></inline-formula>, and <italic>m<sub>i</sub></italic> is the number of planes of the <italic>i</italic>-th SFC. The position-only collision-free condition is then given by</p>
          <p><disp-formula> <label>(10)</label> <tex-math id="E1"> $$  \mathbf{A}_i\mathbf{p}(t)
-
\mathbf{b}_i
\preceq
\mathbf{0},\ t\in[0,T_i],\ i=0,1,\ldots,M-1, $$ </tex-math></disp-formula></p>
          <p>where <bold>p</bold>(<italic>t</italic>) denotes the position of the quadrotor center and <italic>T<sub>i</sub></italic> denotes the duration of the corresponding trajectory segment. This condition ensures that the quadrotor center remains within its associated SFC throughout the segment.</p>
          <p>To maintain additional clearance from the SFC boundary, we introduce a safety distance <italic>d</italic><sub>safe</sub> &gt; 0 and strengthen the position-only collision-free condition as</p>
          <p><disp-formula> <label>(11)</label> <tex-math id="E1"> $$  \mathbf{A}_i\mathbf{p}(t)
-
\mathbf{b}_i
+
d_{\mathrm{safe}}\mathbf{1}_{m_i}
\preceq
\mathbf{0},
\ t\in[0,T_i], $$ </tex-math></disp-formula></p>
          <p>where the rows of <bold>A</bold><italic><sub>i</sub></italic> are normalized and <inline-formula><tex-math id="M1">$$ \mathbf{1}_{m_i}\in\mathbb{R}^{m_i} $$</tex-math></inline-formula> is a vector of ones.</p>
        </sec>
        <sec id="sec2-2-2">
          <title>2.2.2. Attitude-aware collision checking</title>
          <p>In narrow regions, a point-mass approximation is insufficient because the collision-free configuration of the quadrotor depends on its attitude. We therefore represent the quadrotor body as a convex polyhedron and perform attitude-aware collision checking using all its vertices. Let <inline-formula><tex-math id="M1">$$ \mathbf{Q}\in\mathbb{R}^{3\times N_v} $$</tex-math></inline-formula> collect the body-frame coordinates of the <italic>N<sub>v</sub></italic> vertices:</p>
          <p><disp-formula> <label>(12)</label> <tex-math id="E1"> $$  \mathbf{Q}
=
\begin{bmatrix}
\mathbf{q}_1 &amp;
\mathbf{q}_2 &amp;
\cdots &amp;
\mathbf{q}_{N_v}
\end{bmatrix}. $$ </tex-math></disp-formula></p>
          <p>The corresponding world-frame vertex coordinates at time <italic>t</italic> are</p>
          <p><disp-formula> <label>(13)</label> <tex-math id="E1"> $$  \mathbf{V}(t)
=
\mathbf{R}(t)\mathbf{Q}
+
\mathbf{p}(t)\mathbf{1}_{N_v}^{\top}, $$ </tex-math></disp-formula></p>
          <p>where <bold>R</bold>(<italic>t</italic>) ∈ <italic>SO</italic>(3) is the rotation matrix recovered from the differential-flatness mapping, <bold>p</bold>(<italic>t</italic>) is the position of the quadrotor center, and <inline-formula><tex-math id="M1">$$ \mathbf{1}_{N_v}\in\mathbb{R}^{N_v} $$</tex-math></inline-formula> is a vector of ones.</p>
          <p>Because both the quadrotor model and the SFC are convex, the entire quadrotor body lies within the <italic>i</italic>-th SFC if and only if all its vertices lie within that SFC. The attitude-aware collision-free condition can therefore be expressed as</p>
          <p><disp-formula> <label>(14)</label> <tex-math id="E1"> $$  \mathbf{A}_i
\left(
\mathbf{R}(t)\mathbf{Q}
+
\mathbf{p}(t)\mathbf{1}_{N_v}^{\top}
\right)
-
\mathbf{b}_i\mathbf{1}_{N_v}^{\top}
\preceq
\mathbf{0},
\ t\in[0,T_i],
\ i=0,1,\ldots,M-1. $$ </tex-math></disp-formula></p>
          <p>Unlike the position-only condition in Equation (10), the attitude-aware condition explicitly accounts for attitude. Because the rotation matrix is derived from the planned acceleration and yaw angle, this condition captures the effect of acceleration-induced attitude changes and is applied in narrow regions where attitude adjustment is essential for collision-free traversal.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec3">
      <title>3. WHOLE-BODY MOTION PLANNING</title>
      <p>In this section, we first present a method for generating whole-body motion primitives based on the geometry of the quadrotor and clarify the conditions required to ensure collision-free whole-body motion within convex polyhedra. We then propose a spatial-scale-aware SFC classification method to distinguish spacious regions suitable for position-only planning from narrow regions requiring attitude-aware planning. Finally, we develop a trajectory-refinement strategy to ensure continuous attitude transitions across trajectory segments.</p>
      <sec id="sec3-1">
        <title>3.1. Whole-body motion primitives</title>
        <p>According to the differential flatness of the quadrotor, the system state and control input can be represented by a set of appropriately selected flat outputs <bold><italic>σ</italic></bold> = [<italic>x</italic>, <italic>y</italic>, <italic>z</italic>, <italic>ψ</italic>]<inline-formula><tex-math id="M1">$$ ^{\top} $$</tex-math></inline-formula> and their derivatives<sup>[<xref ref-type="bibr" rid="B1">1</xref>]</sup>. Because the quadrotor yaw angle <italic>ψ</italic> is decoupled, it is set to follow the trajectory heading rather than being optimized as an independent planning variable. Therefore, the planning problem is formulated in the translational flat-output space, where the position <bold>p</bold>(<italic>t</italic>) = [<italic>p<sub>x</sub></italic>(<italic>t</italic>), <italic>p<sub>y</sub></italic>(<italic>t</italic>), <italic>p<sub>z</sub></italic>(<italic>t</italic>)]<inline-formula><tex-math id="M1">$$ ^{\top} $$</tex-math></inline-formula> and its higher-order derivatives are planned. The corresponding attitude can then be recovered from the planned acceleration and yaw angle through the differential-flatness mapping.</p>
        <p>Consider an <italic>s</italic>-th-order integrator chain in the flat-output space. The state variable and control input are defined as</p>
        <p><disp-formula> <label>(15)</label> <tex-math id="E1"> $$  \begin{aligned}
\mathbf{x}(t)
&amp;=
\left[
\mathbf{p}^{\top}(t),
\dot{\mathbf{p}}^{\top}(t),
\ldots,
\mathbf{p}^{(s-1)\top}(t)
\right]^{\top}
\in \mathcal{X}\subset\mathbb{R}^{3s},\\
\mathbf{u}(t)
&amp;=
\mathbf{p}^{(s)}(t)
\in
\mathcal{U}:=[-u_{\max},u_{\max}]^3.
\end{aligned} $$ </tex-math></disp-formula></p>
        <p>The corresponding state-space model is</p>
        <p><disp-formula> <label>(16)</label> <tex-math id="E1"> $$  \begin{aligned}
\dot{\mathbf{x}}
&amp;=
\mathbf{A}\mathbf{x}
+
\mathbf{B}\mathbf{u},\\
\mathbf{A}
&amp;=
\left[
\begin{array}{ccccc}
0 &amp; \mathbf{I}_3 &amp; 0 &amp; \cdots &amp; 0\\
0 &amp; 0 &amp; \mathbf{I}_3 &amp; \cdots &amp; 0\\
\vdots &amp; \vdots &amp; \vdots &amp; \ddots &amp; \vdots\\
0 &amp; \cdots &amp; \cdots &amp; 0 &amp; \mathbf{I}_3\\
0 &amp; \cdots &amp; \cdots &amp; 0 &amp; 0
\end{array}
\right],
\quad
\mathbf{B}
=
\left[
\begin{array}{c}
0\\
0\\
\vdots\\
0\\
\mathbf{I}_3
\end{array}
\right].
\end{aligned} $$ </tex-math></disp-formula></p>
        <p>Under a constant control input, each component of <bold>p</bold>(<italic>t</italic>) is represented by an <italic>s</italic>-th-order polynomial. By uniformly sampling the control space <inline-formula><tex-math id="M1">$$ \mathcal{U} $$</tex-math></inline-formula> at a resolution of <italic>u</italic><sub>max</sub>/<italic>r</italic>, a total of (2<italic>r</italic> + 1)<sup>3</sup> motion primitives can be generated over a fixed duration <italic>τ</italic><sup>[<xref ref-type="bibr" rid="B5">5</xref>]</sup>.</p>
        <p>To achieve whole-body obstacle avoidance, the geometry of the quadrotor must be considered. In<sup>[<xref ref-type="bibr" rid="B17">17</xref>]</sup>, the quadrotor is modeled as an ellipsoid. To accommodate a more general body shape, we model it as a convex polyhedron. In particular, we use a cuboid with half-lengths along the three body axes denoted by <italic>d<sub>x</sub></italic>, <italic>d<sub>y</sub></italic>, and <italic>d<sub>z</sub></italic>. Its body-frame occupied set is</p>
        <p><disp-formula> <label>(17)</label> <tex-math id="E1"> $$  \mathcal{Q}_{\mathrm{cub}}
=
\left\{
\mathbf{q}=[q_x,q_y,q_z]^{\top}
\in\mathbb{R}^{3}
\;\middle|\;
|q_x|\leq d_x,
\ |q_y|\leq d_y,
\ |q_z|\leq d_z
\right\}. $$ </tex-math></disp-formula></p>
        <p>Accordingly, its eight vertices are</p>
        <p><disp-formula> <label>(18)</label> <tex-math id="E1"> $$  \mathcal{V}_{\mathrm{cub}}
=
\left\{
\mathbf{q}_{i}
=
\begin{bmatrix}
\pm d_x &amp; \pm d_y &amp; \pm d_z
\end{bmatrix}^{\top},
\ i=1,2,\ldots,8
\right\}. $$ </tex-math></disp-formula></p>
        <p>According to the differential-flatness formulation introduced in Section 2.1, the rotation matrix <bold>R</bold>(<italic>t</italic>) is determined by the acceleration <inline-formula><tex-math id="M1">$$ \ddot{\mathbf{p}} $$</tex-math></inline-formula>(<italic>t</italic>) and yaw angle <italic>ψ</italic>(<italic>t</italic>), and can therefore be expressed as <bold>R</bold>(<italic>ψ</italic>(<italic>t</italic>), <inline-formula><tex-math id="M1">$$ \ddot{\mathbf{p}} $$</tex-math></inline-formula>(<italic>t</italic>)). Based on Equation (16) and the cuboid representation, the occupied set of a whole-body motion primitive in the world frame is defined as</p>
        <p><disp-formula> <label>(19)</label> <tex-math id="E1"> $$  \mathcal{E}(t)
=
\left\{
\mathbf{R}(\psi(t),\ddot{\mathbf{p}}(t))\mathbf{q}
+
\mathbf{p}(t)
\;\middle|\;
\mathbf{q}\in\mathcal{Q}_{\mathrm{cub}}
\right\}. $$ </tex-math></disp-formula></p>
        <p>
          <xref ref-type="fig" rid="fig2">Figure 2</xref> shows whole-body motion primitives generated over a fixed duration <italic>τ</italic> by sampling the acceleration and jerk spaces.</p>
        <fig id="fig2" position="float" width="460">
          <label>Figure 2</label>
          <caption>
            <p>Examples of three-dimensional whole-body motion primitives starting from an initial state <bold>x</bold><sub>0</sub>. (A and B) show the primitives generated by sampling the acceleration space (<italic>s</italic> = 2) and jerk space (<italic>s</italic> = 3), respectively. The purple cuboids represent the terminal whole-body states after applying a constant control input for <italic>τ</italic> = 0.2 s. The initial velocity and acceleration are <bold>v</bold><sub>0</sub> =[1, 0, 0]<inline-formula><tex-math id="M1">$$ ^{\top} $$</tex-math></inline-formula> and <bold>a</bold><sub>0</sub> =[1, 0, 0]<inline-formula><tex-math id="M1">$$ ^{\top} $$</tex-math></inline-formula>, respectively.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.2.jpg" />
        </fig>
        <p>The expansion cost of a motion primitive is defined as</p>
        <p><disp-formula> <label>(20)</label> <tex-math id="E1"> $$  J(T)
=
\int_{0}^{T}
\|\mathbf{u}(t)\|_2^2\,dt
+
\rho T, $$ </tex-math></disp-formula></p>
        <p>where <italic>ρ</italic> is the time-penalty coefficient, which encourages faster trajectories. For a constant control input <bold>u</bold><italic><sub>d</sub></italic> and a fixed sampling duration <italic>τ</italic>, the primitive cost becomes <italic>J</italic>(<italic>τ</italic>) = (||<bold>u</bold><italic><sub>d</sub></italic>||<sub>2</sub><sup>2</sup> + <italic>ρ</italic>)<italic>τ</italic>. At the same control resolution and sampling duration, jerk-controlled search ensures acceleration continuity but incurs substantially higher computational and memory costs as the system order increases. Because the attitude is directly related to acceleration, the proposed method adopts an acceleration-controlled system to improve search efficiency. The resulting acceleration discontinuities at the junctions of motion primitives are addressed by the trajectory-refinement method presented in Section 3.2.3.</p>
      </sec>
      <sec id="sec3-2">
        <title>3.2. Generation of a collision-free trajectory</title>
        <p>This subsection introduces the generation of a collision-free trajectory. SFCs with spatial-scale information are used to divide the free space into Pos-SFCs and Att-SFCs. Efficient position-only planning is performed in Pos-SFCs, whereas attitude-aware planning is activated in Att-SFCs to explicitly account for attitude. After the search stage, a trajectory-refinement strategy is introduced to ensure continuous transitions between position-only and attitude-aware trajectory segments.</p>
        <sec id="sec3-2-1">
          <title>3.2.1. Generation of position-only and attitude-aware SFCs</title>
          <p>To improve the efficiency of search-based whole-body planning, we construct an ordered sequence of SFCs along a center-feasible guide path. By restricting the expansion of motion primitives to these corridors, the proposed method avoids exploring redundant regions, thereby reducing the number of expanded nodes and the overall search time. SFCs generated in spacious and narrow regions generally exhibit substantially different spatial scales. This observation motivates us to divide the generated corridors into Pos-SFCs and Att-SFCs, as illustrated in <xref ref-type="fig" rid="fig3">Figure 3</xref>.</p>
          <fig id="fig3" position="float">
            <label>Figure 3</label>
            <caption>
              <p>Comparison of corridor construction around a narrow passage. The blue points represent position-only seed endpoints, whereas the purple points represent attitude-aware seed endpoints. (A) The conventional method generates two polyhedra whose overlap is concentrated near the narrow opening, leaving insufficient space for attitude adjustment and corridor transition; (B) The proposed method inserts an Att-SFC <inline-formula><tex-math id="M1">$$ \mathcal{P} $$</tex-math></inline-formula><sub>2</sub> between the Pos-SFCs <inline-formula><tex-math id="M1">$$ \mathcal{P} $$</tex-math></inline-formula><sub>1</sub> and <inline-formula><tex-math id="M1">$$ \mathcal{P} $$</tex-math></inline-formula><sub>3</sub>, forming an ordered and overlapping corridor sequence for attitude-aware traversal of the narrow passage. SFC: Safe flight corridor.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.3.jpg" />
          </fig>
          <p>The guide path is first generated by a front-end path-searching algorithm and is represented as Γ = {<bold>q</bold><sub>0</sub>, <bold>q</bold><sub>1</sub>, …, <inline-formula><tex-math id="M1">$$ \mathbf{q}_{N_g-1} $$</tex-math></inline-formula>}, where <bold>q</bold><sub>0</sub> and <inline-formula><tex-math id="M1">$$ \mathbf{q}_{N_g-1} $$</tex-math></inline-formula> denote the initial and goal positions, respectively. At this stage, the guide path guarantees only collision-free traversal of the quadrotor center and does not explicitly account for its attitude. To identify guide-path intervals where attitude adjustment may be required, we introduce a bounding sphere that conservatively encloses the cuboid model. Its radius is defined as <italic>r</italic><sub>s</sub> = <inline-formula><tex-math id="M1">$$ \sqrt{d_x^2+d_y^2+d_z^2} $$</tex-math></inline-formula>, where <italic>d<sub>x</sub></italic>, <italic>d<sub>y</sub></italic>, and <italic>d<sub>z</sub></italic> are the half-lengths defined in Equation (17). Because the radius is independent of attitude, the bounding sphere provides an efficient and conservative measure of local clearance along the guide path.</p>
          <p>For each guide point <bold>q</bold><italic><sub>k</sub></italic>, a radius query is performed on the obstacle-point KD-tree. The corresponding sphere-collision indicator is defined as</p>
          <p><disp-formula> <label>(21)</label> <tex-math id="E1"> $$  \chi_k
=
\begin{cases}
1,
&amp;
\displaystyle
\min_{\mathbf{o}\in\mathcal{O}}
\left\|
\mathbf{o}-\mathbf{q}_k
\right\|_2
≤ r_{\mathrm{s}},\\[2mm]
0,
&amp;
\text{otherwise},
\end{cases} $$ </tex-math></disp-formula></p>
          <p>where <inline-formula><tex-math id="M1">$$ \mathcal{O} $$</tex-math></inline-formula> denotes the obstacle-point set. A guide point satisfying <italic>χ<sub>k</sub></italic> = 0 provides sufficient clearance for the cuboid bounding sphere and is therefore assigned to a position-only guide. In contrast, <italic>χ<sub>k</sub></italic> = 1 indicates that the bounding sphere intersects the environment even though the quadrotor center remains collision-free. Such a point is assigned to an attitude-aware guide because the cuboid may need to adjust its orientation to traverse the corresponding region. The transition <italic>χ<sub>k</sub></italic><sub>-1</sub> = 0, <italic>χ<sub>k</sub></italic> = 1 defines the entrance of an attitude-aware interval, whereas <italic>χ<sub>k</sub></italic><sub>-1</sub> = 1, <italic>χ<sub>k</sub></italic> = 0 marks its end. Consecutive guide points satisfying <italic>χ<sub>k</sub></italic> = 1 are grouped into the same attitude-aware interval, while the remaining portions of the guide path are assigned to position-only intervals. In this way, the original guide path is converted into an ordered sequence of position-only and attitude-aware portions.</p>
          <p>The resulting typed guide path is divided into seed segments, which are used to generate SFCs. Each generated SFC is directly inherited from its corresponding guide seed: position-only seeds generate Pos-SFCs, whereas attitude-aware seeds generate Att-SFCs. This construction restricts the translational search space while identifying regions in which attitude-aware whole-body planning may be required.</p>
          <p>
            <xref ref-type="fig" rid="fig3">Figure 3</xref> compares conventional corridor construction with the proposed typed-seed construction. The blue points represent the endpoints of position-only seeds, whereas the purple points represent the endpoints of attitude-aware seeds. In the conventional method shown in <xref ref-type="fig" rid="fig3">Figure 3A</xref>, a uniform seed-generation strategy produces two large polyhedra on opposite sides of the narrow passage. Their overlap is concentrated near the opening and does not provide sufficient space for attitude adjustment and corridor transition. In the proposed method shown in <xref ref-type="fig" rid="fig3">Figure 3B</xref>, the bounding-sphere test identifies the attitude-critical portion of the guide path. The purple attitude-aware seed generates the intermediate Att-SFC <inline-formula><tex-math id="M1">$$ \mathcal{P}_2 $$</tex-math></inline-formula>, while the blue position-only seeds generate the neighboring Pos-SFCs <inline-formula><tex-math id="M1">$$ \mathcal{P}_1 $$</tex-math></inline-formula> and <inline-formula><tex-math id="M1">$$ \mathcal{P}_3 $$</tex-math></inline-formula>. Consequently, <inline-formula><tex-math id="M1">$$ \mathcal{P}_2 $$</tex-math></inline-formula> forms an attitude-aware bridge through the narrow passage and overlaps with the adjacent Pos-SFCs, providing an ordered corridor sequence for the subsequent whole-body search.</p>
        </sec>
        <sec id="sec3-2-2">
          <title>3.2.2. Hierarchical collision checking</title>
          <p>After obtaining the ordered SFC sequence, the search is restricted to the corresponding corridor regions, thereby avoiding the expansion of redundant nodes. This property also allows the computationally expensive attitude-aware collision checking to be separated from efficient position-only collision checking.</p>
          <p>Specifically, <bold>PosCollisionCheck</bold>(·) determines whether the sampled positions of a motion primitive remain within its associated Pos-SFC according to Equation (11). In contrast, <bold>AttCollisionCheck</bold>(·) transforms all cuboid vertices according to the attitude and verifies their containment within the associated Att-SFC using Equation (14). Finally, the accepted primitives retain their corridor types for the subsequent trajectory-refinement stage.</p>
          <p>Whole-body path searching is built upon the kinodynamic A* algorithm for quadrotors<sup>[<xref ref-type="bibr" rid="B3">3</xref>]</sup>, as summarized in <xref ref-type="fig" rid="alg1">Algorithm 1</xref>. The open and closed lists are denoted by <inline-formula><tex-math id="M1">$$ \mathcal{O} $$</tex-math></inline-formula> and <inline-formula><tex-math id="M1">$$ \mathcal{C} $$</tex-math></inline-formula>, respectively, and <italic>n<sub>c</sub></italic> denotes the currently expanded node. The function <bold>ComputeShotPath</bold>(·) computes a direct connection from the current node to the goal by analytically solving a linear quadratic minimum time (LQMT) problem<sup>[<xref ref-type="bibr" rid="B25">25</xref>]</sup>. A shot trajectory is accepted only if it satisfies both the dynamic constraints and the hierarchical collision-checking conditions. Otherwise, candidate motion primitives are sampled and checked according to the type of their associated SFCs. Only collision-free successor nodes are inserted into or updated in the open list.</p>
		  <fig id="alg1" position="float">
            <label>Algorithm 1</label>
            <caption />
			<graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.alg.1.jpg" />
			</fig>
          <p>
            <xref ref-type="fig" rid="fig4">Figure 4</xref> illustrates the hierarchical whole-body motion-planning mechanism. The blue convex polyhedron denotes a Pos-SFC, in which a position-only trajectory is generated, whereas the purple convex polyhedron denotes an Att-SFC, in which an attitude-aware trajectory is generated.</p>
          <fig id="fig4" position="float">
            <label>Figure 4</label>
            <caption>
              <p>Illustration of the hierarchical whole-body motion-planning mechanism. The blue convex polyhedron denotes a Pos-SFC, in which position-only collision checking is performed. The purple convex polyhedron denotes an Att-SFC, in which attitude-aware collision checking is performed. SFC: Safe flight corridor.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.4.jpg" />
          </fig>
        </sec>
        <sec id="sec3-2-3">
          <title>3.2.3. Trajectory refinement</title>
          <p>The acceleration-controlled search explicitly determines the duration of each motion primitive, thereby providing a natural initial time allocation for subsequent trajectory refinement. The durations of the searched trajectory segments are collected as</p>
          <p><disp-formula> <label>(22a)</label> <tex-math id="E1"> $$  \mathbf{T}
=
[T_0,T_1,\ldots,T_{M-1}]^{\top}
\in
\mathbb{R}_{+}^{M}, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(22b)</label> <tex-math id="E1"> $$  T_k
=
\begin{cases}
\tau, &amp; k=0,1,\ldots,M-2,\\
t_{\mathrm{opt}}, &amp; k=M-1,
\end{cases} $$ </tex-math></disp-formula></p>
          <p>where <italic>τ</italic> denotes the sampling duration of each motion primitive and <italic>t</italic><sub>opt</sub> is the duration of the terminal shot trajectory obtained by solving the LQMT problem.</p>
          <p>After the hierarchical search, the resulting trajectory is divided into attitude-aware and position-only segments. Let <inline-formula><tex-math id="M1">$$ \mathcal{A} $$</tex-math></inline-formula> and <inline-formula><tex-math id="M1">$$ \mathcal{P} $$</tex-math></inline-formula> denote their index sets, respectively, satisfying</p>
          <p><disp-formula> <label>(23)</label> <tex-math id="E1"> $$  \mathcal{A}\cap\mathcal{P}
=
\varnothing,
\qquad
\mathcal{A}\cup\mathcal{P}
=
\{0,1,\ldots,M-1\}. $$ </tex-math></disp-formula></p>
          <p>For each <italic>k</italic> ∈ <inline-formula><tex-math id="M1">$$ \mathcal{A} $$</tex-math></inline-formula>, let <inline-formula><tex-math id="M1">$$ \bar{\mathbf{p}} $$</tex-math></inline-formula><italic><sub>k</sub></italic><sup>att</sup>(<italic>t</italic>) denote the searched attitude-aware trajectory, and let <bold>s</bold><italic><sub>k</sub></italic><sup>att</sup> and <bold>g</bold><italic><sub>k</sub></italic><sup>att</sup> denote its initial and terminal states, respectively. Because these segments are generated within Att-SFCs and have already passed attitude-aware whole-body collision checking, they are retained unchanged during trajectory refinement. The segments indexed by <inline-formula><tex-math id="M1">$$ \mathcal{P} $$</tex-math></inline-formula> connect the global initial state to the first attitude-aware segment, consecutive attitude-aware segments to each other, and the last attitude-aware segment to the global goal state. These connecting segments lie within Pos-SFCs and are therefore treated as position-only trajectories. The paths obtained from the search stage are used to initialize the subsequent trajectory optimization.</p>
          <p>Although acceleration-controlled search substantially improves computational efficiency, directly concatenating the searched motion primitives generally leads to acceleration discontinuities and, consequently, abrupt attitude changes. To improve trajectory continuity without compromising the verified safety of the attitude-aware segments, the proposed refinement strategy keeps all attitude-aware segments fixed and optimizes only the position-only connecting segments. Accordingly, each attitude-aware segment satisfies</p>
          <p><disp-formula> <label>(24)</label> <tex-math id="E1"> $$  \mathbf{p}_k(t)
=
\bar{\mathbf{p}}_k^{\mathrm{att}}(t),
\ t\in[0,T_k],
\ k\in\mathcal{A}. $$ </tex-math></disp-formula></p>
          <p>The position-only segments are refined by solving the following minimum-jerk problem:</p>
          <p><disp-formula> <label>(25a)</label> <tex-math id="E1"> $$  \min_{\{\mathbf{p}_k(t)\}_{k\in\mathcal{P}}}
\quad
\sum_{k\in\mathcal{P}}
\int_{0}^{T_k}
\left\|
\mathbf{p}_k^{(3)}(t)
\right\|_2^2
\,dt, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(25b)</label> <tex-math id="E1"> $$  \mathrm{s.t.}\quad

\mathbf{x}_0(0)
=
\mathbf{s}_{\mathrm{start}},
\quad
\mathbf{x}_{M-1}(T_{M-1})
=
\mathbf{s}_{\mathrm{goal}}, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(25c)</label> <tex-math id="E1"> $$  \mathbf{x}_k(T_k)
=
\mathbf{s}_j^{\mathrm{att}},
\quad
(k,j)\in\mathcal{E}_{\mathrm{in}}, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(25d)</label> <tex-math id="E1"> $$  \mathbf{x}_k(0)
=
\mathbf{g}_j^{\mathrm{att}},
\quad
(k,j)\in\mathcal{E}_{\mathrm{out}}, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(25e)</label> <tex-math id="E1"> $$  \mathbf{x}_{k+1}(0)
=
\mathbf{x}_k(T_k),
\ k,k+1\in\mathcal{P}, $$ </tex-math></disp-formula></p>
		  <p><disp-formula> <label>(25f)</label> <tex-math id="E1"> $$  \mathbf{p}_k(t)
\in
\mathcal{P}_k^{\mathcal{H}},
\ t\in[0,T_k],
\ k\in\mathcal{P}. $$ </tex-math></disp-formula></p>
          <p>Here, <inline-formula><tex-math id="M1">$$ \mathcal{E} $$</tex-math></inline-formula><sub>in</sub> denotes the set of stitching relations from position-only segments to their subsequent attitude-aware segments, whereas <inline-formula><tex-math id="M1">$$ \mathcal{E} $$</tex-math></inline-formula><sub>out</sub> denotes the set of stitching relations from attitude-aware segments to their succeeding position-only segments. The state of the <italic>k</italic>-th trajectory segment is defined as</p>
          <p><disp-formula> <label>(26)</label> <tex-math id="E1"> $$  \mathbf{x}_k(t)
=
\left[
\mathbf{p}_k^{\top}(t),
\dot{\mathbf{p}}_k^{\top}(t),
\ddot{\mathbf{p}}_k^{\top}(t)
\right]^{\top}. $$ </tex-math></disp-formula></p>
          <p>The constraints in Equations (25c) and (25d) match the boundary states of each position-only segment to those of the adjacent attitude-aware segment. Specifically, the terminal state of each incoming position-only segment is matched to the initial state of the succeeding attitude-aware segment, while the initial state of each outgoing position-only segment is matched to the terminal state of the preceding attitude-aware segment. The constraint in Equation (25e) imposes position, velocity, and acceleration continuity between adjacent position-only segments. Therefore, <italic>C</italic><sup>2</sup> continuity is enforced at every junction involving an optimized position-only segment.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec4">
      <title>4. WHOLE-BODY TRAJECTORY TRACKING WITH A DF-MPC</title>
      <p>As discussed in<sup>[<xref ref-type="bibr" rid="B5">5</xref>]</sup>, although trajectory refinement improves the smoothness of the searched trajectory, the refined reference may still violate the dynamic limits of the quadrotor. To track the desired whole-body trajectory while satisfying the prescribed state and control constraints, we employ a DF-MPC. The controller simultaneously reduces position and attitude-related tracking errors by tracking the desired position, velocity, and acceleration over a finite prediction horizon. Because the attitude is algebraically related to the translational acceleration through the differential-flatness mapping, acceleration tracking contributes directly to attitude tracking. The body angular velocity <bold><italic>ω</italic></bold> is related to the jerk <bold>j</bold>. Therefore, a third-order integrator with jerk input is adopted as the prediction model. The state and control input are defined as</p>
      <p><disp-formula> <label>(27a)</label> <tex-math id="E1"> $$  \mathbf{x}_k
=
\begin{bmatrix}
\mathbf{p}_k^{\top} &amp;
\mathbf{v}_k^{\top} &amp;
\mathbf{a}_k^{\top}
\end{bmatrix}^{\top}
=
\begin{bmatrix}
p_{x,k} &amp;
p_{y,k} &amp;
p_{z,k} &amp;
\dot{p}_{x,k} &amp;
\dot{p}_{y,k} &amp;
\dot{p}_{z,k} &amp;
\ddot{p}_{x,k} &amp;
\ddot{p}_{y,k} &amp;
\ddot{p}_{z,k}
\end{bmatrix}^{\top}, $$ </tex-math></disp-formula></p>
	  <p><disp-formula> <label>(27b)</label> <tex-math id="E1"> $$  \mathbf{u}_k
=
\mathbf{j}_k
=
\begin{bmatrix}
\dddot{p}_{x,k} &amp;
\dddot{p}_{y,k} &amp;
\dddot{p}_{z,k}
\end{bmatrix}^{\top}. $$ </tex-math></disp-formula></p>
      <p>Let Δ<italic>t</italic> denote the control interval. Under the zero-order-hold assumption for the jerk input, the discrete prediction model is given by</p>
      <p><disp-formula> <label>(28)</label> <tex-math id="E1"> $$  \mathbf{x}_{k+1}
=
\mathbf{A}_{d}\mathbf{x}_k
+
\mathbf{B}_{d}\mathbf{u}_k, $$ </tex-math></disp-formula></p>
      <p>where</p>
      <p><disp-formula> <label>(29)</label> <tex-math id="E1"> $$  \mathbf{A}_{d}
=
\begin{bmatrix}
\mathbf{I}_3 &amp;
\Delta t\mathbf{I}_3 &amp;
\frac{1}{2}\Delta t^2\mathbf{I}_3
\\
\mathbf{0} &amp;
\mathbf{I}_3 &amp;
\Delta t\mathbf{I}_3
\\
\mathbf{0} &amp;
\mathbf{0} &amp;
\mathbf{I}_3
\end{bmatrix},
\qquad
\mathbf{B}_{d}
=
\begin{bmatrix}
\frac{1}{6}\Delta t^3\mathbf{I}_3
\\
\frac{1}{2}\Delta t^2\mathbf{I}_3
\\
\Delta t\mathbf{I}_3
\end{bmatrix}. $$ </tex-math></disp-formula></p>
      <p>At each control step, DF-MPC predicts the system evolution over <italic>N</italic> steps and computes the optimal jerk sequence by minimizing a finite-horizon cost function. For trajectory tracking, the objective penalizes both the state-tracking error and the control effort:</p>
      <p><disp-formula> <label>(30)</label> <tex-math id="E1"> $$  \mathcal{F}
=
\sum_{k=0}^{N-1}
\left(
\left\|
\mathbf{x}_k-\widetilde{\mathbf{x}}_k
\right\|_{\mathbf{Q}_x}^{2}
+
\left\|
\mathbf{u}_k
\right\|_{\mathbf{Q}_u}^{2}
\right)
+
\left\|
\mathbf{x}_N-\widetilde{\mathbf{x}}_N
\right\|_{\mathbf{Q}_f}^{2}, $$ </tex-math></disp-formula></p>
      <p>where <inline-formula><tex-math id="M1">$$ \widetilde{\mathbf{x}}_k
=
\begin{bmatrix}
\widetilde{\mathbf{p}}_k^{\top} &amp;
\widetilde{\mathbf{v}}_k^{\top} &amp;
\widetilde{\mathbf{a}}_k^{\top}
\end{bmatrix}^{\top} $$</tex-math></inline-formula> is the reference state, and <bold>Q</bold><italic><sub>x</sub></italic> <inline-formula><tex-math id="M1">$$ \succeq $$</tex-math></inline-formula> <bold>0</bold>, <bold>Q</bold><italic><sub>u</sub></italic> <inline-formula><tex-math id="M1">$$ \succeq $$</tex-math></inline-formula> <bold>0</bold>, and <bold>Q</bold><italic><sub>f</sub></italic> <inline-formula><tex-math id="M1">$$ \succeq $$</tex-math></inline-formula> <bold>0</bold>, are weighting matrices of appropriate dimensions. The resulting DF-MPC problem is formulated as</p>
      <p><disp-formula> <label>(31)</label> <tex-math id="E1"> $$  \begin{aligned}
\min_{\{\mathbf{x}_k,\mathbf{u}_k\}}
\quad&amp;
\sum_{k=0}^{N-1}
\left(
\left\|
\mathbf{x}_k-\widetilde{\mathbf{x}}_k
\right\|_{\mathbf{Q}_x}^{2}
+
\left\|
\mathbf{u}_k
\right\|_{\mathbf{Q}_u}^{2}
\right)
+
\left\|
\mathbf{x}_N-\widetilde{\mathbf{x}}_N
\right\|_{\mathbf{Q}_f}^{2}
\\
\mathrm{s.t.}\quad
&amp;
\mathbf{x}_{k+1}
=
\mathbf{A}_{d}\mathbf{x}_k
+
\mathbf{B}_{d}\mathbf{u}_k,
\ k=0,\ldots,N-1,
\\
&amp;
\mathbf{x}_{\min}
\preceq
\mathbf{x}_k
\preceq
\mathbf{x}_{\max},
\ k=0,\ldots,N,
\\
&amp;
\mathbf{u}_{\min}
\preceq
\mathbf{u}_k
\preceq
\mathbf{u}_{\max},
\ k=0,\ldots,N-1.
\end{aligned} $$ </tex-math></disp-formula></p>
      <p>To obtain the low-level collective-thrust and body-angular-velocity commands, the optimized flat-output quantities are mapped to the physical control inputs. Define the desired mass-normalized collective thrust as</p>
      <p><disp-formula> <label>(32)</label> <tex-math id="E1"> $$  c_d
=
\mathbf{z}_b^{\top}
\left(
\mathbf{a}
+
g\mathbf{z}_w
\right). $$ </tex-math></disp-formula></p>
      <p>The corresponding collective thrust is <italic>f<sub>d</sub></italic> = <italic>mc<sub>d</sub></italic>, where <italic>m</italic> is the mass of the quadrotor. The desired body angular velocity is obtained as</p>
      <p><disp-formula> <label>(33)</label> <tex-math id="E1"> $$  \begin{aligned}
	  \omega_x
&amp;=
-\frac{\mathbf{y}_b^{\top}\mathbf{j}}{c_d},
\\
\omega_y
&amp;=
\frac{\mathbf{x}_b^{\top}\mathbf{j}}{c_d},
\\
\omega_z
&amp;=
\frac{
c_d\dot{\psi}\,
\mathbf{x}_c^{\top}\mathbf{x}_b
+
\left(
\mathbf{y}_c^{\top}\mathbf{z}_b
\right)
\left(
\mathbf{x}_b^{\top}\mathbf{j}
\right)
}{
c_d
\left\|
\mathbf{y}_c\times\mathbf{z}_b
\right\|_2
}. 
\end{aligned} $$ </tex-math></disp-formula></p>
      <p>Here, <bold>R</bold> =[<bold>x</bold><italic><sub>b</sub></italic>, <bold>y</bold><italic><sub>b</sub></italic>, <bold>z</bold><italic><sub>b</sub></italic>] is recovered using the differential-flatness mapping introduced in Section 2.1. The mapping assumes <italic>c<sub>d</sub></italic> &gt; 0 and ||<bold>y</bold><italic><sub>c</sub> </italic>× <bold>z</bold><italic><sub>b</sub></italic>||<sub>2</sub> &gt; 0, thereby excluding zero-thrust and attitude-reconstruction singularities. By minimizing the predicted state error, DF-MPC tracks the desired position through <bold>p</bold> and the desired attitude indirectly through <bold>a</bold>. Meanwhile, the jerk input determines the desired body angular velocity through Equation (33).</p>
    </sec>
    <sec id="sec5">
      <title>5. EXPERIMENTS</title>
      <sec id="sec5-1">
        <title>5.1. Numerical simulation</title>
        <sec id="sec5-1-1">
          <title>5.1.1. Ablation studies and parameter selection</title>
          <p>We first conducted an ablation study to evaluate the contribution of the trajectory-refinement module. We then examined the effects of the main parameters involved in the motion-primitive search and selected their values through comparative experiments in narrow-passage scenarios.</p>
          <p>
            <bold>Effect of trajectory refinement:</bold> We compared two configurations: (1) Search only, in which the trajectory generated by the acceleration-controlled whole-body search was used directly without subsequent refinement; and (2) Search + refinement, in which the attitude-aware segments were retained, while the position-only segments were refined using the formulation introduced in Section 3.2.3. Each searched motion primitive applies a constant acceleration input over its duration. Although consecutive primitives are connected in position and velocity, their acceleration inputs are not necessarily identical at the junctions. Because the desired roll and pitch angles are recovered from the desired acceleration through differential flatness, these discontinuities can produce abrupt changes in the desired attitude. As shown in <xref ref-type="fig" rid="fig5">Figure 5A</xref>, without refinement, such abrupt acceleration-induced attitude changes can be observed at several primitive junctions. The refinement stage improves the higher-order continuity of the position-only portions while preserving the attitude-aware segments. The resulting trajectory therefore provides smoother attitude transitions while traversing narrow passages. As illustrated in <xref ref-type="fig" rid="fig5">Figure 5B</xref>, the refined position-only portions exhibit smoother attitude transitions.</p>
          <fig id="fig5" position="float">
            <label>Figure 5</label>
            <caption>
              <p>Comparison of the searched and refined trajectories. The purple trajectory denotes the attitude-aware trajectory, while the blue trajectory denotes the position-only trajectory. (A) Acceleration-controlled trajectory without refinement. Abrupt attitude changes occur at the junctions between the two trajectory types; (B) Refined trajectory with smoother transitions. Continuous attitude transitions at their junctions.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.5.jpg" />
          </fig>
          <p>
            <bold>Parameter selection.</bold> The performance of the motion-primitive search is mainly affected by the primitive cost weight <italic>ρ</italic>, the primitive duration <italic>τ</italic>, and the control-space sampling parameter <italic>r</italic>. The parameter <italic>ρ</italic> balances traversal time and control effort: a small value favors conservative but longer trajectories, whereas a large value favors faster but potentially more aggressive motions. The duration <italic>τ</italic> determines the spacing of the state lattice; a small <italic>τ</italic> increases search resolution and computational cost, while a large <italic>τ</italic> may produce a lattice that is too sparse to represent feasible transitions near narrow passages. Similarly, increasing <italic>r</italic> provides a finer control discretization but increases the branching factor as (2<italic>r</italic> + 1)<sup>3</sup>, whereas a small <italic>r</italic> may omit the control inputs required for feasible attitude transitions. Based on comparative experiments in narrow-passage scenarios, we selected <italic>ρ</italic> = 4<italic>u</italic><sub>max</sub><sup>2</sup>, <italic>τ</italic> = 0.2 s, and <italic>r</italic> = 2, where <italic>u</italic><sub>max</sub> denotes the maximum control magnitude along each axis. This setting samples five control inputs per axis and generates 125 candidate motion primitives in the three-dimensional control space, providing a practical compromise among trajectory aggressiveness, state-space coverage, and computational efficiency.</p>
        </sec>
        <sec id="sec5-1-2">
          <title>5.1.2. Performance evaluation in narrow-passage scenarios</title>
          <p>To evaluate the capability of the proposed planner in geometrically constrained environments, we conducted two groups of narrow-passage experiments. The first group evaluates passages with different widths, whereas the second group evaluates rectangular windows with different orientations. In all experiments, the start and goal states were placed on opposite sides of the obstacle, while the dynamic limits and search parameters were kept unchanged.</p>
          <p>
            <bold>Passages with different widths:</bold> The quadrotor radius was set to 0.35 m, corresponding to a horizontal span of 0.70 m. As shown in <xref ref-type="fig" rid="fig6">Figure 6</xref>, the 0.80 m gap is wider than the quadrotor and can therefore be traversed using a position-only trajectory without triggering attitude-aware planning. In contrast, the 0.65 and 0.50 m gaps are narrower than the horizontal span of the quadrotor, requiring progressively larger attitude adjustments to reduce its projected body extent. The results demonstrate that the planner activates attitude-aware motion only when required by the available passage size.</p>
          <fig id="fig6" position="float">
            <label>Figure 6</label>
            <caption>
              <p>Hierarchical planning results through wall gaps of different widths. (A) 0.80 m gap, where the gap width is larger than the quadrotor’s horizontal span and only position planning is required; (B) 0.65 m gap and (C) 0.50 m gap, where attitude-aware planning is activated.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.6.jpg" />
          </fig>
          <p>
            <bold>Windows with different orientations:</bold> We further evaluated the planner using a narrow rectangular window with fixed dimensions and orientations of 35°, 45°, and 55°. As shown in <xref ref-type="fig" rid="fig7">Figure 7</xref>, the planner generates attitude-aware motions that align the projected body shape with the available free space, with larger window inclinations requiring larger roll adjustments.</p>
          <fig id="fig7" position="float">
            <label>Figure 7</label>
            <caption>
              <p>Attitude-aware trajectories through rectangular windows with different orientations. (A) 35°; (B) 45°; (C) 55°.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.7.jpg" />
          </fig>
        </sec>
      </sec>
      <sec id="sec5-2">
        <title>5.2. Benchmark for whole-body motion planning</title>
        <p>In this section, we compare the proposed method with a search-based method<sup>[<xref ref-type="bibr" rid="B17">17</xref>]</sup>, denoted as Base-A, and an optimization-based method, denoted as Base-B. Base-B was evaluated using the publicly available CPU implementation released with Fast-Racing<sup>[<xref ref-type="bibr" rid="B10">10</xref>]</sup>. Fast-Racing and the method of Yang <italic>et al.</italic><sup>[<xref ref-type="bibr" rid="B20">20</xref>]</sup> share the GCOPTER-based polynomial optimization framework<sup>[<xref ref-type="bibr" rid="B6">6</xref>]</sup> and employ closely related whole-body collision constraints. We therefore used Fast-Racing as the open-source implementation for evaluating Base-B. We test the efficiency and quality of trajectories generated by the proposed method in two different simulated environments: (1) Random forest: 40 m × 20 m × 3 m map containing 150 random obstacles. (2) Office: 60 m × 45 m × 3 m indoor map. All methods accept the same point cloud and goal state inputs, the radius <italic>l<sub>r</sub></italic> = <InlineParagraph>0.35 m</InlineParagraph> and height <italic>h</italic> = 0.15 m of the quadrotor, and the point cloud’s resolution is 0.1. The common dynamic limits were <italic>v</italic><sub>max</sub> = 10 m/s, <italic>a</italic><sub>max</sub> = 10 m/s<sup>2</sup>, and <italic>j</italic><sub>max</sub> = 60 m/s<sup>3</sup>. For Base-A and our method, <italic>ρ</italic> represents the time penalty parameter and <italic>τ</italic> represents the sampling time. For Base-B, <inline-formula><tex-math id="M1">$$ \mathcal{X} $$</tex-math></inline-formula> is the penalty weight and <inline-formula><tex-math id="M1">$$ \mathcal{K} $$</tex-math></inline-formula> is the relative resolution of each trajectory. Since the compared methods employ different objective functions and trajectory-generation mechanisms, their method-specific parameters do not have direct one-to-one correspondences. Base-A adopts a jerk-controlled system with <italic>ρ</italic> = 4<italic>u</italic><sub>max</sub><sup>2</sup>, <italic>τ</italic> = 0.2 s, and the same control-space sampling parameter <italic>r</italic> = 2. The resulting jerk sampling interval is Δ<italic>u</italic> = 30 m/s<sup>3</sup>. The proposed method uses an acceleration-controlled system with the same sampling parameter <italic>r</italic> = 2, resulting in an acceleration sampling interval of Δ<italic>u</italic> = 5 m/s<sup>2</sup>. All other shared parameters are kept identical to those of Base-A. Following Yang <InlineParagraph><italic>et al.</italic>,</InlineParagraph> Base-B used <italic>ρ</italic> = 1024, <italic>χ</italic><sub>att</sub> = 60000, and <italic>κ</italic><sub>att</sub> = 16<sup>[<xref ref-type="bibr" rid="B20">20</xref>]</sup>. All parameter settings, except for the resolution explicitly varied in the resolution-sensitivity experiment, were fixed across the evaluated scenarios. All comparisons were performed on an Intel Core i7-6800K CPU, and the source code will be released online (<uri xlink:href="https://github.com/peiyu-cui/uav_motion_planning">https://github.com/peiyu-cui/uav_motion_planning</uri>).</p>
        <p>Our method generates SFC through Jump Point Search (JPS) paths and accelerates the generation of collision-free trajectories through hierarchical planning in Section 3.2. Since search-based methods are sensitive to temporal resolution, we first compare our method with Base-A, and the overall comparison is shown in <xref ref-type="fig" rid="fig8">Figure 8</xref>.</p>
        <fig id="fig8" position="float">
          <label>Figure 8</label>
          <caption>
            <p>Comparison of the trajectories generated by two search-based methods. The yellow trajectory represents the Base-A, where the trajectory may be too close to the obstacle and may collide when the collision detection resolution is large. The purple trajectory represents our proposed method, which is insensitive to the collision detection resolution.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.8.jpg" />
        </fig>
        <p>The results of the benchmark are shown in <xref ref-type="table" rid="t1">Table 1</xref>. For quantitative comparison, the control cost reported in <xref ref-type="table" rid="t1">Tables 1</xref> and <xref ref-type="table" rid="t2">2</xref> is evaluated as <italic>f</italic> = <italic>∫</italic><sub>0</sub><sup><italic>T</italic></sup>||<bold>j</bold>(<italic>t</italic>)||<sub>2</sub><sup>2</sup><italic>dt</italic>, where <bold>j</bold>(<italic>t</italic>) = <bold>p</bold><sup>(3)</sup>(<italic>t</italic>) denotes the jerk. The bold represents better performance for each individual metric, that is, shorter calculation time and trajectory execution time, less control cost and node usage. For the Base-A method, high-maneuverability trajectories can be generated quickly when the resolution is large, but due to the large time penalty coefficient <italic>ρ</italic>, the trajectory is too close to the obstacle and may collide. For our method, trajectories with lower control cost can be generated with shorter computation time and fewer node expansions under different resolutions.</p>
        <table-wrap id="t1">
          <label>Table 1</label>
          <caption>
            <p>Comparison of search-based methods</p>
          </caption>
          <table frame="hsides" rules="groups">
            <thead>
              <tr>
                <td style="border-bottom:1;" />
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>c</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>e</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>f</italic>(10<sup>3</sup> × <italic>m</italic><sup>2</sup>/<italic>s</italic><sup>5</sup>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>Node usage</bold>
                </td>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td>
                  <bold>Base-A (res = 0.02 s)</bold>
                </td>
                <td>0.172</td>
                <td>
                  <bold>3.07</bold>
                </td>
                <td>8.13</td>
                <td>242</td>
              </tr>
              <tr>
                <td>
                  <bold>Ours (res = 0.02 s)</bold>
                </td>
                <td>
                  <bold>0.031</bold>
                </td>
                <td>3.16</td>
                <td>
                  <bold>7.09</bold>
                </td>
                <td>
                  <bold>97</bold>
                </td>
              </tr>
              <tr>
                <td>
                  <bold>Base-A (res = 0.05 s)</bold>
                </td>
                <td>0.166</td>
                <td>
                  <bold>3.02</bold>
                </td>
                <td>7.97</td>
                <td>206</td>
              </tr>
              <tr>
                <td>
                  <bold>Ours (res = 0.05 s)</bold>
                </td>
                <td>
                  <bold>0.019</bold>
                </td>
                <td>3.16</td>
                <td>
                  <bold>6.71</bold>
                </td>
                <td>
                  <bold>97</bold>
                </td>
              </tr>
            </tbody>
          </table>
		  <table-wrap-foot>
            <fn>
              <p>Bold values indicate the best performance for each metric.</p>
            </fn>
          </table-wrap-foot>
        </table-wrap>
		<table-wrap id="t2">
          <label>Table 2</label>
          <caption>
            <p>Comparison of trajectories generated by three methods</p>
          </caption>
          <table frame="hsides" rules="groups">
            <thead>
              <tr>
                <td rowspan="2" />
                <td colspan="3">
                  <bold>Random forest</bold>
                </td>
                <td colspan="3">
                  <bold>Office</bold>
                </td>
              </tr>
              <tr>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>c</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>e</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>f</italic>(10<sup>3</sup> × <italic>m</italic><sup>2</sup>/<italic>s</italic><sup>5</sup>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>c</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>t<sub>e</sub></italic>(<italic>s</italic>)</bold>
                </td>
                <td style="border-bottom:1;">
                  <bold>
                    <italic>f</italic>(10<sup>3</sup> × <italic>m</italic><sup>2</sup>/<italic>s</italic><sup>5</sup>)</bold>
                </td>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td>
                  <bold>Base-A</bold>
                </td>
                <td>0.916</td>
                <td>
                  <bold>3.44</bold>
                </td>
                <td>9.84</td>
                <td>1.923</td>
                <td>
                  <bold>5.27</bold>
                </td>
                <td>10.13</td>
              </tr>
              <tr>
                <td>
                  <bold>Base-B</bold>
                </td>
                <td>0.195</td>
                <td>4.29</td>
                <td>
                  <bold>8.54</bold>
                </td>
                <td>0.498</td>
                <td>6.04</td>
                <td>
                  <bold>8.92</bold>
                </td>
              </tr>
              <tr>
                <td>
                  <bold>Ours</bold>
                </td>
                <td>
                  <bold>0.138</bold>
                </td>
                <td>4.24</td>
                <td>8.66</td>
                <td>
                  <bold>0.455</bold>
                </td>
                <td>5.91</td>
                <td>9.36</td>
              </tr>
            </tbody>
          </table>
		  <table-wrap-foot>
            <fn>
              <p>Bold values indicate the best performance for each metric.</p>
            </fn>
          </table-wrap-foot>
        </table-wrap>
        <p>To test the quality of our generated trajectories, we compared our method with the optimization-based method (Base-B). <xref ref-type="fig" rid="fig9">Figure 9</xref> shows the comparative experiments of the three methods in two different scenarios. Our method generates trajectories of similar quality to the optimization-based method by restricting the trajectory search space to SFC. At the same time, through the hierarchical planning framework, our method greatly reduces the computation time of the search-based method while ensuring security. The specific results are given in <xref ref-type="table" rid="t2">Table 2</xref>.</p>
        <fig id="fig9" position="float">
          <label>Figure 9</label>
          <caption>
            <p>Comparison of the trajectories generated by three methods in two different environments. (A) Trajectories generated by three methods in <bold>random forest</bold>; (B) Trajectories generated by three methods in <bold>Office</bold>. The yellow trajectory represents the search-based method (Base-A), the blue trajectory represents the optimization-based method (Base-B), and the purple trajectory represents our proposed method. It can be seen that our method generates trajectories of comparable quality to the optimization-based method and reduces the trajectory calculation time of the search-based method to the millisecond level.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.9.jpg" />
        </fig>
      </sec>
      <sec id="sec5-3">
        <title>5.3. Controller performance under aggressive flight</title>
        <p>High-fidelity quadrotor simulator AirSim<sup>[<xref ref-type="bibr" rid="B26">26</xref>]</sup> is used to verify the tracking performance of the controller under aggressive trajectories. The simulation scene size is 20 m × 70 m × 5 m. The initial position of the quadrotor is (0, 0, 1), the target position is (0, 66, 1), and the reference trajectory duration is set to 11 s to generate an aggressive trajectory. The reference trajectory has a maximum velocity of <italic>v<sub>y</sub></italic> = 9.3 m/s in the <italic>y</italic> direction and a maximum acceleration of <italic>a<sub>x</sub></italic> = 9.5 m/s<sup>2</sup> in the <italic>x</italic> direction, which are close to the physical limits of actual quadrotors. The DF-MPC problem in Equation (31) is solved using OSQP<sup>[<xref ref-type="bibr" rid="B27">27</xref>]</sup>. The average solution time remained below 1 ms, satisfying the real-time requirement.</p>
        <p>As shown in <xref ref-type="fig" rid="fig10">Figure 10</xref>, the scene depicts a quadrotor tracking a very challenging reference trajectory in AirSim. The trajectory is extremely aggressive and is characterized by its significant roll and yaw angle changes. Additional simulation results and visualizations are provided in the <inline-supplementary-material content-type="local-data" mimetype="application/zip" xlink:href="ir6024-SupplementaryMaterials.zip">Supplementary Video</inline-supplementary-material>.</p>
        <fig id="fig10" position="float">
          <label>Figure 10</label>
          <caption>
            <p>Illustration of a quadrotor tracking an aggressive trajectory in AirSim. (A) AirSim<sup>[<xref ref-type="bibr" rid="B26">26</xref>]</sup> simulation snapshot of the quadrotor flying in an unknown environment; (B) Trajectory tracking performance. The blue curve denotes the reference trajectory, and the green curve denotes the actual trajectory.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.10.jpg" />
        </fig>
        <p>For the proposed controller, the discrete time Δ<italic>t</italic> = 0.15 s and the prediction horizon <italic>N</italic> = 16. The tracking performance of the proposed controller is verified by comparing the position, velocity, and acceleration tracking effects of the quadrotor. <xref ref-type="fig" rid="fig11">Figure 11</xref> shows an illustration of the overall tracking effect, where the blue dashed line represents the reference trajectory and the orange line represents the actual trajectory obtained by the simulator. Our method achieves a position closed loop by tracking the position, and since the acceleration of the quadrotor is directly related to the attitude, the attitude closed loop is achieved by tracking the acceleration.</p>
        <fig id="fig11" position="float">
          <label>Figure 11</label>
          <caption>
            <p>Illustration of the controller’s trajectory tracking performance. (A) shows the position tracking performance; (B) shows the velocity tracking performance; and (C) shows the acceleration tracking performance (reflecting the attitude tracking performance).</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="ir6024.fig.11.jpg" />
        </fig>
      </sec>
    </sec>
    <sec id="sec6">
      <title>6. CONCLUSIONS</title>
      <p>In this paper, we propose a search-based hierarchical whole-body motion-planning framework for quadrotors in unknown environments, which improves computational efficiency by approximately 4-9 times compared with the existing search-based whole-body planning method. We first divide the free space into spacious and narrow regions according to the spatial scale characteristics of SFCs in different regions. By utilizing a specially designed hierarchical collision detection algorithm, the original motion planning problem is decomposed into position-only planning and attitude-aware planning, which significantly improves the planning efficiency. Finally, a model predictive controller based on differential flatness is designed, and a high-fidelity simulator is used to test the tracking performance of the controller under aggressive trajectories.</p>
    </sec>
  </body>
  <back>
    <sec>
      <title>DECLARATIONS</title>
      <sec>
        <title>Authors’ contributions</title>
        <p>Made substantial contributions to the research, idea generation, algorithm design, and simulation, wrote and edited the original draft: Cui, P.</p>
        <p>Performed critical review, commentary, and revision, as well as provided administrative, technical, and material support: Zhang, H.; Du, Z.; Huang, C.; Sun, J.</p>
      </sec>
      <sec>
        <title>Availability of data and materials</title>
        <p>The data that support the findings of this study are available from the corresponding author upon reasonable request.</p>
      </sec>
      <sec>
        <title>AI and AI-assisted tools statement</title>
        <p>Not applicable.</p>
      </sec>
      <sec>
        <title>Financial support and sponsorship</title>
        <p>This work was supported in part by the National Natural Science Foundation of China (62433014 and 62573324) and in part by the Fundamental Research Funds for the Central Universities (22120230311).</p>
      </sec>
      <sec>
        <title>Conflicts of interest</title>
        <p>Zhang, H. is a Section Chief Editor of the journal <italic>Intelligence &amp; Robotics</italic> and the Guest Editor of the special topic “Low-Altitude Control and Intelligence”. Zhang, H. was not involved in any steps of the editorial processing, notably including reviewer selection, manuscript handling, or decision-making. The other authors declare that there are no conflicts of interest.</p>
      </sec>
      <sec>
        <title>Ethical approval and consent to participate</title>
        <p>Not applicable.</p>
      </sec>
      <sec>
        <title>Consent for publication</title>
        <p>Not applicable.</p>
      </sec>
      <sec>
        <title>Copyright</title>
        <p>© The Author(s) 2026.</p>
      </sec>
	  <sec sec-type="supplementary-material">
      <title>Supplementary Materials</title>
          <supplementary-material content-type="local-data">
                <media xlink:href="ir6024-SupplementaryMaterials.zip" mimetype="application/zip">
                        <caption>
                                <p>Supplementary Materials</p>
                        </caption>
                </media>
          </supplementary-material>

          </sec>
    </sec>
    <ref-list>
      <ref id="B1">
        <label>1</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Mellinger</surname>
              <given-names>D</given-names>
            </name>
            <name>
              <surname>Kumar</surname>
              <given-names>V</given-names>
            </name>
          </person-group>
          <comment>Minimum snap trajectory generation and control for quadrotors. In <italic>2011 IEEE International Conference on Robotics and Automation</italic>, Shanghai, China. May 09-13, 2011. IEEE; 2011. pp. 2520-5.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA.2011.5980409</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B2">
        <label>2</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Zhou</surname>
              <given-names>X</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Ye</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Xu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <article-title>EGO-planner: an ESDF-free gradient-based local planner for quadrotors</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2021</year>
          <volume>6</volume>
          <fpage>478</fpage>
          <lpage>85</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2020.3047728</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B3">
        <label>3</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Zhou</surname>
              <given-names>B</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>L</given-names>
            </name>
            <name>
              <surname>Liu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Shen</surname>
              <given-names>S</given-names>
            </name>
          </person-group>
          <article-title>Robust and efficient quadrotor trajectory generation for fast autonomous flight</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2019</year>
          <volume>4</volume>
          <fpage>3529</fpage>
          <lpage>36</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2019.2927938</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B4">
        <label>4</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>L</given-names>
            </name>
            <name>
              <surname>Zhou</surname>
              <given-names>B</given-names>
            </name>
            <name>
              <surname>Zhou</surname>
              <given-names>X</given-names>
            </name>
            <name>
              <surname>Pan</surname>
              <given-names>J</given-names>
            </name>
            <name>
              <surname>Shen</surname>
              <given-names>S</given-names>
            </name>
          </person-group>
          <article-title>Teach-repeat-replan: a complete and robust system for aggressive flight in complex environments</article-title>
          <source>IEEE Trans Robot</source>
          <year>2020</year>
          <volume>36</volume>
          <fpage>1526</fpage>
          <lpage>45</lpage>
          <pub-id pub-id-type="doi">10.1109/TRO.2020.2993215</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B5">
        <label>5</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Liu</surname>
              <given-names>S</given-names>
            </name>
            <name>
              <surname>Atanasov</surname>
              <given-names>N</given-names>
            </name>
            <name>
              <surname>Mohta</surname>
              <given-names>K</given-names>
            </name>
            <name>
              <surname>Kumar</surname>
              <given-names>V</given-names>
            </name>
          </person-group>
          <comment>Search-based motion planning for quadrotors using linear quadratic minimum time control. In <italic>2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)</italic>, Vancouver, Canada. Sep 24-28, 2017. IEEE; 2017. pp. 2872-9.</comment>
          <pub-id pub-id-type="doi">10.1109/IROS.2017.8206119</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B6">
        <label>6</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Zhou</surname>
              <given-names>X</given-names>
            </name>
            <name>
              <surname>Xu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <article-title>Geometrically constrained trajectory optimization for multicopters</article-title>
          <source>IEEE Trans Robot</source>
          <year>2022</year>
          <volume>38</volume>
          <fpage>3259</fpage>
          <lpage>78</lpage>
          <pub-id pub-id-type="doi">10.1109/TRO.2022.3160022</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B7">
        <label>7</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Deng</surname>
              <given-names>W</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Ye</surname>
              <given-names>B</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Li</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Lyu</surname>
              <given-names>X</given-names>
            </name>
          </person-group>
          <article-title>Whole-body integrated motion planning for aerial manipulators</article-title>
          <source>IEEE Trans Robot</source>
          <year>2025</year>
          <volume>41</volume>
          <fpage>6661</fpage>
          <lpage>79</lpage>
          <pub-id pub-id-type="doi">10.1109/TRO.2025.3626619</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B8">
        <label>8</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Sun</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Zhu</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Liang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Liu</surname>
              <given-names>A</given-names>
            </name>
            <name>
              <surname>Ni</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Y</given-names>
            </name>
          </person-group>
          <article-title>A phase search-enhanced Bi-RRT path planning algorithm for mobile robots</article-title>
          <source>Intell Robot</source>
          <year>2025</year>
          <volume>5</volume>
          <fpage>404</fpage>
          <lpage>18</lpage>
          <pub-id pub-id-type="doi">10.20517/ir.2025.20</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B9">
        <label>9</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Falanga</surname>
              <given-names>D</given-names>
            </name>
            <name>
              <surname>Mueggler</surname>
              <given-names>E</given-names>
            </name>
            <name>
              <surname>Faessler</surname>
              <given-names>M</given-names>
            </name>
            <name>
              <surname>Scaramuzza</surname>
              <given-names>D</given-names>
            </name>
          </person-group>
          <comment>Aggressive quadrotor flight through narrow gaps with onboard sensing and computing using active vision. In <italic>2017 IEEE International Conference on Robotics and Automation (ICRA)</italic>, Singapore. May 29 - Jun 03, 2017. IEEE; 2017. pp. 5774-81.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA.2017.7989679</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B10">
        <label>10</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Han</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Pan</surname>
              <given-names>N</given-names>
            </name>
            <name>
              <surname>Lin</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Xu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <article-title>Fast-racing: an open-source strong baseline for SE(3) planning in autonomous drone racing</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2021</year>
          <volume>6</volume>
          <fpage>8631</fpage>
          <lpage>8</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2021.3113976</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B11">
        <label>11</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Cui</surname>
              <given-names>P</given-names>
            </name>
            <name>
              <surname>Zhang</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Du</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Yan</surname>
              <given-names>H</given-names>
            </name>
          </person-group>
          <article-title>PolyMap: a lightweight polyhedral map based on approximate convex decomposition for aerial robot motion planning</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2026</year>
          <volume>11</volume>
          <fpage>3055</fpage>
          <lpage>62</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2026.3655275</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B12">
        <label>12</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>Q</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Pei</surname>
              <given-names>L</given-names>
            </name>
            <name>
              <surname>Xu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <comment>A linear and exact algorithm for whole-body collision evaluation via scale optimization. In <italic>2023 IEEE International Conference on Robotics and Automation (ICRA)</italic>, London, UK. May 29 - Jun 02, 2023. IEEE; 2023. pp. 3621-7.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA48891.2023.10160516</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B13">
        <label>13</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Rao</surname>
              <given-names>K</given-names>
            </name>
            <name>
              <surname>Yan</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Lv</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Wu</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Wu</surname>
              <given-names>X</given-names>
            </name>
            <name>
              <surname>Zhang</surname>
              <given-names>Y</given-names>
            </name>
          </person-group>
          <article-title>Decentralized pursuit of an evader with probabilistic collision-free for differential drive robots</article-title>
          <source>IEEE Trans Cybern</source>
          <year>2026</year>
          <volume>56</volume>
          <fpage>4391</fpage>
          <lpage>402</lpage>
          <pub-id pub-id-type="doi">10.1109/TCYB.2026.3670025</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B14">
        <label>14</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Liu</surname>
              <given-names>S</given-names>
            </name>
            <name>
              <surname>Watterson</surname>
              <given-names>M</given-names>
            </name>
            <name>
              <surname>Mohta</surname>
              <given-names>K</given-names>
            </name>
            <etal />
          </person-group>
          <article-title>Planning dynamically feasible trajectories for quadrotors using safe flight corridors in 3-D complex environments</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2017</year>
          <volume>2</volume>
          <fpage>1688</fpage>
          <lpage>95</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2017.2663526</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B15">
        <label>15</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Deits</surname>
              <given-names>R</given-names>
            </name>
            <name>
              <surname>Tedrake</surname>
              <given-names>R</given-names>
            </name>
          </person-group>
          <comment>Efficient mixed-integer planning for UAVs in cluttered environments. In <italic>2015 IEEE International Conference on Robotics and Automation (ICRA)</italic>, Seattle, USA. May 26-30, 2015. IEEE; 2015. pp. 42-9.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA.2015.7138978</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B16">
        <label>16</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>Q</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>M</given-names>
            </name>
            <etal />
          </person-group>
          <article-title>Fast iterative region inflation for computing large 2-D/3-D convex regions of obstacle-free space</article-title>
          <source>IEEE Trans Robot</source>
          <year>2025</year>
          <volume>41</volume>
          <fpage>3223</fpage>
          <lpage>43</lpage>
          <pub-id pub-id-type="doi">10.1109/TRO.2025.3562482</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B17">
        <label>17</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Liu</surname>
              <given-names>S</given-names>
            </name>
            <name>
              <surname>Mohta</surname>
              <given-names>K</given-names>
            </name>
            <name>
              <surname>Atanasov</surname>
              <given-names>N</given-names>
            </name>
            <name>
              <surname>Kumar</surname>
              <given-names>V</given-names>
            </name>
          </person-group>
          <article-title>Search-based motion planning for aggressive flight in SE(3)</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2018</year>
          <volume>3</volume>
          <fpage>2439</fpage>
          <lpage>46</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2018.2795654</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B18">
        <label>18</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Wu</surname>
              <given-names>T</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>T</given-names>
            </name>
            <name>
              <surname>Zhao</surname>
              <given-names>G</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <comment>Whole-body control through narrow gaps from pixels to action. In <italic>2025 IEEE International Conference on Robotics and Automation (ICRA)</italic>, Atlanta, USA. May 19-23, 2025. IEEE; 2025. pp. 11317-24.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA55743.2025.11128088</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B19">
        <label>19</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Zhang</surname>
              <given-names>L</given-names>
            </name>
            <name>
              <surname>Hu</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Yu</surname>
              <given-names>F</given-names>
            </name>
            <name>
              <surname>Deng</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Yu</surname>
              <given-names>W</given-names>
            </name>
            <name>
              <surname>Zou</surname>
              <given-names>D</given-names>
            </name>
          </person-group>
          <article-title>Vision-based end-to-end learning for UAV traversal of irregular gaps via differentiable simulation</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2026</year>
          <volume>11</volume>
          <fpage>7748</fpage>
          <lpage>55</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2026.3685922</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B20">
        <label>20</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Yang</surname>
              <given-names>S</given-names>
            </name>
            <name>
              <surname>He</surname>
              <given-names>B</given-names>
            </name>
            <name>
              <surname>Wang</surname>
              <given-names>Z</given-names>
            </name>
            <name>
              <surname>Xu</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Gao</surname>
              <given-names>F</given-names>
            </name>
          </person-group>
          <comment>Whole-body real-time motion planning for multicopters. In <italic>2021 IEEE International Conference on Robotics and Automation (ICRA)</italic>, Xi’an, China. May 30 - Jun 05, 2021. IEEE; 2021. pp. 9197-203.</comment>
          <pub-id pub-id-type="doi">10.1109/ICRA48506.2021.9561526</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B21">
        <label>21</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Lee</surname>
              <given-names>T</given-names>
            </name>
            <name>
              <surname>Leok</surname>
              <given-names>M</given-names>
            </name>
            <name>
              <surname>McClamroch</surname>
              <given-names>NH</given-names>
            </name>
          </person-group>
          <comment>Geometric tracking control of a quadrotor UAV on SE(3). In <italic>49th IEEE Conference on Decision and Control (CDC)</italic>, Atlanta, USA. Dec 15-17, 2010. IEEE; 2010. pp. 5420-5.</comment>
          <pub-id pub-id-type="doi">10.1109/CDC.2010.5717652</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B22">
        <label>22</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Faessler</surname>
              <given-names>M</given-names>
            </name>
            <name>
              <surname>Falanga</surname>
              <given-names>D</given-names>
            </name>
            <name>
              <surname>Scaramuzza</surname>
              <given-names>D</given-names>
            </name>
          </person-group>
          <article-title>Thrust mixing, saturation, and body-rate control for accurate aggressive quadrotor flight</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2017</year>
          <volume>2</volume>
          <fpage>476</fpage>
          <lpage>82</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2016.2640362</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B23">
        <label>23</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Faessler</surname>
              <given-names>M</given-names>
            </name>
            <name>
              <surname>Franchi</surname>
              <given-names>A</given-names>
            </name>
            <name>
              <surname>Scaramuzza</surname>
              <given-names>D</given-names>
            </name>
          </person-group>
          <article-title>Differential flatness of quadrotor dynamics subject to rotor drag for accurate tracking of high-speed trajectories</article-title>
          <source>IEEE Robot Autom Lett</source>
          <year>2018</year>
          <volume>3</volume>
          <fpage>620</fpage>
          <lpage>6</lpage>
          <pub-id pub-id-type="doi">10.1109/LRA.2017.2776353</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B24">
        <label>24</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Peng</surname>
              <given-names>Y</given-names>
            </name>
            <name>
              <surname>Yan</surname>
              <given-names>H</given-names>
            </name>
            <name>
              <surname>Rao</surname>
              <given-names>K</given-names>
            </name>
            <name>
              <surname>Yang</surname>
              <given-names>P</given-names>
            </name>
            <name>
              <surname>Lv</surname>
              <given-names>Y</given-names>
            </name>
          </person-group>
          <article-title>Distributed model predictive control for unmanned aerial vehicles and vehicle platoon systems: a review</article-title>
          <source>Intell Robot</source>
          <year>2024</year>
          <volume>4</volume>
          <fpage>293</fpage>
          <lpage>317</lpage>
          <pub-id pub-id-type="doi">10.20517/ir.2024.19</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B25">
        <label>25</label>
        <nlm-citation publication-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Verriest</surname>
              <given-names>EI</given-names>
            </name>
            <name>
              <surname>Lewis</surname>
              <given-names>FL</given-names>
            </name>
          </person-group>
          <article-title>On the linear quadratic minimum-time problem</article-title>
          <source>IEEE Trans Autom Control</source>
          <year>1991</year>
          <volume>36</volume>
          <fpage>859</fpage>
          <lpage>63</lpage>
          <pub-id pub-id-type="doi">10.1109/9.85066</pub-id>
        </nlm-citation>
      </ref>
      <ref id="B26">
        <label>26</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Shah</surname>
              <given-names>S</given-names>
            </name>
            <name>
              <surname>Dey</surname>
              <given-names>D</given-names>
            </name>
            <name>
              <surname>Lovett</surname>
              <given-names>C</given-names>
            </name>
            <name>
              <surname>Kapoor</surname>
              <given-names>A</given-names>
            </name>
          </person-group>
          <comment>AirSim: high-fidelity visual and physical simulation for autonomous vehicles. <italic>arXiv</italic> <bold>2017</bold>, arXiv:1705.05065. Available online: <uri xlink:href="https://doi.org/10.48550/arXiv.1705.05065">https://doi.org/10.48550/arXiv.1705.05065</uri>. (accessed on 13 Aug 2026)</comment>
        </nlm-citation>
      </ref>
      <ref id="B27">
        <label>27</label>
        <nlm-citation publication-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Stellato</surname>
              <given-names>B</given-names>
            </name>
            <name>
              <surname>Banjac</surname>
              <given-names>G</given-names>
            </name>
            <name>
              <surname>Goulart</surname>
              <given-names>P</given-names>
            </name>
            <name>
              <surname>Bemporad</surname>
              <given-names>A</given-names>
            </name>
            <name>
              <surname>Boyd</surname>
              <given-names>S</given-names>
            </name>
          </person-group>
          <comment>OSQP: an operator splitting solver for quadratic programs. In <italic>2018 UKACC 12th International Conference on Control (CONTROL)</italic>, Sheffield, UK. Sep 05-07, 2018. IEEE; 2018. pp. 339.</comment>
          <pub-id pub-id-type="doi">10.1109/CONTROL.2018.8516834</pub-id>
        </nlm-citation>
      </ref>
    </ref-list>
  </back>
</article>