changement dans la façon qu'il apprend

This commit is contained in:
2024-06-04 12:08:46 +02:00
parent b40750c4ed
commit 99c814c37f
6 changed files with 52 additions and 46 deletions

View File

@@ -8,46 +8,44 @@ import tests.IATest;
public class Main {
public static void main(String[] args) {
// Personnage.n = 4;
Personnage.n = 4;
// Map map = new Map(12, 22);
Map map = new Map(12, 22);
// // lancer en local
// if (args.length < 2) {
// Grid[][] grid = map.getGrid();
if (args.length < 2) {
Grid[][] grid = map.getGrid();
// QTable qTable1 = new QTable();
// qTable1.getValues("path_to_save_qtable1.ser");
// QTable qTable1 = new QTable();
// qTable1.getValues("res" + File.separator + "save" + File.separator + "learn1.ser");
// QTable qTable2 = new QTable();
// qTable2.getValues("path_to_save_qtable2.ser");
// QTable qTable2 = new QTable();
// qTable2.getValues("res" + File.separator + "save" + File.separator + "learn1.ser");
// // Avant de jouer contre l'ia, vous pouvez essayer de l'entrainer avec la fonction tests.IATest.learnIAvsIA()
// // il jouera avec lui meme et mettra les sauvegardes dans le dossier learn.ser,
// // Avant de jouer contre l'ia, vous pouvez essayer de l'entrainer avec la fonction tests.IATest.learnIAvsIA()
// // il jouera avec lui meme et mettra les sauvegardes dans le dossier learn.ser,
// // Attention lors de l'apprentissage, ne pas couper le processus sinon vous allez perdre toute vos donnees
// Personnage[] personnages = new Personnage[] {
// new IAQLearning(new int[] {2, 2}, qTable1),
// // new Player(new int[] {2, 2}, "Philippe Etchebest"),
// // new Player(new int[] {grid[0].length - 3, grid.length - 3}, "Luke Skywalker"),
// // new Robot("Robot", new int[] {grid[0].length - 3, grid.length - 3}),
// new IAQLearning(new int[] {grid[0].length - 3, grid.length - 3}, qTable2),
// };
// // Attention lors de l'apprentissage, ne pas couper le processus sinon vous allez perdre toute vos donnees
Personnage[] personnages = new Personnage[] {
// new IAQLearning(new int[] {2, 2}, qTable1),
new Player(new int[] {2, 2}, "Philippe Etchebest"),
new Player(new int[] {grid[0].length - 3, grid.length - 3}, "Luke Skywalker"),
// new Robot("Robot", new int[] {grid[0].length - 3, grid.length - 3}),
// new IAQLearning(new int[] {grid[0].length - 3, grid.length - 3}, qTable2),
};
// // map.addObjectsRandomize(new Item[] {Item.FRAISE, Item.WALL}, 2);
// // map.addObjects(Item.FRAISE, 2, 2);
// map.addObjectsRandomize(new Item[] {Item.FRAISE, Item.WALL}, 2);
// map.addObjects(Item.FRAISE, 2, 2);
// new Terminal(map, personnages).run();
// }
new Terminal(map, personnages).run();
}
// // lancer en ligne
// else {
// Personnage[] personnages = new Personnage[] {
// new Player(new int[] {0, 0}, "Philippe Etchebest"),
// };
else {
Personnage[] personnages = new Personnage[] {
new Player(new int[] {0, 0}, "Philippe Etchebest"),
};
// new Terminal(map, personnages).run(args[0], args[1]);
// }
IATest.learnIAvsIA();
new Terminal(map, personnages).run(args[0], args[1]);
}
}
}