@Smeilz1
За любое развитие

Как сохраняется стратегия в reinforcement learning?

Разбираю код программы https://github.com/Smeilz/Tic-Tac-Toe-Reinforcemen...

Что я понял?
В программе есть 2 модуля.
Qlearning.py - отвечает за обучение агентов и сохранение результата обучения
Game.py - описывает процесс игры

Вопрос как именно Qlearning делает сохранение стратегии?
1) В Train.py есть строка
game.saveStates()

2) Она ссылается на функцию в модуле game.py
def saveStates(self):
        self.player1.saveQtable("player1states")
        self.player2.saveQtable("player2states")


3)Далее эта функция ссылается на экземпляр Player1 и Player2 и функцию saveQtable в модуле QLearning.py

def saveQtable(self,file_name):  #save table
        with open(file_name, 'wb') as handle:
            pickle.dump(self.Q, handle, protocol=pickle.HIGHEST_PROTOCOL)


----------------------------------------------------
В итоге как я понимаю программа сохраняет стратегию, которая получена в результате тренировки, как поток байтов и при загрузке его декодирует обратно.

Вопросы.
1)Как именно сохраняется стратегия? Какая у нее структура? Что в данном случае сохранит параметр self?
2)Можно ли изменить код, чтобы сохранить ее в файл в читаемом виде и посмотреть формат?
3)Как сохранить тоже самое в Xml?

Заранее спасибо
  • Вопрос задан
  • 115 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы