Рубрики
Без рубрики

Непретендентивная игра Tic Tac Toe с использованием MiniMax

Чтобы сделать традиционную игру Tac Tac Toe непобедимым, необходимо создать алгоритм … Помечено Python, обсудить, Github, git.

Для того, чтобы сделать традиционную игру Tic Tac Toe непобедимым, необходимо создать алгоритм, который может рассчитать все возможные перемещения, доступные для компьютера, и могут использовать это, чтобы определить наилучшее возможное движение.

Введение

Чтобы решить игры с использованием AI, мы введем концепцию игры для игры, а затем алгоритм MiniMax. Этот алгоритм впереди видит несколько шагов и ставит себя в обувь своего противника. Он продолжает играть впереди, пока он не достигнет терминала договоренности о доске (терминал), что приводит к галстуке, победу или потере. Один раз в терминальном состоянии AI назначает произвольное положительное оценку (+10) для победы, отрицательной оценки (-10) для потери или нейтральной оценки (0) для галстука.

В то же время алгоритм оценивает ходы, которые приводят к терминальному состоянию на основе поворота игроков. Он выберет шаг с максимальной оценкой, когда он является поворотом AI и выберите движение с минимальным баллом, когда он является поворотом человека человека. Используя эту стратегию, MiniMax избегает потерять человека.

Что такое минимакс?

MiniMax (Иногда Minmax, MM или Saddle Point) – это правило принятия решения, используемое при искусственном интеллекте, теории решений, теории игр, статистики и философию для минимизации возможной потери для наихудшего случая (максимально потери) сценария. При работе с прибылью он называется «Максимин» – чтобы максимизировать минимальную выгоду Отказ Первоначально сформулирован для теории игры N-PLAYER NOL-SUM (один игрок выигрывает (+10) и другие проигрывает (-10) или оба из тех, кто не выиграл (0)), охватывающий оба случаи, когда игроки принимают альтернативные движения и те где они делают одновременные ходы, он также был распространен на более сложные игры и общее принятие решений в присутствии неопределенности.

Как это работает?

Чтобы проверить, лучше ли текущий шаг лучше, чем лучший шаг, мы принимаем помощь в MiniMax Function, которая рассмотрит все возможные способы игры, которые могут пойти и возвращать наилучшее значение для этого хода, предполагая, что противник также оптимально играет, пока не найдет терминальное состояние (победа, нарисовать или проиграть).

Игра Дерево

Изображение:

Объяснение:

Это изображение изображает все возможные пути, которые игра может забрать из корневой платы. Это часто называют деревом игры. 3 возможных сценария в приведенном выше примере:

  • Левый ход: если x играет [2,0]. Тогда o будет играть [2,1] и выиграть игру. Значение этого движения –10
  • Средний ход: если X играет [2,1]. Тогда o будет играть [2,2], что рисует игру. Значение этого движения равно 0
  • Правильный ход: если x играет [2,2]. Затем он выиграет игру. Значение этого движения составляет +10;

Помните, что хотя X имеет возможность выиграть, если он играет в среднем ходу, o никогда не позволит этому случиться и выберете вместо этого. Поэтому лучший выбор для X, – это воспроизведение [2,2], что гарантирует ему победу.

Ссылка GitHub для исходного кода:

DHHRUV/TIC-TAC-TOE

🎃 Непревзойденная TIC TAC TAC Goye игра с использованием алгоритма MiniMax.

Использованная литература:

Оригинал: “https://dev.to/dhhruv/unbeatable-tic-tac-toe-game-using-minimax-ogn”