Metadata-Version: 1.1
Name: shgo
Version: 0.3.5
Summary: Simplicial homology global optimisation
Home-page: https://github.com/stefan-endres/shgo
Author: Stefan Endres, Carl Sandrock
Author-email: stefan.c.endres@gmail.com
License: MIT
Description-Content-Type: UNKNOWN
Description: .. image:: https://travis-ci.org/Stefan-Endres/shgo.svg?branch=master
            :target: https://travis-ci.org/Stefan-Endres/shgo
            
        .. image:: https://coveralls.io/repos/Stefan-Endres/shgo/badge.png?branch=master
            :target: https://coveralls.io/r/Stefan-Endres/shgo?branch=master
        
        Description
        -----------
        
        Finds the global minimum of a function using simplicial homology global
        optimisation (shgo_). Appropriate for solving general purpose NLP and blackbox
        optimisation problems to global optimality (low dimensional problems).
        The general form of an optimisation problem is given by:
        
        .. _shgo: https://stefan-endres.github.io/shgo/
        
        ::
        
            minimize f(x) subject to
        
            g_i(x) >= 0,  i = 1,...,m
            h_j(x)  = 0,  j = 1,...,p
        
        where x is a vector of one or more variables. ``f(x)`` is the objective
        function ``R^n -> R``, ``g_i(x)`` are the inequality constraints.
        ``h_j(x)`` are the equality constrains.
        
        
        Installation
        ------------
        Stable:
        
        .. code::
        
            $ pip install shgo
            
        Latest:
        
        .. code::
        
            $ git clone https://bitbucket.org/upiamcompthermo/shgo
            $ cd shgo
            $ python setup.py install
            $ python setup.py test
        
        Documentation
        -------------
        The project website https://stefan-endres.github.io/shgo/ contains more detailed examples, notes and performance profiles.
        
        Quick example
        -------------
        
        First consider the problem of minimizing the Rosenbrock function. This
        function is implemented in ``rosen`` in ``scipy.optimize``
        
        .. code:: python
        
            >>> from scipy.optimize import rosen
            >>> from shgo import shgo
            >>> bounds = [(0,2), (0, 2), (0, 2), (0, 2), (0, 2)]
            >>> result = shgo(rosen, bounds)
            >>> result.x, result.fun
            (array([ 1.,  1.,  1.,  1.,  1.]), 2.9203923741900809e-18)
        
        Note that bounds determine the dimensionality of the objective function
        and is therefore a required input, however you can specify empty bounds
        using ``None`` or objects like numpy.inf which will be converted to
        large float numbers.
        
        
Keywords: optimization
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
