public void LoadAndReplay() { var dir = new DirectoryInfo(@"C:\Code\AIGames.Challenger\games\texas-hold-em"); var bot = new ACDCBot(); bot.Actor.Nodes.Clear(); foreach (var file in dir.GetFiles("*.log")) { using (var platform = new ConsolePlatformTester(file)) { platform.DoRun(bot); } } var nodes = new List<Node>(bot.Actor.Nodes); nodes.Sort(); nodes.Save(new FileInfo(@"C:\temp\data.bin")); using (var writer = new StreamWriter(@"C:\temp\data.log")) { foreach (var node in nodes) { writer.WriteLine(node); } } }
private static ACDCBot GetBot(NeuralNetwork <ActionOption> network, PlayerName name, MT19937Generator rnd) { var bot = new ACDCBot(network, rnd) { Settings = new Settings() { YourBot = name, }, }; return(bot); }
public void GetP_Range_AreEqual() { var state = new GameState(); var tests = new int[] { 60, 100, 300, 400, 1000, 1800, 1900, 2000, 2100, 3000, 19 }; var exp = new double[] { 0.0228, 0.0251, 0.0398, 0.0495, 0.1513, 0.4183, 0.4589, 0.5, 0.5411, 0.8487, 0 }; for (var i = 0; i < tests.Length; i++) { var z = Math.Round(ACDCBot.GetP(tests[i], state), 4); Console.WriteLine(z); Assert.AreEqual(exp[i], z, "GetZ({0}) should lead to {1}.", tests[i], exp[i]); } }
private static ACDCBot GetBot(NodeCollection nodes, PlayerName name, MT19937Generator rnd) { var bot = new ACDCBot(nodes, rnd) { Settings = new Settings() { YourBot = name, }, }; return bot; }