Papers
Topics
Authors
Recent
Search
2000 character limit reached

MPC-CDF: Density-Based Safety in MPC

Updated 12 July 2026
  • The paper introduces MPC-CDF, a formulation that embeds discrete-time control density functions to enforce safety-critical navigation in nonlinear systems.
  • It leverages an occupancy measure that assigns zero density to unsafe regions and maximal density at the target, enabling smooth, anticipatory obstacle avoidance.
  • By approximating the Perron–Frobenius operator via Euler discretization, MPC-CDF offers a computationally efficient alternative to MPC-CBF in complex environments.

MPC-CDF is a model predictive control formulation that incorporates discrete-time control density functions into the receding-horizon optimization problem in order to enforce safety-critical navigation for nonlinear dynamical systems. In the formulation introduced in “Safety Critical Model Predictive Control Using Discrete-Time Control Density Functions” (Narayanan et al., 16 Sep 2025), safety is not imposed only through geometric collision constraints or barrier inequalities; instead, it is encoded through a density function whose associated measure represents the occupancy of system trajectories, with unsafe regions assigned zero occupancy and the target assigned maximal occupancy. The resulting framework is intended for nonlinear discrete-time systems that must reach a target while avoiding arbitrary unsafe sets, and it is presented as a discrete-time, occupancy-based alternative to MPC-CBF for settings in which ordinary MPC is too myopic and CBF tuning is difficult (Narayanan et al., 16 Sep 2025).

1. Concept and problem setting

MPC-CDF considers the nonlinear discrete-time system

x(k+1)=F(x(k),u(k))=:Tu(k)(x(k)),x(k+1)=F(x(k),u(k))=:T_{u(k)}(x(k)),

with state x(k)XRnx(k)\in X\subset \mathbb{R}^n and input u(k)URpu(k)\in U\subset \mathbb{R}^p. The control objective is to start from an initial set X0X_0, reach a target set XTX_T taken without loss of generality as the origin, avoid an unsafe set

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},

and remain in the safe set

Xs:=XXu.X_s := X\setminus X_u.

The method assumes a bounded workspace XRnX\subset \mathbb{R}^n, continuous dynamics F:X×UXF:X\times U\to X, and, for fixed uUu\in U, invertibility of the map x(k)XRnx(k)\in X\subset \mathbb{R}^n0. The paper also introduces

x(k)XRnx(k)\in X\subset \mathbb{R}^n1

where x(k)XRnx(k)\in X\subset \mathbb{R}^n2 is a small neighborhood of the origin. These sets enter the dual density conditions used to motivate the MPC constraints (Narayanan et al., 16 Sep 2025).

The stated motivation is comparative. Plain MPC with geometric collision constraints “often reacts only when the predicted trajectory gets close to obstacles,” which makes behavior short-sighted. MPC-CBF can improve anticipatory safety, but barrier-function design and tuning become difficult for complex, nonconvex, or multiple obstacles, and the response can be aggressive near constraints. MPC-CDF addresses this by embedding a density-based safety certificate into the MPC problem, with the density interpreted through occupancy of trajectories rather than only through local state inequalities (Narayanan et al., 16 Sep 2025).

2. Dual density formulation and control density functions

The central object in MPC-CDF is a positive scalar function x(k)XRnx(k)\in X\subset \mathbb{R}^n3, called a control density function. The paper gives it a measure-theoretic interpretation: the associated measure is a navigation measure or occupancy measure, so the measure of a set corresponds to how much system trajectories occupy that set. In this interpretation, safe navigation is obtained by shaping occupancy so that it is zero in unsafe regions and maximal at the target (Narayanan et al., 16 Sep 2025).

The formal motivation comes from the Perron–Frobenius operator. For fixed input x(k)XRnx(k)\in X\subset \mathbb{R}^n4 and x(k)XRnx(k)\in X\subset \mathbb{R}^n5, the operator is defined by

x(k)XRnx(k)\in X\subset \mathbb{R}^n6

This operator pushes forward densities under the dynamics. The framework therefore works in the dual space of densities and measures rather than only in state space (Narayanan et al., 16 Sep 2025).

