Welcome to EverybodyWiki 😃 ! Nuvola apps kgpg.png Log in or ➕👤 create an account to improve, watchlist or create an article like a 🏭 company page or a 👨👩 bio (yours ?)...

Easy Advanced Global Optimization

From EverybodyWiki Bios & Wiki

Developer(s)University of Connecticut
Written inJulia
    TypeMathematical Optimization, Operations Research
    LicenseOpen Source

    Amazon.com Logo.png Search Easy Advanced Global Optimization on Amazon.

    Easy Advanced Global Optimization (EAGO)[1] is a software package used to formulate and solve mathematical optimization problems featuring nonconvex sets and/or functions, to guaranteed global optimality.


    Development of the EAGO.jl package began around January 2017 with the ambitious objective of creating an open-source deterministic global optimizer that is fast and serves the needs of both researchers and practitioners by making it easy to use custom user-defined functions and subfunctions[2]. EAGO.jl was written by Matthew E. Wilhelm as a PhD student at the University of Connecticut under advisement of Prof. M. D. Stuber.


    At its core, EAGO.jl relies on the branch and bound deterministic search algorithm. However, EAGO.jl is unique in how it exploits the Julia programming language's multiple dispatch paradigm to enable the use of custom user-defined functions as well as easily constructing optimization problems in Julia using the intuitive JuMP[3] algebraic modeling language (AML). Some core features of EAGO include:

    1. A flexible (customizable) branch-and-bound routine,
    2. Conventional[4] and differentiable[5][6] McCormick-based relaxation libraries and subgradient calculation,
    3. Compatibility with an exhaustive library of transcendental functions,
    4. Pre-solving routines including analysis and rearrangement of problem structure through a directed acyclic graph construction,
    5. Domain reduction routines including optimization-based bounds-tightening, duality-based bounds-tightening, and constraint propagation on the directed acyclic graph,
    6. Compatibility with user-defined functions and subroutines,
    7. Compatibility with automatic differentiation libraries.


    EAGO.jl can be used as a stand-alone solver in the Julia language or called through the JuMP AML to solve your optimization problems. It can be accessed and installed through the Julia package manager.[7]


    EAGO is open-source available under Creative Commons license, more specifically CC BY-NC-SA 4.0[8]


    1. "M. E. Wilhelm & M. D. Stuber (2020) EAGO.jl: easy advanced global optimization in Julia, Optimization Methods and Software 2020, doi:10.1080/10556788.2020.1786566". doi:10.1080/10556788.2020.1786566.
    2. "M. E. Wilhelm & M. D. Stuber (2017) Easy Advanced Global Optimization (EAGO): An open-source platform for robust and global optimization in Julia". In Proceedings of the AIChE 2017 Annual Meeting. Minneapolis, MN. 2017.
    3. Dunning, Iain; Huchette, Joey; Lubin, Miles (January 2017). "JuMP: A Modeling Language for Mathematical Optimization". SIAM Review. 59 (2): 295–320. arXiv:1508.01982. doi:10.1137/15M1020575. Unknown parameter |s2cid= ignored (help)
    4. McCormick, Garth P. (December 1976). "Computability of global solutions to factorable nonconvex programs: Part I — Convex underestimating problems". Mathematical Programming. 10 (1): 147–175. doi:10.1007/BF01580665. Unknown parameter |s2cid= ignored (help)
    5. Khan, Kamil A.; Watson, Harry A. J.; Barton, Paul I. (April 2017). "Differentiable McCormick relaxations". Journal of Global Optimization. 67 (4): 687–729. doi:10.1007/s10898-016-0440-6. hdl:1721.1/107681. Unknown parameter |s2cid= ignored (help)
    6. Khan, Kamil A.; Wilhelm, Matthew; Stuber, Matthew D.; Cao, Huiyi; Watson, Harry A. J.; Barton, Paul I. (March 2018). "Corrections to: Differentiable McCormick relaxations". Journal of Global Optimization. 70 (3): 705–706. doi:10.1007/s10898-017-0601-2. Unknown parameter |s2cid= ignored (help)
    7. "EAGO". Julia Observer.
    8. "CC BY-NC-SA 4.0". Retrieved 2020-08-31.

    External links[edit]

    Script error: No such module "AfC submission catcheck".

    This article "Easy Advanced Global Optimization" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Easy Advanced Global Optimization. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.