class_docstr: A basic RL graph manager creates the common scheme of RL where there is a single agent which interacts with a
  single environment.
code: def __init__(
      self,
      agent_params: AgentParameters,
      env_params: EnvironmentParameters,
      schedule_params: ScheduleParameters,
      vis_params: VisualizationParameters = VisualizationParameters(),
      preset_validation_params: PresetValidationParameters = PresetValidationParameters(),
      name="simple_rl_graph",
  ):
      super().__init__(name, schedule_params, vis_params)
  
      self.agent_params = agent_params
      self.env_params = env_params
      self.preset_validation_params = preset_validation_params
      self.agent_params.visualization = vis_params
  
      if self.agent_params.input_filter is None:
          if env_params is not None:
              self.agent_params.input_filter = (
                  env_params.default_input_filter()
              )
          else:
              # In cases where there is no environment (e.g. batch-rl and imitation learning), there is nowhere to get
              # a default filter from. So using a default no-filter.
              # When there is no environment, the user is expected to define input/output filters (if required) using
              # the preset.
              self.agent_params.input_filter = NoInputFilter()
      if self.agent_params.output_filter is None:
          if env_params is not None:
              self.agent_params.output_filter = (
                  env_params.default_output_filter()
              )
          else:
              self.agent_params.output_filter = NoOutputFilter()
  
file_path: coach/rl_coach/graph_managers/basic_rl_graph_manager.py
imports: from typing import Tuple, List
  from rl_coach.base_parameters import AgentParameters, VisualizationParameters, TaskParameters, PresetValidationParameters
  from rl_coach.environments.environment import EnvironmentParameters, Environment
  from rl_coach.filters.filter import NoInputFilter, NoOutputFilter
  from rl_coach.graph_managers.graph_manager import GraphManager, ScheduleParameters
  from rl_coach.level_manager import LevelManager
  from rl_coach.utils import short_dynamic_import
label_desc: Use image node_id 1 to create a new BasicRLGraphManager object from inherited base classes: GraphManager with example: obj = BasicRLGraphManager(agent_params, env_params, schedule_params, vis_params, preset_validation_params, name)