Разработчик создал нейросетевой ИИ для игры в «Точки» и выпустил демоверсию проекта под названием Just Dots в Steam. Обучение модели основано на подходе AlphaZero: нейросеть самостоятельно генерирует данные, играя партии против самой себя. На текущий момент обучено 30 поколений модели.
Процесс обучения занимает от 3 часов для полей 9x9 и 11x11 до 35 часов для полей 25x25. Модель разработана на Python с использованием библиотеки PyTorch и перенесена в игру на C# через формат ONNX. В демоверсии доступны поля 15x15 и 20x20, а также три уровня сложности.
Для легкого уровня сложности разработчик внедрил отдельный алгоритм на основе эвристических правил, так как нейросеть оказалась слишком сильной для новичков. В планах на декабрь — полноценный релиз, добавление классического поля 39x32 и четвертого уровня сложности «Хардкор».
В ходе работы автор столкнулся с тем, что кэширование дерева поиска, повышающее силу бота, негативно влияло на обучение: из-за роста числа ничьих модель получала меньше примеров победных стратегий. В итоге кэширование используется в самой игре, но отключается при генерации обучающих партий.






