diff --git a/source/armarx/navigation/algorithms/CMakeLists.txt b/source/armarx/navigation/algorithms/CMakeLists.txt
index 23422ec563c43b6534270afe79d03b6f9703f167..abdba073df9b7bfeba96db61f69724ba2dbb5a1e 100644
--- a/source/armarx/navigation/algorithms/CMakeLists.txt
+++ b/source/armarx/navigation/algorithms/CMakeLists.txt
@@ -1,6 +1,7 @@
 armarx_add_aron_library(algorithms_aron
     ARON_FILES
         aron/Costmap.xml
+        aron/ShortestPathFasterAlgorithmParams.xml
 )
 
 armarx_add_library(algorithms
diff --git a/source/armarx/navigation/algorithms/aron/ShortestPathFasterAlgorithmParams.xml b/source/armarx/navigation/algorithms/aron/ShortestPathFasterAlgorithmParams.xml
new file mode 100644
index 0000000000000000000000000000000000000000..91f0b6a694ba5d9cd99522635fd123bb42de65ae
--- /dev/null
+++ b/source/armarx/navigation/algorithms/aron/ShortestPathFasterAlgorithmParams.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<AronTypeDefinition>
+    <AronIncludes>
+    </AronIncludes>
+
+    <GenerateTypes>
+        <Object name='armarx::navigation::algorithms::arondto::ShortestPathFasterAlgorithmParams'>
+             <ObjectChild key='obstacleDistanceCosts'>
+                <bool />
+            </ObjectChild>
+            <ObjectChild key='obstacleMaxDistance'>
+                <float />
+            </ObjectChild>
+            <ObjectChild key='obstacleDistanceWeight'>
+                <float />
+            </ObjectChild>
+            <ObjectChild key='obstacleCostExponent'>
+                <float />
+            </ObjectChild>
+        </Object>
+
+    </GenerateTypes>
+</AronTypeDefinition>
diff --git a/source/armarx/navigation/algorithms/aron_conversions.cpp b/source/armarx/navigation/algorithms/aron_conversions.cpp
index 031170efbaa9ec93beac9793f508b3578ef1330f..6580d25aa5600813ef76e81b1f61066a71873968 100644
--- a/source/armarx/navigation/algorithms/aron_conversions.cpp
+++ b/source/armarx/navigation/algorithms/aron_conversions.cpp
@@ -2,10 +2,11 @@
 
 #include <RobotAPI/libraries/armem/core/wm/memory_definitions.h>
 #include <RobotAPI/libraries/armem/util/util.h>
-#include <RobotAPI/libraries/core/FramedPose.h>
 #include <RobotAPI/libraries/aron/converter/eigen/EigenConverter.h>
+#include <RobotAPI/libraries/core/FramedPose.h>
 
 #include <armarx/navigation/algorithms/Costmap.h>
+#include <armarx/navigation/algorithms/aron/ShortestPathFasterAlgorithmParams.aron.generated.h>
 #include <armarx/navigation/conversions/eigen.h>
 
 
@@ -70,7 +71,7 @@ namespace armarx::navigation::algorithms
         ARMARX_DEBUG << "Converting grid";
         const auto gridNavigator =
             aron::data::NDArray::DynamicCast(entityInstance.data()->getElement("grid"));
-       
+
         ARMARX_CHECK_NOT_NULL(gridNavigator);
 
         Costmap::Grid grid =
@@ -95,5 +96,26 @@ namespace armarx::navigation::algorithms
         return {grid, parameters, sceneBounds, mask};
     }
 
+    void
+    toAron(arondto::ShortestPathFasterAlgorithmParams& dto,
+           const spfa::ShortestPathFasterAlgorithm::Parameters& bo)
+    {
+        dto.obstacleDistanceCosts = bo.obstacleDistanceCosts;
+        dto.obstacleMaxDistance = bo.obstacleMaxDistance;
+        dto.obstacleDistanceWeight = bo.obstacleDistanceWeight;
+        dto.obstacleCostExponent = bo.obstacleCostExponent;
+    }
+
+
+    void
+    fromAron(const arondto::ShortestPathFasterAlgorithmParams& dto,
+             spfa::ShortestPathFasterAlgorithm::Parameters& bo)
+    {
+        bo.obstacleDistanceCosts = dto.obstacleDistanceCosts;
+        bo.obstacleMaxDistance = dto.obstacleMaxDistance;
+        bo.obstacleDistanceWeight = dto.obstacleDistanceWeight;
+        bo.obstacleCostExponent = dto.obstacleCostExponent;
+    }
+
 
 } // namespace armarx::navigation::algorithms
diff --git a/source/armarx/navigation/algorithms/aron_conversions.h b/source/armarx/navigation/algorithms/aron_conversions.h
index 4c91b8330c4f53b4303db407abe53c9fa8f2b5f1..531412d217bd0af029b37cd55c3db09ec0f641d3 100644
--- a/source/armarx/navigation/algorithms/aron_conversions.h
+++ b/source/armarx/navigation/algorithms/aron_conversions.h
@@ -22,6 +22,7 @@
 #pragma once
 
 #include <RobotAPI/libraries/armem/core/wm/memory_definitions.h>
+#include "armarx/navigation/algorithms/spfa/ShortestPathFasterAlgorithm.h"
 #include <armarx/navigation/algorithms/Costmap.h>
 #include <armarx/navigation/algorithms/aron/Costmap.aron.generated.h>
 
@@ -43,5 +44,14 @@ namespace armarx::navigation::algorithms
     // Costmap does not provide a default c'tor
     Costmap fromAron(const armem::wm::EntityInstance& entityInstance);
 
