class_docstr: ZeroSum objective function.
  
  This class defines the ZeroSum [1]_ global optimization problem. This
  is a multimodal minimization problem defined as follows:
  
  .. math::
  
      f_{\text{ZeroSum}}(x) = \begin{cases}
                              0 & \textrm{if} \sum_{i=1}^n x_i = 0 \\
                              1 + \left(10000 \left |\sum_{i=1}^n x_i\right|
                              \right)^{0.5} & \textrm{otherwise}
                              \end{cases}
  
  Here, :math:`n` represents the number of dimensions and
  :math:`x_i \in [-10, 10]` for :math:`i = 1, ..., n`.
  
  *Global optimum*: :math:`f(x) = 0` where :math:`\sum_{i=1}^n x_i = 0`
  
  .. [1] Gavana, A. Global Optimization Benchmarks and AMPGO retrieved 2015
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 = [[]]
      self.fglob = 0.0
      self.change_dimensionality = True
  
imports: from numpy import abs, sum, sign, arange
  from .go_benchmark import Benchmark
label_desc: Use image node_id 1 to create a new ZeroSum object from inherited base classes: Benchmark with example: obj = ZeroSum(dimensions)