SkillAgentSearch skills...

ADNLPModelProblems.jl

A list of optimization problems in ADNLPModel format

Install / Use

/learn @JSO-Boneyard/ADNLPModelProblems.jl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

ADNLPModelProblems.jl

| Documentation | CI | Coverage | Release | DOI | |:-----------------:|:------:|:------------:|:-----------:|:-------:| | docs-stable docs-dev | build-ci | codecov | release | [![doi][doi-img]][doi-url] |

<!---[doi-img]: https://zenodo.org/badge/DOI/10.5281/zenodo.5056629.svg---> <!---[doi-url]: https://doi.org/10.5281/zenodo.5056629--->

A list of optimization problems in ADNLPModel format, see ADNLPModels.jl. Most of the problems given here are also available in JuMP format either in OptimizationProblems.jl or within this package.

The list of available problems are given in String format in

ADNLPModelProblems.problems

This list includes unconstrained and constrained problems, and several are scalable problems. The default parameter value for the variable scale is:

ADNLPModelProblems.default_nvar

The list of problems for which there is no JuMP model is obtained by:

ADNLPModelProblems.problems_no_jump

There are several ways to access the problems, for instance "power":

ADNLPModelProblems.power_forward() # ForwardDiff backend
ADNLPModelProblems.power_reverse() # ReverseDiff backend
ADNLPModelProblems.power_zygote() # Zygote backend
ADNLPModelProblems.power_jump() # NLPModelJuMP model

and using ADNLPModels.jl default backend

ADNLPModelProblems.power_autodiff()

Finally, the properties of each problem can be accessed via

  • $(nameoftheproblem)_meta: Dict that contains main information. This information is summed up for the whole test set in the variables ADNLPModelProblems.meta.
  • get_$(nameoftheproblem)_meta(n): returns the number of variables and constraints of the problem parameterized by n. If the problem is scalable this varies from $(nameoftheproblem)_meta[:nvar] and $(nameoftheproblem)_meta[:ncon] that were generated with n = ADNLPModelProblems.default_nvar.

How to contribute?

Contributions with new problems are very welcome. A couple of advice for a successful contribution:

  • check that the new problem is not already on the list.
  • furnish as much detail as possible regarding the origin of the problem, e.g. citation, link, application ...
  • the problem should be type-stable, i.e. argument type::Val{T} = Val(Float64) should induce the type returned by the ADNLPModel.
  • fill-in the meta as precisely as possible. The function generate_meta helps for this step.
View on GitHub
GitHub Stars4
CategoryDevelopment
Updated3y ago
Forks1

Languages

Julia

Security Score

70/100

Audited on Jan 28, 2023

No findings