如何使用基于规则的'expert'进行模仿学习?

How to use a rule-based 'expert' for imitation learning?

我目前正在训练 PPO 模型进行模拟。 PPO模型无法理解某些条件会导致没有奖励。

这些没有奖励的条件是非常简单的规则。 我试图使用这些规则来创建 PPO 模型可用于模仿学习的 'expert'。

基于专家的规则示例:

如果资源 A 不可用,则不要 select 该资源。

如果“X”和“Y”不匹配,则不要select那些。

带有模仿库的示例

我正在查看“模仿”python 库。 那里的例子显示了一个专家是一个迭代次数更多的PPO模型。

https://github.com/HumanCompatibleAI/imitation/blob/master/examples/1_train_bc.ipynb

问题:

有没有办法将简单的“基于规则的”专家转换为可用于模仿学习的 PPO 模型?

或者在模仿学习中使用“基于规则”的专家是否有不同的方法?

看看行为克隆是如何实现的:

from imitation.algorithms import bc

bc_trainer = bc.BC(
    observation_space=env.observation_space,
    action_space=env.action_space,
    demonstrations=transitions,
)

您只需创建演示即可。您甚至不需要编写“代理”本身。只需使用基于规则的机器人与您的环境交互生成序列,仅此而已。