---
title: 'SANM: Sliced Adaptive-Neuro Mapping'
url: https://www.emergentmind.com/topics/sliced-adaptive-neuro-mapping-sanm
type: topic
---

# SANM: Sliced Adaptive-Neuro Mapping

Searching arXiv for the SANM-related papers and closely related context.
Sliced Adaptive-Neuro Mapping (SANM) is an online learning module for disturbance and uncertainty identification in quadrotor geometric control. In the formulation introduced as a module instance of Dimension-Decomposed Learning (DiD-L), SANM addresses underfitting in high-dimensional online identification by axially “slicing” a high-dimensional nonlinear mapping into multiple low-dimensional submappings handled by shallow neural networks and Lyapunov-derived adaptive laws [2508.14422]. The method is developed for attitude control on \(SO(3)\) and extended to full quadrotor control on \(SE(3)\), where it serves as a feedforward compensator embedded in geometric controllers and is designed to operate without offline pre-training and without a persistent excitation (PE) condition [2510.03100].

## 1. Terminological scope and placement within Dimension-Decomposed Learning

SANM is presented as the concrete online learning mechanism within the broader DiD-L framework [2508.14422]. In that framework, the disturbance-identification problem is interpreted through the geometry of quadrotor tracking errors and then decomposed along coordinate axes into smaller learning tasks. The method is described as \(SO(3)\)-aware, interpretable, lightweight, online and adaptive, PE-free, and embedded-friendly, with reported operation at \(400\) Hz on STM32-class microcontrollers [2508.14422].

The central premise is that direct online approximation of a high-dimensional disturbance-to-error map with a shallow neural network is prone to underfitting [2510.03100]. SANM responds by replacing one entangled identification problem with several axis-wise subproblems. In the attitude-control formulation, the original six-dimensional target feature is decomposed into six one-dimensional features, yielding six slices; operationally, the network is split by body axis \(j=1,2,3\), with each slice learning scalar quantities along the corresponding axis [2508.14422]. In the full \(SE(3)\) formulation, the decomposition is further articulated as \(12\) one-dimensional slices organized into three decoupled axis-wise identification problems [2510.03100].

A recurrent source of ambiguity is that the acronym “SANM” is also used for “Symbolic Asymptotic Numerical Solver,” a continuation-based nonlinear solver developed for mesh deformation and unrelated to quadrotor control [2105.08535]. In the control literature considered here, SANM specifically denotes **Sliced Adaptive-Neuro Mapping** [2508.14422].

## 2. Problem formulation on \(SO(3)\) and \(SE(3)\)

In the attitude-control setting, quadrotor rotational kinematics and dynamics are written as
\[
\dot R = R[\Omega]_\times, \tag{1}
\]
\[
\dot \Omega = J^{-1}(M - [\Omega]_\times J\Omega) + \Phi_R, \tag{2}
\]
where \(R \in SO(3)\), \(\Omega \in \mathbb{R}^3\), \(M \in \mathbb{R}^3\), \(J\) is the inertia tensor, and \(\Phi_R\) is a rotational disturbance term [2508.14422]. The analysis distinguishes a known-inertia case, in which \(\Phi_R\) is the unknown time-varying rotational disturbance, and an unknown-inertia case, in which the internal inertial term is absorbed into a generalized disturbance:
\[
\dot \Omega = J^{-1}M + \Phi_R(J,\Omega). \tag{3}
\]

The rotational tracking errors are defined by Lie-algebra-induced coordinates,
\[
e_R := (R_d^T R - R^T R_d)^\vee, \qquad e_\Omega := \Omega - R^T R_d \Omega_d, \tag{6}
\]
with
\[
\Omega_d := (R^T R_d)^\vee. \tag{7}
\]
These are the state variables SANM is designed to regulate through online identification and compensation [2508.14422].

