Papers
Topics
Authors
Recent
Search
2000 character limit reached

Concurrent PCPD Search for OMEPP

Updated 10 July 2026
  • Concurrent PCPD Search is a method that jointly explores multiple candidate pickup points to minimize energy costs in uneven terrain under payload constraints.
  • It leverages a Payload-Constrained Path Database to provide payload-aware first-move guidance, significantly reducing redundant computations during path searches.
  • Experiments on real-world terrain graphs demonstrate near-optimal energy paths with one to two orders of magnitude faster runtime compared to independent Z* searches.

Concurrent PCPD search is a search procedure for the Object-Pickup Minimum Energy Path Problem (OMEPP), in which an Autonomous Mobile Robot on uneven terrain must move from a source ss, pick up an object from one of several possible pickup points {p1,,pn}\{p_1,\dots,p_n\}, and then deliver it to a target tt while minimizing total energy consumption under payload-dependent traversability and edge costs. The method combines concurrent exploration of multiple pickup candidates with the Payload-Constrained Path Database (PCPD), an extension of the Compressed Path Database (CPD) that stores payload-aware first-move information for minimum-energy paths. In the reported formulation, concurrent PCPD search is explicitly positioned as an alternative to a baseline that runs Z^* separately for every pickup point: it is not guaranteed to be optimal, but extensive experiments show near-optimal performance with one to two orders of magnitude lower runtime on the tested real-world terrain graphs (Babakano et al., 7 Sep 2025).

1. Problem formulation and search objective

OMEPP generalizes source-to-goal energy-efficient planning by inserting a discrete pickup decision into the path-planning problem. The robot must select both a pickup location and a two-segment route, with the segment from ss to pip_i evaluated under payload ρinit\rho_{\text{init}} and the segment from pip_i to tt evaluated under payload ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}. The problem is stated as minimizing total energy over the set of candidate pickup points, with the notation {p1,,pn}\{p_1,\dots,p_n\}0 used for a minimum-energy path under payload {p1,,pn}\{p_1,\dots,p_n\}1 (Babakano et al., 7 Sep 2025).

The central difficulty is that payload changes after pickup alter both energy cost and traversability. As a consequence, the robot cannot treat the problem as a single homogeneous shortest-path query. The choice of pickup point is coupled to the route geometry, because different pickups induce different feasible uphill slopes and different edge-energy profiles on the post-pickup segment.

The need for concurrent search arises from the inefficiency of evaluating each pickup point independently. A naive method repeatedly performs closely related searches around the same source and target neighborhoods, even when many pickup candidates are obviously inferior. Concurrent PCPD search addresses this by sharing search effort across pickup candidates and pruning unpromising alternatives early. A plausible implication is that the method is most useful when the number of pickup candidates is large and the search spaces for different candidates overlap substantially.

2. Energy model, traversability, and the Z{p1,,pn}\{p_1,\dots,p_n\}2 baseline

The underlying graph is DEM-derived and models uneven terrain. For a robot of payload {p1,,pn}\{p_1,\dots,p_n\}3 moving from {p1,,pn}\{p_1,\dots,p_n\}4 to {p1,,pn}\{p_1,\dots,p_n\}5, the edge-energy cost is given by

{p1,,pn}\{p_1,\dots,p_n\}6

where {p1,,pn}\{p_1,\dots,p_n\}7 is robot mass, {p1,,pn}\{p_1,\dots,p_n\}8 is gravity, {p1,,pn}\{p_1,\dots,p_n\}9 is Euclidean distance, tt0 is dynamic friction coefficient, and tt1 is slope angle (Babakano et al., 7 Sep 2025).

Traversability is payload-constrained. The maximum uphill slope is defined through

tt2

together with a static-friction limit

tt3

so that the effective uphill bound is

tt4

The critical downhill slope is

tt5

The resulting edge cost is piecewise: edges with tt6 are infeasible, edges with tt7 have zero cost, and all remaining traversable edges use the energy expression above.

The baseline algorithm evaluates each pickup point independently. For every tt8, it computes the optimal energy path from tt9 to ^*0 using Z^*1 under payload ^*2, computes the optimal energy path from ^*3 to ^*4 using Z^*5 under payload ^*6, sums the two energy costs, and retains the best total route. This baseline is optimal under the paper’s model because Z^*7 uses an admissible and consistent heuristic tailored to terrain-dependent energy minimization. Its bottleneck is repeated work: each pickup candidate triggers two new searches, and many regions near ^*8 and ^*9 are expanded repeatedly.

3. PCPD as a payload-aware path database