The paper recalls a continuous-time precursor for x(k)XRnx(k)\in X\subset \mathbb{R}^n7. If there exists a control x(k)XRnx(k)\in X\subset \mathbb{R}^n8 and x(k)XRnx(k)\in X\subset \mathbb{R}^n9 such that

u(k)URpu(k)\in U\subset \mathbb{R}^p0

and

u(k)URpu(k)\in U\subset \mathbb{R}^p1

then trajectories from almost all initial conditions in u(k)URpu(k)\in U\subset \mathbb{R}^p2 reach the target while avoiding u(k)URpu(k)\in U\subset \mathbb{R}^p3 (Narayanan et al., 16 Sep 2025).

For the discrete-time system, the corresponding density conditions are stated as

u(k)URpu(k)\in U\subset \mathbb{R}^p4

and

u(k)URpu(k)\in U\subset \mathbb{R}^p5

These are the discrete analogues used to motivate the MPC-CDF safety constraint. The paper presents these conditions as the dual formulation underlying safe navigation in discrete time (Narayanan et al., 16 Sep 2025).

3. Construction of the density and discrete-time approximation

For each obstacle u(k)URpu(k)\in U\subset \mathbb{R}^p6, the unsafe set is represented by a continuous function u(k)URpu(k)\in U\subset \mathbb{R}^p7:

u(k)URpu(k)\in U\subset \mathbb{R}^p8

A sensing region is defined using another continuous function u(k)URpu(k)\in U\subset \mathbb{R}^p9:

X0X_00

This sensing region is where the density transitions smoothly and where the controller begins reacting to the obstacle (Narayanan et al., 16 Sep 2025).

The paper constructs the density through the smooth functions

X0X_01

and

X0X_02

It then defines

X0X_03

and

X0X_04

The control density function is

X0X_05

with

X0X_06

and tuning parameter X0X_07 (Narayanan et al., 16 Sep 2025).

This construction has an explicit geometric interpretation. X0X_08 inside obstacle X0X_09, XTX_T0 transitions smoothly from XTX_T1 to XTX_T2 in the sensing region, and XTX_T3 makes XTX_T4 large near the target. The paper therefore describes XTX_T5 as a product of obstacle-avoidance and target-attraction terms (Narayanan et al., 16 Sep 2025).

Because exact computation of the Perron–Frobenius operator is difficult for nonlinear systems, the paper derives an implementable approximation. Using Euler discretization with time step XTX_T6,

XTX_T7

and the approximation

XTX_T8

with

XTX_T9

it obtains the discrete-time CDF constraint

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},0

where

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},1

This approximation is the direct bridge from the dual density formulation to the online MPC problem (Narayanan et al., 16 Sep 2025).

4. MPC-CDF optimization problem and online synthesis

The finite-horizon cost in MPC-CDF is

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},2

with stage cost Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},3 and terminal cost Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},4. The predicted trajectory satisfies

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},5

the initial condition

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},6

the terminal condition

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},7

and state/input constraints

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},8

The defining feature of MPC-CDF is the additional density-flow inequality imposed at every prediction step:

Xu=j=1LXuj,X_u = \bigcup_{j=1}^L X_{u_j},9

The full optimization problem is therefore

Xs:=XXu.X_s := X\setminus X_u.0

for Xs:=XXu.X_s := X\setminus X_u.1 (Narayanan et al., 16 Sep 2025).

Online synthesis follows the standard receding-horizon pattern. At time Xs:=XXu.X_s := X\setminus X_u.2, the controller measures the current state, predicts the trajectory over horizon Xs:=XXu.X_s := X\setminus X_u.3, evaluates

Xs:=XXu.X_s := X\setminus X_u.4

enforces the CDF inequality at each prediction step, solves the constrained nonlinear program, applies the first input

Xs:=XXu.X_s := X\setminus X_u.5

and repeats the procedure at time Xs:=XXu.X_s := X\setminus X_u.6 (Narayanan et al., 16 Sep 2025).

The paper explicitly compares this to MPC-CBF, written as

Xs:=XXu.X_s := X\setminus X_u.7

