Papers
Topics
Authors
Recent
Search
2000 character limit reached

Dynamic Window Pure Pursuit (DWPP)

Updated 4 July 2026
  • DWPP is a reformulation of Pure Pursuit that computes motion commands directly in the v-ω plane while enforcing explicit velocity and acceleration limits.
  • It projects the desired curvature line ω=κv onto a dynamic window, minimizing mismatch between ideal and realizable commands to improve path tracking.
  • Empirical evaluations show that DWPP reduces constraint violations and tracking errors compared to standard Pure Pursuit, APP, and RPP methods.

Dynamic Window Pure Pursuit (DWPP) is a reformulation of Pure Pursuit in which the command is computed directly in the vv-ω\omega plane under explicit velocity and acceleration constraints, rather than by generating an ideal Pure Pursuit command and clipping it afterward. In its strict sense, DWPP selects the feasible velocity pair inside the dynamic window that is closest to the Pure Pursuit relation ω=κv\omega=\kappa v, thereby reducing mismatch between commanded and realizable motion and improving path tracking under constraints (Ohnishi et al., 21 Jan 2026). The term is also used more loosely for Pure Pursuit variants with online adaptation of a key parameter, but that broader usage includes methods that are not dynamic-window planners in the DWA sense, such as reinforcement-learning-based dynamic lookahead selection and heuristic speed regulation (Elgouhary et al., 30 Mar 2026, Macenski et al., 2023).

1. Definition and terminological scope

In the formulation introduced as “DWPP: Dynamic Window Pure Pursuit Considering Velocity and Acceleration Constraints,” the defining operation is a velocity-space computation. Pure Pursuit supplies a desired curvature relation, vehicle limits induce a feasible rectangle in the vv-ω\omega plane, and DWPP chooses the point in that feasible set that is closest to the line ω=κv\omega=\kappa v (Ohnishi et al., 21 Jan 2026). This differs from conventional Pure Pursuit pipelines in which vcmdv_{\mathrm{cmd}} and ωcmd\omega_{\mathrm{cmd}} are generated first and then possibly saturated by lower-level controllers.

A recurring source of ambiguity is that several Pure Pursuit variants are “dynamic” in a weaker sense. Regulated Pure Pursuit (RPP) dynamically modulates linear velocity using curvature, obstacle proximity, and forward collision checking, but it does not perform dynamic-window search over velocity space (Macenski et al., 2023). Likewise, reinforcement-learning-based dynamic-lookahead Pure Pursuit keeps the classical steering geometry intact and adapts only the lookahead distance LdL_d online; its dynamic component is the lookahead schedule rather than a DWA-style planner (Elgouhary et al., 30 Mar 2026). In a strict taxonomy, therefore, DWPP denotes a velocity-space reformulation with explicit feasibility handling, whereas RPP and dynamic-lookahead Pure Pursuit are related Pure Pursuit extensions with different adaptive mechanisms.

2. Pure Pursuit geometry and the classical trade-off structure

Standard Pure Pursuit is a geometric path-tracking method. Given a path P={p0,p1,,pn}P=\{\mathbf{p}_0,\mathbf{p}_1,\ldots,\mathbf{p}_n\}, a lookahead point ω\omega0 is selected at distance ω\omega1 from the closest path point ω\omega2, and curvature is computed from the geometry of that target point (Ohnishi et al., 21 Jan 2026). One standard expression is

ω\omega3

where ω\omega4 is the lateral coordinate of the lookahead point in the robot frame (Macenski et al., 2023). The DWPP paper presents the equivalent geometric form

ω\omega5

with ω\omega6 the heading angle from the robot forward direction to ω\omega7 and ω\omega8 the robot-to-lookahead distance (Ohnishi et al., 21 Jan 2026).

Conventional Pure Pursuit often sets

ω\omega9

which is the line ω=κv\omega=\kappa v0 in velocity space (Ohnishi et al., 21 Jan 2026). This simple structure underlies the method’s computational efficiency, but it also exposes the well-known lookahead tuning trade-off: smaller ω=κv\omega=\kappa v1 improves convergence and cornering but can induce oscillation, whereas larger ω=κv\omega=\kappa v2 reduces oscillation but slows convergence and increases overshoot on sharp curves (Ohnishi et al., 21 Jan 2026). The reinforcement-learning racing paper reports the same qualitative compromise in a different domain: shorter lookahead improves cornering but can cause instability on straights, while longer lookahead improves smoothness but reduces accuracy in curves (Elgouhary et al., 30 Mar 2026).

