public void test2_timings() { int maxDepth = 7; var gameTree = new GameTreeOld(); var results = new List <string>(); //for(int depth = 1; depth < maxDepth; depth++) //{ // var sw = System.Diagnostics.Stopwatch.StartNew(); // int count = gameTree.IteratePaths(new Node(0), depth).Count(); // long time = sw.ElapsedMilliseconds; // results.Add($"depth:{depth}, count:{count}, time:{time}ms"); //} //for (int depth = 1; depth < maxDepth; depth++) //{ // var sw = System.Diagnostics.Stopwatch.StartNew(); // int count = 0; // for(int i=0; i<Math.Pow(30, depth-1); i++) // { // count++; // } // long time = sw.ElapsedMilliseconds; // results.Add($"depth:{depth}, count:{count}, time:{time}ms"); //} //for (int depth = 1; depth < maxDepth; depth++) //{ // var sw = System.Diagnostics.Stopwatch.StartNew(); // var r = gameTree.AlphaBeta(new Node(0), depth: depth, alpha: 1, beta: 1, isMaximizingPlayer: true); // long time = sw.ElapsedMilliseconds; // results.Add($"depth:{depth}, value:{r.Value}, time:{time}ms"); //} for (int depth = 1; depth < maxDepth; depth++) { var initialState = StateFactory.GetDefaultStartingState(); var initialNode = new Node(initialState, new Chess.Old.Move()); var sw = System.Diagnostics.Stopwatch.StartNew(); var r = gameTree.AlphaBetaRecursive(initialNode, depth: depth - 1, isMaximizingPlayer: true); long time = sw.ElapsedMilliseconds; results.Add($"depth:{depth}, value:{r}, time:{time}ms"); } }