The \(SE(3)\) extension introduces the full tracking-error vector
\[
\mathbf{E} = \big(\mathbf{e}_x^\top,\mathbf{e}_v^\top,\mathbf{e}_R^\top,\mathbf{e}_\Omega^\top\big)^\top \in \mathbb{R}^{12},
\]
together with the desired wrench
\[
\mathbf{w}_d=(\mathbf{F}_d^\top,\mathbf{M}_d^\top)^\top\in\mathbb{R}^6,
\]
pseudo-parameters
\[
\Theta=(m,\mathbf{J}),
\]
and disturbance feature vector
\[
\Phi = (\phi_x^\top,\phi_R^\top)^\top \in \mathbb{R}^6. 
\]
The corresponding nonlinear identification map is written as
\[
\mathbf{E} = \mathcal{S}\!\left(\mathbf{w}_d,\Theta,\Phi\right) : \mathbb{R}^6 \times (\mathbb{R}\times\mathbb{R}^{3\times 3}) \times \mathbb{R}^6 \to \mathbb{R}^{12}, 
\]
and SANM is built by introducing a local pseudo-inverse and then slicing that inverse map into low-dimensional submappings [2510.03100].

This setup suggests that SANM is not merely an add-on estimator but a structured identification layer tightly coupled to the geometry of the closed-loop control problem.

## 3. Slicing principle and low-dimensional submappings

