Offline RL

behavior policy

Someone — or something — generated your dataset. The behavior policy is whatever rule produced the actions you see in the log: a human operator, an old controller, a previous RL agent, even a random one. You may not know it explicitly; you only ever see the actions it took.

In offline RL the behavior policy defines the data distribution, and therefore the boundary of what you can trust. Many methods estimate it — usually by behavior cloning — so they can measure how far a candidate policy strays from it, or stay close to it on purpose.

Its quality sets a soft floor and a hard ceiling. A near-random behavior policy gives broad but shallow coverage; a near-expert one gives narrow but deep coverage. Either way, you can only learn confidently about the actions it actually tried.

\pi_\beta(a\mid s)

The (often unknown) behavior policy π_β that generated every transition in the dataset.

Also called
data-collecting policylogging policy