コード例 #1
0
ファイル: minimax.py プロジェクト: eduardosanzb/tic-tac-toe
 def pickMaxMin(self, board, marker):
     moves = board.getMoves()
     pairs = []
     for (x, y) in moves:
         temp = board.clone()
         temp.move(x, y, marker)
         if temp.finished():
             score = self.evalBoard(temp)
         else:
             pick = self.pickMaxMin(temp, self.flip(marker))
             score = pick[1]
         pairs.append(((x, y), score))
     pairs.sort(key=lambda x: x[1])
     if marker == self.marker:
         index = -1
     else:
         index = 0
     return pairs[index]
コード例 #2
0
ファイル: minimax.py プロジェクト: bwaldrep/tic-tac-toe
 def pickMaxMin(self, board, marker):
     moves = board.getMoves()
     pairs = []
     for (x,y) in moves:
         temp = board.clone()
         temp.move(x,y,marker)
         if temp.finished():
             score = self.evalBoard(temp)
         else:
             pick = self.pickMaxMin(temp, self.flip(marker))
             score = pick[1]
         pairs.append(((x,y),score))
     pairs.sort(key=lambda x:x[1])
     if marker == self.marker:
     	  index = -1
     else:
       	index = 0
     return pairs[index]
コード例 #3
0
 def getMove(self, board):
     options = board.getMoves()
     return self.oracle.choice(options)