Adaptive Pure Pursuit (APP) modifies the lookahead law by making it proportional to speed,

ω=κv\omega=\kappa v3

so that higher translational velocity yields longer preview (Macenski et al., 2023). APP improves stability over a broader range of velocities, but it still largely presumes a given velocity profile rather than explicitly solving the realizability problem induced by hard velocity and acceleration bounds.

3. Velocity-space reformulation in strict DWPP

DWPP begins from the requirement that the next command be reachable within one control period ω=κv\omega=\kappa v4, given the current state ω=κv\omega=\kappa v5 and actuation limits. The dynamic-window bounds are

ω=κv\omega=\kappa v6

ω=κv\omega=\kappa v7

which define the axis-aligned rectangle

ω=κv\omega=\kappa v8

in the ω=κv\omega=\kappa v9-vv0 plane (Ohnishi et al., 21 Jan 2026).

The key DWPP operation is then geometric projection in velocity space. Rather than computing an ideal command and clipping it, DWPP finds the feasible point in vv1 with minimum distance to the Pure Pursuit line vv2. If multiple points are equally close, the method selects the one with the largest linear velocity to reduce travel time (Ohnishi et al., 21 Jan 2026). This is the mechanism by which the controller anticipates rather than reacts to feasibility violations.

The paper gives a constant-time analytic procedure. When vv3, the target line is vv4, the controller sets vv5, and it chooses vv6 if that lies inside the dynamic window, otherwise the boundary value closer to zero (Ohnishi et al., 21 Jan 2026). When vv7 and the line intersects the window, candidate intersections with the extended window edges are

vv8

vv9

and the in-window point with the largest linear velocity is selected. If no intersection exists, the nearest window vertex among

ω\omega0

is chosen, again breaking ties by larger ω\omega1 (Ohnishi et al., 21 Jan 2026).

This reformulation changes the controller’s internal semantics. The control computation becomes “path geometry ω\omega2 feasible velocity-space optimization” rather than “path geometry ω\omega3 ideal command ω\omega4 clipping” (Ohnishi et al., 21 Jan 2026). A plausible implication is that command-execution consistency, rather than only geometric tracking law design, becomes a first-class design objective in Pure Pursuit-based tracking.

4. Relation to APP, RPP, and reinforcement-learning-based dynamic lookahead

RPP is the immediate control-theoretic precursor most closely connected to deployed robotics practice. It is built atop APP and preserves the lookahead rule ω\omega5, but adds curvature-based velocity regulation, proximity-based velocity regulation, and preemptive collision checking over a time horizon (Macenski et al., 2023). After regulation, angular velocity is computed as

ω\omega6

so translational and angular commands remain mutually consistent (Macenski et al., 2023). The paper explicitly positions RPP against DWA and MPC: Pure Pursuit remains a simple geometric path follower, while the added heuristics serve to reduce speed in risky local conditions rather than optimize over candidate trajectories.

Strict DWPP incorporates RPP-style regulation only as an optional restriction on the admissible linear-speed interval. In the DWPP implementation flow, the dynamic window is first computed from velocity and acceleration limits, then regulation is applied so that the admissible linear velocity becomes ω\omega7, and only afterward is the optimal feasible point inside the window selected (Ohnishi et al., 21 Jan 2026). This preserves the geometric projection logic while allowing the safety-oriented heuristics developed in RPP to constrain the feasible set.

A distinct line of development appears in reinforcement-learning-based Pure Pursuit for autonomous racing. That method keeps the Pure Pursuit geometry intact and dynamically adapts only the lookahead distance ω\omega8 by a PPO policy ω\omega9, with a 5D observation

ω=κv\omega=\kappa v0

where the state includes speed, three curvature features at different horizons, and curvature change ahead (Elgouhary et al., 30 Mar 2026). The smoothed lookahead is then used inside the classical Pure Pursuit chain: ω=κv\omega=\kappa v1

