我有一个程序执行国际象棋的蒙特卡洛树搜索。从头开始,使用pickle保存对象(类实例)并将其加载到某个文件中将使程序(MCTS)与我存储对象的位置相同。本质上是复制程序,而不是使对象的值处于写入.pkl文件之前的状态。
我做了什么:
with open('chess_agent.pkl', 'rb') as data:
agent = _pickle.load(data)
它将与我保存对象的文件完全相同地运行MCTS。我只需要获取实例并将其值保存在保存它的文件中即可。
我如何保存:
with open('chess_agent.pkl', 'wb') as f:
_pickle.dump(Object, f)
由于该对象具有太多的值和与之关联的对象,并且如果MCTS运行了一段时间,那么如果由于某种原因该程序停止运行,则失去所有进度将很可惜。