Пример #1
0
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é")
Пример #2
0
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)
Пример #3
0
 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
Пример #4
0
 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)
Пример #5
0
    #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)
Пример #6
0
        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