From 53d3bee642da9da745ce6ecf88454240c5576b89 Mon Sep 17 00:00:00 2001 From: Simon O'Shea Date: Wed, 9 Aug 2023 12:14:10 -0400 Subject: updated algorithms / heuristics --- Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs') diff --git a/Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs b/Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs index 2f10505..b44c638 100644 --- a/Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs +++ b/Pathfinding Visualizer/Assets/Scripts/Pathfinder.cs @@ -74,7 +74,12 @@ public class Pathfinder { result = StartDFS(initialState, -1); } - } + // Run IDS + if (algorithm == 2) + { + result = StartIDS(initialState); + } + } public static Stack StartAStar(Node initialState, int heuristic) { @@ -117,7 +122,7 @@ public class Pathfinder List children = currentNode.expand(-1); if (heuristic == 0) - h2(children); + h0(children); else if (heuristic == 1) h1(children); else if (heuristic == 2) @@ -203,7 +208,7 @@ public class Pathfinder List open = new List(); open.Add(initialState); - int cap = 100000; + int cap = 90000; while (true && cap > 0) { // if open is empty, we have exhausted all of our options and there is no solution @@ -211,6 +216,7 @@ public class Pathfinder return solution; Node currentNode = open[0]; + open.RemoveAt(0); // check if agent is in goal state if (currentNode.samples.Count == 0) @@ -234,7 +240,7 @@ public class Pathfinder Debug.Log("Too much work :("); return solution; } - public static Stack ids(Node initialState) + public static Stack StartIDS(Node initialState) { Debug.Log("RUNNING IDS"); Stack result = new Stack(); -- cgit v1.3.1-4-g156e