def main(): log.info('Loading %s...', Game.__name__) g = Game() log.info('Loading %s...', nn.__name__) nnet = nn(g) if args.load_model: log.info('Loading checkpoint "%s/%s"...', args.load_folder_file) nnet.load_checkpoint(args.load_folder_file[0], args.load_folder_file[1]) else: log.warning('Not loading a checkpoint!') log.info('Loading the Coach...') c = Coach(g, nnet, args) if args.load_model: log.info("Loading 'trainExamples' from file...") c.loadTrainExamples() log.info('Starting the learning process 🎉') c.learn()
import numpy as np from utils import * """ use this script to play any two agents against each other, or play manually with any agent. """ g = Connect4Game() # all players rp = RandomPlayer(g).play gp = OneStepLookaheadConnect4Player(g).play hp = HumanConnect4Player(g).play # nnet players n1 = nn(g) #n1.load_checkpoint('./checkpoint-connect4','best.pth.tar') n1.load_checkpoint('./temp', 'best.pth.tar') args1 = dotdict({'numMCTSSims': 50, 'cpuct': 1.0}) mcts1 = MCTS(g, n1, args1) def n1p(x): probs = mcts1.getActionProb(x, temp=0) return np.argmax(probs) #n2 = NNet(g) #n2.load_checkpoint('/dev/8x50x25/','best.pth.tar') #args2 = dotdict({'numMCTSSims': 25, 'cpuct':1.0}) #mcts2 = MCTS(g, n2, args2)
args = dotdict({ 'numIters': 1000, 'numEps': 100, 'tempThreshold': 15, 'updateThreshold': 0.6, 'maxlenOfQueue': 200000, 'numMCTSSims': 25, 'arenaCompare': 40, 'cpuct': 1, 'checkpoint': './temp/', 'load_model': True, 'load_folder_file': ('temp','best.pth.tar'), 'numItersForTrainExamplesHistory': 5, }) if __name__=="__main__": g = Connect4Game() nnet = nn(g) if args.load_model: nnet.load_checkpoint(args.load_folder_file[0], args.load_folder_file[1]) c = Coach(g, nnet, args) if args.load_model: print("Load trainExamples from file") c.loadTrainExamples() c.learn()