train_single_gpu.py为策略网络训练代码
train_equity.py为预训练代码
data.py为数据处理和加载代码
data_generator.py为预训练无history样本生成代码
train.toml为训练参数配置文件
cfr_py/为MCCFR的实现代码
cfr_py/calculator C++写的牌力计算器,由Swig包装,在linux可以使用,无需单独编译
agents/为可在neuron_poker环境中运行的Agent,agent_cfr.py 为我们的模型Agent
python data_generator.py x # x 替换为样本标号
运行完后将在当前目录生成名为data_x.pkl的样本(包含300000样本对)。
TODO
python train_equity.py
将使用生成的样本训练data.py中的PreTrain,作为预训练模型。
python train_single_gpu.py
将与MYCFR交互学习。
首先将agents/agent_cfr.py、agents/model.py和agents/checkpoint.pt拷贝到neuron_poker环境的agents/目录,然后在需要使用本Agent的地方调用:
from agents.agent_cfr import Player as CFRPlayer
self.env.add_player(CFRPlayer(self.env))
其中self.env为gym.make实例化的环境。
本仓库运行在如下环境中:
python==3.7
pytorch==1.6.0
numpy==1.18.1
scipy
tensorboard
tensorboardX
建议在linux下运行,其他系统没有测试。
如果在运行时出现任何问题,欢迎联系:{liangsusan18, lilongcheng18, chenyanfan18}@mails.ucas.ac.cn。
