diff --git a/core/net/src/main/java/org/onlab/onos/net/intent/impl/PointToPointIntentCompiler.java b/core/net/src/main/java/org/onlab/onos/net/intent/impl/PointToPointIntentCompiler.java
index 8cd0e14..dacc479 100644
--- a/core/net/src/main/java/org/onlab/onos/net/intent/impl/PointToPointIntentCompiler.java
+++ b/core/net/src/main/java/org/onlab/onos/net/intent/impl/PointToPointIntentCompiler.java
@@ -108,7 +108,7 @@
                 if (lt == Link.Type.OPTICAL) {
                     return 1000.0;
                 } else {
-                    return 1.0;
+                    return Double.MIN_VALUE;
                 }
             }
         };
diff --git a/utils/misc/src/main/java/org/onlab/graph/AbstractGraphPathSearch.java b/utils/misc/src/main/java/org/onlab/graph/AbstractGraphPathSearch.java
index 744e545..47c5d4e 100644
--- a/utils/misc/src/main/java/org/onlab/graph/AbstractGraphPathSearch.java
+++ b/utils/misc/src/main/java/org/onlab/graph/AbstractGraphPathSearch.java
@@ -36,7 +36,7 @@
 public abstract class AbstractGraphPathSearch<V extends Vertex, E extends Edge<V>>
         implements GraphPathSearch<V, E> {
 
-    private double samenessThreshold = 0.000000001;
+    private double samenessThreshold = Double.MIN_VALUE;
 
     /**
      * Sets a new sameness threshold for comparing cost values; default is
@@ -183,7 +183,7 @@
 
             double newCost = cost + hopCost;
             boolean relaxed = newCost < oldCost;
-            boolean same = Math.abs(newCost - oldCost) < samenessThreshold;
+            boolean same = Math.abs(newCost - oldCost) <= samenessThreshold;
             if (same || relaxed) {
                 updateVertex(v, e, newCost, !same);
             }