again for Xs:=XXu.X_s := X\setminus X_u.8. The distinction is structural: MPC-CBF uses a barrier function Xs:=XXu.X_s := X\setminus X_u.9 defining the safe set, whereas MPC-CDF uses a density XRnX\subset \mathbb{R}^n0 satisfying an occupancy-flow inequality (Narayanan et al., 16 Sep 2025).

5. Theoretical claims, safety interpretation, and comparison with CBFs

The strongest theorem stated in the paper is the continuous-time density result: if

XRnX\subset \mathbb{R}^n1

and

XRnX\subset \mathbb{R}^n2

then trajectories from almost all initial conditions in XRnX\subset \mathbb{R}^n3 can be driven to XRnX\subset \mathbb{R}^n4 while avoiding XRnX\subset \mathbb{R}^n5 (Narayanan et al., 16 Sep 2025).

The discrete-time counterpart is presented through

XRnX\subset \mathbb{R}^n6

and

XRnX\subset \mathbb{R}^n7

with the implementable MPC condition

XRnX\subset \mathbb{R}^n8

The intended guarantee is almost-everywhere safe navigation, convergence toward the target, and obstacle avoidance in the density-based sense (Narayanan et al., 16 Sep 2025).

The paper is explicit, however, that it does not provide complete formal proofs of recursive feasibility and stability for the actual MPC-CDF algorithm. It states that “our focus is on algorithm development, practical implementation and validation” and that proofs for stability and recursive feasibility are being developed in ongoing work outside the scope of the paper. Accordingly, the formal safety and convergence logic in the article comes from the density-function framework and its continuous/discrete dual conditions, not from a completed closed-loop MPC proof (Narayanan et al., 16 Sep 2025).

The comparison with CBF-based methods is framed around the type of certificate. In MPC-CBF, safety is encoded by a function XRnX\subset \mathbb{R}^n9 whose superlevel set is safe,

F:X×UXF:X\times U\to X0

and by the inequality

F:X×UXF:X\times U\to X1

In MPC-CDF, safety is encoded through

F:X×UXF:X\times U\to X2

and the inequality

F:X×UXF:X\times U\to X3

The paper argues that CDFs provide a more physically meaningful, occupancy-based alternative, especially when obstacle geometry is complex and tuning by F:X×UXF:X\times U\to X4 is less intuitive. A plausible implication is that MPC-CDF emphasizes spatial anticipation through density shaping rather than only local forward invariance (Narayanan et al., 16 Sep 2025).

6. Numerical studies, tuning, and limitations

The paper reports two principal categories of numerical study: a unicycle comparison against MPC-CBF and safe navigation of a fully actuated underwater vehicle. Tuning in MPC-CDF is centered on two parameters. The first is F:X×UXF:X\times U\to X5 in

F:X×UXF:X\times U\to X6

which controls the convergence pull toward the target; the paper remarks that values

F:X×UXF:X\times U\to X7

work well in simulations. The second is the sensing-region function or radius F:X×UXF:X\times U\to X8, which determines how far from obstacle F:X×UXF:X\times U\to X9 the controller starts reacting (Narayanan et al., 16 Sep 2025).

For the unicycle model,

uUu\in U0

the task is to move from

uUu\in U1

to

uUu\in U2

while avoiding a circular obstacle of radius uUu\in U3 centered at

uUu\in U4

The obstacle and sensing sets are

uUu\in U5

and

uUu\in U6

The comparison uses MPC-CDF with uUu\in U7 and MPC-CBF with uUu\in U8, horizon uUu\in U9, and update frequency x(k)XRnx(k)\in X\subset \mathbb{R}^n00 Hz (Narayanan et al., 16 Sep 2025).

The reported minimum distances to the obstacle are:

  • MPC-CDF: x(k)XRnx(k)\in X\subset \mathbb{R}^n01 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n02, x(k)XRnx(k)\in X\subset \mathbb{R}^n03 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n04, and x(k)XRnx(k)\in X\subset \mathbb{R}^n05 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n06.
  • MPC-CBF: x(k)XRnx(k)\in X\subset \mathbb{R}^n07 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n08, x(k)XRnx(k)\in X\subset \mathbb{R}^n09 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n10, and x(k)XRnx(k)\in X\subset \mathbb{R}^n11 m for x(k)XRnx(k)\in X\subset \mathbb{R}^n12.

