Обучение ИИ игре в настольные игры

Обучение искусственного интеллекта игре в настольные игры

Использование рекурсивного обучения с нуля для обучения компьютера игре в крестики-нолики

Изображение автора (создано с помощью ChatGPT)

О чем это?

Похоже, что все в сфере искусственного интеллекта в настоящее время совершенствуют свои навыки рекурсивного обучения, особенно в Q-обучении, в связи со слухами о новой модели искусственного интеллекта от OpenAI, Q*. Я тоже присоединяюсь к ним. Однако, вместо спекуляций о Q* или повторного рассмотрения старых статей и примеров по Q-обучению, я решил использовать свою страсть к настольным играм, чтобы ввести вас в Q-обучение 🤓

В этом блоге я создам простую программу с нуля, чтобы обучить модель игре в крестики-нолики (КН). Я воздержусь от использования каких-либо библиотек для Q-обучения, таких как Gym или Stable Baselines; все будет написано на чистом Python, и скрипт составит всего около 100 строк. Если вам интересно, как научить ИИ играть в игры, продолжайте читать.

Вы можете найти весь код на GitHub по ссылке https://github.com/marshmellow77/tictactoe-q.

Почему это важно?

Обучение искусственного интеллекта игре в крестики-нолики может показаться не очень важным. Однако это предоставляет (возможно) ясное и понятное введение в Q-обучение и рекурсивное обучение, что может быть важно в области генеративного искусственного интеллекта (GenAI), поскольку существуют предположения о том, что самостоятельные модели GenAI, такие как GPT-4, недостаточно для значительных прорывов. Они ограничены тем, что могут только предсказывать следующий токен и не способны рассуждать. Считается, что рекурсивное обучение может устранить эту проблему и, возможно, улучшить ответы моделей GenAI.

Независимо от того, стремитесь ли вы улучшить свои навыки рекурсивного обучения в ожидании таких прорывов или просто ищете интересное введение в Q-обучение, этот учебник разработан для обоих сценариев 🤗

Понимание Q-обучения

В основе своей Q-обучение является алгоритмом, который учитывает ценность действия в определенном состоянии и затем использует эту информацию для поиска лучшего действия. Рассмотрим, например, игру Frozen Lake, популярную одиночную игру, используемую для демонстрации Q-обучения.