docs: def initialize(self, grid, num_of_paths, seed):
          """ inits producer for a simulation run """
          for p in self.producers:
              p.initialize(grid, num_of_paths, seed)
          self.grid = grid
          self.num_of_paths = num_of_paths
          self.seed = seed