code: def threehump(x):
      """Three-hump camel objective function
  
      Only takes two dimensions and has a global minimum of `0` at
      :code:`f([0, 0])`. Its coordinates are bounded within
      :code:`[-5, 5]`.
  
      Best visualized in the full domin and a range of :code:`[0, 2000]`.
  
      Parameters
      ----------
      x : numpy.ndarray
          set of inputs of shape :code:`(n_particles, dimensions)`
  
      Returns
      -------
      numpy.ndarray
          computed cost of size :code:`(n_particles, )`
  
      Raises
      ------
      IndexError
          When the input dimensions is greater than what the function
          allows
      ValueError
          When the input is out of bounds with respect to the function
          domain
      """
      if not x.shape[1] == 2:
          raise IndexError(
              "Three-hump camel function only takes two-dimensional input."
          )
      if not np.logical_and(x >= -5, x <= 5).all():
          raise ValueError(
              "Input for Three-hump camel function must be within [-5, 5]."
          )
  
      x_ = x[:, 0]
      y_ = x[:, 1]
  
      j = (
          2 * x_**2
          - 1.05 * (x_**4)
          + (x_**6) / 6
          + x_ * y_
          + y_**2
      )
  
      return j
  
file_path: pyswarms/pyswarms/utils/functions/single_obj.py
imports: import numpy
label_desc: Use image node_id 17 for calling a global function with example usage: threehump(x) and returns: j