class_docstr: A world model used for simulation. Underlying is an RNN with fixed
  parameters. Given a sequence of actions and states, it outputs the next
  state's mixture means and reward.
code: def __init__(
      self,
      action_dim,
      state_dim,
      num_gaussians,
      lstm_num_hidden_layers,
      lstm_num_hiddens,
  ) -> None:
      super().__init__()
      self.action_dim = action_dim
      self.state_dim = state_dim
      self.num_gaussians = num_gaussians
      self.lstm_num_hidden_layers = lstm_num_hidden_layers
      self.lstm_num_hiddens = lstm_num_hiddens
      self.init_lstm()
      self.init_weight()
      self.init_hidden()
      self.eval()
  
file_path: ReAgent/reagent/test/world_model/simulated_world_model.py
imports: import torch
  import torch.nn
label_desc: Use image node_id 1 to create a new SimulatedWorldModel object from inherited base classes: nn with example: obj = SimulatedWorldModel(action_dim, state_dim, num_gaussians, lstm_num_hidden_layers, lstm_num_hiddens)