class_docstr: Grid search tuner divides search space into evenly spaced grid, and performs brute-force traverse.
  
  Recommended when the search space is small, or if you want to find strictly optimal hyperparameters.
  
  **Implementation**
  
  The original grid search approach performs an exhaustive search through a space consists of ``choice`` and ``randint``.
  
  NNI's implementation extends grid search to support all search spaces types.
  
  When the search space contains continuous parameters like ``normal`` and ``loguniform``,
  grid search tuner works in following steps:
  
  1. Divide the search space into a grid.
  2. Perform an exhaustive searth through the grid.
  3. Subdivide the grid into a finer-grained new grid.
  4. Goto step 2, until experiment end.
  
  As a deterministic algorithm, grid search has no argument.
  
  Examples
  --------
  
  .. code-block::
  
      config.tuner.name = 'GridSearch'
code: def _next_vector(self):
      # iterate to next vector of this epoch, set vector to None if epoch end
      if self.vector is None:  # first vector in this epoch
          self.vector = [0] * len(self.space)
          return
  
      # deal with nested choice, don't touch nested spaces that are not chosen by current vector
      activated_dims = []
      params = self._current_parameters()
      for i, spec in enumerate(self.space.values()):
          if spec.is_activated_in(params):
              activated_dims.append(i)
  
      for i in reversed(activated_dims):
          if self.vector[i] + 1 < len(self.grid[i]):
              self.vector[i] += 1
              return
          else:
              self.vector[i] = 0
  
      self.vector = None
  
imports: import logging
  import math
  import numpy
  from scipy.special import erfinv
  import nni
  from nni.common.hpo_utils import ParameterSpec, deformat_parameters, format_search_space
  from nni.tuner import Tuner
label_desc: Use image node_id 7 for calling the GridSearchTuner obj's underlying member method code with example usage: obj._next_vector() without return types