완벽하게 작동하는 Tic Tac Toe 게임이 있지만 가지고있는 MiniMax 알고리즘을 변경할 수있는 방법이 있습니다. 따라서 어떤면에서는 더 간단하고 심지어 단락 된 경우도 있습니다.Tic Tac Toe의 Simplify MiniMax 알고리즘
def maximized_move(self,gameinstance):
''' Find maximized move'''
bestscore = None
bestmove = None
for m in gameinstance.get_free_positions():
gameinstance.mark(self.marker,m)
if gameinstance.is_gameover():
score = self.get_score(gameinstance)
else:
move_position,score = self.minimized_move(gameinstance)
gameinstance.revert_last_move()
if bestscore == None or score > bestscore:
bestscore = score
bestmove = m
return bestmove, bestscore
def minimized_move(self,gameinstance):
''' Find the minimized move'''
bestscore = None
bestmove = None
for m in gameinstance.get_free_positions():
gameinstance.mark(self.opponentmarker,m)
if gameinstance.is_gameover():
score = self.get_score(gameinstance)
else:
move_position,score = self.maximized_move(gameinstance)
gameinstance.revert_last_move()
if bestscore == None or score < bestscore:
bestscore = score
bestmove = m
return bestmove, bestscore
오전,하지만 난 코드가 ABIT complicted 그냥 내가 어떤 식 으로든이 문제를 단순화 할 수있는 방법이 있는지 궁금하다고 생각합니다. 나는 Alpha Beta Priuning에 관해 많은 것을 배웠다. 감사 – user3535340