class_docstr: Hartmann6 objective function.
  
  This class defines the Hartmann6 [1]_ global optimization problem. This is a
  multimodal minimization problem defined as follows:
  
  .. math::
  
      f_{\text{Hartmann6}}(x) = -\sum\limits_{i=1}^{4} c_i
      e^{-\sum\limits_{j=1}^{n}a_{ij}(x_j - p_{ij})^2}
  
  
  Where, in this exercise:
  
  .. math::
  
      \begin{array}{l|cccccc|r}
      \hline
      i & &   &   a_{ij} &  &  & & c_i  \\
      \hline
      1 & 10.0  & 3.0  & 17.0 & 3.50  & 1.70  & 8.00  & 1.0 \\
      2 & 0.05  & 10.0 & 17.0 & 0.10  & 8.00  & 14.00 & 1.2 \\
      3 & 3.00  & 3.50 & 1.70 & 10.0  & 17.00 & 8.00  & 3.0 \\
      4 & 17.00 & 8.00 & 0.05 & 10.00 & 0.10  & 14.00 & 3.2 \\
      \hline
      \end{array}
  
      \newline
      \
      \newline
  
      \begin{array}{l|cccccr}
      \hline
      i &  &   & p_{ij} &  & & \\
      \hline
      1 & 0.1312 & 0.1696 & 0.5569 & 0.0124 & 0.8283 & 0.5886 \\
      2 & 0.2329 & 0.4135 & 0.8307 & 0.3736 & 0.1004 & 0.9991 \\
      3 & 0.2348 & 0.1451 & 0.3522 & 0.2883 & 0.3047 & 0.6650 \\
      4 & 0.4047 & 0.8828 & 0.8732 & 0.5743 & 0.1091 & 0.0381 \\
      \hline
      \end{array}
  
  
  with :math:`x_i \in [0, 1]` for :math:`i = 1, ..., 6`.
  
  *Global optimum*: :math:`f(x_i) = -3.32236801141551` for
  :math:`{x} = [0.20168952, 0.15001069, 0.47687398, 0.27533243, 0.31165162,
  0.65730054]`
  
  .. [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.
class_docstr_tok: ["Hartmann6","objective","function",".","This","class","defines","the","Hartmann6","[","1","]","_","global","optimization","problem",".","This","is","a","multimodal","minimization","problem","defined","as","follows",":","..","math",":",":","f_","{","\\text","{","Hartmann6","}","}","(","x",")","=","-\\sum\\limits_","{","i=1","}","^","{","4","}","c_i","e^","{","-\\sum\\limits_","{","j=1","}","^","{","n","}","a_","{","ij","}","(","x_j","-","p_","{","ij","}",")","^2","}","Where",",","in","this","exercise",":","..","math",":",":","\\begin","{","array","}","{","l|cccccc|r","}","\\hline","i","&","&","&","a_","{","ij","}","&","&","&","&","c_i","\\\\","\\hline","1","&","10.0","&","3.0","&","17.0","&","3.50","&","1.70","&","8.00","&","1.0","\\\\","2","&","0.05","&","10.0","&","17.0","&","0.10","&","8.00","&","14.00","&","1.2","\\\\","3","&","3.00","&","3.50","&","1.70","&","10.0","&","17.00","&","8.00","&","3.0","\\\\","4","&","17.00","&","8.00","&","0.05","&","10.00","&","0.10","&","14.00","&","3.2","\\\\","\\hline","\\end","{","array","}","\\newline","\\","\\newline","\\begin","{","array","}","{","l|cccccr","}","\\hline","i","&","&","&","p_","{","ij","}","&","&","&","\\\\","\\hline","1","&","0.1312","&","0.1696","&","0.5569","&","0.0124","&","0.8283","&","0.5886","\\\\","2","&","0.2329","&","0.4135","&","0.8307","&","0.3736","&","0.1004","&","0.9991","\\\\","3","&","0.2348","&","0.1451","&","0.3522","&","0.2883","&","0.3047","&","0.6650","\\\\","4","&","0.4047","&","0.8828","&","0.8732","&","0.5743","&","0.1091","&","0.0381","\\\\","\\hline","\\end","{","array","}","with",":","math",":","`","x_i","\\in","[","0",",","1","]","`","for",":","math",":","`","i","=","1",",","...",",","6","`",".","*","Global","optimum","*",":",":","math",":","`","f","(","x_i",")","=","-3.32236801141551","`","for",":","math",":","`","{","x","}","=","[","0.20168952",",","0.15001069",",","0.47687398",",","0.27533243",",","0.31165162",",","0.65730054","]","`","..","[","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 fun(self, x, *args):
      self.nfev += 1
  
      XX = np.atleast_2d(x)
      d = sum(self.a * (XX - self.p) ** 2, axis=1)
      return -sum(self.c * exp(-d))
  
imports: import numpy
  from numpy import abs, arctan2, asarray, cos, exp, arange, pi, sin, sqrt, sum
  from .go_benchmark import Benchmark
label_desc: Use image node_id 2 for calling the Hartmann6 obj's underlying member method code with example usage: obj.fun(x) and returns: unknown