class_docstr: Cross-in-Tray objective function.
  
  This class defines the Cross-in-Tray [1]_ global optimization problem. This is a
  multimodal minimization problem defined as follows:
  
  .. math::
  
      f_{\text{CrossInTray}}(x) = - 0.0001 \left(\left|{e^{\left|{100
      - \frac{\sqrt{x_{1}^{2} + x_{2}^{2}}}{\pi}}\right|}
      \sin\left(x_{1}\right) \sin\left(x_{2}\right)}\right| + 1\right)^{0.1}
  
  
  with :math:`x_i \in [-15, 15]` for :math:`i = 1, 2`.
  
  *Global optimum*: :math:`f(x) = -2.062611870822739` for :math:`x_i =
  \pm 1.349406608602084` for :math:`i = 1, 2`
  
  .. [1] Jamil, M. & Yang, X.-S. A Literature Survey of Benchmark Functions
  For Global Optimization Problems Int. Journal of Mathematical Modelling
  and Numerical Optimisation, 2013, 4, 150-194.
code: def __init__(self, dimensions=2):
      Benchmark.__init__(self, dimensions)
  
      self._bounds = list(zip([-10.0] * self.N, [10.0] * self.N))
  
      self.global_optimum = [
          (1.349406685353340, 1.349406608602084),
          (-1.349406685353340, 1.349406608602084),
          (1.349406685353340, -1.349406608602084),
          (-1.349406685353340, -1.349406608602084),
      ]
      self.fglob = -2.062611870822739
  
imports: import numpy
  from numpy import abs, asarray, cos, exp, floor, pi, sign, sin, sqrt, sum, size, tril, isnan, atleast_2d, repeat
  from numpy.testing import assert_almost_equal
  from .go_benchmark import Benchmark
label_desc: Use image node_id 1 to create a new CrossInTray object from inherited base classes: Benchmark with example: obj = CrossInTray(dimensions)