PCPD extends CPD from shortest-distance routing to minimum-energy routing under payload constraints. In a standard CPD, each source-target pair stores the first move on a shortest path; complete path reconstruction then proceeds by repeatedly following first-move pointers. The first-move table is compressed with Run-Length Encoding after a DFS ordering. PCPD preserves this structure but changes the semantics of the stored first move: for each payload bucket ss0, it stores the first move on a minimum-energy path for that payload bucket, denoted ss1 (Babakano et al., 7 Sep 2025).

Construction of ss2 is payload-specific. For a payload constraint ss3, the method computes the payload-dependent slope limit, runs a modified Dijkstra from each source node, considers only edges satisfying ss4, uses the payload-specific energy cost ss5, stores the first-move table, and compresses it with RLE. The paper discretizes payload into buckets

ss6

and builds a separate CPD for each bucket.

At query time, PCPD does not require a database for every exact payload value. Instead, for an actual payload ss7, it uses ss8, the largest bucket ss9, and pip_i0, the smallest bucket pip_i1. This bucketed design reduces preprocessing multiplicity while still providing payload-aware first-move guidance.

The practical role of PCPD is branch reduction. In ordinary graph search, a state may have many admissible successors. PCPD supplies precomputed first moves likely to lie on or near a minimum-energy path under the relevant payload constraints. This suggests that PCPD functions as a strong structural prior over successor generation rather than merely as a heuristic estimate.

4. Concurrent PCPD search algorithm

Concurrent PCPD search introduces a two-level best-first organization. At the high level, a global priority queue pip_i2 ranks pickup candidates by their best current total-cost estimate. At the low level, each pickup point pip_i3 has an associated child queue pip_i4 that stores partial search states for that pickup. Entries in pip_i5 have the form pip_i6, while entries in pip_i7 have the form

pip_i8

representing a partial path from pip_i9 to ρinit\rho_{\text{init}}0 ending at ρinit\rho_{\text{init}}1 and a partial path from ρinit\rho_{\text{init}}2 to ρinit\rho_{\text{init}}3 ending at ρinit\rho_{\text{init}}4 (Babakano et al., 7 Sep 2025).

Initialization proceeds independently for each pickup point. The method computes

ρinit\rho_{\text{init}}5

inserts ρinit\rho_{\text{init}}6 into ρinit\rho_{\text{init}}7, and inserts ρinit\rho_{\text{init}}8 into ρinit\rho_{\text{init}}9. The main loop then repeatedly pops the best pickup candidate from pip_i0, pops the best state from the corresponding child queue, checks whether both goals have been reached, generates successors using PCPD, reinserts successors into the child queue, and refreshes the entry for that pickup in the global queue.

The distinctive step is successor generation. If the pip_i1 side has pip_i2 candidate moves and the pip_i3 side has pip_i4, naive paired expansion could yield up to pip_i5 combined successors. Concurrent PCPD search consults pip_i6 and pip_i7 for each active side, keeps the lower-bucket first move and the upper-bucket first move, merges them if they differ, and discards the upper-bucket move if it is infeasible under the actual payload. Each side therefore generates at most pip_i8 successors, so a two-sided expansion generates at most

pip_i9

combined successors. If one side has already reached tt0 or tt1, expansion continues only on the unfinished side.

Operationally, the global queue prunes pickup candidates that appear too expensive, while the child queues perform fine-grained search only for currently promising pickups. The method is therefore concurrent in the sense of jointly advancing multiple pickup-conditioned searches under a shared priority discipline, rather than solving the pickup candidates one by one.

5. Optimality, approximation, and computational trade-offs

The baseline iterative Ztt2 method is optimal because it explicitly evaluates each pickup point using a search with an admissible and consistent heuristic. Concurrent PCPD search is not guaranteed to be optimal. The stated reason is aggressive pruning in successor generation: the search keeps at most two first-move candidates per side, so the true optimal move may be absent from the retained set (Babakano et al., 7 Sep 2025).

The reported approximation regime is therefore near-optimal rather than exact. The method is described as most reliable when the two CPDs agree on the first move, when payload buckets are fine-grained enough, and when terrain or payload variability is not too abrupt. These conditions are not presented as formal guarantees, but they clarify the circumstances under which discretized payload guidance is least likely to exclude the true optimum.

The complexity contrast is conceptual rather than given as a closed-form asymptotic theorem. Baseline cost grows linearly with the number of pickup points because each pickup induces two full searches. Concurrent PCPD reduces repeated work through three mechanisms: shared high-level prioritization across pickup points, early pruning of entire pickup candidates through tt3, and low-level branch reduction from potentially tt4 successors to at most tt5. The trade-off is preprocessing cost for the PCPDs and a slight loss of optimality.

