def __init__(self, exploration_factor=1): super().__init__(exploration_factor) self.epsilon = 0.1 self.alpha = 0.5 self.prev_state = EasyBoard.EasyBoard().getState() + cardDeck.CardDeck( ).getState() self.state = None self.print_value = False
def main(): game = cardDeck.CardDeck() game.shuffleDeck() game.getDeck() game.getHand() game.drawTop() game.getDeck() game.getHand() return
def testRoutine(): easyBoardTest = EasyBoard() cardDeckTest = cardDeck.CardDeck() print(easyBoardTest.getState()) easyBoardTest.makeMove(0, '6') easyBoardTest.makeMove(1, 'c2') easyBoardTest.makeMove(2, 's') print(easyBoardTest) print(easyBoardTest.getState()) print('Points: ' + str(easyBoardTest.calculateScore())) print(easyBoardTest.getValidMoves()) print(easyBoardTest.previewMove(1, '6')) print(easyBoardTest) print(easyBoardTest.getState() + cardDeckTest.getState()) print(easyBoardTest.getStateLen() + 1)
def testRoutine(): tokyoBoardTest = TokyoBoard() cardDeckTest = cardDeck.CardDeck() print(tokyoBoardTest.getState()) tokyoBoardTest.makeMove(4, '6') tokyoBoardTest.makeMove(5, 'c2') tokyoBoardTest.makeMove(5, 's') tokyoBoardTest.makeMove(4, '6') tokyoBoardTest.makeMove(4, '6') print(tokyoBoardTest) print(tokyoBoardTest.getState()) print('Points: ' + str(tokyoBoardTest.calculateScore())) print(tokyoBoardTest.getValidMoves()) print(tokyoBoardTest.previewMove(1, '6')) print(tokyoBoardTest) print(tokyoBoardTest.getState() + cardDeckTest.getState())
def simulate(times=1000): timesLeft = times score = 0 reward = 0 while (timesLeft > 0): timesLeft -= 1 board = EasyBoard.EasyBoard() deck = cardDeck.CardDeck() while board.gameOver() == False: move = random.choice(board.getValidMoves()) board.makeMove(move, deck.currentCard) deck.nextCard() if board.gameOver() == True: score += board.calculateScore() reward += board.calculateReward() print('Game ' + str(times - timesLeft)) print('Avg Score: ' + str(score / times)) print('Avg Score: ' + str(reward / times))
def init_game(self): self.board = EasyBoard.EasyBoard() self.gameEnd = False self.cardDeck = cardDeck.CardDeck()