ω=κv\omega=\kappa v2

The paper characterizes the learned behavior as increasing lookahead on straights and reducing it in curves (Elgouhary et al., 30 Mar 2026). In terminological terms, this is “DWPP-style” only in the broad sense that a single interpretable Pure Pursuit parameter is adapted online; it is not a dynamic-window planner.

5. Implementations and empirical evidence

The strict DWPP paper reports an implementation in the official Nav2 repository inside the RegulatedPurePursuitController plugin, with functions such as computeDynamicWindow, applyRegulationToDynamicWindow, computeOptimalVelocityWithinDynamicWindow, and computeDynamicWindowVelocities (Ohnishi et al., 21 Jan 2026). The public source tree includes dynamic_window_pure_pursuit_functions.hpp, and the method is designed to be compatible with existing RPP heuristics through Nav2 parameter settings (Ohnishi et al., 21 Jan 2026). RPP itself is also part of Nav2, implemented in C++, optimized, and reported with about 92% unit test coverage in a shared codebase across PP, APP, and RPP (Macenski et al., 2023).

The strict DWPP experiments were conducted on a WHILL Model CR in an obstacle-free room with Nav2 controller_server, SLAM Toolbox map plus AMCL localization, Ubuntu 24.04, ROS 2 Jazzy, and a 30 Hz data rate (Ohnishi et al., 21 Jan 2026). Three 3.0 m paths with corner angles ω=κv\omega=\kappa v3, ω=κv\omega=\kappa v4, and ω=κv\omega=\kappa v5 were used, and PP, APP, RPP, and DWPP were each run five times on each path for 60 runs total (Ohnishi et al., 21 Jan 2026). The reported metrics were constraint violation ratio, mean path tracking error, maximum path tracking error, and travel time (Ohnishi et al., 21 Jan 2026).

Setting Comparison Reported outcome
Path A (ω=κv\omega=\kappa v6) PP / APP / RPP / DWPP Violation ratio: ω=κv\omega=\kappa v7, ω=κv\omega=\kappa v8, ω=κv\omega=\kappa v9, vcmdv_{\mathrm{cmd}}0
Path B (vcmdv_{\mathrm{cmd}}1) PP / APP / RPP / DWPP Mean error: vcmdv_{\mathrm{cmd}}2 m, vcmdv_{\mathrm{cmd}}3 m, vcmdv_{\mathrm{cmd}}4 m, vcmdv_{\mathrm{cmd}}5 m
Path C (vcmdv_{\mathrm{cmd}}6) PP / APP / RPP / DWPP Max error: vcmdv_{\mathrm{cmd}}7 m, vcmdv_{\mathrm{cmd}}8 m, vcmdv_{\mathrm{cmd}}9 m, ωcmd\omega_{\mathrm{cmd}}0 m

Across all paths, DWPP achieved 0.0% constraint violations, and the benefit became more pronounced as corner angle increased (Ohnishi et al., 21 Jan 2026). On Path C, mean cross-track error was ωcmd\omega_{\mathrm{cmd}}1 m for PP, ωcmd\omega_{\mathrm{cmd}}2 m for APP, ωcmd\omega_{\mathrm{cmd}}3 m for RPP, and ωcmd\omega_{\mathrm{cmd}}4 m for DWPP; maximum cross-track error followed the same ordering (Ohnishi et al., 21 Jan 2026). Travel time was sometimes longer for DWPP, for example ωcmd\omega_{\mathrm{cmd}}5 s versus ωcmd\omega_{\mathrm{cmd}}6 s for PP on Path C, reflecting more conservative deceleration at corners (Ohnishi et al., 21 Jan 2026).

RPP’s own experiments used one simulation and three hardware experiments on a Pal Robotics Tiago service robot (Macenski et al., 2023). In a sharp-turn simulation, mean tracking error was ωcmd\omega_{\mathrm{cmd}}7 m for RPP, ωcmd\omega_{\mathrm{cmd}}8 m for APP, and ωcmd\omega_{\mathrm{cmd}}9 m for PP. In a blind turning experiment, average stopped distance from an obstacle was LdL_d0 m for RPP, compared with LdL_d1 m for APP and LdL_d2 m for PP, and the paper states that without RPP’s collision checking, collisions occurred in nearly all cases (Macenski et al., 2023). These findings support the claim that regulation heuristics can improve functional safety even though the planner remains purely geometric.

