Skip to main content

Non-Convex Optimization Library (nonconvex_optimizationlib)

  • The Non-Convex Optimization Library is a comprehensive Python package providing a collection of non-convex functions for testing and benchmarking optimization algorithms.
  • This library includes a variety of well-known functions in the field of optimization, such as the Sphere, Booth, Rastrigin, and many more, catering to both continuous and non-continuous optimization problems.

Installation

  • You can install the Non-Convex Optimization Library directly from PyPI:

    • pip install nonconvex_optimizationlib
  • Note: Ensure you have Python and pip already installed on your system.

Usage

  • To use the library, simply import it into your Python script and access the desired optimization functions:
    from nonconvexoptimizationlib import nonconvexfunctions
    continuous_obj = nonconvexfunctions.NonconvexFunctions.ContinuousFunctions()
    non_continuous_obj=nonconvexfunctions.NonconvexFunctions.NoncontinuousFunctions()
    print(continuous_obj.rastrigin([-5.12,5.12]))
    print(non_continuous_obj.rastrigin([-5.12,5.12]))

    # Example: Using the Sphere function
    result = continuous_obj.sphere([1, 2])
    print(f"Sphere function result: {result}")
            
    # Example: Using the Booth function
    result = continuous_obj.booth(1, 3)
    print(f"Booth function result: {result}")
            
    # Example: Using the Step function
    result = non_continuous_obj.step_fun([0, 0.99, -0.99])
    print(f"Step function result: {result}")

Available Functions

  • The library includes a range of functions under two main categories:

Continuous Functions:

  1. sphere(xvals) : Sphere function, n-dimension
  2. booth(x, y) : Booth function, 3-dimension
  3. rastrigin(xvals, A=10) : Rastrigin function, n-dimension
  4. ackley(xvals) : Ackley function, n-dimension
  5. schwefel(xvals) : Schwefel function, n-dimension
  6. holdertable(xvals) : Holdertable function, 3-dimension
  7. langermann(xvals) : Langermann function, 3-dimension
  8. shubert(xvals) : Shubert function, 3-dimension
  9. dropwave(xvals) : Dropwave function, 3-dimension
  10. beale(x, y) : Beale function, 3-dimension
  11. mcCormick(x, y) : McCormick function, 3-dimension
  12. eggholder(xvals) : Eggholderfunctions, 3-dimension

Non-Continuous Functions:

  1. step_fun(xvals) : Step Function
  2. rastrigin(xvals) : Rastrigin function, n-dimension
  3. xin_she_yang_n2(xvals) : Xin-She-Yang-N2 function, n-dimension
  4. rosenbrock(xvals) : Rosenbrock function, n-dimension
  5. quadric(xvals) : Quadric function, n-dimension
  6. ellipsoid(xvals) : Ellipsoid function, n-dimension

Documentation

  • For detailed documentation on each function, including parameters, return values, and example usage, refer to the docstrings provided within the library.

Contributing

#Why we designed this package?

  • During my MS thesis(CSU Fresno) in metaheuristics algorithm design and optimization, I searched for several complex non-convex testbeds to test the newly designed algorithm. So, I came across several optimziation problems and some of them are mentioned here in this package as open source contribution Thesis Topic: Titled "Blindfolded Spider-Man Optimization: A Single-Point Metaheuristic Suitable for Continuous and Discrete Spaces", is now publicly available @ Link: https://www.proquest.com/docview/2901409934

  • ThankYou to Vasileios Lymperakis (author Buggy Pinball-a novel single point metaheuristic algorithm) for doing an amazing work in Buggy-Pinball which I was able to extended and explored further.

  • Thank you to Dr. Thanos{CSU Fresno, Computer Science} my advisor who guided me.

Metadata

Release files for nonconvexoptimzationfunclib 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nonconvexoptimzationfunclib 0.0.1
File Size Uploaded Provenance
nonconvexoptimzationfunclib-0.0.1.tar.gz 9.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for nonconvexoptimzationfunclib 0.0.1
File Interpreter ABI Platform
nonconvexoptimzationfunclib-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 17.3 kB

Release files / nonconvexoptimzationfunclib-0.0.1.tar.gz

Download URL nonconvexoptimzationfunclib-0.0.1.tar.gz
Size 9.2 kB
Tags Source
SHA-256 checksum
How to use checksums
fe370675f9c4c7182b25446babb42f2bd00e42148a65135798926824da50297d
BLAKE2b-256 checksum
How to use checksums
f80b930d71b97c7c202eebaff8d76fc0c4e9f87560946d6fc76fa220c43d2725
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.9

Release files / nonconvexoptimzationfunclib-0.0.1-py3-none-any.whl

Download URL nonconvexoptimzationfunclib-0.0.1-py3-none-any.whl
Size 8.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b790279cb411b58198a4c11d937f1e59bcef216ec1701374c7ce01eceb97aee4
BLAKE2b-256 checksum
How to use checksums
6ce328666f61d2428e8d8721d08ff03449bd014b343481a2b5cd0fc719195328
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.9

Security for nonconvexoptimzationfunclib 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page