+    namespace arondto
+    {
+        class ShortestPathFasterAlgorithmParams;
+    }
+
+    void toAron(arondto::ShortestPathFasterAlgorithmParams& dto, const spfa::ShortestPathFasterAlgorithm::Parameters& bo);
+    
+    void fromAron(const arondto::ShortestPathFasterAlgorithmParams& dto, spfa::ShortestPathFasterAlgorithm::Parameters& bo);
+
 
 } // namespace armarx::navigation::algorithms
diff --git a/source/armarx/navigation/global_planning/SPFA.h b/source/armarx/navigation/global_planning/SPFA.h
index c0900376727e7d1ab8bfb192669e903b15c5f598..2246f92bf8693706512c2ec28cebbdd00bf483ab 100644
--- a/source/armarx/navigation/global_planning/SPFA.h
+++ b/source/armarx/navigation/global_planning/SPFA.h
@@ -24,6 +24,8 @@
 
 #include <VirtualRobot/MathTools.h>
 #include "GlobalPlanner.h"
+#include "armarx/navigation/algorithms/spfa/ShortestPathFasterAlgorithm.h"
+#include "armarx/navigation/global_planning/core.h"
 #include <armarx/navigation/core/types.h>
 
 namespace armarx::navigation::global_planning
@@ -45,6 +47,7 @@ namespace armarx::navigation::global_planning
 
         float resampleDistance{-1};
 
+        algorithms::spfa::ShortestPathFasterAlgorithm::Parameters algo;
 
 
         Algorithms algorithm() const override;
diff --git a/source/armarx/navigation/global_planning/aron/SPFAParams.xml b/source/armarx/navigation/global_planning/aron/SPFAParams.xml
index 63b61b6f9b54346494a9c58db5e8e15b7805f82d..c1b2869ffa7a8b3884de5d37dd782a132ebd7c3c 100644
--- a/source/armarx/navigation/global_planning/aron/SPFAParams.xml
+++ b/source/armarx/navigation/global_planning/aron/SPFAParams.xml
@@ -2,6 +2,7 @@
 <AronTypeDefinition>
     <AronIncludes>
         <Include include="armarx/navigation/global_planning/aron/GlobalPlannerParams.xml" />
+        <Include include="armarx/navigation/algorithms/aron/ShortestPathFasterAlgorithmParams.xml" />
     </AronIncludes>
 
     <GenerateTypes>
@@ -15,6 +16,10 @@
                 <float />
             </ObjectChild>
 
+            <ObjectChild key='algo'>
+                <armarx::navigation::algorithms::arondto::ShortestPathFasterAlgorithmParams/>
+            </ObjectChild>
+
         </Object>
 
 
diff --git a/source/armarx/navigation/global_planning/aron_conversions.cpp b/source/armarx/navigation/global_planning/aron_conversions.cpp
index 358efefcb01c7c722d9f278bbea662e01dd7d99e..ef57566f2844cf8c3cee3a4e441e6dedde20506d 100644
--- a/source/armarx/navigation/global_planning/aron_conversions.cpp
+++ b/source/armarx/navigation/global_planning/aron_conversions.cpp
@@ -4,6 +4,7 @@
 #include <RobotAPI/libraries/aron/common/aron_conversions/core.h>
 #include <RobotAPI/libraries/aron/common/aron_conversions/stl.h>
 
+#include <armarx/navigation/algorithms/aron_conversions.h>
 #include <armarx/navigation/global_planning/AStar.h>
 #include <armarx/navigation/global_planning/GlobalPlanner.h>
 #include <armarx/navigation/global_planning/Point2Point.h>
@@ -69,6 +70,7 @@ namespace armarx::navigation::global_planning::aron_conv
 
         aron::toAron(dto.linearVelocity, bo.linearVelocity);
         aron::toAron(dto.resampleDistance, bo.resampleDistance);
+        algorithms::toAron(dto.algo, bo.algo);
     }
 
     void
@@ -79,6 +81,8 @@ namespace armarx::navigation::global_planning::aron_conv
 
         aron::fromAron(dto.linearVelocity, bo.linearVelocity);
         aron::fromAron(dto.resampleDistance, bo.resampleDistance);
+
+        algorithms::fromAron(dto.algo, bo.algo);
     }
 
 } // namespace armarx::navigation::global_planning::aron_conv
diff --git a/source/armarx/navigation/simulation/SimulatedHuman.cpp b/source/armarx/navigation/simulation/SimulatedHuman.cpp
index 857ad24282a527fc40fe436a9c1a7703a41d7c04..f008cccd43c3626b78ab5e980ae3b2da792eacab 100644
--- a/source/armarx/navigation/simulation/SimulatedHuman.cpp
+++ b/source/armarx/navigation/simulation/SimulatedHuman.cpp
@@ -26,6 +26,7 @@
 #include "ArmarXCore/core/logging/Logging.h"
 
 #include "armarx/navigation/algorithms/Costmap.h"
+#include "armarx/navigation/algorithms/spfa/ShortestPathFasterAlgorithm.h"
 #include "armarx/navigation/algorithms/util.h"
 #include "armarx/navigation/conversions/eigen.h"
 #include "armarx/navigation/core/StaticScene.h"
@@ -103,6 +104,7 @@ namespace armarx::navigation::human::simulation
     {
         global_planning::SPFA::Params params;
         params.linearVelocity = this->params_.maxLinearVelocity;
+        params.algo.obstacleDistanceWeight = 1.1F;
 
         core::Scene scene;