diff --git a/game/src/test/java/research/AITest.java b/game/src/test/java/research/AITest.java index dc24847..08a6d7d 100644 --- a/game/src/test/java/research/AITest.java +++ b/game/src/test/java/research/AITest.java @@ -23,27 +23,51 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; -import java.text.DecimalFormat; import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; public class AITest { + private static String fileName = "gameDataThreads.csv"; + private static List matchupList = new ArrayList(); private static List dataList = new ArrayList(); private static List gameDataList = new ArrayList(); +// @BeforeAll +// public static void init() { +// +// var versions = new ArtificialPlayer[4]; +// versions[0] = new ArtificialPlayer(new MCTSAI1(10), "MCTS V1"); +// versions[1] = new ArtificialPlayer(new MCTSAI2(10), "MCTS V2"); +// versions[2] = new ArtificialPlayer(new MCTSAI3(10), "MCTS V3"); +// versions[3] = new ArtificialPlayer(new MCTSAI4(10), "MCTS V4"); +// +// for (int i = 0; i < versions.length; i++) { +// for (int j = i + 1; j < versions.length; j++) { +// final int playerIndex1 = i % versions.length; +// final int playerIndex2 = j % versions.length; +// addMatch(versions[playerIndex1], versions[playerIndex2]); +// addMatch(versions[playerIndex2], versions[playerIndex1]); // home vs away system +// } +// } +// } + @BeforeAll public static void init() { - var versions = new ArtificialPlayer[4]; - versions[0] = new ArtificialPlayer(new MCTSAI1(10), "MCTS V1"); - versions[1] = new ArtificialPlayer(new MCTSAI2(10), "MCTS V2"); - versions[2] = new ArtificialPlayer(new MCTSAI3(10), "MCTS V3"); - versions[3] = new ArtificialPlayer(new MCTSAI4(10), "MCTS V4"); + var versions = new ArtificialPlayer[9]; + versions[0] = new ArtificialPlayer(new MCTSAI3(10, 1), "MCTS V3T1"); + versions[1] = new ArtificialPlayer(new MCTSAI3(10, 2), "MCTS V3T2"); + versions[2] = new ArtificialPlayer(new MCTSAI3(10, 4), "MCTS V3T4"); + versions[3] = new ArtificialPlayer(new MCTSAI3(10, 8), "MCTS V3T8"); + versions[4] = new ArtificialPlayer(new MCTSAI3(10, 16), "MCTS V3T16"); + versions[5] = new ArtificialPlayer(new MCTSAI3(10, 128), "MCTS V3T128"); + versions[6] = new ArtificialPlayer(new MCTSAI3(10, 256), "MCTS V3T256"); + versions[7] = new ArtificialPlayer(new MCTSAI3(10, 512), "MCTS V3T512"); + versions[8] = new ArtificialPlayer(new MCTSAI3(10, 1024), "MCTS V3T1024"); for (int i = 0; i < versions.length; i++) { for (int j = i + 1; j < versions.length; j++) { @@ -121,15 +145,15 @@ public class AITest { ) { try { - var ai110 = iterationsAI1.subList(0, 9); - var ai120 = iterationsAI1.subList(10, 19); + var ai110 = iterationsAI1.subList(0, 10); + var ai120 = iterationsAI1.subList(10, 20); var ai130 = iterationsAI1.subList(20, iterationsAI1.size()); - var ai210 = iterationsAI2.subList(0, 9); - var ai220 = iterationsAI2.subList(10, 19); + var ai210 = iterationsAI2.subList(0, 10); + var ai220 = iterationsAI2.subList(10, 20); var ai230 = iterationsAI2.subList(20, iterationsAI2.size()); - writeGamesToCSV("gameData.csv", new GameData( + writeGamesToCSV(fileName, new GameData( AI1, AI2, getWinnerForMatch(AI1, AI2, match),