{
  "__type": "IngestedDoc",
  "__tag": 4010,
  "_content": {
    "Notes": {
      "__type": "Section",
      "__tag": 4015,
      "children": [
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "Global optimization using simplicial homology global optimization "
            },
            {
              "__type": "FootnoteReference",
              "__tag": 4066,
              "label": "1"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ". Appropriate for solving general purpose NLP and blackbox optimization problems to global optimality (low-dimensional problems)."
            }
          ]
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "In general, the optimization problems are of the form      "
            }
          ]
        },
        {
          "__type": "Code",
          "__tag": 4050,
          "value": "minimize f(x) subject to\n\ng_i(x) >= 0,  i = 1,...,m\nh_j(x)  = 0,  j = 1,...,p",
          "execution_status": null
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "where x is a vector of one or more variables. "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "f(x)"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " is the objective function "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "R^n -> R"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ", "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "g_i(x)"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " are the inequality constraints, and "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "h_j(x)"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " are the equality constraints."
            }
          ]
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "Optionally, the lower and upper bounds for each element in x can also be specified using the "
            },
            {
              "__type": "ParamRef",
              "__tag": 4071,
              "name": "bounds"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " argument."
            }
          ]
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "While most of the theoretical advantages of SHGO are only proven for when "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "f(x)"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " is a Lipschitz smooth function, the algorithm is also proven to converge to the global optimum for the more general case where "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "f(x)"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " is non-continuous, non-convex and non-smooth, if the default sampling method is used "
            },
            {
              "__type": "FootnoteReference",
              "__tag": 4066,
              "label": "1"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "."
            }
          ]
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "The local search method may be specified using the "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "minimizer_kwargs"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " parameter which is passed on to "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "scipy.optimize.minimize"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ". By default, the "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "SLSQP"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " method is used. In general, it is recommended to use the "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "SLSQP"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ", "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "COBYLA"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ", or "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "COBYQA"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " local minimization if inequality constraints are defined for the problem since the other methods do not use constraints."
            }
          ]
        },
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "The "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "halton"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " and "
            },
            {
              "__type": "InlineCode",
              "__tag": 4051,
              "value": "sobol"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": " method points are generated using "
            },
            {
              "__type": "CrossRef",
              "__tag": 4002,
              "value": "scipy.stats.qmc",
              "reference": {
                "__type": "LocalRef",
                "__tag": 4022,
                "kind": "module",
                "path": "scipy.stats.qmc"
              },
              "kind": "module"
            },
            {
              "__type": "Text",
              "__tag": 4046,
              "value": ". Any other QMC method could be used."
            }
          ]
        }
      ],
      "title": [],
      "level": 0,
      "target": null
    },
    "Warns": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Raises": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Yields": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Methods": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Returns": {
      "__type": "Section",
      "__tag": 4015,
      "children": [
        {
          "__type": "Parameters",
          "__tag": 4026,
          "children": [
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "res",
              "annotation": "OptimizeResult",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "The optimization result represented as a "
                    },
                    {
                      "__type": "CrossRef",
                      "__tag": 4002,
                      "value": "OptimizeResult",
                      "reference": {
                        "__type": "LocalRef",
                        "__tag": 4022,
                        "kind": "module",
                        "path": "scipy.optimize._optimize:OptimizeResult"
                      },
                      "kind": "module"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " object. Important attributes are: "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "x"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " the solution array corresponding to the global minimum, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "fun"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " the function output at the global solution, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "xl"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " an ordered list of local minima solutions, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "funl"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " the function output at the corresponding local solutions, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "success"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " a Boolean flag indicating if the optimizer exited successfully, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "message"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " which describes the cause of the termination, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "nfev"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " the total number of objective function evaluations including the sampling calls, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "nlfev"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " the total number of objective function evaluations culminating from all local search optimizations, "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "nit"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " number of iterations performed by the global routine."
                    }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "title": [],
      "level": 0,
      "target": null
    },
    "Summary": {
      "__type": "Section",
      "__tag": 4015,
      "children": [
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "Finds the global minimum of a function using SHG optimization."
            }
          ]
        }
      ],
      "title": [],
      "level": 0,
      "target": null
    },
    "Receives": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Warnings": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Attributes": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    },
    "Parameters": {
      "__type": "Section",
      "__tag": 4015,
      "children": [
        {
          "__type": "Parameters",
          "__tag": 4026,
          "children": [
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "func",
              "annotation": "callable",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "The objective function to be minimized.  Must be in the form "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "f(x, *args)"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ", where "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "x"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " is the argument in the form of a 1-D array and "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "args"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " is a tuple of any additional fixed parameters needed to completely specify the function."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "bounds",
              "annotation": "sequence or `Bounds`",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Bounds for variables. There are two ways to specify the bounds:"
                    }
                  ]
                },
                {
                  "__type": "BulletList",
                  "__tag": 4053,
                  "ordered": true,
                  "start": 1,
                  "children": [
                    {
                      "__type": "ListItem",
                      "__tag": 4054,
                      "children": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "Instance of "
                            },
                            {
                              "__type": "CrossRef",
                              "__tag": 4002,
                              "value": "Bounds",
                              "reference": {
                                "__type": "LocalRef",
                                "__tag": 4022,
                                "kind": "module",
                                "path": "scipy.optimize._constraints:Bounds"
                              },
                              "kind": "module"
                            },
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": " class."
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "ListItem",
                      "__tag": 4054,
                      "children": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "Sequence of "
                            },
                            {
                              "__type": "InlineCode",
                              "__tag": 4051,
                              "value": "(min, max)"
                            },
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": " pairs for each element in "
                            },
                            {
                              "__type": "InlineRole",
                              "__tag": 4003,
                              "value": "x",
                              "domain": null,
                              "role": null,
                              "inventory": null
                            },
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "."
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "args",
              "annotation": "tuple, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Any additional fixed parameters needed to completely specify the objective function."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "constraints",
              "annotation": "{Constraint, dict} or List of {Constraint, dict}, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Constraints definition. Only for COBYLA, COBYQA, SLSQP and trust-constr. See the tutorial "
                    },
                    {
                      "__type": "FootnoteReference",
                      "__tag": 4066,
                      "label": "5"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " for further details on specifying constraints."
                    }
                  ]
                },
                {
                  "__type": "Admonition",
                  "__tag": 4056,
                  "kind": "note",
                  "base_type": "note",
                  "children": [
                    {
                      "__type": "AdmonitionTitle",
                      "__tag": 4055,
                      "children": [
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": "note "
                        }
                      ]
                    },
                    {
                      "__type": "Paragraph",
                      "__tag": 4045,
                      "children": [
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": "Only COBYLA, COBYQA, SLSQP, and trust-constr local minimize methods currently support constraint arguments. If the "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " sequence used in the local optimization problem is not defined in "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "minimizer_kwargs"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " and a constrained method is used then the global "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " will be used. (Defining a "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " sequence in "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "minimizer_kwargs"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " means that "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " will not be added so if equality constraints and so forth need to be added then the inequality functions in "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " need to be added to "
                        },
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "minimizer_kwargs"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " too). COBYLA only supports inequality constraints."
                        }
                      ]
                    }
                  ]
                },
                {
                  "__type": "Admonition",
                  "__tag": 4056,
                  "kind": "versionchanged",
                  "base_type": "neutral",
                  "children": [
                    {
                      "__type": "AdmonitionTitle",
                      "__tag": 4055,
                      "children": [
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": "versionchanged 1.11.0"
                        }
                      ]
                    },
                    {
                      "__type": "Paragraph",
                      "__tag": 4045,
                      "children": [
                        {
                          "__type": "InlineCode",
                          "__tag": 4051,
                          "value": "constraints"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": " accepts "
                        },
                        {
                          "__type": "CrossRef",
                          "__tag": 4002,
                          "value": "NonlinearConstraint",
                          "reference": {
                            "__type": "LocalRef",
                            "__tag": 4022,
                            "kind": "module",
                            "path": "scipy.optimize._constraints:NonlinearConstraint"
                          },
                          "kind": "module"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": ", "
                        },
                        {
                          "__type": "CrossRef",
                          "__tag": 4002,
                          "value": "LinearConstraint",
                          "reference": {
                            "__type": "LocalRef",
                            "__tag": 4022,
                            "kind": "module",
                            "path": "scipy.optimize._constraints:LinearConstraint"
                          },
                          "kind": "module"
                        },
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": "."
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "n",
              "annotation": "int, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Number of sampling points used in the construction of the simplicial complex. For the default "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "simplicial"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " sampling method 2**dim + 1 sampling points are generated instead of the default "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "n=100"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ". For all other specified values "
                    },
                    {
                      "__type": "ParamRef",
                      "__tag": 4071,
                      "name": "n"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " sampling points are generated. For "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "sobol"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ", "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "halton"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " and other arbitrary "
                    },
                    {
                      "__type": "InlineRole",
                      "__tag": 4003,
                      "value": "sampling_methods",
                      "domain": null,
                      "role": null,
                      "inventory": null
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "n=100"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " or another specified number of sampling points are generated."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "iters",
              "annotation": "int, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Number of iterations used in the construction of the simplicial complex. Default is 1."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "callback",
              "annotation": "callable, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Called after each iteration, as "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "callback(xk)"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ", where "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "xk"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " is the current parameter vector."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "minimizer_kwargs",
              "annotation": "dict, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Extra keyword arguments to be passed to the minimizer "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "scipy.optimize.minimize"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ". Some important options could be:"
                    }
                  ]
                },
                {
                  "__type": "DefList",
                  "__tag": 4033,
                  "children": [
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "method"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "method"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "args"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "args"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "options"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "options"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "options",
              "annotation": "dict, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "A dictionary of solver options. Many of the options specified for the global routine are also passed to the "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "scipy.optimize.minimize"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " routine. The options that are also passed to the local routine are marked with \"(L)\"."
                    }
                  ]
                },
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Stopping criteria, the algorithm will terminate if any of the specified criteria are met. However, the default algorithm does not require any to be specified:"
                    }
                  ]
                },
                {
                  "__type": "DefList",
                  "__tag": 4033,
                  "children": [
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "maxfev"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "maxfev"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "f_min"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "f_min"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "f_tol"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "f_tol"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "maxiter"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "maxiter"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "maxev"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "maxev"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "maxtime"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "maxtime"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "minhgrd"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "minhgrd"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                },
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Objective function knowledge:"
                    }
                  ]
                },
                {
                  "__type": "DefList",
                  "__tag": 4033,
                  "children": [
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "symmetry"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "symmetry"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "jac"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "jac"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "hess,hessp"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "hess, hessp"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                },
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Algorithm settings:"
                    }
                  ]
                },
                {
                  "__type": "DefList",
                  "__tag": 4033,
                  "children": [
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "minimize_every_iter"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "minimize_every_iter"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "local_iter"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "local_iter"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "infty_constraints"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "infty_constraints"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                },
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Feedback:"
                    }
                  ]
                },
                {
                  "__type": "DefList",
                  "__tag": 4033,
                  "children": [
                    {
                      "__type": "DefListItem",
                      "__tag": 4037,
                      "dt": {
                        "__type": "Paragraph",
                        "__tag": 4045,
                        "children": [
                          {
                            "__type": "Text",
                            "__tag": 4046,
                            "value": "disp"
                          }
                        ]
                      },
                      "dd": [
                        {
                          "__type": "Paragraph",
                          "__tag": 4045,
                          "children": [
                            {
                              "__type": "Text",
                              "__tag": 4046,
                              "value": "disp"
                            }
                          ]
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "sampling_method",
              "annotation": "str or function, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Current built in sampling method options are "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "halton"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ", "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "sobol"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " and "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "simplicial"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ". The default "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "simplicial"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " provides the theoretical guarantee of convergence to the global minimum in finite time. "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "halton"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " and "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "sobol"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " method are faster in terms of sampling point generation at the cost of the loss of guaranteed convergence. It is more appropriate for most \"easier\" problems where the convergence is relatively fast. User defined sampling functions must accept two arguments of "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "n"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " sampling points of dimension "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "dim"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " per call and output an array of sampling points with shape "
                    },
                    {
                      "__type": "InlineRole",
                      "__tag": 4003,
                      "value": "n x dim",
                      "domain": null,
                      "role": null,
                      "inventory": null
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "."
                    }
                  ]
                }
              ]
            },
            {
              "__type": "DocParam",
              "__tag": 4016,
              "name": "workers",
              "annotation": "int or map-like callable, optional",
              "desc": [
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Sample and run the local serial minimizations in parallel. Supply -1 to use all available CPU cores, or an int to use that many Processes (uses "
                    },
                    {
                      "__type": "InlineRole",
                      "__tag": 4003,
                      "value": "multiprocessing.Pool <multiprocessing>",
                      "domain": null,
                      "role": null,
                      "inventory": null
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ")."
                    }
                  ]
                },
                {
                  "__type": "Paragraph",
                  "__tag": 4045,
                  "children": [
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": "Alternatively supply a map-like callable, such as "
                    },
                    {
                      "__type": "InlineRole",
                      "__tag": 4003,
                      "value": "multiprocessing.Pool.map",
                      "domain": null,
                      "role": null,
                      "inventory": null
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " for parallel evaluation. This evaluation is carried out as "
                    },
                    {
                      "__type": "InlineCode",
                      "__tag": 4051,
                      "value": "workers(func, iterable)"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": ". Requires that "
                    },
                    {
                      "__type": "ParamRef",
                      "__tag": 4071,
                      "name": "func"
                    },
                    {
                      "__type": "Text",
                      "__tag": 4046,
                      "value": " be pickleable."
                    }
                  ]
                },
                {
                  "__type": "Admonition",
                  "__tag": 4056,
                  "kind": "versionadded",
                  "base_type": "neutral",
                  "children": [
                    {
                      "__type": "AdmonitionTitle",
                      "__tag": 4055,
                      "children": [
                        {
                          "__type": "Text",
                          "__tag": 4046,
                          "value": "versionadded 1.11.0"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ],
      "title": [],
      "level": 0,
      "target": null
    },
    "Extended Summary": {
      "__type": "Section",
      "__tag": 4015,
      "children": [
        {
          "__type": "Paragraph",
          "__tag": 4045,
          "children": [
            {
              "__type": "Text",
              "__tag": 4046,
              "value": "SHGO stands for \"simplicial homology global optimization\"."
            }
          ]
        }
      ],
      "title": [],
      "level": 0,
      "target": null
    },
    "Other Parameters": {
      "__type": "Section",
      "__tag": 4015,
      "children": [],
      "title": [],
      "level": 0,
      "target": null
    }
  },
  "_ordered_sections": [
    "Summary",
    "Extended Summary",
    "Parameters",
    "Attributes",
    "Methods",
    "Returns",
    "Yields",
    "Receives",
    "Other Parameters",
    "Raises",
    "Warns",
    "Warnings",
    "Notes"
  ],
  "item_file": "/scipy/optimize/_shgo.py",
  "item_line": 22,
  "item_type": "function",
  "aliases": [
    "scipy.optimize.shgo"
  ],
  "example_section_data": {
    "__type": "Section",
    "__tag": 4015,
    "children": [
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "First consider the problem of minimizing the Rosenbrock function, `rosen`:\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "from scipy.optimize import rosen, shgo\nbounds = [(0,2), (0, 2), (0, 2), (0, 2), (0, 2)]\nresult = shgo(rosen, bounds)\n",
        "execution_status": "success"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result.x, result.fun\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\nNote that bounds determine the dimensionality of the objective\nfunction and is therefore a required input, however you can specify\nempty bounds using ``None`` or objects like ``np.inf`` which will be\nconverted to large float numbers.\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "bounds = [(None, None), ]*4\nresult = shgo(rosen, bounds)\n",
        "execution_status": "success"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result.x\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\nNext, we consider the Eggholder function, a problem with several local\nminima and one global minimum. We will demonstrate the use of arguments and\nthe capabilities of `shgo`.\n(https://en.wikipedia.org/wiki/Test_functions_for_optimization)\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "import numpy as np\ndef eggholder(x):\n    return (-(x[1] + 47.0)\n            * np.sin(np.sqrt(abs(x[0]/2.0 + (x[1] + 47.0))))\n            - x[0] * np.sin(np.sqrt(abs(x[0] - (x[1] + 47.0))))\n            )\nbounds = [(-512, 512), (-512, 512)]\n",
        "execution_status": "success"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\n`shgo` has built-in low discrepancy sampling sequences. First, we will\ninput 64 initial sampling points of the *Sobol'* sequence:\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result = shgo(eggholder, bounds, n=64, sampling_method='sobol')\n",
        "execution_status": "success"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result.x, result.fun\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\n`shgo` also has a return for any other local minima that was found, these\ncan be called using:\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result.xl\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result.funl\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\nThese results are useful in applications where there are many global minima\nand the values of other global minima are desired or where the local minima\ncan provide insight into the system (for example morphologies\nin physical chemistry [4]_).\n\nIf we want to find a larger number of local minima, we can increase the\nnumber of sampling points or the number of iterations. We'll increase the\nnumber of sampling points to 64 and the number of iterations from the\ndefault of 1 to 3. Using ``simplicial`` this would have given us\n64 x 3 = 192 initial sampling points.\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "result_2 = shgo(eggholder,\n                bounds, n=64, iters=3, sampling_method='sobol')\nlen(result.xl), len(result_2.xl)\n",
        "execution_status": "success"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\nNote the difference between, e.g., ``n=192, iters=1`` and ``n=64,\niters=3``.\nIn the first case the promising points contained in the minimiser pool\nare processed only once. In the latter case it is processed every 64\nsampling points for a total of 3 times.\n\nTo demonstrate solving problems with non-linear constraints consider the\nfollowing example from Hock and Schittkowski problem 73 (cattle-feed)\n[3]_::\n\n    minimize: f = 24.55 * x_1 + 26.75 * x_2 + 39 * x_3 + 40.50 * x_4\n\n    subject to: 2.3 * x_1 + 5.6 * x_2 + 11.1 * x_3 + 1.3 * x_4 - 5    >= 0,\n\n                12 * x_1 + 11.9 * x_2 + 41.8 * x_3 + 52.1 * x_4 - 21\n                    -1.645 * sqrt(0.28 * x_1**2 + 0.19 * x_2**2 +\n                                  20.5 * x_3**2 + 0.62 * x_4**2)      >= 0,\n\n                x_1 + x_2 + x_3 + x_4 - 1                             == 0,\n\n                1 >= x_i >= 0 for all i\n\nThe approximate answer given in [3]_ is::\n\n    f([0.6355216, -0.12e-11, 0.3127019, 0.05177655]) = 29.894378\n\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "def f(x):  # (cattle-feed)\n    return 24.55*x[0] + 26.75*x[1] + 39*x[2] + 40.50*x[3]\ndef g1(x):\n    return 2.3*x[0] + 5.6*x[1] + 11.1*x[2] + 1.3*x[3] - 5  # >=0\ndef g2(x):\n    return (12*x[0] + 11.9*x[1] +41.8*x[2] + 52.1*x[3] - 21\n            - 1.645 * np.sqrt(0.28*x[0]**2 + 0.19*x[1]**2\n                            + 20.5*x[2]**2 + 0.62*x[3]**2)\n            ) # >=0\ndef h1(x):\n    return x[0] + x[1] + x[2] + x[3] - 1  # == 0\ncons = ({'type': 'ineq', 'fun': g1},\n        {'type': 'ineq', 'fun': g2},\n        {'type': 'eq', 'fun': h1})\nbounds = [(0, 1.0),]*4\nres = shgo(f, bounds, n=150, constraints=cons)\n",
        "execution_status": "success"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "res\n",
        "execution_status": "failure"
      },
      {
        "__type": "Text",
        "__tag": 4046,
        "value": "\n"
      },
      {
        "__type": "Code",
        "__tag": 4050,
        "value": "g1(res.x), g2(res.x), h1(res.x)\n",
        "execution_status": "failure"
      }
    ],
    "title": [],
    "level": 0,
    "target": null
  },
  "see_also": [],
  "signature": {
    "__type": "SignatureNode",
    "__tag": 4029,
    "kind": "function",
    "parameters": [
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "func",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": {
          "__type": "Empty",
          "__tag": 4031
        }
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "bounds",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": {
          "__type": "Empty",
          "__tag": 4031
        }
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "args",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "()"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "constraints",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "None"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "n",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "100"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "iters",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "1"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "callback",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "None"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "minimizer_kwargs",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "None"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "options",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "None"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "sampling_method",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "POSITIONAL_OR_KEYWORD",
        "default": "simplicial"
      },
      {
        "__type": "SigParam",
        "__tag": 4030,
        "name": "workers",
        "annotation": {
          "__type": "Empty",
          "__tag": 4031
        },
        "kind": "KEYWORD_ONLY",
        "default": "1"
      }
    ],
    "return_annotation": {
      "__type": "Empty",
      "__tag": 4031
    },
    "target_name": "shgo"
  },
  "references": [
    ".. [1] Endres, SC, Sandrock, C, Focke, WW (2018) \"A simplicial homology",
    "       algorithm for lipschitz optimisation\", Journal of Global",
    "       Optimization.",
    ".. [2] Joe, SW and Kuo, FY (2008) \"Constructing Sobol' sequences with",
    "       better  two-dimensional projections\", SIAM J. Sci. Comput. 30,",
    "       2635-2654.",
    ".. [3] Hock, W and Schittkowski, K (1981) \"Test examples for nonlinear",
    "       programming codes\", Lecture Notes in Economics and Mathematical",
    "       Systems, 187. Springer-Verlag, New York.",
    "       http://www.ai7.uni-bayreuth.de/test_problem_coll.pdf",
    ".. [4] Wales, DJ (2015) \"Perspective: Insight into reaction coordinates and",
    "       dynamics from the potential energy landscape\",",
    "       Journal of Chemical Physics, 142(13), 2015.",
    ".. [5] https://docs.scipy.org/doc/scipy/tutorial/optimize.html#constrained-minimization-of-multivariate-scalar-functions-minimize"
  ],
  "qa": "scipy.optimize._shgo:shgo",
  "arbitrary": [],
  "local_refs": [
    "args",
    "bounds",
    "callback",
    "constraints",
    "func",
    "iters",
    "minimizer_kwargs",
    "n",
    "options",
    "res",
    "sampling_method",
    "workers"
  ]
}