def reset(grid, think, view): gr.fillByRowLines(vals) # grid.copyFrom(gridInit) mem = SudoMemory() view = SudoGridView(grid) think = SudoThinking(mem, view) ## think.init(mem) ui.display("Le test est réinitialisé")
def reset(): '''remet la grille de test dans son état initial et renouvelle les instances 'mem' et 'tech'. ''' global mem mem = SudoMemory() global tech1 tech1 = TechChRCgrid(mem, (1, )) global tech2 tech2 = TechChRCgrid(mem, (8, )) gr.fillByRowLines(vals) ui.displayGridClear() ui.displayGridAll(grid)
def newGame(): global grid global mem global think global view global game resetGrid() mem = SudoMemory() think = SudoThinking(mem) view = SudoGridView(grid) #view = SudoGridView(grid, env=self._env) game = SudoGame(mem, think, view) return
def makeGameRessources(self, grid): '''Crée un ensemble de ses ressources cognitives de résolution : mémoire, réflexion et interaction avec une grille. Retourne ces objets dans une liste. ''' TEST = self.env.TEST TEST.display("player", 3, "SudoPlayer - dans _initGame()") TEST.display("player", 2, "Préparation du joueur pour la partie...") assert self._initOk assert isinstance(grid, SudoGrid) #préparation de la mémoire du joueur pour la partie try: mem = SudoMemory(self._memProfile, env=self.env) except: ui.displayError("Erreur", "Impossible de créer la mémoire de jeu.") #self._mem = None raise Sudoku_Error("new SudoMemory fail in SudoPlayer.initGame()") #préparation de la pensée du joueur pour la partie try: think = SudoThinking(mem, self._thinkProfile, env=self.env) except: ui.displayError("Erreur", "Impossible de créer la pensée.") #self._think = None raise Sudoku_Error( "new SudoThinking fail in SudoPlayer.initGame()") #création de la vue sur la grille try: view = SudoGridView(grid, env=self.env) except: ui.displayError("Erreur", "Impossible de créer la vue sur la grille.") #self._view = None raise Sudoku_Error( "new SudoGridView fail in SudoPlayer.initGame()") #ok return (mem, think, view)
#mode GUI ui.UImode(ui.GUI) TEST.displayUImode(MODE_BOTH, 1) #Grille TEST.display("main", 1, "\nCréation de la grille") grid = sudogrid.SudoGrid() gridInit = sudogrid.SudoGrid() newGrid() ui.display("\nTest du module techlplcr") ui.display("Test de la technique de résolution LastPlcRow") ui.display("------------------------------------------\n") ui.display("\nVariable SudoMemory : mem") mem = SudoMemory() ui.display("Variable SudoObserver : obs") ui.display("Instance de la technique de résolution : tech") tech = TechLastPlcRow(mem, (1, )) ui.display("\nTEST au niveau 3\n") TEST.test("loop", 0) ui.sudoPause() def reset(): '''remet la grille de test dans son état initial et crée de nouvelles instances de la technique de résolution. ''' del (mem) del (tech1) del (tech2)
else: return lastTech.techName() ##TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST ##TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST if __name__ == "__main__": env = sudoenv.SudoEnv("TEST THINKAI") TEST = env.TEST TEST.levelAll(0) #lancement de l'AI ui.display("\nSIMULATION : Lancement de l'AI") mem = SudoMemory(env=env) TEST.level("memory", 0) tai = SudoThinkAI(mem, env=env) TEST.test("thinkai", 3) TEST.test("ai", 3) #affichage des données initiales ui.display("\nSIMULATION : Données initiales :") tai._aiData.disp() #simulation : premier appel par Thinking ui.display("\nSIMULATION : Premier appel par Thinking") TEST.pause("thinkai", 1) da = tai.decideAction() #simulation : la première technique a fait une observation