emmt / OptimPackNextGen.jl

An almost pure Julia version of OptimPack for numerical optimization with particular focus on large scale problems
Other
12 stars 6 forks source link

OptimPackNextGen.jl

License Build Status Appveyor Coveralls Codecov.io

OptimPackNextGen is a Julia package for numerical optimization with particular focus on large scale problems.

Large scale problems

Small to moderate size problems

For problems of small to moderate size, OptimPackNextGen provides:

Univariate functions

The following methods are provided for univariate functions:

Trust region

Installation

The easiest way to install OptimPackNextGen is via Julia registry EmmtRegistry:

using Pkg
pkg"registry add General"  # if not yet any registries
pkg"registry add https://github.com/emmt/EmmtRegistry"
pkg"add OptimPackNextGen"

Rationale and related software

Related software are the OptimPack library which implements the C version of the algorithms and the OptimPack.jl Julia package which is a wrapper of this library for Julia. Compared to OptimPack.jl, the new OptimPackNextGen.jl implements in pure Julia the algorithms dedicated to large scale problems but still relies on the C libraries for a few algorithms (notably the Powell methods). Precompiled versions of these libraries are provided by OptimPack_jll package. The rationale is to facilitate the integration of exotic types of variables for optimization problems in Julia. Eventually, OptimPackNextGen.jl will become the next version of OptimPack.jl but, until then, it is more flexible to have two separate modules and avoid coping with compatibility and design issues.

References