Это реализация алгоритма Alphazero для игры в простую настольную игру Gomoku (также называемой Gobang или пять подряд) из чистого самостоятельного обучения. Игра Gomoku намного проще, чем Go или в шахматах, так что мы можем сосредоточиться на схеме обучения Alphazero и получить довольно хорошую модель ИИ на одном ПК через несколько часов.
Ссылки:
Чтобы играть с обученными моделями ИИ, только необходимость:
Чтобы обучить модель ИИ с нуля, дальнейшая потребность, либо:
PS : если версия вашего Theano> 0.7, пожалуйста, следуйте этой проблеме, чтобы установить лазанью,
В противном случае, Force Pip понизил TheAno до 0,7 pip install --upgrade theano==0.7.0
Если вы хотите обучить модель, используя другие фреймворки DL, вам нужно только переписать Police_value_net.py.
Чтобы играть с предоставленными моделями, запустите следующий сценарий из каталога:
python human_play.py
Вы можете изменить Human_play.py, чтобы попробовать разные предоставленные модели или чистые MCT.
Чтобы обучить модель ИИ с нуля, с Theano и Lasagne, прямо бегу:
python train.py
С помощью pytorch или tensorflow сначала измените файл train.py, т.е. прокомментируйте строку
from policy_value_net import PolicyValueNet # Theano and Lasagne
и расстроен линию
# from policy_value_net_pytorch import PolicyValueNet # Pytorch
or
# from policy_value_net_tensorflow import PolicyValueNet # Tensorflow
и затем выполнить: python train.py (для использования графического процессора в pytorch, set use_gpu=True и используйте return loss.item(), entropy.item() в функции Train_step в Police_value_net_pytorch.py, если ваша версия pytorch больше 0,5)
Модели (best_policy.model и current_policy.model) будут сохранены каждые несколько обновлений (по умолчанию 50).
Примечание. 4 предоставленные модели были обучены с использованием Theano/Lasagne, чтобы использовать их с Pytorch, пожалуйста, обратитесь к выпуску 5.
Советы по обучению:
Моя статья, описывающая некоторые подробности о реализации на китайском языке: https://zhuanlan.zhihu.com/p/32089487