The reinforcement-learning dynamic-lookahead study was trained for 800,000 environment steps in F1TENTH Gym with Stable-Baselines3 PPO, KL target LdL_d3, linear learning-rate decay, VecNormalize, reward clipping to LdL_d4, lookahead smoothing, and a first-order low-pass filter on curvature with LdL_d5 (Elgouhary et al., 30 Mar 2026). On unseen tracks it reported 33.16 s on Montreal and 46.05 s on Yas Marina, each with 10/10 completed laps, and it tolerated more aggressive speed-profile scaling than the baselines (Elgouhary et al., 30 Mar 2026). On a 1:10-scale autonomous racing vehicle, the RL Pure Pursuit controller completed 10/10 laps with LdL_d6 s and range 10.79–11.66 s, whereas fixed-lookahead Pure Pursuit failed to complete repeated laps reliably (Elgouhary et al., 30 Mar 2026). These results do not establish a DWPP method in the strict velocity-space sense, but they demonstrate that online adaptation of a single Pure Pursuit parameter can produce robust context-dependent behavior.

6. Limitations, misconceptions, and research significance

A central misconception is to treat every adaptive Pure Pursuit variant as a DWPP method. The RPP paper is explicit that it does not borrow the DWA optimization mechanism: there is no dynamic window search over velocity space, no explicit trajectory rollout scoring over multiple candidate velocities, and no DWA-style objective function (Macenski et al., 2023). The reinforcement-learning racing paper is similarly explicit that its method is a dynamically adjusted lookahead Pure Pursuit controller, not a separate dynamic-window planner; the dynamic component is the lookahead schedule selected by PPO (Elgouhary et al., 30 Mar 2026). Strict DWPP, by contrast, is defined by feasible command selection in the LdL_d7-LdL_d8 plane under velocity and acceleration constraints (Ohnishi et al., 21 Jan 2026).

DWPP also does not remove all classical Pure Pursuit limitations. The Gazebo study in the DWPP paper confirms that the lookahead-distance trade-off remains: smaller lookahead yields smaller tracking error but longer travel time, whereas larger lookahead yields larger tracking error but shorter travel time (Ohnishi et al., 21 Jan 2026). Thus DWPP solves the feasibility and saturation-mismatch problem, but it does not eliminate the preview-selection problem intrinsic to Pure Pursuit.

RPP inherits other geometric limitations. The paper states that RPP, like PP and APP, is purely geometric, does not model vehicle dynamics, requires a feasible global path for the robot platform, and is still prone to some short-cutting in high-curvature paths, though less than PP or APP (Macenski et al., 2023). For Ackermann robots, the path must respect minimum turning radius constraints; differential-drive robots are more flexible (Macenski et al., 2023). The reinforcement-learning racing work also has explicit bounds on its claims: no formal saliency or feature-importance analysis is reported, the heuristic LdL_d9 is used only for reward shaping and not at deployment, and no explicit domain-randomization scheme is described for sim-to-real transfer (Elgouhary et al., 30 Mar 2026).

Taken together, these papers delineate three distinct axes of Pure Pursuit adaptation. Strict DWPP adapts the command computation by projecting the Pure Pursuit relation into a dynamically feasible velocity set (Ohnishi et al., 21 Jan 2026). RPP adapts linear speed heuristically using curvature, proximity, and time-horizon collision checking while retaining Pure Pursuit geometry (Macenski et al., 2023). Reinforcement-learning-based dynamic lookahead adapts the preview distance P={p0,p1,,pn}P=\{\mathbf{p}_0,\mathbf{p}_1,\ldots,\mathbf{p}_n\}0 online from speed and multi-horizon curvature context (Elgouhary et al., 30 Mar 2026). This suggests that “dynamic” in the Pure Pursuit literature is not a single concept but a family of modifications targeting different failure modes: command infeasibility, local safety, and preview selection, respectively.

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 Dynamic Window Pure Pursuit (DWPP).