A common misconception is that PCPD merely accelerates the same exact search that the baseline performs. The paper explicitly rejects that interpretation: the acceleration derives from restricted successor generation, and that restriction is precisely why the method may become slightly suboptimal.

6. Experimental setup and reported performance

The reported experiments use a tt6 area from Fairfax County, Virginia, represented by a graph with about tt7 nodes and around tt8 directed links, with each node connected to tt9 neighbors. Computation is performed on an Intel Core i7 3.0 GHz machine with 32 GB RAM, using C++ compiled with ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}0. The robot model is based on the Husky A300 UGV with ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}1 kg, ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}2 m/s, ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}3 W, ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}4, ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}5, and payload capped at ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}6 kg (Babakano et al., 7 Sep 2025).

Query generation uses ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}7 random start-target pairs, ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}8 random pickup locations, and random initial and object payloads. Each query is run ρinit+ρobj\rho_{\text{init}}+\rho_{\text{obj}}9 times, the best and worst runs are discarded, and the average of the remaining {p1,,pn}\{p_1,\dots,p_n\}00 is reported. Payload buckets are {p1,,pn}\{p_1,\dots,p_n\}01 kg. PCPD preprocessing requires roughly {p1,,pn}\{p_1,\dots,p_n\}02 minutes per CPD and around {p1,,pn}\{p_1,\dots,p_n\}03 GB per CPD; the total for eight CPDs is reported as roughly {p1,,pn}\{p_1,\dots,p_n\}04–{p1,,pn}\{p_1,\dots,p_n\}05 GB. Higher payloads reduce memory usage because fewer slopes are traversable.

Runtime results show a large gap between the baseline and concurrent PCPD search. Representative values are about {p1,,pn}\{p_1,\dots,p_n\}06 s to {p1,,pn}\{p_1,\dots,p_n\}07 s for the baseline and about {p1,,pn}\{p_1,\dots,p_n\}08 ms to {p1,,pn}\{p_1,\dots,p_n\}09 ms for concurrent PCPD search, corresponding to roughly two orders of magnitude speedup. Solution quality remains close to optimal: all reported suboptimality values are below {p1,,pn}\{p_1,\dots,p_n\}10, with several examples far below that threshold, such as {p1,,pn}\{p_1,\dots,p_n\}11 and {p1,,pn}\{p_1,\dots,p_n\}12. The method also scales more favorably with the number of pickup points, because the baseline must search every candidate independently whereas the concurrent method prunes unpromising pickups and limits low-level branching.

The experimental narrative is therefore consistent with the algorithmic design. Preprocessing and memory costs are substantial, but query-time performance improves dramatically while preserving near-optimal energy values on the tested terrain instances.

7. Relation to broader concurrent-search patterns

The term “concurrent search” appears in other domains with a related, though not identical, meaning. In multi-carrier CDMA paging, a concurrent search strategy pages carriers in priority order using carrier probabilities {p1,,pn}\{p_1,\dots,p_n\}13, maintains a priority array {p1,,pn}\{p_1,\dots,p_n\}14, and suppresses carriers already tried unsuccessfully. That method is presented as a carrier-based concurrent paging/search scheme intended to reduce redundant paging actions, average delay, and channel congestion relative to sequential paging (Mostafa et al., 2011).

In constrained pseudo-Boolean optimization, parallel random search based on the modified probability changing method (MIVER) uses shared-memory OpenMP and cluster-based PVM implementations to parallelize generation and evaluation of candidate Boolean vectors, while keeping adaptation and rollback as a serial or lightly synchronized stage. The cluster version is described as an asynchronous multistart strategy with event-driven communication, local/global best values, and selective exchange of improvement messages (Kazakovtsev, 2012).

These are distinct problem classes: paging in multi-carrier CDMA, constrained pseudo-Boolean optimization, and payload-aware robot path planning do not share a common formal model. Nonetheless, the recurring idea is recognizable. This suggests a broader usage of “concurrent search” in which multiple alternatives are advanced under shared prioritization, redundant work is avoided, and coordination is concentrated in a small set of high-value control structures. Concurrent PCPD search instantiates that pattern in a particularly specialized form: the alternatives are pickup-conditioned route hypotheses, and the coordination mechanism is strengthened by payload-aware first-move databases rather than by probability arrays or distributed optimization state.

Topic to Video (Beta)

Whiteboard

Follow Topic

Get notified by email when new papers are published related to Concurrent PCPD Search.