class_docstr: Ackley01 objective function.
  
  The Ackley01 [1]_ global optimization problem is a multimodal minimization
  problem defined as follows:
  
  .. math::
  
      f_{\text{Ackley01}}(x) = -20 e^{-0.2 \sqrt{\frac{1}{n} \sum_{i=1}^n
       x_i^2}} - e^{\frac{1}{n} \sum_{i=1}^n \cos(2 \pi x_i)} + 20 + e
  
  
  Here, :math:`n` represents the number of dimensions and :math:`x_i \in
  [-35, 35]` for :math:`i = 1, ..., n`.
  
  *Global optimum*: :math:`f(x) = 0` for :math:`x_i = 0` for
  :math:`i = 1, ..., n`
  
  .. [1] Adorio, E. MVF - "Multivariate Test Functions Library in C for
  Unconstrained Global Optimization", 2005
  
  TODO: the -0.2 factor in the exponent of the first term is given as
  -0.02 in Jamil et al.
code: def __init__(self, dimensions=2):
      Benchmark.__init__(self, dimensions)
  
      self._bounds = list(zip([-35.0] * self.N, [35.0] * self.N))
      self.global_optimum = [[0 for _ in range(self.N)]]
      self.fglob = 0.0
      self.change_dimensionality = True
  
imports: from numpy import abs, cos, exp, pi, prod, sin, sqrt, sum
  from .go_benchmark import Benchmark
label_desc: Use image node_id 1 to create a new Ackley01 object from inherited base classes: Benchmark with example: obj = Ackley01(dimensions)