Source code for aind_behavior_gym.dynamic_foraging.agent.random_agent

"""A Random agent
"""

from aind_behavior_gym.dynamic_foraging.agent import DynamicForagingAgentBase
from aind_behavior_gym.dynamic_foraging.task import IGNORE, L, R


[docs] class RandomAgent(DynamicForagingAgentBase): """A Random agent"""
[docs] def act(self, observation): """Simply random choose in the action space""" return self.rng.choice(self.n_actions)
[docs] def learn(self, observation, action, reward, next_observation, done): """No learning for a random agent""" pass
[docs] class RandomAgentBiasedIgnore(RandomAgent): """A biased agent with ignores"""
[docs] def act(self, *args): """Random choose from three actions""" return [L, R, IGNORE][self.rng.choice([0] * 100 + [1] * 20 + [2] * 1)]