"""Defines a static agent which does not learn. This is useful for defining objects inthe environment."""fromtypingimportTYPE_CHECKING,Listfromcambrian.agents.agentimportMjCambrianAgent2D,MjCambrianAgentConfigifTYPE_CHECKING:fromcambrian.envs.envimportMjCambrianEnv
[docs]classMjCambrianAgentObject(MjCambrianAgent2D):"""This is a class which defines an object agent. An object agent is essentially a non-trainable agent. It's simply an object in the environment which has no observations or actions. """def__init__(self,config:MjCambrianAgentConfig,name:str,):assertnotconfig.trainable,"Object agents cannot be trainable"super().__init__(config,name)