The defining operation of SANM is the axial decomposition of a high-dimensional mapping into low-dimensional slices. In the attitude-control formulation, the paper first writes an unknown high-dimensional mapping from control moment, inertia, and disturbances to the rotational error state as
\[
e_R \equiv S(M_d, J, \Phi_R): \mathbb{R}^3 \times \mathbb{R}^{3\times 3} \times \mathbb{R}^3 \to \mathbb{R}^6.
\]
Because the inverse relation is not globally bijective, a local pseudo-inverse is assumed on a compact set:
\[
(M_d, J_{\text{vec}, \Phi_R) = S^{-1}(e_R), \qquad e_R \in \mathcal C \subset \mathbb{R}^6,
\]
where
\[
J_{\text{vec} = (J[1],J[2],J[3])^T.
\]
SANM then slices this mapping into low-dimensional submappings, essentially one for each axis [2508.14422].

In the full \(SE(3)\) treatment, the decomposition is made explicit at the slice level. The reciprocal pseudo-parameter vector is defined as
\[
\Theta^{\mathrm{rec} = (m,m,m,J^{[1]},J^{[2]},J^{[3]})^\top \in \mathbb{R}^6,
\]
and the disturbance feature vector as
\[
\Phi = (\phi_x^{[1]},\phi_x^{[2]},\phi_x^{[3]}, \phi_R^{[1]},\phi_R^{[2]},\phi_R^{[3]})^\top \in \mathbb{R}^6.
\]
The full inverse map is then sliced into \(12\) one-dimensional slices. For each axis \(j\in\{1,2,3\}\),
\[
\big(\bar m^{[j]},\bar J^{[j]},\bar\phi_x^{[j]},\bar\phi_R^{[j]}\big) = \mathcal{S}^{[j]}_{AN} \!\left( F_d^{[j]}, M_d^{[j]}, \mathcal{E}_{xj}, (e_R^{[j]},e_\Omega^{[j]}) \right),
\]
where
\[
\mathcal{E}_{xj}=(e_x^{[j]},e_v^{[j]})^\top\in\mathbb{R}^2.
\]
Thus, each axis-wise problem depends only on a translational error pair, a rotational error pair, and the corresponding force and moment channels [2510.03100].

The stated rationale is threefold. First, underfitting is reduced because each network approximates a simpler low-dimensional map rather than a single difficult high-dimensional map [2508.14422]. Second, interpretability is improved because each slice is associated with a specific coordinate direction and can be analyzed independently [2508.14422]. Third, the decomposition is computationally economical enough for embedded deployment [2508.14422]. A plausible implication is that the method uses coordinate-structured inductive bias rather than representational scale as its primary mechanism for improving online approximation.

## 4. Neural approximators and adaptive laws

For disturbance approximation, SANM uses shallow radial basis function neural networks. In the \(SO(3)\) attitude formulation, each axis \(j\) employs a single-hidden-layer RBF network with \(l\) neurons:
\[
\Phi_R[j] = W_{Rj}^T h(X_{Rj}) + \varepsilon_{Rj}, \tag{11}
\]
where \(X_{Rj} \in \mathbb{R}^2\) is the slice input, \(h(\cdot)\) is the Gaussian basis vector, \(W_{Rj}\) is the ideal weight vector, and \(\varepsilon_{Rj}\) is the bounded approximation error [2508.14422]. The Gaussian activation is
\[
h_k(X_{Rj}) := \exp\!\left( -\frac{\|X_{Rj} - c_{kj}\|^2}{2b_{kj} \right), \tag{12}
\]
with center \(c_{kj}\) and width \(b_{kj}\), and the online estimate is
\[
\hat \Phi_{Rj} = \hat W_{Rj}^T h(X_{Rj}). \tag{13}
\]
The associated weight update law is
\[
\dot{\hat W}_{Rj} = \Gamma_{Rj}\, (e_\Omega + c_R e_R)\, h(X_{Rj}), \tag{14}
\]
where \(\Gamma_{Rj} > 0\) is the learning-rate matrix or scalar [2508.14422].

The \(SE(3)\) extension uses slice-wise shallow RBF networks with a \(2\)-\(l\)-\(1\) structure:
\[
\phi_\circ^{[j]} = W_{\circ j}^\top \hbar(x_{\circ j}) + \epsilon_{\circ j}, \qquad \circ\in\{x,R\},
\]
where \(x_{xj} = \mathcal{E}_{xj}\in\mathbb{R}^2\), \(x_{Rj} = (e_R^{[j]},e_\Omega^{[j]})^\top\in\mathbb{R}^2\), \(W_{\circ j}\) are bounded weights, \(\hbar(\cdot)\) is the Gaussian basis vector, and \(\epsilon_{\circ j}\) is an arbitrarily small approximation error [2510.03100]. The hidden units are
\[
\hbar^{[k]}(x_{\circ j}) = \exp\!\left( -\frac{\|x_{\circ j}-c_k\|^2}{2b_k^2} \right),
\]
and the estimated disturbances are
\[
\bar\phi_\circ^{[j]} = \bar W_{\circ j}^\top \hbar(x_{\circ j}).
\]

SANM also adapts physical pseudo-parameters online. In the attitude formulation, the inertia estimate uses reciprocal-form errors
\[
\tilde J[j] := \frac{1}{J[j]} - \frac{1}{\hat J[j]}, \tag{10}
\]
with bounded update laws of the form
\[
\dot{\hat J}[j] = -\gamma_j(\cdots), \tag{9}
\]
where the slice-wise expression depends on \((e_\Omega + c_R e_R)\), moment components, and a scaling based on \(J_{\max}[j]\) [2508.14422].

In the \(SE(3)\) extension, the reciprocal errors are
\[
\tilde m_j = \frac{1}{m}-\frac{1}{\bar m^{[j]}, \qquad \tilde J_j = \frac{1}{J^{[j]}-\frac{1}{\bar J^{[j]},
\]
and the mass and inertia updates are given axis-wise by bounded reciprocal-form laws involving \(F_d^{[j]}\), \(M_d^{[j]}\), \(\mathcal{E}_{xj}\), \(e_R^{[j]}\), and \(e_\Omega^{[j]}\) [2510.03100]. The neural weight updates are
\[
\dot{\bar W}_{xj} = \gamma_{xj}\,\mathcal{E}_{xj}^\top P_j B\,\hbar(x_{xj}),
\]
\[
\dot{\bar W}_{Rj} = \gamma_{Rj}\,(e_\Omega^{[j]}+c_R e_R^{[j]})\,\hbar(x_{Rj}),
\]
and are emphasized as online adaptive laws that do not require pre-training or PE [2510.03100].

## 5. Controller integration in geometric quadrotor control

SANM is integrated as a compensatory module within geometric control laws rather than as a standalone policy. In the \(SO(3)\) attitude setting, the desired moment for axis \(j\) is
\[
M_{d}[j] = J[j]\Big( -k_R e_R[j] - k_\Omega e_\Omega[j] - (\Omega \times R^T R_d \Omega_d)[j] \Big) + (R^T R_d \dot \Omega_d)[j] + [\Omega]_\times J \Omega [j], \tag{8}
\]
with positive gains \(k_R, k_\Omega\) [2508.14422]. When \(J\) is known, the inertial coupling term can be compensated explicitly; when \(J\) is unknown, that contribution is absorbed into the disturbance and learned online by SANM [2508.14422].

The \(SE(3)\) controller retains the standard geometric structure. The tracking errors are
\[
e_x = x-x_d, \qquad e_v = v-\dot x_d,
\]
\[
e_R = \frac12 (R_c^\top R - R^\top R_c)^\vee, \qquad e_\Omega = \Omega - R^\top R_c \Omega_c,
\]
and the desired attitude is constructed from the desired force direction and heading:
\[
R_c = [\,b_{1c}, b_{2c}, b_{3c}\,], \qquad b_{3c} = -\frac{F_d}{\|F_d\|},
\]
with
\[
\Omega_c = (R_c^\top \dot R_c)^\vee.
\]
For each axis \(j\), the desired force and moment components are defined as
\[
F_d^{[j]} = \bar m^{[j]} \left( -\mathcal{K}_{xj}^\top \mathcal{E}_{xj} +\ddot x_d^{[j]} -g\delta_{j3} -\bar\phi_x^{[j]} \right),
\]
\[
M_d^{[j]} = \bar J^{[j]} \Big( -k_R e_R^{[j]} - k_\Omega e_\Omega^{[j]} -([\,\Omega\,]_\times R^\top R_c \Omega_c)^{[j]} + (R^\top R_c \dot\Omega_c)^{[j]} -\bar\phi_R^{[j]} \Big),
\]
with optional nominal cancellation of \((J^{-1}[\,\Omega\,]_\times J\Omega)^{[j]}\) in the known-inertia case [2510.03100]. The resulting \((f_d,M_d)\) are then mapped to rotor thrusts and speeds through standard X-configuration allocation, including
\[
\omega_i = \sqrt{\frac{T_{di}{c'_T}. 
\]

This controller placement is significant because the learning module acts on explicitly defined disturbance channels tied to the geometric tracking errors, rather than replacing the underlying geometric control law.

## 6. Stability analysis and theoretical guarantees

A central feature of SANM is that the online learning laws are embedded in Lyapunov analysis. For rotational dynamics, the attitude error function is
\[
\Psi(R,R_d) = \frac{1}{2}\operatorname{tr}(I - R_d^T R). \tag{23}
\]
The \(SO(3)\) paper introduces the Lyapunov candidate
\[
V_{R,e} = k_R \Psi(R,R_d) + \frac{1}{2} e_\Omega^T J e_\Omega + c_R e_R^T J e_\Omega, \tag{30--31}
\]
and then augments it with inertia and neural-network estimation-error terms [2508.14422]. The resulting derivative satisfies
\[
\dot V_R \le -2B V_R + C_R, \tag{52}
\]
which yields
\[
|Z_R(t)| \le a |Z_R(0)| e^{-Bt} + \varepsilon, \tag{53}
\]
for
\[
Z_R = (|e_R|, |e_\Omega|).
\]
Under an initial condition in an almost-global domain \(\mathcal D_{RO}\), the rotational error converges exponentially to an arbitrarily small ball,
\[
\lim_{t\to\infty} z_R(t) \in \mathcal B_\epsilon, \tag{20}
\]
with the almost-global qualifier attributed to the topological obstruction on \(SO(3)\) and the exclusion of the usual \(180^\circ\) singular configurations [2508.14422].

The \(SE(3)\) paper states the main stability claim as near-exponential stability (NES): the full closed-loop state converges exponentially to an arbitrarily small neighborhood of zero [2510.03100]. The rotational component uses
\[
V_{R,s} = k_R\Psi_R + \frac12\|e_\Omega\|^2 + c_R e_R\cdot e_\Omega,
\]
where
\[
\Psi_R(R,R_c)=\frac12 \operatorname{tr}(I-R_c^\top R),
\]
with quadratic bounds
\[
z_R^\top \mathfrak{M}_{R1} z_R \le V_{R,s} \le z_R^\top \mathfrak{M}_{R2} z_R,
\]
for
\[
z_R = (\|e_R\|,\|e_\Omega\|)^\top.
\]
For sufficiently small \(c_R\),
\[
c_R < \min\left\{\sqrt{k_R},\sqrt{\frac{2k_R}{2-\psi_R}\right\},
\]
the associated matrices are positive definite [2510.03100].

The composite full-state Lyapunov function includes translational tracking, rotational tracking, parameter-estimation errors, and neural-weight estimation errors. Its derivative is upper bounded by
\[
\dot V \le - z^\top \mathcal{M} z + \mathbf{C},
\]
where
\[
z = (\|\mathcal{E}_{x1}\|,\|\mathcal{E}_{x2}\|,\|\mathcal{E}_{x3}\|,\|e_R\|,\|e_\Omega\|)^\top.
\]
If a coupling term
\[
\Xi = 3\sum_{j=1}^3 \frac{\max m^2 \lambda_{\max}(P_j)^2(\varepsilon_u+\varepsilon_c)^2}{\lambda_{\min}(Q_j)m^2}
\]
is sufficiently small, then \(\mathcal{M}\succ 0\), leading to
\[
\dot V \le -\lambda_{\min}(\mathcal{M})\|z\|^2 + \mathbf{C} \le -2\beta_2 V + \mathbf{C},
\]
and consequently
\[
\|z(t)\| \le \alpha_2 \|z(0)\| e^{-\beta_2 t} + \epsilon_2.
\]
The paper summarizes this as two propositions: almost-global NES for rotational dynamics on \(SO(3)\), and local NES for the full \(SE(3)\) quadrotor dynamics [2510.03100].

These results are framed under explicit assumptions, including local pseudo-invertibility on a compact set, bounded approximation error, boundedness of the error trajectory, and sufficiently small cross-term gains [2508.14422].

## 7. Computational profile, experiments, and relation to prior methods

The reported computational motivation for SANM is that online learning in flight control must remain lightweight. The \(SO(3)\) paper states that in experiments each of the three RBF slices uses only \(l=5\) neurons, so the learning module requires only \(3\times 5 = 15\) Gaussian evaluations per control cycle [2508.14422]. The same paper reports simulation in Gazebo Harmonic / ArduPilot SITL with a \(400\) Hz control loop and time-varying disturbance generated by a suspended payload, using parameters such as \(k_R=100\) and \(k_\Omega=80\) [2508.14422]. The real-world implementation is reported on an STM32H750 ARM processor with BMI270 IMU, ArduPilot 4.6 firmware, C++ implementation, \(400\) Hz online learning on the FCU, and a Raspberry Pi 5 used for ROS2 and motion-capture communication while the learning and control loop itself runs on the STM32-class FCU [2508.14422].

The \(SE(3)\) paper emphasizes the same qualitative advantages: no offline pre-training, no PE condition, no explicit analytic disturbance model, no exact knowledge of disturbance structure, and, in the unknown-inertia case, no need to know \(J\) [2510.03100]. Its novelty claim is tied to the decomposition of a difficult \(12\)-dimensional identification problem into small \(2\)D-to-\(1\)D learning problems handled by shallow RBF networks and adaptive laws [2510.03100].

Relative to prior methods, the papers position SANM against robust adaptive geometric control without neural learning, neural-network-based geometric adaptive control, MLP-based controllers lacking Lyapunov interpretability, and deep learning approaches characterized as more computationally expensive and less interpretable [2508.14422]. The stated comparative advantages are provable stability, online learning, low computational cost, interpretability, and embedded real-time feasibility [2508.14422].

A common misconception is to interpret SANM as simply “a neural network controller.” The control papers describe something more specific: a structured identification-and-compensation architecture in which shallow axis-wise RBF estimators, reciprocal parameter adaptation, and Lyapunov-certified update laws are embedded into geometric controllers on \(SO(3)\) and \(SE(3)\) [2508.14422]. Another possible misunderstanding is to conflate SANM with the unrelated nonlinear solver SANM from graphics and numerical continuation; despite the identical acronym, that method belongs to asymptotic numerical continuation rather than adaptive quadrotor control [2105.08535].

Taken together, the published formulation presents SANM as a coordinate-structured online identification mechanism for quadrotor geometric control, developed to mitigate underfitting in shallow online approximators while preserving Lyapunov-based stability analysis and microcontroller-level deployability [2510.03100].

Source: https://www.emergentmind.com/topics/sliced-adaptive-neuro-mapping-sanm