Skip to main content
. 2026 Sep 9;26(18):5720. doi: 10.3390/s26185720
Algorithm 1 Adaptive Bounded Hybrid A* Planner
Require: Working face map M, start pose xs, target pose xg, AMT parameters, primitive pool U
Ensure: Final returned path Π∗
  •   1:

    Initialize OPEN, CLOSED, Jbest←+∞, Π∗←Ø

  •   2:

    Insert the start node into OPEN

  •   3:

    while OPEN is not empty do

  •   4:

     Select n=argminm∈OPENgsearch(m)+h(m)

  •   5:

     Remove n from OPEN and insert it into CLOSED

  •   6:

     Extract local descriptor set F(xn)

  •   7:

     Attempt RS analytical closure from n to xg

  •   8:

     if the RS connection is collision-free then

  •   9:

      Compute Jcand(n)=gtrue(n)+JRS(n,xg)

  • 10:

      if Jcand(n)<Jbest then

  • 11:

       Update Jbest←Jcand(n)

  • 12:

       Update Π∗←Πcand(n)

  • 13:

      end if

  • 14:

     end if

  • 15:

     Compute UK(xn)=TopK(U,S(·|xn))

  • 16:

     Apply direction-diversity compensation to UK(xn) if necessary

  • 17:

     for each primitive u∈UK(xn) do

  • 18:

      Compute adaptive rollout length Lu(xn) using (21)

  • 19:

      Roll out primitive u from node n under fixed integration step Δs

  • 20:

      Generate child node n′

  • 21:

      if n′ is valid and collision-free then

  • 22:

       Compute Δgtrue(n′)

  • 23:

       Update gtrue(n′)

  • 24:

       Compute Rprog(n′) and R¯prog(n′)

  • 25:

       Compute gsearch(n′)

  • 26:

       Insert or update n′ in OPEN

  • 27:

      end if

  • 28:

     end for

  • 29:

     if Jbest<+∞ and minm∈OPEN(gsearch(m)+h(m))>Jbest+εb then

  • 30:

      break

  • 31:

     end if

  • 32:

    end while

  • 33:

    return  Π∗