docs: def calculate_positions(self, first_bee_val, second_bee_val, value_range):
          '''Calculate the new value/position for two given bee values
  
          Args:
              first_bee_val (int or float): value from the first bee
              second_bee_val (int or float): value from the second bee
              value_ranges (tuple): "(value type, (min_val, max_val))" for the
                  given value
  
          Returns:
              int or float: new value
          '''
  
          value = first_bee_val + np.random.uniform(-1, 1) \
              * (first_bee_val - second_bee_val)
          if value_range[0] == 'int':
              value = int(value)
          if value > value_range[1][1]:
              value = value_range[1][1]
          if value < value_range[1][0]:
              value = value_range[1][0]
  
          return value