The corresponding solve times from Table 1 are:

  • MPC-CDF: x(k)XRnx(k)\in X\subset \mathbb{R}^n13 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n14, x(k)XRnx(k)\in X\subset \mathbb{R}^n15 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n16, and x(k)XRnx(k)\in X\subset \mathbb{R}^n17 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n18.
  • MPC-CBF: x(k)XRnx(k)\in X\subset \mathbb{R}^n19 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n20, x(k)XRnx(k)\in X\subset \mathbb{R}^n21 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n22, and x(k)XRnx(k)\in X\subset \mathbb{R}^n23 s for x(k)XRnx(k)\in X\subset \mathbb{R}^n24.

The paper interprets these results as showing that MPC-CDF has computational efficiency comparable to MPC-CBF while giving more uniform control over safety margin through the sensing radius (Narayanan et al., 16 Sep 2025).

The underwater vehicle example uses a fully actuated 4-DOF AUV with configuration

x(k)XRnx(k)\in X\subset \mathbb{R}^n25

body velocities

x(k)XRnx(k)\in X\subset \mathbb{R}^n26

and dynamics

x(k)XRnx(k)\in X\subset \mathbb{R}^n27

x(k)XRnx(k)\in X\subset \mathbb{R}^n28

The paper rewrites these in second-order form and then with state variables x(k)XRnx(k)\in X\subset \mathbb{R}^n29, x(k)XRnx(k)\in X\subset \mathbb{R}^n30. The cost is

x(k)XRnx(k)\in X\subset \mathbb{R}^n31

x(k)XRnx(k)\in X\subset \mathbb{R}^n32

with

x(k)XRnx(k)\in X\subset \mathbb{R}^n33

x(k)XRnx(k)\in X\subset \mathbb{R}^n34

x(k)XRnx(k)\in X\subset \mathbb{R}^n35

In one setup, the target is

x(k)XRnx(k)\in X\subset \mathbb{R}^n36

the environment contains spherical obstacles with radii

x(k)XRnx(k)\in X\subset \mathbb{R}^n37

and the density uses x(k)XRnx(k)\in X\subset \mathbb{R}^n38 and x(k)XRnx(k)\in X\subset \mathbb{R}^n39. All trajectories generated by MPC-CDF safely avoid obstacles and converge to the target (Narayanan et al., 16 Sep 2025).

In a more complex 3D environment containing two tori, one cylinder, and one sphere, the AUV moves from

x(k)XRnx(k)\in X\subset \mathbb{R}^n40

to

x(k)XRnx(k)\in X\subset \mathbb{R}^n41

The comparison uses MPC-CDF with x(k)XRnx(k)\in X\subset \mathbb{R}^n42, x(k)XRnx(k)\in X\subset \mathbb{R}^n43, and MPC-CBF with x(k)XRnx(k)\in X\subset \mathbb{R}^n44. Both methods generate safe trajectories, but the reported minimum distance to the spherical obstacle is x(k)XRnx(k)\in X\subset \mathbb{R}^n45 m for MPC-CDF and x(k)XRnx(k)\in X\subset \mathbb{R}^n46 m for MPC-CBF (Narayanan et al., 16 Sep 2025).

The limitations are stated directly. MPC-CDF assumes a known nonlinear model x(k)XRnx(k)\in X\subset \mathbb{R}^n47 or x(k)XRnx(k)\in X\subset \mathbb{R}^n48, invertibility of x(k)XRnx(k)\in X\subset \mathbb{R}^n49 for fixed x(k)XRnx(k)\in X\subset \mathbb{R}^n50, full state measurement, and manual construction of the density function from obstacle descriptions. The discrete-time constraint is not the exact Perron–Frobenius condition; it is derived through Euler discretization and local approximation of the divergence term. The paper explicitly identifies rigorous recursive-feasibility and closed-loop-stability proofs as open problems outside its scope, and it also identifies extension to broader classes of nonlinear systems, handling approximation error, automated construction and tuning of x(k)XRnx(k)\in X\subset \mathbb{R}^n51, and integration with learned density or operator approximations as open directions (Narayanan et al., 16 Sep 2025).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to MPC-CDF.