class_docstr: Implements a random structured policy.
  
  :param action_spaces_dict: The action_spaces dict of the env (will sample from it).
class_docstr_tok: ["Implements","a","random","structured","policy",".",":","param","action_spaces_dict",":","The","action_spaces","dict","of","the","env","(","will","sample","from","it",")","."]
docstr: Sample multiple random actions from the provided action space (and assign uniform probabilities
  to the sampled actions).
docstr_tok: ["Sample","multiple","random","actions","from","the","provided","action","space","(","and","assign","uniform","probabilities","to","the","sampled","actions",")","."]
code: def compute_top_action_candidates(
      self,
      observation: ObservationType,
      num_candidates: Optional[int],
      maze_state: Optional[MazeStateType],
      env: Optional[BaseEnv],
      actor_id: ActorID = None,
  ) -> Tuple[Sequence[ActionType], Sequence[float]]:
      """Sample multiple random actions from the provided action space (and assign uniform probabilities
      to the sampled actions)."""
      candidates = []
      for _ in range(num_candidates):
          candidates.append(
              self.compute_action(
                  observation=observation,
                  maze_state=maze_state,
                  env=env,
                  actor_id=actor_id,
              )
          )
  
      return candidates, [1.0 / num_candidates] * num_candidates
  
imports: from typing import Union, Dict, Tuple, Sequence, Optional
  import numpy
  from gym import spaces
  from omegaconf import DictConfig
  from maze.core.agent.policy import Policy
  from maze.core.annotations import override
  from maze.core.env.action_conversion import ActionType
  from maze.core.env.base_env import BaseEnv
  from maze.core.env.maze_state import MazeStateType
  from maze.core.env.observation_conversion import ObservationType
  from maze.core.env.structured_env import ActorID
  from maze.core.utils.config_utils import make_env
  from maze.core.utils.seeding import MazeSeeding
  from maze.core.wrappers.observation_normalization.observation_normalization_wrapper import ObservationNormalizationWrapper
  from maze.train.utils.train_utils import stack_numpy_dict_list
  from maze.utils.process import query_cpu
label_desc: Use image node_id 5 for calling the RandomPolicy obj's underlying member method code with example usage: obj.compute_top_action_candidates(observation, num_candidates, maze_state, env, actor_id) and returns: candidates,  unknown