diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 000000000..916adcc3a Binary files /dev/null and b/.DS_Store differ diff --git a/.claude/skills/find-bib/SKILL.md b/.claude/skills/find-bib/SKILL.md new file mode 100644 index 000000000..a80e9d196 --- /dev/null +++ b/.claude/skills/find-bib/SKILL.md @@ -0,0 +1,162 @@ +--- +name: find-bib +description: Find or construct a BibTeX reference for an OptimizationProblems.jl meta file. Given a DOI, problem name, or free-form reference text, searches for the DOI online, fetches BibTeX from doi2bib.org, and formats the result as a Julia raw string ready to paste into src/Meta/.jl. +argument-hint: +allowed-tools: [Read, Glob, Grep, WebSearch, WebFetch] +--- + +# find-bib + +Find or construct a BibTeX reference and format it as a Julia raw string for `src/Meta/.jl`. + +## Arguments + +The user invoked this skill with: $ARGUMENTS + +This can be: +- A **problem name** from `src/Meta/` (e.g. `zangwil3`, `hs1`) — skill will read the file and extract context +- A **DOI** (e.g. `10.1145/355934.355936` or `https://doi.org/10.1145/355934.355356`) +- **Free-form reference text** (title, authors, journal, year — quoted or unquoted) +- **Empty** — if no argument is given, ask the user to specify a problem name or reference + +--- + +## Instructions + +Follow these steps in order. + +### Step 1 — Gather source material + +If `$ARGUMENTS` looks like a problem name (no spaces, no slashes, exists as `src/Meta/.jl`): +- Read `src/Meta/$ARGUMENTS.jl` +- Extract `:url`, `:notes`, `:origin_notes`, and the existing `:reference` field (may be empty) +- Use this text as the source for Steps 2–4 + +Otherwise, treat `$ARGUMENTS` directly as a DOI or free-form reference text. + +### Step 2 — Extract or find a DOI + +1. Regex-scan all gathered text for a DOI pattern: `10\.\d{4,}/\S+` + - DOIs appear in `:url`, `:notes`, `:origin_notes`, or in the argument itself +2. If no DOI is found, run a **WebSearch** to locate one: + - Try: `"" "<first author>" DOI` + - Try: `site:doi.org "<title or key terms>"` + - Try CrossRef: `site:search.crossref.org "<title or key terms>"` +3. Extract the DOI string from any search result that contains one. + +### Step 3 — Fetch BibTeX + +If a DOI was found (say `10.1145/355934.355936`), try these endpoints in order: + +1. **CrossRef** (primary): `https://api.crossref.org/works/10.1145/355934.355936/transform/application/x-bibtex` +2. **doi2bib.org** (fallback): `https://www.doi2bib.org/bib/10.1145/355934.355936` + +The response is plain-text BibTeX — clean up whitespace if needed, then apply these normalizations: + +- **Citation key**: CrossRef often returns auto-generated keys like `More_1981` or `more1981testingunconstrained`. Always rename the key to the `Author1Author2YYYY` format described in Step 4 (e.g. `MoreGarbowHillstrom1981`). +- **`pages` field**: normalize to BibTeX double-hyphen. Replace Unicode en-dash `–` or a single hyphen `-` between page numbers with `--` (e.g. `175--184`). + +If both endpoints fail or return an error, fall through to Step 4. + +### Step 4 — Construct BibTeX manually (fallback) + +If no DOI was found or doi2bib.org failed, construct the best possible BibTeX from all available information. + +Choose the entry type: + +| Type | Use when | +|---|---| +| `@article` | journal or conference paper | +| `@book` | book or edited volume | +| `@techreport` | institutional or technical report | +| `@misc` | dataset, software, website, or unclear | + +**Citation key format:** `Author1Author2YYYY` using last names only (e.g. `MoreGarbowHillstrom1981`, `HockSchittkowski1981`). For a single author: `AuthorYYYY`. For institutional authors use a compact CamelCase form (e.g. `NISTStRD`). + +**`pages` field:** always use double-hyphen: `175--184`. Convert Unicode en-dash `–`, em-dash `—`, or single hyphen `-` between page numbers to `--`. + +**LaTeX encoding for special characters:** `Mor{\'e}`, `{\'E}`, etc. + +**Flag uncertain fields** with a trailing `% UNVERIFIED` comment on that line. + +### Step 5 — Present the result + +Show three things: + +**1. Status line** — one sentence: whether the DOI was found, and from where. + +**2. The BibTeX entry** in a code block: +```bibtex +@article{AuthorYear, + author = {Last, First and Last2, First2}, + title = {Title of the Article}, + journal = {Journal Name}, + year = {YYYY}, + volume = {V}, + number = {N}, + pages = {P1--P2}, + doi = {10.xxxx/xxxxx} +} +``` + +**3. The Julia snippet** ready to paste into `src/Meta/<name>.jl`: +```julia +:reference => raw""" +@article{AuthorYear, + author = {Last, First and Last2, First2}, + title = {Title of the Article}, + journal = {Journal Name}, + year = {YYYY}, + volume = {V}, + number = {N}, + pages = {P1--P2}, + doi = {10.xxxx/xxxxx} +} +""", +``` + +### Step 6 — Suggest next steps + +- List any fields marked `% UNVERIFIED` that the user should check manually. +- If a DOI was found and the file's `:url` field does not already contain it, suggest adding `https://doi.org/<DOI>` to `:url`. The `:url` field supports multiple URLs as a **comma-separated string**. If a URL is already present, append the new one: `"https://existing.url, https://doi.org/<DOI>"`. +- If the problem name was given, name the exact file to edit: `src/Meta/<name>.jl`. + +--- + +## BibTeX type templates (reference) + +```bibtex +@article{AuthorYear, + author = {Last, First}, + title = {Title}, + journal = {Journal}, + year = {YYYY}, + volume = {V}, + number = {N}, + pages = {P1--P2}, + doi = {10.xxxx/xxxxx} +} + +@book{AuthorYear, + author = {Last, First}, + title = {Book Title}, + publisher = {Publisher}, + address = {City}, + year = {YYYY} +} + +@techreport{AuthorYear, + author = {Last, First}, + title = {Report Title}, + institution = {Institution}, + number = {Report Number}, + year = {YYYY} +} + +@misc{AuthorYear, + author = {Last, First}, + title = {Title}, + year = {YYYY}, + howpublished = {\url{https://...}} +} +``` diff --git a/.gitignore b/.gitignore index 3f02ca741..7a3b58566 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,7 @@ *.jl.*.cov *.jl.mem Manifest.toml +.DS_Store +*.bib +*/settings.local.json +.DS_Store \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 000000000..3d7bec6ff --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,201 @@ +# CLAUDE.md — OptimizationProblems.jl + +## Overview + +**OptimizationProblems.jl** (v0.9.3) is a Julia package providing ~680+ nonlinear programming (NLP) test problems for benchmarking and developing optimization solvers. It is part of the [JuliaSmoothOptimizers](https://github.com/JuliaSmoothOptimizers) ecosystem and integrates with NLPModels, ADNLPModels, and JuMP. + +**Central registry:** `OptimizationProblems.meta` is a `DataFrame` built at load time from `src/Meta/`. It gives instant access to metadata (nvar, ncon, objtype, origin, bounds, feasibility, …) for all problems **without instantiating any model** — extremely useful for filtering and analysis. + +```julia +using OptimizationProblems +# Filter unconstrained problems with ≤ 50 variables +df = OptimizationProblems.meta +df[(df.ncon .== 0) .& (df.nvar .≤ 50), :] +``` + +--- + +## Repository Structure + +``` +src/ + OptimizationProblems.jl # Main module — builds meta DataFrame + ADNLPProblems/ + ADNLPProblems.jl # Module loader (lazy, requires ADNLPModels) + <name>.jl # One file per problem + PureJuMP/ + PureJuMP.jl # Module loader (always loaded) + <name>.jl # One file per problem + Meta/ + <name>.jl # One metadata file per problem +test/ # Julia unit test suite +docs/ # Documenter.jl docs (make.jl, src/) + src/contributing.md # Authoritative contributor guidelines +benchmark/ # BenchmarkTools suite (own Project.toml) +data/ # .jld2 data files for mesh-heavy problems +``` + +--- + +## Three-File Pattern + +New problems should provide exactly three files sharing the same base name. (Some existing problems are JuMP-only and lack an `ADNLPProblems` file; a few files also define multiple problems — see `triangle.jl` — but these are legacy exceptions.) + +### `src/ADNLPProblems/<name>.jl` + +AD-based model. Lazy-loaded (only available when `ADNLPModels` is imported). + +```julia +export <name> + +function <name>(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + # x0 must be Vector{T}, objective must return type T + f(x) = ... + x0 = ones(T, n) + return ADNLPModels.ADNLPModel(f, x0, name = "<name>"; kwargs...) +end +``` + +### `src/PureJuMP/<name>.jl` + +JuMP algebraic model. Always loaded. Short docstring above the function. + +```julia +export <name> + +"Short description of the problem." +function <name>(args...; n::Int = default_nvar, kwargs...) + nlp = Model() + # define variables, constraints, objective + return nlp +end +``` + +### `src/Meta/<name>.jl` + +Metadata dictionary. Does **not** export the problem function. + +```julia +<name>_meta = Dict( + :nvar => 10, + :variable_nvar => false, + :ncon => 0, + :variable_ncon => false, + :minimize => true, + :name => "<name>", + :has_equalities_only => false, + :has_inequalities_only => false, + :has_bounds => false, + :has_fixed_variables => false, + :objtype => :other, # see valid values below + :contype => :unconstrained, # see valid values below + :best_known_lower_bound => -Inf, + :best_known_upper_bound => Inf, + :is_feasible => true, + :defined_everywhere => true, + :origin => :academic, # see valid values below + # Additional fields (branch move-docstring-to-metadata): + :url => "https://...", # must match ^https?:// + :notes => raw"""""", # problem description + :origin_notes => raw"""""", # provenance + :reference => raw"""@type{key, ...}""", # BibTeX, balanced braces + :lib => "CUTEst:NAME", # library codes, comma-separated +) +``` + +**Valid values:** +- `:objtype`: `:none`, `:constant`, `:linear`, `:quadratic`, `:sum_of_squares`, `:other`, `:least_squares` +- `:contype`: `:unconstrained`, `:linear`, `:quadratic`, `:general` +- `:origin`: `:academic`, `:modelling`, `:real`, `:unknown` + +--- + +## Scalable Problems + +Problems that accept a variable size use `n::Int = default_nvar` (default = 100). + +- Adjust invalid `n` to the closest valid value silently with `@warn`, never throw an error. The exact adjustment depends on the problem's constraints on `n` (minimum size, divisibility, parity, etc.). +- Export getter functions for the Meta file: `get_<name>_nvar`, `get_<name>_ncon`, `get_<name>_nlin`, `get_<name>_nnln`, `get_<name>_nequ`, `get_<name>_nineq` +- Reference: `src/ADNLPProblems/arglina.jl`, `src/PureJuMP/arglina.jl`, `src/Meta/arglina.jl` + +--- + +## Nonlinear Least-Squares (NLS) Problems + +- Set `:objtype => :least_squares` in the meta file +- Support `use_nls=true/false` keyword: returns `ADNLSModel` or `ADNLPModel` +- Export `get_<name>_nls_nequ` +- `residual!(nls, x, Fx)` must be allocation-free +- Reference: `src/ADNLPProblems/lanczos1.jl`, `src/ADNLPProblems/brownal.jl` + +--- + +## Code Formatting + +Uses [JuliaFormatter.jl](https://github.com/domluna/JuliaFormatter.jl). Config is in `.JuliaFormatter.toml`: + +| Setting | Value | +|---------|-------| +| `margin` | 100 | +| `indent` | 2 | +| `normalize_line_endings` | `"unix"` | + +Format the codebase locally: + +```julia +using JuliaFormatter +format(".") +``` + +--- + +## Testing + +The test suite uses Julia's `Test` stdlib with `Distributed` for parallel execution. + +``` +julia --project test/runtests.jl +``` + +Key test files: + +| File | Purpose | +|------|---------| +| `test/test-defined-problems.jl` | Verifies all meta entries have working implementations | +| `test/test-scalable.jl` | Validates scalable problem sizing and getter formulas | +| `test/test-in-place-residual.jl` | Allocation checks for NLS residuals | +| `test/utils.jl` | Helpers: `generate_meta()`, `test_multi_precision()` | + +**Always test:** +- Multiple sizes for scalable problems: `n = 5`, `n = default_nvar`, large `n` +- Both `Float32` and `Float64` +- Allocation-free in-place APIs (`cons_nln!`, `residual!`) + +--- + +## Good Reference Problems + +| Category | Examples | +|----------|---------| +| Unconstrained, scalable | `arwhead`, `arglina` | +| Constrained | `hs100`, `catmix` | +| Least squares (NLS) | `lanczos1`, `brownal` | +| With data files | `catmix`, `rocket` | + +--- + +## Benchmarks + +The `benchmark/` directory has its own Julia environment. Run locally: + +``` +julia benchmark/run_local.jl +``` + +Benchmarks cover constructor time and objective evaluation for both `ADNLPProblems` and `PureJuMP`, using `BenchmarkTools.jl`. + +--- + +## Full Contributor Guidelines + +See [`docs/src/contributing.md`](docs/src/contributing.md) for the complete checklist when adding or modifying problems, including the full reviewer checklist for meta fields, implementation consistency, type stability, and allocation requirements. diff --git a/Project.toml b/Project.toml index f69a86a54..7f6e173be 100644 --- a/Project.toml +++ b/Project.toml @@ -27,4 +27,4 @@ NLPModelsJuMP = "792afdf1-32c1-5681-94e0-d7bf7a5df49e" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [targets] -test = ["ADNLPModels", "Distributed", "NLPModels", "NLPModelsJuMP", "Test"] +test = ["ADNLPModels", "Distributed", "NLPModels", "NLPModelsJuMP", "Test"] \ No newline at end of file diff --git a/docs/src/contributing.md b/docs/src/contributing.md index 1fc1c9b2f..d252b9bed 100644 --- a/docs/src/contributing.md +++ b/docs/src/contributing.md @@ -20,8 +20,9 @@ Here is a to-do list, to help you add new problems: - `src/PureJuMP/problem_name.jl` - `src/Meta/problem_name.jl` In both cases, the function must have the same name `problem_name` as the file. +The function should be only exported from `src/ADNLPProblems/problem_name.jl` and `src/PureJuMP/problem_name.jl`. * When submitting a problem, please pay particular attention to the documentation. We would like to gather as much information as possible on the provenance of problems, other problem sets where the problems are present, and general information on the problem. -The documentation should be added to the file in the `PureJuMP` folder. +The documentation should be added to the corresponding fields in the `Meta` folder. * New problems can be scalable, see [ADNLPProblems/arglina.jl](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/arglina.jl) and [PureJuMP/arglina.jl](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/PureJuMP/arglina.jl) for examples. In that case, the first keyword parameter should be the number of variables `n::Int` and have the default value `default_nvar` (constant predefined in the module). If your problem has restrictions on the number of variables, e.g., `n` should be odd, or `n` should have the form `4k + 3`, then, instead of throwing errors when the restrictions are not satisfied, you should instead use the number of variables to be as close to `n` as possible. For example, if you want `n` odd and `n = 100` is passed, you can internally convert to `n = 99`. If you want `n = 4k + 3`, and `n = 100` is passed, then compute `k = round(Int, (n - 3) / 4)` and update `n`. * A first version of the `meta` can be generated using `generate_meta`. A `String` is returned that can be copy-pasted into the `Meta` folder, and then edited. @@ -34,6 +35,7 @@ The documentation should be added to the file in the `PureJuMP` folder. ``` * Problems modeled with `ADNLPModels` should be type-stable, i.e. they should all have keyword argument `type::Type{T} = Float64` where `T` is the type of the initial guess and the type used by the `NLPModel` API. +* The `name` keyword should be passed to `ADNLPModel`/`ADNLSModel` with a meaningful problem name. ## Templates for the new functions @@ -66,9 +68,84 @@ Next, we describe the `ADNLPProblems` file `function_name.jl`. export function_name function function_name(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - # define f - # define x0 + # define f (ensure f(x0) is of type T) + # define x0 (ensure x0 isa Vector{T}) # nlp = ADNLPModels.ADNLPModel(f, x0, name = "function_name"; kwargs...) return nlp end ``` + +## Validating new problems + +* Ensure all meta fields are accurate and complete, e.g. `:origin`, `:objtype`, and `:name` in [`src/Meta/arglina.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/Meta/arglina.jl). +* Implementations in `ADNLPProblems` and `PureJuMP` must use the same initial point, variable bounds, and constraint bounds; compare `arglina` in [`src/ADNLPProblems/arglina.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/arglina.jl) and [`src/PureJuMP/arglina.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/PureJuMP/arglina.jl). +* The implemented objective function must be callable at the starting point. +* For `ADNLPModels` problems, the objective should return values of type `T` from `type::Type{T}` and the initial point should be typed consistently (`x0::Vector{T}`). +* Pass a meaningful `name` keyword to `ADNLPModel` constructors, for example `name = "arglina"` in [`src/ADNLPProblems/arglina.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/arglina.jl). +* For constrained problems, ensure in-place constraint evaluations (e.g., `cons_nln!`) are allocation-free, for example the checks in [`test/test-utils.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/test/test-utils.jl). +* Objective function evaluations should have minimal allocations. +* For variable-size problems, validate at multiple sizes (for example `n = 5`, `n = default_nvar`, and a larger `n`) and check all of the following, e.g. [`arglina`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/arglina.jl) and [`test/test-scalable.jl`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/test/test-scalable.jl): + - model instantiation succeeds for each tested `n`; + - effective `nvar` matches the intended rule (including any internal adjustment such as odd `n` or `4k + 3` constraints); + - if `n` is internally adjusted, the effective value is the closest feasible one to the requested `n`, and a warning is emitted; + - metadata formulas (`nvar`, `nnzh`, `nnzj`, etc.) match the instantiated model values. +* Optional (recommended): provide in the PR a local solver sanity check showing that a standard solver can solve the model from the provided starting point, see example below. + +```julia +using OptimizationProblems, OptimizationProblems.ADNLPProblems +using NLPModelsIpopt + +nlp = problem_name() +stats = ipopt(nlp) +stats.status +``` +### Nonlinear Least Squares (NLS) Problems + +If your problem is a nonlinear least squares (NLS), please follow these guidelines: +* Set the `:objtype` entry in the meta file to `:least_squares`. +* Add a getter for the number of NLS equations, named `get_problemname_nls_nequ`. +* Support the `use_nls=true/false` keyword to allow both `ADNLPModel` and `ADNLSModel` instantiation from the same problem. +* Instantiate both `ADNLPModel` and `ADNLSModel`, ensure `residual!(nls, x, Fx)` is allocation-free, and check that objectives agree (or differ by a factor of 2 for LS). +* In the `PureJuMP` file, clearly document that the problem is a nonlinear least squares (NLS) problem and explain how users can construct both the standard and NLS variants. +* Explicitly state that the NLS variant can be accessed by passing the keyword argument `use_nls=true` when constructing the problem. +* Make sure this information is also reflected in the meta file, so users and tools can easily discover the NLS capability. +* In validation, also run the local solver sanity check with `problem_name(use_nls=true)`. +See existing NLS problems (e.g., [`lanczos1`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/lanczos1.jl), [`lanczos2`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/lanczos2.jl), [`brownal`](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/brownal.jl)) for templates. + +## Reviewer Checklist for New Problems + +- [ ] First check: the problem is added in exactly these three files with the same base name: `src/ADNLPProblems/problem_name.jl`, `src/PureJuMP/problem_name.jl`, and `src/Meta/problem_name.jl`. + Example: [`arglina` in ADNLPProblems](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/ADNLPProblems/arglina.jl), [`arglina` in PureJuMP](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/PureJuMP/arglina.jl), and [`arglina` in Meta](https://github.com/JuliaSmoothOptimizers/OptimizationProblems.jl/blob/main/src/Meta/arglina.jl). + +**Meta** +- [ ] The corresponding meta file exists (`src/Meta/problem_name.jl`), the problem name matches the AD and JuMP files, and `OptimizationProblems.meta` contains the problem entry. +- [ ] All meta fields (origin, objtype, contype, bounds, best-known, etc.) are filled correctly. +- [ ] The problem origin/provenance is clearly documented and consistent between the `PureJuMP` problem documentation and the `:origin` meta entry. +- [ ] Meta formulas for variable sizes match actual model behavior. + +**Definition** +- [ ] No extra or spurious exports are introduced. +- [ ] The problem function is exported in `src/ADNLPProblems/problem_name.jl` and `src/PureJuMP/problem_name.jl`, and not exported in `src/Meta/problem_name.jl`. +- [ ] Model name matches the file and function name. +- [ ] The implemented objective, constraints, and bounds match the mathematical problem definition from the cited reference/documentation. + +**Implementation** +- [ ] Objective and constraint values agree (ADNLPProblems vs PureJuMP) within tolerance at test points. +- [ ] Number of variables and constraints match. +- [ ] For `type::Type{T}`, `x0 isa Vector{T}` and objective values are of type `T`. +- [ ] `ADNLPModel`/`ADNLSModel` constructors receive a meaningful `name` keyword. + +**Sanity** +- [ ] Objective is callable at the starting point and does not return NaN (unless documented). +- [ ] Model instantiates without error for different types, e.g. Float32 and Float64. +- [ ] For scalable problems, changing `n` updates `nvar` and all related meta fields, and the effective number of variables remains as close as possible to the requested `n` when internal adjustments are required. + +**Zero-Allocation** +- [ ] All in-place APIs (constraints, residuals) are allocation-free. +- [ ] No unnecessary allocations in tight loops or callbacks. +- [ ] Objective evaluation has minimal allocations (ideally allocation-free in performance-critical paths). + +**Least-Squares & In-Place APIs** +- [ ] If least squares, ADNLP constructor supports `nls=true/false` for both ADNLPModel and ADNLSModel. +- [ ] In-place nonlinear constraint evaluations (`cons_nln!(nlp, x, cx)`) and least squares residuals (`residual!`) are allocation-free. +- [ ] For least squares problems, objectives for NLP and NLS must agree (or differ by a factor of 2, as appropriate). diff --git a/docs/src/meta.md b/docs/src/meta.md index 2b4112af9..c4600d7fa 100644 --- a/docs/src/meta.md +++ b/docs/src/meta.md @@ -59,4 +59,52 @@ OptimizationProblems.get_lanczos1_nls_nequ() To filter all NLS problems in the metadata DataFrame: ```@example 1 nls_problems = OptimizationProblems.meta[OptimizationProblems.meta.objtype .== :least_squares, :name] -``` \ No newline at end of file +``` + +### Test-set membership (`:lib`) + +The `:lib` column records membership in named optimization test-set collections. +Each entry is a comma-separated list of `"Collection:ID"` pairs; an empty string +means the problem has no known test-set membership. + +```@example 1 +OptimizationProblems.hs1_meta[:lib] # "CUTEst:HS1, HS:1" +``` + +Known collections (keys of `OptimizationProblems.LIB_REFERENCES`): + +| Key | Description | +|-----|-------------| +| `AMPGO` | Gavana's Global Optimization benchmark suite | +| `COPS` | COPS 3.0 collection (Dolan & Moré, 2004) | +| `CUTEst` | CUTEst testing environment (Gould et al., 2015) | +| `HS` | Hock & Schittkowski (1981), Vol. 187 | +| `HS2` | Schittkowski (1987), Vol. 282 | +| `Luksan` | Luksan, Matonoha & Vlček (2003) — Modified CUTE problems | +| `LuksanSparse` | Luksan, Matonoha & Vlček (2010) — Sparse test problems | +| `MGH` | Moré, Garbow & Hillstrom (1981) | +| `NIST` | NIST/ITL Statistical Reference Datasets | + +To filter by collection, use Julia's `contains` function: + +```@example 1 +meta = OptimizationProblems.meta +cops_problems = meta[contains.(meta.lib, "COPS"), [:name, :lib]] +``` + +```@example 1 +cutest_problems = meta[contains.(meta.lib, "CUTEst"), [:name, :lib]] +``` + +`OptimizationProblems.LIB_REFERENCES` provides the canonical BibTeX entry for +each collection, and [`export_bibtex`](@ref) automatically appends them when +`include_lib_refs = true` (the default). + +## Problem'source information + +The following code will create a .bib file regrouping all the BibTex citations. +```julia +using OptimizationProblems +export_bibtex() +``` +Fields documenting the origin of the problem may be incomplete and any help is welcome. diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 000000000..fb783f3f1 Binary files /dev/null and b/src/.DS_Store differ diff --git a/src/ADNLPProblems/ADNLPProblems.jl b/src/ADNLPProblems/ADNLPProblems.jl index 824468a1f..23c40a033 100644 --- a/src/ADNLPProblems/ADNLPProblems.jl +++ b/src/ADNLPProblems/ADNLPProblems.jl @@ -1,6 +1,7 @@ module ADNLPProblems using Requires +import ..OptimizationProblems: @adjust_nvar_warn const default_nvar = 100 const data_path = joinpath(@__DIR__, "..", "..", "data") diff --git a/src/ADNLPProblems/NZF1.jl b/src/ADNLPProblems/NZF1.jl index e56c47ea0..1dcf962d7 100644 --- a/src/ADNLPProblems/NZF1.jl +++ b/src/ADNLPProblems/NZF1.jl @@ -6,8 +6,10 @@ function NZF1(; use_nls::Bool = false, kwargs...) end function NZF1(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n nbis = max(2, div(n, 13)) n = 13 * nbis + @adjust_nvar_warn("NZF1", n_org, n) l = div(n, 13) function f(x; l = l) return sum( @@ -29,8 +31,10 @@ function NZF1(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwarg end function NZF1(::Val{:nls}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n nbis = max(2, div(n, 13)) n = 13 * nbis + @adjust_nvar_warn("NZF1", n_org, n) l = div(n, 13) function F!(r, x; l = l) for i = 1:l diff --git a/src/ADNLPProblems/bearing.jl b/src/ADNLPProblems/bearing.jl index 40ab56ca9..95d0d3b4f 100644 --- a/src/ADNLPProblems/bearing.jl +++ b/src/ADNLPProblems/bearing.jl @@ -10,6 +10,10 @@ function bearing(; # nx > 0 # grid points in 1st direction # ny > 0 # grid points in 2nd direction + nx = max(1, nx) + ny = max(1, ny) + @adjust_nvar_warn("bearing", n, (nx + 2) * (ny + 2)) + b = 10 # grid is (0,2*pi)x(0,2*b) e = 1 // 10 # eccentricity diff --git a/src/ADNLPProblems/broydn7d.jl b/src/ADNLPProblems/broydn7d.jl index 0ca69b21d..8a2f74e80 100644 --- a/src/ADNLPProblems/broydn7d.jl +++ b/src/ADNLPProblems/broydn7d.jl @@ -1,9 +1,10 @@ export broydn7d function broydn7d(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - mod(n, 2) > 0 && @warn("broydn7d: number of variables adjusted to be even") + n_org = n n2 = max(1, div(n, 2)) n = 2 * n2 + @adjust_nvar_warn("broydn7d", n_org, n) function f(x; n = length(x), n2 = n2) p = 7 // 3 return abs(1 - 2 * x[2] + (3 - x[1] / 2) * x[1])^p + diff --git a/src/ADNLPProblems/catenary.jl b/src/ADNLPProblems/catenary.jl index 0c4756f65..bd96b25fb 100644 --- a/src/ADNLPProblems/catenary.jl +++ b/src/ADNLPProblems/catenary.jl @@ -8,10 +8,10 @@ function catenary( FRACT = 0.6, kwargs..., ) where {T} - (n % 3 == 0) || @warn("catenary: number of variables adjusted to be a multiple of 3") + n_org = n n = 3 * max(1, div(n, 3)) - (n < 6) || @warn("catenary: number of variables adjusted to be greater or equal to 6") n = max(n, 6) + @adjust_nvar_warn("catenary", n_org, n) ## Model Parameters N = div(n, 3) - 2 diff --git a/src/ADNLPProblems/chain.jl b/src/ADNLPProblems/chain.jl index f92a59202..9ebea3ed6 100644 --- a/src/ADNLPProblems/chain.jl +++ b/src/ADNLPProblems/chain.jl @@ -2,6 +2,7 @@ export chain function chain(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} nh = max(2, div(n - 4, 4)) + @adjust_nvar_warn("chain", n, 4 * nh + 4) L = 4 a = 1 diff --git a/src/ADNLPProblems/chainwoo.jl b/src/ADNLPProblems/chainwoo.jl index 9d1520fe8..63c8e5345 100644 --- a/src/ADNLPProblems/chainwoo.jl +++ b/src/ADNLPProblems/chainwoo.jl @@ -6,8 +6,9 @@ function chainwoo(; use_nls::Bool = false, kwargs...) end function chainwoo(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 4 == 0) || @warn("chainwoo: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("chainwoo", n_org, n) function f(x; n = length(x)) return 1 + sum( 100 * (x[2 * i] - x[2 * i - 1]^2)^2 + @@ -23,8 +24,9 @@ function chainwoo(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, k end function chainwoo(::Val{:nls}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 4 == 0) || @warn("chainwoo: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("chainwoo", n_org, n) function F!(r, x; n = length(x)) nb = div(n, 2) - 1 r[1] = 1 diff --git a/src/ADNLPProblems/channel.jl b/src/ADNLPProblems/channel.jl index 154f6ebd5..69bdc1644 100644 --- a/src/ADNLPProblems/channel.jl +++ b/src/ADNLPProblems/channel.jl @@ -2,6 +2,7 @@ export channel function channel(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} nh = max(2, div(n, 8)) + @adjust_nvar_warn("channel", n, 8 * nh) nc = 4 nd = 4 diff --git a/src/ADNLPProblems/clnlbeam.jl b/src/ADNLPProblems/clnlbeam.jl index fc46d8e97..cf4f63cfb 100644 --- a/src/ADNLPProblems/clnlbeam.jl +++ b/src/ADNLPProblems/clnlbeam.jl @@ -2,6 +2,7 @@ export clnlbeam function clnlbeam(args...; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} N = div(n - 3, 3) + @adjust_nvar_warn("clnlbeam", n, 3 * N + 3) h = 1 // N alpha = 350 function f(y; N = N, h = h, alpha = alpha) diff --git a/src/ADNLPProblems/clplatea.jl b/src/ADNLPProblems/clplatea.jl index a54e08ade..828eaba0a 100644 --- a/src/ADNLPProblems/clplatea.jl +++ b/src/ADNLPProblems/clplatea.jl @@ -6,9 +6,10 @@ function clplatea(; wght = -0.1, kwargs..., ) where {T} + n_org = n p = max(floor(Int, sqrt(n)), 3) - p * p != n && @warn("clplatea: number of variables adjusted from $n to $(p*p)") n = p * p + @adjust_nvar_warn("clplatea", n_org, n) hp2 = (1 // 2) * p^2 function f(x; p = p, hp2 = hp2, wght = wght) return (eltype(x)(wght) * x[p + (p - 1) * p]) + diff --git a/src/ADNLPProblems/clplateb.jl b/src/ADNLPProblems/clplateb.jl index a732e4311..5f2d449cb 100644 --- a/src/ADNLPProblems/clplateb.jl +++ b/src/ADNLPProblems/clplateb.jl @@ -6,9 +6,10 @@ function clplateb(; wght = -0.1, kwargs..., ) where {T} + n_org = n p = max(floor(Int, sqrt(n)), 3) - p * p != n && @warn("clplateb: number of variables adjusted from $n to $(p*p)") n = p * p + @adjust_nvar_warn("clplateb", n_org, n) hp2 = 1 // 2 * p^2 function f(x; p = p, hp2 = hp2, wght = wght) return sum(eltype(x)(wght) / (p - 1) * x[p + (j - 1) * p] for j = 1:p) + diff --git a/src/ADNLPProblems/clplatec.jl b/src/ADNLPProblems/clplatec.jl index 5d77a3f36..03d71267f 100644 --- a/src/ADNLPProblems/clplatec.jl +++ b/src/ADNLPProblems/clplatec.jl @@ -8,9 +8,10 @@ function clplatec(; l = 0.01, kwargs..., ) where {T} + n_org = n p = max(floor(Int, sqrt(n)), 3) - p * p != n && @warn("clplatec: number of variables adjusted from $n to $(p*p)") n = p * p + @adjust_nvar_warn("clplatec", n_org, n) hp2 = 1 // 2 * p^2 function f(x; p = p, hp2 = hp2, wght = wght, r = r, l = l) diff --git a/src/ADNLPProblems/dixmaan_efgh.jl b/src/ADNLPProblems/dixmaan_efgh.jl index 325a3c089..dddd4f371 100644 --- a/src/ADNLPProblems/dixmaan_efgh.jl +++ b/src/ADNLPProblems/dixmaan_efgh.jl @@ -9,9 +9,10 @@ function dixmaane(; δ = 125 // 1000, kwargs..., ) where {T} - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaane", n_org, n) function f(x; n = length(x), α = α, β = β, γ = γ, δ = δ) return 1 + sum(i // n * α * x[i]^2 for i = 1:n) + diff --git a/src/ADNLPProblems/dixmaan_ijkl.jl b/src/ADNLPProblems/dixmaan_ijkl.jl index f1d86948b..c3985b14e 100644 --- a/src/ADNLPProblems/dixmaan_ijkl.jl +++ b/src/ADNLPProblems/dixmaan_ijkl.jl @@ -9,9 +9,10 @@ function dixmaani(; δ = 125 // 1000, kwargs..., ) where {T} - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaani", n_org, n) function f(x; n = length(x), α = α, β = β, γ = γ, δ = δ) return 1 + sum((i // n)^2 * α * x[i]^2 for i = 1:n) + diff --git a/src/ADNLPProblems/dixmaan_mnop.jl b/src/ADNLPProblems/dixmaan_mnop.jl index e62e449e4..ea5d0a247 100644 --- a/src/ADNLPProblems/dixmaan_mnop.jl +++ b/src/ADNLPProblems/dixmaan_mnop.jl @@ -9,9 +9,10 @@ function dixmaanm(; δ = 125 // 1000, kwargs..., ) where {T} - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaanm", n_org, n) function f(x; n = length(x), α = α, β = β, γ = γ, δ = δ) return 1 + sum((i // n)^2 * α * x[i]^2 for i = 1:n) + diff --git a/src/ADNLPProblems/elec.jl b/src/ADNLPProblems/elec.jl index 058d7f771..92269bbd8 100644 --- a/src/ADNLPProblems/elec.jl +++ b/src/ADNLPProblems/elec.jl @@ -1,7 +1,9 @@ export elec function elec(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_orig = n n = max(2, div(n, 3)) + @adjust_nvar_warn("elec", n_orig, 3 * n) # Define the objective function to minimize function f(x; n = n) return sum( diff --git a/src/ADNLPProblems/fminsrf2.jl b/src/ADNLPProblems/fminsrf2.jl index c7fe806ea..b56808384 100644 --- a/src/ADNLPProblems/fminsrf2.jl +++ b/src/ADNLPProblems/fminsrf2.jl @@ -1,12 +1,12 @@ export fminsrf2 function fminsrf2(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - n < 4 && @warn("fminsrf2: number of variables must be ≥ 4") + n_org = n n = max(4, n) p = floor(Int, sqrt(n)) - p * p != n && @warn("fminsrf2: number of variables adjusted from $n down to $(p*p)") n = p * p + @adjust_nvar_warn("fminsrf2", n_org, n) h00 = 1 slopej = 4 diff --git a/src/ADNLPProblems/hovercraft1d.jl b/src/ADNLPProblems/hovercraft1d.jl index e2e1f30c4..09e2aa4a0 100644 --- a/src/ADNLPProblems/hovercraft1d.jl +++ b/src/ADNLPProblems/hovercraft1d.jl @@ -12,6 +12,7 @@ function hovercraft1d( kwargs..., ) where {T} N = div(n, 3) + @adjust_nvar_warn("hovercraft1d", n, 3 * N - 1) function f(y; N = N) @views x, v, u = y[1:N], y[(N + 1):(2 * N)], y[(2 * N + 1):end] return 1 // 2 * sum(u .^ 2) @@ -73,6 +74,7 @@ function hovercraft1d( kwargs..., ) where {T} N = div(n, 3) + @adjust_nvar_warn("hovercraft1d", n, 3 * N - 1) function F!(r, y; N = N) @views x, v, u = y[1:N], y[(N + 1):(2 * N)], y[(2 * N + 1):end] r .= u diff --git a/src/ADNLPProblems/marine.jl b/src/ADNLPProblems/marine.jl index aa96414d9..5b01f2b1e 100644 --- a/src/ADNLPProblems/marine.jl +++ b/src/ADNLPProblems/marine.jl @@ -1,12 +1,14 @@ export marine function marine(; n::Int = default_nvar, nc::Int = 1, type::Type{T} = Float64, kwargs...) where {T} + n_orig = n nc = max(min(nc, 4), 1) # number of collocation points ne = 8 # number of differential equations nm = 21 # number of measurements n = max(n, 3 * ne * nc + ne + 2 * ne) nh = Int(round((n - 2 * ne + 1) / (3 * ne * nc + ne))) # number of partition intervals + @adjust_nvar_warn("marine", n_orig, 8 + 7 + nh * (8 + 3 * 8 * nc)) # roots of k-th degree Legendre polynomial rho = if nc == 1 diff --git a/src/ADNLPProblems/powellsg.jl b/src/ADNLPProblems/powellsg.jl index 38ac7db65..0c6d99280 100644 --- a/src/ADNLPProblems/powellsg.jl +++ b/src/ADNLPProblems/powellsg.jl @@ -6,8 +6,9 @@ function powellsg(; use_nls::Bool = false, kwargs...) end function powellsg(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 4 == 0) || @warn("powellsg: number of variables adjusted to be a multiple of 4") - n = 4 * max(1, div(n, 4)) # number of variables adjusted to be a multiple of 4 + n_org = n + n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("powellsg", n_org, n) function f(x; n = length(x)) return sum( (x[j] + 10 * x[j + 1])^2 + @@ -24,8 +25,9 @@ function powellsg(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, k end function powellsg(::Val{:nls}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 4 == 0) || @warn("powellsg: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("powellsg", n_org, n) function F!(r, x; n = length(x)) @inbounds for j = 1:4:n r[j] = x[j] + 10 * x[j + 1] diff --git a/src/ADNLPProblems/robotarm.jl b/src/ADNLPProblems/robotarm.jl index a1264eebd..cd41e9cce 100644 --- a/src/ADNLPProblems/robotarm.jl +++ b/src/ADNLPProblems/robotarm.jl @@ -10,8 +10,10 @@ export robotarm # classification OOR2-AN-V-V function robotarm(; n::Int = default_nvar, L = 4.5, type::Type{T} = Float64, kwargs...) where {T} + n_orig = n N = max(2, div(n, 9)) n = N + 1 + @adjust_nvar_warn("robotarm", n_orig, 9 * n + 1) L = T(L) # x : vector of variables, of the form : [ρ(t=t1); ρ(t=t2); ... ρ(t=tf), θ(t=t1), ..., then ρ_dot, ..., then ρ_acc, .. ϕ_acc, tf] diff --git a/src/ADNLPProblems/spmsrtls.jl b/src/ADNLPProblems/spmsrtls.jl index d55161026..cfcc190b4 100644 --- a/src/ADNLPProblems/spmsrtls.jl +++ b/src/ADNLPProblems/spmsrtls.jl @@ -6,8 +6,10 @@ function spmsrtls(; use_nls::Bool = false, kwargs...) end function spmsrtls(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n m = max(Int(round((n + 2) / 3)), 34) n = m * 3 - 2 + @adjust_nvar_warn("spmsrtls", n_org, n) p = [sin(i^2) for i = 1:n] x0 = T[p[i] / 5 for i = 1:n] @@ -59,8 +61,10 @@ function spmsrtls(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, k end function spmsrtls(::Val{:nls}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n m = max(Int(round((n + 2) / 3)), 34) n = m * 3 - 2 + @adjust_nvar_warn("spmsrtls", n_org, n) p = [sin(i^2) for i = 1:n] x0 = T[p[i] / 5 for i = 1:n] diff --git a/src/ADNLPProblems/srosenbr.jl b/src/ADNLPProblems/srosenbr.jl index 451d0a6e7..a3d42b4b9 100644 --- a/src/ADNLPProblems/srosenbr.jl +++ b/src/ADNLPProblems/srosenbr.jl @@ -1,8 +1,9 @@ export srosenbr function srosenbr(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 2 == 0) || @warn("srosenbr: number of variables adjusted to be even") + n_org = n n = 2 * max(1, div(n, 2)) + @adjust_nvar_warn("srosenbr", n_org, n) function f(x; n = length(x)) return sum(100 * (x[2 * i] - x[2 * i - 1]^2)^2 + (x[2 * i - 1] - 1)^2 for i = 1:div(n, 2)) end diff --git a/src/ADNLPProblems/structural.jl b/src/ADNLPProblems/structural.jl index 0793f199b..1f8742b1c 100644 --- a/src/ADNLPProblems/structural.jl +++ b/src/ADNLPProblems/structural.jl @@ -1,6 +1,7 @@ export structural function structural(args...; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_orig = n n = max(n, 100) sub2ind(shape, a, b) = LinearIndices(shape)[CartesianIndex.(a, b)] @@ -23,6 +24,7 @@ function structural(args...; n::Int = default_nvar, type::Type{T} = Float64, kwa M = Int(N * (N - 1) / 2) # number of edges + @adjust_nvar_warn("structural", n_orig, 2 * M) # EDGES: columns are the indices of the nodes at either end edges = Array{Int}(zeros(M, 2)) diff --git a/src/ADNLPProblems/watson.jl b/src/ADNLPProblems/watson.jl index 56e1f2757..ef4900795 100644 --- a/src/ADNLPProblems/watson.jl +++ b/src/ADNLPProblems/watson.jl @@ -6,7 +6,9 @@ function watson(; use_nls::Bool = false, kwargs...) end function watson(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n n = min(max(n, 2), 31) + @adjust_nvar_warn("watson", n_org, n) function f(x; n = n) Ti = eltype(x) return 1 // 2 * sum( @@ -31,7 +33,9 @@ function watson(::Val{:nlp}; n::Int = default_nvar, type::Type{T} = Float64, kwa end function watson(::Val{:nls}; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} + n_org = n n = min(max(n, 2), 31) + @adjust_nvar_warn("watson", n_org, n) function F!(r, x; n = n) Ti = eltype(x) for i = 1:29 diff --git a/src/ADNLPProblems/woods.jl b/src/ADNLPProblems/woods.jl index 426166561..7c7934d39 100644 --- a/src/ADNLPProblems/woods.jl +++ b/src/ADNLPProblems/woods.jl @@ -1,8 +1,9 @@ export woods function woods(; n::Int = default_nvar, type::Type{T} = Float64, kwargs...) where {T} - (n % 4 == 0) || @warn("woods: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("woods", n_org, n) function f(x; n = length(x)) return sum( 100 * (x[4 * i - 2] - x[4 * i - 3]^2)^2 + diff --git a/src/Meta/AMPGO02.jl b/src/Meta/AMPGO02.jl index fe7bf3299..a6299bcc3 100644 --- a/src/Meta/AMPGO02.jl +++ b/src/Meta/AMPGO02.jl @@ -16,6 +16,27 @@ AMPGO02_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 2 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:2", ) get_AMPGO02_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO02_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO03.jl b/src/Meta/AMPGO03.jl index ea791e6ea..8989011ab 100644 --- a/src/Meta/AMPGO03.jl +++ b/src/Meta/AMPGO03.jl @@ -16,6 +16,27 @@ AMPGO03_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 3 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:3", ) get_AMPGO03_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO03_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO04.jl b/src/Meta/AMPGO04.jl index 545874ba5..f68a03ed3 100644 --- a/src/Meta/AMPGO04.jl +++ b/src/Meta/AMPGO04.jl @@ -16,6 +16,27 @@ AMPGO04_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 4 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:4", ) get_AMPGO04_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO04_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO05.jl b/src/Meta/AMPGO05.jl index c44599344..dee2c0dc5 100644 --- a/src/Meta/AMPGO05.jl +++ b/src/Meta/AMPGO05.jl @@ -16,6 +16,27 @@ AMPGO05_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 5 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:5", ) get_AMPGO05_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO05_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO06.jl b/src/Meta/AMPGO06.jl index b19ae7fb2..2a0316efd 100644 --- a/src/Meta/AMPGO06.jl +++ b/src/Meta/AMPGO06.jl @@ -16,6 +16,27 @@ AMPGO06_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 6 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:6", ) get_AMPGO06_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO06_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO07.jl b/src/Meta/AMPGO07.jl index c30afe99c..843e93973 100644 --- a/src/Meta/AMPGO07.jl +++ b/src/Meta/AMPGO07.jl @@ -16,6 +16,27 @@ AMPGO07_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 7 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:7", ) get_AMPGO07_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO07_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO08.jl b/src/Meta/AMPGO08.jl index b7478bb98..be1c6af93 100644 --- a/src/Meta/AMPGO08.jl +++ b/src/Meta/AMPGO08.jl @@ -16,6 +16,27 @@ AMPGO08_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 8 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:8", ) get_AMPGO08_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO08_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO09.jl b/src/Meta/AMPGO09.jl index 800303b3e..e23e5665a 100644 --- a/src/Meta/AMPGO09.jl +++ b/src/Meta/AMPGO09.jl @@ -16,6 +16,27 @@ AMPGO09_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 9 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:9", ) get_AMPGO09_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO09_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO10.jl b/src/Meta/AMPGO10.jl index 872c3522b..85b257b9b 100644 --- a/src/Meta/AMPGO10.jl +++ b/src/Meta/AMPGO10.jl @@ -16,6 +16,27 @@ AMPGO10_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 10 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:10", ) get_AMPGO10_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO10_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO11.jl b/src/Meta/AMPGO11.jl index 654b4bc89..46260adec 100644 --- a/src/Meta/AMPGO11.jl +++ b/src/Meta/AMPGO11.jl @@ -16,6 +16,27 @@ AMPGO11_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 11 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:11", ) get_AMPGO11_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO11_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO12.jl b/src/Meta/AMPGO12.jl index b99e4d7b4..0e92d8f00 100644 --- a/src/Meta/AMPGO12.jl +++ b/src/Meta/AMPGO12.jl @@ -16,6 +16,27 @@ AMPGO12_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 12 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:12", ) get_AMPGO12_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO12_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO13.jl b/src/Meta/AMPGO13.jl index bd0afe5a0..63873e9ed 100644 --- a/src/Meta/AMPGO13.jl +++ b/src/Meta/AMPGO13.jl @@ -16,6 +16,27 @@ AMPGO13_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 13 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:13", ) get_AMPGO13_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO13_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO14.jl b/src/Meta/AMPGO14.jl index 19963358c..73a15fd53 100644 --- a/src/Meta/AMPGO14.jl +++ b/src/Meta/AMPGO14.jl @@ -16,6 +16,27 @@ AMPGO14_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 14 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:14", ) get_AMPGO14_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO14_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO15.jl b/src/Meta/AMPGO15.jl index 8373242e4..31d3f6311 100644 --- a/src/Meta/AMPGO15.jl +++ b/src/Meta/AMPGO15.jl @@ -16,6 +16,27 @@ AMPGO15_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 15 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:15", ) get_AMPGO15_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO15_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO18.jl b/src/Meta/AMPGO18.jl index 3091f5f78..dc23d0c99 100644 --- a/src/Meta/AMPGO18.jl +++ b/src/Meta/AMPGO18.jl @@ -16,6 +16,27 @@ AMPGO18_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 18 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:18", ) get_AMPGO18_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO18_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO20.jl b/src/Meta/AMPGO20.jl index ac66024f8..b7e6abdec 100644 --- a/src/Meta/AMPGO20.jl +++ b/src/Meta/AMPGO20.jl @@ -16,6 +16,27 @@ AMPGO20_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 20 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:20", ) get_AMPGO20_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO20_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO21.jl b/src/Meta/AMPGO21.jl index 5da17cff2..6d74b3f2b 100644 --- a/src/Meta/AMPGO21.jl +++ b/src/Meta/AMPGO21.jl @@ -16,6 +16,27 @@ AMPGO21_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 21 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:21", ) get_AMPGO21_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO21_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/AMPGO22.jl b/src/Meta/AMPGO22.jl index 5838f711b..6e48dd771 100644 --- a/src/Meta/AMPGO22.jl +++ b/src/Meta/AMPGO22.jl @@ -16,6 +16,27 @@ AMPGO22_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions", + :notes => raw""" +A one dimensional optimization problem +""", + :origin_notes => raw""" +Problem 22 in +http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions +Andrea Gavana +S. Goyette, Sherbrooke 2016/2017 +""", + :reference => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + :lib => "AMPGO:22", ) get_AMPGO22_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_AMPGO22_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/BOX2.jl b/src/Meta/BOX2.jl index 76008636f..1af16ebfc 100644 --- a/src/Meta/BOX2.jl +++ b/src/Meta/BOX2.jl @@ -16,6 +16,33 @@ BOX2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BOX2.SIF", + :notes => raw""" +Box problem in 2 variables, obtained by fixing X3 = 1 in BOX2. + +classification SXR2-AN-3-0 +""", + :origin_notes => raw""" +Problem 11 in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:BOX2", ) get_BOX2_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_BOX2_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/BOX3.jl b/src/Meta/BOX3.jl index b116b377d..c2b8b74e8 100644 --- a/src/Meta/BOX3.jl +++ b/src/Meta/BOX3.jl @@ -16,6 +16,37 @@ BOX3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BOX3.SIF", + :notes => raw""" +SIF input: Ph. Toint, Dec 1989. + +Box problem in 3 variables. + +classification SUR2-AN-3-0 +""", + :origin_notes => raw""" +Problem 12 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#BOX663 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BOX3", ) get_BOX3_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_BOX3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Dus2_1.jl b/src/Meta/Dus2_1.jl index 8b33db480..39f3b6f11 100644 --- a/src/Meta/Dus2_1.jl +++ b/src/Meta/Dus2_1.jl @@ -16,6 +16,28 @@ Dus2_1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.dmi.usherb.ca/~dussault/ROP630E17/", + :notes => raw""" +A one dimensional optimization problem + +S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" +Problem found in +http://www.dmi.usherb.ca/~dussault/ROP630E17/ +Jean_pierre Dussault +""", + :reference => raw""" +@misc{Dussault2017, + author = {Dussault, Jean-Pierre}, + title = {Optimization Test Problems}, + howpublished = {\url{http://www.dmi.usherb.ca/~dussault/ROP630E17/}}, + year = {2017}, + note = {Universit{\'e} de Sherbrooke} +} +""", + :lib => "", ) get_Dus2_1_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Dus2_1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Dus2_3.jl b/src/Meta/Dus2_3.jl index ea20c347a..faa3aafa2 100644 --- a/src/Meta/Dus2_3.jl +++ b/src/Meta/Dus2_3.jl @@ -16,6 +16,28 @@ Dus2_3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.dmi.usherb.ca/~dussault/ROP630E17/", + :notes => raw""" +A one dimensional optimization problem + +S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" +Problem found in +http://www.dmi.usherb.ca/~dussault/ROP630E17/ +Jean_pierre Dussault +""", + :reference => raw""" +@misc{Dussault2017, + author = {Dussault, Jean-Pierre}, + title = {Optimization Test Problems}, + howpublished = {\url{http://www.dmi.usherb.ca/~dussault/ROP630E17/}}, + year = {2017}, + note = {Universit{\'e} de Sherbrooke} +} +""", + :lib => "", ) get_Dus2_3_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Dus2_3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Dus2_9.jl b/src/Meta/Dus2_9.jl index a76555247..829082be2 100644 --- a/src/Meta/Dus2_9.jl +++ b/src/Meta/Dus2_9.jl @@ -16,6 +16,28 @@ Dus2_9_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.dmi.usherb.ca/~dussault/ROP630E17/", + :notes => raw""" +A one dimensional optimization problem + +S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" +Problem found in +http://www.dmi.usherb.ca/~dussault/ROP630E17/ +Jean_pierre Dussault +""", + :reference => raw""" +@misc{Dussault2017, + author = {Dussault, Jean-Pierre}, + title = {Optimization Test Problems}, + howpublished = {\url{http://www.dmi.usherb.ca/~dussault/ROP630E17/}}, + year = {2017}, + note = {Universit{\'e} de Sherbrooke} +} +""", + :lib => "", ) get_Dus2_9_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Dus2_9_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Duscube.jl b/src/Meta/Duscube.jl index 89868dacd..e45fbe7e7 100644 --- a/src/Meta/Duscube.jl +++ b/src/Meta/Duscube.jl @@ -16,6 +16,28 @@ Duscube_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.dmi.usherb.ca/~dussault/ROP630E17/", + :notes => raw""" +A one dimensional optimization problem + +S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" +Problem found in +http://www.dmi.usherb.ca/~dussault/ROP630E17/ +Jean_pierre Dussault +""", + :reference => raw""" +@misc{Dussault2017, + author = {Dussault, Jean-Pierre}, + title = {Optimization Test Problems}, + howpublished = {\url{http://www.dmi.usherb.ca/~dussault/ROP630E17/}}, + year = {2017}, + note = {Universit{\'e} de Sherbrooke} +} +""", + :lib => "", ) get_Duscube_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Duscube_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/NZF1.jl b/src/Meta/NZF1.jl index 1d00e1d24..fc4b358da 100644 --- a/src/Meta/NZF1.jl +++ b/src/Meta/NZF1.jl @@ -16,6 +16,35 @@ NZF1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1080/10556780500137116", + :notes => raw""" +"Philippe Toint (private communication)" + +classification SUR2-AN-V-0 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Price2006, + title = {Exploiting problem structure in pattern search methods for unconstrained optimization}, + volume = {21}, + ISSN = {1029-4937}, + url = {https://doi.org/10.1080/10556780500137116}, + DOI = {10.1080/10556780500137116}, + number = {3}, + journal = {Optimization Methods and Software}, + publisher = {Informa UK Limited}, + author = {Price, C. J. and Toint, PH. L.}, + year = {2006}, + month = June, + pages = {479--491} +} + """, + :lib => "", ) get_NZF1_nvar(; n::Integer = default_nvar, kwargs...) = 13 * max(2, div(n, 13)) get_NZF1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak1.jl b/src/Meta/Shpak1.jl index f71bcad61..b1e3f450d 100644 --- a/src/Meta/Shpak1.jl +++ b/src/Meta/Shpak1.jl @@ -16,6 +16,34 @@ Shpak1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +first problem of + Global optimization in one-dimensional case + using analytically defined derivatives of + objective function + +A.Shpak + +Computer Science Journal of Moldova, vol.3, no.2(8), 1995 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak1_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak2.jl b/src/Meta/Shpak2.jl index 6ba61ade7..585b5c026 100644 --- a/src/Meta/Shpak2.jl +++ b/src/Meta/Shpak2.jl @@ -16,6 +16,35 @@ Shpak2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +Second problem of + Global optimization in one-dimensional case + using analytically defined derivatives of + objective function + + A.Shpak + + Computer Science Journal of Moldova, vol.3, no.2(8), 1995 + S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak2_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak3.jl b/src/Meta/Shpak3.jl index 373ec0e7c..6c91f104a 100644 --- a/src/Meta/Shpak3.jl +++ b/src/Meta/Shpak3.jl @@ -16,6 +16,35 @@ Shpak3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +third problem of +Global optimization in one-dimensional case +using analytically defined derivatives of +objective function + +A.Shpak + +Computer Science Journal of Moldova, vol.3, no.2(8), 1995 + S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak3_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak4.jl b/src/Meta/Shpak4.jl index c676e1807..2c701407a 100644 --- a/src/Meta/Shpak4.jl +++ b/src/Meta/Shpak4.jl @@ -16,6 +16,36 @@ Shpak4_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +4th problem of + Global optimization in one-dimensional case + using analytically defined derivatives of + objective function + + A.Shpak + + Computer Science Journal of Moldova, vol.3, no.2(8), 1995 + + S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak4_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak4_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak5.jl b/src/Meta/Shpak5.jl index eb108e0e6..54675f8c3 100644 --- a/src/Meta/Shpak5.jl +++ b/src/Meta/Shpak5.jl @@ -16,6 +16,36 @@ Shpak5_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +fifth problem of + Global optimization in one-dimensional case + using analytically defined derivatives of + objective function + + A.Shpak + + Computer Science Journal of Moldova, vol.3, no.2(8), 1995 + + S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak5_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak5_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/Shpak6.jl b/src/Meta/Shpak6.jl index a7ae5b9d9..3e5932a12 100644 --- a/src/Meta/Shpak6.jl +++ b/src/Meta/Shpak6.jl @@ -16,6 +16,36 @@ Shpak6_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.math.md/publications/csjm/issues/v3-n2/7902/", + :notes => raw""" +6th problem of + Global optimization in one-dimensional case + using analytically defined derivatives of + objective function + + A.Shpak + +Computer Science Journal of Moldova, vol.3, no.2(8), 1995 + + S. Goyette, Sherbrooke 2016/2017 +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Shpak1995, + author = {Shpak, Alexander}, + title = {Global Optimization in One-Dimensional Case Using Analytically Defined Derivatives of Objective Function}, + journal = {Computer Science Journal of Moldova}, + year = {1995}, + volume = {3}, + number = {2}, + pages = {168--184}, + url = {http://www.math.md/publications/csjm/issues/v3-n2/7902/} +} +""", + :lib => "", ) get_Shpak6_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_Shpak6_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/aircrfta.jl b/src/Meta/aircrfta.jl index dfd85ac99..051f94401 100644 --- a/src/Meta/aircrfta.jl +++ b/src/Meta/aircrfta.jl @@ -16,6 +16,35 @@ aircrfta_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.osti.gov/biblio/6449249, https://bitbucket.org/optrove/sif/src/master/AIRCRFTA.SIF", + :notes => raw""" +The aircraft stability problem by Rheinboldt, as a function +of the elevator, aileron and rudder deflection controls. + +classification NOR2-RN-8-5 +""", + :origin_notes => raw""" +Problem 9 in +J.J. More',"A collection of nonlinear model problems" +Proceedings of the AMS-SIAM Summer Seminar on the Computational +Solution of Nonlinear Systems of Equations, Colorado, 1988. +Argonne National Laboratory MCS-P60-0289, 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{More1990, + title = {A collection of nonlinear model problems. Computational Solution of Nonlinear Systems of Equations}, + author = {Mor{\'e}, Jorge J.}, + journal = {Lectures in Applied Mathematics}, + volume = {26}, + pages = {723--762}, + year = {1990}, + publisher = {American Mathematical Society} +} +""", + :lib => "CUTEst:AIRCRFTA", ) get_aircrfta_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_aircrfta_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/allinit.jl b/src/Meta/allinit.jl index 9ded5f27f..29ff45333 100644 --- a/src/Meta/allinit.jl +++ b/src/Meta/allinit.jl @@ -16,6 +16,32 @@ allinit_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ALLINIT.SIF", + :notes => raw""" +A problem with "all in it". Intended to verify that changes +to LANCELOT are safe. + +classification OBR2-AY-4-0 +""", + :origin_notes => raw""" +N. Gould, private communication. + +SIF input: Nick Gould, June 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:ALLINIT", ) get_allinit_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_allinit_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/allinitc.jl b/src/Meta/allinitc.jl index 9681c7968..28b112263 100644 --- a/src/Meta/allinitc.jl +++ b/src/Meta/allinitc.jl @@ -16,6 +16,32 @@ allinitc_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ALLINITC.SIF", + :notes => raw""" +A problem with "all in it". Intended to verify that changes +to LANCELOT are safe. + +classification OOR2-AY-4-1 +""", + :origin_notes => raw""" +N. Gould: private communication. + +SIF input: Nick Gould, June 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:ALLINITC", ) get_allinitc_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_allinitc_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/allinitu.jl b/src/Meta/allinitu.jl index 621fdb717..b56a01125 100644 --- a/src/Meta/allinitu.jl +++ b/src/Meta/allinitu.jl @@ -16,6 +16,32 @@ allinitu_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ALLINITU.SIF", + :notes => raw""" +A problem with "all in it". Intended to verify that changes +to LANCELOT are safe. + +classification OUR2-AY-4-0 +""", + :origin_notes => raw""" +N. Gould, private communication. + +SIF input: Nick Gould, June 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:ALLINITU", ) get_allinitu_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_allinitu_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/alsotame.jl b/src/Meta/alsotame.jl index 891001044..d3343d610 100644 --- a/src/Meta/alsotame.jl +++ b/src/Meta/alsotame.jl @@ -16,6 +16,30 @@ alsotame_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ALSOTAME.SIF", + :notes => raw""" +Another simple constrained problem + +classification OOR2-AN-2-1 +""", + :origin_notes => raw""" +A.R. Conn, N. Gould and Ph.L. Toint, +"The LANCELOT User's Manual", +Dept of Maths, FUNDP, 1991. + +SIF input: Ph. Toint, Jan 1991. +""", + :reference => raw""" +@techreport{ConnGouldToint1991, + author = {Conn, A. R. and Gould, N. I. M. and Toint, Ph. L.}, + title = {{The LANCELOT User's Manual}}, + institution = {Department of Mathematics, FUNDP}, + year = {1991}, + address = {Namur, Belgium}, + note = {Technical report} +}""", + :lib => "CUTEst:ALSOTAME", ) get_alsotame_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_alsotame_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/argauss.jl b/src/Meta/argauss.jl index 25de6bc00..34c3c0d30 100644 --- a/src/Meta/argauss.jl +++ b/src/Meta/argauss.jl @@ -16,6 +16,37 @@ argauss_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936, https://bitbucket.org/optrove/sif/src/master/ARGAUSS.SIF", + :notes => raw""" +SIF input: Ph. Toint, Dec 1989. + +More''s gaussian problem in 3 variables + +classification NOR2-AN-3-15 +""", + :origin_notes => raw""" +Problem 9 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#28 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:ARGAUSS", ) get_argauss_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_argauss_ncon(; n::Integer = default_nvar, kwargs...) = 15 diff --git a/src/Meta/arglina.jl b/src/Meta/arglina.jl index 1db5a1516..43b0423ab 100644 --- a/src/Meta/arglina.jl +++ b/src/Meta/arglina.jl @@ -16,6 +16,35 @@ arglina_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936, https://bitbucket.org/optrove/sif/src/master/ARGLINA.SIF", + :notes => raw""" +Linear function - full rank + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 32 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#80 (with different N and M) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:ARGLINA", ) get_arglina_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_arglina_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/arglinb.jl b/src/Meta/arglinb.jl index 4d831a6d2..1687a055b 100644 --- a/src/Meta/arglinb.jl +++ b/src/Meta/arglinb.jl @@ -16,6 +16,35 @@ arglinb_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936, https://bitbucket.org/optrove/sif/src/master/ARGLINB.SIF", + :notes => raw""" +Linear function - rank 1 + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 33 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#93 (with different N and M) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:ARGLINB", ) get_arglinb_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_arglinb_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/arglinc.jl b/src/Meta/arglinc.jl index cdb0588d2..24682f093 100644 --- a/src/Meta/arglinc.jl +++ b/src/Meta/arglinc.jl @@ -16,6 +16,35 @@ arglinc_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936, https://bitbucket.org/optrove/sif/src/master/ARGLINC.SIF", + :notes => raw""" +Linear function - rank 1, zero columns and rows + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 34 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#101 (with different N and M) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:ARGLINC", ) get_arglinc_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_arglinc_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/argtrig.jl b/src/Meta/argtrig.jl index 41341ed79..a6dfa5540 100644 --- a/src/Meta/argtrig.jl +++ b/src/Meta/argtrig.jl @@ -16,6 +16,42 @@ argtrig_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936, https://bitbucket.org/optrove/sif/src/master/ARGTRIG.SIF", + :notes => raw""" +Variable dimension trigonometric problem +This problem is a sum of n least-squares groups, each of +which has n+1 nonlinear elements. Its Hessian matrix is dense. + +classification NOR2-AN-V-V +""", + :origin_notes => raw""" +problem 101 in + A.R. Buckley, + "Test functions for unconstrained minimization", + TR 1989CS-3, Mathematics, statistics and computing centre, + Dalhousie University, Halifax (CDN), 1989. + +Problem 26 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:ARGTRIG", ) get_argtrig_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_argtrig_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/arwhead.jl b/src/Meta/arwhead.jl index b2ad95d99..f3f9ec013 100644 --- a/src/Meta/arwhead.jl +++ b/src/Meta/arwhead.jl @@ -16,6 +16,45 @@ arwhead_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/ARWHEAD.SIF", + :notes => raw""" +Arrow head problem. +A quartic problem whose Hessian is an arrow-head (downwards) with +diagonal central part and border-width of 1. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 55 in +A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, +Performance of a multifrontal scheme for partially separable +optimization, +Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. +SIF input: Ph. Toint, Dec 1989. + +See also + +problem 1 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@techreport{ConnGouldLescrenierToint1988, + author = {Conn, A. R. and Gould, N. I. M. and Lescrenier, M. and Toint, Ph. L.}, + title = {Performance of a multifrontal scheme for partially separable optimization}, + institution = {Department of Mathematics, FUNDP}, + address = {Namur, Belgium}, + number = {Report 88/4}, + year = {1988} +} +""", + :lib => "CUTEst:ARWHEAD, Luksan:1", ) get_arwhead_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_arwhead_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/auglag.jl b/src/Meta/auglag.jl index 75f7e5bcc..a8db10657 100644 --- a/src/Meta/auglag.jl +++ b/src/Meta/auglag.jl @@ -16,6 +16,35 @@ auglag_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Augmented Lagrangian function + +Problem 11 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic + +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:11", ) get_auglag_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/avion2.jl b/src/Meta/avion2.jl index a07cfe57a..139284490 100644 --- a/src/Meta/avion2.jl +++ b/src/Meta/avion2.jl @@ -16,6 +16,29 @@ avion2_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/AVION2.SIF", + :notes => raw""" +Dassault France avion (airplane design) problem + +classification OLR2-RN-49-15 +""", + :origin_notes => raw""" +SIF input: A. R. Conn, June 1993. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:AVION2", ) get_avion2_nvar(; n::Integer = default_nvar, kwargs...) = 49 get_avion2_ncon(; n::Integer = default_nvar, kwargs...) = 15 diff --git a/src/Meta/bard.jl b/src/Meta/bard.jl index 73fb0bc55..b9b4b9d74 100644 --- a/src/Meta/bard.jl +++ b/src/Meta/bard.jl @@ -16,6 +16,42 @@ bard_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BARD.SIF", + :notes => raw""" +Bard problem in 3 variables. +This function is a nonlinear least squares with 15 groups. +Each group has a linear and a nonlinear element. + +classification SUR2-AN-3-0 +""", + :origin_notes => raw""" +Problem 8 in + J.J. More', B.S. Garbow and K.E. Hillstrom, + "Testing Unconstrained Optimization Software", + ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +Problem 3 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#16. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BARD", ) get_bard_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_bard_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/bdqrtic.jl b/src/Meta/bdqrtic.jl index 8169dfb18..840876d56 100644 --- a/src/Meta/bdqrtic.jl +++ b/src/Meta/bdqrtic.jl @@ -16,6 +16,46 @@ bdqrtic_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BDQRTIC.SIF", + :notes => raw""" +This problem is quartic and has a banded Hessian with bandwidth = 9 + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 61 in +A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, +Performance of a multifrontal scheme for partially separable +optimization, +Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. + +See also + +problem 2 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +SIF input: Ph. Toint, Dec 1989. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@techreport{ConnGouldLescrenierToint1988, + author = {Conn, A. R. and Gould, N. I. M. and Lescrenier, M. and Toint, Ph. L.}, + title = {Performance of a multifrontal scheme for partially separable optimization}, + institution = {Department of Mathematics, FUNDP}, + address = {Namur, Belgium}, + number = {Report 88/4}, + year = {1988} +} + """, + :lib => "CUTEst:BDQRTIC, Luksan:2", ) get_bdqrtic_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_bdqrtic_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/beale.jl b/src/Meta/beale.jl index 8b45b8143..3bcdc1680 100644 --- a/src/Meta/beale.jl +++ b/src/Meta/beale.jl @@ -16,6 +16,37 @@ beale_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BEALE.SIF", + :notes => raw""" +Beale problem in 2 variables + +classification SUR2-AN-2-0 + +A. Cebola, Curitiba 10/2016. +""", + :origin_notes => raw""" +Problem 5 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#89. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BEALE", ) get_beale_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_beale_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/bearing.jl b/src/Meta/bearing.jl index 43933ff83..5eba9b610 100644 --- a/src/Meta/bearing.jl +++ b/src/Meta/bearing.jl @@ -16,6 +16,37 @@ bearing_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" +Given observations of ns stages of a bearing species over n timesteps, +minimize the loss between the observation and the computed law of paraneters : growth, mortality and number of specimens (g,m,x) + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 16 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +Journal bearing problem +Michael Merritt - Summer 2000 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:16", ) get_bearing_nvar(; n::Integer = default_nvar, diff --git a/src/Meta/bennett5.jl b/src/Meta/bennett5.jl index af2ffa2c5..68d2f8813 100644 --- a/src/Meta/bennett5.jl +++ b/src/Meta/bennett5.jl @@ -16,6 +16,65 @@ bennett5_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BENNETT5.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/bennett5.dat + +NIST/ITL StRD +Dataset Name: Bennett5 (Bennett5.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 214) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + superconductivity magnetization modeling. The + response variable is magnetism, and the predictor + variable is the log of time in minutes. + +Reference: Bennett, L., L. Swartzendruber, and H. Brown, + NIST (1994). + Superconductivity Magnetization Modeling. + +Data: 1 Response Variable (y = magnetism) + 1 Predictor Variable (x = log[time]) + 154 Observations + Higher Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 3 Parameters (b1 to b3) + + y = b1 * (b2+x)**(-1/b3) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem BENNETT5 given as an inconsistent set of +nonlinear equations. +Fit: y = b1 * (b2+x)**(-1/b3) + e + +classification NOR2-MN-3-154 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Bennett, L., L. Swartzendruber, H. Brown, NIST (1994). +Superconductivity Magnetization Modeling. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:BENNETT5, NIST:Bennett5", ) get_bennett5_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_bennett5_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/biggs5.jl b/src/Meta/biggs5.jl index 4a1104a44..5bf58f505 100644 --- a/src/Meta/biggs5.jl +++ b/src/Meta/biggs5.jl @@ -16,6 +16,44 @@ biggs5_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BIGGS5.SIF", + :notes => raw""" +Biggs problem in 5 variables. +This function is a nonlinear least squares with 13 groups. It is a +variation on the biggs6 problem where the 6-th variable is fixed to 3. + +Biggs EXP problem in 5 variables + +classification SXR2-AN-6-0 +""", + :origin_notes => raw""" +Inspited by problem 18 in + J.J. More', B.S. Garbow and K.E. Hillstrom, + "Testing Unconstrained Optimization Software", + ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +Problem 74 in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BIGGS5", ) get_biggs5_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_biggs5_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/biggs6.jl b/src/Meta/biggs6.jl index 021abee01..95734e521 100644 --- a/src/Meta/biggs6.jl +++ b/src/Meta/biggs6.jl @@ -16,6 +16,40 @@ biggs6_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BIGGS6.SIF", + :notes => raw""" +Biggs EXP problem in 6 variables + +classification SUR2-AN-6-0 +""", + :origin_notes => raw""" +problem 18 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +Problem 21 in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BIGGS6", ) get_biggs6_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_biggs6_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/booth.jl b/src/Meta/booth.jl index 0f52ad34f..4a477f6f1 100644 --- a/src/Meta/booth.jl +++ b/src/Meta/booth.jl @@ -16,6 +16,35 @@ booth_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BOOTH.SIF", + :notes => raw""" +SIF input: Ph. Toint, Dec 1989. + +Booth quadratic problem in 2 variables. + +classification NLR2-AN-2-2 +""", + :origin_notes => raw""" +Problem 36 in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:BOOTH", ) get_booth_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_booth_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/boundary.jl b/src/Meta/boundary.jl index 8ba342972..c684d4244 100644 --- a/src/Meta/boundary.jl +++ b/src/Meta/boundary.jl @@ -16,6 +16,31 @@ boundary_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Discrete boundary value problem +""", + :origin_notes => raw""" +Problem 14 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:14", ) get_boundary_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/boxbod.jl b/src/Meta/boxbod.jl index 7c3a66b9a..1c47f994c 100644 --- a/src/Meta/boxbod.jl +++ b/src/Meta/boxbod.jl @@ -16,6 +16,66 @@ boxbod_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BOXBOD.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/boxbod.dat + +NIST/ITL StRD +Dataset Name: BoxBOD (BoxBOD.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 66) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are described in detail in Box, Hunter and + Hunter (1978). The response variable is biochemical + oxygen demand (BOD) in mg/l, and the predictor + variable is incubation time in days. + +Reference: Box, G. P., W. G. Hunter, and J. S. Hunter (1978). + Statistics for Experimenters. + New York, NY: Wiley, pp. 483-487. + +Data: 1 Response (y = biochemical oxygen demand) + 1 Predictor (x = incubation time) + 6 Observations + Higher Level of Difficulty + Observed Data + +Model: Exponential Class + 2 Parameters (b1 and b2) + + y = b1*(1-exp[-b2*x]) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem BOXBOD given as an inconsistent set of +nonlinear equations +Fit: y = b1*(1-exp[-b2*x]) + e + +classification NOR2-MN-2-6 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Box, G. P., W. G. Hunter, and J. S. Hunter (1978). +Statistics for Experimenters, New York, NY: Wiley, pp. 483-487. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{BoxHunterHunter1978, + author = {Box, George E. P. and Hunter, William G. and Hunter, J. Stuart}, + title = {Statistics for Experimenters: An Introduction to Design, Data Analysis, and Model Building}, + publisher = {John Wiley \& Sons}, + address = {New York}, + year = {1978} +} +""", + :lib => "CUTEst:BOXBOD, NIST:BoxBOD", ) get_boxbod_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_boxbod_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/bqp1var.jl b/src/Meta/bqp1var.jl index 7df147378..abd94a312 100644 --- a/src/Meta/bqp1var.jl +++ b/src/Meta/bqp1var.jl @@ -16,6 +16,29 @@ bqp1var_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BQP1VAR.SIF", + :notes => raw""" +classification QBR2-AN-1-0 +""", + :origin_notes => raw""" +a one variable box-constrained quadratic + +SIF input: Nick Gould, March 1992 +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Nicholas I. M. Gould and Dominique Orban and Philippe L. Toint}, + title = {{CUTEst}: a constrained and unconstrained testing environment with safe threads for mathematical optimization}, + journal = {ACM Transactions on Mathematical Software}, + volume = {40}, + number = {3}, + year = {2015}, + pages = {1--25}, + doi = {10.1145/2786885} +} + """, + :lib => "CUTEst:BQP1VAR", ) get_bqp1var_nvar(; n::Integer = default_nvar, kwargs...) = 1 get_bqp1var_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/britgas.jl b/src/Meta/britgas.jl index 3c540e86d..e42052708 100644 --- a/src/Meta/britgas.jl +++ b/src/Meta/britgas.jl @@ -16,6 +16,33 @@ britgas_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BRITGAS.SIF", + :notes => raw""" +A simple high pressure gas network problem for British Gas. +Invented Data, but real network. +23 node network, 8 hour operation. + +classification OOI2-RN-450-360 +""", + :origin_notes => raw""" +N. Gould, private communication,March 1990. + +SIF input: N. Gould, March 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Nicholas I. M. Gould and Dominique Orban and Philippe L. Toint}, + title = {{CUTEst}: a constrained and unconstrained testing environment with safe threads for mathematical optimization}, + journal = {ACM Transactions on Mathematical Software}, + volume = {40}, + number = {3}, + year = {2015}, + pages = {1--25}, + doi = {10.1145/2786885} +} + """, + :lib => "CUTEst:BRITGAS", ) get_britgas_nvar(; n::Integer = default_nvar, kwargs...) = 450 get_britgas_ncon(; n::Integer = default_nvar, kwargs...) = 360 diff --git a/src/Meta/brownal.jl b/src/Meta/brownal.jl index 9adb6a958..09887d9cc 100644 --- a/src/Meta/brownal.jl +++ b/src/Meta/brownal.jl @@ -16,6 +16,36 @@ brownal_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BROWNAL.SIF", + :notes => raw""" +The Brown almost linear problem in variable dimension. This is a nonlinear +least-squares problems with n groups. + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 27 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#79 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BROWNAL", ) get_brownal_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_brownal_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/brownbs.jl b/src/Meta/brownbs.jl index 0c9f1106a..181f094c8 100644 --- a/src/Meta/brownbs.jl +++ b/src/Meta/brownbs.jl @@ -16,6 +16,40 @@ brownbs_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BROWNBS.SIF", + :notes => raw""" +Brown badly scaled problem in 2 variables. +This problem is a sum of n-1 sets of 3 groups, one of then involving +a nonlinear element and all being of the least square type. +It Hessian matrix is tridiagonal. + +classification SUR2-AN-2-0 + +A. Cebola, Curitiba 10/2016. +""", + :origin_notes => raw""" +Problem 4 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#25 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BROWNBS", ) get_brownbs_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_brownbs_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/brownden.jl b/src/Meta/brownden.jl index a46deac5e..dbbf6504d 100644 --- a/src/Meta/brownden.jl +++ b/src/Meta/brownden.jl @@ -16,6 +16,35 @@ brownden_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BROWNDEN.SIF", + :notes => raw""" +Brown and Dennis function + +classification SUR2-AN-4-0 +""", + :origin_notes => raw""" +Problem 16 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#30 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BROWNDEN", ) get_brownden_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_brownden_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/browngen1.jl b/src/Meta/browngen1.jl index 1691c13f4..4e68a0808 100644 --- a/src/Meta/browngen1.jl +++ b/src/Meta/browngen1.jl @@ -16,6 +16,35 @@ browngen1_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Generalization of the Brown function 1 + +Problem 12 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic + +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:12", ) get_browngen1_nvar(; n::Integer = default_nvar, kwargs...) = max(n, 2) diff --git a/src/Meta/browngen2.jl b/src/Meta/browngen2.jl index 35ba4d17e..a1b3d86c9 100644 --- a/src/Meta/browngen2.jl +++ b/src/Meta/browngen2.jl @@ -16,6 +16,35 @@ browngen2_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Generalization of the Brown function 2 + +Problem 13 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic + +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:13", ) get_browngen2_nvar(; n::Integer = default_nvar, kwargs...) = max(2, n) diff --git a/src/Meta/broyden3d.jl b/src/Meta/broyden3d.jl index 8233aac1e..d96efbad0 100644 --- a/src/Meta/broyden3d.jl +++ b/src/Meta/broyden3d.jl @@ -16,6 +16,36 @@ broyden3d_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936", + :notes => raw""" +Broyden tridiagonal problem in variable dimension. This is a nonlinear +least-squares problem with n groups. +""", + :origin_notes => raw""" +Problem 30 in + J.J. More', B.S. Garbow and K.E. Hillstrom, + "Testing Unconstrained Optimization Software", + ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +Also problem 78 in + A.R. Buckley, + "Test functions for unconstrained minimization", + TR 1989CS-3, Mathematics, statistics and computing centre, + Dalhousie University, Halifax (CDN), 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "MGH:30", ) get_broyden3d_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_broyden3d_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/broyden7d.jl b/src/Meta/broyden7d.jl index e257af740..b741ce1e2 100644 --- a/src/Meta/broyden7d.jl +++ b/src/Meta/broyden7d.jl @@ -16,6 +16,35 @@ broyden7d_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Seven diagonal generalization of the Broyden tridiagonal function + +Problem 7 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic + +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:7", ) get_broyden7d_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/broydn7d.jl b/src/Meta/broydn7d.jl index c9c8be34c..c67f92c6b 100644 --- a/src/Meta/broydn7d.jl +++ b/src/Meta/broydn7d.jl @@ -16,6 +16,68 @@ broydn7d_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BROYDN7D.SIF", + :notes => raw""" +A seven diagonal variant of the Broyden tridiagonal system, +featuring a band far away from the diagonal. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 3.4 in +Ph. L. Toint, +Some numerical results using a sparse matrix updating formula in +unconstrained optimization, +Mathematics of Computation, vol. 32(114), pp. 839-852, 1978. +https://doi.org/10.1090/S0025-5718-1978-0483452-7 + +From the paper, + +"This function was built from a nonlinear system of equations +suggested originally by Broyden ..." + +The system in question is described in + +L. K. Schubert, +Modification of a quasi-Newton method for nonlinear equations +with a sparse Jacobian, +Mathematics of Computation, vol. 24, pp. 27-30, 1970. +https://doi.org/10.1090/S0025-5718-1970-0258276-9#sthash.yOkQUwXA.dpuf + +See also, with a slight variation in the formulation, + +problem 3 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +See also Buckley#84 + +SIF input: Ph. Toint, Dec 1989. + +D. Orban, Montreal, 08/2015. + +# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper +# (See issue #36) +""", + :reference => raw""" +@article{Toint1978MathComp, + author = {Toint, Ph. L.}, + title = {Some numerical results using a sparse matrix updating formula in unconstrained optimization}, + journal = {Mathematics of Computation}, + year = {1978}, + volume = {32}, + number = {143}, + pages = {839--851}, + doi = {10.1090/s0025-5718-1978-0483452-7} +} + """, + :lib => "CUTEst:BROYDN7D, Luksan:3", ) get_broydn7d_nvar(; n::Integer = default_nvar, kwargs...) = 2 * max(1, div(n, 2)) get_broydn7d_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/brybnd.jl b/src/Meta/brybnd.jl index 3add299af..5e6870358 100644 --- a/src/Meta/brybnd.jl +++ b/src/Meta/brybnd.jl @@ -16,6 +16,40 @@ brybnd_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BRYBND.SIF", + :notes => raw""" +Broyden banded system of nonlinear equations, considered in the +least square sense. + +classification SUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. + +# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper +# (See issue #36) +""", + :origin_notes => raw""" +problem 31 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#73 (p. 41) and Toint#18 +SDIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:BRYBND, Luksan:4", ) get_brybnd_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_brybnd_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/bt1.jl b/src/Meta/bt1.jl index da67317e8..a08026bf8 100644 --- a/src/Meta/bt1.jl +++ b/src/Meta/bt1.jl @@ -16,6 +16,41 @@ bt1_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/BT1.SIF", + :notes => raw""" +classification QQR2-AN-2-1 + +A. Cebola, Curitiba 10/2016. +""", + :origin_notes => raw""" +problem 13 (p. 103) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +Problem from CUTE: https://github.com/mpf/Optimization-Test-Problems/blob/master/cute/bt1.mod + +problem 1 in +P.T. Boggs and J.W. Tolle, +"A strategy for global convergence in a sequential +quadratic programming algorithm", +SINUM 26(3), pp. 600-623, 1989. + +SIF input: Ph. Toint, June 1993. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:BT1", ) get_bt1_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_bt1_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/camshape.jl b/src/Meta/camshape.jl index f7536c19b..ba2c0c923 100644 --- a/src/Meta/camshape.jl +++ b/src/Meta/camshape.jl @@ -16,6 +16,33 @@ camshape_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CAMSHAPE.SIF", + :notes => raw""" +Maximize the area of the valve opening for one rotation of a convex cam +with constraints on the curvature and on the radius of the cam + +classification LOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 3 in the COPS (Version 3) collection of +E. Dolan and J. More +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:CAMSHAPE, COPS:3", ) get_camshape_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_camshape_ncon(; n::Integer = default_nvar, kwargs...) = 2 * n + 3 diff --git a/src/Meta/catenary.jl b/src/Meta/catenary.jl index 09e5c4152..20652a0f6 100644 --- a/src/Meta/catenary.jl +++ b/src/Meta/catenary.jl @@ -16,6 +16,37 @@ catenary_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CATENARY.SIF", + :notes => raw""" +The classical problem of the hanging catenary. Here the catenary consists +of N+1 beams of length BL, with the first beam fixed at the origin and +the final bean fixed at a fraction FRACT of the total length of all +beams. + +The problem is non-convex. + +classification LQR2-AY-V-V + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" +K. Veselic, +"De forma catenarum in campo gravitatis pendentium", +Klasicna Gimnazija u Zagrebu, Zagreb, 1987. + +SIF input: Ph. L. Toint, May 1993. +""", + :reference => raw""" +@book{Veselic1987, + author = {K. Veselic}, + title = {De forma catenarum in campo gravitatis pendentium}, + publisher = {Klasična Gimnazija u Zagrebu}, + address = {Zagreb}, + year = {1987} +} + """, + :lib => "CUTEst:CATENARY", ) get_catenary_nvar(; n::Integer = default_nvar, kwargs...) = max(6, 3 * max(1, div(n, 3))) get_catenary_ncon(; n::Integer = default_nvar, kwargs...) = max(2, max(1, div(n, 3))) - 1 diff --git a/src/Meta/catmix.jl b/src/Meta/catmix.jl index 968f4014f..f38525287 100644 --- a/src/Meta/catmix.jl +++ b/src/Meta/catmix.jl @@ -16,6 +16,39 @@ catmix_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/CATMIX.SIF", + :notes => raw""" +Catalyst Mixing Problem +Collocation formulation + +Determine the optimal mixing policy of two catalysts along the +length of a tubular plug flow reactor involving several reactions + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 14 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{\'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} +} + """, + :lib => "CUTEst:CATMIX, COPS:14", ) get_catmix_nvar(; n::Integer = default_nvar, kwargs...) = 23 * n + 2 get_catmix_ncon(; n::Integer = default_nvar, kwargs...) = 20 * n + 2 diff --git a/src/Meta/chain.jl b/src/Meta/chain.jl index 16e0057da..2f8ecdeef 100644 --- a/src/Meta/chain.jl +++ b/src/Meta/chain.jl @@ -16,6 +16,35 @@ chain_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CHAIN.SIF", + :notes => raw""" +Hanging Chain + +Find the chain (of uniform density) of length L suspended between two points with minimal +potential energy. + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 4 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:CHAIN, COPS:4", ) get_chain_nvar(; n::Integer = default_nvar, kwargs...) = 4 * (max(2, div(n - 4, 4)) + 1) get_chain_ncon(; n::Integer = default_nvar, kwargs...) = 3 * max(2, div(n - 4, 4)) + 5 diff --git a/src/Meta/chainwoo.jl b/src/Meta/chainwoo.jl index 63036f1f1..aca87a0e4 100644 --- a/src/Meta/chainwoo.jl +++ b/src/Meta/chainwoo.jl @@ -16,6 +16,54 @@ chainwoo_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CHAINWOO.SIF", + :notes => raw""" +The chained Woods problem, a variant on Woods function +This problem is a sum of n/2 sets of 6 terms, each of which is +assigned its own group. For a given set i, the groups are +A(i), B(i), C(i), D(i), E(i) and F(i). Groups A(i) and C(i) contain 1 +nonlinear element each, denoted Y(i) and Z(i). +The problem dimension is defined from the number of these sets. +The number of problem variables is then 2 times + 2 as large +This version uses a slightly unorthodox expression of Woods +function as a sum of squares (see Buckley) + +Problem 8 in +A. R. Conn, N. I. M. Gould and Ph. L. Toint, +Testing a class of methods for solving minimization +problems with simple bounds on their variables, +Mathematics of Computation 50, p 399-430, 1988. + +See also + +problem 5 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +SIF input: Nick Gould and Ph. Toint, Dec 1995. +""", + :reference => raw""" +@article{ConnGouldToint1988MathComp, + author = {Conn, Andrew R. and Gould, Nicholas I. M. and Toint, Philippe L.}, + title = {Testing a class of methods for solving minimization problems with simple bounds on the variables}, + journal = {Mathematics of Computation}, + year = {1988}, + volume = {50}, + number = {182}, + pages = {399--430}, + doi = {10.1090/s0025-5718-1988-0929544-3} +} + """, + :lib => "CUTEst:CHAINWOO, Luksan:5, LuksanSparse:2", ) get_chainwoo_nvar(; n::Integer = default_nvar, kwargs...) = 4 * max(1, div(n, 4)) get_chainwoo_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/channel.jl b/src/Meta/channel.jl index d30eaeaeb..ed4ef1b31 100644 --- a/src/Meta/channel.jl +++ b/src/Meta/channel.jl @@ -16,6 +16,39 @@ channel_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CHANNEL.SIF", + :notes => raw""" +Flow in a Channel + +Analyse the flow of a fluid during injection into a long vertical channel, +assuming that the flow is modelled by the boundary-value problem +u'''' = R (u'u'' - u u''') t in [0,1] +u(0) = 0, u(1) = 1, u'(0) = 0 = u'(1) +where u is the potential function, u' is the tangential velocity of +the field, and R is the Reynold's number + +classification NOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 7 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:CHANNEL, COPS:7", ) get_channel_nvar(; n::Integer = default_nvar, kwargs...) = 8 * max(2, div(n, 8)) get_channel_ncon(; n::Integer = default_nvar, kwargs...) = diff --git a/src/Meta/chnrosnb_mod.jl b/src/Meta/chnrosnb_mod.jl index 4ac194a64..478f39da0 100644 --- a/src/Meta/chnrosnb_mod.jl +++ b/src/Meta/chnrosnb_mod.jl @@ -16,6 +16,39 @@ chnrosnb_mod_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +# Chaineded Rosenbrock - modified function. + +# problem 27 in +# L. Luksan, C. Matonoha and J. Vlcek +# Modified CUTE problems for sparse unconstrained optimization, +# Technical Report 1081, +# Institute of Computer Science, +# Academy of Science of the Czech Republic +# +# http://www.cs.cas.cz/matonoha/download/V1081.pdf +# +# classification SUR2-AN-V-0 +# +# J,-P, Dussault, Rennes 09/2015. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "Luksan:27", ) get_chnrosnb_mod_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_chnrosnb_mod_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/chwirut1.jl b/src/Meta/chwirut1.jl index c755976fd..db37b8452 100644 --- a/src/Meta/chwirut1.jl +++ b/src/Meta/chwirut1.jl @@ -16,6 +16,64 @@ chwirut1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CHWIRUT1.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/chwirut1.dat + +NIST/ITL StRD +Dataset Name: Chwirut1 (Chwirut1.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 274) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + ultrasonic calibration. The response variable is + ultrasonic response, and the predictor variable is + metal distance. + +Reference: Chwirut, D., NIST (197?). + Ultrasonic Reference Block Study. + +Data: 1 Response Variable (y = ultrasonic response) + 1 Predictor Variable (x = metal distance) + 214 Observations + Lower Level of Difficulty + Observed Data + +Model: Exponential Class + 3 Parameters (b1 to b3) + + y = exp[-b1*x]/(b2+b3*x) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem CHWIRUT1 given as an inconsistent set of +nonlinear equations. +Fit: y = exp[-b1*x]/(b2+b3*x) + e + +classification NOR2-MN-3-214 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Chwirut, D., NIST (197?). +Ultrasonic Reference Block Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:CHWIRUT1, NIST:Chwirut1", ) get_chwirut1_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_chwirut1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/chwirut2.jl b/src/Meta/chwirut2.jl index 415fc5000..618b3b141 100644 --- a/src/Meta/chwirut2.jl +++ b/src/Meta/chwirut2.jl @@ -16,6 +16,64 @@ chwirut2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CHWIRUT2.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/chwirut2.dat + +NIST/ITL StRD +Dataset Name: Chwirut2 (Chwirut2.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 114) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + ultrasonic calibration. The response variable is + ultrasonic response, and the predictor variable is + metal distance. + +Reference: Chwirut, D., NIST (197?). + Ultrasonic Reference Block Study. + +Data: 1 Response (y = ultrasonic response) + 1 Predictor (x = metal distance) + 54 Observations + Lower Level of Difficulty + Observed Data + +Model: Exponential Class + 3 Parameters (b1 to b3) + + y = exp(-b1*x)/(b2+b3*x) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem CHWIRUT2 given as an inconsistent set of +nonlinear equations. +Fit: y = exp[-b1*x]/(b2+b3*x) + e + +classification NOR2-MN-3-54 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Chwirut, D., NIST (197?). +Ultrasonic Reference Block Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:CHWIRUT2, NIST:Chwirut2", ) get_chwirut2_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_chwirut2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/cliff.jl b/src/Meta/cliff.jl index f7f0b8049..cae9bca23 100644 --- a/src/Meta/cliff.jl +++ b/src/Meta/cliff.jl @@ -16,6 +16,33 @@ cliff_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CLIFF.SIF", + :notes => raw""" +The "cliff problem" in 2 variables + +classification OUR2-AN-2-0 +""", + :origin_notes => raw""" +problem 206 (p. 46) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:CLIFF", ) get_cliff_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_cliff_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/clnlbeam.jl b/src/Meta/clnlbeam.jl index c2bdfa2a8..aa0d0c40a 100644 --- a/src/Meta/clnlbeam.jl +++ b/src/Meta/clnlbeam.jl @@ -16,6 +16,39 @@ clnlbeam_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://onlinelibrary.wiley.com/doi/abs/10.1002/oca.4660120103, https://bitbucket.org/optrove/sif/src/master/CLNLBEAM.SIF", + :notes => raw""" +The clnlbeam problem +https://jump.dev/JuMP.jl/stable/tutorials/nonlinear/clnlbeam/ + +An optimal control version of the CLamped NonLinear BEAM problem. +The energy of a beam of length 1 compressed by a force P is to be +minimized. The control variable is the derivative of the deflection angle. +The problem is discretized using the trapezoidal rule. It is non-convex. + +classification OOR2-MN-V-V +""", + :origin_notes => raw""" +H. Maurer and H.D. Mittelman, +"The non-linear beam via optimal control with bound state variables", +Optimal Control Applications and Methods 12, pp. 19-31, 1991. + +SIF input: Ph. Toint, Nov 1993. +""", + :reference => raw""" +@article{MaurerMittelmann1991, + author = {H. Maurer and H.D. Mittelmann}, + title = {The non-linear beam via optimal control with bound state variables}, + journal = {Optimal Control Applications and Methods}, + volume = {12}, + number = {1}, + pages = {19--31}, + year = {1991}, + doi = {10.1002/oca.4660120103} +} + """, + :lib => "CUTEst:CLNLBEAM", ) get_clnlbeam_nvar(; n::Integer = default_nvar, kwargs...) = 3 * div(n - 3, 3) + 3 get_clnlbeam_ncon(; n::Integer = default_nvar, kwargs...) = 2 * div(n - 3, 3) diff --git a/src/Meta/clplatea.jl b/src/Meta/clplatea.jl index 97d5132da..1590310c0 100644 --- a/src/Meta/clplatea.jl +++ b/src/Meta/clplatea.jl @@ -16,6 +16,46 @@ clplatea_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CLPLATEA.SIF", + :notes => raw""" +The clamped plate problem (Strang, Nocedal, Dax). +The problem comes from the discretization the following problem +in mechanics: a plate is clamped on one edge and loaded on the +opposite side. The plate is the unit square. + +In this version of the problem, the weight wght is entirely put on the +upper right corner of the plate. + +The plate is clamped on its lower edge, by fixing the +corresponding variables to zero. + +classification OXR2-MN-V-0 + +p is the number of points in one side of the unit square +The number of variables is p*p, of which (p-1)*(p-1) are free. + +Fixed variables have been eliminated from the objective function. +""", + :origin_notes => raw""" +J. Nocedal, +"Solving large nonlinear systems of equations arising in mechanics", +Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, +pp. 132-141, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@inproceedings{Nocedal1981, + author = {J. Nocedal}, + title = {Solving large nonlinear systems of equations arising in mechanics}, + booktitle = {Proceedings of the Cocoyoc Numerical Analysis Conference}, + address = {Mexico}, + pages = {132--141}, + year = {1981} +} + """, + :lib => "CUTEst:CLPLATEA", ) get_clplatea_nvar(; n::Integer = default_nvar, kwargs...) = floor(Int, sqrt(n))^2 get_clplatea_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/clplateb.jl b/src/Meta/clplateb.jl index 2cc543349..ffc7fa50c 100644 --- a/src/Meta/clplateb.jl +++ b/src/Meta/clplateb.jl @@ -16,6 +16,47 @@ clplateb_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CLPLATEB.SIF", + :notes => raw""" +The clamped plate problem (Strang, Nocedal, Dax) +The problem comes from the discretization the following problem +in mechanics: a plate is clamped on one edge and loaded on the +opposite side. The plate is the unit square. + +The plate is clamped on its lower edge, by fixing the +corresponding variables to zero. + +In this version of the problem, the weight wght is distributed +equally along the upper edge, introducing a symmetry with respect +to the vertical axis. + +classification OXR2-MN-V-0 + +p is the number of points in one side of the unit square +The number of variables is p*p, of which (p-1)*(p-1) are free. + +Fixed variables have been eliminated from the objective function. +""", + :origin_notes => raw""" +J. Nocedal, +"Solving large nonlinear systems of equations arising in mechanics", +Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, +pp. 132-141, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@inproceedings{Nocedal1981, + author = {J. Nocedal}, + title = {Solving large nonlinear systems of equations arising in mechanics}, + booktitle = {Proceedings of the Cocoyoc Numerical Analysis Conference}, + address = {Mexico}, + pages = {132--141}, + year = {1981} +} + """, + :lib => "CUTEst:CLPLATEB", ) get_clplateb_nvar(; n::Integer = default_nvar, kwargs...) = floor(Int, sqrt(n))^2 get_clplateb_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/clplatec.jl b/src/Meta/clplatec.jl index 00162eadc..5410fe4b5 100644 --- a/src/Meta/clplatec.jl +++ b/src/Meta/clplatec.jl @@ -16,6 +16,46 @@ clplatec_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CLPLATEC.SIF", + :notes => raw""" +The clamped plate problem (Strang, Nocedal, Dax). +The problem comes from the discretization the following problem +in mechanics: a plate is clamped on one edge and loaded on the +opposite side. The plate is the unit square. + +In this version of the problem, part of the weight wght is put on the +upper right corner of the plate, and the rest on the upper left corner. + +The plate is clamped on its lower edge, by fixing the +corresponding variables to zero. + +classification OXR2-MN-V-0 + +p is the number of points in one side of the unit square +The number of variables is p*p, of which (p-1)*(p-1) are free. + +Fixed variables have been eliminated from the objective function. +""", + :origin_notes => raw""" +J. Nocedal, +"Solving large nonlinear systems of equations arising in mechanics", +Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, +pp. 132-141, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@inproceedings{Nocedal1981, + author = {J. Nocedal}, + title = {Solving large nonlinear systems of equations arising in mechanics}, + booktitle = {Proceedings of the Cocoyoc Numerical Analysis Conference}, + address = {Mexico}, + pages = {132--141}, + year = {1981} +} + """, + :lib => "CUTEst:CLPLATEC", ) get_clplatec_nvar(; n::Integer = default_nvar, kwargs...) = floor(Int, sqrt(n))^2 get_clplatec_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/controlinvestment.jl b/src/Meta/controlinvestment.jl index 89008bb84..3d2648a5c 100644 --- a/src/Meta/controlinvestment.jl +++ b/src/Meta/controlinvestment.jl @@ -16,6 +16,23 @@ controlinvestment_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "", + :notes => raw""" +This is a simple investment problem in optimistic market. +""", + :origin_notes => raw""" +Example 5.3, Dominique Orban, Computation Optimization and Control lecture notes at Polytechnique Montréal. +""", + :reference => raw""" +@misc{OrbanControlNotes, + author = {Dominique Orban}, + title = {Computation Optimization and Control Lecture Notes}, + howpublished = {Lecture notes, Polytechnique Montréal}, + year = {2022} +} + """, + :lib => "", ) get_controlinvestment_nvar(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) get_controlinvestment_ncon(; n::Integer = default_nvar, kwargs...) = div(n, 2) diff --git a/src/Meta/cosine.jl b/src/Meta/cosine.jl index ca0413927..c528185a7 100644 --- a/src/Meta/cosine.jl +++ b/src/Meta/cosine.jl @@ -16,6 +16,44 @@ cosine_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/COSINE.SIF", + :notes => raw""" +The cosine function. + +Another function with nontrivial groups and +repetitious elements. + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problem 6 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +N. Gould, private communication. + +SIF input: N. Gould, Jan 1996 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:COSINE, Luksan:6", ) get_cosine_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_cosine_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/cragglvy.jl b/src/Meta/cragglvy.jl index 900486219..aa2dff84f 100644 --- a/src/Meta/cragglvy.jl +++ b/src/Meta/cragglvy.jl @@ -16,6 +16,47 @@ cragglvy_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/CRAGGLVY.SIF", + :notes => raw""" +Extended Cragg and Levy problem. +This problem is a sum of m sets of 5 groups, +There are 2m+2 variables. The Hessian matrix is 7-diagonal. + +classification OUR2-AY-V-0 +""", + :origin_notes => raw""" +Problem 32 in +Ph. L. Toint, +Test problems for partially separable optimization and results +for the routine PSPMIN, +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. + +See also Buckley#18 + +problem 7 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +SIF input: Ph. Toint, Dec 1989. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:CRAGGLVY, Luksan:7", ) get_cragglvy_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_cragglvy_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/cragglvy2.jl b/src/Meta/cragglvy2.jl index 194bfca92..e046f6d34 100644 --- a/src/Meta/cragglvy2.jl +++ b/src/Meta/cragglvy2.jl @@ -16,6 +16,44 @@ cragglvy2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Chained Cragg and Levy function + +This is similar to cragglvy but the quartic term differs. + +Problem 17 in +Conn, A.R., Gould, N.I.M, Toint, P., +Testing a Class of Methods for Solving +Minimization Problems with Simple Bounds on the Variables, +Mathematics of Computation, +Vol. 50, pp. 399-430, 1988. + +Problem 4 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic + +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:4", ) get_cragglvy2_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 diff --git a/src/Meta/curly.jl b/src/Meta/curly.jl index 122f5cd21..dd77c1b1c 100644 --- a/src/Meta/curly.jl +++ b/src/Meta/curly.jl @@ -16,6 +16,46 @@ curly_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +A banded function with semi-bandwidth b and +negative curvature near the starting point. + +Note that the initial point in the reference below is erroneous. +In this model, we use the starting point specified in the +original SIF model, part of the CUTE collection. + +See also + +problems 8, 9, 10 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +classification SUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "", ) get_curly_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_curly_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/curly10.jl b/src/Meta/curly10.jl index 6567720c2..0ce8e06be 100644 --- a/src/Meta/curly10.jl +++ b/src/Meta/curly10.jl @@ -16,6 +16,53 @@ curly10_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :adnlpmodel, + :url => "https://bitbucket.org/optrove/sif/src/master/CURLY10.SIF", + :notes => raw""" +A banded function with semi-bandwidth b and +negative curvature near the starting point. + +Note that the initial point in the reference below is erroneous. +In this model, we use the starting point specified in the +original SIF model, part of the CUTE collection. + +See also + +problems 8, 9, 10 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +A banded function with semi-bandwidth 10 and +negative curvature near the starting point + +classification OUR2-AN-V-0 + +classification SUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +Nick Gould + +SIF input: Nick Gould, September 1997. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:CURLY10", ) get_curly10_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_curly10_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/curly20.jl b/src/Meta/curly20.jl index 0f1f9ff90..6747f7d84 100644 --- a/src/Meta/curly20.jl +++ b/src/Meta/curly20.jl @@ -16,6 +16,53 @@ curly20_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :adnlpmodel, + :url => "https://bitbucket.org/optrove/sif/src/master/CURLY20.SIF", + :notes => raw""" +A banded function with semi-bandwidth b and +negative curvature near the starting point. + +Note that the initial point in the reference below is erroneous. +In this model, we use the starting point specified in the +original SIF model, part of the CUTE collection. + +See also + +problems 8, 9, 10 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +A banded function with semi-bandwidth 20 and +negative curvature near the starting point + +classification OUR2-AN-V-0 + +classification SUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +Nick Gould + +SIF input: Nick Gould, September 1997. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:CURLY20", ) get_curly20_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_curly20_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/curly30.jl b/src/Meta/curly30.jl index 4428e98f8..7be0da878 100644 --- a/src/Meta/curly30.jl +++ b/src/Meta/curly30.jl @@ -16,6 +16,53 @@ curly30_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :adnlpmodel, + :url => "https://bitbucket.org/optrove/sif/src/master/CURLY30.SIF", + :notes => raw""" +A banded function with semi-bandwidth b and +negative curvature near the starting point. + +Note that the initial point in the reference below is erroneous. +In this model, we use the starting point specified in the +original SIF model, part of the CUTE collection. + +See also + +problems 8, 9, 10 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +A banded function with semi-bandwidth 30 and +negative curvature near the starting point + +classification OUR2-AN-V-0 + +classification SUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +Nick Gould + +SIF input: Nick Gould, September 1997. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:CURLY30", ) get_curly30_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_curly30_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/danwood.jl b/src/Meta/danwood.jl index 96642cf2b..bcc73dd8c 100644 --- a/src/Meta/danwood.jl +++ b/src/Meta/danwood.jl @@ -16,6 +16,73 @@ danwood_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/danwood.dat, https://bitbucket.org/optrove/sif/src/master/DANWOOD.SIF", + :notes => raw""" +NIST/ITL StRD +Dataset Name: DanWood (DanWood.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 66) + +Procedure: Nonlinear Least Squares Regression + +Description: These data and model are described in Daniel and Wood + (1980), and originally published in E.S.Keeping, + "Introduction to Statistical Inference," Van Nostrand + Company, Princeton, NJ, 1962, p. 354. The response + variable is energy radieted from a carbon filament + lamp per cm**2 per second, and the predictor variable + is the absolute temperature of the filament in 1000 + degrees Kelvin. + +Reference: Daniel, C. and F. S. Wood (1980). + Fitting Equations to Data, Second Edition. + New York, NY: John Wiley and Sons, pp. 428-431. + +Data: 1 Response Variable (y = energy) + 1 Predictor Variable (x = temperature) + 6 Observations + Lower Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 2 Parameters (b1 and b2) + + y = b1*x**b2 + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem DANWOOD given as an inconsistent set of +nonlinear equations (incorrect formulation). See DANIWOOS.SIF for +the correct formulation +Fit: y = (b1*x)**b2 + e + +classification NOR2-MN-2-6 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Daniel, C. and F. S. Wood (1980). +Fitting Equations to Data, Second Edition. +New York, NY: John Wiley and Sons, pp. 428-431. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{DanielWood1980, + author = {C. Daniel and F. S. Wood}, + title = {Fitting Equations to Data}, + edition = {Second}, + publisher = {John Wiley and Sons}, + address = {New York, NY}, + year = {1980}, + pages = {428--431} +} + """, + :lib => "CUTEst:DANWOOD, NIST:DanWood", ) get_danwood_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_danwood_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaane.jl b/src/Meta/dixmaane.jl index 2037efaa2..14156cfec 100644 --- a/src/Meta/dixmaane.jl +++ b/src/Meta/dixmaane.jl @@ -16,6 +16,40 @@ dixmaane_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +The Dixon-Maany test problem (version E by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +L. C. W. Dixon and Z. Maany, +A family of test problems with sparse Hessians for unconstrained +optimization, +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +See also + +problems 11, 12, 13, 14 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "Luksan:11", ) get_dixmaane_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaane_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanf.jl b/src/Meta/dixmaanf.jl index d38b3de76..9c3743f11 100644 --- a/src/Meta/dixmaanf.jl +++ b/src/Meta/dixmaanf.jl @@ -16,6 +16,41 @@ dixmaanf_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANF.SIF", + :notes => raw""" +The Dixon-Maany test problem (version E by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 11, 12, 13, 14 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANF,Luksan:12", ) get_dixmaanf_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanf_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaang.jl b/src/Meta/dixmaang.jl index 076494781..92fa1c82d 100644 --- a/src/Meta/dixmaang.jl +++ b/src/Meta/dixmaang.jl @@ -16,6 +16,41 @@ dixmaang_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANG.SIF", + :notes => raw""" +The Dixon-Maany test problem (version E by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 11, 12, 13, 14 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANG,Luksan:13", ) get_dixmaang_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaang_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanh.jl b/src/Meta/dixmaanh.jl index fb397f6a1..8b95c8157 100644 --- a/src/Meta/dixmaanh.jl +++ b/src/Meta/dixmaanh.jl @@ -16,6 +16,41 @@ dixmaanh_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANH.SIF", + :notes => raw""" +The Dixon-Maany test problem (version E by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 11, 12, 13, 14 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANH,Luksan:14", ) get_dixmaanh_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanh_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaani.jl b/src/Meta/dixmaani.jl index 76b9700d5..dcd6da66c 100644 --- a/src/Meta/dixmaani.jl +++ b/src/Meta/dixmaani.jl @@ -16,6 +16,40 @@ dixmaani_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +The Dixon-Maany test problem (version I by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +L. C. W. Dixon and Z. Maany, +A family of test problems with sparse Hessians for unconstrained +optimization, +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +See also + +problems 15, 16, 17, 18 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "Luksan:15", ) get_dixmaani_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaani_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanj.jl b/src/Meta/dixmaanj.jl index 530b0f4fe..9eb0a1492 100644 --- a/src/Meta/dixmaanj.jl +++ b/src/Meta/dixmaanj.jl @@ -16,6 +16,41 @@ dixmaanj_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANJ.SIF", + :notes => raw""" +The Dixon-Maany test problem (version I by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 15, 16, 17, 18 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANJ,Luksan:16", ) get_dixmaanj_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanj_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaank.jl b/src/Meta/dixmaank.jl index 0022bcf2b..e40c59584 100644 --- a/src/Meta/dixmaank.jl +++ b/src/Meta/dixmaank.jl @@ -16,6 +16,41 @@ dixmaank_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANK.SIF", + :notes => raw""" +The Dixon-Maany test problem (version I by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 15, 16, 17, 18 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANK,Luksan:17", ) get_dixmaank_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaank_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanl.jl b/src/Meta/dixmaanl.jl index d83d79249..783b1c60e 100644 --- a/src/Meta/dixmaanl.jl +++ b/src/Meta/dixmaanl.jl @@ -16,6 +16,41 @@ dixmaanl_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANL.SIF", + :notes => raw""" +The Dixon-Maany test problem (version I by default) + +classification OUR2-AN-V-0 + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +problems 15, 16, 17, 18 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. +See also Buckley#221 (p. 49) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANL,Luksan:18", ) get_dixmaanl_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanl_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanm.jl b/src/Meta/dixmaanm.jl index 902c7257e..dc738f5cb 100644 --- a/src/Meta/dixmaanm.jl +++ b/src/Meta/dixmaanm.jl @@ -16,6 +16,38 @@ dixmaanm_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +The Dixon-Maany test problem (version M by default) + +D. Orban, Montreal, 08/2015. +""", + :origin_notes => raw""" +L. C. W. Dixon and Z. Maany, +A family of test problems with sparse Hessians for unconstrained +optimization, +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +See also + +problems 19, 20, 21, 22 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "Luksan:19", ) get_dixmaanm_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanm_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaann.jl b/src/Meta/dixmaann.jl index dc60db323..be8f01234 100644 --- a/src/Meta/dixmaann.jl +++ b/src/Meta/dixmaann.jl @@ -16,6 +16,41 @@ dixmaann_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANN.SIF", + :notes => raw""" +The Dixon-Maany test problem (version M by default) + +D. Orban, Montreal, 08/2015. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +See also + +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstraoined optimization +Technical Report 1081 +Institute of Computer Science +Academy of Science of the Czech Republic +(problem 20) based on +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANN,Luksan:20", ) get_dixmaann_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaann_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaano.jl b/src/Meta/dixmaano.jl index a740ee65a..267886a2e 100644 --- a/src/Meta/dixmaano.jl +++ b/src/Meta/dixmaano.jl @@ -16,6 +16,41 @@ dixmaano_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANO.SIF", + :notes => raw""" +The Dixon-Maany test problem (version M by default) + +D. Orban, Montreal, 08/2015. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +See also + +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstraoined optimization +Technical Report 1081 +Institute of Computer Science +Academy of Science of the Czech Republic +(problem 21) based on +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANO,Luksan:21", ) get_dixmaano_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaano_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixmaanp.jl b/src/Meta/dixmaanp.jl index ab30bfede..a3c2294ea 100644 --- a/src/Meta/dixmaanp.jl +++ b/src/Meta/dixmaanp.jl @@ -16,6 +16,41 @@ dixmaanp_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DIXMAANP.SIF", + :notes => raw""" +The Dixon-Maany test problem (version M by default) + +D. Orban, Montreal, 08/2015. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +See also + +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstraoined optimization +Technical Report 1081 +Institute of Computer Science +Academy of Science of the Czech Republic +(problem 22) based on +L.C.W. Dixon and Z. Maany, +"A family of test problems with sparse Hessians for unconstrained +optimization", +TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{DixonMaany1988, + author = {L. C. W. Dixon and Z. Maany}, + title = {A family of test problems with sparse Hessians for unconstrained optimization}, + institution = {Numerical Optimization Centre, Hatfield Polytechnic}, + number = {TR 206}, + year = {1988} +} + """, + :lib => "CUTEst:DIXMAANP,Luksan:22", ) get_dixmaanp_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(1, div(n, 3)) get_dixmaanp_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dixon3dq.jl b/src/Meta/dixon3dq.jl index b1167abdf..db2343ea5 100644 --- a/src/Meta/dixon3dq.jl +++ b/src/Meta/dixon3dq.jl @@ -16,6 +16,33 @@ dixon3dq_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/DIXON3DQ.SIF", + :notes => raw""" +Dixon's tridiagonal quadratic. + +classification QUR2-AN-V-0 +""", + :origin_notes => raw""" +problem 156 (p. 51) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:DIXON3DQ", ) get_dixon3dq_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_dixon3dq_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dqdrtic.jl b/src/Meta/dqdrtic.jl index 03fa3f6b3..df5280ec3 100644 --- a/src/Meta/dqdrtic.jl +++ b/src/Meta/dqdrtic.jl @@ -16,6 +16,32 @@ dqdrtic_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/DQDRTIC.SIF", + :notes => raw""" +Diagonal quadratic problem + +classification QUR2-AN-V-0 +""", + :origin_notes => raw""" +problem 22 in +Ph. L. Toint, +"Test problems for partially separable optimization and results +for the routine PSPMIN", +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:DQDRTIC", ) get_dqdrtic_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_dqdrtic_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/dqrtic.jl b/src/Meta/dqrtic.jl index 2cb568179..b8f41e40a 100644 --- a/src/Meta/dqrtic.jl +++ b/src/Meta/dqrtic.jl @@ -16,6 +16,44 @@ dqrtic_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/DQRTIC.SIF", + :notes => raw""" +Variable dimension diagonal quartic problem. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 157 (p. 87) in +A.R. Buckley, +Test functions for unconstrained minimization, +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +See also + +problem 23 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +SIF input: Ph. Toint, Dec 1989. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. G.}, + title = {Test functions for unconstrained minimization}, + institution = {Computing Science Division, Dalhousie University}, + address = {Dalhousie, Canada}, + number = {CS-3}, + year = {1989} +} + """, + :lib => "CUTEst:DQRTIC, Luksan:23", ) get_dqrtic_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_dqrtic_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/eckerle4.jl b/src/Meta/eckerle4.jl index 3a5c12c53..43b1cf59f 100644 --- a/src/Meta/eckerle4.jl +++ b/src/Meta/eckerle4.jl @@ -16,6 +16,62 @@ eckerle4_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ECKERLE4.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/eckerle4.dat + +NIST/ITL StRD +Dataset Name: Eckerle4 (Eckerle4.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 95) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + circular interference transmittance. The response + variable is transmittance, and the predictor variable + is wavelength. + +Reference: Eckerle, K., NIST (197?). + Circular Interference Transmittance Study. + +Data: 1 Response Variable (y = transmittance) + 1 Predictor Variable (x = wavelength) + 35 Observations + Higher Level of Difficulty + Observed Data + +Model: Exponential Class + 3 Parameters (b1 to b3) +T. Migot, Montreal, 2023. + +NIST Data fitting problem ECKERLE4 given as an inconsistent set of +nonlinear equations. +Fit: y = (b1/b2) * exp[-0.5*((x-b3)/b2)**2] + e + +classification NOR2-MN-3-35 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Eckerle, K., NIST (197?). +Circular Interference Transmittance Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:ECKERLE4, NIST:Eckerle4", ) get_eckerle4_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_eckerle4_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/edensch.jl b/src/Meta/edensch.jl index 9ac722418..f57d2491b 100644 --- a/src/Meta/edensch.jl +++ b/src/Meta/edensch.jl @@ -16,6 +16,48 @@ edensch_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/EDENSCH.SIF", + :notes => raw""" +The extended Dennis and Schnabel problem, as defined by Li. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +G. Li, +The secant/finite difference algorithm for solving sparse +nonlinear systems of equations, +SIAM Journal on Numerical Analysis, 25(5), pp. 1181-1196, 1988. + +See also + +problem 24 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +SIF input: Ph. Toint, Apr 1990. +minor correction by Ph. Shott, January 1995. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@article{Li1988SIAMJNA, + author = {Li, Guangye}, + title = {The Secant/Finite Difference Algorithm for Solving Sparse Nonlinear Systems of Equations}, + journal = {SIAM Journal on Numerical Analysis}, + year = {1988}, + volume = {25}, + number = {5}, + pages = {1181--1196}, + doi = {10.1137/0725067} +} + """, + :lib => "CUTEst:EDENSCH, Luksan:24", ) get_edensch_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_edensch_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/eg2.jl b/src/Meta/eg2.jl index e012fa559..91a034cf9 100644 --- a/src/Meta/eg2.jl +++ b/src/Meta/eg2.jl @@ -16,6 +16,50 @@ eg2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/EG2.SIF", + :notes => raw""" +A simple nonlinear problem given as an example in Section 1.2.4 of +the LANCELOT Manual. +The problem is non convex and has several local minima. + +classification OUR2-AN-1000-0 +""", + :origin_notes => raw""" +Section 1.2.4 of +A. R. Conn, N. I. M. Gould and Ph. L. Toint, +LANCELOT, A Fortran Package for Large-Scale Nonlinear Optimization +(Release A) +Springer Verlag, 1992. + +See also + +problem 25 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +SIF input: N. Gould and Ph. Toint, June 1994. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@book{ConnGouldToint1992LANCELOT, + author = {Conn, A. R. and Gould, N. I. M. and Toint, Ph. L.}, + title = {{LANCELOT}: a {Fortran} package for large-scale nonlinear optimization ({Release A})}, + series = {Springer Series in Computational Mathematics}, + volume = {17}, + publisher = {Springer}, + address = {Heidelberg}, + year = {1992}, + doi = {10.1007/978-3-662-12211-2} +} + """, + :lib => "CUTEst:EG2, Luksan:25", ) get_eg2_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_eg2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/elec.jl b/src/Meta/elec.jl index 84e4b91d8..6f1227226 100644 --- a/src/Meta/elec.jl +++ b/src/Meta/elec.jl @@ -16,6 +16,33 @@ elec_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ELEC.SIF", + :notes => raw""" +Given np electrons, find the equilibrium state distribution of minimal +Columb potential of the electrons positioned on a conducting sphere + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 2 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:ELEC, COPS:2", ) get_elec_nvar(; n::Integer = default_nvar, kwargs...) = 3 * max(2, div(n, 3)) get_elec_ncon(; n::Integer = default_nvar, kwargs...) = max(2, div(n, 3)) diff --git a/src/Meta/engval1.jl b/src/Meta/engval1.jl index 432b0616a..237fe1898 100644 --- a/src/Meta/engval1.jl +++ b/src/Meta/engval1.jl @@ -16,6 +16,49 @@ engval1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ENGVAL1.SIF", + :notes => raw""" +The ENGVAL1 problem. +This problem is a sum of 2n-2 groups, n-1 of which contain 2 nonlinear +elements. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 31 in +Ph.L. Toint, +Test problems for partially separable optimization and results +for the routine PSPMIN, +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. + +See also + +problem 26 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +See also Buckley#172 (p. 52) + +SIF input: Ph. Toint and N. Gould, Dec 1989. + +D. Orban, Montreal, 08/2015. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:ENGVAL1, Luksan:26", ) get_engval1_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_engval1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/enso.jl b/src/Meta/enso.jl index a010b3090..6f6bceb22 100644 --- a/src/Meta/enso.jl +++ b/src/Meta/enso.jl @@ -16,6 +16,75 @@ enso_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ENSO.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/enso.dat + +NIST/ITL StRD +Dataset Name: ENSO (ENSO.dat) + +File Format: ASCII + Starting Values (lines 41 to 49) + Certified Values (lines 41 to 54) + Data (lines 61 to 228) + +Procedure: Nonlinear Least Squares Regression + +Description: The data are monthly averaged atmospheric pressure + differences between Easter Island and Darwin, + Australia. This difference drives the trade winds in + the southern hemisphere. Fourier analysis of the data + reveals 3 significant cycles. The annual cycle is the + strongest, but cycles with periods of approximately 44 + and 26 months are also present. These cycles + correspond to the El Nino and the Southern Oscillation. + Arguments to the SIN and COS functions are in radians. + +Reference: Kahaner, D., C. Moler, and S. Nash, (1989). + Numerical Methods and Software. + Englewood Cliffs, NJ: Prentice Hall, pp. 441-445. + +Data: 1 Response (y = atmospheric pressure) + 1 Predictor (x = time) + 168 Observations + Average Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 9 Parameters (b1 to b9) + + y = b1 + b2*cos( 2*pi*x/12 ) + b3*sin( 2*pi*x/12 ) + + b5*cos( 2*pi*x/b4 ) + b6*sin( 2*pi*x/b4 ) + + b8*cos( 2*pi*x/b7 ) + b9*sin( 2*pi*x/b7 ) + e + +NIST Data fitting problem ENSO given as an inconsistent set of +nonlinear equations. +Fit: y = b1 + b2*cos( 2*pi*x/12 ) + b3*sin( 2*pi*x/12 ) ++ b5*cos( 2*pi*x/b4 ) + b6*sin( 2*pi*x/b4 ) ++ b8*cos( 2*pi*x/b7 ) + b9*sin( 2*pi*x/b7 ) + e + +classification NOR2-MN-9-168 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Kahaner, D., C. Moler, and S. Nash, (1989). +Numerical Methods and Software. +Englewood Cliffs, NJ: Prentice Hall, pp. 441-445. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{KahanerMolerNash1989, + author = {Kahaner, David and Moler, Cleve and Nash, Stephen}, + title = {Numerical Methods and Software}, + publisher = {Prentice Hall}, + address = {Englewood Cliffs, NJ}, + year = {1989} +} +""", + :lib => "CUTEst:ENSO, NIST:ENSO", ) get_enso_nvar(; n::Integer = default_nvar, kwargs...) = 9 get_enso_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/errinros_mod.jl b/src/Meta/errinros_mod.jl index 01a24d5f8..df861c8a3 100644 --- a/src/Meta/errinros_mod.jl +++ b/src/Meta/errinros_mod.jl @@ -16,6 +16,39 @@ errinros_mod_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +Errin Rosenbrock - modified function. + +problem 28 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +classification SUR2-AN-V-0 + +J,-P, Dussault, Rennes 09/2015. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "Luksan:28", ) get_errinros_mod_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_errinros_mod_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/extrosnb.jl b/src/Meta/extrosnb.jl index 7503572c6..dc525701c 100644 --- a/src/Meta/extrosnb.jl +++ b/src/Meta/extrosnb.jl @@ -16,6 +16,44 @@ extrosnb_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/EXTROSNB.SIF", + :notes => raw""" +The extended Rosenbrock function (nonseparable version). + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 10 in +Ph.L. Toint, +"Test problems for partially separable optimization and results +for the routine PSPMIN", +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. + +See also Buckley#116. Note that MGH#21 is the separable version. +SIF input: Ph. Toint, Dec 1989. + +problem 29 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +J.-P. Dussault, Rennes 09/2015. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:EXTROSNB, Luksan:29", ) get_extrosnb_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_extrosnb_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/fletcbv2.jl b/src/Meta/fletcbv2.jl index c1640e209..d3c5423b7 100644 --- a/src/Meta/fletcbv2.jl +++ b/src/Meta/fletcbv2.jl @@ -16,6 +16,52 @@ fletcbv2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/FLETCBV2.SIF", + :notes => raw""" +Another Boundary Value problem. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +The first problem given by +R. Fletcher, +"An optimal positive definite update for sparse Hessian matrices" +Numerical Analysis report NA/145, University of Dundee, 1992. +but assuming that the 1/h**2 term should read h**2 +This is what Fletcher intended (private communication). +The author comments: "The problem arises from discretizing the bvp +x"=-2+sin x in [0,1] +with x(0)=0, x(1)=1. This gives a symmetric system of equations, +the residual vector of which is the gradient of the given function." +He multiplies through by h^2 before integrating. + +Scaled version. + +SIF input: Nick Gould, Nov 1992. + +problem 31 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +J,-P, Dussault, Rennes 09/2015. +""", + :reference => raw""" +@techreport{Fletcher1992, + author = {Fletcher, R.}, + title = {An Optimal Positive Definite Update for Sparse {Hessian} Matrices}, + institution = {University of Dundee}, + type = {Numerical Analysis Report}, + number = {NA/145}, + year = {1992} +} + """, + :lib => "CUTEst:FLETCBV2, Luksan:31", ) get_fletcbv2_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_fletcbv2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/fletcbv3_mod.jl b/src/Meta/fletcbv3_mod.jl index 2216cc000..1c882430e 100644 --- a/src/Meta/fletcbv3_mod.jl +++ b/src/Meta/fletcbv3_mod.jl @@ -16,6 +16,44 @@ fletcbv3_mod_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +classification OUR2-AN-V-0 + +J.-P. Dussault, Rennes 09/2015. +""", + :origin_notes => raw""" +The first problem given by +R. Fletcher, +"An optimal positive definite update for sparse Hessian matrices" +Numerical Analysis report NA/145, University of Dundee, 1992. + +Scaled version. + +SIF input: Nick Gould, Oct 1992. + +problem 30 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "Luksan:30", ) get_fletcbv3_mod_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_fletcbv3_mod_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/fletchcr.jl b/src/Meta/fletchcr.jl index 7285200ec..906bc8970 100644 --- a/src/Meta/fletchcr.jl +++ b/src/Meta/fletchcr.jl @@ -16,6 +16,54 @@ fletchcr_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/FLETCHCR.SIF", + :notes => raw""" +The chained Rosenbrock function as given by Fletcher. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +problem 32 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +CUTEst cites + The second problem given by + R. Fletcher, + "An optimal positive definite update for sparse Hessian matrices" + Numerical Analysis report NA/145, University of Dundee, 1992. + +Scaled version. + +SIF input: Nick Gould, Oct 1992. + +as source for this problem. +It is possible that Fletcher may have used this problem in his +technical report, but the published version of his report + +SIAM J. Optimization, 5(1), pp 192-218, 1995 + +uses the chained Rosenbrock problem, not the one below. + +J.-P. Dussault, Rennes 09/2015. +""", + :reference => raw""" +@techreport{Fletcher1992, + author = {Fletcher, R.}, + title = {An Optimal Positive Definite Update for Sparse {Hessian} Matrices}, + institution = {University of Dundee}, + type = {Numerical Analysis Report}, + number = {NA/145}, + year = {1992} +} + """, + :lib => "CUTEst:FLETCHCR, Luksan:32", ) get_fletchcr_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_fletchcr_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/fminsrf2.jl b/src/Meta/fminsrf2.jl index 2e2851f0c..e91e19992 100644 --- a/src/Meta/fminsrf2.jl +++ b/src/Meta/fminsrf2.jl @@ -16,6 +16,60 @@ fminsrf2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/FMINSRF2.SIF", + :notes => raw""" +The free boundary minimum surface problem. +The problem comes from the discretization of the minimum surface +problem on the unit square with "free boundary conditions" +one must find the minumum surface over the unit square +(which is clearly 1.0). Furthermore, the distance of the surface +from zero at the centre of the unit square is also minimized. +The unit square is discretized into (p-1)**2 little squares. The +heights of the considered surface above the corners of these little +squares are the problem variables, There are p**2 of them. +Given these heights, the area above a little square is +approximated by the +S(i,j) = sqrt( 1 + 0.5(p-1)**2 ( a(i,j) + b(i,j) ) ) / (p-1)**2 +where +a(i,j) = x(i,j) - x(i+1,j+1) +and +b(i,j) = x(i+1,j) - x(i,j+1) + +classification OUR2-MY-V-0 +""", + :origin_notes => raw""" +Setting the boundary free in +A Griewank and Ph. Toint, +"Partitioned variable metric updates for large structured +optimization problems", +Numerische Mathematik 39:429-448, 1982. + +SIF input: Ph. Toint, November 1991. + +Problem 33 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Rennes 09/2015. +""", + :reference => raw""" +@article{GriewankToint1982NM, + author = {Griewank, A. and Toint, Ph. L.}, + title = {Partitioned variable metric updates for large structured optimization problems}, + journal = {Numerische Mathematik}, + year = {1982}, + volume = {39}, + number = {1}, + pages = {119--137}, + doi = {10.1007/bf01399316} +} + """, + :lib => "CUTEst:FMINSRF2, Luksan:33", ) get_fminsrf2_nvar(; n::Integer = default_nvar, kwargs...) = 100 get_fminsrf2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/freuroth.jl b/src/Meta/freuroth.jl index 3ed2aa6df..bd77d1709 100644 --- a/src/Meta/freuroth.jl +++ b/src/Meta/freuroth.jl @@ -16,6 +16,43 @@ freuroth_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/FREUROTH.SIF", + :notes => raw""" +The Freudentstein and Roth test problem + +classification SUR2-AN-V-0 +J.-P. Dussault, Rennes 09/2015. +""", + :origin_notes => raw""" +problem 34 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +problem 2 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Toint#33, Buckley#24 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:FREUROTH, Luksan:34", ) get_freuroth_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_freuroth_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/gasoil.jl b/src/Meta/gasoil.jl index 8bf105941..09a31a63c 100644 --- a/src/Meta/gasoil.jl +++ b/src/Meta/gasoil.jl @@ -16,6 +16,46 @@ gasoil_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/GASOIL.SIF", + :notes => raw""" +Catalytic Cracking of Gas Oil Problem +Collocation formulation + +Determine the reaction coefficients for the catalytic cracking of gas oil +and other byproducts. The nonlinear model that describes the process is +y_1' = - (theta_1 + theta_3 ) y_1^2 +y_2' = theta_1 y_1^2 + theta_2 y_2 +with given initial conditions. The problem is to minimize +sum{i=1,20} || y(tau_i,theta) - z_i||^2 +where the z_i are concentration measurements for y at times tau_i (i=1,20) + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 12 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +Michael Merritt - Summer 2000 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:GASOIL, COPS:12", ) get_gasoil_nvar(; n::Integer = default_nvar, kwargs...) = 26 * n + 3 get_gasoil_ncon(; n::Integer = default_nvar, kwargs...) = 26 * n + 0 diff --git a/src/Meta/gauss1.jl b/src/Meta/gauss1.jl index 0d9c1959c..165ed3c1e 100644 --- a/src/Meta/gauss1.jl +++ b/src/Meta/gauss1.jl @@ -16,6 +16,63 @@ gauss1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GAUSS1.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss1.dat + +NIST/ITL StRD +Dataset Name: Gauss1 (Gauss1.dat) + +File Format: ASCII + Starting Values (lines 41 to 48) + Certified Values (lines 41 to 53) + Data (lines 61 to 310) + +Procedure: Nonlinear Least Squares Regression + +Description: The data are two well-separated Gaussians on a + decaying exponential baseline plus normally + distributed zero-mean noise with variance = 6.25. + +Reference: Rust, B., NIST (1996). + +Data: 1 Response (y) + 1 Predictor (x) + 250 Observations + Lower Level of Difficulty + Generated Data + +Model: Exponential Class + 8 Parameters (b1 to b8) + + y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) + + b6*exp( -(x-b7)**2 / b8**2 ) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem GAUSS1 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) ++ b6*exp( -(x-b7)**2 / b8**2 ) + e + +classification NOR2-MN-8-250 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Rust, B., NIST (1996). + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:GAUSS1, NIST:Gauss1", ) get_gauss1_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_gauss1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/gauss2.jl b/src/Meta/gauss2.jl index 14799cf09..bbb6f4b63 100644 --- a/src/Meta/gauss2.jl +++ b/src/Meta/gauss2.jl @@ -16,6 +16,63 @@ gauss2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GAUSS2.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss2.dat + +NIST/ITL StRD +Dataset Name: Gauss2 (Gauss2.dat) + +File Format: ASCII + Starting Values (lines 41 to 48) + Certified Values (lines 41 to 53) + Data (lines 61 to 310) + +Procedure: Nonlinear Least Squares Regression + +Description: The data are two slightly-blended Gaussians on a + decaying exponential baseline plus normally + distributed zero-mean noise with variance = 6.25. + +Reference: Rust, B., NIST (1996). + +Data: 1 Response (y) + 1 Predictor (x) + 250 Observations + Lower Level of Difficulty + Generated Data + +Model: Exponential Class + 8 Parameters (b1 to b8) + + y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) + + b6*exp( -(x-b7)**2 / b8**2 ) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem GAUSS2 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) ++ b6*exp( -(x-b7)**2 / b8**2 ) + e + +classification NOR2-MN-8-250 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Rust, B., NIST (1996). + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:GAUSS2, NIST:Gauss2", ) get_gauss2_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_gauss2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/gauss3.jl b/src/Meta/gauss3.jl index 21f1306fc..b0ce79673 100644 --- a/src/Meta/gauss3.jl +++ b/src/Meta/gauss3.jl @@ -16,6 +16,63 @@ gauss3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GAUSS3.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss3.dat + +NIST/ITL StRD +Dataset Name: Gauss3 (Gauss3.dat) + +File Format: ASCII + Starting Values (lines 41 to 48) + Certified Values (lines 41 to 53) + Data (lines 61 to 310) + +Procedure: Nonlinear Least Squares Regression + +Description: The data are two strongly-blended Gaussians on a + decaying exponential baseline plus normally + distributed zero-mean noise with variance = 6.25. + +Reference: Rust, B., NIST (1996). + +Data: 1 Response (y) + 1 Predictor (x) + 250 Observations + Average Level of Difficulty + Generated Data + +Model: Exponential Class + 8 Parameters (b1 to b8) + + y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) + + b6*exp( -(x-b7)**2 / b8**2 ) + e +# T. Migot, Montreal, 2023. + +NIST Data fitting problem GAUSS3 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) ++ b6*exp( -(x-b7)**2 / b8**2 ) + e + +classification NOR2-MN-8-250 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Rust, B., NIST (1996). + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:GAUSS3, NIST:Gauss3", ) get_gauss3_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_gauss3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/gaussian.jl b/src/Meta/gaussian.jl index 61019d115..789e6fb39 100644 --- a/src/Meta/gaussian.jl +++ b/src/Meta/gaussian.jl @@ -16,6 +16,36 @@ gaussian_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GAUSSIAN.SIF", + :notes => raw""" +More''s gaussian problem in 3 variables. This is a nonlinear least-squares +version of problem ARGAUSS. + +classification SUR2-AN-3-0 +""", + :origin_notes => raw""" +Problem 9 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#28 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:GAUSSIAN", ) get_gaussian_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_gaussian_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/genbroydenb.jl b/src/Meta/genbroydenb.jl index 2ecb87ad4..9d668a76c 100644 --- a/src/Meta/genbroydenb.jl +++ b/src/Meta/genbroydenb.jl @@ -16,6 +16,31 @@ genbroydenb_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Generalized Broyden banded function +""", + :origin_notes => raw""" +Problem 6 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:6", ) get_genbroydenb_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/genbroydentri.jl b/src/Meta/genbroydentri.jl index 4ee3003de..1f0184db6 100644 --- a/src/Meta/genbroydentri.jl +++ b/src/Meta/genbroydentri.jl @@ -16,6 +16,32 @@ genbroydentri_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +", + :notes => raw""" +Generalized Broyden Tridiagonal Function +""", + :origin_notes => raw""" +Problem 5 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:5", ) get_genbroydentri_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/genhumps.jl b/src/Meta/genhumps.jl index 992389569..2435a0f0a 100644 --- a/src/Meta/genhumps.jl +++ b/src/Meta/genhumps.jl @@ -16,6 +16,42 @@ genhumps_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf, https://bitbucket.org/optrove/sif/src/master/GENHUMPS.SIF", + :notes => raw""" +A multi-dimensional variant of HUMPS, a two dimensional function +with a lot of humps. The density of humps increases with the +parameter ZETA, making the problem more difficult. +The problem is nonconvex. + +classification OUR2-AN-V-0 + +classification SUR2-AN-V-0 +J.-P. Dussault, Rennes 09/2015. +""", + :origin_notes => raw""" +problem 35 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic + +Ph. Toint, private communication, 1997. +SDIF input: N. Gould and Ph. Toint, November 1997. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:GENHUMPS, Luksan:35", ) get_genhumps_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_genhumps_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/genrose.jl b/src/Meta/genrose.jl index 53fe1bc2e..96cadc522 100644 --- a/src/Meta/genrose.jl +++ b/src/Meta/genrose.jl @@ -16,6 +16,41 @@ genrose_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GENROSE.SIF", + :notes => raw""" +Generalized Rosenbrock function. + +classification SUR2-AN-V-0 + +problem 36 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :origin_notes => raw""" +problem 5 in +S. Nash, +"Newton-type minimization via the Lanczos process", +SIAM J. Num. Anal. 21, 1984, 770-788. + +SIF input: Nick Gould, Oct 1992. +""", + :reference => raw""" +@article{Nash1984SIAMNA, + author = {Nash, Stephen G.}, + title = {Newton-Type Minimization via the {Lanczos} Method}, + journal = {SIAM Journal on Numerical Analysis}, + year = {1984}, + volume = {21}, + number = {4}, + pages = {770--788}, + doi = {10.1137/0721052} +} + """, + :lib => "CUTEst:GENROSE, Luksan:36", ) get_genrose_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_genrose_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/genrose_nash.jl b/src/Meta/genrose_nash.jl index 62651bf53..2f09de168 100644 --- a/src/Meta/genrose_nash.jl +++ b/src/Meta/genrose_nash.jl @@ -16,6 +16,78 @@ genrose_nash_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +Generalized Rosenbrock function. + +classification SUR2-AN-V-0 + +Note: this variant does not reduce to the classical +Rosenbrock function when n = 2, described in + +H. H. Rosenbrock, +An automatic method for finding the greatest or least value +of a function +The Computer Journal 3: 175–184, 1960. +https://doi.org/10.1093/comjnl/3.3.175 + +D. Orban, Montreal, 08/2015. + + +# Institute of Computer Science, +# Academy of Science of the Czech Republic +# +# http://www.cs.cas.cz/matonoha/download/V1081.pdf +# +# classification SUR2-AN-V-0 +# +# D. Orban, Montreal, 08/2015. + +# Note: difference from CUTEst is due to the constant 1.0, +# which does not affect its utility as a test problem other than perhaps +# for convergence-testing. + +# Difference with the following is the initial guess. +# +# Problem 1 in +# L. Luksan, C. Matonoha and J. Vlcek +# Sparse Test Problems for Unconstrained Optimization, +# Technical Report 1064, +# Institute of Computer Science, +# Academy of Science of the Czech Republic +# +# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +# +""", + :origin_notes => raw""" +problem 4 in +S. Nash, +Newton-type minimization via the Lanczos process, +SIAM J. Num. Anal. 21, 770-788, 1984, + +and + +problem 36 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +""", + :reference => raw""" +@article{Nash1984SIAMNA, + author = {Nash, Stephen G.}, + title = {Newton-Type Minimization via the {Lanczos} Method}, + journal = {SIAM Journal on Numerical Analysis}, + year = {1984}, + volume = {21}, + number = {4}, + pages = {770--788}, + doi = {10.1137/0721052} +} + """, + :lib => "Luksan:36, LuksanSparse:1", ) get_genrose_nash_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_genrose_nash_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/glider.jl b/src/Meta/glider.jl index 6a31a0298..a08ae5443 100644 --- a/src/Meta/glider.jl +++ b/src/Meta/glider.jl @@ -16,6 +16,41 @@ glider_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/GLIDER.SIF", + :notes => raw""" +Hang Glider Problem +Trapezoidal formulation + +Maximize the final horizontal position of a hang glider in the presence +of a thermal updraft. + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 11 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +David Bortz - Summer 1998 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, December 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:GLIDER, COPS:11", ) get_glider_nvar(; n::Integer = default_nvar, kwargs...) = 5 * n + 6 get_glider_ncon(; n::Integer = default_nvar, kwargs...) = 4 * n + 7 diff --git a/src/Meta/gulf.jl b/src/Meta/gulf.jl index 50763d053..b43e789a4 100644 --- a/src/Meta/gulf.jl +++ b/src/Meta/gulf.jl @@ -16,6 +16,48 @@ gulf_meta = Dict( :is_feasible => true, :defined_everywhere => false, :origin => :real, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/GULF.SIF", + :notes => raw""" +The Gulf research and development function for m = 99. + +SUR2-MN-3-0 + +The Gulf RD test problem in 3 variables. +This function is a nonlinear least squares with 99 groups. Each +group has a nonlinear element of exponential type. +The number of groups may be varied, but must be larger or equal to 3 + +classification SUR2-MN-3-0 +""", + :origin_notes => raw""" +problem 27 (p. 57) in + A.R. Buckley, + "Test functions for unconstrained minimization", + TR 1989CS-3, Mathematics, statistics and computing centre, + Dalhousie University, Halifax (CDN), 1989. + +problem 11 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#27 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:GULF", ) get_gulf_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_gulf_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hahn1.jl b/src/Meta/hahn1.jl index a5e6896ce..703f75f63 100644 --- a/src/Meta/hahn1.jl +++ b/src/Meta/hahn1.jl @@ -16,6 +16,65 @@ hahn1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/hahn1.dat, https://bitbucket.org/optrove/sif/src/master/HAHN1.SIF", + :notes => raw""" +NIST/ITL StRD +Dataset Name: Hahn1 (Hahn1.dat) + +File Format: ASCII + Starting Values (lines 41 to 47) + Certified Values (lines 41 to 52) + Data (lines 61 to 296) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + the thermal expansion of copper. The response + variable is the coefficient of thermal expansion, and + the predictor variable is temperature in degrees + kelvin. + +Reference: Hahn, T., NIST (197?). + Copper Thermal Expansion Study. + +Data: 1 Response (y = coefficient of thermal expansion) + 1 Predictor (x = temperature, degrees kelvin) + 236 Observations + Average Level of Difficulty + Observed Data + +Model: Rational Class (cubic/cubic) + 7 Parameters (b1 to b7) + + y = (b1+b2*x+b3*x**2+b4*x**3) / + (1+b5*x+b6*x**2+b7*x**3) + e +# T. Migot, Montreal, 2023. + +NIST Data fitting problem HAHN1 given as an inconsistent set of +nonlinear equations. +Fit: y = (b1 + b2*x + b3*x**2 + b4*x**3) / +(1 + b5*x + b6*x**2 + b7*x**3) + e + +classification NOR2-MN-7-37 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Hahn, T., NIST (197?). +Copper Thermal Expansion Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:HAHN1, NIST:Hahn1", ) get_hahn1_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hahn1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/helical.jl b/src/Meta/helical.jl index fb99f9183..9b40c58bc 100644 --- a/src/Meta/helical.jl +++ b/src/Meta/helical.jl @@ -16,6 +16,30 @@ helical_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936", + :notes => raw""" + +""", + :origin_notes => raw""" +problem 7 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "MGH:7", ) get_helical_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_helical_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hovercraft1d.jl b/src/Meta/hovercraft1d.jl index 7f3fffe53..8b3ddd89e 100644 --- a/src/Meta/hovercraft1d.jl +++ b/src/Meta/hovercraft1d.jl @@ -16,6 +16,28 @@ hovercraft1d_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://laurentlessard.com/teaching/524-intro-to-optimization/", + :notes => raw""" + +""", + :origin_notes => raw""" +JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, +Introduction to Optimization class. + +Hovercraft 1D example +https://laurentlessard.com/teaching/524-intro-to-optimization/ +""", + :reference => raw""" +@misc{Lessard524, + author = {Lessard, Laurent}, + title = {Introduction to Optimization, {CS/ECE/ISyE} 524}, + howpublished = {Lecture notes, University of Wisconsin--Madison}, + url = {https://laurentlessard.com/teaching/524-intro-to-optimization/}, + year = {2023} +} +""", + :lib => "", ) get_hovercraft1d_nvar(; n::Integer = default_nvar, kwargs...) = 3 * div(n, 3) - 1 get_hovercraft1d_ncon(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 3) + 2 diff --git a/src/Meta/hs1.jl b/src/Meta/hs1.jl index fd431abb9..313f476a6 100644 --- a/src/Meta/hs1.jl +++ b/src/Meta/hs1.jl @@ -16,6 +16,39 @@ hs1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS1.SIF", + :notes => raw""" +Hock and Schittkowski problem number 1. + +The ever famous 2 variables Rosenbrock "banana valley" problem +with a single lower bound. + +classification SBR2-AN-2-0 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 1 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, March 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS1, HS:1", ) get_hs1_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs10.jl b/src/Meta/hs10.jl index cb4621b55..9e6e0ee6c 100644 --- a/src/Meta/hs10.jl +++ b/src/Meta/hs10.jl @@ -16,6 +16,36 @@ hs10_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS10.SIF", + :notes => raw""" +Hock and Schittkowski problem number 10. + +classification LQR2-AN-2-1 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 10 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS10, HS:10", ) get_hs10_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs10_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs100.jl b/src/Meta/hs100.jl index bec68d4e1..cd464e671 100644 --- a/src/Meta/hs100.jl +++ b/src/Meta/hs100.jl @@ -16,6 +16,38 @@ hs100_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS100.SIF", + :notes => raw""" +Hock and Schittkowski problem number 100. + +classification OOR2-AN-7-4 + +classification PPR-AN-7-4 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 100 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS100, HS:100", ) get_hs100_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs100_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs101.jl b/src/Meta/hs101.jl index 96d2dc669..24f0868a8 100644 --- a/src/Meta/hs101.jl +++ b/src/Meta/hs101.jl @@ -16,6 +16,38 @@ hs101_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS101.SIF", + :notes => raw""" +Hock and Schittkowski problem number 101. + +classification OOR2-AN-7-5 + +classification PPR-AN-7-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 101 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: N. Gould, December 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS101, HS:101", ) get_hs101_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs101_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs102.jl b/src/Meta/hs102.jl index 47eda9b42..9a3006a20 100644 --- a/src/Meta/hs102.jl +++ b/src/Meta/hs102.jl @@ -16,6 +16,38 @@ hs102_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS102.SIF", + :notes => raw""" +Hock and Schittkowski problem number 102. + +classification OOR2-AN-7-5 + +classification PPR-AN-7-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 102 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: N. Gould, December 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS102, HS:102", ) get_hs102_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs102_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs103.jl b/src/Meta/hs103.jl index 7d1e9946a..1b7446602 100644 --- a/src/Meta/hs103.jl +++ b/src/Meta/hs103.jl @@ -16,6 +16,38 @@ hs103_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS103.SIF", + :notes => raw""" +Hock and Schittkowski problem number 103. + +classification OOR2-AN-7-5 + +classification PPR-AN-7-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 103 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: N. Gould, December 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS103, HS:103", ) get_hs103_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs103_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs104.jl b/src/Meta/hs104.jl index fe6ed9222..5c2295cee 100644 --- a/src/Meta/hs104.jl +++ b/src/Meta/hs104.jl @@ -16,6 +16,38 @@ hs104_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS104.SIF", + :notes => raw""" +Hock and Schittkowski problem number 104. + +classification OOR2-AN-8-5 + +classification PPR-AN-8-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 104 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS104, HS:104", ) get_hs104_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_hs104_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs105.jl b/src/Meta/hs105.jl index d41eeef3a..8b7dd1074 100644 --- a/src/Meta/hs105.jl +++ b/src/Meta/hs105.jl @@ -16,6 +16,38 @@ hs105_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS105.SIF", + :notes => raw""" +Hock and Schittkowski problem number 105. + +classification OLR2-AY-8-1 + +classification GLR-AN-8-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 105 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS105, HS:105", ) get_hs105_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_hs105_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs106.jl b/src/Meta/hs106.jl index 49bc3871e..449e39dfa 100644 --- a/src/Meta/hs106.jl +++ b/src/Meta/hs106.jl @@ -16,6 +16,40 @@ hs106_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS106.SIF", + :notes => raw""" +Hock and Schittkowski problem number 106. + +A heat exchanger design problem. + +classification LQR2-MN-8-6 + +classification LQR-AN-8-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 106 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J-M COLLIN. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS106, HS:106", ) get_hs106_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_hs106_ncon(; n::Integer = default_nvar, kwargs...) = 6 diff --git a/src/Meta/hs107.jl b/src/Meta/hs107.jl index e0fd69fca..b383b3f48 100644 --- a/src/Meta/hs107.jl +++ b/src/Meta/hs107.jl @@ -16,6 +16,43 @@ hs107_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS107.SIF", + :notes => raw""" +Hock and Schittkowski problem number 107. + +A static power scheduling problem. +There are note enough components for the starting point in the +problem description in the source. The initial value for X7 has +been set to 1.0454, as for X5 and X6. + +classification OOR2-MY-9-6 + +classification PGR-AN-9-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 107 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS107, HS:107", ) get_hs107_nvar(; n::Integer = default_nvar, kwargs...) = 9 get_hs107_ncon(; n::Integer = default_nvar, kwargs...) = 6 diff --git a/src/Meta/hs108.jl b/src/Meta/hs108.jl index 3bb568cd9..622a3d4e3 100644 --- a/src/Meta/hs108.jl +++ b/src/Meta/hs108.jl @@ -16,6 +16,38 @@ hs108_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS108.SIF", + :notes => raw""" +Hock and Schittkowski problem number 108. + +classification QQR2-AY-9-13 + +classification QQR-AN-9-13 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 108 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J-M Collin and Ph. Toint, Apr 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS108, HS:108", ) get_hs108_nvar(; n::Integer = default_nvar, kwargs...) = 9 get_hs108_ncon(; n::Integer = default_nvar, kwargs...) = 12 diff --git a/src/Meta/hs109.jl b/src/Meta/hs109.jl index 818327f90..21a45cccd 100644 --- a/src/Meta/hs109.jl +++ b/src/Meta/hs109.jl @@ -16,6 +16,44 @@ hs109_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS109.SIF", + :notes => raw""" +Hock and Schittkowski problem number 109. + +classification OOR2-AY-9-10 + +classification PGR-AN-9-10 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + Problem 109 in + W. Hock and K. Schittkowski, + Test examples for nonlinear programming codes, + Lectures Notes in Economics and Mathematical Systems 187, + Springer Verlag, Heidelberg, 1981. + + problem 80 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, June 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS109, HS:109", ) get_hs109_nvar(; n::Integer = default_nvar, kwargs...) = 9 get_hs109_ncon(; n::Integer = default_nvar, kwargs...) = 9 diff --git a/src/Meta/hs11.jl b/src/Meta/hs11.jl index a9a5548e6..98f836b4a 100644 --- a/src/Meta/hs11.jl +++ b/src/Meta/hs11.jl @@ -16,6 +16,36 @@ hs11_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS11.SIF", + :notes => raw""" +Hock and Schittkowski problem number 11. + +classification SQR2-AN-2-1 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 11 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. L. Toint, October 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS11, HS:11", ) get_hs11_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs11_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs110.jl b/src/Meta/hs110.jl index 2c69c09fe..2ddb1fd76 100644 --- a/src/Meta/hs110.jl +++ b/src/Meta/hs110.jl @@ -16,6 +16,41 @@ hs110_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS110.SIF", + :notes => raw""" +Hock and Schittkowski problem number 110. + +This problem is a sum of 2n+1 groups, 2n of which contain 1 linear +element and the other one contains n elements. + +classification SBR2-AN-V-0 + +classification GBR-AN-10-0 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 110 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, Mar 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS110, HS:110", ) get_hs110_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs110_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs111.jl b/src/Meta/hs111.jl index 989b97484..1d119fcda 100644 --- a/src/Meta/hs111.jl +++ b/src/Meta/hs111.jl @@ -16,6 +16,39 @@ hs111_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS111.SIF", + :notes => raw""" +Hock and Schittkowski problem number 111. + +This problem is a chemical equilibrium problem involving 3 linear +equality constraints. + +classification OOR2-AN-10-3 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 111 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS111, HS:111", ) get_hs111_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs111_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs112.jl b/src/Meta/hs112.jl index 31ce58d0c..2dc9157ca 100644 --- a/src/Meta/hs112.jl +++ b/src/Meta/hs112.jl @@ -16,6 +16,45 @@ hs112_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS112.SIF", + :notes => raw""" +Hock and Schittkowski problem number 112. + +This problem is a chemical equilibrium problem involving 3 linear +equality constraints. + +classification OLR2-MY-10-3 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + Problem 112 in + W. Hock and K. Schittkowski, + Test examples for nonlinear programming codes, + Lectures Notes in Economics and Mathematical Systems 187, + Springer Verlag, Heidelberg, 1981. + + problem 80 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, Mar 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS112, HS:112", ) get_hs112_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs112_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs113.jl b/src/Meta/hs113.jl index 54db48c6f..d16872e67 100644 --- a/src/Meta/hs113.jl +++ b/src/Meta/hs113.jl @@ -16,6 +16,44 @@ hs113_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS113.SIF", + :notes => raw""" +Hock and Schittkowski problem number 113. + +classification QQR2-AN-10-8 + +classification QQR-AN-10-8 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + Problem 113 in + W. Hock and K. Schittkowski, + Test examples for nonlinear programming codes, + Lectures Notes in Economics and Mathematical Systems 187, + Springer Verlag, Heidelberg, 1981. + + problem 80 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J-M Collin, Mar 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS113, HS:113", ) get_hs113_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs113_ncon(; n::Integer = default_nvar, kwargs...) = 8 diff --git a/src/Meta/hs114.jl b/src/Meta/hs114.jl index 1741dd1c4..e12f14c3b 100644 --- a/src/Meta/hs114.jl +++ b/src/Meta/hs114.jl @@ -16,6 +16,40 @@ hs114_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS114.SIF", + :notes => raw""" +Hock and Schittkowski problem number 114. + +An alkylation process problem. + +classification QOR2-MY-10-11 + +classification QGR-AN-10-11 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 114 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J.M. Collin, Jan 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS114, HS:114", ) get_hs114_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs114_ncon(; n::Integer = default_nvar, kwargs...) = 11 diff --git a/src/Meta/hs116.jl b/src/Meta/hs116.jl index 47be81dc2..1deeffda3 100644 --- a/src/Meta/hs116.jl +++ b/src/Meta/hs116.jl @@ -16,6 +16,40 @@ hs116_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS116.SIF", + :notes => raw""" +Hock and Schittkowski problem number 116. + +A 3 stage membrane separation model + +classification LQR2-MN-13-14 + +classification QGR-AN-13-14 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 116 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B. Debarsy, Feb 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS116, HS:116", ) get_hs116_nvar(; n::Integer = default_nvar, kwargs...) = 13 get_hs116_ncon(; n::Integer = default_nvar, kwargs...) = 15 diff --git a/src/Meta/hs117.jl b/src/Meta/hs117.jl index 9c062b5c9..1463a5853 100644 --- a/src/Meta/hs117.jl +++ b/src/Meta/hs117.jl @@ -16,6 +16,38 @@ hs117_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS117.SIF", + :notes => raw""" +Hock and Schittkowski problem number 117. + +classification OQR2-AN-15-5 + +classification PQR-AN-15-5 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 117 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS117, HS:117", ) get_hs117_nvar(; n::Integer = default_nvar, kwargs...) = 15 get_hs117_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs118.jl b/src/Meta/hs118.jl index 52c4c7cac..42438ee1d 100644 --- a/src/Meta/hs118.jl +++ b/src/Meta/hs118.jl @@ -16,6 +16,38 @@ hs118_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS118.SIF", + :notes => raw""" +Hock and Schittkowski problem number 118. + +classification QLR2-AN-15-17 + +classification QLR-AN-15-17 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 118 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Baudson, Jan 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS118, HS:118", ) get_hs118_nvar(; n::Integer = default_nvar, kwargs...) = 15 get_hs118_ncon(; n::Integer = default_nvar, kwargs...) = 17 diff --git a/src/Meta/hs119.jl b/src/Meta/hs119.jl index 2876677c4..d614b563f 100644 --- a/src/Meta/hs119.jl +++ b/src/Meta/hs119.jl @@ -16,6 +16,42 @@ hs119_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS119.SIF", + :notes => raw""" +Hock and Schittkowski problem number 119. + +classification OLR2-AN-16-8 + +classification PLR-AN-16-8 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 119 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + Original Source: problem 7 in + A.R. Colville + "A comparative study on nonlinear programming" + IBM Scientific Center Report 320-2949, New York, 1968. + + SIF input: A.R. Conn, March 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS119, HS:119", ) get_hs119_nvar(; n::Integer = default_nvar, kwargs...) = 16 get_hs119_ncon(; n::Integer = default_nvar, kwargs...) = 8 diff --git a/src/Meta/hs12.jl b/src/Meta/hs12.jl index afca140ba..8d4f8d8a1 100644 --- a/src/Meta/hs12.jl +++ b/src/Meta/hs12.jl @@ -16,6 +16,36 @@ hs12_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS12.SIF", + :notes => raw""" +Hock and Schittkowski problem number 12. + +classification QQR2-AN-2-1 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 12 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS12, HS:12", ) get_hs12_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs12_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs13.jl b/src/Meta/hs13.jl index 6979c00a8..4f008bc37 100644 --- a/src/Meta/hs13.jl +++ b/src/Meta/hs13.jl @@ -16,6 +16,41 @@ hs13_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS13.SIF", + :notes => raw""" +Hock and Schittkowski problem number 13. + +A problem in 2 variables where constraint qualification does not +hold. + +classification QOR2-AN-2-1 + +classification QQR2-AN-2-1 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 13 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS13, HS:13", ) get_hs13_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs13_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs14.jl b/src/Meta/hs14.jl index 619a41af2..7895e52b7 100644 --- a/src/Meta/hs14.jl +++ b/src/Meta/hs14.jl @@ -16,6 +16,36 @@ hs14_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS14.SIF", + :notes => raw""" +Hock and Schittkowski problem number 14. + +classification SQR2-AN-2-2 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 14 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS14, HS:14", ) get_hs14_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs14_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs15.jl b/src/Meta/hs15.jl index 69b45ce60..9ee244bf8 100644 --- a/src/Meta/hs15.jl +++ b/src/Meta/hs15.jl @@ -16,6 +16,36 @@ hs15_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS15.SIF", + :notes => raw""" +Hock and Schittkowski problem number 15. + +classification SQR2-AN-2-2 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 15 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS15, HS:15", ) get_hs15_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs15_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs16.jl b/src/Meta/hs16.jl index c93326e18..2c76ced1a 100644 --- a/src/Meta/hs16.jl +++ b/src/Meta/hs16.jl @@ -16,6 +16,36 @@ hs16_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS16.SIF", + :notes => raw""" +Hock and Schittkowski problem number 16. + +classification SQR2-AN-2-2 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 16 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS16, HS:16", ) get_hs16_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs16_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs17.jl b/src/Meta/hs17.jl index 8478a2b18..39d833877 100644 --- a/src/Meta/hs17.jl +++ b/src/Meta/hs17.jl @@ -16,6 +16,36 @@ hs17_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS17.SIF", + :notes => raw""" +Hock and Schittkowski problem number 17. + +classification SQR2-AN-2-2 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 17 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS17, HS:17", ) get_hs17_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs17_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs18.jl b/src/Meta/hs18.jl index 1bb95e94f..c2b374400 100644 --- a/src/Meta/hs18.jl +++ b/src/Meta/hs18.jl @@ -16,6 +16,36 @@ hs18_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS18.SIF", + :notes => raw""" +Hock and Schittkowski problem number 18. + +classification SQR2-AN-2-2 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 18 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS18, HS:18", ) get_hs18_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs18_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs19.jl b/src/Meta/hs19.jl index eedec28bf..a4570334a 100644 --- a/src/Meta/hs19.jl +++ b/src/Meta/hs19.jl @@ -16,6 +16,38 @@ hs19_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS19.SIF", + :notes => raw""" +Hock and Schittkowski problem number 19. + +classification OQR2-AN-2-2 + +classification PQR2-AN-2-2 + + A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 19 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS19, HS:19", ) get_hs19_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs19_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs2.jl b/src/Meta/hs2.jl index 5c5e4152a..4ee321850 100644 --- a/src/Meta/hs2.jl +++ b/src/Meta/hs2.jl @@ -16,6 +16,41 @@ hs2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS2.SIF", + :notes => raw""" +Hock and Schittkowski problem number 2. + +The ever famous 2 variables Rosenbrock "banana valley" problem +with a single lower bound. + +classification SBR2-AN-2-0 + +classification PBR2-AN-2-0 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 2 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, March 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS2, HS:2", ) get_hs2_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs20.jl b/src/Meta/hs20.jl index 91b4038b2..5098cb9ad 100644 --- a/src/Meta/hs20.jl +++ b/src/Meta/hs20.jl @@ -16,6 +16,36 @@ hs20_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS20.SIF", + :notes => raw""" +Hock and Schittkowski problem number 20. + +classification SQR2-AN-2-3 + + N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 20 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS20, HS:20", ) get_hs20_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs20_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs201.jl b/src/Meta/hs201.jl index 0ed7b4bb1..7f98b488c 100644 --- a/src/Meta/hs201.jl +++ b/src/Meta/hs201.jl @@ -16,6 +16,30 @@ hs201_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 201. +""", + :origin_notes => raw""" +Problem 201 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:201", ) get_hs201_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs201_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs21.jl b/src/Meta/hs21.jl index fe79be68b..9b3422421 100644 --- a/src/Meta/hs21.jl +++ b/src/Meta/hs21.jl @@ -16,6 +16,36 @@ hs21_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS21.SIF", + :notes => raw""" +Hock and Schittkowski problem number 21. + +classification QLR2-AN-2-1 + + A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 21 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS21, HS:21", ) get_hs21_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs21_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs211.jl b/src/Meta/hs211.jl index b3a8622ae..c2eb50cd0 100644 --- a/src/Meta/hs211.jl +++ b/src/Meta/hs211.jl @@ -16,6 +16,30 @@ hs211_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 211. +""", + :origin_notes => raw""" +Problem 211 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:211", ) get_hs211_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs211_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs219.jl b/src/Meta/hs219.jl index da47ae177..dc720fa2f 100644 --- a/src/Meta/hs219.jl +++ b/src/Meta/hs219.jl @@ -16,6 +16,34 @@ hs219_meta = Dict( :is_feasible => true, :defined_everywhere => true, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 219. + +Solution is: (1, 1, 0, 0) with f(x^*) = -1 +""", + :origin_notes => raw""" + Problem 219 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + + classification LPR-T1-1 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:219", ) get_hs219_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs219_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs22.jl b/src/Meta/hs22.jl index f9cef42bb..74a6f82b7 100644 --- a/src/Meta/hs22.jl +++ b/src/Meta/hs22.jl @@ -16,6 +16,36 @@ hs22_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS22.SIF", + :notes => raw""" +Hock and Schittkowski problem number 22. + +classification QQR2-AN-2-2 + + A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 22 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS22, HS:22", ) get_hs22_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs22_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs220.jl b/src/Meta/hs220.jl index 3a81f74ba..3aa981e8a 100644 --- a/src/Meta/hs220.jl +++ b/src/Meta/hs220.jl @@ -16,6 +16,30 @@ hs220_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 220. +""", + :origin_notes => raw""" +Problem 220 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:220", ) get_hs220_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs220_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs221.jl b/src/Meta/hs221.jl index e8e8f70e8..9065f5e33 100644 --- a/src/Meta/hs221.jl +++ b/src/Meta/hs221.jl @@ -16,6 +16,30 @@ hs221_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 221. +""", + :origin_notes => raw""" +Problem 221 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:221", ) get_hs221_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs221_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs222.jl b/src/Meta/hs222.jl index f9bc7df95..1c9a82994 100644 --- a/src/Meta/hs222.jl +++ b/src/Meta/hs222.jl @@ -16,6 +16,30 @@ hs222_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 222. +""", + :origin_notes => raw""" +Problem 222 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:222", ) get_hs222_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs222_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs223.jl b/src/Meta/hs223.jl index 9b765b2cc..d0b098612 100644 --- a/src/Meta/hs223.jl +++ b/src/Meta/hs223.jl @@ -16,6 +16,30 @@ hs223_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 223. +""", + :origin_notes => raw""" +Problem 223 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:223", ) get_hs223_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs223_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs224.jl b/src/Meta/hs224.jl index e6e29d1ad..b41cd7de1 100644 --- a/src/Meta/hs224.jl +++ b/src/Meta/hs224.jl @@ -16,6 +16,30 @@ hs224_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 224. +""", + :origin_notes => raw""" +Problem 224 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:224", ) get_hs224_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs224_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs225.jl b/src/Meta/hs225.jl index a59aa14ee..576f8fa75 100644 --- a/src/Meta/hs225.jl +++ b/src/Meta/hs225.jl @@ -16,6 +16,30 @@ hs225_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 225. +""", + :origin_notes => raw""" +Problem 225 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:225", ) get_hs225_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs225_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs226.jl b/src/Meta/hs226.jl index c7944e788..98b283076 100644 --- a/src/Meta/hs226.jl +++ b/src/Meta/hs226.jl @@ -16,6 +16,30 @@ hs226_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 226. +""", + :origin_notes => raw""" +Problem 226 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:226", ) get_hs226_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs226_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs227.jl b/src/Meta/hs227.jl index fd0a0d2fb..d370d87ff 100644 --- a/src/Meta/hs227.jl +++ b/src/Meta/hs227.jl @@ -16,6 +16,30 @@ hs227_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 227. +""", + :origin_notes => raw""" +Problem 227 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:227", ) get_hs227_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs227_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs228.jl b/src/Meta/hs228.jl index c043053d1..3c823bcdc 100644 --- a/src/Meta/hs228.jl +++ b/src/Meta/hs228.jl @@ -16,6 +16,30 @@ hs228_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 228. +""", + :origin_notes => raw""" +Problem 228 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:228", ) get_hs228_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs228_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs229.jl b/src/Meta/hs229.jl index cedf7d599..69f9882ae 100644 --- a/src/Meta/hs229.jl +++ b/src/Meta/hs229.jl @@ -16,6 +16,30 @@ hs229_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 229. +""", + :origin_notes => raw""" +Problem 229 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:229", ) get_hs229_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs229_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs23.jl b/src/Meta/hs23.jl index 1c7dc3a8f..dd31e68a2 100644 --- a/src/Meta/hs23.jl +++ b/src/Meta/hs23.jl @@ -16,6 +16,36 @@ hs23_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS23.SIF", + :notes => raw""" +Hock and Schittkowski problem number 23. + +classification QQR2-AN-2-5 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 23 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS23, HS:23", ) get_hs23_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs23_ncon(; n::Integer = default_nvar, kwargs...) = 5 diff --git a/src/Meta/hs230.jl b/src/Meta/hs230.jl index 503b50404..fcd8060fe 100644 --- a/src/Meta/hs230.jl +++ b/src/Meta/hs230.jl @@ -16,6 +16,30 @@ hs230_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 230. +""", + :origin_notes => raw""" +Problem 230 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:230", ) get_hs230_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs230_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs231.jl b/src/Meta/hs231.jl index 3d04572aa..aa556d282 100644 --- a/src/Meta/hs231.jl +++ b/src/Meta/hs231.jl @@ -16,6 +16,30 @@ hs231_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 231. +""", + :origin_notes => raw""" +Problem 231 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:231", ) get_hs231_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs231_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs232.jl b/src/Meta/hs232.jl index 4af57a70b..c81ad16f9 100644 --- a/src/Meta/hs232.jl +++ b/src/Meta/hs232.jl @@ -16,6 +16,30 @@ hs232_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 232. +""", + :origin_notes => raw""" +Problem 232 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:232", ) get_hs232_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs232_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs233.jl b/src/Meta/hs233.jl index 719de3438..d4c0a47f4 100644 --- a/src/Meta/hs233.jl +++ b/src/Meta/hs233.jl @@ -16,6 +16,30 @@ hs233_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 233. +""", + :origin_notes => raw""" +Problem 233 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:233", ) get_hs233_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs233_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs234.jl b/src/Meta/hs234.jl index 81237bec2..72fb081d5 100644 --- a/src/Meta/hs234.jl +++ b/src/Meta/hs234.jl @@ -16,6 +16,30 @@ hs234_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 234. +""", + :origin_notes => raw""" +Problem 234 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:234", ) get_hs234_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs234_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs235.jl b/src/Meta/hs235.jl index 7da5a8e49..db33e8454 100644 --- a/src/Meta/hs235.jl +++ b/src/Meta/hs235.jl @@ -16,6 +16,30 @@ hs235_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 235. +""", + :origin_notes => raw""" +Problem 235 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:235", ) get_hs235_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs235_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs236.jl b/src/Meta/hs236.jl index 9bf873f25..4c8314bef 100644 --- a/src/Meta/hs236.jl +++ b/src/Meta/hs236.jl @@ -16,6 +16,30 @@ hs236_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 236. +""", + :origin_notes => raw""" +Problem 236 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:236", ) get_hs236_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs236_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs237.jl b/src/Meta/hs237.jl index 72a098e75..38072ac3d 100644 --- a/src/Meta/hs237.jl +++ b/src/Meta/hs237.jl @@ -16,6 +16,30 @@ hs237_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 237. +""", + :origin_notes => raw""" +Problem 237 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:237", ) get_hs237_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs237_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs238.jl b/src/Meta/hs238.jl index 259fdac2a..90c8287b0 100644 --- a/src/Meta/hs238.jl +++ b/src/Meta/hs238.jl @@ -16,6 +16,30 @@ hs238_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 238. +""", + :origin_notes => raw""" +Problem 238 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:238", ) get_hs238_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs238_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs239.jl b/src/Meta/hs239.jl index f60e88e21..87fda8086 100644 --- a/src/Meta/hs239.jl +++ b/src/Meta/hs239.jl @@ -16,6 +16,30 @@ hs239_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 239. +""", + :origin_notes => raw""" +Problem 239 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:239", ) get_hs239_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs239_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs24.jl b/src/Meta/hs24.jl index 3b3377148..0b3e3f581 100644 --- a/src/Meta/hs24.jl +++ b/src/Meta/hs24.jl @@ -16,6 +16,38 @@ hs24_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS24.SIF", + :notes => raw""" +Hock and Schittkowski problem number 24. + +classification OLR2-AN-2-3 + +classification PLR2-AN-2-3 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 24 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS24, HS:24", ) get_hs24_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs24_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs240.jl b/src/Meta/hs240.jl index c22b9bddb..b73e2623b 100644 --- a/src/Meta/hs240.jl +++ b/src/Meta/hs240.jl @@ -16,6 +16,30 @@ hs240_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 240. +""", + :origin_notes => raw""" +Problem 240 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:240", ) get_hs240_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs240_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs241.jl b/src/Meta/hs241.jl index f40486d3f..a57599f74 100644 --- a/src/Meta/hs241.jl +++ b/src/Meta/hs241.jl @@ -16,6 +16,30 @@ hs241_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 241. +""", + :origin_notes => raw""" +Problem 241 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:241", ) get_hs241_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs241_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs242.jl b/src/Meta/hs242.jl index 24ea2b7a4..1333aca56 100644 --- a/src/Meta/hs242.jl +++ b/src/Meta/hs242.jl @@ -16,6 +16,30 @@ hs242_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 242. +""", + :origin_notes => raw""" +Problem 242 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:242", ) get_hs242_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs242_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs243.jl b/src/Meta/hs243.jl index ac26ab5d9..4cd1d8c2f 100644 --- a/src/Meta/hs243.jl +++ b/src/Meta/hs243.jl @@ -16,6 +16,30 @@ hs243_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 243. +""", + :origin_notes => raw""" +Problem 243 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:243", ) get_hs243_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs243_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs244.jl b/src/Meta/hs244.jl index e3ba8001e..749c40562 100644 --- a/src/Meta/hs244.jl +++ b/src/Meta/hs244.jl @@ -16,6 +16,30 @@ hs244_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 244. +""", + :origin_notes => raw""" +Problem 244 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:244", ) get_hs244_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs244_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs245.jl b/src/Meta/hs245.jl index 664b3b9a9..0996cbe1b 100644 --- a/src/Meta/hs245.jl +++ b/src/Meta/hs245.jl @@ -16,6 +16,30 @@ hs245_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 245. +""", + :origin_notes => raw""" +Problem 245 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:245", ) get_hs245_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs245_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs246.jl b/src/Meta/hs246.jl index 92162896e..5a3f99e03 100644 --- a/src/Meta/hs246.jl +++ b/src/Meta/hs246.jl @@ -16,6 +16,30 @@ hs246_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 246. +""", + :origin_notes => raw""" +Problem 246 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:246", ) get_hs246_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs246_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs248.jl b/src/Meta/hs248.jl index 9100289ab..ab67d81fc 100644 --- a/src/Meta/hs248.jl +++ b/src/Meta/hs248.jl @@ -16,6 +16,30 @@ hs248_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 248. +""", + :origin_notes => raw""" +Problem 248 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:248", ) get_hs248_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs248_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs249.jl b/src/Meta/hs249.jl index 70482b498..bd392943a 100644 --- a/src/Meta/hs249.jl +++ b/src/Meta/hs249.jl @@ -16,6 +16,30 @@ hs249_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 249. +""", + :origin_notes => raw""" +Problem 249 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:249", ) get_hs249_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs249_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs25.jl b/src/Meta/hs25.jl index e84166ecf..9f561e0eb 100644 --- a/src/Meta/hs25.jl +++ b/src/Meta/hs25.jl @@ -16,6 +16,38 @@ hs25_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS25.SIF", + :notes => raw""" +Hock and Schittkowski problem number 25. + +A nonlinear least squares problem with bounds. + +classification SBR2-AN-3-0 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 25 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J-M Collin, Mar 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS25, HS:25", ) get_hs25_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs25_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs250.jl b/src/Meta/hs250.jl index 0fad6714b..f8da69d48 100644 --- a/src/Meta/hs250.jl +++ b/src/Meta/hs250.jl @@ -16,6 +16,30 @@ hs250_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 250. +""", + :origin_notes => raw""" +Problem 250 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:250", ) get_hs250_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs250_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs251.jl b/src/Meta/hs251.jl index 05a11a0ab..87d52e430 100644 --- a/src/Meta/hs251.jl +++ b/src/Meta/hs251.jl @@ -16,6 +16,30 @@ hs251_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 251. +""", + :origin_notes => raw""" +Problem 251 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:251", ) get_hs251_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs251_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs252.jl b/src/Meta/hs252.jl index 86b8ce087..993868573 100644 --- a/src/Meta/hs252.jl +++ b/src/Meta/hs252.jl @@ -16,6 +16,30 @@ hs252_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 252. +""", + :origin_notes => raw""" +Problem 252 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:252", ) get_hs252_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs252_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs253.jl b/src/Meta/hs253.jl index 7fa0eb6c4..12bfa449a 100644 --- a/src/Meta/hs253.jl +++ b/src/Meta/hs253.jl @@ -16,6 +16,30 @@ hs253_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 253. +""", + :origin_notes => raw""" +Problem 253 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:253", ) get_hs253_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs253_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs254.jl b/src/Meta/hs254.jl index c21a61b3a..0ef2bb3a6 100644 --- a/src/Meta/hs254.jl +++ b/src/Meta/hs254.jl @@ -16,6 +16,30 @@ hs254_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 254. +""", + :origin_notes => raw""" +Problem 254 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:254", ) get_hs254_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs254_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs255.jl b/src/Meta/hs255.jl index 814e7a403..04c764ceb 100644 --- a/src/Meta/hs255.jl +++ b/src/Meta/hs255.jl @@ -16,6 +16,30 @@ hs255_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 255. +""", + :origin_notes => raw""" +Problem 255 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:255", ) get_hs255_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs255_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs256.jl b/src/Meta/hs256.jl index 233bd0290..4c69cb832 100644 --- a/src/Meta/hs256.jl +++ b/src/Meta/hs256.jl @@ -16,6 +16,30 @@ hs256_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 256. +""", + :origin_notes => raw""" +Problem 256 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:256", ) get_hs256_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs256_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs257.jl b/src/Meta/hs257.jl index b5c7db3ae..396cbb43f 100644 --- a/src/Meta/hs257.jl +++ b/src/Meta/hs257.jl @@ -16,6 +16,30 @@ hs257_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 257. +""", + :origin_notes => raw""" +Problem 257 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:257", ) get_hs257_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs257_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs258.jl b/src/Meta/hs258.jl index 19c62c7fb..03495b40c 100644 --- a/src/Meta/hs258.jl +++ b/src/Meta/hs258.jl @@ -16,6 +16,30 @@ hs258_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 258. +""", + :origin_notes => raw""" +Problem 258 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:258", ) get_hs258_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs258_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs259.jl b/src/Meta/hs259.jl index 7e126a760..66b704d26 100644 --- a/src/Meta/hs259.jl +++ b/src/Meta/hs259.jl @@ -16,6 +16,30 @@ hs259_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 259. +""", + :origin_notes => raw""" +Problem 259 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:259", ) get_hs259_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs259_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs26.jl b/src/Meta/hs26.jl index 100cfdb28..e4aa0851d 100644 --- a/src/Meta/hs26.jl +++ b/src/Meta/hs26.jl @@ -16,6 +16,36 @@ hs26_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS26.SIF", + :notes => raw""" +Hock and Schittkowski problem number 26. + +classification OOR2-AY-3-1 + +A. Cebola, Curitiba 10/2016. +""", + :origin_notes => raw""" + problem 26 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS26, HS:26", ) get_hs26_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs26_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs260.jl b/src/Meta/hs260.jl index 874135b5d..d6c2c78ef 100644 --- a/src/Meta/hs260.jl +++ b/src/Meta/hs260.jl @@ -16,6 +16,30 @@ hs260_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 260. +""", + :origin_notes => raw""" +Problem 260 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:260", ) get_hs260_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs260_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs261.jl b/src/Meta/hs261.jl index f7c10a523..4b7ad13b9 100644 --- a/src/Meta/hs261.jl +++ b/src/Meta/hs261.jl @@ -16,6 +16,30 @@ hs261_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 261. +""", + :origin_notes => raw""" +Problem 261 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:261", ) get_hs261_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs261_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs262.jl b/src/Meta/hs262.jl index 0fb822e0b..cbc40e6ed 100644 --- a/src/Meta/hs262.jl +++ b/src/Meta/hs262.jl @@ -16,6 +16,30 @@ hs262_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 262. +""", + :origin_notes => raw""" +Problem 262 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:262", ) get_hs262_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs262_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs263.jl b/src/Meta/hs263.jl index 9a3db0151..03327c451 100644 --- a/src/Meta/hs263.jl +++ b/src/Meta/hs263.jl @@ -16,6 +16,30 @@ hs263_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 263. +""", + :origin_notes => raw""" +Problem 263 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:263", ) get_hs263_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs263_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs264.jl b/src/Meta/hs264.jl index b816a4cd3..4ff1636e3 100644 --- a/src/Meta/hs264.jl +++ b/src/Meta/hs264.jl @@ -16,6 +16,30 @@ hs264_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 264. +""", + :origin_notes => raw""" +Problem 264 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:264", ) get_hs264_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs264_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs265.jl b/src/Meta/hs265.jl index e57316ca6..3fbbf84ac 100644 --- a/src/Meta/hs265.jl +++ b/src/Meta/hs265.jl @@ -16,6 +16,30 @@ hs265_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Hock and Schittkowski problem number 265. +""", + :origin_notes => raw""" +Problem 265 in + K. Schittkowski, + More Test Examples for Nonlinear Programming Codes, + Lectures Notes in Economics and Mathematical Systems 282, + Springer Verlag, Heidelberg, 1987. +""", + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:265", ) get_hs265_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs265_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs27.jl b/src/Meta/hs27.jl index e8851e204..9f8971a4a 100644 --- a/src/Meta/hs27.jl +++ b/src/Meta/hs27.jl @@ -16,6 +16,36 @@ hs27_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS27.SIF", + :notes => raw""" +Hock and Schittkowski problem number 27. + +classification SQR2-AN-3-1 + +A. Cebola, Curitiba 10/2016. +""", + :origin_notes => raw""" + problem 27 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS27, HS:27", ) get_hs27_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs27_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs28.jl b/src/Meta/hs28.jl index f4f3f5894..ffd6f7407 100644 --- a/src/Meta/hs28.jl +++ b/src/Meta/hs28.jl @@ -16,6 +16,38 @@ hs28_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS28.SIF", + :notes => raw""" +Hock and Schittkowski problem number 28. + +classification SLR2-AY-3-1 + +classification QLR2-AN-3-1 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 28 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS28, HS:28", ) get_hs28_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs28_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs29.jl b/src/Meta/hs29.jl index 61d68ef42..0e814d0fd 100644 --- a/src/Meta/hs29.jl +++ b/src/Meta/hs29.jl @@ -16,6 +16,38 @@ hs29_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS29.SIF", + :notes => raw""" +Hock and Schittkowski problem number 29. + +classification OQR2-AN-3-1 + +classification PQR2-AN-3-1 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 29 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS29, HS:29", ) get_hs29_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs29_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs3.jl b/src/Meta/hs3.jl index c6c6010b8..0abde29d8 100644 --- a/src/Meta/hs3.jl +++ b/src/Meta/hs3.jl @@ -16,6 +16,36 @@ hs3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS3.SIF", + :notes => raw""" +Hock and Schittkowski problem number 3. + +classification QBR2-AN-2-0 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 3 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS3, HS:3", ) get_hs3_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs30.jl b/src/Meta/hs30.jl index 331b51913..c59adb823 100644 --- a/src/Meta/hs30.jl +++ b/src/Meta/hs30.jl @@ -16,6 +16,36 @@ hs30_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS30.SIF", + :notes => raw""" +Hock and Schittkowski problem number 30. + +classification QQR2-AN-3-1 + +A. Montoison, Montreal, 04/2018. +""", + :origin_notes => raw""" + problem 30 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS30, HS:30", ) get_hs30_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs30_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs31.jl b/src/Meta/hs31.jl index 5741aea10..6fa19be62 100644 --- a/src/Meta/hs31.jl +++ b/src/Meta/hs31.jl @@ -16,6 +16,36 @@ hs31_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS31.SIF", + :notes => raw""" +Hock and Schittkowski problem number 31. + +classification QQR2-AN-3-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 31 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: N. Gould, Dec 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS31, HS:31", ) get_hs31_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs31_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs316.jl b/src/Meta/hs316.jl index c719858ab..ac4f9d19c 100644 --- a/src/Meta/hs316.jl +++ b/src/Meta/hs316.jl @@ -16,6 +16,33 @@ hs316_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 316. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 316 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:316", ) get_hs316_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs316_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs317.jl b/src/Meta/hs317.jl index 67c249c25..e37f3bf02 100644 --- a/src/Meta/hs317.jl +++ b/src/Meta/hs317.jl @@ -16,6 +16,34 @@ hs317_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 317. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 317 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:317", ) get_hs317_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs317_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs318.jl b/src/Meta/hs318.jl index 9c373b782..39bc583f7 100644 --- a/src/Meta/hs318.jl +++ b/src/Meta/hs318.jl @@ -16,6 +16,34 @@ hs318_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 318. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 318 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:318", ) get_hs318_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs318_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs319.jl b/src/Meta/hs319.jl index 079daf998..6dda1a661 100644 --- a/src/Meta/hs319.jl +++ b/src/Meta/hs319.jl @@ -16,6 +16,34 @@ hs319_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 319. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 319 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:319", ) get_hs319_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs319_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs32.jl b/src/Meta/hs32.jl index 77a0dca03..03062a460 100644 --- a/src/Meta/hs32.jl +++ b/src/Meta/hs32.jl @@ -16,6 +16,38 @@ hs32_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS32.SIF", + :notes => raw""" +Hock and Schittkowski problem number 32. + +classification SOR2-AY-3-2 + +classification QPR2-AN-3-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 32 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: J-M COLLIN, April 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS32, HS:32", ) get_hs32_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs32_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs320.jl b/src/Meta/hs320.jl index d5ca02a22..6664c4938 100644 --- a/src/Meta/hs320.jl +++ b/src/Meta/hs320.jl @@ -16,6 +16,34 @@ hs320_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 320. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 320 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:320", ) get_hs320_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs320_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs321.jl b/src/Meta/hs321.jl index 1414dfdf9..90c50b04a 100644 --- a/src/Meta/hs321.jl +++ b/src/Meta/hs321.jl @@ -16,6 +16,34 @@ hs321_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 321. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 321 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:321", ) get_hs321_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs321_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs322.jl b/src/Meta/hs322.jl index 087fd7dd5..61b355f8b 100644 --- a/src/Meta/hs322.jl +++ b/src/Meta/hs322.jl @@ -16,6 +16,34 @@ hs322_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 322. + + classification QQR2-AN-2-1 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 322 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:322", ) get_hs322_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs322_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs33.jl b/src/Meta/hs33.jl index 4c0c25cfb..24eef1f11 100644 --- a/src/Meta/hs33.jl +++ b/src/Meta/hs33.jl @@ -16,6 +16,38 @@ hs33_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS33.SIF", + :notes => raw""" +Hock and Schittkowski problem number 33. + +classification OQR2-AN-3-2 + +classification PQR2-AN-3-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 33 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS33, HS:33", ) get_hs33_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs33_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs34.jl b/src/Meta/hs34.jl index 540e98af5..0bfffc5eb 100644 --- a/src/Meta/hs34.jl +++ b/src/Meta/hs34.jl @@ -16,6 +16,38 @@ hs34_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS34.SIF", + :notes => raw""" +Hock and Schittkowski problem number 34. + +classification LOR2-AN-3-2 + +classification LGR2-AN-3-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 34 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS34, HS:34", ) get_hs34_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs34_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs35.jl b/src/Meta/hs35.jl index d2b7adcb4..50a552bd4 100644 --- a/src/Meta/hs35.jl +++ b/src/Meta/hs35.jl @@ -16,6 +16,36 @@ hs35_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS35.SIF", + :notes => raw""" +Hock and Schittkowski problem number 35. + +classification QLR2-AN-3-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 35 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS35, HS:35", ) get_hs35_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs35_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs36.jl b/src/Meta/hs36.jl index c833be211..23a6a2fdb 100644 --- a/src/Meta/hs36.jl +++ b/src/Meta/hs36.jl @@ -16,6 +16,38 @@ hs36_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS36.SIF", + :notes => raw""" +Hock and Schittkowski problem number 36. + +classification OLR2-AN-3-1 + +classification PLR2-AN-3-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 36 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS36, HS:36", ) get_hs36_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs36_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs37.jl b/src/Meta/hs37.jl index 0eb670251..130eab990 100644 --- a/src/Meta/hs37.jl +++ b/src/Meta/hs37.jl @@ -16,6 +16,38 @@ hs37_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS37.SIF", + :notes => raw""" +Hock and Schittkowski problem number 37. + +classification OLR2-AN-3-2 + +classification PLR2-AN-3-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 37 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS37, HS:37", ) get_hs37_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs37_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs378.jl b/src/Meta/hs378.jl index 59cf3030c..38805f625 100644 --- a/src/Meta/hs378.jl +++ b/src/Meta/hs378.jl @@ -16,6 +16,34 @@ hs378_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :academic, + :implementation => :both, + :url => "https://doi.org/10.1007/978-3-642-61582-5", + :notes => raw""" +Schittkowski problem number 378. + + classification OOR2-AN-10-3 + +M. Gollier, Montréal, 05/2023 +""", + :origin_notes => raw""" + Problem 378 in + Schittkowski, K. (1987). + More Test Examples for Nonlinear Programming Codes. + Lecture Notes in Economics and Mathematical Systems. + doi:10.1007/978-3-642-61582-5 + """, + :reference => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987} +} + """, + :lib => "HS2:378", ) get_hs378_nvar(; n::Integer = default_nvar, kwargs...) = 10 get_hs378_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs38.jl b/src/Meta/hs38.jl index e7c8e2369..6cd0cbe59 100644 --- a/src/Meta/hs38.jl +++ b/src/Meta/hs38.jl @@ -16,6 +16,40 @@ hs38_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS38.SIF", + :notes => raw""" +Hock and Schittkowski problem number 38. + +Colville #4 test problem + +classification OBR2-AN-4-0 + +classification PLR2-AN-4-0 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 38 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS38, HS:38", ) get_hs38_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs38_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs39.jl b/src/Meta/hs39.jl index 8848c0b08..d1826e76e 100644 --- a/src/Meta/hs39.jl +++ b/src/Meta/hs39.jl @@ -16,6 +16,36 @@ hs39_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS39.SIF", + :notes => raw""" +Hock and Schittkowski problem number 39. + +classification LOR2-AN-4-2 + +D. Cabral, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 39 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS39, HS:39", ) get_hs39_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs39_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs4.jl b/src/Meta/hs4.jl index 84edf4fcc..ef4fe0706 100644 --- a/src/Meta/hs4.jl +++ b/src/Meta/hs4.jl @@ -16,6 +16,36 @@ hs4_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS4.SIF", + :notes => raw""" +Hock and Schittkowski problem number 4. + +classification OBR2-AN-2-0 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 4 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS4, HS:4", ) get_hs4_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs4_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs40.jl b/src/Meta/hs40.jl index 397e96de0..5402f0b26 100644 --- a/src/Meta/hs40.jl +++ b/src/Meta/hs40.jl @@ -16,6 +16,36 @@ hs40_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS40.SIF", + :notes => raw""" +Hock and Schittkowski problem number 40. + +classification OOR2-AN-4-3 + +D. Cabral, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 40 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS40, HS:40", ) get_hs40_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs40_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs41.jl b/src/Meta/hs41.jl index 7da1c61a4..671ca3a0b 100644 --- a/src/Meta/hs41.jl +++ b/src/Meta/hs41.jl @@ -16,6 +16,38 @@ hs41_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS41.SIF", + :notes => raw""" +Hock and Schittkowski problem number 41. + +classification OLR2-AN-4-1 + +classification PLR2-AN-4-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 41 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS41, HS:41", ) get_hs41_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs41_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs42.jl b/src/Meta/hs42.jl index eed86f128..4014a2091 100644 --- a/src/Meta/hs42.jl +++ b/src/Meta/hs42.jl @@ -16,6 +16,38 @@ hs42_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS42.SIF", + :notes => raw""" +Hock and Schittkowski problem number 42. + +classification SQR2-AN-4-2 + +classification QQR2-AN-4-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 42 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS42, HS:42", ) get_hs42_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs42_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs43.jl b/src/Meta/hs43.jl index fdaabd236..bda82dd9f 100644 --- a/src/Meta/hs43.jl +++ b/src/Meta/hs43.jl @@ -16,6 +16,38 @@ hs43_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS43.SIF", + :notes => raw""" +Hock and Schittkowski problem number 43. + +The Rosen-Suzuki test problem. + +classification QQR2-AN-4-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 43 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS43, HS:43", ) get_hs43_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs43_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs44.jl b/src/Meta/hs44.jl index ad7416a4a..fb85f5333 100644 --- a/src/Meta/hs44.jl +++ b/src/Meta/hs44.jl @@ -16,6 +16,36 @@ hs44_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS44.SIF", + :notes => raw""" +Hock and Schittkowski problem number 44. + +classification QLR2-AN-4-6 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 44 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph.L. Toint, October 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS44, HS:44", ) get_hs44_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs44_ncon(; n::Integer = default_nvar, kwargs...) = 6 diff --git a/src/Meta/hs45.jl b/src/Meta/hs45.jl index 5cba2d9ff..2b9daa66b 100644 --- a/src/Meta/hs45.jl +++ b/src/Meta/hs45.jl @@ -16,6 +16,38 @@ hs45_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS45.SIF", + :notes => raw""" +Hock and Schittkowski problem number 45. + +classification OBR2-AN-5-0 + +classification PBR2-AN-5-0 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 45 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph.L. Toint, October 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS45, HS:45", ) get_hs45_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs45_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs46.jl b/src/Meta/hs46.jl index bc4c94d95..c091da4a5 100644 --- a/src/Meta/hs46.jl +++ b/src/Meta/hs46.jl @@ -16,6 +16,38 @@ hs46_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS46.SIF", + :notes => raw""" +Hock and Schittkowski problem number 46. + +classification OOR2-AY-5-2 + +classification PGR2-AN-5-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 46 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph.L. Toint, October 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS46, HS:46", ) get_hs46_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs46_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs47.jl b/src/Meta/hs47.jl index 4302f6864..29b5391ef 100644 --- a/src/Meta/hs47.jl +++ b/src/Meta/hs47.jl @@ -16,6 +16,38 @@ hs47_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS47.SIF", + :notes => raw""" +Hock and Schittkowski problem number 47. + +classification OOR2-AY-5-3 + +classification PPR2-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 47 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS47, HS:47", ) get_hs47_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs47_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs48.jl b/src/Meta/hs48.jl index 2c8e4d117..d45bc7dc2 100644 --- a/src/Meta/hs48.jl +++ b/src/Meta/hs48.jl @@ -16,6 +16,38 @@ hs48_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS48.SIF", + :notes => raw""" +Hock and Schittkowski problem number 48. + +classification SLR2-AY-5-2 + +classification QLR2-AN-5-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 48 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS48, HS:48", ) get_hs48_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs48_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs49.jl b/src/Meta/hs49.jl index af3c2f00c..4792dd871 100644 --- a/src/Meta/hs49.jl +++ b/src/Meta/hs49.jl @@ -16,6 +16,38 @@ hs49_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS49.SIF", + :notes => raw""" +Hock and Schittkowski problem number 49. + +classification OLR2-AY-5-2 + +classification PLR2-AN-5-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 49 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS49, HS:49", ) get_hs49_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs49_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs5.jl b/src/Meta/hs5.jl index 6e77a3bc2..179441fa0 100644 --- a/src/Meta/hs5.jl +++ b/src/Meta/hs5.jl @@ -16,6 +16,36 @@ hs5_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS5.SIF", + :notes => raw""" +Hock and Schittkowski problem number 5. + +classification OBR2-AN-2-0 + +N. Antunes, Curitiba, 10/2016. +""", + :origin_notes => raw""" + problem 5 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS5, HS:5", ) get_hs5_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs5_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/hs50.jl b/src/Meta/hs50.jl index 53e15536b..25c07b77f 100644 --- a/src/Meta/hs50.jl +++ b/src/Meta/hs50.jl @@ -16,6 +16,38 @@ hs50_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS50.SIF", + :notes => raw""" +Hock and Schittkowski problem number 50. + +classification OLR2-AY-5-3 + +classification PLR2-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 50 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS50, HS:50", ) get_hs50_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs50_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs51.jl b/src/Meta/hs51.jl index f9cfdaaf7..b243c363f 100644 --- a/src/Meta/hs51.jl +++ b/src/Meta/hs51.jl @@ -16,6 +16,38 @@ hs51_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS51.SIF", + :notes => raw""" +Hock and Schittkowski problem number 51. + +classification QLR2-AY-5-3 + +classification QLR2-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 51 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS51, HS:51", ) get_hs51_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs51_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs52.jl b/src/Meta/hs52.jl index 9c45a7b3e..1da3f23ee 100644 --- a/src/Meta/hs52.jl +++ b/src/Meta/hs52.jl @@ -16,6 +16,39 @@ hs52_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS52.SIF", + :notes => raw""" +Hock and Schittkowski problem number 52. + +classification QLR2-AY-5-3 + +classification QLR2-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 52 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS52, HS:52", + :implementation => :both, ) get_hs52_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs52_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs53.jl b/src/Meta/hs53.jl index a33f70ffe..3017aeaa0 100644 --- a/src/Meta/hs53.jl +++ b/src/Meta/hs53.jl @@ -16,6 +16,38 @@ hs53_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS53.SIF", + :notes => raw""" +Hock and Schittkowski problem number 53. + +classification QLR2-AY-5-3 + +classification QLR2-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 53 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS53, HS:53", ) get_hs53_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs53_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs54.jl b/src/Meta/hs54.jl index 3446161ad..ef0653ee1 100644 --- a/src/Meta/hs54.jl +++ b/src/Meta/hs54.jl @@ -16,6 +16,39 @@ hs54_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS54.SIF", + :notes => raw""" +Hock and Schittkowski problem number 54. + +classification OLR2-AN-6-1 + +classification GLR2-AN-6-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 54, incorrectly stated in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + Betts problem 11.7, JOTA 21, 1977, pp.137-174. + + SIF input: A.R. Conn, April 1990 and Nick Gould, October 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS54, HS:54", ) get_hs54_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs54_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs55.jl b/src/Meta/hs55.jl index 52abcd0e2..e52555317 100644 --- a/src/Meta/hs55.jl +++ b/src/Meta/hs55.jl @@ -16,6 +16,38 @@ hs55_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS55.SIF", + :notes => raw""" +Hock and Schittkowski problem number 54. + +classification OLR2-AN-6-6 + +classification GLR2-AN-6-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 55 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, April 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS55, HS:55", ) get_hs55_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs55_ncon(; n::Integer = default_nvar, kwargs...) = 6 diff --git a/src/Meta/hs56.jl b/src/Meta/hs56.jl index 31b9af7eb..386e1cec0 100644 --- a/src/Meta/hs56.jl +++ b/src/Meta/hs56.jl @@ -16,6 +16,36 @@ hs56_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS56.SIF", + :notes => raw""" + classification OOR2-AN-7-4 + + classification PGR2-AN-7-4 + + A. Montoison, Montreal, 05/2018. + """, + :origin_notes => raw""" +problem 56 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: A.R. Conn, April 1990 +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS56, HS:56", ) get_hs56_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs56_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs57.jl b/src/Meta/hs57.jl index e0bd7b42b..535e97234 100644 --- a/src/Meta/hs57.jl +++ b/src/Meta/hs57.jl @@ -16,6 +16,36 @@ hs57_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS57.SIF", + :notes => raw""" +classification SQR2-AN-2-1 + +classification SQR-AN-2-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" +problem 57 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: A.R. Conn, April 1990 +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS57, HS:57", ) get_hs57_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs57_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs59.jl b/src/Meta/hs59.jl index e9d1879ae..6f39b25b4 100644 --- a/src/Meta/hs59.jl +++ b/src/Meta/hs59.jl @@ -16,6 +16,38 @@ hs59_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS59.SIF", + :notes => raw""" +Hock and Schittkowski problem number 54. + +classification OQR2-AN-2-3 + +classification GLR2-AN-6-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 59 (corrected) in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn and Ph.L. Toint, November 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS59, HS:59", ) get_hs59_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs59_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs6.jl b/src/Meta/hs6.jl index 46f8c1d57..cd3a45a31 100644 --- a/src/Meta/hs6.jl +++ b/src/Meta/hs6.jl @@ -16,6 +16,34 @@ hs6_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS6.SIF", + :notes => raw""" +classification QQR2-AN-2-1 + + D. Orban, Montreal, 04/2016. +""", + :origin_notes => raw""" +problem 6 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: A.R. Conn March 1990 +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS6, HS:6", ) get_hs6_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs6_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs60.jl b/src/Meta/hs60.jl index 675588bf1..eacffedd9 100644 --- a/src/Meta/hs60.jl +++ b/src/Meta/hs60.jl @@ -16,6 +16,38 @@ hs60_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS60.SIF", + :notes => raw""" + Hock and Schittkowski problem number 60. + + classification OOR2-AY-3-1 + + classification PPR2-AN-3-1 + + A. Montoison, Montreal, 05/2018. + """, + :origin_notes => raw""" +problem 60 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: J-M Collin, April 1990. +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS60, HS:60", ) get_hs60_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs60_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs61.jl b/src/Meta/hs61.jl index 8862ea509..8de92db1d 100644 --- a/src/Meta/hs61.jl +++ b/src/Meta/hs61.jl @@ -16,6 +16,35 @@ hs61_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS61.SIF", + :notes => raw""" +Hock and Schittkowski problem number 61. + +classification QQR2-AN-3-2 +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" +problem 61 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: Ph.L. Toint, November 1990. +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS61, HS:61", ) get_hs61_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs61_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs62.jl b/src/Meta/hs62.jl index 932a30fbe..c57087f0f 100644 --- a/src/Meta/hs62.jl +++ b/src/Meta/hs62.jl @@ -16,6 +16,37 @@ hs62_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS62.SIF", + :notes => raw""" +Hock and Schittkowski problem number 62. + +classification OLR2-AY-3-1 + +classification GLR2-AN-3-1 +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" +problem 62 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: J-M Collin and Ph. Toint, April 1990. +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS62, HS:62", ) get_hs62_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs62_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs63.jl b/src/Meta/hs63.jl index 15be6725c..6aae5b6c4 100644 --- a/src/Meta/hs63.jl +++ b/src/Meta/hs63.jl @@ -16,6 +16,37 @@ hs63_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS63.SIF", + :notes => raw""" +Hock and Schittkowski problem number 63. + +classification QQR2-AY-3-2 + +classification QQR2-AN-3-2 +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" +problem 63 in +W. Hock and K. Schittkowski, +"Test examples for nonlinear programming codes", +Lectures Notes in Economics and Mathematical Systems 187, Springer +Verlag, Heidelberg, 1981. + +SIF input: J-M COLLIN, April 1990. +""", + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS63, HS:63", ) get_hs63_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs63_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs64.jl b/src/Meta/hs64.jl index c4e4c59b9..8806721bd 100644 --- a/src/Meta/hs64.jl +++ b/src/Meta/hs64.jl @@ -16,6 +16,38 @@ hs64_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS64.SIF", + :notes => raw""" +Hock and Schittkowski problem number 64. + +classification OOR2-AN-3-1 + +classification PPR2-AN-3-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 64 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: N. Gould, Dec 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS64, HS:64", ) get_hs64_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs64_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs65.jl b/src/Meta/hs65.jl index e9161d629..3dae5b888 100644 --- a/src/Meta/hs65.jl +++ b/src/Meta/hs65.jl @@ -16,6 +16,36 @@ hs65_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS65.SIF", + :notes => raw""" +Hock and Schittkowski problem number 65. + +classification QQR2-AN-3-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 65 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint and Nick Gould, June 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS65, HS:65", ) get_hs65_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs65_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs66.jl b/src/Meta/hs66.jl index e997f178d..70e5e4bc3 100644 --- a/src/Meta/hs66.jl +++ b/src/Meta/hs66.jl @@ -16,6 +16,38 @@ hs66_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS66.SIF", + :notes => raw""" +Hock and Schittkowski problem number 66. + +classification LOR2-AN-3-2 + +classification LGR2-AN-3-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 66 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Baudson, March 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS66, HS:66", ) get_hs66_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_hs66_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs68.jl b/src/Meta/hs68.jl index 4f4055018..ecf44d88d 100644 --- a/src/Meta/hs68.jl +++ b/src/Meta/hs68.jl @@ -16,6 +16,43 @@ hs68_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS68.SIF", + :notes => raw""" +Hock and Schittkowski problem number 68. + +This is a cost optimal inspection plan. + +classification OOR2-MN-4-2 + +classification GGR-P1-1 +""", + :origin_notes => raw""" + Original source: + E. von Collani, Kostenoptimale Prufplane bei laufender + Kontrolle eines normalverteilten Merkmals, Dissertation, + Institut fur Angewandte Mathematik und Statistik, Universitat Wurzburg, 1978. + + problem 68 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS68, HS:68", ) get_hs68_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs68_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs69.jl b/src/Meta/hs69.jl index 307884bf6..06b1005c4 100644 --- a/src/Meta/hs69.jl +++ b/src/Meta/hs69.jl @@ -16,6 +16,43 @@ hs69_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS69.SIF", + :notes => raw""" +Hock and Schittkowski problem number 69. + +This is a cost optimal inspection plan. + +classification OOR2-MN-4-2 + +classification GGR-P1-2 +""", + :origin_notes => raw""" + Original source: + E. von Collani, Kostenoptimale Prufplane bei laufender + Kontrolle eines normalverteilten Merkmals, Dissertation, + Institut fur Angewandte Mathematik und Statistik, Universitat Wurzburg, 1978. + + problem 69 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS69, HS:69", ) get_hs69_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs69_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs7.jl b/src/Meta/hs7.jl index 287d002b2..08795e582 100644 --- a/src/Meta/hs7.jl +++ b/src/Meta/hs7.jl @@ -16,6 +16,36 @@ hs7_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS7.SIF", + :notes => raw""" +Hock and Schittkowski problem number 7. + +classification OOR2-AN-2-1 + +D. Orban, Montreal, 04/2016. +""", + :origin_notes => raw""" + problem 7 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS7, HS:7", ) get_hs7_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs7_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs70.jl b/src/Meta/hs70.jl index d94ac5a23..3c56e4603 100644 --- a/src/Meta/hs70.jl +++ b/src/Meta/hs70.jl @@ -16,6 +16,40 @@ hs70_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS70.SIF", + :notes => raw""" +Hock and Schittkowski problem number 70. + +This problem arises in water flow routing. + +classification SQR2-MN-4-1 + +classification SQR2-AN-4-1 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 70 incorrectly stated in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991, modified May 2024 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS70, HS:70", ) get_hs70_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs70_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs71.jl b/src/Meta/hs71.jl index 2a856ce2c..990ec215c 100644 --- a/src/Meta/hs71.jl +++ b/src/Meta/hs71.jl @@ -16,6 +16,38 @@ hs71_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS71.SIF", + :notes => raw""" +Hock and Schittkowski problem number 71. + +classification OOR2-AY-4-2 + +classification PPR2-AN-4-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 71 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Baudson, Apr 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS71, HS:71", ) get_hs71_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs71_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs72.jl b/src/Meta/hs72.jl index 6298211f5..d2531a78c 100644 --- a/src/Meta/hs72.jl +++ b/src/Meta/hs72.jl @@ -16,6 +16,40 @@ hs72_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS72.SIF", + :notes => raw""" +Hock and Schittkowski problem number 72. + +An optimal sample sizing problem. + +classification LOR2-MN-4-2 + +classification LPR2-AN-4-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 72 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, March 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS72, HS:72", ) get_hs72_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs72_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs73.jl b/src/Meta/hs73.jl index f0eaefaef..b8fe2fa89 100644 --- a/src/Meta/hs73.jl +++ b/src/Meta/hs73.jl @@ -16,6 +16,40 @@ hs73_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS73.SIF", + :notes => raw""" +Hock and Schittkowski problem number 73. + +A cattle feed problem + +classification LOR2-MN-4-3 + +classification LGI-AN-4-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 73 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Debarsy, Apr 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS73, HS:73", ) get_hs73_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs73_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs74.jl b/src/Meta/hs74.jl index 4072bd7e0..cba05f6c0 100644 --- a/src/Meta/hs74.jl +++ b/src/Meta/hs74.jl @@ -16,6 +16,38 @@ hs74_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS74.SIF", + :notes => raw""" +Hock and Schittkowski problem number 74. + +classification OOR2-AY-4-5 + +classification PGR-AN-4-5 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 74 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Debarsy, Apr 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS74, HS:74", ) get_hs74_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs74_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs75.jl b/src/Meta/hs75.jl index 2685ee360..b22b017ca 100644 --- a/src/Meta/hs75.jl +++ b/src/Meta/hs75.jl @@ -16,6 +16,38 @@ hs75_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS75.SIF", + :notes => raw""" +Hock and Schittkowski problem number 75. + +classification OOR2-AY-4-5 + +classification PGR-AN-4-5 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 75 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Debarsy, Apr 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS75, HS:75", ) get_hs75_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs75_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs76.jl b/src/Meta/hs76.jl index 37e342530..a442484fc 100644 --- a/src/Meta/hs76.jl +++ b/src/Meta/hs76.jl @@ -16,6 +16,38 @@ hs76_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS76.SIF", + :notes => raw""" +Hock and Schittkowski problem number 76. + +classification QLR2-AN-4-3 + +classification QLR-AN-4-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 76 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, March 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS76, HS:76", ) get_hs76_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_hs76_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs77.jl b/src/Meta/hs77.jl index 9e1b7a3d1..db905bb72 100644 --- a/src/Meta/hs77.jl +++ b/src/Meta/hs77.jl @@ -16,6 +16,38 @@ hs77_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS77.SIF", + :notes => raw""" +Hock and Schittkowski problem number 77. + +classification OOR2-AY-5-2 + +classification PGR-AN-5-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 77 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A. Conn and Ph. Toint, March 1991 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS77, HS:77", ) get_hs77_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs77_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs78.jl b/src/Meta/hs78.jl index 304b37a10..145b70a0f 100644 --- a/src/Meta/hs78.jl +++ b/src/Meta/hs78.jl @@ -16,6 +16,38 @@ hs78_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS78.SIF", + :notes => raw""" +Hock and Schittkowski problem number 78. + +classification OOR2-AN-5-3 + +classification PPR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 78 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B.Debarsy, Jan 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS78, HS:78", ) get_hs78_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs78_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs79.jl b/src/Meta/hs79.jl index 1046e5b9e..6641034f3 100644 --- a/src/Meta/hs79.jl +++ b/src/Meta/hs79.jl @@ -16,6 +16,38 @@ hs79_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS79.SIF", + :notes => raw""" +Hock and Schittkowski problem number 79. + +classification OOR2-AY-5-3 + +classification PPR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 79 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Debarsy, Apr 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS79, HS:79", ) get_hs79_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs79_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs8.jl b/src/Meta/hs8.jl index 58f6e1c29..1a90b20ae 100644 --- a/src/Meta/hs8.jl +++ b/src/Meta/hs8.jl @@ -16,6 +16,38 @@ hs8_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS8.SIF", + :notes => raw""" +Hock and Schittkowski problem number 8. + +classification CQR2-AN-2-2 + +classification OOR2-AN-2-1 + +D. Orban, Montreal, 04/2016. +""", + :origin_notes => raw""" + problem 8 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS8, HS:8", ) get_hs8_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs8_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs80.jl b/src/Meta/hs80.jl index 73947274f..18f125529 100644 --- a/src/Meta/hs80.jl +++ b/src/Meta/hs80.jl @@ -16,6 +16,38 @@ hs80_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS80.SIF", + :notes => raw""" +Hock and Schittkowski problem number 80. + +classification OOR2-AN-5-3 + +classification GPR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 80 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B.Debarsy, Jan 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS80, HS:80", ) get_hs80_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs80_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs81.jl b/src/Meta/hs81.jl index 9f069ddf9..c73b2e708 100644 --- a/src/Meta/hs81.jl +++ b/src/Meta/hs81.jl @@ -16,6 +16,44 @@ hs81_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS81.SIF", + :notes => raw""" +Hock and Schittkowski problem number 81. + +classification OOR2-AN-5-3 + +classification GPR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + Problem 81 in + W. Hock and K. Schittkowski, + Test examples for nonlinear programming codes, + Lectures Notes in Economics and Mathematical Systems 187, + Springer Verlag, Heidelberg, 1981. + + problem 80 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B.Debarsy, Jan 1990. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS81, HS:81", ) get_hs81_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs81_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs83.jl b/src/Meta/hs83.jl index e7d4f9859..83e07befe 100644 --- a/src/Meta/hs83.jl +++ b/src/Meta/hs83.jl @@ -16,6 +16,38 @@ hs83_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS83.SIF", + :notes => raw""" +Hock and Schittkowski problem number 83. + +classification QQR2-AN-5-3 + +classification QQR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 83 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: B Baudson, Apr 1989. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS83, HS:83", ) get_hs83_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs83_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs84.jl b/src/Meta/hs84.jl index b402bd87d..9173e8186 100644 --- a/src/Meta/hs84.jl +++ b/src/Meta/hs84.jl @@ -16,6 +16,38 @@ hs84_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS84.SIF", + :notes => raw""" +Hock and Schittkowski problem number 84. + +classification QQR2-AN-5-3 + +classification QQR-AN-5-3 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 84 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn, March 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS84, HS:84", ) get_hs84_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs84_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/hs86.jl b/src/Meta/hs86.jl index c43fb62ad..684ed5b05 100644 --- a/src/Meta/hs86.jl +++ b/src/Meta/hs86.jl @@ -16,6 +16,38 @@ hs86_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS86.SIF", + :notes => raw""" +Hock and Schittkowski problem number 86. + +classification OLR2-AN-5-10 + +classification PLR-AN-5-10 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 86 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS86, HS:86", ) get_hs86_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_hs86_ncon(; n::Integer = default_nvar, kwargs...) = 10 diff --git a/src/Meta/hs87.jl b/src/Meta/hs87.jl index e17050876..5aee8dcec 100644 --- a/src/Meta/hs87.jl +++ b/src/Meta/hs87.jl @@ -16,6 +16,44 @@ hs87_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS87.SIF", + :notes => raw""" +Hock and Schittkowski problem number 87. + +Optimization of an electrical network (EDF) by P. Huard. + +classification OOI2-MN-6-4 + +classification PLR-AN-5-10 +""", + :origin_notes => raw""" + problem 87 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + Note: There are two variants described in the papers + D.H. Himmelblau "Applied nonlinear programming", + McGraw-Hill, New-York, 1972, problem 15, + and + A.R. Colville, "A comparative study on nonlinear programming", + IBM Scientific Center Report 320-2949, New York, 1968, problem 6. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS87, HS:87", ) get_hs87_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs87_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs9.jl b/src/Meta/hs9.jl index d5796046f..ccd842b67 100644 --- a/src/Meta/hs9.jl +++ b/src/Meta/hs9.jl @@ -16,6 +16,36 @@ hs9_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS9.SIF", + :notes => raw""" +Hock and Schittkowski problem number 9. + +classification OLR2-AN-2-1 + +A. Cebola, Curitiba , 10/2016. +""", + :origin_notes => raw""" + problem 9 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: A.R. Conn March 1990 + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS9, HS:9", ) get_hs9_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_hs9_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/hs93.jl b/src/Meta/hs93.jl index d40af8a5c..289090bcc 100644 --- a/src/Meta/hs93.jl +++ b/src/Meta/hs93.jl @@ -16,6 +16,40 @@ hs93_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS93.SIF", + :notes => raw""" +Hock and Schittkowski problem number 93. + +A transformer design problem. + +classification OOR2-MY-6-2 + +classification PPR-AN-6-2 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 93 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Nick Gould, August 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS93, HS:93", ) get_hs93_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs93_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/hs95.jl b/src/Meta/hs95.jl index 05c99830c..79b104a71 100644 --- a/src/Meta/hs95.jl +++ b/src/Meta/hs95.jl @@ -16,6 +16,38 @@ hs95_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS95.SIF", + :notes => raw""" +Hock and Schittkowski problem number 95. + +classification LQR2-AN-6-4 + +classification PPR-AN-6-4 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 95 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS95, HS:95", ) get_hs95_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs95_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs96.jl b/src/Meta/hs96.jl index 5b357d1cc..caff79e4a 100644 --- a/src/Meta/hs96.jl +++ b/src/Meta/hs96.jl @@ -16,6 +16,38 @@ hs96_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS96.SIF", + :notes => raw""" +Hock and Schittkowski problem number 96. + +classification LQR2-AN-6-4 + +classification PPR-AN-6-4 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 96 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS96, HS:96", ) get_hs96_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs96_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs97.jl b/src/Meta/hs97.jl index 09ebcba7b..f87205080 100644 --- a/src/Meta/hs97.jl +++ b/src/Meta/hs97.jl @@ -16,6 +16,38 @@ hs97_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS97.SIF", + :notes => raw""" +Hock and Schittkowski problem number 97. + +classification LQR2-AN-6-4 + +classification PPR-AN-6-4 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 97 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS97, HS:97", ) get_hs97_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs97_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs98.jl b/src/Meta/hs98.jl index af84acb88..8ab2689ee 100644 --- a/src/Meta/hs98.jl +++ b/src/Meta/hs98.jl @@ -16,6 +16,38 @@ hs98_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS98.SIF", + :notes => raw""" +Hock and Schittkowski problem number 98. + +classification LQR2-AN-6-4 + +classification PPR-AN-6-4 + +A. Montoison, Montreal, 05/2018. +""", + :origin_notes => raw""" + problem 98 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS98, HS:98", ) get_hs98_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_hs98_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/hs99.jl b/src/Meta/hs99.jl index b167858ee..89a2777bd 100644 --- a/src/Meta/hs99.jl +++ b/src/Meta/hs99.jl @@ -16,6 +16,36 @@ hs99_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/HS99.SIF", + :notes => raw""" +Hock and Schittkowski problem number 99. + +classification OOR2-AN-7-2 + +classification PPR-AN-6-4 +""", + :origin_notes => raw""" + problem 99 in + W. Hock and K. Schittkowski, + "Test examples for nonlinear programming codes", + Lectures Notes in Economics and Mathematical Systems 187, Springer + Verlag, Heidelberg, 1981. + + SIF input: Ph. Toint, April 1991. + """, + :reference => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} + """, + :lib => "CUTEst:HS99, HS:99", ) get_hs99_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_hs99_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/indef_mod.jl b/src/Meta/indef_mod.jl index 9d7bd1edb..7f608e0a3 100644 --- a/src/Meta/indef_mod.jl +++ b/src/Meta/indef_mod.jl @@ -16,6 +16,38 @@ indef_mod_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "http://www.cs.cas.cz/matonoha/download/V1081.pdf", + :notes => raw""" +Problem 37 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +based on the original problem by N. Gould + +classification OUR2-AN-V-0 + +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, +} + """, + :lib => "Luksan:37", ) get_indef_mod_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_indef_mod_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/integreq.jl b/src/Meta/integreq.jl index 1f0ed5573..11d2d6fcd 100644 --- a/src/Meta/integreq.jl +++ b/src/Meta/integreq.jl @@ -16,6 +16,40 @@ integreq_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/INTEGREQ.SIF", + :notes => raw""" +The discrete integral problem. + +classification NOR2-AN-V-V +""", + :origin_notes => raw""" +problem 165 (p. 74) in + A.R. Buckley, + "Test functions for unconstrained minimization", + TR 1989CS-3, Mathematics, statistics and computing centre, + Dalhousie University, Halifax (CDN), 1989. + +Problem 29 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +SIF input: Ph. Toint, Feb 1990. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:INTEGREQ", ) get_integreq_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_integreq_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/jennrichsampson.jl b/src/Meta/jennrichsampson.jl index 2c27041b8..8f15dbf6a 100644 --- a/src/Meta/jennrichsampson.jl +++ b/src/Meta/jennrichsampson.jl @@ -16,6 +16,30 @@ jennrichsampson_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1145/355934.355936", + :notes => raw""" + +""", + :origin_notes => raw""" +problem 6 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "MGH:6", ) get_jennrichsampson_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_jennrichsampson_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/kirby2.jl b/src/Meta/kirby2.jl index 8fe41f02e..05082d93c 100644 --- a/src/Meta/kirby2.jl +++ b/src/Meta/kirby2.jl @@ -16,6 +16,64 @@ kirby2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/KIRBY2.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/kirby2.dat + +NIST/ITL StRD +Dataset Name: Kirby2 (Kirby2.dat) + +File Format: ASCII + Starting Values (lines 41 to 45) + Certified Values (lines 41 to 50) + Data (lines 61 to 211) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + scanning electron microscope line with standards. + +Reference: Kirby, R., NIST (197?). + Scanning electron microscope line width standards. + +Data: 1 Response (y) + 1 Predictor (x) + 151 Observations + Average Level of Difficulty + Observed Data + +Model: Rational Class (quadratic/quadratic) + 5 Parameters (b1 to b5) + + y = (b1 + b2*x + b3*x**2) / + (1 + b4*x + b5*x**2) + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem KIRBY2 given as an inconsistent set of +nonlinear equations. +Fit: y = (b1 + b2*x + b3*x**2) /(1 + b4*x + b5*x**2) + e + +classification NOR2-MN-5-151 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Kirby, R., NIST (197?). +Scanning electron microscope line width standards. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:KIRBY2, NIST:Kirby2", ) get_kirby2_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_kirby2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/kowosb.jl b/src/Meta/kowosb.jl index e4b4634b9..c9c30b3b4 100644 --- a/src/Meta/kowosb.jl +++ b/src/Meta/kowosb.jl @@ -16,6 +16,36 @@ kowosb_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/KOWOSB.SIF", + :notes => raw""" +A problem arising in the analysis of kinetic data for an enzyme +reaction, known under the name of Kowalik and Osborne problem +in 4 variables. + +classification SUR2-MN-4-0 +""", + :origin_notes => raw""" +Problem 15 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:KOWOSB", ) get_kowosb_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_kowosb_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/lanczos1.jl b/src/Meta/lanczos1.jl index 9d876f029..a3efa5095 100644 --- a/src/Meta/lanczos1.jl +++ b/src/Meta/lanczos1.jl @@ -16,6 +16,65 @@ lanczos1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/LANCZOS1.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos1.dat + +NIST/ITL StRD +Dataset Name: lanczos1 (lanczos1.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 74) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study regarding + dental research in monomolecular adsorption. The + response variable is volume, and the predictor + variable is pressure. + +Reference: Misra, D., NIST (1978). + Dental Research Monomolecular Adsorption Study. + +Data: 1 Response Variable (y = volume) + 1 Predictor Variable (x = pressure) + 14 Observations + Lower Level of Difficulty + Observed Data + +Model: Exponential Class + 2 Parameters (b1 and b2) + + y = b1*(1-exp[-b2*x]) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem LANCZOS1 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e + +classification NOR2-MN-6-24 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Lanczos, C. (1956). +Applied Analysis. Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{Lanczos1956, + author = {Lanczos, Cornelius}, + title = {Applied Analysis}, + publisher = {Prentice Hall}, + address = {Englewood Cliffs, NJ}, + year = {1956} +} +""", + :lib => "CUTEst:LANCZOS1, NIST:lanczos1", ) get_lanczos1_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_lanczos1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/lanczos2.jl b/src/Meta/lanczos2.jl index f13af14ba..d4852a01e 100644 --- a/src/Meta/lanczos2.jl +++ b/src/Meta/lanczos2.jl @@ -16,6 +16,66 @@ lanczos2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/LANCZOS2.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos2.dat + +Dataset Name: Lanczos2 (Lanczos2.dat) + +File Format: ASCII + Starting Values (lines 41 to 46) + Certified Values (lines 41 to 51) + Data (lines 61 to 84) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are taken from an example discussed in + Lanczos (1956). The data were generated to 6-digits + of accuracy using + f(x) = 0.0951*exp(-x) + 0.8607*exp(-3*x) + + 1.5576*exp(-5*x). + +Reference: Lanczos, C. (1956). + Applied Analysis. + Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. + +Data: 1 Response (y) + 1 Predictor (x) + 24 Observations + Average Level of Difficulty + Generated Data + +Model: Exponential Class + 6 Parameters (b1 to b6) + + y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem LANCZOS2 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e + +classification NOR2-MN-6-24 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Lanczos, C. (1956). +Applied Analysis. Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{Lanczos1956, + author = {Lanczos, Cornelius}, + title = {Applied Analysis}, + publisher = {Prentice Hall}, + address = {Englewood Cliffs, NJ}, + year = {1956} +} +""", + :lib => "CUTEst:LANCZOS2, NIST:Lanczos2", ) get_lanczos2_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_lanczos2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/lanczos3.jl b/src/Meta/lanczos3.jl index 06cc95b0d..e963b1304 100644 --- a/src/Meta/lanczos3.jl +++ b/src/Meta/lanczos3.jl @@ -16,6 +16,67 @@ lanczos3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/LANCZOS3.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos3.dat + +NIST/ITL StRD +Dataset Name: Lanczos3 (Lanczos3.dat) + +File Format: ASCII + Starting Values (lines 41 to 46) + Certified Values (lines 41 to 51) + Data (lines 61 to 84) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are taken from an example discussed in + Lanczos (1956). The data were generated to 5-digits + of accuracy using + f(x) = 0.0951*exp(-x) + 0.8607*exp(-3*x) + + 1.5576*exp(-5*x). + +Reference: Lanczos, C. (1956). + Applied Analysis. + Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. + +Data: 1 Response (y) + 1 Predictor (x) + 24 Observations + Lower Level of Difficulty + Generated Data + +Model: Exponential Class + 6 Parameters (b1 to b6) + + y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem LANCZOS3 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e + +classification NOR2-MN-6-24 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Lanczos, C. (1956). +Applied Analysis. Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{Lanczos1956, + author = {Lanczos, Cornelius}, + title = {Applied Analysis}, + publisher = {Prentice Hall}, + address = {Englewood Cliffs, NJ}, + year = {1956} +} +""", + :lib => "CUTEst:LANCZOS3, NIST:Lanczos3", ) get_lanczos3_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_lanczos3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/liarwhd.jl b/src/Meta/liarwhd.jl index e20bf6836..838faebed 100644 --- a/src/Meta/liarwhd.jl +++ b/src/Meta/liarwhd.jl @@ -16,6 +16,53 @@ liarwhd_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/LIARWHD.SIF", + :notes => raw""" +G. Li, +"The secant/finite difference algorithm for solving sparse +nonlinear systems of equations", +SIAM Journal on Optimization, (to appear), 1990. + +classification SUR2-AN-V-0 + +This is a simplified version of problem NONDIA. + +Problem 38 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +based on the original problem by N. Gould + +classification OUR2-AN-V-0 + +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +G. Li, +"The secant/finite difference algorithm for solving sparse +nonlinear systems of equations", +SIAM Journal on Optimization, (to appear), 1990. + +SIF input: Ph. Toint, Aug 1990. +""", + :reference => raw""" +@article{Li1988SIAMJNA, + author = {Li, Guangye}, + title = {The Secant/Finite Difference Algorithm for Solving Sparse Nonlinear Systems of Equations}, + journal = {SIAM Journal on Numerical Analysis}, + year = {1988}, + volume = {25}, + number = {5}, + pages = {1181--1196}, + doi = {10.1137/0725067} +} + """, + :lib => "CUTEst:LIARWHD, Luksan:38", ) get_liarwhd_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_liarwhd_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/lincon.jl b/src/Meta/lincon.jl index 0fd6d3590..d16b76ee6 100644 --- a/src/Meta/lincon.jl +++ b/src/Meta/lincon.jl @@ -16,6 +16,23 @@ lincon_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl", + :notes => raw""" + +""", + :origin_notes => raw""" +Test problem used in NLPModelsTest.jl. +""", + :reference => raw""" +@misc{NLPModelsTestjl, + author = {{JuliaSmoothOptimizers}}, + title = {{NLPModelsTest.jl}: Tests for Nonlinear Programming Models}, + howpublished = {\url{https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl}}, + year = {2020} +} +""", + :lib => "", ) get_lincon_nvar(; n::Integer = default_nvar, kwargs...) = 15 get_lincon_ncon(; n::Integer = default_nvar, kwargs...) = 11 diff --git a/src/Meta/linsv.jl b/src/Meta/linsv.jl index 1a46b2e32..306812796 100644 --- a/src/Meta/linsv.jl +++ b/src/Meta/linsv.jl @@ -16,6 +16,23 @@ linsv_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl", + :notes => raw""" + +""", + :origin_notes => raw""" +Test problem used in NLPModelsTest.jl. +""", + :reference => raw""" +@misc{NLPModelsTestjl, + author = {{JuliaSmoothOptimizers}}, + title = {{NLPModelsTest.jl}: Tests for Nonlinear Programming Models}, + howpublished = {\url{https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl}}, + year = {2020} +} +""", + :lib => "", ) get_linsv_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_linsv_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/marine.jl b/src/Meta/marine.jl index f978ad44b..5d571cee3 100644 --- a/src/Meta/marine.jl +++ b/src/Meta/marine.jl @@ -16,6 +16,41 @@ marine_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MARINE.SIF", + :notes => raw""" +Marine Population Dynamics Problem + Collocation formulation + + Given observations of ns stages of a marine species over n timesteps, + minimize the loss between the observation and the computed law of paraneters : growth, mortality and number of specimens (g,m,x) + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 6 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +Alexander S. Bondarenko - Summer 1998 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:MARINE, COPS:6", ) get_marine_nvar(; n::Integer = default_nvar, nc::Int = 1, kwargs...) = 8 + 7 + Int(round((n - 2 * 8 + 1) / (3 * 8 * nc + 8))) * (8 + 3 * 8 * nc) diff --git a/src/Meta/methanol.jl b/src/Meta/methanol.jl index 40810a945..d8200432b 100644 --- a/src/Meta/methanol.jl +++ b/src/Meta/methanol.jl @@ -16,6 +16,48 @@ methanol_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/METHANOL.SIF", + :notes => raw""" +Methanol-to-Hydrocarbons Problem +Collocation formulation + +Determine the reaction coefficients for the conversion of methanol into +various hydrocarbons. The nonlinear model that describes the process is +y_1' = - (2 theta_2 + theta_3 + theta_4 - theta_1 y_2 / d ) y_1 +y_2' = theta_3 y_1 + theta_1 y_1 ( theta_1 y_1 - y_2 ) / d +y_3' = theta_4 y_1 + theta_1 y_1 ( theta_5 y_1 + y_2 ) / d +where d = (theta_2 + theta_5) y_1 + y_2 and the theta_i are positive, +with given initial conditions. The problem is to minimize +sum{i=1,16} || y(tau_i,theta) - z_i||^2 +where the z_i are concentration measurements for y at times tau_i (i=1,16) + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 13 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +Michael Merritt - Summer 2000 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:METHANOL, COPS:13", ) get_methanol_nvar(; n::Integer = default_nvar, kwargs...) = 30 * n + 5 get_methanol_ncon(; n::Integer = default_nvar, kwargs...) = 30 * n + 0 diff --git a/src/Meta/meyer3.jl b/src/Meta/meyer3.jl index f9ea82d0c..16d0738b7 100644 --- a/src/Meta/meyer3.jl +++ b/src/Meta/meyer3.jl @@ -16,6 +16,35 @@ meyer3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MEYER3.SIF", + :notes => raw""" +Meyer function + +classification SUR2-RN-3-0 +""", + :origin_notes => raw""" +Problem 10 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley #29 (p. 73). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:MEYER3", ) get_meyer3_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_meyer3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/mgh01feas.jl b/src/Meta/mgh01feas.jl index bc27baeb0..a6dba74a7 100644 --- a/src/Meta/mgh01feas.jl +++ b/src/Meta/mgh01feas.jl @@ -16,6 +16,23 @@ mgh01feas_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@misc{NLPModelsTestjl, + author = {{JuliaSmoothOptimizers}}, + title = {{NLPModelsTest.jl}: Tests for Nonlinear Programming Models}, + howpublished = {\url{https://github.com/JuliaSmoothOptimizers/NLPModelsTest.jl}}, + year = {2020} +} +""", + :lib => "", ) get_mgh01feas_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_mgh01feas_ncon(; n::Integer = default_nvar, kwargs...) = 2 diff --git a/src/Meta/mgh09.jl b/src/Meta/mgh09.jl index 597edaaa6..b5204292b 100644 --- a/src/Meta/mgh09.jl +++ b/src/Meta/mgh09.jl @@ -16,6 +16,75 @@ mgh09_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MGH09.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh09.dat + +NIST/ITL StRD +Dataset Name: MGH09 (MGH09.dat) + +File Format: ASCII + Starting Values (lines 41 to 44) + Certified Values (lines 41 to 49) + Data (lines 61 to 71) + +Procedure: Nonlinear Least Squares Regression + +Description: This problem was found to be difficult for some very + good algorithms. There is a local minimum at (+inf, + -14.07..., -inf, -inf) with final sum of squares + 0.00102734.... + + See More, J. J., Garbow, B. S., and Hillstrom, K. E. + (1981). Testing unconstrained optimization software. + ACM Transactions on Mathematical Software. 7(1): + pp. 17-41. + +Reference: Kowalik, J.S., and M. R. Osborne, (1978). + Methods for Unconstrained Optimization Problems. + New York, NY: Elsevier North-Holland. + +Data: 1 Response (y) + 1 Predictor (x) + 11 Observations + Higher Level of Difficulty + Generated Data + +Model: Rational Class (linear/quadratic) + 4 Parameters (b1 to b4) + + y = b1*(x**2+x*b2) / (x**2+x*b3+b4) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem MGH09 given as an inconsistent set of +nonlinear equations. +Fit: y = b1*(x**2+x*b2) / (x**2+x*b3+b4) + e + +classification NOR2-MN-4-11 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Kowalik, J.S., and M. R. Osborne, (1978). +Methods for Unconstrained Optimization Problems. +New York, NY: Elsevier North-Holland. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:MGH09, MGH:9, NIST:MGH09", ) get_mgh09_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_mgh09_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/mgh10.jl b/src/Meta/mgh10.jl index fe2261028..112f75ba1 100644 --- a/src/Meta/mgh10.jl +++ b/src/Meta/mgh10.jl @@ -16,6 +16,77 @@ mgh10_meta = Dict( :is_feasible => true, :defined_everywhere => false, :origin => :academic, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MGH10.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh10.dat + +NIST/ITL StRD +Dataset Name: MGH10 (MGH10.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 76) + +Procedure: Nonlinear Least Squares Regression + +Description: This problem was found to be difficult for some very + good algorithms. + + See More, J. J., Garbow, B. S., and Hillstrom, K. E. + (1981). Testing unconstrained optimization software. + ACM Transactions on Mathematical Software. 7(1): + pp. 17-41. + +Reference: Meyer, R. R. (1970). + Theoretical and computational aspects of nonlinear + regression. In Nonlinear Programming, Rosen, + Mangasarian and Ritter (Eds). + New York, NY: Academic Press, pp. 465-486. + +Data: 1 Response (y) + 1 Predictor (x) + 16 Observations + Higher Level of Difficulty + Generated Data + +Model: Exponential Class + 3 Parameters (b1 to b3) + + y = b1 * exp[b2/(x+b3)] + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem MGH10 given as an inconsistent set of +nonlinear equations. +Fit: y = b1 * exp[b2/(x+b3)] + e + +classification NOR2-MN-3-16 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Meyer, R. R. (1970). +Theoretical and computational aspects of nonlinear +regression. In Nonlinear Programming, Rosen, +Mangasarian and Ritter (Eds). +New York, NY: Academic Press, pp. 465-486. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:MGH10, MGH:10, NIST:MGH10", ) get_mgh10_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_mgh10_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/mgh17.jl b/src/Meta/mgh17.jl index f6cb8446a..ef5889820 100644 --- a/src/Meta/mgh17.jl +++ b/src/Meta/mgh17.jl @@ -16,6 +16,76 @@ mgh17_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MGH17.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh17.dat + +NIST/ITL StRD +Dataset Name: MGH17 (MGH17.dat) + +File Format: ASCII + Starting Values (lines 41 to 45) + Certified Values (lines 41 to 50) + Data (lines 61 to 93) + +Procedure: Nonlinear Least Squares Regression + +Description: This problem was found to be difficult for some very + good algorithms. + + See More, J. J., Garbow, B. S., and Hillstrom, K. E. + (1981). Testing unconstrained optimization software. + ACM Transactions on Mathematical Software. 7(1): + pp. 17-41. + +Reference: Osborne, M. R. (1972). + Some aspects of nonlinear least squares + calculations. In Numerical Methods for Nonlinear + Optimization, Lootsma (Ed). + New York, NY: Academic Press, pp. 171-189. + +Data: 1 Response (y) + 1 Predictor (x) + 33 Observations + Average Level of Difficulty + Generated Data + +Model: Exponential Class + 5 Parameters (b1 to b5) + + y = b1 + b2*exp[-x*b4] + b3*exp[-x*b5] + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem MGH17 given as an inconsistent set of +nonlinear equations. +Fit: y = b1 + b2*exp[-x*b4] + b3*exp[-x*b5] + e + +classification NOR2-MN-5-33 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Osborne, M. R. (1972). +Some aspects of nonlinear least squares calculations. +In Numerical Methods for Nonlinear Optimization, Lootsma (Ed). +New York, NY: Academic Press, pp. 171-189. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:MGH17, MGH:17, NIST:MGH17", ) get_mgh17_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_mgh17_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/minsurf.jl b/src/Meta/minsurf.jl index be0e8b8cd..c01175d48 100644 --- a/src/Meta/minsurf.jl +++ b/src/Meta/minsurf.jl @@ -16,6 +16,41 @@ minsurf_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/MINSURF.SIF", + :notes => raw""" +Minimal surface with obstacle problem + +Find the surface with minimal area, given boundary conditions, +and above an obstacle. + +Variable dimension full rank linear problem +A version of the minimum surface problem +on the unit square with simple boundary conditions. + +classification OBR2-AN-V-V + +classification OXR2-MY-64-0 +""", + :origin_notes => raw""" +This is problem 17=the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Ph. Toint, Jan 1991. +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:MINSURF, COPS:17", ) get_minsurf_nvar(; n::Integer = default_nvar, diff --git a/src/Meta/misra1a.jl b/src/Meta/misra1a.jl index 6ccf78069..d9b950364 100644 --- a/src/Meta/misra1a.jl +++ b/src/Meta/misra1a.jl @@ -16,6 +16,65 @@ misra1a_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MISRA1A.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1a.dat + +NIST/ITL StRD +Dataset Name: misra1a (misra1a.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 74) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study regarding + dental research in monomolecular adsorption. The + response variable is volume, and the predictor + variable is pressure. + +Reference: Misra, D., NIST (1978). + Dental Research Monomolecular Adsorption Study. + +Data: 1 Response Variable (y = volume) + 1 Predictor Variable (x = pressure) + 14 Observations + Lower Level of Difficulty + Observed Data + +Model: Exponential Class + 2 Parameters (b1 and b2) + + y = b1*(1-exp[-b2*x]) + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem MISRA1A given as an inconsistent set of +nonlinear equations +Fit: y = b1*(1-exp[-b2*x]) + e + +classification NOR2-MN-2-14 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Misra, D., NIST (1978). +Dental Research Monomolecular Adsorption Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:MISRA1A, NIST:misra1a", ) get_misra1a_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_misra1a_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/misra1b.jl b/src/Meta/misra1b.jl index b61e00eab..15da76aef 100644 --- a/src/Meta/misra1b.jl +++ b/src/Meta/misra1b.jl @@ -16,6 +16,65 @@ misra1b_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MISRA1B.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1b.dat + +NIST/ITL StRD +Dataset Name: Misra1b (Misra1b.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 74) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study regarding + dental research in monomolecular adsorption. The + response variable is volume, and the predictor + variable is pressure. + +Reference: Misra, D., NIST (1978). + Dental Research Monomolecular Adsorption Study. + +Data: 1 Response (y = volume) + 1 Predictor (x = pressure) + 14 Observations + Lower Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 2 Parameters (b1 and b2) + + y = b1 * (1-(1+b2*x/2)**(-2)) + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem MISRA1B given as an inconsistent set of +nonlinear equations. +Fit: y = b1 * (1-(1+b2*x/2)**(-2)) + e + +classification NOR2-MN-2-14 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Misra, D., NIST (1978). +Dental Research Monomolecular Adsorption Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:MISRA1B, NIST:Misra1b", ) get_misra1b_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_misra1b_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/misra1c.jl b/src/Meta/misra1c.jl index bfb036695..b03d125fe 100644 --- a/src/Meta/misra1c.jl +++ b/src/Meta/misra1c.jl @@ -16,6 +16,64 @@ misra1c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MISRA1C.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1c.dat + +NIST/ITL StRD +Dataset Name: Misra1c (Misra1c.dat) + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 74) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study regarding + dental research in monomolecular adsorption. The + response variable is volume, and the predictor + variable is pressure. + +Reference: Misra, D., NIST (1978). + Dental Research Monomolecular Adsorption. + +Data: 1 Response (y = volume) + 1 Predictor (x = pressure) + 14 Observations + Average Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 2 Parameters (b1 and b2) + + y = b1 * (1-(1+2*b2*x)**(-.5)) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem MISRA1C given as an inconsistent set of +nonlinear equations. +Fit: y = b1 * (1-(1+2*b2*x)**(-.5)) + e + +classification NOR2-MN-2-14 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Misra, D., NIST (1978). +Dental Research Monomolecular Adsorption Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:MISRA1C, NIST:Misra1c", ) get_misra1c_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_misra1c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/misra1d.jl b/src/Meta/misra1d.jl index c59d12577..c95a8433d 100644 --- a/src/Meta/misra1d.jl +++ b/src/Meta/misra1d.jl @@ -16,6 +16,61 @@ misra1d_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MISRA1D.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1d.dat + +File Format: ASCII + Starting Values (lines 41 to 42) + Certified Values (lines 41 to 47) + Data (lines 61 to 74) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study regarding + dental research in monomolecular adsorption. The + response variable is volume, and the predictor + variable is pressure. + +Reference: Misra, D., NIST (1978). + Dental Research Monomolecular Adsorption Study. + +Data: 1 Response (y = volume) + 1 Predictor (x = pressure) + 14 Observations + Average Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 2 Parameters (b1 and b2) + + y = b1*b2*x*((1+b2*x)**(-1)) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem MISRA1D given as an inconsistent set of +nonlinear equations. +Fit: y = y = b1*b2*x*((1+b2*x)**(-1)) + e + +classification NOR2-MN-2-14 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Misra, D., NIST (1978). +Dental Research Monomolecular Adsorption Study. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:MISRA1D", ) get_misra1d_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_misra1d_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/morebv.jl b/src/Meta/morebv.jl index 6c6cf7807..f942e88b2 100644 --- a/src/Meta/morebv.jl +++ b/src/Meta/morebv.jl @@ -16,6 +16,46 @@ morebv_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/MOREBV.SIF", + :notes => raw""" +The Boundary Value problem. +This is the nonlinear least-squares version without fixed variables. + +classification SUR2-MN-V-0 + +Problem 39 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +problem 28 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#17 (p. 75). + +SIF input: Ph. Toint, Dec 1989 and Nick Gould, Oct 1992. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:MOREBV, Luksan:39", ) get_morebv_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_morebv_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/nasty.jl b/src/Meta/nasty.jl index 3bea418a1..fddd10d6f 100644 --- a/src/Meta/nasty.jl +++ b/src/Meta/nasty.jl @@ -16,6 +16,18 @@ nasty_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "", + :notes => raw""" +Nasty problem. + +classification QUR2-AN-2-0 +""", + :origin_notes => raw""" +a very simple box-constrained quadratic +""", + :reference => raw"""""", + :lib => "CUTEst:NASTY", ) get_nasty_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_nasty_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/nazareth.jl b/src/Meta/nazareth.jl index 1efd0599f..7ba160097 100644 --- a/src/Meta/nazareth.jl +++ b/src/Meta/nazareth.jl @@ -16,6 +16,33 @@ nazareth_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :literature, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Sparse modification of the Nazareth trigonometric function +Problem 8 in +L. Luksan, C. Matonoha and J. Vlcek +Sparse Test Problems for Unconstrained Optimization, +Technical Report 1064, +Institute of Computer Science, +Academy of Science of the Czech Republic +https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:8", ) get_nazareth_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/ncb20.jl b/src/Meta/ncb20.jl index 6cda7b6fd..06511a950 100644 --- a/src/Meta/ncb20.jl +++ b/src/Meta/ncb20.jl @@ -16,6 +16,39 @@ ncb20_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NCB20.SIF", + :notes => raw""" +A banded problem with semi-bandwidth 20. This problem exhibits frequent +negative curvature in the exact Hessian. + +classification OUR2-AN-V-0 +Problem 40 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +Ph. Toint, private communication, 1992. + +SIF input: Ph. Toint, October 1992. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:NCB20, Luksan:40", ) get_ncb20_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_ncb20_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/ncb20b.jl b/src/Meta/ncb20b.jl index 77fb70a67..66fbf77b1 100644 --- a/src/Meta/ncb20b.jl +++ b/src/Meta/ncb20b.jl @@ -16,6 +16,40 @@ ncb20b_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NCB20B.SIF", + :notes => raw""" +A banded problem with semi-bandwidth 20. This problem exhibits frequent +negative curvature in the exact Hessian. It is a simplified version of +problem NCB20. + +classification OUR2-AN-V-0 +Problem 41 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +Ph. Toint, private communication, 1993. + +SIF input: Ph. Toint, April 1993. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:NCB20B, Luksan:41", ) get_ncb20b_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_ncb20b_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/nelson.jl b/src/Meta/nelson.jl index 87edca097..99e750245 100644 --- a/src/Meta/nelson.jl +++ b/src/Meta/nelson.jl @@ -16,6 +16,75 @@ nelson_meta = Dict( :is_feasible => true, :defined_everywhere => false, :origin => :real, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NELSON.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/nelson.dat + +NIST/ITL StRD +Dataset Name: Nelson (Nelson.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 188) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a study involving + the analysis of performance degradation data from + accelerated tests, published in IEEE Transactions + on Reliability. The response variable is dialectric + breakdown strength in kilo-volts, and the predictor + variables are time in weeks and temperature in degrees + Celcius. + +Reference: Nelson, W. (1981). + Analysis of Performance-Degradation Data. + IEEE Transactions on Reliability. + Vol. 2, R-30, No. 2, pp. 149-155. + +Data: 1 Response ( y = dialectric breakdown strength) + 2 Predictors (x1 = time; x2 = temperature) + 128 Observations + Average Level of Difficulty + Observed Data + +Model: Exponential Class + 3 Parameters (b1 to b3) + + log[y] = b1 - b2*x1 * exp[-b3*x2] + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem NELSON given as an inconsistent set of +nonlinear equations. +Fit: log[y] = b1 - b2*x1 * exp[-b3*x2] + e + +classification NOR2-MN-3-128 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Nelson, W. (1981). +Analysis of Performance-Degradation Data. +IEEE Transactions on Reliability. Vol. 2, R-30, No. 2, pp. 149-155. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@article{Nelson1981, + author = {Nelson, Wayne}, + title = {Analysis of Performance-Degradation Data from Accelerated Tests}, + journal = {IEEE Transactions on Reliability}, + year = {1981}, + volume = {R-30}, + number = {2}, + pages = {149--155}, + doi = {10.1109/TR.1981.5221010} +} +""", + :lib => "CUTEst:NELSON, NIST:Nelson", ) get_nelson_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_nelson_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/noncvxu2.jl b/src/Meta/noncvxu2.jl index e97abda97..b9b26868b 100644 --- a/src/Meta/noncvxu2.jl +++ b/src/Meta/noncvxu2.jl @@ -16,6 +16,37 @@ noncvxu2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NONCVXU2.SIF", + :notes => raw""" +A nonconvex unconstrained function with a unique minimum value + +classification OUR2-AN-V-0 + +Problem 43 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +SIF input: Nick Gould, April 1996 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:NONCVXU2, Luksan:43", ) get_noncvxu2_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_noncvxu2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/noncvxun.jl b/src/Meta/noncvxun.jl index 515b24d91..24a736ed8 100644 --- a/src/Meta/noncvxun.jl +++ b/src/Meta/noncvxun.jl @@ -16,6 +16,40 @@ noncvxun_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NONCVXUN.SIF", + :notes => raw""" +A nonconvex unconstrained function with a unique minimum value +See discussion here https://github.com/JuliaSmoothOptimizers/CUTEst.jl/issues/321 + +A nonconvex unconstrained function with a unique minimum value + +classification OUR2-AN-V-0 + +Problem 42 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +SIF input: Nick Gould, April 1996 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:NONCVXUN, Luksan:42", ) get_noncvxun_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_noncvxun_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/nondia.jl b/src/Meta/nondia.jl index c906f8a3a..4cf12111b 100644 --- a/src/Meta/nondia.jl +++ b/src/Meta/nondia.jl @@ -16,6 +16,46 @@ nondia_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NONDIA.SIF", + :notes => raw""" +The Shanno nondiagonal extension of Rosenbrock function. + +classification SUR2-AN-V-0 + +Problem 44 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. + +Note: discrepancy with CUTEst appears to be a bug in CUTEst, this (now) matches the original paper +(See issue #36) +""", + :origin_notes => raw""" +D. Shanno, +" On Variable Metric Methods for Sparse Hessians II: the New +Method", +MIS Tech report 27, University of Arizona (Tucson, UK), 1978. +See also Buckley #37 (p. 76) and Toint #15. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Shanno1978, + author = {Shanno, D. F.}, + title = {On Variable Metric Methods for Sparse {Hessians} {II}: the New Method}, + institution = {University of Arizona}, + type = {MIS Technical Report}, + number = {27}, + address = {Tucson, AZ}, + year = {1978} +} + """, + :lib => "CUTEst:NONDIA, Luksan:44", ) get_nondia_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_nondia_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/nondquar.jl b/src/Meta/nondquar.jl index 870725204..02ff8777f 100644 --- a/src/Meta/nondquar.jl +++ b/src/Meta/nondquar.jl @@ -16,6 +16,46 @@ nondquar_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/NONDQUAR.SIF", + :notes => raw""" +A nondiagonal quartic test problem. + +This problem has an arrow-head type Hessian with a tridiagonal +central part and a border of width 1. +The Hessian is singular at the solution. + +classification OUR2-AN-V-0 + +Problem 45 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +problem 57 in +A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, +"Performance of a multi-frontal scheme for partially separable +optimization" +Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{ConnGouldLescrenierToint1988, + author = {Conn, A. R. and Gould, N. I. M. and Lescrenier, M. and Toint, Ph. L.}, + title = {Performance of a multifrontal scheme for partially separable optimization}, + institution = {Department of Mathematics, FUNDP}, + address = {Namur, Belgium}, + number = {Report 88/4}, + year = {1988} +} + """, + :lib => "CUTEst:NONDQUAR, Luksan:45", ) get_nondquar_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_nondquar_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/osborne1.jl b/src/Meta/osborne1.jl index cd0e30500..143a0ca3a 100644 --- a/src/Meta/osborne1.jl +++ b/src/Meta/osborne1.jl @@ -1,4 +1,3 @@ - osborne1_meta = Dict( :nvar => 5, :variable_nvar => false, @@ -17,6 +16,38 @@ osborne1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/OSBORNE1.SIF", + :notes => raw""" +Osborne first problem in 5 variables. This is a nonlinear equation version +of problem OSBORNEA. +This function is a nonlinear least squares with 33 groups. Each +group has 2 nonlinear elements and one linear element. + +classification NOR2-MN-5-33 +""", + :origin_notes => raw""" +Problem 17 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See alos Buckley#32 (p. 77). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:OSBORNE1", ) get_osborne1_nvar(; n::Integer = default_nvar, kwargs...) = 5 get_osborne1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/osborne2.jl b/src/Meta/osborne2.jl index dd588a4df..c889d2f79 100644 --- a/src/Meta/osborne2.jl +++ b/src/Meta/osborne2.jl @@ -16,6 +16,38 @@ osborne2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/OSBORNE2.SIF", + :notes => raw""" +Osborne second problem in 11 variables. This is a nonlinear equation version +of problem OSBORNEB. +This function is a nonlinear least squares with 65 groups. Each +group has 4 nonlinear elements. + +classification NOR2-MN-11-65 +""", + :origin_notes => raw""" +Problem 19 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#32 (p.78). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:OSBORNE2", ) get_osborne2_nvar(; n::Integer = default_nvar, kwargs...) = 11 get_osborne2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer1c.jl b/src/Meta/palmer1c.jl index 8547d980e..bd43888d1 100644 --- a/src/Meta/palmer1c.jl +++ b/src/Meta/palmer1c.jl @@ -16,6 +16,35 @@ palmer1c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER1C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=N=N TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER1C", ) get_palmer1c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer1c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer1d.jl b/src/Meta/palmer1d.jl index 0a6fa5d32..25e574d23 100644 --- a/src/Meta/palmer1d.jl +++ b/src/Meta/palmer1d.jl @@ -16,6 +16,35 @@ palmer1d_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER1D.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=N=N TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + +classification QUR2-RN-7-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER1D", ) get_palmer1d_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_palmer1d_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer2c.jl b/src/Meta/palmer2c.jl index 7daf473ec..2afd1dd87 100644 --- a/src/Meta/palmer2c.jl +++ b/src/Meta/palmer2c.jl @@ -16,6 +16,35 @@ palmer2c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER2C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=O TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER2C", ) get_palmer2c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer2c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer3c.jl b/src/Meta/palmer3c.jl index 0726c25f7..b1dbcb206 100644 --- a/src/Meta/palmer3c.jl +++ b/src/Meta/palmer3c.jl @@ -16,6 +16,35 @@ palmer3c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER3C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=S TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private comminication. + +SIF input: Nick Gould, 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER3C", ) get_palmer3c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer3c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer4c.jl b/src/Meta/palmer4c.jl index f3c89cc86..e3b6fa1f8 100644 --- a/src/Meta/palmer4c.jl +++ b/src/Meta/palmer4c.jl @@ -16,6 +16,35 @@ palmer4c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER4C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1990. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER4C", ) get_palmer4c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer4c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer5c.jl b/src/Meta/palmer5c.jl index fd988d354..314a28562 100644 --- a/src/Meta/palmer5c.jl +++ b/src/Meta/palmer5c.jl @@ -16,6 +16,36 @@ palmer5c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER5C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to A0 T_0 + A2 T_2 + A4 T_4 + A6 T_6 + A8 T_8 + + A10 T_10 + A12 T_12 + A14 T_14 +where T_i is the i-th (shifted) Chebyshev polynomial + +classification QUR2-RN-6-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1992. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER5C", ) get_palmer5c_nvar(; n::Integer = default_nvar, kwargs...) = 6 get_palmer5c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer5d.jl b/src/Meta/palmer5d.jl index a132a530b..956c500c5 100644 --- a/src/Meta/palmer5d.jl +++ b/src/Meta/palmer5d.jl @@ -16,6 +16,34 @@ palmer5d_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER5D.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to to A0 + A2 X**2 + A4 X**4 + A6 X**6 + +classification QUR2-RN-4-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1992. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER5D", ) get_palmer5d_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_palmer5d_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer6c.jl b/src/Meta/palmer6c.jl index 042f512ce..5beb62419 100644 --- a/src/Meta/palmer6c.jl +++ b/src/Meta/palmer6c.jl @@ -16,6 +16,37 @@ palmer6c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER6C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification SUR2-RN-8-0 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1992. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER6C", ) get_palmer6c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer6c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer7c.jl b/src/Meta/palmer7c.jl index f56e2f944..c2b0e9c16 100644 --- a/src/Meta/palmer7c.jl +++ b/src/Meta/palmer7c.jl @@ -16,6 +16,35 @@ palmer7c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER7C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1992. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER7C", ) get_palmer7c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer7c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/palmer8c.jl b/src/Meta/palmer8c.jl index 733702d56..6c471e5df 100644 --- a/src/Meta/palmer8c.jl +++ b/src/Meta/palmer8c.jl @@ -16,6 +16,35 @@ palmer8c_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PALMER8C.SIF", + :notes => raw""" +A linear least squares problem arising from chemical kinetics. + +model: H-N=C=Se TZVP+MP2 +fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + + A10 X**10 + A12 X**12 + A14 X**14 + +classification QUR2-RN-8-0 +""", + :origin_notes => raw""" +M. Palmer, Edinburgh, private communication. + +SIF input: Nick Gould, 1992. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:PALMER8C", ) get_palmer8c_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_palmer8c_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/penalty1.jl b/src/Meta/penalty1.jl index 49722c650..749159b7e 100644 --- a/src/Meta/penalty1.jl +++ b/src/Meta/penalty1.jl @@ -16,6 +16,42 @@ penalty1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PENALTY1.SIF", + :notes => raw""" +A penalty function arising from +min{ sum_1^n(x_i-1)^2 subject to sum_1^n x_i^2 = 1/4}. +At the solution, the hessian has n-1 eigenvalues of order 1e-5 and +one of order 1. + +This problem is a sum of n+1 least-squares groups, the first n of +which have only a linear element. +It Hessian matrix is dense. + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 23 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley #181 (p. 79). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:PENALTY1", ) get_penalty1_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_penalty1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/penalty2.jl b/src/Meta/penalty2.jl index 5b0496ced..90918335a 100644 --- a/src/Meta/penalty2.jl +++ b/src/Meta/penalty2.jl @@ -16,6 +16,42 @@ penalty2_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PENALTY2.SIF", + :notes => raw""" +The second penalty function +This is a nonlinear least-squares problem with M=2*N groups. +Group 1 is linear. +Groups 2 to N use 2 nonlinear elements. +Groups N+1 to M-1 use 1 nonlinear element. +Group M uses N nonlinear elements. +The Hessian matrix is dense. + +classification SUR2-AN-V-0 +J.-P. Dussault, Clermont-Ferrand 06/2016. +""", + :origin_notes => raw""" +Problem 24 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#112 (p. 80) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:PENALTY2", ) get_penalty2_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_penalty2_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/penalty3.jl b/src/Meta/penalty3.jl index 2e6490102..d3afa34bb 100644 --- a/src/Meta/penalty3.jl +++ b/src/Meta/penalty3.jl @@ -16,6 +16,43 @@ penalty3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/PENALTY3.SIF", + :notes => raw""" +A penalty problem by Gill, Murray and Pitfield. +It has a dense Hessian matrix. + +classification OUR2-AY-V-0 + +Problem 46 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +problem 114 (p. 81) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Nick Gould, Dec 1990. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. G.}, + title = {Test functions for unconstrained minimization}, + institution = {Computing Science Division, Dalhousie University}, + address = {Dalhousie, Canada}, + number = {CS-3}, + year = {1989} +} + """, + :lib => "CUTEst:PENALTY3, Luksan:46", ) get_penalty3_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_penalty3_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/pinene.jl b/src/Meta/pinene.jl index 056066a66..7f4e8e947 100644 --- a/src/Meta/pinene.jl +++ b/src/Meta/pinene.jl @@ -16,6 +16,50 @@ pinene_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/PINENE.SIF", + :notes => raw""" +Isomerization of Alpha-Pinene Problem +Collocation formulation + +Determine the reaction coefficients in the thermal isometrization +of alpha-Pinene. The linear kinetic model is +y_1' = - (theta_1 + theta_2) y_1 +y_2' = theta_1 y_1 +y_3' = theta_2 y_1 - ( theta_3 + theta_4 ) y_3 + theta_5 y_5 +y_4' = theta_3 y_3 +y_5' = theta_4 y_3 - theta_5 y_5 +where the reaction coefficients theta_i are positive, +with given initial conditions. The problem is to minimize +sum{i=1,8} || y(tau_i,theta) - z_i||^2 +where the z_i are concentration measurements for y at times tau_i (i=1,8) + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 5 in the COPS (Version 3) collection of +E. Dolan and J. More +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +Alexander S. Bondarenko - Summer 1998 +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:PINENE, COPS:5", ) get_pinene_nvar(; n::Integer = default_nvar, kwargs...) = 50 * n + 5 get_pinene_ncon(; n::Integer = default_nvar, kwargs...) = 50 * n + 0 diff --git a/src/Meta/polygon.jl b/src/Meta/polygon.jl index 9650af611..8300b00d4 100644 --- a/src/Meta/polygon.jl +++ b/src/Meta/polygon.jl @@ -16,6 +16,36 @@ polygon_meta = Dict( :is_feasible => false, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/POLYGON.SIF", + :notes => raw""" +Find the polygon of maximal area, among polygons with nv sides and diameter d <= 1 + +The initial guess is inspired from https://vanderbei.princeton.edu/ampl/nlmodels/polygon/polygon2.mod + +See `polygon1`, `polygon2` and `polygon3` for similar variants. + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 1 in the COPS (Version 3) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) + +SIF input: Nick Gould, December 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:POLYGON, COPS:1", ) get_polygon_nvar(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) get_polygon_ncon(; n::Integer = default_nvar, kwargs...) = diff --git a/src/Meta/polygon1.jl b/src/Meta/polygon1.jl index 327acd3ce..6dd2bd161 100644 --- a/src/Meta/polygon1.jl +++ b/src/Meta/polygon1.jl @@ -16,6 +16,35 @@ polygon1_meta = Dict( :is_feasible => false, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" +Find the polygon of maximal area, among polygons with nv sides and diameter d <= 1 + +JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, +Introduction to Optimization class. +https://laurentlessard.com/teaching/524-intro-to-optimization/ + +This implementation is similar to +This is problem 1 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "", ) get_polygon1_nvar(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) get_polygon1_ncon(; n::Integer = default_nvar, kwargs...) = div(n, 2) diff --git a/src/Meta/polygon2.jl b/src/Meta/polygon2.jl index 40c16f243..521ac634a 100644 --- a/src/Meta/polygon2.jl +++ b/src/Meta/polygon2.jl @@ -16,6 +16,25 @@ polygon2_meta = Dict( :is_feasible => false, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://laurentlessard.com/teaching/524-intro-to-optimization/", + :notes => raw""" +Find the polygon of maximal area, among polygons with nv sides and diameter d <= 1 +Model 2: relative polar coordinates +""", + :origin_notes => raw""" +JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, +Introduction to Optimization class. +""", + :reference => raw""" +@misc{Lessard524, + author = {Lessard, Laurent}, + title = {Introduction to Optimization, {CS/ECE/ISyE} 524}, + howpublished = {Lecture notes, University of Wisconsin--Madison}, + url = {https://laurentlessard.com/teaching/524-intro-to-optimization/}, +} +""", + :lib => "", ) get_polygon2_nvar(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) get_polygon2_ncon(; n::Integer = default_nvar, kwargs...) = 1 diff --git a/src/Meta/polygon3.jl b/src/Meta/polygon3.jl index 38251ea13..ee07a4dbd 100644 --- a/src/Meta/polygon3.jl +++ b/src/Meta/polygon3.jl @@ -16,6 +16,25 @@ polygon3_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://laurentlessard.com/teaching/524-intro-to-optimization/", + :notes => raw""" +Find the polygon of maximal area, among polygons with nv sides and diameter d <= 1 +Model 3: rectangular coordinates +""", + :origin_notes => raw""" +JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, +Introduction to Optimization class. +""", + :reference => raw""" +@misc{Lessard524, + author = {Lessard, Laurent}, + title = {Introduction to Optimization, {CS/ECE/ISyE} 524}, + howpublished = {Lecture notes, University of Wisconsin--Madison}, + url = {https://laurentlessard.com/teaching/524-intro-to-optimization/}, +} +""", + :lib => "", ) get_polygon3_nvar(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) get_polygon3_ncon(; n::Integer = default_nvar, kwargs...) = 2 * div(n, 2) diff --git a/src/Meta/powellbs.jl b/src/Meta/powellbs.jl index 7a592596a..f036e386d 100644 --- a/src/Meta/powellbs.jl +++ b/src/Meta/powellbs.jl @@ -16,6 +16,38 @@ powellbs_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/POWELLBS.SIF", + :notes => raw""" +Powell badly scaled problem. +This problem is a sum of n-1 sets of 2 groups, both involving +nonlinear elements and being of the least square type. +It Hessian matrix is tridiagonal. + +classification NOR2-AN-2-2 +""", + :origin_notes => raw""" +Problem 3 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Toint#34, Buckley#22 (p. 82). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:POWELLBS", ) get_powellbs_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_powellbs_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/powellsg.jl b/src/Meta/powellsg.jl index 51b2de147..d9bde6deb 100644 --- a/src/Meta/powellsg.jl +++ b/src/Meta/powellsg.jl @@ -16,6 +16,40 @@ powellsg_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/POWELLSG.SIF", + :notes => raw""" +The extended Powell singular problem. +This problem is a sum of n/4 sets of four terms, each of which is assigned its own group. + +classification OUR2-AN-V-0 + +J.-P. Dussault, Clermont-Ferrand 05/2016. + +Difference with the following is the initial guess. +""", + :origin_notes => raw""" +Problem 13 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Toint#19, Buckley#34 (p.85) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:POWELLSG, Luksan:47, LuksanSparse:3", ) get_powellsg_nvar(; n::Integer = default_nvar, kwargs...) = 4 * max(1, div(n, 4)) # number of variables adjusted to be a multiple of 4 get_powellsg_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/power.jl b/src/Meta/power.jl index be830e73e..ab558e9f5 100644 --- a/src/Meta/power.jl +++ b/src/Meta/power.jl @@ -16,6 +16,38 @@ power_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/POWER.SIF", + :notes => raw""" +The Power problem by Oren. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +S.S. Oren, +Self-scaling variable metric algorithms, +Part II: implementation and experiments" +Management Science 20(5):863-874, 1974. +See also Buckley#179 (p. 83) +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{Oren1974, + title = {Self-Scaling Variable Metric (SSVM) Algorithms: Part II: Implementation and Experiments}, + volume = {20}, + ISSN = {1526-5501}, + url = {https://doi.org/10.1287/mnsc.20.5.863}, + DOI = {10.1287/mnsc.20.5.863}, + number = {5}, + journal = {Management Science}, + publisher = {Institute for Operations Research and the Management Sciences (INFORMS)}, + author = {Oren, Shmuel S.}, + year = {1974}, + month = jan, + pages = {863--874} +} +""", + :lib => "CUTEst:POWER", ) get_power_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_power_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/quartc.jl b/src/Meta/quartc.jl index c00b4f8a0..6ae53c11b 100644 --- a/src/Meta/quartc.jl +++ b/src/Meta/quartc.jl @@ -16,6 +16,33 @@ quartc_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/QUARTC.SIF", + :notes => raw""" +A simple quartic function. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +problem 157 (p. 87) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, March 1991. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. R.}, + title = {Test Functions for Unconstrained Minimization}, + institution = {Mathematics, Statistics and Computing Centre, Dalhousie University}, + number = {TR 1989CS-3}, + year = {1989}, + address = {Halifax, Canada} +} + """, + :lib => "CUTEst:QUARTC", ) get_quartc_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_quartc_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/rat42.jl b/src/Meta/rat42.jl index 4ac6dd042..5350dc815 100644 --- a/src/Meta/rat42.jl +++ b/src/Meta/rat42.jl @@ -16,6 +16,68 @@ rat42_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/RAT42.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rat42.dat + +NIST/ITL StRD +Dataset Name: Rat42 (Rat42.dat) + +File Format: ASCII + Starting Values (lines 41 to 43) + Certified Values (lines 41 to 48) + Data (lines 61 to 69) + +Procedure: Nonlinear Least Squares Regression + +Description: This model and data are an example of fitting + sigmoidal growth curves taken from Ratkowsky (1983). + The response variable is pasture yield, and the + predictor variable is growing time. + +Reference: Ratkowsky, D.A. (1983). + Nonlinear Regression Modeling. + New York, NY: Marcel Dekker, pp. 61 and 88. + +Data: 1 Response (y = pasture yield) + 1 Predictor (x = growing time) + 9 Observations + Higher Level of Difficulty + Observed Data + +Model: Exponential Class + 3 Parameters (b1 to b3) + + y = b1 / (1+exp[b2-b3*x]) + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem RAT42 given as an inconsistent set of +nonlinear equations. +Fit: y = b1 / (1+exp[b2-b3*x]) + e + +classification NOR2-MN-3-9 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Ratkowsky, D.A. (1983). +Nonlinear Regression Modeling. +New York, NY: Marcel Dekker, pp. 61 and 88. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{Ratkowsky1983, + author = {Ratkowsky, David A.}, + title = {Nonlinear Regression Modeling: A Unified Practical Approach}, + publisher = {Marcel Dekker}, + address = {New York}, + year = {1983} +} +""", + :lib => "CUTEst:RAT42, NIST:Rat42", ) get_rat42_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_rat42_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/rat43.jl b/src/Meta/rat43.jl index ad7b4d9bd..4f02bba4e 100644 --- a/src/Meta/rat43.jl +++ b/src/Meta/rat43.jl @@ -16,6 +16,68 @@ rat43_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/RAT43.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rat43.dat + +NIST/ITL StRD +Dataset Name: Rat43 (Rat43.dat) + +File Format: ASCII + Starting Values (lines 41 to 44) + Certified Values (lines 41 to 49) + Data (lines 61 to 75) + +Procedure: Nonlinear Least Squares Regression + +Description: This model and data are an example of fitting + sigmoidal growth curves taken from Ratkowsky (1983). + The response variable is the dry weight of onion bulbs + and tops, and the predictor variable is growing time. + +Reference: Ratkowsky, D.A. (1983). + Nonlinear Regression Modeling. + New York, NY: Marcel Dekker, pp. 62 and 88. + +Data: 1 Response (y = onion bulb dry weight) + 1 Predictor (x = growing time) + 15 Observations + Higher Level of Difficulty + Observed Data + +Model: Exponential Class + 4 Parameters (b1 to b4) + + y = b1 / ((1+exp[b2-b3*x])**(1/b4)) + e + +T. Migot, Montreal, 2023. + +NIST Data fitting problem RAT43 given as an inconsistent set of +nonlinear equations. +Fit: y = b1 / ((1+exp[b2-b3*x])**(1/b4)) + e + +classification NOR2-MN-4-15 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Ratkowsky, D.A. (1983). +Nonlinear Regression Modeling. +New York, NY: Marcel Dekker, pp. 62 and 88. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@book{Ratkowsky1983, + author = {Ratkowsky, David A.}, + title = {Nonlinear Regression Modeling: A Unified Practical Approach}, + publisher = {Marcel Dekker}, + address = {New York}, + year = {1983} +} +""", + :lib => "CUTEst:RAT43, NIST:Rat43", ) get_rat43_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_rat43_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/robotarm.jl b/src/Meta/robotarm.jl index 50960a66f..c7911c5dc 100644 --- a/src/Meta/robotarm.jl +++ b/src/Meta/robotarm.jl @@ -16,6 +16,30 @@ robotarm_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ROBOTARM.SIF", + :notes => raw""" +Minimize the time taken for a robot arm to travel between two points. + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 8 in the COPS (Version 3) collection of +E. Dolan and J. More +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:ROBOTARM, COPS:8", ) get_robotarm_nvar(; n::Integer = default_nvar, kwargs...) = 9 * (max(2, div(n, 9)) + 1) + 1 get_robotarm_ncon(; n::Integer = default_nvar, kwargs...) = diff --git a/src/Meta/rocket.jl b/src/Meta/rocket.jl index b3096e884..95a0b0d17 100644 --- a/src/Meta/rocket.jl +++ b/src/Meta/rocket.jl @@ -16,6 +16,41 @@ rocket_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/ROCKET.SIF", + :notes => raw""" +Goddard Rocket Problem +Trapezoidal formulation + +Maximize the final altitude of a vertically-lauched rocket, using +the thrust as a control and given the initial mass, the fuel mass +and the drag characteristics of the rocket. + +classification OOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 10 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, November 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:ROCKET, COPS:10", ) get_rocket_nvar(; n::Integer = default_nvar, kwargs...) = 4 * n + 5 get_rocket_ncon(; n::Integer = default_nvar, kwargs...) = 3 * n + 4 diff --git a/src/Meta/rosenbrock.jl b/src/Meta/rosenbrock.jl index e39be54a7..4114ca4a8 100644 --- a/src/Meta/rosenbrock.jl +++ b/src/Meta/rosenbrock.jl @@ -16,6 +16,27 @@ rosenbrock_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.1093/comjnl/3.3.175", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@article{Rosenbrock1960, + author = {Rosenbrock, H. H.}, + title = {An Automatic Method for Finding the Greatest or Least Value of a Function}, + journal = {The Computer Journal}, + year = {1960}, + volume = {3}, + number = {3}, + pages = {175--184}, + doi = {10.1093/comjnl/3.3.175} +} +""", + :lib => "", ) get_rosenbrock_nvar(; n::Integer = default_nvar, kwargs...) = 2 get_rosenbrock_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/rozman1.jl b/src/Meta/rozman1.jl index fefe706dd..d98207c8c 100644 --- a/src/Meta/rozman1.jl +++ b/src/Meta/rozman1.jl @@ -16,6 +16,54 @@ rozman1_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rozman1.dat", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rozman1.dat + +NIST/ITL StRD +Dataset Name: Roszman1 (Roszman1.dat) + +File Format: ASCII + Starting Values (lines 41 to 44) + Certified Values (lines 41 to 49) + Data (lines 61 to 85) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + quantum defects in iodine atoms. The response + variable is the number of quantum defects, and the + predictor variable is the excited energy state. + The argument to the ARCTAN function is in radians. + +Reference: Roszman, L., NIST (19??). + Quantum Defects for Sulfur I Atom. + +Data: 1 Response (y = quantum defect) + 1 Predictor (x = excited state energy) + 25 Observations + Average Level of Difficulty + Observed Data + +Model: Miscellaneous Class + 4 Parameters (b1 to b4) + + pi = 3.141592653589793238462643383279E0 + y = b1 - b2*x - arctan[b3/(x-b4)]/pi + e +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "NIST:Roszman1", ) get_rozman1_nvar(; n::Integer = default_nvar, kwargs...) = 4 get_rozman1_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/sbrybnd.jl b/src/Meta/sbrybnd.jl index a2df40062..aab2be7ed 100644 --- a/src/Meta/sbrybnd.jl +++ b/src/Meta/sbrybnd.jl @@ -16,6 +16,42 @@ sbrybnd_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SBRYBND.SIF", + :notes => raw""" +Broyden banded system of nonlinear equations, considered in the +least square sense. +NB: scaled version of BRYBND + +classification SUR2-AN-V-0 + +The terms in the sum should be squared --- corrected (it is not squared in Luksan, but +comparing it against their brybnd that appears to be a typo) + +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +problem 31 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#73 (p. 41) and Toint#18 + +SIF input: Ph. Toint and Nick Gould, Nov 1997. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:SBRYBND, Luksan:48", ) get_sbrybnd_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_sbrybnd_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/schmvett.jl b/src/Meta/schmvett.jl index 4bbf1cc7e..1c5dd043f 100644 --- a/src/Meta/schmvett.jl +++ b/src/Meta/schmvett.jl @@ -16,6 +16,47 @@ schmvett_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SCHMVETT.SIF", + :notes => raw""" +The Schmidt and Vetters problem. + +This problem has N-2 trivial groups, all of which have 3 nonlinear +elements + +classification OUR2-AY-V-0 + +Problem 49 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +J.W. Schmidt and K. Vetters, +"Albeitungsfreie Verfahren fur Nichtlineare Optimierungsproblem", +Numerische Mathematik 15:263-282, 1970. +See also Toint#35 and Buckley#14 (p90) + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{SchmidtVetters1970NM, + author = {Schmidt, Jochen W. and Vetters, Klaus}, + title = {Ableitungsfreie {Verfahren} f{\"u}r nichtlineare {Optimierungsprobleme}}, + journal = {Numerische Mathematik}, + year = {1970}, + volume = {15}, + number = {4}, + pages = {263--282}, + doi = {10.1007/BF02165118} +} + """, + :lib => "CUTEst:SCHMVETT, Luksan:49", ) get_schmvett_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_schmvett_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/scosine.jl b/src/Meta/scosine.jl index 460665246..120da81ad 100644 --- a/src/Meta/scosine.jl +++ b/src/Meta/scosine.jl @@ -16,6 +16,45 @@ scosine_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SCOSINE.SIF", + :notes => raw""" +Another function with nontrivial groups and +repetitious elements. +NB: scaled version of COSINE + +classification OUR2-AN-V-0 + +Problem 50 in +L. Luksan, C. Matonoha and J. Vlcek +Modified CUTE problems for sparse unconstrained optimization, +Technical Report 1081, +Institute of Computer Science, +Academy of Science of the Czech Republic +http://www.cs.cas.cz/matonoha/download/V1081.pdf + +J.-P. Dussault, Clermont-Ferrand 05/2016. + +Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper +(See issue #36) +""", + :origin_notes => raw""" +N. Gould, private communication. + +SIF input: N. Gould, Nov 1997 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:SCOSINE, Luksan:50", ) get_scosine_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_scosine_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/sinquad.jl b/src/Meta/sinquad.jl index 5ed24a976..41b82f0a8 100644 --- a/src/Meta/sinquad.jl +++ b/src/Meta/sinquad.jl @@ -16,6 +16,41 @@ sinquad_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SINQUAD.SIF", + :notes => raw""" +Another function with nontrivial groups and + repetitious elements. + +classification OUR2-AY-V-0 + + Problem 51 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +N. Gould, private communication. + +SIF input: N. Gould, Dec 1989. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:SINQUAD, Luksan:51", ) get_sinquad_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_sinquad_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/sparsine.jl b/src/Meta/sparsine.jl index 0700aff91..43935a169 100644 --- a/src/Meta/sparsine.jl +++ b/src/Meta/sparsine.jl @@ -16,6 +16,38 @@ sparsine_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SPARSINE.SIF", + :notes => raw""" +A sparse problem involving sine functions + +classification OUR2-AN-V-0 + + Problem 52 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +SIF input: Nick Gould, November 1995 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:SPARSINE, Luksan:52", ) get_sparsine_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_sparsine_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/sparsqur.jl b/src/Meta/sparsqur.jl index 8873a8beb..a52e2c579 100644 --- a/src/Meta/sparsqur.jl +++ b/src/Meta/sparsqur.jl @@ -16,6 +16,38 @@ sparsqur_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SPARSQUR.SIF", + :notes => raw""" +A sparse quartic problem + +classification OUR2-AN-V-0 + + Problem 53 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +SIF input: Nick Gould, November 1995 +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:SPARSQUR, Luksan:53", ) get_sparsqur_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_sparsqur_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/spmsrtls.jl b/src/Meta/spmsrtls.jl index d16654876..0a568533c 100644 --- a/src/Meta/spmsrtls.jl +++ b/src/Meta/spmsrtls.jl @@ -16,6 +16,34 @@ spmsrtls_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SPMSRTLS.SIF", + :notes => raw""" +Liu and Nocedal tridiagonal matrix square root problem. + +classification SUR2-AN-V-V +""", + :origin_notes => raw""" +problem 151 (p. 93) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. +This is a least-squares variant of problem SPMSQRT. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Buckley1989, + author = {Buckley, A. G.}, + title = {Test functions for unconstrained minimization}, + institution = {Computing Science Division, Dalhousie University}, + address = {Dalhousie, Canada}, + number = {CS-3}, + year = {1989} +} + """, + :lib => "CUTEst:SPMSRTLS, Luksan:54", ) get_spmsrtls_nvar(; n::Integer = default_nvar, kwargs...) = max(Int(round((n + 2) / 3)), 34) * 3 - 2 get_spmsrtls_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/srosenbr.jl b/src/Meta/srosenbr.jl index fc14512d9..45c254bc2 100644 --- a/src/Meta/srosenbr.jl +++ b/src/Meta/srosenbr.jl @@ -16,6 +16,55 @@ srosenbr_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/SROSENBR.SIF", + :notes => raw""" +The separable extension of Rosenbrock's function. + +classification SUR2-AN-V-0 + + Problem 55 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + +problem 21 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:SROSENBR, Luksan:55", ) get_srosenbr_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_srosenbr_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/steering.jl b/src/Meta/steering.jl index 4a5dfa83b..d3e556366 100644 --- a/src/Meta/steering.jl +++ b/src/Meta/steering.jl @@ -16,6 +16,41 @@ steering_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://bitbucket.org/optrove/sif/src/master/STEERING.SIF", + :notes => raw""" +Rocket Steering Problem + + Minimize the time taken for a particle, acted upon by a thrust of +constant magnitude, to achieve a given altitude and terminal velocity + + Trapezoidal formulation + +classification LOR2-AN-V-V +""", + :origin_notes => raw""" +This is problem 9 in the COPS (Version 2) collection of +E. Dolan and J. More' +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2000) + +COPS 2.0 - September 2000 +COPS 3.0 - November 2002 +COPS 3.1 - March 2004 + +SIF input: Nick Gould, December 2000 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "CUTEst:STEERING, COPS:9", ) get_steering_nvar(; n::Integer = default_nvar, kwargs...) = 5 * n + 6 get_steering_ncon(; n::Integer = default_nvar, kwargs...) = 4 * n + 8 diff --git a/src/Meta/structural.jl b/src/Meta/structural.jl index 15c160bf3..7fe2476c8 100644 --- a/src/Meta/structural.jl +++ b/src/Meta/structural.jl @@ -25,6 +25,24 @@ structural_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://laurentlessard.com/teaching/524-intro-to-optimization/", + :notes => raw""" +JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, + Introduction to Optimization class. +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@misc{Lessard524, + author = {Lessard, Laurent}, + title = {Introduction to Optimization, {CS/ECE/ISyE} 524}, + howpublished = {Lecture notes, University of Wisconsin--Madison}, + url = {https://laurentlessard.com/teaching/524-intro-to-optimization/}, +} +""", + :lib => "", ) get_structural_nvar(; n::Integer = default_nvar, kwargs...) = 2 * Int( diff --git a/src/Meta/tetra.jl b/src/Meta/tetra.jl index 55f1f59f2..b9f1280b2 100644 --- a/src/Meta/tetra.jl +++ b/src/Meta/tetra.jl @@ -16,6 +16,29 @@ tetra_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" +Minimize the sum of the inverse weighted mean ratio of the elements in a fixed–boundary +tetrahedral mesh by adjusting the locations of the free vertices. +""", + :origin_notes => raw""" +This is problem 19 in the COPS (Version 3) collection of +E. Dolan and J. More +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_nvar(; n::Integer = default_nvar, kwargs...) = 15 get_tetra_ncon(; n::Integer = default_nvar, kwargs...) = 4 diff --git a/src/Meta/tetra_duct12.jl b/src/Meta/tetra_duct12.jl index c561d31da..b7ff23196 100644 --- a/src/Meta/tetra_duct12.jl +++ b/src/Meta/tetra_duct12.jl @@ -16,6 +16,25 @@ tetra_duct12_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_duct12_nvar(; n::Integer = default_nvar, kwargs...) = 12597 get_tetra_duct12_ncon(; n::Integer = default_nvar, kwargs...) = 19222 diff --git a/src/Meta/tetra_duct15.jl b/src/Meta/tetra_duct15.jl index 141b45260..5ed6b7f13 100644 --- a/src/Meta/tetra_duct15.jl +++ b/src/Meta/tetra_duct15.jl @@ -16,6 +16,25 @@ tetra_duct15_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_duct15_nvar(; n::Integer = default_nvar, kwargs...) = 6417 get_tetra_duct15_ncon(; n::Integer = default_nvar, kwargs...) = 9000 diff --git a/src/Meta/tetra_duct20.jl b/src/Meta/tetra_duct20.jl index 03ad990d5..62a438cd1 100644 --- a/src/Meta/tetra_duct20.jl +++ b/src/Meta/tetra_duct20.jl @@ -16,6 +16,25 @@ tetra_duct20_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_duct20_nvar(; n::Integer = default_nvar, kwargs...) = 3201 get_tetra_duct20_ncon(; n::Integer = default_nvar, kwargs...) = 4104 diff --git a/src/Meta/tetra_foam5.jl b/src/Meta/tetra_foam5.jl index d98d2ad6f..90375c97d 100644 --- a/src/Meta/tetra_foam5.jl +++ b/src/Meta/tetra_foam5.jl @@ -16,6 +16,25 @@ tetra_foam5_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_foam5_nvar(; n::Integer = default_nvar, kwargs...) = 4011 get_tetra_foam5_ncon(; n::Integer = default_nvar, kwargs...) = 4847 diff --git a/src/Meta/tetra_gear.jl b/src/Meta/tetra_gear.jl index e4bff7be7..33ca4a114 100644 --- a/src/Meta/tetra_gear.jl +++ b/src/Meta/tetra_gear.jl @@ -16,6 +16,25 @@ tetra_gear_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_gear_nvar(; n::Integer = default_nvar, kwargs...) = 2598 get_tetra_gear_ncon(; n::Integer = default_nvar, kwargs...) = 3116 diff --git a/src/Meta/tetra_hook.jl b/src/Meta/tetra_hook.jl index eefd12b14..52b30a562 100644 --- a/src/Meta/tetra_hook.jl +++ b/src/Meta/tetra_hook.jl @@ -16,6 +16,25 @@ tetra_hook_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:19", ) get_tetra_hook_nvar(; n::Integer = default_nvar, kwargs...) = 3570 get_tetra_hook_ncon(; n::Integer = default_nvar, kwargs...) = 4675 diff --git a/src/Meta/threepk.jl b/src/Meta/threepk.jl index 28cd6f15f..94d8a2a75 100644 --- a/src/Meta/threepk.jl +++ b/src/Meta/threepk.jl @@ -16,6 +16,39 @@ threepk_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/3PK.SIF", + :notes => raw""" +A problem arising in the estimation of structured O/D matrix +""", + :origin_notes => raw""" +Converted in Julia from https://github.com/mpf/Optimization-Test-Problems + +M. Bierlaire, private communication + see also + M. Bierlaire and Ph. L. Toint, + MEUSE: an origin-destination estimator that exploits structure, + Transportation Research B, 29, 1, 47--60, 1995. + SIF input: Ph. Toint, Dec 1989, Corrected July 1993. + classification SUR2-MN-30-0 +""", + :reference => raw""" +@article{Bierlaire1995, + title = {Meuse: An origin-destination matrix estimator that exploits structure}, + volume = {29}, + ISSN = {0191-2615}, + url = {https://doi.org/10.1016/0191-2615(94)00025-U}, + DOI = {10.1016/0191-2615(94)00025-u}, + number = {1}, + journal = {Transportation Research Part B: Methodological}, + publisher = {Elsevier BV}, + author = {Bierlaire, M. and Toint, Ph.L.}, + year = {1995}, + month = feb, + pages = {47--60} +} +""", + :lib => "CUTEst:3PK", ) get_threepk_nvar(; n::Integer = default_nvar, kwargs...) = 30 get_threepk_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/thurber.jl b/src/Meta/thurber.jl index 51ec97539..bd4c803fd 100644 --- a/src/Meta/thurber.jl +++ b/src/Meta/thurber.jl @@ -16,6 +16,66 @@ thurber_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/THURBER.SIF", + :notes => raw""" +https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/thurber.dat + +NIST/ITL StRD +Dataset Name: Thurber (Thurber.dat) + +File Format: ASCII + Starting Values (lines 41 to 47) + Certified Values (lines 41 to 52) + Data (lines 61 to 97) + +Procedure: Nonlinear Least Squares Regression + +Description: These data are the result of a NIST study involving + semiconductor electron mobility. The response + variable is a measure of electron mobility, and the + predictor variable is the natural log of the density. + +Reference: Thurber, R., NIST (197?). + Semiconductor electron mobility modeling. + +Data: 1 Response Variable (y = electron mobility) + 1 Predictor Variable (x = log[density]) + 37 Observations + Higher Level of Difficulty + Observed Data + +Model: Rational Class (cubic/cubic) + 7 Parameters (b1 to b7) + + y = (b1 + b2*x + b3*x**2 + b4*x**3) / + (1 + b5*x + b6*x**2 + b7*x**3) + e +T. Migot, Montreal, 2023. + +NIST Data fitting problem THURBER given as an inconsistent set of +nonlinear equations. +Fit: y = (b1 + b2*x + b3*x**2 + b4*x**3) / +(1 + b5*x + b6*x**2 + b7*x**3) + e + +classification NOR2-MN-7-37 +""", + :origin_notes => raw""" +Problem from the NIST nonlinear regression test set +http://www.itl.nist.gov/div898/strd/nls/nls_main.shtml +Reference: Thurber, R., NIST (197?). +Semiconductor electron mobility modeling. + +SIF input: Nick Gould and Tyrone Rees, Oct 2015 +""", + :reference => raw""" +@misc{NISTStRD, + author = {{National Institute of Standards and Technology}}, + title = {{NIST/ITL StRD}: Nonlinear Regression Reference Datasets}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {1997} +} +""", + :lib => "CUTEst:THURBER, NIST:Thurber", ) get_thurber_nvar(; n::Integer = default_nvar, kwargs...) = 7 get_thurber_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/toint.jl b/src/Meta/toint.jl index c050ef51d..c6c7187fa 100644 --- a/src/Meta/toint.jl +++ b/src/Meta/toint.jl @@ -16,6 +16,31 @@ toint_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Toint trigonometric function +""", + :origin_notes => raw""" +Problem 10 in + L. Luksan, C. Matonoha and J. Vlcek + Sparse Test Problems for Unconstrained Optimization, + Technical Report 1064, + Institute of Computer Science, + Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} +} + """, + :lib => "LuksanSparse:10", ) get_toint_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/tointgss.jl b/src/Meta/tointgss.jl index c7fc7d139..e6090d0a6 100644 --- a/src/Meta/tointgss.jl +++ b/src/Meta/tointgss.jl @@ -16,6 +16,45 @@ tointgss_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/TOINTGSS.SIF", + :notes => raw""" +Toint's Gaussian problem. + + This problem has N-2 trivial groups, all of which have 1 nonlinear + element + +classification OUR2-AY-V-0 + + Problem 56 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +problem 21 in +Ph.L. Toint, +"Test problems for partially separable optimization and results +for the routine PSPMIN", +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. + +SIF input: Ph. Toint, Dec 1989, corrected Nick Gould, July 1993. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:TOINTGSS, Luksan:56", ) get_tointgss_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_tointgss_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/torsion.jl b/src/Meta/torsion.jl index f2809e2db..982c6c34a 100644 --- a/src/Meta/torsion.jl +++ b/src/Meta/torsion.jl @@ -16,6 +16,27 @@ torsion_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :jump, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" +Torsion problem +""", + :origin_notes => raw""" +Liz Dolan - Summer 2000 + Version 2.0 - October 2000 + COPS 3.1 - March 2004 +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:15", ) get_torsion_nvar(; n::Integer = default_nvar, diff --git a/src/Meta/tquartic.jl b/src/Meta/tquartic.jl index 0b70a70cd..e0fb92707 100644 --- a/src/Meta/tquartic.jl +++ b/src/Meta/tquartic.jl @@ -16,6 +16,41 @@ tquartic_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/TQUARTIC.SIF", + :notes => raw""" +A quartic function with nontrivial groups and + repetitious elements. + +classification SUR2-AN-V-0# + + Problem 57 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + J.-P. Dussault, Clermont-Ferrand 05/2016. +""", + :origin_notes => raw""" +Ph. Toint, private communication. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic}, + url = {http://www.cs.cas.cz/matonoha/download/V1081.pdf}, + } + """, + :lib => "CUTEst:TQUARTIC, Luksan:57", ) get_tquartic_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_tquartic_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/triangle.jl b/src/Meta/triangle.jl index 5dd9953b7..2ab589688 100644 --- a/src/Meta/triangle.jl +++ b/src/Meta/triangle.jl @@ -16,6 +16,28 @@ triangle_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" +Minimize the time taken for a robot arm to travel between two points. +""", + :origin_notes => raw""" +This is problem 18 in the COPS (Version 3) collection of +E. Dolan and J. More +see "Benchmarking Optimization Software with COPS" +Argonne National Labs Technical Report ANL/MCS-246 (2004) +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:18", ) get_triangle_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_triangle_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/Meta/triangle_deer.jl b/src/Meta/triangle_deer.jl index 7ad67dc19..d11092be1 100644 --- a/src/Meta/triangle_deer.jl +++ b/src/Meta/triangle_deer.jl @@ -16,10 +16,29 @@ triangle_deer_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:18", ) get_triangle_deer_nvar(; n::Integer = default_nvar, kwargs...) = 2244 get_triangle_deer_ncon(; n::Integer = default_nvar, kwargs...) = 1896 get_triangle_deer_nlin(; n::Integer = default_nvar, kwargs...) = 0 get_triangle_deer_nnln(; n::Integer = default_nvar, kwargs...) = 1896 get_triangle_deer_nequ(; n::Integer = default_nvar, kwargs...) = 0 -get_triangle_deer_nineq(; n::Integer = default_nvar, kwargs...) = 1896 +get_triangle_deer_nineq(; n::Integer = default_nvar, kwargs...) = 1896 \ No newline at end of file diff --git a/src/Meta/triangle_pacman.jl b/src/Meta/triangle_pacman.jl index 677dd4846..97eb6d289 100644 --- a/src/Meta/triangle_pacman.jl +++ b/src/Meta/triangle_pacman.jl @@ -16,10 +16,29 @@ triangle_pacman_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:18", ) get_triangle_pacman_nvar(; n::Integer = default_nvar, kwargs...) = 1366 get_triangle_pacman_ncon(; n::Integer = default_nvar, kwargs...) = 1182 get_triangle_pacman_nlin(; n::Integer = default_nvar, kwargs...) = 0 get_triangle_pacman_nnln(; n::Integer = default_nvar, kwargs...) = 1182 get_triangle_pacman_nequ(; n::Integer = default_nvar, kwargs...) = 0 -get_triangle_pacman_nineq(; n::Integer = default_nvar, kwargs...) = 1182 +get_triangle_pacman_nineq(; n::Integer = default_nvar, kwargs...) = 1182 \ No newline at end of file diff --git a/src/Meta/triangle_turtle.jl b/src/Meta/triangle_turtle.jl index 1d2fc030e..e62ac4772 100644 --- a/src/Meta/triangle_turtle.jl +++ b/src/Meta/triangle_turtle.jl @@ -16,10 +16,29 @@ triangle_turtle_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://doi.org/10.2172/834714", + :notes => raw""" + +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} + } + """, + :lib => "COPS:18", ) get_triangle_turtle_nvar(; n::Integer = default_nvar, kwargs...) = 4444 get_triangle_turtle_ncon(; n::Integer = default_nvar, kwargs...) = 4025 get_triangle_turtle_nlin(; n::Integer = default_nvar, kwargs...) = 0 get_triangle_turtle_nnln(; n::Integer = default_nvar, kwargs...) = 4025 get_triangle_turtle_nequ(; n::Integer = default_nvar, kwargs...) = 0 -get_triangle_turtle_nineq(; n::Integer = default_nvar, kwargs...) = 4025 +get_triangle_turtle_nineq(; n::Integer = default_nvar, kwargs...) = 4025 \ No newline at end of file diff --git a/src/Meta/tridia.jl b/src/Meta/tridia.jl index 1e4b79056..630023efd 100644 --- a/src/Meta/tridia.jl +++ b/src/Meta/tridia.jl @@ -16,6 +16,35 @@ tridia_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/TRIDIA.SIF", + :notes => raw""" +Shanno's TRIDIA quadratic tridiagonal problem. + + This problem is decomposed in n linear groups, the last n-1 of which + are 2 x 2 and singular. + +classification QUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 8 in +Ph.L. Toint, +"Test problems for partially separable optimization and results +for the routine PSPMIN", +Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. +See also Buckley#40 (p.96) +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@techreport{Toint1983, + author = {Ph. L. Toint}, + title = {Test problems for partially separable optimization and results for the routine PSPMIN}, + institution = {Department of Mathematics, FUNDP (Namur, Belgium)}, + number = {Report 83/4}, + year = {1983} +} + """, + :lib => "CUTEst:TRIDIA", ) get_tridia_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_tridia_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/trig.jl b/src/Meta/trig.jl index 6fab7ffb8..a7ebb03dc 100644 --- a/src/Meta/trig.jl +++ b/src/Meta/trig.jl @@ -16,6 +16,31 @@ trig_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Another trigonometric function +""", + :origin_notes => raw""" +Problem 9 in + L. Luksan, C. Matonoha and J. Vlcek + Sparse Test Problems for Unconstrained Optimization, + Technical Report 1064, + Institute of Computer Science, + Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} +} + """, + :lib => "LuksanSparse:9", ) get_trig_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/trigb.jl b/src/Meta/trigb.jl index 2fd84ffa1..1d04af33e 100644 --- a/src/Meta/trigb.jl +++ b/src/Meta/trigb.jl @@ -16,6 +16,31 @@ trigb_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Banded trigonometric problem +""", + :origin_notes => raw""" +Problem 16 in + L. Luksan, C. Matonoha and J. Vlcek + Sparse Test Problems for Unconstrained Optimization, + Technical Report 1064, + Institute of Computer Science, + Academy of Science of the Czech Republic +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} +} + """, + :lib => "LuksanSparse:16", ) get_trigb_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/vardim.jl b/src/Meta/vardim.jl index a31eaa80d..96c4a32ab 100644 --- a/src/Meta/vardim.jl +++ b/src/Meta/vardim.jl @@ -16,6 +16,37 @@ vardim_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/VARDIM.SIF", + :notes => raw""" +Variable dimension problem. + This problem is a sum of n+2 least-squares groups, the first n of + which have only a linear element. + It Hessian matrix is dense. + +classification OUR2-AN-V-0 +""", + :origin_notes => raw""" +Problem 25 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#72 (p.98). +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:VARDIM", ) get_vardim_nvar(; n::Integer = default_nvar, kwargs...) = 1 * n + 0 get_vardim_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/variational.jl b/src/Meta/variational.jl index 14c98dfca..d9e8b49d5 100644 --- a/src/Meta/variational.jl +++ b/src/Meta/variational.jl @@ -16,6 +16,35 @@ variational_meta = Dict( :is_feasible => true, :defined_everywhere => false, :origin => :academic, + :implementation => :both, + :url => "https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization", + :notes => raw""" +Discretization of a variational problem + + Problem 15 in + L. Luksan, C. Matonoha and J. Vlcek + Sparse Test Problems for Unconstrained Optimization, + Technical Report 1064, + Institute of Computer Science, + Academy of Science of the Czech Republic + + https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization +""", + :origin_notes => raw""" + +""", + :reference => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} + } + """, + :lib => "LuksanSparse:15", ) get_variational_nvar(; n::Integer = default_nvar, kwargs...) = n diff --git a/src/Meta/vibrbeam.jl b/src/Meta/vibrbeam.jl index 9a5421824..d9625d31a 100644 --- a/src/Meta/vibrbeam.jl +++ b/src/Meta/vibrbeam.jl @@ -16,6 +16,46 @@ vibrbeam_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/VIBRBEAM.SIF", + :notes => raw""" +A nonlinear least-squares problem arising from laser-Doppler + measurements of a vibrating beam. The data correspond to a simulated + experiment where two laser-Doppler velocimeters take measurements + at random points along the centreline of the beam. These measurements + consist of a position (x), an incident angle (p) and the magnitude + of the velocity along the line of sight (v). + The problem is then to fit + + 2 3 2 3 + v = (c + c x + c x + c x ) cos[ d + d x + d x + d x - p ] + 0 1 2 3 0 1 2 3 + <---- magnitude -----> <------ phase -----> + + in the least-squares sense. + +classification SUR2-MN-8-0 +""", + :origin_notes => raw""" +A modification of an exercize for L. Watson course on LANCELOT in +the Spring 1993. Compared to the original proposal, the unnecessary +elements were removed as well as an unnecessary constraint on the phase. +SIF input: Ph. L. Toint, May 1993, based on a proposal by +D. E. Montgomery, Virginia Tech., April 1993. +""", + :reference => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + :lib => "CUTEst:VIBRBEAM", ) get_vibrbeam_nvar(; n::Integer = default_nvar, kwargs...) = 8 get_vibrbeam_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/watson.jl b/src/Meta/watson.jl index 668c85dcd..e13468d9a 100644 --- a/src/Meta/watson.jl +++ b/src/Meta/watson.jl @@ -16,6 +16,36 @@ watson_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/WATSON.SIF", + :notes => raw""" +Watson problem in varaible dimension ( 2 <= n <= 31 ). + This function is a nonlinear least squares with 31 groups. + +classification SUR2-AN-V-0 +""", + :origin_notes => raw""" +problem 20 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Buckley#128 (p. 100). + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} + """, + :lib => "CUTEst:WATSON", ) get_watson_nvar(; n::Integer = default_nvar, kwargs...) = min(max(n, 2), 31) get_watson_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/woods.jl b/src/Meta/woods.jl index 12be72b43..f4f309d03 100644 --- a/src/Meta/woods.jl +++ b/src/Meta/woods.jl @@ -16,6 +16,61 @@ woods_meta = Dict( :is_feasible => true, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/WOODS.SIF", + :notes => raw""" +The extended Woods problem. + + This problem is a sum of n/4 sets of 6 terms, each of which is + assigned its own group. For a given set i, the groups are + A(i), B(i), C(i), D(i), E(i) and F(i). Groups A(i) and C(i) contain 1 + nonlinear element each, denoted Y(i) and Z(i). + + The problem dimension is defined from the number of these sets. + The number of problem variables is then 4 times larger. + + This version uses a slightly unorthodox expression of Woods + function as a sum of squares (see Buckley) + +classification SUR2-AN-V-0 + + See also + + problem 58 in + L. Luksan, C. Matonoha and J. Vlcek + Modified CUTE problems for sparse unconstrained optimization, + Technical Report 1081, + Institute of Computer Science, + Academy of Science of the Czech Republic + + http://www.cs.cas.cz/matonoha/download/V1081.pdf + + classification SUR2-AN-V-0 + + J.-P. Dussault, Clermont-Ferrand, 05/2016. +""", + :origin_notes => raw""" +problem 14 in +J.J. More', B.S. Garbow and K.E. Hillstrom, +"Testing Unconstrained Optimization Software", +ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. +See also Toint#27, Buckley#17 (p. 101), Conn, Gould, Toint#7 + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + :lib => "CUTEst:WOODS, Luksan:58", ) get_woods_nvar(; n::Integer = default_nvar, kwargs...) = 4 * max(1, div(n, 4)) # number of variables adjusted to be a multiple of 4 get_woods_ncon(; n::Integer = default_nvar, kwargs...) = 0 diff --git a/src/Meta/zangwil3.jl b/src/Meta/zangwil3.jl index 431eb6964..383a23ad2 100644 --- a/src/Meta/zangwil3.jl +++ b/src/Meta/zangwil3.jl @@ -16,6 +16,45 @@ zangwil3_meta = Dict( :is_feasible => missing, :defined_everywhere => missing, :origin => :unknown, + :implementation => :both, + :url => "https://bitbucket.org/optrove/sif/src/master/ZANGWIL3.SIF", + :notes => raw""" +Zangwill's problem in 3 variables. + +classification NLR2-AN-3-3 + + A. Cebola, Paraná 10/2016. +""", + :origin_notes => raw""" +problem 1 in + P.T. Boggs and J.W. Tolle, + "A strategy for global convergence in a sequential + quadratic programming algorithm", + SINUM 26(3), pp. 600-623, 1989. + +Problem from CUTE: https://github.com/mpf/Optimization-Test-Problems/blob/master/cute/zangwil3.mod + +problem 13 (p. 103) in +A.R. Buckley, +"Test functions for unconstrained minimization", +TR 1989CS-3, Mathematics, statistics and computing centre, +Dalhousie University, Halifax (CDN), 1989. + +SIF input: Ph. Toint, Dec 1989. +""", + :reference => raw""" +@article{BoggsTolle1989, + author = {Boggs, Paul T. and Tolle, Jon W.}, + title = {A Strategy for Global Convergence in a Sequential Quadratic Programming Algorithm}, + journal = {SIAM Journal on Numerical Analysis}, + year = {1989}, + volume = {26}, + number = {3}, + pages = {600--623}, + doi = {10.1137/0726036} +} +""", + :lib => "CUTEst:ZANGWIL3", ) get_zangwil3_nvar(; n::Integer = default_nvar, kwargs...) = 3 get_zangwil3_ncon(; n::Integer = default_nvar, kwargs...) = 3 diff --git a/src/OptimizationProblems.jl b/src/OptimizationProblems.jl index 7ea7b664e..b8ff6af9d 100644 --- a/src/OptimizationProblems.jl +++ b/src/OptimizationProblems.jl @@ -2,6 +2,21 @@ module OptimizationProblems using DataFrames +""" + @adjust_nvar_warn(problem_name, n_orig, n) + +Issue a warning if the number of variables was adjusted, showing both original and adjusted values. +""" +macro adjust_nvar_warn(problem_name, n_orig, n) + return quote + local _n_orig = $(esc(n_orig)) + local _n = $(esc(n)) + (_n == _n_orig) || @warn( + string($(esc(problem_name)), ": number of variables adjusted from ", _n_orig, " to ", _n) + ) + end +end + include("ADNLPProblems/ADNLPProblems.jl") include("PureJuMP/PureJuMP.jl") @@ -34,6 +49,12 @@ const cols_names = [ :is_feasible :defined_everywhere :origin + :implementation + :url + :notes + :origin_notes + :reference + :lib ] const types = [ @@ -54,6 +75,12 @@ const types = [ Union{Bool, Missing} Union{Bool, Missing} Symbol + Symbol + String + String + String + String + String ] """ @@ -81,6 +108,12 @@ The following keys are valid: - `is_feasible::Union{Bool, Missing}`: true if problem is feasible - `defined_everywhere::Union{Bool, Missing}`: true if the objective is define for all values of the variables - `origin::Symbol`: origin of the problem, in [:academic, :modelling, :real, :unknown] + - `implementation::Symbol`: takes the value :jump, :adnlpmodels or :both whether the problem is defined in PureJuMP, ADNLPProblems, or both + - `url::String`: URL where the problem can be found + - `notes::String`: any additional notes about the problem + - `origin_notes::String`: any additional notes about the origin of the problem + - `reference::String`: reference to the problem in bibtex format + - `lib::String`: comma-separated list of external test-set memberships in `"Collection:ID"` format (e.g. `"CUTEst:HS1, HS:1"`); empty string if none known """ const meta = DataFrame(cols_names .=> [Array{T}(undef, number_of_problems) for T in types]) @@ -88,4 +121,8 @@ for name in cols_names, i = 1:number_of_problems meta[!, name][i] = eval(Meta.parse("$(split(files[i], ".")[1])_meta"))[name] end +include("utils.jl") + +export export_bibtex + end # module diff --git a/src/PureJuMP/AMPGO02.jl b/src/PureJuMP/AMPGO02.jl index c10ef1eec..8553a7094 100644 --- a/src/PureJuMP/AMPGO02.jl +++ b/src/PureJuMP/AMPGO02.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 2 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO02 "Univariate multimodal minimization problem AMPGO02" diff --git a/src/PureJuMP/AMPGO03.jl b/src/PureJuMP/AMPGO03.jl index fbe607832..8c7d50736 100644 --- a/src/PureJuMP/AMPGO03.jl +++ b/src/PureJuMP/AMPGO03.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 3 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO03 "Univariate multimodal minimization problem AMPGO03" diff --git a/src/PureJuMP/AMPGO04.jl b/src/PureJuMP/AMPGO04.jl index b637c2c89..78ee05848 100644 --- a/src/PureJuMP/AMPGO04.jl +++ b/src/PureJuMP/AMPGO04.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 4 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO04 "Univariate multimodal minimization problem AMPGO04" diff --git a/src/PureJuMP/AMPGO05.jl b/src/PureJuMP/AMPGO05.jl index 2b772e770..f9d18cf4a 100644 --- a/src/PureJuMP/AMPGO05.jl +++ b/src/PureJuMP/AMPGO05.jl @@ -1,10 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 5 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 export AMPGO05 "Univariate multimodal minimization problem AMPGO05" diff --git a/src/PureJuMP/AMPGO06.jl b/src/PureJuMP/AMPGO06.jl index 06050e738..a611db7ee 100644 --- a/src/PureJuMP/AMPGO06.jl +++ b/src/PureJuMP/AMPGO06.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 6 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO06 "Univariate multimodal minimization problem AMPGO06" diff --git a/src/PureJuMP/AMPGO07.jl b/src/PureJuMP/AMPGO07.jl index 64ccbe1a1..9ae137a16 100644 --- a/src/PureJuMP/AMPGO07.jl +++ b/src/PureJuMP/AMPGO07.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 7 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO07 "Univariate multimodal minimization problem AMPGO07" diff --git a/src/PureJuMP/AMPGO08.jl b/src/PureJuMP/AMPGO08.jl index 9d17ed011..8979c369d 100644 --- a/src/PureJuMP/AMPGO08.jl +++ b/src/PureJuMP/AMPGO08.jl @@ -1,10 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 8 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 export AMPGO08 "Univariate multimodal minimization problem AMPGO08" diff --git a/src/PureJuMP/AMPGO09.jl b/src/PureJuMP/AMPGO09.jl index 67ad0ea96..49a9234e5 100644 --- a/src/PureJuMP/AMPGO09.jl +++ b/src/PureJuMP/AMPGO09.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 9 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO09 "Univariate multimodal minimization problem AMPGO09" diff --git a/src/PureJuMP/AMPGO10.jl b/src/PureJuMP/AMPGO10.jl index dcd69271a..68f0c8157 100644 --- a/src/PureJuMP/AMPGO10.jl +++ b/src/PureJuMP/AMPGO10.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 10 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO10 "Univariate multimodal minimization problem AMPGO10" diff --git a/src/PureJuMP/AMPGO11.jl b/src/PureJuMP/AMPGO11.jl index 2b8234a9a..62abd4f8d 100644 --- a/src/PureJuMP/AMPGO11.jl +++ b/src/PureJuMP/AMPGO11.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 11 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO11 "Univariate multimodal minimization problem AMPGO11" diff --git a/src/PureJuMP/AMPGO12.jl b/src/PureJuMP/AMPGO12.jl index 6006f113c..9e2f86632 100644 --- a/src/PureJuMP/AMPGO12.jl +++ b/src/PureJuMP/AMPGO12.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 12 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO12 "Univariate multimodal minimization problem AMPGO12" diff --git a/src/PureJuMP/AMPGO13.jl b/src/PureJuMP/AMPGO13.jl index 42160c983..74e59ce68 100644 --- a/src/PureJuMP/AMPGO13.jl +++ b/src/PureJuMP/AMPGO13.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 13 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO13 "Univariate multimodal minimization problem AMPGO13" diff --git a/src/PureJuMP/AMPGO14.jl b/src/PureJuMP/AMPGO14.jl index f1ed6ccde..422ae368f 100644 --- a/src/PureJuMP/AMPGO14.jl +++ b/src/PureJuMP/AMPGO14.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 14 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO14 "Univariate multimodal minimization problem AMPGO14" diff --git a/src/PureJuMP/AMPGO15.jl b/src/PureJuMP/AMPGO15.jl index 8cfa86d25..8e7f57c65 100644 --- a/src/PureJuMP/AMPGO15.jl +++ b/src/PureJuMP/AMPGO15.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 15 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO15 "Univariate multimodal minimization problem AMPGO15" diff --git a/src/PureJuMP/AMPGO18.jl b/src/PureJuMP/AMPGO18.jl index 0dfaf0ec2..98418fb02 100644 --- a/src/PureJuMP/AMPGO18.jl +++ b/src/PureJuMP/AMPGO18.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 18 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO18 "Univariate multimodal minimization problem AMPGO18" diff --git a/src/PureJuMP/AMPGO20.jl b/src/PureJuMP/AMPGO20.jl index f934724f9..3c217bbbb 100644 --- a/src/PureJuMP/AMPGO20.jl +++ b/src/PureJuMP/AMPGO20.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 20 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO20 "Univariate multimodal minimization problem AMPGO20" diff --git a/src/PureJuMP/AMPGO21.jl b/src/PureJuMP/AMPGO21.jl index 090614856..8bc05122c 100644 --- a/src/PureJuMP/AMPGO21.jl +++ b/src/PureJuMP/AMPGO21.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 21 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO21 "Univariate multimodal minimization problem AMPGO21" diff --git a/src/PureJuMP/AMPGO22.jl b/src/PureJuMP/AMPGO22.jl index 52ecf460d..6a90213ab 100644 --- a/src/PureJuMP/AMPGO22.jl +++ b/src/PureJuMP/AMPGO22.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem 22 in -# http://infinity77.net/global_optimization/test_functions_1d.html#d-test-functions -# Andrea Gavana -# -# S. Goyette, Sherbrooke 2016/2017 - export AMPGO22 "Univariate multimodal minimization problem AMPGO22" diff --git a/src/PureJuMP/BOX2.jl b/src/PureJuMP/BOX2.jl index 655cc7624..cc1f8fcd0 100644 --- a/src/PureJuMP/BOX2.jl +++ b/src/PureJuMP/BOX2.jl @@ -1,12 +1,3 @@ -# Box problem in 2 variables, obtained by fixing X3 = 1 in BOX2. - -# Source: Problem 11 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. - -# classification SXR2-AN-3-0 export BOX2 function BOX2(args...; n::Int = default_nvar, m::Int = 10, kwargs...) diff --git a/src/PureJuMP/BOX3.jl b/src/PureJuMP/BOX3.jl index 73eee73e2..1f75c252e 100644 --- a/src/PureJuMP/BOX3.jl +++ b/src/PureJuMP/BOX3.jl @@ -1,17 +1,3 @@ -# Source: problem 12 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# Source: Problem 12 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#BOX663 -# SIF input: Ph. Toint, Dec 1989. - -# classification SUR2-AN-3-0 export BOX3 function BOX3(args...; n::Int = default_nvar, m::Int = 2n, kwargs...) diff --git a/src/PureJuMP/Dus2_1.jl b/src/PureJuMP/Dus2_1.jl index 9af8c5a94..f5c916fcc 100644 --- a/src/PureJuMP/Dus2_1.jl +++ b/src/PureJuMP/Dus2_1.jl @@ -1,11 +1,3 @@ -# A one dimensional optimization problem -# -# Problem found in -# http://www.dmi.usherb.ca/~dussault/ROP630E17/ -# Jean_pierre Dussault -# -# S. Goyette, Sherbrooke 2016/2017 - export Dus2_1 "Univariate unimodal minimization problem Dus2_1" diff --git a/src/PureJuMP/Dus2_3.jl b/src/PureJuMP/Dus2_3.jl index d4fccea53..6e255f434 100644 --- a/src/PureJuMP/Dus2_3.jl +++ b/src/PureJuMP/Dus2_3.jl @@ -1,10 +1,3 @@ -# A one dimensional optimization problem -# -# Problem found in -# http://www.dmi.usherb.ca/~dussault/ROP630E17/ -# Jean_pierre Dussault -# -# S. Goyette, Sherbrooke 2016/2017 export Dus2_3 "Univariate unimodal minimization problem Dus2_3" diff --git a/src/PureJuMP/Dus2_9.jl b/src/PureJuMP/Dus2_9.jl index 5b0d04614..2139e962d 100644 --- a/src/PureJuMP/Dus2_9.jl +++ b/src/PureJuMP/Dus2_9.jl @@ -1,10 +1,3 @@ -# A one dimensional optimization problem -# -# Problem found in -# http://www.dmi.usherb.ca/~dussault/ROP630E17/ -# Jean_pierre Dussault -# -# S. Goyette, Sherbrooke 2016/2017 export Dus2_9 "Univariate multimodal minimization problem Dus2_9" diff --git a/src/PureJuMP/Duscube.jl b/src/PureJuMP/Duscube.jl index 321b27f84..77153c47c 100644 --- a/src/PureJuMP/Duscube.jl +++ b/src/PureJuMP/Duscube.jl @@ -1,10 +1,3 @@ -# A one dimensional optimization problem -# -# Problem found in -# http://www.dmi.usherb.ca/~dussault/ROP630E17/ -# Jean_pierre Dussault -# -# S. Goyette, Sherbrooke 2016/2017 export Duscube "Univariate multimodal minimization problem Duscube" diff --git a/src/PureJuMP/NZF1.jl b/src/PureJuMP/NZF1.jl index f0eb746c5..4cafbd73f 100644 --- a/src/PureJuMP/NZF1.jl +++ b/src/PureJuMP/NZF1.jl @@ -1,15 +1,10 @@ -# "Philippe Toint (private communication)" - -# classification SUR2-AN-V-0 - -# A. Montoison, Montreal, 05/2018. - export NZF1 function NZF1(args...; n::Int = default_nvar, kwargs...) - mod(n, 13) != 0 && @warn("NZF1: number of variables adjusted to be divisible by 13 and ≥ 26") + n_org = n nbis = max(2, div(n, 13)) n = 13 * nbis + @adjust_nvar_warn("NZF1", n_org, n) l = div(n, 13) diff --git a/src/PureJuMP/PureJuMP.jl b/src/PureJuMP/PureJuMP.jl index a855ee252..ae7418db0 100644 --- a/src/PureJuMP/PureJuMP.jl +++ b/src/PureJuMP/PureJuMP.jl @@ -19,6 +19,7 @@ function _ensure_data!(key::Symbol, relpath::AbstractString) end using JuMP, LinearAlgebra, SpecialFunctions +import ..OptimizationProblems: @adjust_nvar_warn path = dirname(@__FILE__) files = filter(x -> x[(end - 2):end] == ".jl", readdir(path)) diff --git a/src/PureJuMP/aircrfta.jl b/src/PureJuMP/aircrfta.jl index 8783a28ba..dec061cfc 100644 --- a/src/PureJuMP/aircrfta.jl +++ b/src/PureJuMP/aircrfta.jl @@ -11,13 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: Problem 9 in -# J.J. More',"A collection of nonlinear model problems" -# Proceedings of the AMS-SIAM Summer Seminar on the Computational -# Solution of Nonlinear Systems of Equations, Colorado, 1988. -# Argonne National Laboratory MCS-P60-0289, 1989. -# SIF input: Ph. Toint, Dec 1989. -# classification NOR2-RN-8-5 + export aircrfta function aircrfta(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/allinit.jl b/src/PureJuMP/allinit.jl index 86209562c..fdb5d3612 100644 --- a/src/PureJuMP/allinit.jl +++ b/src/PureJuMP/allinit.jl @@ -11,10 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: -# N. Gould, private communication. -# SIF input: Nick Gould, June 1990. -# classification OBR2-AY-4-0 + export allinit function allinit(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/allinitc.jl b/src/PureJuMP/allinitc.jl index 03e8cc09f..242fd4fee 100644 --- a/src/PureJuMP/allinitc.jl +++ b/src/PureJuMP/allinitc.jl @@ -11,10 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: -# N. Gould: private communication. -# SIF input: Nick Gould, June 1990. -# classification OOR2-AY-4-1 + export allinitc function allinitc(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/allinitu.jl b/src/PureJuMP/allinitu.jl index ead602591..ec67c8629 100644 --- a/src/PureJuMP/allinitu.jl +++ b/src/PureJuMP/allinitu.jl @@ -11,10 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: -# N. Gould, private communication. -# SIF input: Nick Gould, June 1990. -# classification OUR2-AY-4-0 + export allinitu function allinitu(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/alsotame.jl b/src/PureJuMP/alsotame.jl index 85382083f..4e11f6e48 100644 --- a/src/PureJuMP/alsotame.jl +++ b/src/PureJuMP/alsotame.jl @@ -11,12 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: -# A.R. Conn, N. Gould and Ph.L. Toint, -# "The LANCELOT User's Manual", -# Dept of Maths, FUNDP, 1991. -# SIF input: Ph. Toint, Jan 1991. -# classification OOR2-AN-2-1 + export alsotame function alsotame(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/argauss.jl b/src/PureJuMP/argauss.jl index 8db68534c..36aa2499e 100644 --- a/src/PureJuMP/argauss.jl +++ b/src/PureJuMP/argauss.jl @@ -11,13 +11,6 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: Problem 9 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# See also Buckley#28 -# SIF input: Ph. Toint, Dec 1989. -# classification NOR2-AN-3-15 export argauss function argauss(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/arglina.jl b/src/PureJuMP/arglina.jl index 7828211e4..ce43930f2 100644 --- a/src/PureJuMP/arglina.jl +++ b/src/PureJuMP/arglina.jl @@ -1,14 +1,3 @@ -# Linear function - full rank -# -# Source: Problem 32 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#80 (with different N and M) -# -# classification SUR2-AN-V-0 - export arglina "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/arglinb.jl b/src/PureJuMP/arglinb.jl index 7e30e0649..76a142a90 100644 --- a/src/PureJuMP/arglinb.jl +++ b/src/PureJuMP/arglinb.jl @@ -1,14 +1,3 @@ -# Linear function - rank 1 -# -# Source: Problem 33 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#93 (with different N and M) -# -# classification SUR2-AN-V-0 - export arglinb "Linear function with `n` parameters and `m` observations - rank 1" diff --git a/src/PureJuMP/arglinc.jl b/src/PureJuMP/arglinc.jl index 4bdee4b9a..523899cad 100644 --- a/src/PureJuMP/arglinc.jl +++ b/src/PureJuMP/arglinc.jl @@ -1,14 +1,3 @@ -# Linear function - rank 1, zero columns and rows -# -# Source: Problem 34 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#101 (with different N and M) -# -# classification SUR2-AN-V-0 - export arglinc "Linear function with `n` parameters and `m` observations - rank 1, zero columns and rows" diff --git a/src/PureJuMP/argtrig.jl b/src/PureJuMP/argtrig.jl index 8e70a5219..0e7ce7514 100644 --- a/src/PureJuMP/argtrig.jl +++ b/src/PureJuMP/argtrig.jl @@ -1,20 +1,3 @@ -# -# Variable dimension trigonometric problem -# This problem is a sum of n least-squares groups, each of -# which has n+1 nonlinear elements. Its Hessian matrix is dense. -# -# Source: problem 26 in -# J.J. More, B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 101 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification NOR2-AN-V-V - export argtrig "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/arwhead.jl b/src/PureJuMP/arwhead.jl index f7dcf712e..973f62291 100644 --- a/src/PureJuMP/arwhead.jl +++ b/src/PureJuMP/arwhead.jl @@ -1,29 +1,3 @@ -# Arrow head problem. -# A quartic problem whose Hessian is an arrow-head (downwards) with -# diagonal central part and border-width of 1. -# -# Source: -# Problem 55 in -# A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, -# Performance of a multifrontal scheme for partially separable -# optimization, -# Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. -# -# See also -# -# problem 1 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export arwhead "Arrow head model in size `n`" diff --git a/src/PureJuMP/auglag.jl b/src/PureJuMP/auglag.jl index 8508767f4..057c4f89d 100644 --- a/src/PureJuMP/auglag.jl +++ b/src/PureJuMP/auglag.jl @@ -1,14 +1,3 @@ -# Augmented Lagrangian function -# -# Problem 11 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# export auglag function auglag(; n::Int = default_nvar) diff --git a/src/PureJuMP/avion2.jl b/src/PureJuMP/avion2.jl index 2fa45437c..d450517f9 100644 --- a/src/PureJuMP/avion2.jl +++ b/src/PureJuMP/avion2.jl @@ -11,7 +11,6 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# classification OLR2-RN-49-15 export avion2 function avion2(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/bard.jl b/src/PureJuMP/bard.jl index cfe0e4ec9..17667c3f1 100644 --- a/src/PureJuMP/bard.jl +++ b/src/PureJuMP/bard.jl @@ -1,16 +1,3 @@ -# Bard problem in 3 variables. -# This function is a nonlinear least squares with 15 groups. -# Each group has a linear and a nonlinear element. -# -# Source: Problem 8 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#16 -# -# classification SUR2-AN-3-0 - export bard "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/bdqrtic.jl b/src/PureJuMP/bdqrtic.jl index 12868389c..785ed2183 100644 --- a/src/PureJuMP/bdqrtic.jl +++ b/src/PureJuMP/bdqrtic.jl @@ -1,27 +1,3 @@ -# A quartic with a banded Hessian of bandwidth 9 -# -# Source: -# Problem 61 in -# A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, -# Performance of a multifrontal scheme for partially separable -# optimization, -# Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. -# -# See also -# -# problem 2 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export bdqrtic "Banded quartic model in size `n`" diff --git a/src/PureJuMP/beale.jl b/src/PureJuMP/beale.jl index 13b7eff7e..dfe662f93 100644 --- a/src/PureJuMP/beale.jl +++ b/src/PureJuMP/beale.jl @@ -1,15 +1,3 @@ -# Source: Problem 5 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#89. -# SIF input: Ph. Toint, Dec 1989. -# -# classification SUR2-AN-2-0 -# -# A. Cebola, Curitiba 10/2016. - export beale "Beale Model" diff --git a/src/PureJuMP/bearing.jl b/src/PureJuMP/bearing.jl index 86a3d47bc..98c485279 100644 --- a/src/PureJuMP/bearing.jl +++ b/src/PureJuMP/bearing.jl @@ -1,19 +1,3 @@ -# Given observations of ns stages of a bearing species over n timesteps, -# minimize the loss between the observation and the computed law of paraneters : growth, mortality and number of specimens (g,m,x) - -# This is problem 16 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - -# Journal bearing problem -# Michael Merritt - Summer 2000 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export bearing function bearing( @@ -27,6 +11,9 @@ function bearing( # nx > 0 # grid points in 1st direction # ny > 0 # grid points in 2nd direction + nx = max(1, nx) + ny = max(1, ny) + @adjust_nvar_warn("bearing", n, (nx + 2) * (ny + 2)) b = 10 # grid is (0,2*pi)x(0,2*b) e = 0.1 # eccentricity diff --git a/src/PureJuMP/bennett5.jl b/src/PureJuMP/bennett5.jl index 5e6315cb2..8dd367acd 100644 --- a/src/PureJuMP/bennett5.jl +++ b/src/PureJuMP/bennett5.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/bennett5.dat - -NIST/ITL StRD -Dataset Name: Bennett5 (Bennett5.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 214) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - superconductivity magnetization modeling. The - response variable is magnetism, and the predictor - variable is the log of time in minutes. - -Reference: Bennett, L., L. Swartzendruber, and H. Brown, - NIST (1994). - Superconductivity Magnetization Modeling. - -Data: 1 Response Variable (y = magnetism) - 1 Predictor Variable (x = log[time]) - 154 Observations - Higher Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 3 Parameters (b1 to b3) - - y = b1 * (b2+x)**(-1/b3) + e -=# -# T. Migot, Montreal, 2023. - export bennett5 function bennett5(args...; kwargs...) diff --git a/src/PureJuMP/biggs5.jl b/src/PureJuMP/biggs5.jl index 5234eb0f9..58ae00d27 100644 --- a/src/PureJuMP/biggs5.jl +++ b/src/PureJuMP/biggs5.jl @@ -1,18 +1,3 @@ -# Biggs problem in 5 variables. -# This function is a nonlinear least squares with 13 groups. It is a -# variation on the biggs6 problem where the 6-th variable is fixed to 3. -# -# Source: Inspited by problem 18 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 74 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification SXR2-AN-6-0 export biggs5 function biggs5(args...; n::Int = default_nvar, m::Int = 13, kwargs...) diff --git a/src/PureJuMP/biggs6.jl b/src/PureJuMP/biggs6.jl index 7ad915b3d..3297fd9ef 100644 --- a/src/PureJuMP/biggs6.jl +++ b/src/PureJuMP/biggs6.jl @@ -1,15 +1,3 @@ -# Source: problem 18 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# Source: Problem 21 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. - -# classification SUR2-AN-6-0 export biggs6 function biggs6(args...; n::Int = default_nvar, m::Int = 13, kwargs...) diff --git a/src/PureJuMP/booth.jl b/src/PureJuMP/booth.jl index 009312e4e..99b442b15 100644 --- a/src/PureJuMP/booth.jl +++ b/src/PureJuMP/booth.jl @@ -11,13 +11,7 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: Problem 36 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# SIF input: Ph. Toint, Dec 1989. -# classification NLR2-AN-2-2 + export booth function booth(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/boundary.jl b/src/PureJuMP/boundary.jl index f745b1e1e..f6445b5c0 100644 --- a/src/PureJuMP/boundary.jl +++ b/src/PureJuMP/boundary.jl @@ -1,13 +1,3 @@ -# Discrete boundary value problem -# -# Problem 14 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export boundary function boundary(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/boxbod.jl b/src/PureJuMP/boxbod.jl index 2ddf9aa12..02cf3bc13 100644 --- a/src/PureJuMP/boxbod.jl +++ b/src/PureJuMP/boxbod.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/boxbod.dat - -NIST/ITL StRD -Dataset Name: BoxBOD (BoxBOD.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 66) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are described in detail in Box, Hunter and - Hunter (1978). The response variable is biochemical - oxygen demand (BOD) in mg/l, and the predictor - variable is incubation time in days. - -Reference: Box, G. P., W. G. Hunter, and J. S. Hunter (1978). - Statistics for Experimenters. - New York, NY: Wiley, pp. 483-487. - -Data: 1 Response (y = biochemical oxygen demand) - 1 Predictor (x = incubation time) - 6 Observations - Higher Level of Difficulty - Observed Data - -Model: Exponential Class - 2 Parameters (b1 and b2) - - y = b1*(1-exp[-b2*x]) + e -=# -# T. Migot, Montreal, 2023. - export boxbod function boxbod(args...; kwargs...) diff --git a/src/PureJuMP/bqp1var.jl b/src/PureJuMP/bqp1var.jl index e9def368c..a9bbfe1bf 100644 --- a/src/PureJuMP/bqp1var.jl +++ b/src/PureJuMP/bqp1var.jl @@ -11,9 +11,6 @@ # granted, provided that the above copyright notice appear in all # copies and that the copyright notice and this # permission notice appear in all supporting documentation. -# Source: a one variable box-constrained quadratic -# SIF input: Nick Gould, March 1992 -# classification QBR2-AN-1-0 export bqp1var function bqp1var(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/brownal.jl b/src/PureJuMP/brownal.jl index 31d9ddb8c..821a880fb 100644 --- a/src/PureJuMP/brownal.jl +++ b/src/PureJuMP/brownal.jl @@ -1,16 +1,3 @@ -# The Brown almost linear problem in variable dimension. This is a nonlinear -# least-squares problems with n groups. -# -# Source: Problem 27 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Alsso problem 79 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# export brownal "Brownbs Model" diff --git a/src/PureJuMP/brownbs.jl b/src/PureJuMP/brownbs.jl index 9b7268582..3ad46b357 100644 --- a/src/PureJuMP/brownbs.jl +++ b/src/PureJuMP/brownbs.jl @@ -1,15 +1,3 @@ -# Source: Problem 4 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#25 -# SIF input: Ph. Toint, Dec 1989. -# -# classification SUR2-AN-2-0 -# -# A. Cebola, Curitiba 10/2016. - export brownbs "Brownbs Model" diff --git a/src/PureJuMP/brownden.jl b/src/PureJuMP/brownden.jl index 24cba0fd5..54449030c 100644 --- a/src/PureJuMP/brownden.jl +++ b/src/PureJuMP/brownden.jl @@ -1,14 +1,3 @@ -# Brown and Dennis function -# -# Source: Problem 16 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#30 -# -# classification SUR2-AN-4-0 - export brownden "Brown and Dennis function" diff --git a/src/PureJuMP/browngen1.jl b/src/PureJuMP/browngen1.jl index a2af8afa1..62d86f519 100644 --- a/src/PureJuMP/browngen1.jl +++ b/src/PureJuMP/browngen1.jl @@ -1,13 +1,3 @@ -# Generalization of the Brown function 1 -# -# Problem 12 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export browngen1 function browngen1(; n::Int = default_nvar) diff --git a/src/PureJuMP/browngen2.jl b/src/PureJuMP/browngen2.jl index d779cc6a5..3deec5efa 100644 --- a/src/PureJuMP/browngen2.jl +++ b/src/PureJuMP/browngen2.jl @@ -1,13 +1,3 @@ -# Generalization of the Brown function 2 -# -# Problem 13 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export browngen2 function browngen2(; n::Int = default_nvar) diff --git a/src/PureJuMP/broyden3d.jl b/src/PureJuMP/broyden3d.jl index 169e0fee9..d3e7964df 100644 --- a/src/PureJuMP/broyden3d.jl +++ b/src/PureJuMP/broyden3d.jl @@ -1,16 +1,3 @@ -# Broyden tridiagonal problem in variable dimension. This is a nonlinear -# least-squares problem with n groups. -# -# Source: Problem 30 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 78 in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# export broyden3d function broyden3d(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/broyden7d.jl b/src/PureJuMP/broyden7d.jl index 60c8d49a6..103b450c0 100644 --- a/src/PureJuMP/broyden7d.jl +++ b/src/PureJuMP/broyden7d.jl @@ -1,13 +1,3 @@ -# Seven diagonal generalization of the Broyden tridiagonal function -# -# Problem 7 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export broyden7d function broyden7d(; n::Int = default_nvar) diff --git a/src/PureJuMP/broydn7d.jl b/src/PureJuMP/broydn7d.jl index 5778efbcc..a9233beb4 100644 --- a/src/PureJuMP/broydn7d.jl +++ b/src/PureJuMP/broydn7d.jl @@ -1,54 +1,11 @@ -# A seven diagonal variant of the Broyden tridiagonal system, -# featuring a band far away from the diagonal. -# -# Source: -# Problem 3.4 in -# Ph. L. Toint, -# Some numerical results using a sparse matrix updating formula in -# unconstrained optimization, -# Mathematics of Computation, vol. 32(114), pp. 839-852, 1978. -# http://dx.doi.org/10.1090/S0025-5718-1978-0483452-7 -# -# From the paper, -# -# "This function was built from a nonlinear system of equations -# suggested originally by Broyden ..." -# -# The system in question is described in -# -# L. K. Schubert, -# Modification of a quasi-Newton method for nonlinear equations -# with a sparse Jacobian, -# Mathematics of Computation, vol. 24, pp. 27-30, 1970. -# http://dx.doi.org/10.1090/S0025-5718-1970-0258276-9#sthash.yOkQUwXA.dpuf -# -# See also, with a slight variation in the formulation, -# -# problem 3 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# See also Buckley#84 -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - -# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper -# (See issue #36) - export broydn7d "Broyden 7-diagonal model in size `n`" function broydn7d(args...; n::Int = default_nvar, p::Float64 = 7 / 3, kwargs...) - mod(n, 2) > 0 && @warn("broydn7d: number of variables adjusted to be even") + n_org = n n2 = max(1, div(n, 2)) n = 2 * n2 + @adjust_nvar_warn("broydn7d", n_org, n) nlp = Model() diff --git a/src/PureJuMP/brybnd.jl b/src/PureJuMP/brybnd.jl index 309d58f6a..d3bfd8a80 100644 --- a/src/PureJuMP/brybnd.jl +++ b/src/PureJuMP/brybnd.jl @@ -1,45 +1,3 @@ -# Broyden banded system of nonlinear equations, considered in the -# least square sense. -# -# Source: -# problem 31 in -# J. J. Moré, B. S. Garbow and K. E. Hillstrom, -# Testing Unconstrained Optimization Software, -# ACM Transactions on Mathematical Software, -# vol. 7(1), pp. 17-41, 1981. -# http://dx.doi.org/10.1145/355934.355936 -# -# See also Buckley#73 (p. 41) and Toint#18 -# -# The system in question is described in -# -# C. G. Broyden, -# A class of methods for solving nonlinear simultaneous -# equations, -# Mathematics of Computation, vol. 19, 577-593, 1965. -# http://dx.doi.org/10.1090/S0025-5718-1965-0198670-6#sthash.I3Dmi8yu.dpuf -# -# See also -# -# problem 4 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# Moré, Garbow and Hillstrom leave ml and mu as parameters. -# Luksan, Matonoha and Vlcek do not. -# -# classification SUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - -# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper -# (See issue #36) - export brybnd "Broyden banded model in size `n`" diff --git a/src/PureJuMP/bt1.jl b/src/PureJuMP/bt1.jl index f6bdcd6eb..47d381002 100644 --- a/src/PureJuMP/bt1.jl +++ b/src/PureJuMP/bt1.jl @@ -1,15 +1,3 @@ -# Source: problem 13 (p. 103) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# Problem from CUTE: https://github.com/mpf/Optimization-Test-Problems/blob/master/cute/bt1.mod -# -# classification QQR2-AN-2-1 -# -# A. Cebola, Curitiba 10/2016. - export bt1 "BT1 Model" diff --git a/src/PureJuMP/camshape.jl b/src/PureJuMP/camshape.jl index 9e4d1cc62..a14a4ccbe 100644 --- a/src/PureJuMP/camshape.jl +++ b/src/PureJuMP/camshape.jl @@ -1,13 +1,3 @@ -# Maximize the area of the valve opening for one rotation of a convex cam -# with constraints on the curvature and on the radius of the cam - -# This is problem 3 in the COPS (Version 3) collection of -# E. Dolan and J. More -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification LOR2-AN-V-V - export camshape function camshape(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/catenary.jl b/src/PureJuMP/catenary.jl index 4da81b57f..ef16ca8f1 100644 --- a/src/PureJuMP/catenary.jl +++ b/src/PureJuMP/catenary.jl @@ -1,26 +1,10 @@ -# The classical problem of the hanging catenary. Here the catenary consists -# of N+1 beams of length BL, with the first beam fixed at the origin and -# the final bean fixed at a fraction FRACT of the total length of all -# beams. -# -# The problem is non-convex. -# -# Source: -# K. Veselic, -# "De forma catenarum in campo gravitatis pendentium", -# Klasicna Gimnazija u Zagrebu, Zagreb, 1987. -# -# classification LQR2-AY-V-V -# -# M. Gollier, Montréal, 05/2023 - export catenary function catenary(args...; n::Int = default_nvar, Bl = 1.0, FRACT = 0.6, kwargs...) - (n % 3 == 0) || @warn("catenary: number of variables adjusted to be a multiple of 3") + n_org = n n = 3 * max(1, div(n, 3)) - (n < 6) || @warn("catenary: number of variables adjusted to be greater or equal to 6") n = max(n, 6) + @adjust_nvar_warn("catenary", n_org, n) ## Model Parameters diff --git a/src/PureJuMP/catmix.jl b/src/PureJuMP/catmix.jl index 580f2db7c..98a9e2def 100644 --- a/src/PureJuMP/catmix.jl +++ b/src/PureJuMP/catmix.jl @@ -1,13 +1,9 @@ -# Catalyst Mixing Problem -# Collocation formulation -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export catmix function catmix(args...; n::Int = default_nvar, kwargs...) ne = 2 nc = 3 + @adjust_nvar_warn("catmix", n, 23 * n + 2) tf = 1 h = tf / n # Final time diff --git a/src/PureJuMP/chain.jl b/src/PureJuMP/chain.jl index befb5f6cd..6ab2951e1 100644 --- a/src/PureJuMP/chain.jl +++ b/src/PureJuMP/chain.jl @@ -1,19 +1,8 @@ -# Hanging Chain - -# Find the chain (of uniform density) of length L suspended between two points with minimal -# potential energy. - -# This is problem 4 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - export chain function chain(args...; n::Int = default_nvar, kwargs...) nh = max(2, div(n - 4, 4)) + @adjust_nvar_warn("chain", n, 4 * nh + 4) L = 4 a = 1 diff --git a/src/PureJuMP/chainwoo.jl b/src/PureJuMP/chainwoo.jl index 0fc8cb893..a27663593 100644 --- a/src/PureJuMP/chainwoo.jl +++ b/src/PureJuMP/chainwoo.jl @@ -1,42 +1,10 @@ -# Source: problem 8 in -# A. R. Conn, N. I. M. Gould and Ph. L. Toint, -# Testing a class of methods for solving minimization -# problems with simple bounds on their variables, -# Mathematics of Computation 50, p 399-430, 1988. -# -# See also -# -# problem 5 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - -# Difference with the following is the initial guess. -# -# Problem 2 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# - export chainwoo "The chained Woods function in size `n`, a variant on the Woods function" function chainwoo(args...; n::Int = default_nvar, kwargs...) - (n % 4 == 0) || @warn("chainwoo: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("chainwoo", n_org, n) nlp = Model() diff --git a/src/PureJuMP/channel.jl b/src/PureJuMP/channel.jl index cce634660..cbfcec9e3 100644 --- a/src/PureJuMP/channel.jl +++ b/src/PureJuMP/channel.jl @@ -1,18 +1,8 @@ -# Flow in a Channel - -# Analyze the flow of a fluid during injection into a long vertical channel - -# This is problem 7 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - export channel function channel(args...; n::Int = default_nvar, kwargs...) nh = max(2, div(n, 8)) + @adjust_nvar_warn("channel", n, 8 * nh) nc = 4 nd = 4 diff --git a/src/PureJuMP/chnrosnb_mod.jl b/src/PureJuMP/chnrosnb_mod.jl index 8abab9b24..008274dd8 100644 --- a/src/PureJuMP/chnrosnb_mod.jl +++ b/src/PureJuMP/chnrosnb_mod.jl @@ -1,18 +1,3 @@ -# Chaineded Rosenbrock - modified function. - -# problem 27 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# J,-P, Dussault, Rennes 09/2015. - export chnrosnb_mod function chnrosnb_mod(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/chwirut1.jl b/src/PureJuMP/chwirut1.jl index aa9d4478d..cccaefc4f 100644 --- a/src/PureJuMP/chwirut1.jl +++ b/src/PureJuMP/chwirut1.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/chwirut1.dat - -NIST/ITL StRD -Dataset Name: Chwirut1 (Chwirut1.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 274) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - ultrasonic calibration. The response variable is - ultrasonic response, and the predictor variable is - metal distance. - -Reference: Chwirut, D., NIST (197?). - Ultrasonic Reference Block Study. - -Data: 1 Response Variable (y = ultrasonic response) - 1 Predictor Variable (x = metal distance) - 214 Observations - Lower Level of Difficulty - Observed Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - y = exp[-b1*x]/(b2+b3*x) + e -=# -# T. Migot, Montreal, 2023. - export chwirut1 function chwirut1(args...; kwargs...) diff --git a/src/PureJuMP/chwirut2.jl b/src/PureJuMP/chwirut2.jl index cab1727df..a236c002f 100644 --- a/src/PureJuMP/chwirut2.jl +++ b/src/PureJuMP/chwirut2.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/chwirut2.dat - -NIST/ITL StRD -Dataset Name: Chwirut2 (Chwirut2.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 114) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - ultrasonic calibration. The response variable is - ultrasonic response, and the predictor variable is - metal distance. - -Reference: Chwirut, D., NIST (197?). - Ultrasonic Reference Block Study. - -Data: 1 Response (y = ultrasonic response) - 1 Predictor (x = metal distance) - 54 Observations - Lower Level of Difficulty - Observed Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - y = exp(-b1*x)/(b2+b3*x) + e - -=# -# T. Migot, Montreal, 2023. - export chwirut2 function chwirut2(args...; kwargs...) diff --git a/src/PureJuMP/cliff.jl b/src/PureJuMP/cliff.jl index 141b1016a..10cf9866d 100644 --- a/src/PureJuMP/cliff.jl +++ b/src/PureJuMP/cliff.jl @@ -1,13 +1,3 @@ -# The "cliff problem" in 2 variables -# -# Source: problem 206 (p. 46) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification OUR2-AN-2-0 - export cliff "The 'cliff problem' in 2 variables" diff --git a/src/PureJuMP/clnlbeam.jl b/src/PureJuMP/clnlbeam.jl index 3849c7fe8..89d007019 100644 --- a/src/PureJuMP/clnlbeam.jl +++ b/src/PureJuMP/clnlbeam.jl @@ -1,20 +1,13 @@ -#= -The clnlbeam problem -https://jump.dev/JuMP.jl/stable/tutorials/nonlinear/clnlbeam/ +# Based on an AMPL model by Hande Y. Benson +# Copyright (C) 2001 Princeton University All Rights Reserved +# Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that the copyright notice and this permission notice appear in all supporting documentation. -Based on an AMPL model by Hande Y. Benson - -Copyright (C) 2001 Princeton University All Rights Reserved - -Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that the copyright notice and this permission notice appear in all supporting documentation. - -Source: H. Maurer and H.D. Mittelman, "The non-linear beam via optimal control with bound state variables", Optimal Control Applications and Methods 12, pp. 19-31, 1991. -=# export clnlbeam "The clnlbeam problem in size `n`" function clnlbeam(args...; n::Int = default_nvar, kwargs...) N = div(n - 3, 3) + @adjust_nvar_warn("clnlbeam", n, 3 * N + 3) h = 1 / N alpha = 350 model = Model() diff --git a/src/PureJuMP/clplatea.jl b/src/PureJuMP/clplatea.jl index 011e0db9a..91d044ed2 100644 --- a/src/PureJuMP/clplatea.jl +++ b/src/PureJuMP/clplatea.jl @@ -1,34 +1,11 @@ -# The clamped plate problem (Strang, Nocedal, Dax). -# The problem comes from the discretization the following problem -# in mechanics: a plate is clamped on one edge and loaded on the -# opposite side. The plate is the unit square. -# -# In this version of the problem, the weight wght is entirely put on the -# upper right corner of the plate. -# -# The plate is clamped on its lower edge, by fixing the -# corresponding variables to zero. -# -# Source: -# J. Nocedal, -# "Solving large nonlinear systems of equations arising in mechanics", -# Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, -# pp. 132-141, 1981. -# -# classification OXR2-MN-V-0 -# -# p is the number of points in one side of the unit square -# The number of variables is p*p, of which (p-1)*(p-1) are free. -# -# Fixed variables have been eliminated from the objective function. - export clplatea "The clamped plate problem (Strang, Nocedal, Dax)." function clplatea(args...; n::Int = default_nvar, wght::Float64 = -0.1, kwargs...) + n_org = n p = floor(Int, sqrt(n)) - p * p != n && @warn("clplatea: number of variables adjusted from $n down to $(p*p)") n = p * p + @adjust_nvar_warn("clplatea", n_org, n) nlp = Model() diff --git a/src/PureJuMP/clplateb.jl b/src/PureJuMP/clplateb.jl index 575e9fe5d..0e66732ea 100644 --- a/src/PureJuMP/clplateb.jl +++ b/src/PureJuMP/clplateb.jl @@ -1,35 +1,11 @@ -# The clamped plate problem (Strang, Nocedal, Dax) -# The problem comes from the discretization the following problem -# in mechanics: a plate is clamped on one edge and loaded on the -# opposite side. The plate is the unit square. -# -# The plate is clamped on its lower edge, by fixing the -# corresponding variables to zero. -# -# In this version of the problem, the weight wght is distributed -# equally along the upper edge, introducing a symmetry with respect -# to the vertical axis. -# -# Source: -# J. Nocedal, -# "Solving large nonlinear systems of equations arising in mechanics", -# Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, -# pp. 132-141, 1981. -# -# classification OXR2-MN-V-0 -# -# p is the number of points in one side of the unit square -# The number of variables is p*p, of which (p-1)*(p-1) are free. -# -# Fixed variables have been eliminated from the objective function. - export clplateb "The clamped plate problem (Strang, Nocedal, Dax)." function clplateb(args...; n::Int = default_nvar, wght::Float64 = -0.1, kwargs...) + n_org = n p = floor(Int, sqrt(n)) - p * p != n && @warn("clplateb: number of variables adjusted from $n down to $(p*p)") n = p * p + @adjust_nvar_warn("clplateb", n_org, n) nlp = Model() diff --git a/src/PureJuMP/clplatec.jl b/src/PureJuMP/clplatec.jl index 274feda44..cd3e50a97 100644 --- a/src/PureJuMP/clplatec.jl +++ b/src/PureJuMP/clplatec.jl @@ -1,27 +1,3 @@ -# The clamped plate problem (Strang, Nocedal, Dax). -# The problem comes from the discretization the following problem -# in mechanics: a plate is clamped on one edge and loaded on the -# opposite side. The plate is the unit square. -# -# In this version of the problem, part of the weight wght is put on the -# upper right corner of the plate, and the rest on the upper left corner. -# -# The plate is clamped on its lower edge, by fixing the -# corresponding variables to zero. -# -# Source: -# J. Nocedal, -# "Solving large nonlinear systems of equations arising in mechanics", -# Proceedings of the Cocoyoc Numerical Analysis Conference, Mexico, -# pp. 132-141, 1981. -# -# classification OXR2-MN-V-0 -# -# p is the number of points in one side of the unit square -# The number of variables is p*p, of which (p-1)*(p-1) are free. -# -# Fixed variables have been eliminated from the objective function. - export clplatec "The clamped plate problem (Strang, Nocedal, Dax)." @@ -33,9 +9,10 @@ function clplatec( l::Float64 = 0.01, kwargs..., ) + n_org = n p = floor(Int, sqrt(n)) - p * p != n && @warn("clplatec: number of variables adjusted from $n down to $(p*p)") n = p * p + @adjust_nvar_warn("clplatec", n_org, n) nlp = Model() diff --git a/src/PureJuMP/controlinvestment.jl b/src/PureJuMP/controlinvestment.jl index 7a8d74a7f..0d5acaf89 100644 --- a/src/PureJuMP/controlinvestment.jl +++ b/src/PureJuMP/controlinvestment.jl @@ -1,6 +1,3 @@ -# Example 5.3, Dominique Orban, Computation Optimization and Control lecture notes at Polytechnique Montréal. -# This is a simple investment problem in optimistic market. - export controlinvestment function controlinvestment(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/cosine.jl b/src/PureJuMP/cosine.jl index a96bfbb42..b14f8edcc 100644 --- a/src/PureJuMP/cosine.jl +++ b/src/PureJuMP/cosine.jl @@ -1,18 +1,3 @@ -# The cosine function. -# -# Source: problem 6 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export cosine "The cosine function in size `n`" diff --git a/src/PureJuMP/cragglvy.jl b/src/PureJuMP/cragglvy.jl index b17027fdd..70e1d65e5 100644 --- a/src/PureJuMP/cragglvy.jl +++ b/src/PureJuMP/cragglvy.jl @@ -1,27 +1,3 @@ -# Extended Cragg and Levy problem. -# The Hessian matrix is 7-diagonal. -# -# Source: problem 32 in -# Ph. L. Toint, -# Test problems for partially separable optimization and results -# for the routine PSPMIN, -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. -# -# See also -# -# problem 7 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AY-V-0 -# -# D. Orban, Montreal, 08/2015. - export cragglvy "The extented Cragg and Levy function in size `n`" diff --git a/src/PureJuMP/cragglvy2.jl b/src/PureJuMP/cragglvy2.jl index 366743e5f..0777fdae9 100644 --- a/src/PureJuMP/cragglvy2.jl +++ b/src/PureJuMP/cragglvy2.jl @@ -1,25 +1,3 @@ -# Chained Cragg and Levy function -# -# This is similar to cragglvy but the quartic term differs. -# -# Problem 17 in -# Conn, A.R., Gould, N.I.M, Toint, P., -# Testing a Class of Methods for Solving -# Minimization Problems with Simple Bounds on the Variables, -# Mathematics of Computation, -# Vol. 50, pp. 399-430, 1988. - -# -# Problem 4 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# - export cragglvy2 "The extented Cragg and Levy function in size `n`" diff --git a/src/PureJuMP/curly.jl b/src/PureJuMP/curly.jl index bb3719a20..cad02b2da 100644 --- a/src/PureJuMP/curly.jl +++ b/src/PureJuMP/curly.jl @@ -1,25 +1,3 @@ -# A banded function with semi-bandwidth b and -# negative curvature near the starting point. -# -# Note that the initial point in the reference below is erroneous. -# In this model, we use the starting point specified in the -# original SIF model, part of the CUTE collection. -# -# See also -# -# problems 8, 9, 10 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export curly, curly10, curly20, curly30 "Curly function in size `n` with semi-bandwidth `b`" diff --git a/src/PureJuMP/danwood.jl b/src/PureJuMP/danwood.jl index 37bb05e88..72f3237fb 100644 --- a/src/PureJuMP/danwood.jl +++ b/src/PureJuMP/danwood.jl @@ -1,43 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/danwood.dat - -NIST/ITL StRD -Dataset Name: DanWood (DanWood.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 66) - -Procedure: Nonlinear Least Squares Regression - -Description: These data and model are described in Daniel and Wood - (1980), and originally published in E.S.Keeping, - "Introduction to Statistical Inference," Van Nostrand - Company, Princeton, NJ, 1962, p. 354. The response - variable is energy radieted from a carbon filament - lamp per cm**2 per second, and the predictor variable - is the absolute temperature of the filament in 1000 - degrees Kelvin. - -Reference: Daniel, C. and F. S. Wood (1980). - Fitting Equations to Data, Second Edition. - New York, NY: John Wiley and Sons, pp. 428-431. - -Data: 1 Response Variable (y = energy) - 1 Predictor Variable (x = temperature) - 6 Observations - Lower Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 2 Parameters (b1 and b2) - - y = b1*x**b2 + e -=# -# T. Migot, Montreal, 2023. - export danwood function danwood(args...; kwargs...) diff --git a/src/PureJuMP/dixmaan_efgh.jl b/src/PureJuMP/dixmaan_efgh.jl index 39e2c5976..cd3b16ad9 100644 --- a/src/PureJuMP/dixmaan_efgh.jl +++ b/src/PureJuMP/dixmaan_efgh.jl @@ -1,26 +1,3 @@ -# The Dixon-Maany test problem (version E by default) -# -# Source: -# L. C. W. Dixon and Z. Maany, -# A family of test problems with sparse Hessians for unconstrained -# optimization, -# TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. -# -# See also -# -# problems 11, 12, 13, 14 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export dixmaane, dixmaanf, dixmaang, dixmaanh "Dixon-Maany function in size `n` (version E by default)" @@ -33,9 +10,10 @@ function dixmaane( δ::Float64 = 0.125, kwargs..., ) - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaane", n_org, n) nlp = Model() diff --git a/src/PureJuMP/dixmaan_ijkl.jl b/src/PureJuMP/dixmaan_ijkl.jl index 11f291714..a5ad34596 100644 --- a/src/PureJuMP/dixmaan_ijkl.jl +++ b/src/PureJuMP/dixmaan_ijkl.jl @@ -1,26 +1,3 @@ -# The Dixon-Maany test problem (version I by default) -# -# Source: -# L. C. W. Dixon and Z. Maany, -# A family of test problems with sparse Hessians for unconstrained -# optimization, -# TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. -# -# See also -# -# problems 15, 16, 17, 18 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export dixmaani, dixmaanj, dixmaank, dixmaanl "Dixon-Maany function in size `n` (version I by default)" @@ -33,9 +10,10 @@ function dixmaani( δ::Float64 = 0.125, kwargs..., ) - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaani", n_org, n) nlp = Model() diff --git a/src/PureJuMP/dixmaan_mnop.jl b/src/PureJuMP/dixmaan_mnop.jl index c4537bcd5..5f54f768b 100644 --- a/src/PureJuMP/dixmaan_mnop.jl +++ b/src/PureJuMP/dixmaan_mnop.jl @@ -1,24 +1,3 @@ -# The Dixon-Maany test problem (version M by default) -# -# Source: -# L. C. W. Dixon and Z. Maany, -# A family of test problems with sparse Hessians for unconstrained -# optimization, -# TR 206, Numerical Optimization Centre, Hatfield Polytechnic, 1988. -# -# See also -# -# problems 19, 20, 21, 22 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# D. Orban, Montreal, 08/2015. - export dixmaanm, dixmaann, dixmaano, dixmaanp "Dixon-Maany function in size `n` (version M by default)" @@ -31,9 +10,10 @@ function dixmaanm( δ::Float64 = 0.125, kwargs..., ) - (n % 3 == 0) || @warn("dixmaan: number of variables adjusted to be a multiple of 3") + n_org = n m = max(1, div(n, 3)) n = 3 * m + @adjust_nvar_warn("dixmaanm", n_org, n) nlp = Model() diff --git a/src/PureJuMP/dixon3dq.jl b/src/PureJuMP/dixon3dq.jl index 6b7ee3b70..18ac71a5d 100644 --- a/src/PureJuMP/dixon3dq.jl +++ b/src/PureJuMP/dixon3dq.jl @@ -1,13 +1,3 @@ -# Dixon's tridiagonal quadratic. -# -# Source: problem 156 (p. 51) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification QUR2-AN-V-0 - export dixon3dq "Dixon's tridiagonal quadratic." diff --git a/src/PureJuMP/dqdrtic.jl b/src/PureJuMP/dqdrtic.jl index 8d611f6a0..9a36a16eb 100644 --- a/src/PureJuMP/dqdrtic.jl +++ b/src/PureJuMP/dqdrtic.jl @@ -1,13 +1,3 @@ -# Diagonal quadratic problem -# -# Source: problem 22 in -# Ph. L. Toint, -# "Test problems for partially separable optimization and results -# for the routine PSPMIN", -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. -# -# classification QUR2-AN-V-0 - export dqdrtic "Diagonal quadratic problem" diff --git a/src/PureJuMP/dqrtic.jl b/src/PureJuMP/dqrtic.jl index 4efd23fd7..0702bc7ee 100644 --- a/src/PureJuMP/dqrtic.jl +++ b/src/PureJuMP/dqrtic.jl @@ -1,26 +1,3 @@ -# Variable dimension diagonal quartic problem. -# -# Source: problem 157 (p. 87) in -# A.R. Buckley, -# Test functions for unconstrained minimization, -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# See also -# -# problem 23 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export dqrtic "Diagonal quartic model in size `n`" diff --git a/src/PureJuMP/eckerle4.jl b/src/PureJuMP/eckerle4.jl index 7b471f1c4..b82353732 100644 --- a/src/PureJuMP/eckerle4.jl +++ b/src/PureJuMP/eckerle4.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/eckerle4.dat - -NIST/ITL StRD -Dataset Name: Eckerle4 (Eckerle4.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 95) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - circular interference transmittance. The response - variable is transmittance, and the predictor variable - is wavelength. - -Reference: Eckerle, K., NIST (197?). - Circular Interference Transmittance Study. - -Data: 1 Response Variable (y = transmittance) - 1 Predictor Variable (x = wavelength) - 35 Observations - Higher Level of Difficulty - Observed Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - y = (b1/b2) * exp[-0.5*((x-b3)/b2)**2] + e -=# -# T. Migot, Montreal, 2023. - export eckerle4 function eckerle4(args...; kwargs...) diff --git a/src/PureJuMP/edensch.jl b/src/PureJuMP/edensch.jl index 2f4018395..df1b723d9 100644 --- a/src/PureJuMP/edensch.jl +++ b/src/PureJuMP/edensch.jl @@ -1,26 +1,3 @@ -# The extended Dennis and Schnabel problem, as defined by Li. -# -# Source: -# G. Li, -# The secant/finite difference algorithm for solving sparse -# nonlinear systems of equations, -# SIAM Journal on Numerical Analysis, 25(5), pp. 1181-1196, 1988. -# -# See also -# -# problem 24 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export edensch "Extended Dennis-Schnabel model in size `n`" diff --git a/src/PureJuMP/eg2.jl b/src/PureJuMP/eg2.jl index 1c4e49acf..5a6767912 100644 --- a/src/PureJuMP/eg2.jl +++ b/src/PureJuMP/eg2.jl @@ -1,26 +1,3 @@ -# A simple non convex problem with several local minima. -# -# Source: Section 1.2.4 of -# A. R. Conn, N. I. M. Gould and Ph. L. Toint, -# LANCELOT, A Fortran Package for Large-Scale Nonlinear Optimization -# (Release A) -# Springer Verlag, 1992. -# -# See also -# -# problem 25 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-1000-0 -# -# D. Orban, Montreal, 08/2015. - export eg2 "model in size `n`" diff --git a/src/PureJuMP/elec.jl b/src/PureJuMP/elec.jl index a1f0ca3db..4fced5333 100644 --- a/src/PureJuMP/elec.jl +++ b/src/PureJuMP/elec.jl @@ -1,17 +1,9 @@ -# Given np electrons, find the equilibrium state distribution of minimal -# Columb potential of the electrons positioned on a conducting sphere - -# This is problem 2 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - export elec function elec(args...; n::Int = default_nvar, kwargs...) + n_orig = n n = max(2, div(n, 3)) + @adjust_nvar_warn("elec", n_orig, 3 * n) nlp = Model() diff --git a/src/PureJuMP/engval1.jl b/src/PureJuMP/engval1.jl index a3bcdefba..de5b760d0 100644 --- a/src/PureJuMP/engval1.jl +++ b/src/PureJuMP/engval1.jl @@ -1,26 +1,3 @@ -# The ENGVAL1 problem. -# -# Source: problem 31 in -# Ph.L. Toint, -# Test problems for partially separable optimization and results -# for the routine PSPMIN, -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. -# -# See also -# -# problem 26 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - export engval1 "The Engval1 model in size `n`" diff --git a/src/PureJuMP/enso.jl b/src/PureJuMP/enso.jl index 1991f0dcd..8a2277db8 100644 --- a/src/PureJuMP/enso.jl +++ b/src/PureJuMP/enso.jl @@ -1,45 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/enso.dat - -NIST/ITL StRD -Dataset Name: ENSO (ENSO.dat) - -File Format: ASCII - Starting Values (lines 41 to 49) - Certified Values (lines 41 to 54) - Data (lines 61 to 228) - -Procedure: Nonlinear Least Squares Regression - -Description: The data are monthly averaged atmospheric pressure - differences between Easter Island and Darwin, - Australia. This difference drives the trade winds in - the southern hemisphere. Fourier analysis of the data - reveals 3 significant cycles. The annual cycle is the - strongest, but cycles with periods of approximately 44 - and 26 months are also present. These cycles - correspond to the El Nino and the Southern Oscillation. - Arguments to the SIN and COS functions are in radians. - -Reference: Kahaner, D., C. Moler, and S. Nash, (1989). - Numerical Methods and Software. - Englewood Cliffs, NJ: Prentice Hall, pp. 441-445. - -Data: 1 Response (y = atmospheric pressure) - 1 Predictor (x = time) - 168 Observations - Average Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 9 Parameters (b1 to b9) - - y = b1 + b2*cos( 2*pi*x/12 ) + b3*sin( 2*pi*x/12 ) - + b5*cos( 2*pi*x/b4 ) + b6*sin( 2*pi*x/b4 ) - + b8*cos( 2*pi*x/b7 ) + b9*sin( 2*pi*x/b7 ) + e -=# - export enso function enso(args...; kwargs...) diff --git a/src/PureJuMP/errinros_mod.jl b/src/PureJuMP/errinros_mod.jl index 00c56c751..b36bf5ac6 100644 --- a/src/PureJuMP/errinros_mod.jl +++ b/src/PureJuMP/errinros_mod.jl @@ -1,18 +1,3 @@ -# Errin Rosenbrock - modified function. - -# problem 28 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# J,-P, Dussault, Rennes 09/2015. - export errinros_mod function errinros_mod(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/extrosnb.jl b/src/PureJuMP/extrosnb.jl index b2387296d..8d7babd2a 100644 --- a/src/PureJuMP/extrosnb.jl +++ b/src/PureJuMP/extrosnb.jl @@ -1,25 +1,3 @@ -# Source: problem 10 in -# Ph.L. Toint, -# "Test problems for partially separable optimization and results -# for the routine PSPMIN", -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. - -# See also Buckley#116. Note that MGH#21 is the separable version. -# SIF input: Ph. Toint, Dec 1989. - -# problem 29 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# J.-P. Dussault, Rennes 09/2015. - export extrosnb function extrosnb(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/fletcbv2.jl b/src/PureJuMP/fletcbv2.jl index 7f26cbe26..8ae065485 100644 --- a/src/PureJuMP/fletcbv2.jl +++ b/src/PureJuMP/fletcbv2.jl @@ -1,25 +1,3 @@ -# Source: The first problem given by -# R. Fletcher, -# "An optimal positive definite update for sparse Hessian matrices" -# Numerical Analysis report NA/145, University of Dundee, 1992. - -# Scaled version. - -# SIF input: Nick Gould, Oct 1992. - -# problem 31 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# J,-P, Dussault, Rennes 09/2015. - export fletcbv2 function fletcbv2(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/fletcbv3_mod.jl b/src/PureJuMP/fletcbv3_mod.jl index 00199e094..ce7e4f504 100644 --- a/src/PureJuMP/fletcbv3_mod.jl +++ b/src/PureJuMP/fletcbv3_mod.jl @@ -1,25 +1,3 @@ -# Source: The first problem given by -# R. Fletcher, -# "An optimal positive definite update for sparse Hessian matrices" -# Numerical Analysis report NA/145, University of Dundee, 1992. - -# Scaled version. - -# SIF input: Nick Gould, Oct 1992. - -# problem 30 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification OUR2-AN-V-0 -# -# J.-P. Dussault, Rennes 09/2015. - export fletcbv3_mod function fletcbv3_mod(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/fletchcr.jl b/src/PureJuMP/fletchcr.jl index c9c9cc854..88d66f1be 100644 --- a/src/PureJuMP/fletchcr.jl +++ b/src/PureJuMP/fletchcr.jl @@ -1,35 +1,3 @@ -# Source: -# problem 32 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# CUTEst cites -# The second problem given by -# R. Fletcher, -# "An optimal positive definite update for sparse Hessian matrices" -# Numerical Analysis report NA/145, University of Dundee, 1992. -# -# Scaled version. -# -# SIF input: Nick Gould, Oct 1992. -# -# as source for this problem. -# It is possible that Fletcher may have used this problem in his -# technical report, but the published version of his report -# -# SIAM J. Optimization, 5(1), pp 192-218, 1995 -# -# uses the chained Rosenbrock problem, not the one below. -# -# classification OUR2-AN-V-0 -# -# J.-P. Dussault, Rennes 09/2015. - export fletchcr function fletchcr(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/fminsrf2.jl b/src/PureJuMP/fminsrf2.jl index b6acb5a8f..ea472b219 100644 --- a/src/PureJuMP/fminsrf2.jl +++ b/src/PureJuMP/fminsrf2.jl @@ -1,32 +1,12 @@ -# Source: setting the boundary free in -# A Griewank and Ph. Toint, -# "Partitioned variable metric updates for large structured -# optimization problems", -# Numerische Mathematik 39:429-448, 1982. - -# SIF input: Ph. Toint, November 1991. - -# classification OUR2-MY-V-0 - -# Problem 33 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# J.-P. Dussault, Rennes 09/2015. - export fminsrf2 function fminsrf2(args...; n::Int = default_nvar, kwargs...) - n < 4 && @warn("fminsrf2: number of variables must be ≥ 4") + n_org = n n = max(4, n) p = floor(Int, sqrt(n)) - p * p != n && @warn("fminsrf2: number of variables adjusted from $n down to $(p*p)") n = p * p + @adjust_nvar_warn("fminsrf2", n_org, n) h00 = 1.0 slopej = 4.0 diff --git a/src/PureJuMP/freuroth.jl b/src/PureJuMP/freuroth.jl index 3568b52c4..e5b1c50f0 100644 --- a/src/PureJuMP/freuroth.jl +++ b/src/PureJuMP/freuroth.jl @@ -1,25 +1,3 @@ -# Source: problem 2 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Toint#33, Buckley#24 -# SIF input: Ph. Toint, Dec 1989. - -# classification SUR2-AN-V-0 -# -# problem 34 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# J.-P. Dussault, Rennes 09/2015. - export freuroth function freuroth(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/gasoil.jl b/src/PureJuMP/gasoil.jl index c39531f3c..a36762a78 100644 --- a/src/PureJuMP/gasoil.jl +++ b/src/PureJuMP/gasoil.jl @@ -1,14 +1,8 @@ -# Catalytic Cracking of Gas Oil Problem -# Collocation formulation -# Michael Merritt - Summer 2000 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export gasoil function gasoil(; n::Int = default_nvar, kwargs...) nc = 4 # number of collocation points + @adjust_nvar_warn("gasoil", n, 26 * n + 3) ne = 2 # number of differential equations np = 3 # number of ODE parameters nm = 21 # number of measurements diff --git a/src/PureJuMP/gauss1.jl b/src/PureJuMP/gauss1.jl index 57841e11d..4847b81e1 100644 --- a/src/PureJuMP/gauss1.jl +++ b/src/PureJuMP/gauss1.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss1.dat - -NIST/ITL StRD -Dataset Name: Gauss1 (Gauss1.dat) - -File Format: ASCII - Starting Values (lines 41 to 48) - Certified Values (lines 41 to 53) - Data (lines 61 to 310) - -Procedure: Nonlinear Least Squares Regression - -Description: The data are two well-separated Gaussians on a - decaying exponential baseline plus normally - distributed zero-mean noise with variance = 6.25. - -Reference: Rust, B., NIST (1996). - -Data: 1 Response (y) - 1 Predictor (x) - 250 Observations - Lower Level of Difficulty - Generated Data - -Model: Exponential Class - 8 Parameters (b1 to b8) - - y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) - + b6*exp( -(x-b7)**2 / b8**2 ) + e - -=# -# T. Migot, Montreal, 2023. - export gauss1 function gauss1(args...; kwargs...) diff --git a/src/PureJuMP/gauss2.jl b/src/PureJuMP/gauss2.jl index b8b22a51d..dd19852f2 100644 --- a/src/PureJuMP/gauss2.jl +++ b/src/PureJuMP/gauss2.jl @@ -1,37 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss2.dat - -NIST/ITL StRD -Dataset Name: Gauss2 (Gauss2.dat) - -File Format: ASCII - Starting Values (lines 41 to 48) - Certified Values (lines 41 to 53) - Data (lines 61 to 310) - -Procedure: Nonlinear Least Squares Regression - -Description: The data are two slightly-blended Gaussians on a - decaying exponential baseline plus normally - distributed zero-mean noise with variance = 6.25. - -Reference: Rust, B., NIST (1996). - -Data: 1 Response (y) - 1 Predictor (x) - 250 Observations - Lower Level of Difficulty - Generated Data - -Model: Exponential Class - 8 Parameters (b1 to b8) - - y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) - + b6*exp( -(x-b7)**2 / b8**2 ) + e -=# -# T. Migot, Montreal, 2023. - export gauss2 function gauss2(args...; kwargs...) diff --git a/src/PureJuMP/gauss3.jl b/src/PureJuMP/gauss3.jl index 032959668..b4669ad82 100644 --- a/src/PureJuMP/gauss3.jl +++ b/src/PureJuMP/gauss3.jl @@ -1,37 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/gauss3.dat - -NIST/ITL StRD -Dataset Name: Gauss3 (Gauss3.dat) - -File Format: ASCII - Starting Values (lines 41 to 48) - Certified Values (lines 41 to 53) - Data (lines 61 to 310) - -Procedure: Nonlinear Least Squares Regression - -Description: The data are two strongly-blended Gaussians on a - decaying exponential baseline plus normally - distributed zero-mean noise with variance = 6.25. - -Reference: Rust, B., NIST (1996). - -Data: 1 Response (y) - 1 Predictor (x) - 250 Observations - Average Level of Difficulty - Generated Data - -Model: Exponential Class - 8 Parameters (b1 to b8) - - y = b1*exp( -b2*x ) + b3*exp( -(x-b4)**2 / b5**2 ) - + b6*exp( -(x-b7)**2 / b8**2 ) + e -=# -# T. Migot, Montreal, 2023. - export gauss3 function gauss3(args...; kwargs...) diff --git a/src/PureJuMP/gaussian.jl b/src/PureJuMP/gaussian.jl index 84d20ce9d..147948ea4 100644 --- a/src/PureJuMP/gaussian.jl +++ b/src/PureJuMP/gaussian.jl @@ -1,11 +1,3 @@ -# Source: Problem 9 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#28 - -# classification SUR2-AN-3-0 export gaussian function gaussian(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/genbroydenb.jl b/src/PureJuMP/genbroydenb.jl index 483478b7d..589e41a34 100644 --- a/src/PureJuMP/genbroydenb.jl +++ b/src/PureJuMP/genbroydenb.jl @@ -1,13 +1,3 @@ -# Generalized Broyden banded function -# -# Problem 6 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export genbroydenb function genbroydenb(; n::Int = default_nvar) diff --git a/src/PureJuMP/genbroydentri.jl b/src/PureJuMP/genbroydentri.jl index 9abdf6e70..fbee04283 100644 --- a/src/PureJuMP/genbroydentri.jl +++ b/src/PureJuMP/genbroydentri.jl @@ -1,13 +1,3 @@ -# Generalized Broyden Tridiagonal Function -# -# Problem 5 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export genbroydentri function genbroydentri(; n::Int = default_nvar) diff --git a/src/PureJuMP/genhumps.jl b/src/PureJuMP/genhumps.jl index 274b74b6e..42e24ccc1 100644 --- a/src/PureJuMP/genhumps.jl +++ b/src/PureJuMP/genhumps.jl @@ -1,21 +1,3 @@ -# Source: -# Ph. Toint, private communication, 1997. - -# SDIF input: N. Gould and Ph. Toint, November 1997. - -# problem 35 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# - -# classification SUR2-AN-V-0 -# J.-P. Dussault, Rennes 09/2015. - export genhumps function genhumps(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/genrose.jl b/src/PureJuMP/genrose.jl index 60c85b163..83ad42a93 100644 --- a/src/PureJuMP/genrose.jl +++ b/src/PureJuMP/genrose.jl @@ -1,68 +1,3 @@ -# Generalized Rosenbrock function. -# -# Source: -# Y.-W. Shang and Y.-H. Qiu, -# A note on the extended Rosenbrock function, -# Evolutionary Computation, 14(1):119–126, 2006. -# -# Shang and Qiu claim the "extended" Rosenbrock function -# previously appeared in -# -# K. A. de Jong, -# An analysis of the behavior of a class of genetic -# adaptive systems, -# PhD Thesis, University of Michigan, Ann Arbor, -# Michigan, 1975, -# (http://hdl.handle.net/2027.42/4507) -# -# but I could not find it there, and in -# -# D. E. Goldberg, -# Genetic algorithms in search, optimization and -# machine learning, -# Reading, Massachusetts: Addison-Wesley, 1989, -# -# but I don't have access to that book. -# -# This unconstrained problem is analyzed in -# -# S. Kok and C. Sandrock, -# Locating and Characterizing the Stationary Points of -# the Extended Rosenbrock Function, -# Evolutionary Computation 17, 2009. -# https://dx.doi.org/10.1162%2Fevco.2009.17.3.437 -# -# classification SUR2-AN-V-0 -# -# problem 36 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# D. Orban, Montreal, 08/2015. - -# Note: difference from CUTEst is due to the constant 1.0, -# which does not affect its utility as a test problem other than perhaps -# for convergence-testing. - -# Difference with the following is the initial guess. -# -# Problem 1 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# - export genrose, rosenbrock "Generalized Rosenbrock model in size `n`" diff --git a/src/PureJuMP/genrose_nash.jl b/src/PureJuMP/genrose_nash.jl index 25a800a50..da04c5513 100644 --- a/src/PureJuMP/genrose_nash.jl +++ b/src/PureJuMP/genrose_nash.jl @@ -1,34 +1,3 @@ -# Generalized Rosenbrock function. -# -# Source: problem 4 in -# S. Nash, -# Newton-type minimization via the Lanczos process, -# SIAM J. Num. Anal. 21, 770-788, 1984, -# -# and -# -# problem 36 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# Note: this variant does not reduce to the classical -# Rosenbrock function when n = 2, described in -# -# H. H. Rosenbrock, -# An automatic method for finding the greatest or least value -# of a function -# The Computer Journal 3: 175–184, 1960. -# https://dx.doi.org/10.1093%2Fcomjnl%2F3.3.175 -# -# D. Orban, Montreal, 08/2015. - export genrose_nash "Nash's variant of `genrose()` in size `n`" diff --git a/src/PureJuMP/glider.jl b/src/PureJuMP/glider.jl index 9d217b716..fceb3e4e0 100644 --- a/src/PureJuMP/glider.jl +++ b/src/PureJuMP/glider.jl @@ -1,14 +1,8 @@ -# Hang Glider Problem -# Trapezoidal formulation -# David Bortz - Summer 1998 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export glider function glider(; n::Int = default_nvar, kwargs...) # Design parameters + @adjust_nvar_warn("glider", n, 5 * n + 6) x_0 = 0.0 y_0 = 1000.0 y_f = 900.0 diff --git a/src/PureJuMP/gulf.jl b/src/PureJuMP/gulf.jl index e9fa95721..7aadf4308 100644 --- a/src/PureJuMP/gulf.jl +++ b/src/PureJuMP/gulf.jl @@ -1,17 +1,3 @@ -# The Gulf research and development function for m = 99. -# -# Source: problem 11 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 27 (p. 57) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# SUR2-MN-3-0 - export gulf "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/hahn1.jl b/src/PureJuMP/hahn1.jl index 3ecfbe74b..1214657bf 100644 --- a/src/PureJuMP/hahn1.jl +++ b/src/PureJuMP/hahn1.jl @@ -1,40 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/hahn1.dat - -NIST/ITL StRD -Dataset Name: Hahn1 (Hahn1.dat) - -File Format: ASCII - Starting Values (lines 41 to 47) - Certified Values (lines 41 to 52) - Data (lines 61 to 296) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - the thermal expansion of copper. The response - variable is the coefficient of thermal expansion, and - the predictor variable is temperature in degrees - kelvin. - -Reference: Hahn, T., NIST (197?). - Copper Thermal Expansion Study. - -Data: 1 Response (y = coefficient of thermal expansion) - 1 Predictor (x = temperature, degrees kelvin) - 236 Observations - Average Level of Difficulty - Observed Data - -Model: Rational Class (cubic/cubic) - 7 Parameters (b1 to b7) - - y = (b1+b2*x+b3*x**2+b4*x**3) / - (1+b5*x+b6*x**2+b7*x**3) + e -=# -# T. Migot, Montreal, 2023. - export hahn1 function hahn1(args...; kwargs...) diff --git a/src/PureJuMP/helical.jl b/src/PureJuMP/helical.jl index 9619b0f67..740d66352 100644 --- a/src/PureJuMP/helical.jl +++ b/src/PureJuMP/helical.jl @@ -1,8 +1,3 @@ -# Source: problem 7 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - export helical function helical(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/hovercraft1d.jl b/src/PureJuMP/hovercraft1d.jl index 0ddce6c3f..5c84a08d8 100644 --- a/src/PureJuMP/hovercraft1d.jl +++ b/src/PureJuMP/hovercraft1d.jl @@ -1,14 +1,10 @@ -# JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, -# Introduction to Optimization class. - -# Hovercraft 1D example -# https://laurentlessard.com/teaching/524-intro-to-optimization/ export hovercraft1d function hovercraft1d(args...; n::Int = default_nvar, kwargs...) nlp = Model() T = div(n, 3) # length of time horizon + @adjust_nvar_warn("hovercraft1d", n, 3 * T - 1) @variable(nlp, x[1:T]) # resulting position @variable(nlp, v[1:T]) # resulting velocity @variable(nlp, u[1:(T - 1)]) # thruster input diff --git a/src/PureJuMP/hs1.jl b/src/PureJuMP/hs1.jl index 1364f2f1a..1cf54e951 100644 --- a/src/PureJuMP/hs1.jl +++ b/src/PureJuMP/hs1.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 1. -# -# Source: -# Problem 1 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SBR2-AN-2-0 -# -# N. Antunes, Curitiba, 10/2016. - export hs1 "HS1 model" diff --git a/src/PureJuMP/hs10.jl b/src/PureJuMP/hs10.jl index 288d29a94..db3b5390f 100644 --- a/src/PureJuMP/hs10.jl +++ b/src/PureJuMP/hs10.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 10. -# -# Source: -# Problem 10 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LQR2-AN-2-1 -# -# N. Antunes, Curitiba, 10/2016. - export hs10 "HS10 model" diff --git a/src/PureJuMP/hs100.jl b/src/PureJuMP/hs100.jl index eb54e520c..53ec6ea86 100644 --- a/src/PureJuMP/hs100.jl +++ b/src/PureJuMP/hs100.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 100. -# -# Source: -# Problem 100 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-7-4 -# -# A. Montoison, Montreal, 05/2018. - export hs100 "HS100 model" diff --git a/src/PureJuMP/hs101.jl b/src/PureJuMP/hs101.jl index b022a57ee..c46e5961c 100644 --- a/src/PureJuMP/hs101.jl +++ b/src/PureJuMP/hs101.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 101. -# -# Source: -# Problem 101 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-7-6 -# -# A. Montoison, Montreal, 05/2018. - export hs101 "HS101 model" diff --git a/src/PureJuMP/hs102.jl b/src/PureJuMP/hs102.jl index 014e9b12a..cd841aede 100644 --- a/src/PureJuMP/hs102.jl +++ b/src/PureJuMP/hs102.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 102. -# -# Source: -# Problem 102 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-7-6 -# -# A. Montoison, Montreal, 05/2018. - export hs102 "HS102 model" diff --git a/src/PureJuMP/hs103.jl b/src/PureJuMP/hs103.jl index daee0005c..370b2e364 100644 --- a/src/PureJuMP/hs103.jl +++ b/src/PureJuMP/hs103.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 103. -# -# Source: -# Problem 103 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-7-6 -# -# A. Montoison, Montreal, 05/2018. - export hs103 "HS103 model" diff --git a/src/PureJuMP/hs104.jl b/src/PureJuMP/hs104.jl index 98bd7a5a5..b6a30d412 100644 --- a/src/PureJuMP/hs104.jl +++ b/src/PureJuMP/hs104.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 104. -# -# Source: -# Problem 104 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-8-6 -# -# A. Montoison, Montreal, 05/2018. - export hs104 "HS104 model" diff --git a/src/PureJuMP/hs105.jl b/src/PureJuMP/hs105.jl index 12ed6d7ab..d77b9ef38 100644 --- a/src/PureJuMP/hs105.jl +++ b/src/PureJuMP/hs105.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 105. -# -# Source: -# Problem 105 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GLR-AN-8-1 -# -# A. Montoison, Montreal, 05/2018. - export hs105 "HS105 model" diff --git a/src/PureJuMP/hs106.jl b/src/PureJuMP/hs106.jl index b4cf45de5..0dca70735 100644 --- a/src/PureJuMP/hs106.jl +++ b/src/PureJuMP/hs106.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 106. -# -# Source: -# Problem 106 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LQR-AN-8-6 -# -# A. Montoison, Montreal, 05/2018. - export hs106 "HS106 model" diff --git a/src/PureJuMP/hs107.jl b/src/PureJuMP/hs107.jl index b04d5ca3b..8cfc02644 100644 --- a/src/PureJuMP/hs107.jl +++ b/src/PureJuMP/hs107.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 107. -# -# Source: -# Problem 107 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR-AN-9-6 -# -# A. Montoison, Montreal, 05/2018. - export hs107 "HS107 model" diff --git a/src/PureJuMP/hs108.jl b/src/PureJuMP/hs108.jl index 4c0633b0d..ab5e2cae8 100644 --- a/src/PureJuMP/hs108.jl +++ b/src/PureJuMP/hs108.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 108. -# -# Source: -# Problem 108 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR-AN-9-13 -# -# A. Montoison, Montreal, 05/2018. - export hs108 "HS108 model" diff --git a/src/PureJuMP/hs109.jl b/src/PureJuMP/hs109.jl index d78ba29db..46a767ace 100644 --- a/src/PureJuMP/hs109.jl +++ b/src/PureJuMP/hs109.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 109. -# -# Source: -# Problem 109 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR-AN-9-10 -# -# A. Montoison, Montreal, 05/2018. - export hs109 "HS109 model" diff --git a/src/PureJuMP/hs11.jl b/src/PureJuMP/hs11.jl index aae78bb65..3feca61e7 100644 --- a/src/PureJuMP/hs11.jl +++ b/src/PureJuMP/hs11.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 11. -# -# Source: -# Problem 11 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-1 -# -# N. Antunes, Curitiba, 10/2016. - export hs11 "HS11 model" diff --git a/src/PureJuMP/hs110.jl b/src/PureJuMP/hs110.jl index 1939ce1d1..728cb6bb8 100644 --- a/src/PureJuMP/hs110.jl +++ b/src/PureJuMP/hs110.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 110. -# -# Source: -# Problem 110 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GBR-AN-10-0 -# -# A. Montoison, Montreal, 05/2018. - export hs110 "HS110 model" diff --git a/src/PureJuMP/hs111.jl b/src/PureJuMP/hs111.jl index 5aa0e677d..fb8459577 100644 --- a/src/PureJuMP/hs111.jl +++ b/src/PureJuMP/hs111.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 111. -# -# Source: -# Problem 111 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OOR2-AN-10-3 -# -# N. Antunes, Curitiba, 10/2016. - export hs111 "HS111 model" diff --git a/src/PureJuMP/hs112.jl b/src/PureJuMP/hs112.jl index 9411db65c..c0c4e12c1 100644 --- a/src/PureJuMP/hs112.jl +++ b/src/PureJuMP/hs112.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 112. -# -# Source: -# Problem 112 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OLR2-MY-10-3 -# -# N. Antunes, Curitiba, 10/2016. - export hs112 "HS112 model" diff --git a/src/PureJuMP/hs113.jl b/src/PureJuMP/hs113.jl index bec2acdcf..23259dc3f 100644 --- a/src/PureJuMP/hs113.jl +++ b/src/PureJuMP/hs113.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 113. -# -# Source: -# Problem 113 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR-AN-10-8 -# -# A. Montoison, Montreal, 05/2018. - export hs113 "HS113 model" diff --git a/src/PureJuMP/hs114.jl b/src/PureJuMP/hs114.jl index b6537e397..40bdfa1b3 100644 --- a/src/PureJuMP/hs114.jl +++ b/src/PureJuMP/hs114.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 114. -# -# Source: -# Problem 114 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QGR-AN-10-11 -# -# A. Montoison, Montreal, 05/2018. - export hs114 "HS114 model" diff --git a/src/PureJuMP/hs116.jl b/src/PureJuMP/hs116.jl index 84d346a69..d7cdbe1e1 100644 --- a/src/PureJuMP/hs116.jl +++ b/src/PureJuMP/hs116.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 116. -# -# Source: -# Problem 116 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QGR-AN-13-14 -# -# A. Montoison, Montreal, 05/2018. - export hs116 "HS116 model" diff --git a/src/PureJuMP/hs117.jl b/src/PureJuMP/hs117.jl index 7bbf6599e..a15567b83 100644 --- a/src/PureJuMP/hs117.jl +++ b/src/PureJuMP/hs117.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 117. -# -# Source: -# Problem 117 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PQR-AN-15-5 -# -# A. Montoison, Montreal, 05/2018. - export hs117 "HS117 model" diff --git a/src/PureJuMP/hs118.jl b/src/PureJuMP/hs118.jl index 45078c3a4..0b45043d1 100644 --- a/src/PureJuMP/hs118.jl +++ b/src/PureJuMP/hs118.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 118. -# -# Source: -# Problem 118 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR-AN-15-17 -# -# A. Montoison, Montreal, 05/2018. - export hs118 "HS118 model" diff --git a/src/PureJuMP/hs119.jl b/src/PureJuMP/hs119.jl index 2263268cd..a99af115b 100644 --- a/src/PureJuMP/hs119.jl +++ b/src/PureJuMP/hs119.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 119. -# -# Source: -# Problem 119 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR-AN-16-8 -# -# A. Montoison, Montreal, 05/2018. - export hs119 "HS119 model" diff --git a/src/PureJuMP/hs12.jl b/src/PureJuMP/hs12.jl index f4bd81de9..68eb2c062 100644 --- a/src/PureJuMP/hs12.jl +++ b/src/PureJuMP/hs12.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 12. -# -# Source: -# Problem 12 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-2-1 -# -# N. Antunes, Curitiba, 10/2016. - export hs12 "HS12 model" diff --git a/src/PureJuMP/hs13.jl b/src/PureJuMP/hs13.jl index 968e1eb3b..88ce5b956 100644 --- a/src/PureJuMP/hs13.jl +++ b/src/PureJuMP/hs13.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 13. -# -# Source: -# Problem 13 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-2-1 -# -# N. Antunes, Curitiba, 10/2016. - export hs13 "HS13 model" diff --git a/src/PureJuMP/hs14.jl b/src/PureJuMP/hs14.jl index 98cd3071e..7c821b87e 100644 --- a/src/PureJuMP/hs14.jl +++ b/src/PureJuMP/hs14.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 14. -# -# Source: -# Problem 14 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-2 -# -# N. Antunes, Curitiba, 10/2016. - export hs14 "HS14 model" diff --git a/src/PureJuMP/hs15.jl b/src/PureJuMP/hs15.jl index 17c354400..2491ce315 100644 --- a/src/PureJuMP/hs15.jl +++ b/src/PureJuMP/hs15.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 15. -# -# Source: -# Problem 15 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-2 -# -# N. Antunes, Curitiba, 10/2016. - export hs15 "HS15 model" diff --git a/src/PureJuMP/hs16.jl b/src/PureJuMP/hs16.jl index 8dac8659b..126b21e0f 100644 --- a/src/PureJuMP/hs16.jl +++ b/src/PureJuMP/hs16.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 16. -# -# Source: -# Problem 16 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-2 -# -# N. Antunes, Curitiba, 10/2016. - export hs16 "HS16 model" diff --git a/src/PureJuMP/hs17.jl b/src/PureJuMP/hs17.jl index 3f1e164d7..5b42fdd3b 100644 --- a/src/PureJuMP/hs17.jl +++ b/src/PureJuMP/hs17.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 17. -# -# Source: -# Problem 17 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-2 -# -# N. Antunes, Curitiba, 10/2016. - export hs17 "HS17 model" diff --git a/src/PureJuMP/hs18.jl b/src/PureJuMP/hs18.jl index c2d6d7802..5ddf04add 100644 --- a/src/PureJuMP/hs18.jl +++ b/src/PureJuMP/hs18.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 18. -# -# Source: -# Problem 18 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-2 -# -# N. Antunes, Curitiba, 10/2016. - export hs18 "HS18 model" diff --git a/src/PureJuMP/hs19.jl b/src/PureJuMP/hs19.jl index f36bbe3db..74deaa4ac 100644 --- a/src/PureJuMP/hs19.jl +++ b/src/PureJuMP/hs19.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 19. -# -# Source: -# Problem 19 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PQR2-AN-2-2 -# -# A. Montoison, Montreal, 04/2018. - export hs19 "HS19 model" diff --git a/src/PureJuMP/hs2.jl b/src/PureJuMP/hs2.jl index 75f60d3c1..f48903b43 100644 --- a/src/PureJuMP/hs2.jl +++ b/src/PureJuMP/hs2.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 2. -# -# Source: -# Problem 2 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PBR2-AN-2-0 -# -# A. Montoison, Montreal, 04/2018. - export hs2 "HS2 model" diff --git a/src/PureJuMP/hs20.jl b/src/PureJuMP/hs20.jl index f5163d140..0a67ead9a 100644 --- a/src/PureJuMP/hs20.jl +++ b/src/PureJuMP/hs20.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 20. -# -# Source: -# Problem 20 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-2-3 -# -# N. Antunes, Curitiba, 10/2016. - export hs20 "HS20 model" diff --git a/src/PureJuMP/hs201.jl b/src/PureJuMP/hs201.jl index 9f0e82afc..323769e35 100644 --- a/src/PureJuMP/hs201.jl +++ b/src/PureJuMP/hs201.jl @@ -1,12 +1,3 @@ -# Hock and Schittkowski problem number 201. -# -# Source: -# Problem 201 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# export hs201 "HS201 model" function hs201(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/hs21.jl b/src/PureJuMP/hs21.jl index 5c7f6bc09..ae765c02c 100644 --- a/src/PureJuMP/hs21.jl +++ b/src/PureJuMP/hs21.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 21. -# -# Source: -# Problem 21 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-2-1 -# -# A. Montoison, Montreal, 04/2018. - export hs21 "HS21 model" diff --git a/src/PureJuMP/hs211.jl b/src/PureJuMP/hs211.jl index 76b9e6fed..eeae9f6dd 100644 --- a/src/PureJuMP/hs211.jl +++ b/src/PureJuMP/hs211.jl @@ -1,12 +1,3 @@ -# Hock and Schittkowski problem number 211. -# -# Source: -# Problem 211 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# export hs211 "HS211 model" diff --git a/src/PureJuMP/hs219.jl b/src/PureJuMP/hs219.jl index 66be3f09c..765a47f1e 100644 --- a/src/PureJuMP/hs219.jl +++ b/src/PureJuMP/hs219.jl @@ -1,16 +1,3 @@ -# Schittkowski problem number 219. -# -# Source: -# Problem 219 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification LPR-T1-1 -# -# Solution is: (1, 1, 0, 0) with f(x^*) = -1 - export hs219 function hs219(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/hs22.jl b/src/PureJuMP/hs22.jl index 82e607aff..8a450088f 100644 --- a/src/PureJuMP/hs22.jl +++ b/src/PureJuMP/hs22.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 22. -# -# Source: -# Problem 22 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-2-2 -# -# A. Montoison, Montreal, 04/2018. - export hs22 "HS22 model" diff --git a/src/PureJuMP/hs220.jl b/src/PureJuMP/hs220.jl index f7fe7e82c..1166d6597 100644 --- a/src/PureJuMP/hs220.jl +++ b/src/PureJuMP/hs220.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 220. -# -# Source: -# Problem 220 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs220 "HS220 model" diff --git a/src/PureJuMP/hs221.jl b/src/PureJuMP/hs221.jl index 7013200c9..520b8a958 100644 --- a/src/PureJuMP/hs221.jl +++ b/src/PureJuMP/hs221.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 221. -# -# Source: -# Problem 221 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs221 "HS221 model" diff --git a/src/PureJuMP/hs222.jl b/src/PureJuMP/hs222.jl index 3f2337f7f..04afafb2e 100644 --- a/src/PureJuMP/hs222.jl +++ b/src/PureJuMP/hs222.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 222. -# -# Source: -# Problem 222 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs222 "HS222 model" diff --git a/src/PureJuMP/hs223.jl b/src/PureJuMP/hs223.jl index 14b6b8ac7..66060555a 100644 --- a/src/PureJuMP/hs223.jl +++ b/src/PureJuMP/hs223.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 223. -# -# Source: -# Problem 223 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs223 "HS223 model" diff --git a/src/PureJuMP/hs224.jl b/src/PureJuMP/hs224.jl index 26ab094a8..780d292f1 100644 --- a/src/PureJuMP/hs224.jl +++ b/src/PureJuMP/hs224.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 224. -# -# Source: -# Problem 224 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs224 "HS224 model" diff --git a/src/PureJuMP/hs225.jl b/src/PureJuMP/hs225.jl index 6334bd0bb..f6c09c907 100644 --- a/src/PureJuMP/hs225.jl +++ b/src/PureJuMP/hs225.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 225. -# -# Source: -# Problem 225 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs225 "HS225 model" diff --git a/src/PureJuMP/hs226.jl b/src/PureJuMP/hs226.jl index ea6386c28..99c5660e7 100644 --- a/src/PureJuMP/hs226.jl +++ b/src/PureJuMP/hs226.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 226. -# -# Source: -# Problem 226 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs226 "HS226 model" diff --git a/src/PureJuMP/hs227.jl b/src/PureJuMP/hs227.jl index b4db98e90..cd41e969c 100644 --- a/src/PureJuMP/hs227.jl +++ b/src/PureJuMP/hs227.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 227. -# -# Source: -# Problem 227 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs227 "HS227 model" diff --git a/src/PureJuMP/hs228.jl b/src/PureJuMP/hs228.jl index 5da3e1f2d..65a255593 100644 --- a/src/PureJuMP/hs228.jl +++ b/src/PureJuMP/hs228.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 228. -# -# Source: -# Problem 228 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs228 "HS228 model" diff --git a/src/PureJuMP/hs229.jl b/src/PureJuMP/hs229.jl index f5a64a128..db4cfda88 100644 --- a/src/PureJuMP/hs229.jl +++ b/src/PureJuMP/hs229.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 229. -# -# Source: -# Problem 229 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs229 "HS229 model" diff --git a/src/PureJuMP/hs23.jl b/src/PureJuMP/hs23.jl index 6f731cb4b..244164f9d 100644 --- a/src/PureJuMP/hs23.jl +++ b/src/PureJuMP/hs23.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 23. -# -# Source: -# Problem 23 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-2-5 -# -# A. Montoison, Montreal, 04/2018. - export hs23 "HS23 model" diff --git a/src/PureJuMP/hs230.jl b/src/PureJuMP/hs230.jl index 3c4aa9e77..08e65c963 100644 --- a/src/PureJuMP/hs230.jl +++ b/src/PureJuMP/hs230.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 230. -# -# Source: -# Problem 230 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs230 "HS230 model" diff --git a/src/PureJuMP/hs231.jl b/src/PureJuMP/hs231.jl index 9c598ff81..cd3b94fc6 100644 --- a/src/PureJuMP/hs231.jl +++ b/src/PureJuMP/hs231.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 231. -# -# Source: -# Problem 231 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs231 "HS231 model" diff --git a/src/PureJuMP/hs232.jl b/src/PureJuMP/hs232.jl index d7e73dfcf..2e568139e 100644 --- a/src/PureJuMP/hs232.jl +++ b/src/PureJuMP/hs232.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 232. -# -# Source: -# Problem 232 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs232 "HS232 model" diff --git a/src/PureJuMP/hs233.jl b/src/PureJuMP/hs233.jl index ccafae2b8..4ded8643b 100644 --- a/src/PureJuMP/hs233.jl +++ b/src/PureJuMP/hs233.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 233. -# -# Source: -# Problem 233 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs233 "HS233 model" diff --git a/src/PureJuMP/hs234.jl b/src/PureJuMP/hs234.jl index 3025d105d..34aa9d92e 100644 --- a/src/PureJuMP/hs234.jl +++ b/src/PureJuMP/hs234.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 234. -# -# Source: -# Problem 234 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs234 "HS234 model" diff --git a/src/PureJuMP/hs235.jl b/src/PureJuMP/hs235.jl index f690113aa..30df97668 100644 --- a/src/PureJuMP/hs235.jl +++ b/src/PureJuMP/hs235.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 235. -# -# Source: -# Problem 235 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs235 "HS235 model" diff --git a/src/PureJuMP/hs236.jl b/src/PureJuMP/hs236.jl index b1cc31dac..9e64796f5 100644 --- a/src/PureJuMP/hs236.jl +++ b/src/PureJuMP/hs236.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 236. -# -# Source: -# Problem 236 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs236 "HS236 model" diff --git a/src/PureJuMP/hs237.jl b/src/PureJuMP/hs237.jl index d2ff6c546..a9a967745 100644 --- a/src/PureJuMP/hs237.jl +++ b/src/PureJuMP/hs237.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 237. -# -# Source: -# Problem 237 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs237 "HS237 model" diff --git a/src/PureJuMP/hs238.jl b/src/PureJuMP/hs238.jl index 764da0814..a2e82e811 100644 --- a/src/PureJuMP/hs238.jl +++ b/src/PureJuMP/hs238.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 238. -# -# Source: -# Problem 238 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs238 "HS238 model" diff --git a/src/PureJuMP/hs239.jl b/src/PureJuMP/hs239.jl index b5d3865e8..f0c55829b 100644 --- a/src/PureJuMP/hs239.jl +++ b/src/PureJuMP/hs239.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 239. -# -# Source: -# Problem 239 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs239 "HS239 model" diff --git a/src/PureJuMP/hs24.jl b/src/PureJuMP/hs24.jl index 03236ec0c..dce42b286 100644 --- a/src/PureJuMP/hs24.jl +++ b/src/PureJuMP/hs24.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 24. -# -# Source: -# Problem 24 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-2-3 -# -# A. Montoison, Montreal, 04/2018. - export hs24 "HS24 model" diff --git a/src/PureJuMP/hs240.jl b/src/PureJuMP/hs240.jl index e0ae7914c..763fb34ff 100644 --- a/src/PureJuMP/hs240.jl +++ b/src/PureJuMP/hs240.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 240. -# -# Source: -# Problem 240 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs240 "HS240 model" diff --git a/src/PureJuMP/hs241.jl b/src/PureJuMP/hs241.jl index 4c8c24289..76df2b50f 100644 --- a/src/PureJuMP/hs241.jl +++ b/src/PureJuMP/hs241.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 241. -# -# Source: -# Problem 241 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs241 "HS241 model" diff --git a/src/PureJuMP/hs242.jl b/src/PureJuMP/hs242.jl index c5506a7b0..4b4e3ab6b 100644 --- a/src/PureJuMP/hs242.jl +++ b/src/PureJuMP/hs242.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 242. -# -# Source: -# Problem 242 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs242 "HS242 model" diff --git a/src/PureJuMP/hs243.jl b/src/PureJuMP/hs243.jl index f8a0f7359..176edba78 100644 --- a/src/PureJuMP/hs243.jl +++ b/src/PureJuMP/hs243.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 243. -# -# Source: -# Problem 243 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs243 "HS243 model" diff --git a/src/PureJuMP/hs244.jl b/src/PureJuMP/hs244.jl index 4a680d4d6..d7e291a02 100644 --- a/src/PureJuMP/hs244.jl +++ b/src/PureJuMP/hs244.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 244. -# -# Source: -# Problem 244 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs244 "HS244 model" diff --git a/src/PureJuMP/hs245.jl b/src/PureJuMP/hs245.jl index 607c5cd56..53812ad21 100644 --- a/src/PureJuMP/hs245.jl +++ b/src/PureJuMP/hs245.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 245. -# -# Source: -# Problem 245 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs245 "HS245 model" diff --git a/src/PureJuMP/hs246.jl b/src/PureJuMP/hs246.jl index 39c61a695..aeb9063e0 100644 --- a/src/PureJuMP/hs246.jl +++ b/src/PureJuMP/hs246.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 246. -# -# Source: -# Problem 246 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs246 "HS246 model" diff --git a/src/PureJuMP/hs248.jl b/src/PureJuMP/hs248.jl index ccb0008f7..64bec8082 100644 --- a/src/PureJuMP/hs248.jl +++ b/src/PureJuMP/hs248.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 248. -# -# Source: -# Problem 248 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs248 "HS248 model: around the world problem" diff --git a/src/PureJuMP/hs249.jl b/src/PureJuMP/hs249.jl index 2ef1c84ef..c3237d019 100644 --- a/src/PureJuMP/hs249.jl +++ b/src/PureJuMP/hs249.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 249. -# -# Source: -# Problem 249 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs249 "HS249 model" diff --git a/src/PureJuMP/hs25.jl b/src/PureJuMP/hs25.jl index 483b98768..847706b7b 100644 --- a/src/PureJuMP/hs25.jl +++ b/src/PureJuMP/hs25.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 25. -# -# Source: -# Problem 25 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SBR2-AN-3-0 -# -# A. Montoison, Montreal, 04/2018. - export hs25 "HS25 model" diff --git a/src/PureJuMP/hs250.jl b/src/PureJuMP/hs250.jl index 32f8820d7..ed32bc295 100644 --- a/src/PureJuMP/hs250.jl +++ b/src/PureJuMP/hs250.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 250. -# -# Source: -# Problem 250 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs250 "HS250 model: Rosenbrock's post office problem" diff --git a/src/PureJuMP/hs251.jl b/src/PureJuMP/hs251.jl index d3150335d..30134a878 100644 --- a/src/PureJuMP/hs251.jl +++ b/src/PureJuMP/hs251.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 251. -# -# Source: -# Problem 251 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs251 "HS251 model" diff --git a/src/PureJuMP/hs252.jl b/src/PureJuMP/hs252.jl index ccc9c3d42..51f75046f 100644 --- a/src/PureJuMP/hs252.jl +++ b/src/PureJuMP/hs252.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 252. -# -# Source: -# Problem 252 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs252 "HS252 model" diff --git a/src/PureJuMP/hs253.jl b/src/PureJuMP/hs253.jl index f350ca6fb..e464a0f21 100644 --- a/src/PureJuMP/hs253.jl +++ b/src/PureJuMP/hs253.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 253. -# -# Source: -# Problem 253 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs253 "HS253 model" diff --git a/src/PureJuMP/hs254.jl b/src/PureJuMP/hs254.jl index 350104323..487b51f5c 100644 --- a/src/PureJuMP/hs254.jl +++ b/src/PureJuMP/hs254.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 254. -# -# Source: -# Problem 254 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs254 "HS254 model" diff --git a/src/PureJuMP/hs255.jl b/src/PureJuMP/hs255.jl index 24b2763d8..822c555c4 100644 --- a/src/PureJuMP/hs255.jl +++ b/src/PureJuMP/hs255.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 255. -# -# Source: -# Problem 255 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs255 "HS255 model" diff --git a/src/PureJuMP/hs256.jl b/src/PureJuMP/hs256.jl index c54f7be06..93f49a9e5 100644 --- a/src/PureJuMP/hs256.jl +++ b/src/PureJuMP/hs256.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 256. -# -# Source: -# Problem 256 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs256 "HS256 model: Powell's function" diff --git a/src/PureJuMP/hs257.jl b/src/PureJuMP/hs257.jl index 2684372cb..4961d3d38 100644 --- a/src/PureJuMP/hs257.jl +++ b/src/PureJuMP/hs257.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 257. -# -# Source: -# Problem 257 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs257 "HS257 model" diff --git a/src/PureJuMP/hs258.jl b/src/PureJuMP/hs258.jl index 82fbf88eb..067b659d3 100644 --- a/src/PureJuMP/hs258.jl +++ b/src/PureJuMP/hs258.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 258. -# -# Source: -# Problem 258 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs258 "HS258 model: Powell's function" diff --git a/src/PureJuMP/hs259.jl b/src/PureJuMP/hs259.jl index d145da3f4..4ff1ec0f5 100644 --- a/src/PureJuMP/hs259.jl +++ b/src/PureJuMP/hs259.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 259. -# -# Source: -# Problem 259 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs259 "HS259 model" diff --git a/src/PureJuMP/hs26.jl b/src/PureJuMP/hs26.jl index 3cadbb828..63555890c 100644 --- a/src/PureJuMP/hs26.jl +++ b/src/PureJuMP/hs26.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 26. -# -# Source: -# Problem 26 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OOR2-AY-3-1 -# -# A. Cebola, Curitiba 10/2016. - export hs26 "HS26 Model" diff --git a/src/PureJuMP/hs260.jl b/src/PureJuMP/hs260.jl index f3ccc7a58..9038be71d 100644 --- a/src/PureJuMP/hs260.jl +++ b/src/PureJuMP/hs260.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 260. -# -# Source: -# Problem 260 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs260 "HS260 model" diff --git a/src/PureJuMP/hs261.jl b/src/PureJuMP/hs261.jl index ec6a5f166..22151a434 100644 --- a/src/PureJuMP/hs261.jl +++ b/src/PureJuMP/hs261.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 261. -# -# Source: -# Problem 261 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs261 "HS261 model" diff --git a/src/PureJuMP/hs262.jl b/src/PureJuMP/hs262.jl index 2a72a2ed7..1d80cc190 100644 --- a/src/PureJuMP/hs262.jl +++ b/src/PureJuMP/hs262.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 262. -# -# Source: -# Problem 262 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs262 "HS262 model" diff --git a/src/PureJuMP/hs263.jl b/src/PureJuMP/hs263.jl index 954a59718..98eaaea67 100644 --- a/src/PureJuMP/hs263.jl +++ b/src/PureJuMP/hs263.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 263. -# -# Source: -# Problem 263 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs263 "HS263 model" diff --git a/src/PureJuMP/hs264.jl b/src/PureJuMP/hs264.jl index e66c90d7c..eb9700528 100644 --- a/src/PureJuMP/hs264.jl +++ b/src/PureJuMP/hs264.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 264. -# -# Source: -# Problem 264 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs264 "HS264 model: modified Rosen-Suzuki problem" diff --git a/src/PureJuMP/hs265.jl b/src/PureJuMP/hs265.jl index 6970e76ab..d15005f7e 100644 --- a/src/PureJuMP/hs265.jl +++ b/src/PureJuMP/hs265.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 265. -# -# Source: -# Problem 265 in -# K. Schittkowski, -# More Test Examples for Nonlinear Programming Codes, -# Lectures Notes in Economics and Mathematical Systems 282, -# Springer Verlag, Heidelberg, 1987. -# -# -# -# T. Migot, Montreal, 2023. - export hs265 "HS265 model" diff --git a/src/PureJuMP/hs27.jl b/src/PureJuMP/hs27.jl index 231d70d9e..7174f4d58 100644 --- a/src/PureJuMP/hs27.jl +++ b/src/PureJuMP/hs27.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 27. -# -# Source: -# Problem 27 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-3-1 -# -# A. Cebola, Curitiba 10/2016. - export hs27 "HS27 Model" diff --git a/src/PureJuMP/hs28.jl b/src/PureJuMP/hs28.jl index 9aa494a73..404f0553d 100644 --- a/src/PureJuMP/hs28.jl +++ b/src/PureJuMP/hs28.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 28. -# -# Source: -# Problem 28 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-3-1 -# -# A. Montoison, Montreal, 04/2018. - export hs28 "HS28 model" diff --git a/src/PureJuMP/hs29.jl b/src/PureJuMP/hs29.jl index cf43fadbf..59600a602 100644 --- a/src/PureJuMP/hs29.jl +++ b/src/PureJuMP/hs29.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 29. -# -# Source: -# Problem 29 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PQR2-AN-3-1 -# -# A. Montoison, Montreal, 04/2018. - export hs29 "HS29 model" diff --git a/src/PureJuMP/hs3.jl b/src/PureJuMP/hs3.jl index 72f44e7e2..b48fc43fd 100644 --- a/src/PureJuMP/hs3.jl +++ b/src/PureJuMP/hs3.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 3. -# -# Source: -# Problem 3 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QBR2-AN-2-0 -# -# N. Antunes, Curitiba, 10/2016. - export hs3 "HS3 model" diff --git a/src/PureJuMP/hs30.jl b/src/PureJuMP/hs30.jl index 56b13aa68..48fa43010 100644 --- a/src/PureJuMP/hs30.jl +++ b/src/PureJuMP/hs30.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 30. -# -# Source: -# Problem 30 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-3-1 -# -# A. Montoison, Montreal, 04/2018. - export hs30 "HS30 model" diff --git a/src/PureJuMP/hs31.jl b/src/PureJuMP/hs31.jl index eae38245e..29919acbb 100644 --- a/src/PureJuMP/hs31.jl +++ b/src/PureJuMP/hs31.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 31. -# -# Source: -# Problem 31 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs31 "HS31 model" diff --git a/src/PureJuMP/hs316.jl b/src/PureJuMP/hs316.jl index 9ba7aea8d..fb26c123b 100644 --- a/src/PureJuMP/hs316.jl +++ b/src/PureJuMP/hs316.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 316. -# -# Source: -# Problem 316 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs316 "HS316 model" diff --git a/src/PureJuMP/hs317.jl b/src/PureJuMP/hs317.jl index bfedc26f8..d71e69c4d 100644 --- a/src/PureJuMP/hs317.jl +++ b/src/PureJuMP/hs317.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 317. -# -# Source: -# Problem 317 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs317 "HS317 model" diff --git a/src/PureJuMP/hs318.jl b/src/PureJuMP/hs318.jl index 0c6dc0125..4d5b259b5 100644 --- a/src/PureJuMP/hs318.jl +++ b/src/PureJuMP/hs318.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 318. -# -# Source: -# Problem 318 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs318 "HS318 model" diff --git a/src/PureJuMP/hs319.jl b/src/PureJuMP/hs319.jl index a0f79bbe1..72f5472e5 100644 --- a/src/PureJuMP/hs319.jl +++ b/src/PureJuMP/hs319.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 319. -# -# Source: -# Problem 319 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs319 "HS319 model" diff --git a/src/PureJuMP/hs32.jl b/src/PureJuMP/hs32.jl index 9a79a5f77..f4bdccfb9 100644 --- a/src/PureJuMP/hs32.jl +++ b/src/PureJuMP/hs32.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 32. -# -# Source: -# Problem 32 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QPR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs32 "HS32 model" diff --git a/src/PureJuMP/hs320.jl b/src/PureJuMP/hs320.jl index 1acea65dd..483c678b6 100644 --- a/src/PureJuMP/hs320.jl +++ b/src/PureJuMP/hs320.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 320. -# -# Source: -# Problem 320 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs320 "HS320 model" diff --git a/src/PureJuMP/hs321.jl b/src/PureJuMP/hs321.jl index 1404c1dcc..0c5d88207 100644 --- a/src/PureJuMP/hs321.jl +++ b/src/PureJuMP/hs321.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 321. -# -# Source: -# Problem 321 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs321 "HS321 model" diff --git a/src/PureJuMP/hs322.jl b/src/PureJuMP/hs322.jl index 07762e536..46130c53d 100644 --- a/src/PureJuMP/hs322.jl +++ b/src/PureJuMP/hs322.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 322. -# -# Source: -# Problem 322 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification QQR2-AN-2-1 -# -# M. Gollier, Montréal, 05/2023 export hs322 "HS322 model" diff --git a/src/PureJuMP/hs33.jl b/src/PureJuMP/hs33.jl index 60ec4f09e..ac9f33f8a 100644 --- a/src/PureJuMP/hs33.jl +++ b/src/PureJuMP/hs33.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 33. -# -# Source: -# Problem 33 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PQR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs33 "HS33 model" diff --git a/src/PureJuMP/hs34.jl b/src/PureJuMP/hs34.jl index b95ea91b5..1a193a84a 100644 --- a/src/PureJuMP/hs34.jl +++ b/src/PureJuMP/hs34.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 34. -# -# Source: -# Problem 34 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LGR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs34 "HS34 model" diff --git a/src/PureJuMP/hs35.jl b/src/PureJuMP/hs35.jl index fa362f84d..d89e9c445 100644 --- a/src/PureJuMP/hs35.jl +++ b/src/PureJuMP/hs35.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 35. -# -# Source: -# Problem 35 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs35 "HS35 model" diff --git a/src/PureJuMP/hs36.jl b/src/PureJuMP/hs36.jl index 88f6d52ff..2759f977e 100644 --- a/src/PureJuMP/hs36.jl +++ b/src/PureJuMP/hs36.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 36. -# -# Source: -# Problem 36 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs36 "HS36 model" diff --git a/src/PureJuMP/hs37.jl b/src/PureJuMP/hs37.jl index 66048207a..be1f739c9 100644 --- a/src/PureJuMP/hs37.jl +++ b/src/PureJuMP/hs37.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 37. -# -# Source: -# Problem 37 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs37 "HS37 model" diff --git a/src/PureJuMP/hs378.jl b/src/PureJuMP/hs378.jl index e5140af1a..43bb8795f 100644 --- a/src/PureJuMP/hs378.jl +++ b/src/PureJuMP/hs378.jl @@ -1,15 +1,3 @@ -# Schittkowski problem number 378. -# -# Source: -# Problem 378 in -# Schittkowski, K. (1987). -# More Test Examples for Nonlinear Programming Codes. -# Lecture Notes in Economics and Mathematical Systems. -# doi:10.1007/978-3-642-61582-5 -# -# classification OOR2-AN-10-3 -# -# M. Gollier, Montréal, 05/2023 export hs378 "HS378 model" diff --git a/src/PureJuMP/hs38.jl b/src/PureJuMP/hs38.jl index 6147716c5..a63658964 100644 --- a/src/PureJuMP/hs38.jl +++ b/src/PureJuMP/hs38.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 38. -# -# Source: -# Problem 38 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-4-0 -# -# A. Montoison, Montreal, 05/2018. - export hs38 "HS38 model" diff --git a/src/PureJuMP/hs39.jl b/src/PureJuMP/hs39.jl index 3d5240d69..d0586b190 100644 --- a/src/PureJuMP/hs39.jl +++ b/src/PureJuMP/hs39.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 39. -# -# Source: -# Problem 39 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LOR2-AN-4-2 -# -# D. Cabral, Curitiba, 10/2016. - export hs39 "HS39 model" diff --git a/src/PureJuMP/hs4.jl b/src/PureJuMP/hs4.jl index bccf71ea9..80c0064b5 100644 --- a/src/PureJuMP/hs4.jl +++ b/src/PureJuMP/hs4.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 4. -# -# Source: -# Problem 4 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OBR2-AN-2-0 -# -# N. Antunes, Curitiba, 10/2016. - export hs4 "HS4 model" diff --git a/src/PureJuMP/hs40.jl b/src/PureJuMP/hs40.jl index 5f073ac46..471c77557 100644 --- a/src/PureJuMP/hs40.jl +++ b/src/PureJuMP/hs40.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 40. -# -# Source: -# Problem 40 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OOR2-AN-4-3 -# -# D. Cabral, Curitiba, 10/2016. - export hs40 "HS40 model" diff --git a/src/PureJuMP/hs41.jl b/src/PureJuMP/hs41.jl index 3020a868e..3b8a84e5c 100644 --- a/src/PureJuMP/hs41.jl +++ b/src/PureJuMP/hs41.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 41. -# -# Source: -# Problem 41 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-4-1 -# -# A. Montoison, Montreal, 05/2018. - export hs41 "HS41 model" diff --git a/src/PureJuMP/hs42.jl b/src/PureJuMP/hs42.jl index 5820852e4..78c7e3660 100644 --- a/src/PureJuMP/hs42.jl +++ b/src/PureJuMP/hs42.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 42. -# -# Source: -# Problem 42 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-4-1 -# -# A. Montoison, Montreal, 05/2018. - export hs42 "HS42 model" diff --git a/src/PureJuMP/hs43.jl b/src/PureJuMP/hs43.jl index 0ff1cf6b2..012442115 100644 --- a/src/PureJuMP/hs43.jl +++ b/src/PureJuMP/hs43.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 43. -# -# Source: -# Problem 43 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-4-3 -# -# A. Montoison, Montreal, 05/2018. - export hs43 "HS43 model" diff --git a/src/PureJuMP/hs44.jl b/src/PureJuMP/hs44.jl index f235226e0..e44b59d75 100644 --- a/src/PureJuMP/hs44.jl +++ b/src/PureJuMP/hs44.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 44. -# -# Source: -# Problem 44 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-4-6 -# -# A. Montoison, Montreal, 05/2018. - export hs44 "HS44 model" diff --git a/src/PureJuMP/hs45.jl b/src/PureJuMP/hs45.jl index 99abf4363..294a80513 100644 --- a/src/PureJuMP/hs45.jl +++ b/src/PureJuMP/hs45.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 45. -# -# Source: -# Problem 45 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PBR2-AN-5-0 -# -# A. Montoison, Montreal, 05/2018. - export hs45 "HS45 model" diff --git a/src/PureJuMP/hs46.jl b/src/PureJuMP/hs46.jl index dcb2e8a3d..1b87dd5b2 100644 --- a/src/PureJuMP/hs46.jl +++ b/src/PureJuMP/hs46.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 46. -# -# Source: -# Problem 46 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR2-AN-5-2 -# -# A. Montoison, Montreal, 05/2018. - export hs46 "HS46 model" diff --git a/src/PureJuMP/hs47.jl b/src/PureJuMP/hs47.jl index 88da0bed0..8ba5f8624 100644 --- a/src/PureJuMP/hs47.jl +++ b/src/PureJuMP/hs47.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 47. -# -# Source: -# Problem 47 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR2-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs47 "HS47 model" diff --git a/src/PureJuMP/hs48.jl b/src/PureJuMP/hs48.jl index 1bcf73e27..2773ba6b6 100644 --- a/src/PureJuMP/hs48.jl +++ b/src/PureJuMP/hs48.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 48. -# -# Source: -# Problem 48 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-5-2 -# -# A. Montoison, Montreal, 05/2018. - export hs48 "HS48 model" diff --git a/src/PureJuMP/hs49.jl b/src/PureJuMP/hs49.jl index 58c749eea..a3086bfa8 100644 --- a/src/PureJuMP/hs49.jl +++ b/src/PureJuMP/hs49.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 49. -# -# Source: -# Problem 49 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-5-2 -# -# A. Montoison, Montreal, 05/2018. - export hs49 "HS49 model" diff --git a/src/PureJuMP/hs5.jl b/src/PureJuMP/hs5.jl index 212b63da4..e51374d2c 100644 --- a/src/PureJuMP/hs5.jl +++ b/src/PureJuMP/hs5.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 5. -# -# Source: -# Problem 5 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OBR2-AN-2-0 -# -# N. Antunes, Curitiba, 10/2016. - export hs5 "HS5 model" diff --git a/src/PureJuMP/hs50.jl b/src/PureJuMP/hs50.jl index 97d743e31..f227582bd 100644 --- a/src/PureJuMP/hs50.jl +++ b/src/PureJuMP/hs50.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 50. -# -# Source: -# Problem 50 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR2-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs50 "HS50 model" diff --git a/src/PureJuMP/hs51.jl b/src/PureJuMP/hs51.jl index 7a36d22be..482195a40 100644 --- a/src/PureJuMP/hs51.jl +++ b/src/PureJuMP/hs51.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 51. -# -# Source: -# Problem 51 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs51 "HS51 model" diff --git a/src/PureJuMP/hs52.jl b/src/PureJuMP/hs52.jl index 7b58bf532..aef71149d 100644 --- a/src/PureJuMP/hs52.jl +++ b/src/PureJuMP/hs52.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 52. -# -# Source: -# Problem 52 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs52 "HS52 model" diff --git a/src/PureJuMP/hs53.jl b/src/PureJuMP/hs53.jl index c93162362..3fadba605 100644 --- a/src/PureJuMP/hs53.jl +++ b/src/PureJuMP/hs53.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 53. -# -# Source: -# Problem 53 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR2-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs53 "HS53 model" diff --git a/src/PureJuMP/hs54.jl b/src/PureJuMP/hs54.jl index 7e392c019..39240bd62 100644 --- a/src/PureJuMP/hs54.jl +++ b/src/PureJuMP/hs54.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 54. -# -# Source: -# Problem 54 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GLR2-AN-6-1 -# -# A. Montoison, Montreal, 05/2018. - export hs54 "HS54 model" diff --git a/src/PureJuMP/hs55.jl b/src/PureJuMP/hs55.jl index 75fcfad70..7a5d451b4 100644 --- a/src/PureJuMP/hs55.jl +++ b/src/PureJuMP/hs55.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 55. -# -# Source: -# Problem 55 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GLR2-AN-6-6 -# -# A. Montoison, Montreal, 05/2018. - export hs55 "HS55 model" diff --git a/src/PureJuMP/hs56.jl b/src/PureJuMP/hs56.jl index b99a3cac5..e05ca20cf 100644 --- a/src/PureJuMP/hs56.jl +++ b/src/PureJuMP/hs56.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 56. -# -# Source: -# Problem 56 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR2-AN-7-4 -# -# A. Montoison, Montreal, 05/2018. - export hs56 "HS56 model" diff --git a/src/PureJuMP/hs57.jl b/src/PureJuMP/hs57.jl index 8ba4fb81c..5384ca02c 100644 --- a/src/PureJuMP/hs57.jl +++ b/src/PureJuMP/hs57.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 57. -# -# Source: -# Problem 57 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR-AN-2-1 -# -# A. Montoison, Montreal, 05/2018. - export hs57 "HS57 model" diff --git a/src/PureJuMP/hs59.jl b/src/PureJuMP/hs59.jl index 283ba69ce..e1f5f03dc 100644 --- a/src/PureJuMP/hs59.jl +++ b/src/PureJuMP/hs59.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 59. -# -# Source: -# Problem 59 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GQR2-AN-2-3 -# -# A. Montoison, Montreal, 05/2018. - export hs59 "HS59 model" diff --git a/src/PureJuMP/hs6.jl b/src/PureJuMP/hs6.jl index c9b181113..dea8ff5a0 100644 --- a/src/PureJuMP/hs6.jl +++ b/src/PureJuMP/hs6.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 6. -# -# Source: -# Problem 6 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-2-1 -# -# D. Orban, Montreal, 04/2016. - export hs6 "HS6 model" diff --git a/src/PureJuMP/hs60.jl b/src/PureJuMP/hs60.jl index f620d0eb2..6e854c969 100644 --- a/src/PureJuMP/hs60.jl +++ b/src/PureJuMP/hs60.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 60. -# -# Source: -# Problem 60 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs60 "HS60 model" diff --git a/src/PureJuMP/hs61.jl b/src/PureJuMP/hs61.jl index 12607ed97..70a1addb2 100644 --- a/src/PureJuMP/hs61.jl +++ b/src/PureJuMP/hs61.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 61. -# -# Source: -# Problem 61 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs61 "HS61 model" diff --git a/src/PureJuMP/hs62.jl b/src/PureJuMP/hs62.jl index e0806d8ae..3257e9111 100644 --- a/src/PureJuMP/hs62.jl +++ b/src/PureJuMP/hs62.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 62. -# -# Source: -# Problem 62 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GLR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs62 "HS62 model" diff --git a/src/PureJuMP/hs63.jl b/src/PureJuMP/hs63.jl index ec62356df..e87f00045 100644 --- a/src/PureJuMP/hs63.jl +++ b/src/PureJuMP/hs63.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 63. -# -# Source: -# Problem 63 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs63 "HS63 model" diff --git a/src/PureJuMP/hs64.jl b/src/PureJuMP/hs64.jl index 6d1188af8..45820641f 100644 --- a/src/PureJuMP/hs64.jl +++ b/src/PureJuMP/hs64.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 64. -# -# Source: -# Problem 64 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs64 "HS64 model" diff --git a/src/PureJuMP/hs65.jl b/src/PureJuMP/hs65.jl index b21ef38fa..357155e27 100644 --- a/src/PureJuMP/hs65.jl +++ b/src/PureJuMP/hs65.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 65. -# -# Source: -# Problem 65 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR2-AN-3-1 -# -# A. Montoison, Montreal, 05/2018. - export hs65 "HS65 model" diff --git a/src/PureJuMP/hs66.jl b/src/PureJuMP/hs66.jl index 41ed94b36..347d40dbc 100644 --- a/src/PureJuMP/hs66.jl +++ b/src/PureJuMP/hs66.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 66. -# -# Source: -# Problem 66 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LGR2-AN-3-2 -# -# A. Montoison, Montreal, 05/2018. - export hs66 "HS66 model" diff --git a/src/PureJuMP/hs68.jl b/src/PureJuMP/hs68.jl index e18c4a381..6100d5d47 100644 --- a/src/PureJuMP/hs68.jl +++ b/src/PureJuMP/hs68.jl @@ -1,19 +1,3 @@ -# Hock and Schittkowski problem number 68. -# -# Source: -# Problem 68 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GGR-P1-1 -# -# Original source: -# E. von Collani, Kostenoptimale Prufplane bei laufender -# Kontrolle eines normalverteilten Merkmals, Dissertation, -# Institut fur Angewandte Mathematik und Statistik, Universitat Wurzburg, 1978. - export hs68 function hs68(args...; kwargs...) diff --git a/src/PureJuMP/hs69.jl b/src/PureJuMP/hs69.jl index 7592c4689..1292da4a7 100644 --- a/src/PureJuMP/hs69.jl +++ b/src/PureJuMP/hs69.jl @@ -1,19 +1,3 @@ -# Hock and Schittkowski problem number 69. -# -# Source: -# Problem 69 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GGR-P1-2 -# -# Original source: -# E. von Collani, Kostenoptimale Prufplane bei laufender -# Kontrolle eines normalverteilten Merkmals, Dissertation, -# Institut fur Angewandte Mathematik und Statistik, Universitat Wurzburg, 1978. - export hs69 function hs69(args...; kwargs...) diff --git a/src/PureJuMP/hs7.jl b/src/PureJuMP/hs7.jl index 776e1a671..fb1e8cb5b 100644 --- a/src/PureJuMP/hs7.jl +++ b/src/PureJuMP/hs7.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 7. -# -# Source: -# Problem 7 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OOR2-AN-2-1 -# -# D. Orban, Montreal, 04/2016. - export hs7 "HS7 model" diff --git a/src/PureJuMP/hs70.jl b/src/PureJuMP/hs70.jl index d7a605363..7a967c027 100644 --- a/src/PureJuMP/hs70.jl +++ b/src/PureJuMP/hs70.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 70. -# -# Source: -# Problem 70 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification SQR2-AN-4-1 -# -# A. Montoison, Montreal, 05/2018. - export hs70 "HS70 model" diff --git a/src/PureJuMP/hs71.jl b/src/PureJuMP/hs71.jl index ea216273f..87fd299ef 100644 --- a/src/PureJuMP/hs71.jl +++ b/src/PureJuMP/hs71.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 71. -# -# Source: -# Problem 71 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR2-AN-4-2 -# -# A. Montoison, Montreal, 05/2018. - export hs71 "HS71 model" diff --git a/src/PureJuMP/hs72.jl b/src/PureJuMP/hs72.jl index 8e26f1005..4dd52f510 100644 --- a/src/PureJuMP/hs72.jl +++ b/src/PureJuMP/hs72.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 72. -# -# Source: -# Problem 72 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LPR2-AN-4-2 -# -# A. Montoison, Montreal, 05/2018. - export hs72 "HS72 model" diff --git a/src/PureJuMP/hs73.jl b/src/PureJuMP/hs73.jl index 6db9223f1..9647590fa 100644 --- a/src/PureJuMP/hs73.jl +++ b/src/PureJuMP/hs73.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 73. -# -# Source: -# Problem 73 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification LGI-AN-4-3 -# -# A. Montoison, Montreal, 05/2018. - export hs73 "HS73 model" diff --git a/src/PureJuMP/hs74.jl b/src/PureJuMP/hs74.jl index 092ef3a62..c9edee333 100644 --- a/src/PureJuMP/hs74.jl +++ b/src/PureJuMP/hs74.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 74. -# -# Source: -# Problem 74 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR-AN-4-5 -# -# A. Montoison, Montreal, 05/2018. - export hs74 "HS74 model" diff --git a/src/PureJuMP/hs75.jl b/src/PureJuMP/hs75.jl index ab845a024..e3ea7e63a 100644 --- a/src/PureJuMP/hs75.jl +++ b/src/PureJuMP/hs75.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 75. -# -# Source: -# Problem 75 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR-AN-4-5 -# -# A. Montoison, Montreal, 05/2018. - export hs75 "HS75 model" diff --git a/src/PureJuMP/hs76.jl b/src/PureJuMP/hs76.jl index 70b7e32f1..3fd61c77d 100644 --- a/src/PureJuMP/hs76.jl +++ b/src/PureJuMP/hs76.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 76. -# -# Source: -# Problem 76 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QLR-AN-4-3 -# -# A. Montoison, Montreal, 05/2018. - export hs76 "HS76 model" diff --git a/src/PureJuMP/hs77.jl b/src/PureJuMP/hs77.jl index 9bb36374c..6a0dcb38b 100644 --- a/src/PureJuMP/hs77.jl +++ b/src/PureJuMP/hs77.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 77. -# -# Source: -# Problem 77 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PGR-AN-5-2 -# -# A. Montoison, Montreal, 05/2018. - export hs77 "HS77 model" diff --git a/src/PureJuMP/hs78.jl b/src/PureJuMP/hs78.jl index eaef92d75..376d8837a 100644 --- a/src/PureJuMP/hs78.jl +++ b/src/PureJuMP/hs78.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 78. -# -# Source: -# Problem 78 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs78 "HS78 model" diff --git a/src/PureJuMP/hs79.jl b/src/PureJuMP/hs79.jl index ca1260cfd..77fd9f109 100644 --- a/src/PureJuMP/hs79.jl +++ b/src/PureJuMP/hs79.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 79. -# -# Source: -# Problem 79 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs79 "HS79 model" diff --git a/src/PureJuMP/hs8.jl b/src/PureJuMP/hs8.jl index 51f4be3c9..617a6b891 100644 --- a/src/PureJuMP/hs8.jl +++ b/src/PureJuMP/hs8.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 8. -# -# Source: -# Problem 8 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OOR2-AN-2-1 -# -# D. Orban, Montreal, 04/2016. - export hs8 "HS8 model" diff --git a/src/PureJuMP/hs80.jl b/src/PureJuMP/hs80.jl index 82a74c5a6..ead443ffe 100644 --- a/src/PureJuMP/hs80.jl +++ b/src/PureJuMP/hs80.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 80. -# -# Source: -# Problem 80 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GPR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs80 "HS80 model" diff --git a/src/PureJuMP/hs81.jl b/src/PureJuMP/hs81.jl index 1e636cdc2..c44584f59 100644 --- a/src/PureJuMP/hs81.jl +++ b/src/PureJuMP/hs81.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 81. -# -# Source: -# Problem 81 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification GPR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs81 "HS81 model" diff --git a/src/PureJuMP/hs83.jl b/src/PureJuMP/hs83.jl index 942166084..45791bc90 100644 --- a/src/PureJuMP/hs83.jl +++ b/src/PureJuMP/hs83.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 83. -# -# Source: -# Problem 83 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs83 "HS83 model" diff --git a/src/PureJuMP/hs84.jl b/src/PureJuMP/hs84.jl index db3687579..319f196c9 100644 --- a/src/PureJuMP/hs84.jl +++ b/src/PureJuMP/hs84.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 84. -# -# Source: -# Problem 84 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification QQR-AN-5-3 -# -# A. Montoison, Montreal, 05/2018. - export hs84 "HS84 model" diff --git a/src/PureJuMP/hs86.jl b/src/PureJuMP/hs86.jl index 6f0461921..4bf1509c7 100644 --- a/src/PureJuMP/hs86.jl +++ b/src/PureJuMP/hs86.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 86. -# -# Source: -# Problem 86 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR-AN-5-10 -# -# A. Montoison, Montreal, 05/2018. - export hs86 "HS86 model" diff --git a/src/PureJuMP/hs87.jl b/src/PureJuMP/hs87.jl index ae41bb1cc..aaa49301c 100644 --- a/src/PureJuMP/hs87.jl +++ b/src/PureJuMP/hs87.jl @@ -1,14 +1,3 @@ -# Hock and Schittkowski problem number 87. -# -# Source: -# Problem 87 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PLR-AN-5-10 - export hs87 "HS87 model" diff --git a/src/PureJuMP/hs9.jl b/src/PureJuMP/hs9.jl index af7785e2f..d2e60b5df 100644 --- a/src/PureJuMP/hs9.jl +++ b/src/PureJuMP/hs9.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 9. -# -# Source: -# Problem 9 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification OLR2-AN-2-1 -# -# A. Cebola, Curitiba , 10/2016. - export hs9 "HS9 Model" diff --git a/src/PureJuMP/hs93.jl b/src/PureJuMP/hs93.jl index 38c9247b5..12158798f 100644 --- a/src/PureJuMP/hs93.jl +++ b/src/PureJuMP/hs93.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 93. -# -# Source: -# Problem 93 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-6-2 -# -# A. Montoison, Montreal, 05/2018. - export hs93 "HS93 model" diff --git a/src/PureJuMP/hs95.jl b/src/PureJuMP/hs95.jl index 5521c67a2..43d689ecf 100644 --- a/src/PureJuMP/hs95.jl +++ b/src/PureJuMP/hs95.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 95. -# -# Source: -# Problem 95 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-6-4 -# -# A. Montoison, Montreal, 05/2018. - export hs95 "HS95 model" diff --git a/src/PureJuMP/hs96.jl b/src/PureJuMP/hs96.jl index a6e9bfbb4..18fdc9165 100644 --- a/src/PureJuMP/hs96.jl +++ b/src/PureJuMP/hs96.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 96. -# -# Source: -# Problem 96 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-6-4 -# -# A. Montoison, Montreal, 05/2018. - export hs96 "HS96 model" diff --git a/src/PureJuMP/hs97.jl b/src/PureJuMP/hs97.jl index 20b862bea..e62be16ec 100644 --- a/src/PureJuMP/hs97.jl +++ b/src/PureJuMP/hs97.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 97. -# -# Source: -# Problem 97 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-6-4 -# -# A. Montoison, Montreal, 05/2018. - export hs97 "HS97 model" diff --git a/src/PureJuMP/hs98.jl b/src/PureJuMP/hs98.jl index 816efaac2..85051dda2 100644 --- a/src/PureJuMP/hs98.jl +++ b/src/PureJuMP/hs98.jl @@ -1,16 +1,3 @@ -# Hock and Schittkowski problem number 98. -# -# Source: -# Problem 98 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1981. -# -# classification PPR-AN-6-4 -# -# A. Montoison, Montreal, 05/2018. - export hs98 "HS98 model" diff --git a/src/PureJuMP/hs99.jl b/src/PureJuMP/hs99.jl index ea01f7191..90b2e87a4 100644 --- a/src/PureJuMP/hs99.jl +++ b/src/PureJuMP/hs99.jl @@ -1,15 +1,3 @@ -# Hock and Schittkowski problem number 99. -# -# Source: -# Problem 99 in -# W. Hock and K. Schittkowski, -# Test examples for nonlinear programming codes, -# Lectures Notes in Economics and Mathematical Systems 187, -# Springer Verlag, Heidelberg, 1991. -# -# classification PPR-AN-6-4 -# - export hs99 "HS99 model" diff --git a/src/PureJuMP/indef_mod.jl b/src/PureJuMP/indef_mod.jl index 9e08386e0..6fdde460b 100644 --- a/src/PureJuMP/indef_mod.jl +++ b/src/PureJuMP/indef_mod.jl @@ -1,17 +1,3 @@ -# Problem 37 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# based on the original problem by N. Gould -# -# classification OUR2-AN-V-0 - -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export indef_mod function indef_mod(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/integreq.jl b/src/PureJuMP/integreq.jl index ffc07d19a..e3d7b7720 100644 --- a/src/PureJuMP/integreq.jl +++ b/src/PureJuMP/integreq.jl @@ -1,17 +1,3 @@ -# The discrete integral problem. -# -# Source: problem 29 in -# J.J. More, B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 165 (p. 74) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification NOR2-AN-V-V - export integreq "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/jennrichsampson.jl b/src/PureJuMP/jennrichsampson.jl index 7818251a2..9bac478f5 100644 --- a/src/PureJuMP/jennrichsampson.jl +++ b/src/PureJuMP/jennrichsampson.jl @@ -1,8 +1,3 @@ -# Source: problem 6 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - export jennrichsampson function jennrichsampson(args...; n::Int = default_nvar, m::Int = 10, kwargs...) diff --git a/src/PureJuMP/kirby2.jl b/src/PureJuMP/kirby2.jl index 5f394eccb..8861cdaa9 100644 --- a/src/PureJuMP/kirby2.jl +++ b/src/PureJuMP/kirby2.jl @@ -1,37 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/kirby2.dat - -NIST/ITL StRD -Dataset Name: Kirby2 (Kirby2.dat) - -File Format: ASCII - Starting Values (lines 41 to 45) - Certified Values (lines 41 to 50) - Data (lines 61 to 211) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - scanning electron microscope line with standards. - -Reference: Kirby, R., NIST (197?). - Scanning electron microscope line width standards. - -Data: 1 Response (y) - 1 Predictor (x) - 151 Observations - Average Level of Difficulty - Observed Data - -Model: Rational Class (quadratic/quadratic) - 5 Parameters (b1 to b5) - - y = (b1 + b2*x + b3*x**2) / - (1 + b4*x + b5*x**2) + e -=# -# T. Migot, Montreal, 2023. - export kirby2 function kirby2(args...; kwargs...) diff --git a/src/PureJuMP/kowosb.jl b/src/PureJuMP/kowosb.jl index 0db8ee6d2..80dc090b8 100644 --- a/src/PureJuMP/kowosb.jl +++ b/src/PureJuMP/kowosb.jl @@ -1,9 +1,3 @@ -# Source: Problem 15 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# classification SUR2-MN-4-0 export kowosb function kowosb(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/lanczos1.jl b/src/PureJuMP/lanczos1.jl index 98af125a7..5596f9616 100644 --- a/src/PureJuMP/lanczos1.jl +++ b/src/PureJuMP/lanczos1.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos1.dat - -NIST/ITL StRD -Dataset Name: lanczos1 (lanczos1.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 74) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study regarding - dental research in monomolecular adsorption. The - response variable is volume, and the predictor - variable is pressure. - -Reference: Misra, D., NIST (1978). - Dental Research Monomolecular Adsorption Study. - -Data: 1 Response Variable (y = volume) - 1 Predictor Variable (x = pressure) - 14 Observations - Lower Level of Difficulty - Observed Data - -Model: Exponential Class - 2 Parameters (b1 and b2) - - y = b1*(1-exp[-b2*x]) + e -=# -# T. Migot, Montreal, 2023. - export lanczos1 function lanczos1(args...; kwargs...) diff --git a/src/PureJuMP/lanczos2.jl b/src/PureJuMP/lanczos2.jl index 0838fa539..ae7dc2e58 100644 --- a/src/PureJuMP/lanczos2.jl +++ b/src/PureJuMP/lanczos2.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos2.dat - -Dataset Name: Lanczos2 (Lanczos2.dat) - -File Format: ASCII - Starting Values (lines 41 to 46) - Certified Values (lines 41 to 51) - Data (lines 61 to 84) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are taken from an example discussed in - Lanczos (1956). The data were generated to 6-digits - of accuracy using - f(x) = 0.0951*exp(-x) + 0.8607*exp(-3*x) - + 1.5576*exp(-5*x). - -Reference: Lanczos, C. (1956). - Applied Analysis. - Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. - -Data: 1 Response (y) - 1 Predictor (x) - 24 Observations - Average Level of Difficulty - Generated Data - -Model: Exponential Class - 6 Parameters (b1 to b6) - - y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e -=# -# T. Migot, Montreal, 2023. - export lanczos2 function lanczos2(args...; kwargs...) diff --git a/src/PureJuMP/lanczos3.jl b/src/PureJuMP/lanczos3.jl index 01cca7b7f..b107e5bab 100644 --- a/src/PureJuMP/lanczos3.jl +++ b/src/PureJuMP/lanczos3.jl @@ -1,41 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/lanczos3.dat - -NIST/ITL StRD -Dataset Name: Lanczos3 (Lanczos3.dat) - -File Format: ASCII - Starting Values (lines 41 to 46) - Certified Values (lines 41 to 51) - Data (lines 61 to 84) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are taken from an example discussed in - Lanczos (1956). The data were generated to 5-digits - of accuracy using - f(x) = 0.0951*exp(-x) + 0.8607*exp(-3*x) - + 1.5576*exp(-5*x). - -Reference: Lanczos, C. (1956). - Applied Analysis. - Englewood Cliffs, NJ: Prentice Hall, pp. 272-280. - -Data: 1 Response (y) - 1 Predictor (x) - 24 Observations - Lower Level of Difficulty - Generated Data - -Model: Exponential Class - 6 Parameters (b1 to b6) - - y = b1*exp(-b2*x) + b3*exp(-b4*x) + b5*exp(-b6*x) + e - -=# -# T. Migot, Montreal, 2023. - export lanczos3 function lanczos3(args...; kwargs...) diff --git a/src/PureJuMP/liarwhd.jl b/src/PureJuMP/liarwhd.jl index 6e2a1ce01..84e53b750 100644 --- a/src/PureJuMP/liarwhd.jl +++ b/src/PureJuMP/liarwhd.jl @@ -1,26 +1,3 @@ -# G. Li, -# "The secant/finite difference algorithm for solving sparse -# nonlinear systems of equations", -# SIAM Journal on Optimization, (to appear), 1990. - -# classification SUR2-AN-V-0 - -# This is a simplified version of problem NONDIA. - -# Problem 38 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# based on the original problem by N. Gould -# -# classification OUR2-AN-V-0 - -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export liarwhd function liarwhd(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/marine.jl b/src/PureJuMP/marine.jl index afd07b22d..fa0f180cd 100644 --- a/src/PureJuMP/marine.jl +++ b/src/PureJuMP/marine.jl @@ -1,31 +1,16 @@ -# Given observations of ns stages of a marine species over n timesteps, -# minimize the loss between the observation and the computed law of paraneters : growth, mortality and number of specimens (g,m,x) - -# This is problem 6 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - -# Marine Population Dynamics Problem -# Collocation formulation -# Alexander S. Bondarenko - Summer 1998 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export marine function marine(args...; n::Int = default_nvar, nc::Int = 1, kwargs...) nlp = Model() + n_orig = n nc = max(min(nc, 4), 1) # number of collocation points ne = 8 # number of differential equations nm = 21 # number of measurements n = max(n, 3 * ne * nc + ne + 2 * ne) nh = Int(round((n - 2 * ne + 1) / (3 * ne * nc + ne))) # number of partition intervals + @adjust_nvar_warn("marine", n_orig, 8 + 7 + nh * (8 + 3 * 8 * nc)) # roots of k-th degree Legendre polynomial rho = if nc == 1 diff --git a/src/PureJuMP/methanol.jl b/src/PureJuMP/methanol.jl index f27f055ca..402ebece4 100644 --- a/src/PureJuMP/methanol.jl +++ b/src/PureJuMP/methanol.jl @@ -1,10 +1,3 @@ -# Methanol-to-Hydrocarbons Problem -# Collocation formulation -# Michael Merritt - Summer 2000 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export methanol function methanol(args...; n::Int = default_nvar, kwargs...) @@ -35,6 +28,7 @@ function methanol(args...; n::Int = default_nvar, kwargs...) 1.122, ] tf = tau[nm] # ODEs defined in [0,tf] + @adjust_nvar_warn("methanol", n, 30 * n + 5) h = tf / n # uniform interval length t = [(i-1)*h for i = 1:(n + 1)] # partition fact = [factorial(k) for k = 0:nc] diff --git a/src/PureJuMP/meyer3.jl b/src/PureJuMP/meyer3.jl index 310e8b190..67b552978 100644 --- a/src/PureJuMP/meyer3.jl +++ b/src/PureJuMP/meyer3.jl @@ -1,14 +1,3 @@ -# Meyer function -# -# Source: Problem 10 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley #29 (p. 73). -# -# classification SUR2-RN-3-0 - export meyer3 "Meyer function" diff --git a/src/PureJuMP/mgh09.jl b/src/PureJuMP/mgh09.jl index a089c52b5..235edccdb 100644 --- a/src/PureJuMP/mgh09.jl +++ b/src/PureJuMP/mgh09.jl @@ -1,43 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh09.dat - -NIST/ITL StRD -Dataset Name: MGH09 (MGH09.dat) - -File Format: ASCII - Starting Values (lines 41 to 44) - Certified Values (lines 41 to 49) - Data (lines 61 to 71) - -Procedure: Nonlinear Least Squares Regression - -Description: This problem was found to be difficult for some very - good algorithms. There is a local minimum at (+inf, - -14.07..., -inf, -inf) with final sum of squares - 0.00102734.... - - See More, J. J., Garbow, B. S., and Hillstrom, K. E. - (1981). Testing unconstrained optimization software. - ACM Transactions on Mathematical Software. 7(1): - pp. 17-41. - -Reference: Kowalik, J.S., and M. R. Osborne, (1978). - Methods for Unconstrained Optimization Problems. - New York, NY: Elsevier North-Holland. - -Data: 1 Response (y) - 1 Predictor (x) - 11 Observations - Higher Level of Difficulty - Generated Data - -Model: Rational Class (linear/quadratic) - 4 Parameters (b1 to b4) - - y = b1*(x**2+x*b2) / (x**2+x*b3+b4) + e -=# - export mgh09 function mgh09(args...; kwargs...) diff --git a/src/PureJuMP/mgh10.jl b/src/PureJuMP/mgh10.jl index 8c73cab9e..51137665b 100644 --- a/src/PureJuMP/mgh10.jl +++ b/src/PureJuMP/mgh10.jl @@ -1,43 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh10.dat - -NIST/ITL StRD -Dataset Name: MGH10 (MGH10.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 76) - -Procedure: Nonlinear Least Squares Regression - -Description: This problem was found to be difficult for some very - good algorithms. - - See More, J. J., Garbow, B. S., and Hillstrom, K. E. - (1981). Testing unconstrained optimization software. - ACM Transactions on Mathematical Software. 7(1): - pp. 17-41. - -Reference: Meyer, R. R. (1970). - Theoretical and computational aspects of nonlinear - regression. In Nonlinear Programming, Rosen, - Mangasarian and Ritter (Eds). - New York, NY: Academic Press, pp. 465-486. - -Data: 1 Response (y) - 1 Predictor (x) - 16 Observations - Higher Level of Difficulty - Generated Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - y = b1 * exp[b2/(x+b3)] + e -=# - export mgh10 function mgh10(args...; kwargs...) diff --git a/src/PureJuMP/mgh17.jl b/src/PureJuMP/mgh17.jl index 2bc4176f6..f6b67c5b9 100644 --- a/src/PureJuMP/mgh17.jl +++ b/src/PureJuMP/mgh17.jl @@ -1,44 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/mgh17.dat - -NIST/ITL StRD -Dataset Name: MGH17 (MGH17.dat) - -File Format: ASCII - Starting Values (lines 41 to 45) - Certified Values (lines 41 to 50) - Data (lines 61 to 93) - -Procedure: Nonlinear Least Squares Regression - -Description: This problem was found to be difficult for some very - good algorithms. - - See More, J. J., Garbow, B. S., and Hillstrom, K. E. - (1981). Testing unconstrained optimization software. - ACM Transactions on Mathematical Software. 7(1): - pp. 17-41. - -Reference: Osborne, M. R. (1972). - Some aspects of nonlinear least squares - calculations. In Numerical Methods for Nonlinear - Optimization, Lootsma (Ed). - New York, NY: Academic Press, pp. 171-189. - -Data: 1 Response (y) - 1 Predictor (x) - 33 Observations - Average Level of Difficulty - Generated Data - -Model: Exponential Class - 5 Parameters (b1 to b5) - - y = b1 + b2*exp[-x*b4] + b3*exp[-x*b5] + e -=# -# T. Migot, Montreal, 2023. - export mgh17 function mgh17(args...; kwargs...) diff --git a/src/PureJuMP/minsurf.jl b/src/PureJuMP/minsurf.jl index a50e97f15..c1f5bb492 100644 --- a/src/PureJuMP/minsurf.jl +++ b/src/PureJuMP/minsurf.jl @@ -1,14 +1,3 @@ -# Minimal surface with obstacle problem - -# Find the surface with minimal area, given boundary conditions, -# and above an obstacle. - -# This is problem 17=the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) -# classification OBR2-AN-V-V - export minsurf function minsurf(args...; n = default_nvar, kwargs...) @@ -16,6 +5,7 @@ function minsurf(args...; n = default_nvar, kwargs...) if !((:nx in keys(kwargs)) & (:ny in keys(kwargs))) nx, ny = Int(round(sqrt(max(1, n - 2)))), Int(round(sqrt(max(1, n - 2)))) end + @adjust_nvar_warn("minsurf", n, (nx + 2) * (ny + 2)) x_mesh = LinRange(0, 1, nx + 2) # coordinates of the mesh points x v0 = zeros(nx + 2, ny + 2) # Surface matrix initialization diff --git a/src/PureJuMP/misra1a.jl b/src/PureJuMP/misra1a.jl index c2d0d82cc..52b547208 100644 --- a/src/PureJuMP/misra1a.jl +++ b/src/PureJuMP/misra1a.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1a.dat - -NIST/ITL StRD -Dataset Name: misra1a (misra1a.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 74) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study regarding - dental research in monomolecular adsorption. The - response variable is volume, and the predictor - variable is pressure. - -Reference: Misra, D., NIST (1978). - Dental Research Monomolecular Adsorption Study. - -Data: 1 Response Variable (y = volume) - 1 Predictor Variable (x = pressure) - 14 Observations - Lower Level of Difficulty - Observed Data - -Model: Exponential Class - 2 Parameters (b1 and b2) - - y = b1*(1-exp[-b2*x]) + e -=# -# T. Migot, Montreal, 2023. - export misra1a function misra1a(args...; kwargs...) diff --git a/src/PureJuMP/misra1b.jl b/src/PureJuMP/misra1b.jl index 3237cbc94..918ae409e 100644 --- a/src/PureJuMP/misra1b.jl +++ b/src/PureJuMP/misra1b.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1b.dat - -NIST/ITL StRD -Dataset Name: Misra1b (Misra1b.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 74) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study regarding - dental research in monomolecular adsorption. The - response variable is volume, and the predictor - variable is pressure. - -Reference: Misra, D., NIST (1978). - Dental Research Monomolecular Adsorption Study. - -Data: 1 Response (y = volume) - 1 Predictor (x = pressure) - 14 Observations - Lower Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 2 Parameters (b1 and b2) - - y = b1 * (1-(1+b2*x/2)**(-2)) + e - -=# -# T. Migot, Montreal, 2023. - export misra1b function misra1b(args...; kwargs...) diff --git a/src/PureJuMP/misra1c.jl b/src/PureJuMP/misra1c.jl index 1415b4f4f..4c702370a 100644 --- a/src/PureJuMP/misra1c.jl +++ b/src/PureJuMP/misra1c.jl @@ -1,38 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1c.dat - -NIST/ITL StRD -Dataset Name: Misra1c (Misra1c.dat) - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 74) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study regarding - dental research in monomolecular adsorption. The - response variable is volume, and the predictor - variable is pressure. - -Reference: Misra, D., NIST (1978). - Dental Research Monomolecular Adsorption. - -Data: 1 Response (y = volume) - 1 Predictor (x = pressure) - 14 Observations - Average Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 2 Parameters (b1 and b2) - - y = b1 * (1-(1+2*b2*x)**(-.5)) + e -=# -# T. Migot, Montreal, 2023. - export misra1c function misra1c(args...; kwargs...) diff --git a/src/PureJuMP/misra1d.jl b/src/PureJuMP/misra1d.jl index 044a7ce1a..df0e312c0 100644 --- a/src/PureJuMP/misra1d.jl +++ b/src/PureJuMP/misra1d.jl @@ -1,35 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/misra1d.dat - -File Format: ASCII - Starting Values (lines 41 to 42) - Certified Values (lines 41 to 47) - Data (lines 61 to 74) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study regarding - dental research in monomolecular adsorption. The - response variable is volume, and the predictor - variable is pressure. - -Reference: Misra, D., NIST (1978). - Dental Research Monomolecular Adsorption Study. - -Data: 1 Response (y = volume) - 1 Predictor (x = pressure) - 14 Observations - Average Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 2 Parameters (b1 and b2) - - y = b1*b2*x*((1+b2*x)**(-1)) + e -=# -# T. Migot, Montreal, 2023. - export misra1d function misra1d(args...; kwargs...) diff --git a/src/PureJuMP/morebv.jl b/src/PureJuMP/morebv.jl index 48e639254..b22296719 100644 --- a/src/PureJuMP/morebv.jl +++ b/src/PureJuMP/morebv.jl @@ -1,25 +1,3 @@ -# The Boundary Value problem. -# This is the nonlinear least-squares version without fixed variables. - -# Source: problem 28 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#17 (p. 75). - -# classification SUR2-MN-V-0 - -# Problem 39 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export morebv function morebv(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/nasty.jl b/src/PureJuMP/nasty.jl index 32a54930c..b091f2873 100644 --- a/src/PureJuMP/nasty.jl +++ b/src/PureJuMP/nasty.jl @@ -1,9 +1,3 @@ -# Nasty problem. -# -# Source: a very simple box-constrained quadratic -# -# classification QUR2-AN-2-0 - export nasty "Nasty problem" diff --git a/src/PureJuMP/nazareth.jl b/src/PureJuMP/nazareth.jl index f719ac16c..acea52329 100644 --- a/src/PureJuMP/nazareth.jl +++ b/src/PureJuMP/nazareth.jl @@ -1,13 +1,3 @@ -# Sparse modification of the Nazareth trigonometric function -# -# Problem 8 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export nazareth function nazareth(; n::Int = default_nvar) diff --git a/src/PureJuMP/ncb20.jl b/src/PureJuMP/ncb20.jl index 5ee286193..399b62eff 100644 --- a/src/PureJuMP/ncb20.jl +++ b/src/PureJuMP/ncb20.jl @@ -1,21 +1,3 @@ -# A banded problem with semi-bandwidth 20. This problem exhibits frequent -# negative curvature in the exact Hessian. - -# Source: -# Ph. Toint, private communication, 1992. - -# classification OUR2-AN-V-0 - -# Problem 40 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export ncb20 function ncb20(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/ncb20b.jl b/src/PureJuMP/ncb20b.jl index fe738fea7..ff8e3e3e7 100644 --- a/src/PureJuMP/ncb20b.jl +++ b/src/PureJuMP/ncb20b.jl @@ -1,22 +1,3 @@ -# A banded problem with semi-bandwidth 20. This problem exhibits frequent -# negative curvature in the exact Hessian. It is a simplified version of -# problem NCB20. - -# Source: -# Ph. Toint, private communication, 1992. - -# classification OUR2-AN-V-0 - -# Problem 41 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export ncb20b function ncb20b(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/nelson.jl b/src/PureJuMP/nelson.jl index 8d76b2f5b..b3e9c6711 100644 --- a/src/PureJuMP/nelson.jl +++ b/src/PureJuMP/nelson.jl @@ -1,43 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/nelson.dat - -NIST/ITL StRD -Dataset Name: Nelson (Nelson.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 188) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a study involving - the analysis of performance degradation data from - accelerated tests, published in IEEE Transactions - on Reliability. The response variable is dialectric - breakdown strength in kilo-volts, and the predictor - variables are time in weeks and temperature in degrees - Celcius. - -Reference: Nelson, W. (1981). - Analysis of Performance-Degradation Data. - IEEE Transactions on Reliability. - Vol. 2, R-30, No. 2, pp. 149-155. - -Data: 1 Response ( y = dialectric breakdown strength) - 2 Predictors (x1 = time; x2 = temperature) - 128 Observations - Average Level of Difficulty - Observed Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - log[y] = b1 - b2*x1 * exp[-b3*x2] + e -=# -# T. Migot, Montreal, 2023. - export nelson function nelson(args...; kwargs...) diff --git a/src/PureJuMP/noncvxu2.jl b/src/PureJuMP/noncvxu2.jl index 3152b467b..7c4aab8b6 100644 --- a/src/PureJuMP/noncvxu2.jl +++ b/src/PureJuMP/noncvxu2.jl @@ -1,17 +1,3 @@ -# A nonconvex unconstrained function with a unique minimum value - -# classification OUR2-AN-V-0 - -# Problem 43 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export noncvxu2 function noncvxu2(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/noncvxun.jl b/src/PureJuMP/noncvxun.jl index 79f2997b8..20e1c9461 100644 --- a/src/PureJuMP/noncvxun.jl +++ b/src/PureJuMP/noncvxun.jl @@ -1,18 +1,3 @@ -# A nonconvex unconstrained function with a unique minimum value -# See discussion here https://github.com/JuliaSmoothOptimizers/CUTEst.jl/issues/321 - -# classification OUR2-AN-V-0 - -# Problem 42 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export noncvxun function noncvxun(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/nondia.jl b/src/PureJuMP/nondia.jl index b65b29d1e..078628100 100644 --- a/src/PureJuMP/nondia.jl +++ b/src/PureJuMP/nondia.jl @@ -1,28 +1,3 @@ -# The Shanno nondiagonal extension of Rosenbrock function. - -# Source: -# D. Shanno, -# " On Variable Metric Methods for Sparse Hessians II: the New -# Method", -# MIS Tech report 27, University of Arizona (Tucson, UK), 1978. - -# See also Buckley #37 (p. 76) and Toint #15. - -# classification SUR2-AN-V-0 - -# Problem 44 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - -# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this (now) matches the original paper -# (See issue #36) - export nondia function nondia(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/nondquar.jl b/src/PureJuMP/nondquar.jl index f48d25718..1a60192e9 100644 --- a/src/PureJuMP/nondquar.jl +++ b/src/PureJuMP/nondquar.jl @@ -1,27 +1,3 @@ -# A nondiagonal quartic test problem. - -# This problem has an arrow-head type Hessian with a tridiagonal -# central part and a border of width 1. -# The Hessian is singular at the solution. - -# Source: problem 57 in -# A.R. Conn, N.I.M. Gould, M. Lescrenier and Ph.L. Toint, -# "Performance of a multi-frontal scheme for partially separable -# optimization" -# Report 88/4, Dept of Mathematics, FUNDP (Namur, B), 1988. - -# classification OUR2-AN-V-0 - -# Problem 45 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export nondquar function nondquar(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/osborne1.jl b/src/PureJuMP/osborne1.jl index 3291b6ea6..7a4bc2d4d 100644 --- a/src/PureJuMP/osborne1.jl +++ b/src/PureJuMP/osborne1.jl @@ -1,11 +1,3 @@ -# Source: Problem 17 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See alos Buckley#32 (p. 77). - -# classification NOR2-MN-5-33 export osborne1 function osborne1(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/osborne2.jl b/src/PureJuMP/osborne2.jl index b9b76713e..556e4a65b 100644 --- a/src/PureJuMP/osborne2.jl +++ b/src/PureJuMP/osborne2.jl @@ -1,11 +1,3 @@ -# Source: Problem 19 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#32 (p.78). - -# classification NOR2-MN-11-65 export osborne2 function osborne2(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/palmer1c.jl b/src/PureJuMP/palmer1c.jl index 30c399533..e8da55d8b 100644 --- a/src/PureJuMP/palmer1c.jl +++ b/src/PureJuMP/palmer1c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=N=N TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer1c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer1d.jl b/src/PureJuMP/palmer1d.jl index fca486090..1f3c5352a 100644 --- a/src/PureJuMP/palmer1d.jl +++ b/src/PureJuMP/palmer1d.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=N=N TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-7-0 - export palmer1d "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer2c.jl b/src/PureJuMP/palmer2c.jl index 22f2b6598..3096a9985 100644 --- a/src/PureJuMP/palmer2c.jl +++ b/src/PureJuMP/palmer2c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=O TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer2c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer3c.jl b/src/PureJuMP/palmer3c.jl index 20889010b..c5d2bc528 100644 --- a/src/PureJuMP/palmer3c.jl +++ b/src/PureJuMP/palmer3c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=S TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer3c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer4c.jl b/src/PureJuMP/palmer4c.jl index 78172a4fd..07bc8f8a5 100644 --- a/src/PureJuMP/palmer4c.jl +++ b/src/PureJuMP/palmer4c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer4c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer5c.jl b/src/PureJuMP/palmer5c.jl index 20091d4bf..cd8e2df6e 100644 --- a/src/PureJuMP/palmer5c.jl +++ b/src/PureJuMP/palmer5c.jl @@ -1,16 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to A0 T_0 + A2 T_2 + A4 T_4 + A6 T_6 + A8 T_8 + -# A10 T_10 + A12 T_12 + A14 T_14 -# where T_i is the i-th (shifted) Chebyshev polynomial -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-6-0 - export palmer5c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer5d.jl b/src/PureJuMP/palmer5d.jl index f46745546..dbf32ad5c 100644 --- a/src/PureJuMP/palmer5d.jl +++ b/src/PureJuMP/palmer5d.jl @@ -1,14 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to to A0 + A2 X**2 + A4 X**4 + A6 X**6 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-4-0 - export palmer5d "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer6c.jl b/src/PureJuMP/palmer6c.jl index ea677cebe..88d89eaa3 100644 --- a/src/PureJuMP/palmer6c.jl +++ b/src/PureJuMP/palmer6c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer6c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer7c.jl b/src/PureJuMP/palmer7c.jl index 2151e01dc..a775b69ce 100644 --- a/src/PureJuMP/palmer7c.jl +++ b/src/PureJuMP/palmer7c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer7c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/palmer8c.jl b/src/PureJuMP/palmer8c.jl index c905b524b..d6d79edde 100644 --- a/src/PureJuMP/palmer8c.jl +++ b/src/PureJuMP/palmer8c.jl @@ -1,15 +1,3 @@ -# A linear least squares problem -# arising from chemical kinetics. -# -# model: H-N=C=Se TZVP+MP2 -# fitting Y to A0 + A2 X**2 + A4 X**4 + A6 X**6 + A8 X**8 + -# A10 X**10 + A12 X**12 + A14 X**14 -# -# Source: -# M. Palmer, Edinburgh, private communication. -# -# classification QUR2-RN-8-0 - export palmer8c "A linear least squares problem arising from chemical kinetics." diff --git a/src/PureJuMP/penalty1.jl b/src/PureJuMP/penalty1.jl index 8e7054354..419afc76b 100644 --- a/src/PureJuMP/penalty1.jl +++ b/src/PureJuMP/penalty1.jl @@ -1,17 +1,3 @@ -# A penalty function arising from -# min{ sum_1^n(x_i-1)^2 subject to sum_1^n x_i^2 = 1/4}. -# At the solution, the hessian has n-1 eigenvalues of order 1e-5 and -# one of order 1. -# -# Source: problem 23 in -# J.J. More, B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley #181 (p. 79) -# -# classification SUR2-AN-V-0 - export penalty1 "Linear function with `n` parameters and `m` observations - full rank" diff --git a/src/PureJuMP/penalty2.jl b/src/PureJuMP/penalty2.jl index ea44e7ca2..0ca87231e 100644 --- a/src/PureJuMP/penalty2.jl +++ b/src/PureJuMP/penalty2.jl @@ -1,13 +1,3 @@ -# Source: Problem 24 in -# J.J. Moré, B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#112 (p. 80) - -# classification SUR2-AN-V-0 -# J.-P. Dussault, Clermont-Ferrand 06/2016. - export penalty2 "A penalty problem by Gill, Murray and Pitfield in size 'n' " diff --git a/src/PureJuMP/penalty3.jl b/src/PureJuMP/penalty3.jl index 8a1328e96..b89818275 100644 --- a/src/PureJuMP/penalty3.jl +++ b/src/PureJuMP/penalty3.jl @@ -1,24 +1,3 @@ -# A penalty problem by Gill, Murray and Pitfield. -# It has a dense Hessian matrix. - -# Source: problem 114 (p. 81) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. - -# classification OUR2-AY-V-0 - -# Problem 46 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export penalty3 "A penalty problem by Gill, Murray and Pitfield in size 'n' " diff --git a/src/PureJuMP/pinene.jl b/src/PureJuMP/pinene.jl index 347fa83d5..19f93958f 100644 --- a/src/PureJuMP/pinene.jl +++ b/src/PureJuMP/pinene.jl @@ -1,15 +1,3 @@ -# This is problem 8 in the COPS (Version 3) collection of -# E. Dolan and J. More -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# Isomerization of Alpha-Pinene Problem -# Collocation formulation -# Alexander S. Bondarenko - Summer 1998 -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export pinene function pinene(; n::Int = default_nvar, kwargs...) @@ -25,6 +13,7 @@ function pinene(; n::Int = default_nvar, kwargs...) # times at which observations made tau = [1230.0, 3060.0, 4920.0, 7800.0, 10680.0, 15030.0, 22620.0, 36420.0] tf = tau[nm] # ODEs defined in [0,tf] + @adjust_nvar_warn("pinene", n, 50 * n + 5) h = tf / n # uniform interval length t = [(i-1)*h for i = 1:(n + 1)] # partition diff --git a/src/PureJuMP/polygon.jl b/src/PureJuMP/polygon.jl index b1767a914..8c3de23ac 100644 --- a/src/PureJuMP/polygon.jl +++ b/src/PureJuMP/polygon.jl @@ -1,17 +1,3 @@ -# Find the polygon of maximal area, among polygons with nv sides and -# diameter d <= 1 - -# This is problem 1 in the COPS (Version 3) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - -# The initial guess is inspired from https://vanderbei.princeton.edu/ampl/nlmodels/polygon/polygon2.mod - -# See `polygon1`, `polygon2` and `polygon3` for similar variants. - export polygon function polygon(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/polygon1.jl b/src/PureJuMP/polygon1.jl index 38104341f..6db529562 100644 --- a/src/PureJuMP/polygon1.jl +++ b/src/PureJuMP/polygon1.jl @@ -1,16 +1,3 @@ -# Find the polygon of maximal area, among polygons with nv sides and -# diameter d <= 1 - -# JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, -# Introduction to Optimization class. -# https://laurentlessard.com/teaching/524-intro-to-optimization/ - -# This implementation is similar to -# This is problem 1 in the COPS (Version 2) collection of -# E. Dolan and J. More' -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2000) - export polygon1 function polygon1(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/polygon2.jl b/src/PureJuMP/polygon2.jl index 75924d513..c04fa5732 100644 --- a/src/PureJuMP/polygon2.jl +++ b/src/PureJuMP/polygon2.jl @@ -1,11 +1,3 @@ -# Find the polygon of maximal area, among polygons with nv sides and -# diameter d <= 1 -# Model 2: relative polar coordinates - -# JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, -# Introduction to Optimization class. -# https://laurentlessard.com/teaching/524-intro-to-optimization/ - export polygon2 function polygon2(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/polygon3.jl b/src/PureJuMP/polygon3.jl index 9188d2371..bf85dcb94 100644 --- a/src/PureJuMP/polygon3.jl +++ b/src/PureJuMP/polygon3.jl @@ -1,11 +1,3 @@ -# Find the polygon of maximal area, among polygons with nv sides and -# diameter d <= 1 -# Model 3: rectangular coordinates - -# JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, -# Introduction to Optimization class. -# https://laurentlessard.com/teaching/524-intro-to-optimization/ - export polygon3 function polygon3(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/powellbs.jl b/src/PureJuMP/powellbs.jl index 9010976bc..c26d2fcab 100644 --- a/src/PureJuMP/powellbs.jl +++ b/src/PureJuMP/powellbs.jl @@ -1,12 +1,3 @@ -# Source: problem 3 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Toint#34, Buckley#22 (p. 82). - -# classification NOR2-AN-2-2 - export powellbs function powellbs(args...; kwargs...) diff --git a/src/PureJuMP/powellsg.jl b/src/PureJuMP/powellsg.jl index bcb9f7deb..ecc462efb 100644 --- a/src/PureJuMP/powellsg.jl +++ b/src/PureJuMP/powellsg.jl @@ -1,44 +1,10 @@ -# The extended Powell singular problem. -# This problem is a sum of n/4 sets of four terms, each of which is -# assigned its own group. - -# Source: Problem 13 & 22 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Toint#19, Buckley#34 (p.85) - -# classification OUR2-AN-V-0 - -# Problem 47 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - -# Difference with the following is the initial guess. -# -# Problem 3 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# - export powellsg "The extended Powell singular problem in size 'n' " function powellsg(args...; n::Int = default_nvar, kwargs...) - (n % 4 == 0) || @warn("powellsg: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("powellsg", n_org, n) x0 = zeros(n) x0[4 * (collect(1:div(n, 4))) .- 3] .= 3.0 diff --git a/src/PureJuMP/power.jl b/src/PureJuMP/power.jl index f38630ae8..1e1f87115 100644 --- a/src/PureJuMP/power.jl +++ b/src/PureJuMP/power.jl @@ -1,14 +1,3 @@ -# The Power problem by Oren. -# -# Source: -# S.S. Oren, -# Self-scaling variable metric algorithms, -# Part II: implementation and experiments" -# Management Science 20(5):863-874, 1974. -# See also Buckley#179 (p. 83) -# -# classification OUR2-AN-V-0 - export power "The Power problem by Oren." diff --git a/src/PureJuMP/quartc.jl b/src/PureJuMP/quartc.jl index be702780b..93fca31b6 100644 --- a/src/PureJuMP/quartc.jl +++ b/src/PureJuMP/quartc.jl @@ -1,13 +1,3 @@ -# A simple quartic function. -# -# Source: problem 157 (p. 87) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# classification OUR2-AN-V-0 - export quartc "A simple quartic function." diff --git a/src/PureJuMP/rat42.jl b/src/PureJuMP/rat42.jl index afd6cbf6b..21d5cbbd0 100644 --- a/src/PureJuMP/rat42.jl +++ b/src/PureJuMP/rat42.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rat42.dat - -NIST/ITL StRD -Dataset Name: Rat42 (Rat42.dat) - -File Format: ASCII - Starting Values (lines 41 to 43) - Certified Values (lines 41 to 48) - Data (lines 61 to 69) - -Procedure: Nonlinear Least Squares Regression - -Description: This model and data are an example of fitting - sigmoidal growth curves taken from Ratkowsky (1983). - The response variable is pasture yield, and the - predictor variable is growing time. - -Reference: Ratkowsky, D.A. (1983). - Nonlinear Regression Modeling. - New York, NY: Marcel Dekker, pp. 61 and 88. - -Data: 1 Response (y = pasture yield) - 1 Predictor (x = growing time) - 9 Observations - Higher Level of Difficulty - Observed Data - -Model: Exponential Class - 3 Parameters (b1 to b3) - - y = b1 / (1+exp[b2-b3*x]) + e -=# -# T. Migot, Montreal, 2023. - export rat42 function rat42(args...; kwargs...) diff --git a/src/PureJuMP/rat43.jl b/src/PureJuMP/rat43.jl index 55fe3f9c8..602da3c77 100644 --- a/src/PureJuMP/rat43.jl +++ b/src/PureJuMP/rat43.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rat43.dat - -NIST/ITL StRD -Dataset Name: Rat43 (Rat43.dat) - -File Format: ASCII - Starting Values (lines 41 to 44) - Certified Values (lines 41 to 49) - Data (lines 61 to 75) - -Procedure: Nonlinear Least Squares Regression - -Description: This model and data are an example of fitting - sigmoidal growth curves taken from Ratkowsky (1983). - The response variable is the dry weight of onion bulbs - and tops, and the predictor variable is growing time. - -Reference: Ratkowsky, D.A. (1983). - Nonlinear Regression Modeling. - New York, NY: Marcel Dekker, pp. 62 and 88. - -Data: 1 Response (y = onion bulb dry weight) - 1 Predictor (x = growing time) - 15 Observations - Higher Level of Difficulty - Observed Data - -Model: Exponential Class - 4 Parameters (b1 to b4) - - y = b1 / ((1+exp[b2-b3*x])**(1/b4)) + e -=# -# T. Migot, Montreal, 2023. - export rat43 function rat43(args...; kwargs...) diff --git a/src/PureJuMP/robotarm.jl b/src/PureJuMP/robotarm.jl index b6252bd90..6c1b0bc44 100644 --- a/src/PureJuMP/robotarm.jl +++ b/src/PureJuMP/robotarm.jl @@ -1,21 +1,10 @@ -# Minimize the time taken for a robot arm to travel between two points. - -# This is problem 8 in the COPS (Version 3) collection of -# E. Dolan and J. More -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - -# classification OOR2-AN-V-V - -# x : vector of variables, of the form : [ρ(t=t1); ρ(t=t2); ... ρ(t=tf), θ(t=t1), ..., then ρ_dot, ..., then ρ_acc, .. ϕ_acc, tf] -# There are N+1 values of each 9 variables -# x = [ρ, θ, ϕ, ρ_dot, θ_dot, ϕ_dot, ρ_acc, θ_acc, ϕ_acc, tf] - export robotarm function robotarm(; n::Int = default_nvar, L = 4.5, kwargs...) + n_orig = n N = max(2, div(n, 9)) n = N + 1 + @adjust_nvar_warn("robotarm", n_orig, 9 * n + 1) nlp = Model() diff --git a/src/PureJuMP/rocket.jl b/src/PureJuMP/rocket.jl index 56ab5a499..505cc1b54 100644 --- a/src/PureJuMP/rocket.jl +++ b/src/PureJuMP/rocket.jl @@ -1,13 +1,8 @@ -# Goddard Rocket Problem -# Trapezoidal formulation -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export rocket function rocket(; n::Int = default_nvar, kwargs...) h_0 = 1.0 + @adjust_nvar_warn("rocket", n, 4 * n + 5) v_0 = 0.0 m_0 = 1.0 g_0 = 1.0 diff --git a/src/PureJuMP/rozman1.jl b/src/PureJuMP/rozman1.jl index 9531dbb8c..2b39a912e 100644 --- a/src/PureJuMP/rozman1.jl +++ b/src/PureJuMP/rozman1.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/rozman1.dat - -NIST/ITL StRD -Dataset Name: Roszman1 (Roszman1.dat) - -File Format: ASCII - Starting Values (lines 41 to 44) - Certified Values (lines 41 to 49) - Data (lines 61 to 85) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - quantum defects in iodine atoms. The response - variable is the number of quantum defects, and the - predictor variable is the excited energy state. - The argument to the ARCTAN function is in radians. - -Reference: Roszman, L., NIST (19??). - Quantum Defects for Sulfur I Atom. - -Data: 1 Response (y = quantum defect) - 1 Predictor (x = excited state energy) - 25 Observations - Average Level of Difficulty - Observed Data - -Model: Miscellaneous Class - 4 Parameters (b1 to b4) - - pi = 3.141592653589793238462643383279E0 - y = b1 - b2*x - arctan[b3/(x-b4)]/pi + e -=# - export rozman1 function rozman1(args...; kwargs...) diff --git a/src/PureJuMP/sbrybnd.jl b/src/PureJuMP/sbrybnd.jl index 32271f337..a53249215 100644 --- a/src/PureJuMP/sbrybnd.jl +++ b/src/PureJuMP/sbrybnd.jl @@ -1,29 +1,3 @@ -# Broyden banded system of nonlinear equations, considered in the -# least square sense. -# NB: scaled version of BRYBND - -# Source: the *unscaled* version is problem 31 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Buckley#73 (p. 41) and Toint#18 - -# classification SUR2-AN-V-0 - -# This scaled version is Problem 48 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# The terms in the sum should be squared --- corrected (it is not squared in Luksan, but -# comparing it against their brybnd that appears to be a typo) -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export sbrybnd "Broyden banded system of nonlinear equations in size 'n' " diff --git a/src/PureJuMP/schmvett.jl b/src/PureJuMP/schmvett.jl index 8dce714bf..d157532dc 100644 --- a/src/PureJuMP/schmvett.jl +++ b/src/PureJuMP/schmvett.jl @@ -1,27 +1,3 @@ -# The Schmidt and Vetters problem. - -# This problem has N-2 trivial groups, all of which have 3 nonlinear -# elements - -# Source: -# J.W. Schmidt and K. Vetters, -# "Albeitungsfreie Verfahren fur Nichtlineare Optimierungsproblem", -# Numerische Mathematik 15:263-282, 1970. - -# See also Toint#35 and Buckley#14 (p90) - -# classification OUR2-AY-V-0 - -# Problem 49 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export schmvett "Another function with nontrivial groups and repetitious elements in size 'n' " diff --git a/src/PureJuMP/scosine.jl b/src/PureJuMP/scosine.jl index 928556135..f26b39f06 100644 --- a/src/PureJuMP/scosine.jl +++ b/src/PureJuMP/scosine.jl @@ -1,25 +1,3 @@ -# Another function with nontrivial groups and -# repetitious elements. -# NB: scaled version of COSINE - -# Source: -# N. Gould, private communication. - -# classification OUR2-AN-V-0 - -# Problem 50 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - -# Note: discrepancy with CUTEst appears to be a bug in CUTEst, this matches the original paper -# (See issue #36) - export scosine "Another function with nontrivial groups and repetitious elements in size 'n' " diff --git a/src/PureJuMP/shpak1.jl b/src/PureJuMP/shpak1.jl index caad95529..a4fa59a09 100644 --- a/src/PureJuMP/shpak1.jl +++ b/src/PureJuMP/shpak1.jl @@ -1,12 +1,3 @@ -# first problem of -# Global optimization in one-dimensional case -# using analytically defined derivatives of -# objective function -# -#A.Shpak -# -#Computer Science Journal of Moldova, vol.3, no.2(8), 1995 - export Shpak1 "Univariate multimodal minimization problem Shpak1" diff --git a/src/PureJuMP/shpak2.jl b/src/PureJuMP/shpak2.jl index ce7c80339..0f125db7f 100644 --- a/src/PureJuMP/shpak2.jl +++ b/src/PureJuMP/shpak2.jl @@ -1,13 +1,3 @@ -# Second problem of -# Global optimization in one-dimensional case -# using analytically defined derivatives of -# objective function - -# A.Shpak - -# Computer Science Journal of Moldova, vol.3, no.2(8), 1995 -# S. Goyette, Sherbrooke 2016/2017 - export Shpak2 "Univariate multimodal minimization problem Shpak2" diff --git a/src/PureJuMP/shpak3.jl b/src/PureJuMP/shpak3.jl index 2cde66497..34cabd355 100644 --- a/src/PureJuMP/shpak3.jl +++ b/src/PureJuMP/shpak3.jl @@ -1,13 +1,3 @@ -#third problem of -#Global optimization in one-dimensional case -#using analytically defined derivatives of -#objective function -# -#A.Shpak -# -#Computer Science Journal of Moldova, vol.3, no.2(8), 1995 -# S. Goyette, Sherbrooke 2016/2017 - export Shpak3 "Univariate multimodal minimization problem Shpak3" diff --git a/src/PureJuMP/shpak4.jl b/src/PureJuMP/shpak4.jl index 84498d85b..e3b55e2db 100644 --- a/src/PureJuMP/shpak4.jl +++ b/src/PureJuMP/shpak4.jl @@ -1,14 +1,3 @@ -# 4th problem of -# Global optimization in one-dimensional case -# using analytically defined derivatives of -# objective function -# -# A.Shpak -# -# Computer Science Journal of Moldova, vol.3, no.2(8), 1995 -# -# S. Goyette, Sherbrooke 2016/2017 - export Shpak4 "Univariate multimodal minimization problem Shpak4" diff --git a/src/PureJuMP/shpak5.jl b/src/PureJuMP/shpak5.jl index 367c89b0c..43e6b66be 100644 --- a/src/PureJuMP/shpak5.jl +++ b/src/PureJuMP/shpak5.jl @@ -1,14 +1,3 @@ -# fifth problem of -# Global optimization in one-dimensional case -# using analytically defined derivatives of -# objective function -# -# A.Shpak -# -# Computer Science Journal of Moldova, vol.3, no.2(8), 1995 -# -# S. Goyette, Sherbrooke 2016/2017 - export Shpak5 "Univariate multimodal minimization problem Shpak5" diff --git a/src/PureJuMP/shpak6.jl b/src/PureJuMP/shpak6.jl index f2ed7b8d4..5ae767e8f 100644 --- a/src/PureJuMP/shpak6.jl +++ b/src/PureJuMP/shpak6.jl @@ -1,14 +1,3 @@ -# 6th problem of -# Global optimization in one-dimensional case -# using analytically defined derivatives of -# objective function -# -# A.Shpak -# -#Computer Science Journal of Moldova, vol.3, no.2(8), 1995 -# -# S. Goyette, Sherbrooke 2016/2017 - export Shpak6 "Univariate multimodal minimization problem Shpak6" diff --git a/src/PureJuMP/sinquad.jl b/src/PureJuMP/sinquad.jl index cd18df0b8..6e4d3ea3a 100644 --- a/src/PureJuMP/sinquad.jl +++ b/src/PureJuMP/sinquad.jl @@ -1,21 +1,3 @@ -# Another function with nontrivial groups and -# repetitious elements. - -# Source: -# N. Gould, private communication. - -# classification OUR2-AY-V-0 - -# Problem 51 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export sinquad "Another function with nontrivial groups and repetitious elements in size 'n' " diff --git a/src/PureJuMP/sparsine.jl b/src/PureJuMP/sparsine.jl index bb884af30..e0cc31b2c 100644 --- a/src/PureJuMP/sparsine.jl +++ b/src/PureJuMP/sparsine.jl @@ -1,17 +1,3 @@ -# A sparse problem involving sine functions - -# classification OUR2-AN-V-0 - -# Problem 52 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export sparsine "A sparse problem involving sine functions in size 'n' " diff --git a/src/PureJuMP/sparsqur.jl b/src/PureJuMP/sparsqur.jl index 966c805b1..27a2a7b00 100644 --- a/src/PureJuMP/sparsqur.jl +++ b/src/PureJuMP/sparsqur.jl @@ -1,17 +1,3 @@ -# A sparse quartic problem - -# classification OUR2-AN-V-0 - -# Problem 53 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export sparsqur "A sparse quartic problem in size 'n' " diff --git a/src/PureJuMP/spmsrtls.jl b/src/PureJuMP/spmsrtls.jl index 98ae91cc2..4c716b45f 100644 --- a/src/PureJuMP/spmsrtls.jl +++ b/src/PureJuMP/spmsrtls.jl @@ -1,28 +1,10 @@ -# Liu and Nocedal tridiagonal matrix square root problem. - -# Source: problem 151 (p. 93) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. - -# See also -# -# problem 54 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf - -# classification SUR2-AN-V-V export spmsrtls function spmsrtls(args...; n::Int = default_nvar, kwargs...) + n_org = n m = max(Int(round((n + 2) / 3)), 34) n = m * 3 - 2 + @adjust_nvar_warn("spmsrtls", n_org, n) p = [sin(i^2) for i = 1:n] x0 = [p[i] / 5 for i = 1:n] diff --git a/src/PureJuMP/srosenbr.jl b/src/PureJuMP/srosenbr.jl index fc971e61d..0fca80c90 100644 --- a/src/PureJuMP/srosenbr.jl +++ b/src/PureJuMP/srosenbr.jl @@ -1,28 +1,10 @@ -# The separable extension of Rosenbrock's function. - -# Source: problem 21 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# classification SUR2-AN-V-0 - -# Problem 55 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export srosenbr "The separable extension of Rosenbrock's function 'n' " function srosenbr(args...; n::Int = default_nvar, kwargs...) - (n % 2 == 0) || @warn("srosenbr: number of variables adjusted to be even") + n_org = n n = 2 * max(1, div(n, 2)) + @adjust_nvar_warn("srosenbr", n_org, n) x0 = ones(n) x0[2 * (collect(1:div(n, 2))) .- 1] .= -1.2 diff --git a/src/PureJuMP/steering.jl b/src/PureJuMP/steering.jl index 353be640b..3e760a707 100644 --- a/src/PureJuMP/steering.jl +++ b/src/PureJuMP/steering.jl @@ -1,13 +1,8 @@ -# Rocket Steering Problem -# Trapezoidal formulation -# COPS 2.0 - September 2000 -# COPS 3.0 - November 2002 -# COPS 3.1 - March 2004 - export steering function steering(; n::Int = default_nvar, kwargs...) a = 100.0 # Magnitude of force. + @adjust_nvar_warn("steering", n, 5 * n + 6) # Bounds on the control u_min, u_max = -pi/2.0, pi/2.0 xs = zeros(4) diff --git a/src/PureJuMP/structural.jl b/src/PureJuMP/structural.jl index 65ba54d47..3bbb867e2 100644 --- a/src/PureJuMP/structural.jl +++ b/src/PureJuMP/structural.jl @@ -1,11 +1,7 @@ - -# JuMP model follows Laurent Lessard CS/ECE/ISyE 524, University of Wisconsin–Madison, -# Introduction to Optimization class. -# https://laurentlessard.com/teaching/524-intro-to-optimization/ - export structural function structural(args...; n::Int = default_nvar, kwargs...) + n_orig = n n = max(n, 100) sub2ind(shape, a, b) = LinearIndices(shape)[CartesianIndex.(a, b)] @@ -29,6 +25,7 @@ function structural(args...; n::Int = default_nvar, kwargs...) M = Int(N * (N - 1) / 2) # number of edges + @adjust_nvar_warn("structural", n_orig, 2 * M) # EDGES: columns are the indices of the nodes at either end edges = Array{Int}(zeros(M, 2)) diff --git a/src/PureJuMP/tetra.jl b/src/PureJuMP/tetra.jl index d0411ae27..f36fc2903 100644 --- a/src/PureJuMP/tetra.jl +++ b/src/PureJuMP/tetra.jl @@ -1,11 +1,3 @@ -# Minimize the sum of the inverse weighted mean ratio of the elements in a fixed–boundary -# tetrahedral mesh by adjusting the locations of the free vertices. - -# This is problem 19 in the COPS (Version 3) collection of -# E. Dolan and J. More -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - include("../../data/tetra.jl") export tetra diff --git a/src/PureJuMP/threepk.jl b/src/PureJuMP/threepk.jl index c27df67d0..8d76a1ac6 100644 --- a/src/PureJuMP/threepk.jl +++ b/src/PureJuMP/threepk.jl @@ -1,73 +1,3 @@ -# -# Converted in Julia from https://github.com/mpf/Optimization-Test-Problems -# -#************************** -# SET UP THE INITIAL DATA * -#************************** -# Problem : -# ********* -# A problem arising in the estimation of structured O/D matrix -# Source: -# M. Bierlaire, private communication -# see also -# M. Bierlaire and Ph. L. Toint, -# MEUSE: an origin-destination estimator that exploits structure, -# Transportation Research B, 29, 1, 47--60, 1995. -# SIF input: Ph. Toint, Dec 1989, Corrected July 1993. -# classification SUR2-MN-30-0 -# Parameters -# Number of parking columns -# Number of centroids -# Gamma : general trust in the countings -# Objective for fill-up coefficients -# Inverse of the weights for fill-up coefficients -# Number of available countings -# Inverse of the weight on unknow cells -# Trip ends -# Some interesting values... -# Countings -# Inverse of the trusts in countings -# Coefficients pour les parkings -# O/D matrix -# A priori information, but not parkings -# Parking coefficients -# Unknown parking entries -# Countings -# Parking columns -# 1,0 -# 2,0 -# 3,0 -# 4,0 -# 5,0 -# 0,1 -# 2,1 -# 3,1 -# 4,1 -# 5,1 -# 0,2 -# 1,2 -# 3,2 -# 4,2 -# 5,2 -# Other columns -# 0,3 -# 1,3 -# 2,3 -# 4,3 -# 5,3 -# 0,4 -# 1,4 -# 2,4 -# 3,4 -# 5,4 -# 0,5 -# 1,5 -# 2,5 -# 3,5 -# 4,5 -# Variance minimization -# A priori information, but not parkings -# Parking coefficients export threepk function threepk(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/thurber.jl b/src/PureJuMP/thurber.jl index 2f28695c9..dfb5185b1 100644 --- a/src/PureJuMP/thurber.jl +++ b/src/PureJuMP/thurber.jl @@ -1,39 +1,3 @@ - -#= -https://www.itl.nist.gov/div898/strd/nls/data/LINKS/DATA/thurber.dat - -NIST/ITL StRD -Dataset Name: Thurber (Thurber.dat) - -File Format: ASCII - Starting Values (lines 41 to 47) - Certified Values (lines 41 to 52) - Data (lines 61 to 97) - -Procedure: Nonlinear Least Squares Regression - -Description: These data are the result of a NIST study involving - semiconductor electron mobility. The response - variable is a measure of electron mobility, and the - predictor variable is the natural log of the density. - -Reference: Thurber, R., NIST (197?). - Semiconductor electron mobility modeling. - -Data: 1 Response Variable (y = electron mobility) - 1 Predictor Variable (x = log[density]) - 37 Observations - Higher Level of Difficulty - Observed Data - -Model: Rational Class (cubic/cubic) - 7 Parameters (b1 to b7) - - y = (b1 + b2*x + b3*x**2 + b4*x**3) / - (1 + b5*x + b6*x**2 + b7*x**3) + e -=# -# T. Migot, Montreal, 2023. - export thurber function thurber(args...; kwargs...) diff --git a/src/PureJuMP/toint.jl b/src/PureJuMP/toint.jl index 00914da93..a9569bb44 100644 --- a/src/PureJuMP/toint.jl +++ b/src/PureJuMP/toint.jl @@ -1,14 +1,3 @@ -# Toint trigonometric function -# -# Problem 10 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# export toint function toint(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/tointgss.jl b/src/PureJuMP/tointgss.jl index b78fbfefa..59a2e045f 100644 --- a/src/PureJuMP/tointgss.jl +++ b/src/PureJuMP/tointgss.jl @@ -1,26 +1,3 @@ -# Toint's Gaussian problem. - -# This problem has N-2 trivial groups, all of which have 1 nonlinear -# element - -# Source: problem 21 in -# Ph.L. Toint, -# "Test problems for partially separable optimization and results -# for the routine PSPMIN", -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. - -# classification OUR2-AY-V-0 - -# Problem 56 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export tointgss "Toint's Gaussian problem in size 'n' " diff --git a/src/PureJuMP/torsion.jl b/src/PureJuMP/torsion.jl index 926d1e456..3f4f1eb6b 100644 --- a/src/PureJuMP/torsion.jl +++ b/src/PureJuMP/torsion.jl @@ -1,8 +1,3 @@ -# Torsion problem -# Liz Dolan - Summer 2000 -# Version 2.0 - October 2000 -# COPS 3.1 - March 2004 - export torsion function torsion(args...; n = default_nvar, kwargs...) @@ -10,6 +5,7 @@ function torsion(args...; n = default_nvar, kwargs...) if !((:nx in keys(kwargs)) & (:ny in keys(kwargs))) nx, ny = Int(round(sqrt(max(1, n - 2)))), Int(round(sqrt(max(1, n - 2)))) end + @adjust_nvar_warn("torsion", n, (nx + 2) * (ny + 2)) c = 5.0 hx = 1.0 / (nx + 1.0) # grid spacing hy = 1.0 / (ny + 1.0) # grid spacing diff --git a/src/PureJuMP/tquartic.jl b/src/PureJuMP/tquartic.jl index cfe94a58b..aa66eaa8c 100644 --- a/src/PureJuMP/tquartic.jl +++ b/src/PureJuMP/tquartic.jl @@ -1,21 +1,3 @@ -# A quartic function with nontrivial groups and -# repetitious elements. - -# Source: -# Ph. Toint, private communication. - -# classification SUR2-AN-V-0# - -# Problem 57 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# J.-P. Dussault, Clermont-Ferrand 05/2016. - export tquartic "A quartic function with nontrivial groups and repetitious elements in size 'n' " diff --git a/src/PureJuMP/triangle.jl b/src/PureJuMP/triangle.jl index ab781cd61..64ae30e5b 100644 --- a/src/PureJuMP/triangle.jl +++ b/src/PureJuMP/triangle.jl @@ -1,10 +1,3 @@ -# Minimize the time taken for a robot arm to travel between two points. - -# This is problem 18 in the COPS (Version 3) collection of -# E. Dolan and J. More -# see "Benchmarking Optimization Software with COPS" -# Argonne National Labs Technical Report ANL/MCS-246 (2004) - include("../../data/triangle.jl") export triangle diff --git a/src/PureJuMP/tridia.jl b/src/PureJuMP/tridia.jl index f8cba1f61..b4c67ced8 100644 --- a/src/PureJuMP/tridia.jl +++ b/src/PureJuMP/tridia.jl @@ -1,18 +1,3 @@ -# Shanno's TRIDIA quadratic tridiagonal problem. -# -# Source: problem 8 in -# Ph.L. Toint, -# "Test problems for partially separable optimization and results -# for the routine PSPMIN", -# Report 83/4, Department of Mathematics, FUNDP (Namur, B), 1983. -# -# See also Buckley#40 (p.96) -# -# classification QUR2-AN-V-0 -# -# This problem is decomposed in n linear groups, the last n-1 of which -# are 2 x 2 and singular. - export tridia "Shanno's TRIDIA quadratic tridiagonal problem." diff --git a/src/PureJuMP/trig.jl b/src/PureJuMP/trig.jl index eb7a9e194..e8c61b4a9 100644 --- a/src/PureJuMP/trig.jl +++ b/src/PureJuMP/trig.jl @@ -1,14 +1,3 @@ -# Another trigonometric function -# -# Problem 9 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# export trig function trig(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/trigb.jl b/src/PureJuMP/trigb.jl index 37ce6a375..8c3ce856d 100644 --- a/src/PureJuMP/trigb.jl +++ b/src/PureJuMP/trigb.jl @@ -1,14 +1,3 @@ -## Banded trigonometric problem -# -# Problem 16 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization -# export trigb function trigb(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/vardim.jl b/src/PureJuMP/vardim.jl index c5dc0a461..985223e9d 100644 --- a/src/PureJuMP/vardim.jl +++ b/src/PureJuMP/vardim.jl @@ -1,17 +1,3 @@ -# Variable dimension problem. -# This problem is a sum of n+2 least-squares groups, the first n of -# which have only a linear element. -# It Hessian matrix is dense. -# -# Source: problem 25 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# -# See also Buckley#72 (p.98). -# -# classification SUR2-AN-V-0 - export vardim "Variable dimension problem." diff --git a/src/PureJuMP/variational.jl b/src/PureJuMP/variational.jl index 846a38d8c..5c8d3a1a8 100644 --- a/src/PureJuMP/variational.jl +++ b/src/PureJuMP/variational.jl @@ -1,13 +1,3 @@ -# Discretization of a variational problem -# -# Problem 15 in -# L. Luksan, C. Matonoha and J. Vlcek -# Sparse Test Problems for Unconstrained Optimization, -# Technical Report 1064, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization export variational function variational(; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/vibrbeam.jl b/src/PureJuMP/vibrbeam.jl index 8d813277a..dbcfba196 100644 --- a/src/PureJuMP/vibrbeam.jl +++ b/src/PureJuMP/vibrbeam.jl @@ -1,29 +1,3 @@ -# https://bitbucket.org/optrove/sif/src/master/VIBRBEAM.SIF -# A nonlinear least-squares problem arising from laser-Doppler -# measurements of a vibrating beam. The data correspond to a simulated -# experiment where two laser-Doppler velocimeters take measurements -# at random points along the centreline of the beam. These measurements -# consist of a position (x), an incident angle (p) and the magnitude -# of the velocity along the line of sight (v). -# The problem is then to fit - -# 2 3 2 3 -# v = (c + c x + c x + c x ) cos[ d + d x + d x + d x - p ] -# 0 1 2 3 0 1 2 3 -# <---- magnitude -----> <------ phase -----> - -# in the least-squares sense. - -# Source: -# a modification of an exercize for L. Watson course on LANCELOT in -# the Spring 1993. Compared to the original proposal, the unnecessary -# elements were removed as well as an unnecessary constraint on the phase. - -# SIF input: Ph. L. Toint, May 1993, based on a proposal by -# D. E. Montgomery, Virginia Tech., April 1993. - -# classification SUR2-MN-8-0 - export vibrbeam function vibrbeam(args...; n::Int = default_nvar, kwargs...) diff --git a/src/PureJuMP/watson.jl b/src/PureJuMP/watson.jl index 6dc9def6e..ede1d343e 100644 --- a/src/PureJuMP/watson.jl +++ b/src/PureJuMP/watson.jl @@ -1,23 +1,9 @@ -# -# Watson problem in varaible dimension ( 2 <= n <= 31 ). -# This function is a nonlinear least squares with 31 groups. -# -# Source: problem 20 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. -# Also problem 128 (p. 100) in -# A.R. Buckley, -# "Test functions for unconstrained minimization", -# TR 1989CS-3, Mathematics, statistics and computing centre, -# Dalhousie University, Halifax (CDN), 1989. -# -# SUR2-AN-V-0 - export watson function watson(args...; n::Int = default_nvar, kwargs...) + n_org = n n = min(max(n, 2), 31) + @adjust_nvar_warn("watson", n_org, n) m = 31 nlp = Model() diff --git a/src/PureJuMP/woods.jl b/src/PureJuMP/woods.jl index 8127b51ab..e88e0bb23 100644 --- a/src/PureJuMP/woods.jl +++ b/src/PureJuMP/woods.jl @@ -1,46 +1,10 @@ -# The extended Woods problem. - -# This problem is a sum of n/4 sets of 6 terms, each of which is -# assigned its own group. For a given set i, the groups are -# A(i), B(i), C(i), D(i), E(i) and F(i). Groups A(i) and C(i) contain 1 -# nonlinear element each, denoted Y(i) and Z(i). - -# The problem dimension is defined from the number of these sets. -# The number of problem variables is then 4 times larger. - -# This version uses a slightly unorthodox expression of Woods -# function as a sum of squares (see Buckley) - -# Source: problem 14 in -# J.J. More', B.S. Garbow and K.E. Hillstrom, -# "Testing Unconstrained Optimization Software", -# ACM Transactions on Mathematical Software, vol. 7(1), pp. 17-41, 1981. - -# See also Toint#27, Buckley#17 (p. 101), Conn, Gould, Toint#7 - -# classification SUR2-AN-V-0 - -# See also -# -# problem 58 in -# L. Luksan, C. Matonoha and J. Vlcek -# Modified CUTE problems for sparse unconstrained optimization, -# Technical Report 1081, -# Institute of Computer Science, -# Academy of Science of the Czech Republic -# -# http://www.cs.cas.cz/matonoha/download/V1081.pdf -# -# classification SUR2-AN-V-0 -# -# J.-P. Dussault, Clermont-Ferrand, 05/2016. - export woods "The extended Woods problem `n` " function woods(args...; n::Int = default_nvar, kwargs...) - (n % 4 == 0) || @warn("woods: number of variables adjusted to be a multiple of 4") + n_org = n n = 4 * max(1, div(n, 4)) + @adjust_nvar_warn("woods", n_org, n) nlp = Model() diff --git a/src/PureJuMP/zangwil3.jl b/src/PureJuMP/zangwil3.jl index 7f04cdc8d..dc8a627c6 100644 --- a/src/PureJuMP/zangwil3.jl +++ b/src/PureJuMP/zangwil3.jl @@ -1,15 +1,3 @@ -# Source: problem 1 in -# P.T. Boggs and J.W. Tolle, -# "A strategy for global convergence in a sequential -# quadratic programming algorithm", -# SINUM 26(3), pp. 600-623, 1989. -# -# Problem from CUTE: https://github.com/mpf/Optimization-Test-Problems/blob/master/cute/zangwil3.mod -# -# classification NLR2-AN-3-3 -# -# A. Cebola, Paraná 10/2016. - export zangwil3 "Zangwil3 Model" diff --git a/src/utils.jl b/src/utils.jl new file mode 100644 index 000000000..ea3087a2c --- /dev/null +++ b/src/utils.jl @@ -0,0 +1,160 @@ +""" + LIB_REFERENCES + +Canonical BibTeX entries for the external test-set collections referenced in the +`:lib` field of `OptimizationProblems.meta`. Keys are the collection names used +in `:lib` (e.g. `"CUTEst"`, `"HS"`). + +See also [`export_bibtex`](@ref). +""" +const LIB_REFERENCES = Dict( + "CUTEst" => raw""" +@article{Gould2015CUTEst, + author = {Gould, N. I. M. and Orban, D. and Toint, Ph. L.}, + title = {{CUTEst}: a Constrained and Unconstrained Testing Environment with safe threads for mathematical optimization}, + journal = {Computational Optimization and Applications}, + year = {2015}, + volume = {60}, + number = {3}, + pages = {545--557}, + doi = {10.1007/s10589-014-9687-3} +} +""", + "HS" => raw""" +@book{HockSchittkowski1981, + author = {Hock, W. and Schittkowski, K.}, + title = {Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {187}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1981} +} +""", + "HS2" => raw""" +@book{Schittkowski1987, + author = {Schittkowski, Klaus}, + title = {More Test Examples for Nonlinear Programming Codes}, + series = {Lecture Notes in Economics and Mathematical Systems}, + volume = {282}, + publisher = {Springer-Verlag}, + address = {Heidelberg}, + year = {1987}, + doi = {10.1007/978-3-642-61582-5} +} +""", + "COPS" => raw""" +@techreport{DolanMore2004COPS, + author = {Dolan, Elizabeth D. and Mor{\'e}, Jorge J.}, + title = {Benchmarking Optimization Software with {COPS} 3.0}, + institution = {Argonne National Laboratory}, + number = {ANL/MCS-TM-273}, + year = {2004}, + doi = {10.2172/834714} +} +""", + "MGH" => raw""" +@article{MoreGarbowHillstrom1981, + author = {Mor{\'e}, Jorge J. and Garbow, Burton S. and Hillstrom, Kenneth E.}, + title = {Testing Unconstrained Optimization Software}, + journal = {ACM Transactions on Mathematical Software}, + year = {1981}, + volume = {7}, + number = {1}, + pages = {17--41}, + doi = {10.1145/355934.355936} +} +""", + "AMPGO" => raw""" +@misc{GavanaGOTestSuite, + author = {Gavana, Andrea}, + title = {Global Optimization Benchmarks}, + year = {2013}, + howpublished = {\url{http://infinity77.net/global_optimization/}}, + note = {Collection of benchmark functions and algorithm comparisons for global optimization (including AMPGO)} +} +""", + "Luksan" => raw""" +@techreport{LuksanMatonohaVlcek2003, + author = {Luksan, Ladislav and Matonoha, Cestmir and Vlcek, Jan}, + title = {Modified {CUTE} Problems for Sparse Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {1081}, + year = {2003}, + address = {Prague, Czech Republic} +} +""", + "NIST" => raw""" +@misc{NIST_StRD, + author = {{Statistical Engineering Division, NIST}}, + title = {Statistical Reference Datasets for Nonlinear Least Squares Regression}, + howpublished = {\url{https://www.itl.nist.gov/div898/strd/nls/nls_main.shtml}}, + year = {2000} +} +""", + "LuksanSparse" => raw""" +@techreport{LuksanMatonohaVlcek2010Sparse, + author = {Luksan, Ladislav and Matonoha, Ctirad and Vlcek, Jan}, + title = {Sparse Test Problems for Unconstrained Optimization}, + institution = {Institute of Computer Science, Academy of Sciences of the Czech Republic}, + number = {V-1064}, + year = {2010}, + address = {Prague, Czech Republic}, + url = {https://www.researchgate.net/publication/325314400_Sparse_Test_Problems_for_Unconstrained_Optimization} +} +""", +) + +export LIB_REFERENCES + +""" + export_bibtex(filename = "OptimizationProblems.bib"; include_lib_refs = true) + +Write all non-empty `:reference` BibTeX entries from `OptimizationProblems.meta` +to `filename`. Entries are deduplicated by their BibTeX key, so problems sharing +the same reference only appear once. + +If `include_lib_refs` is `true` (the default), one BibTeX entry per test-set +collection referenced in the `:lib` field is also appended. +""" +function export_bibtex(filename = "OptimizationProblems.bib"; include_lib_refs::Bool = true) + seen_keys = Set{String}() + count = 0 + open(filename, "w") do io + # Per-problem references (from :reference field) + for row in eachrow(OptimizationProblems.meta) + ref = strip(row[:reference]) + isempty(ref) && continue + # Extract the BibTeX citation key (first token after @type{) + m = match(r"@\w+\s*[{(]\s*([^,\s]+)\s*,"s, ref) + key = isnothing(m) ? ref : m.captures[1] + key in seen_keys && continue + push!(seen_keys, key) + println(io, ref) + println(io) + count += 1 + end + # One BibTeX entry per test-set collection that appears in any :lib value. + if include_lib_refs + collections = Set{String}() + for row in eachrow(OptimizationProblems.meta) + for entry in split(row[:lib], ",") + coll = strip(split(strip(entry), ":")[1]) + isempty(coll) || push!(collections, coll) + end + end + for coll in sort(collect(collections)) + haskey(LIB_REFERENCES, coll) || continue + ref = strip(LIB_REFERENCES[coll]) + m = match(r"@\w+\s*[{(]\s*([^,\s]+)\s*,"s, ref) + key = isnothing(m) ? ref : m.captures[1] + key in seen_keys && continue + push!(seen_keys, key) + println(io, ref) + println(io) + count += 1 + end + end + end + @info "Exported $count BibTeX entries to $filename" +end diff --git a/test/runtests.jl b/test/runtests.jl index 22ce11bfe..1357b8643 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -24,10 +24,8 @@ end # The problems included should be carefully argumented and issues # to create them added. # TODO: tests are limited for JuMP-only problems -@everywhere const list_problems_not_ADNLPProblems = - Symbol[:catmix, :gasoil, :glider, :methanol, :minsurf, :pinene, :rocket, :steering, :torsion] -@everywhere const list_problems_ADNLPProblems = - setdiff(list_problems, list_problems_not_ADNLPProblems) +@everywhere const list_problems_not_ADNLPProblems = Symbol[] +@everywhere const list_problems_ADNLPProblems = setdiff(list_problems, list_problems_not_ADNLPProblems) @everywhere const list_problems_not_PureJuMP = Symbol[] @everywhere const list_problems_PureJuMP = setdiff(list_problems, list_problems_not_PureJuMP) @@ -111,5 +109,6 @@ end pmap(test_one_problem, list_problems) include("test-scalable.jl") +include("test-meta-fields.jl") rmprocs() diff --git a/test/test-defined-problems.jl b/test/test-defined-problems.jl index 0007a346b..e6229c9bc 100644 --- a/test/test-defined-problems.jl +++ b/test/test-defined-problems.jl @@ -22,6 +22,31 @@ probes = @sync begin end @info "PureJuMP missing per worker" probes +@testset "Adjusted dimension warnings" begin + var_probs = OptimizationProblems.meta[OptimizationProblems.meta.variable_nvar, :name] + + for prob_name in var_probs + prob_sym = Symbol(prob_name) + + get_nvar_func = getfield(OptimizationProblems, Symbol("get_", prob_name, "_nvar")) + + for n in (50, 100) + n_adjusted = get_nvar_func(; n = n) + n_adjusted == n && continue # Skip if no adjustment for this n + + msg_re = Regex("number of variables adjusted from $(n) to $(n_adjusted)") + + for mod in (ADNLPProblems, PureJuMP) + isdefined(mod, prob_sym) || continue + constructor = getfield(mod, prob_sym) + @test_logs (:warn, msg_re) constructor(; n = n) + end + + break + end + end +end + @test setdiff(union(names(ADNLPProblems), list_problems_not_ADNLPProblems), list_problems) == [:ADNLPProblems] -@test setdiff(union(names(PureJuMP), list_problems_not_PureJuMP), list_problems) == [:PureJuMP] +@test setdiff(union(names(PureJuMP), list_problems_not_PureJuMP), list_problems) == [:PureJuMP] \ No newline at end of file diff --git a/test/test-meta-fields.jl b/test/test-meta-fields.jl new file mode 100644 index 000000000..28db9acc3 --- /dev/null +++ b/test/test-meta-fields.jl @@ -0,0 +1,78 @@ +""" + is_valid_url(s) -> Bool + +Return `true` if every comma-separated part of `s` is a syntactically valid +HTTP or HTTPS URL. A single URL (no commas) is the common case. +No network request is made; only the structure of each part is checked. +""" +function is_valid_url(s::String) + parts = strip.(split(s, ",")) + return all(p -> match(r"^https?://[^\s/$.?#][^\s]*$"i, p) !== nothing, parts) +end + +""" + is_valid_bibtex(s) -> Bool + +Return `true` if `s` looks like a structurally valid BibTeX entry, i.e.: +- Starts with `@entrytype{key,` (or parentheses variant). +- Has balanced curly braces. +""" +function is_valid_bibtex(s::String) + s = strip(s) + isempty(s) && return false + # Must match @entrytype{key, or @entrytype(key, + match(r"^@\w+\s*[{(]\s*[^,\s]+\s*,"s, s) === nothing && return false + # Braces must be balanced + depth = 0 + for c in s + if c == '{' + depth += 1 + elseif c == '}' + depth -= 1 + depth < 0 && return false + end + end + return depth == 0 +end + +@testset "Meta fields: :url format" begin + invalid = [ + (row[:name], row[:url]) for + row in eachrow(OptimizationProblems.meta) if !isempty(row[:url]) && !is_valid_url(row[:url]) + ] + for (name, url) in invalid + @error "Problem $name has an invalid :url format: $url" + end + @test isempty(invalid) +end + +@testset "Meta fields: :reference BibTeX structure" begin + invalid = [ + row[:name] for row in eachrow(OptimizationProblems.meta) if + !isempty(strip(row[:reference])) && !is_valid_bibtex(row[:reference]) + ] + for name in invalid + @error "Problem $name has an invalid BibTeX entry in :reference" + end + @test isempty(invalid) +end + +@testset "Meta fields: :lib format" begin + invalid = Tuple{String, String, String}[] + for row in eachrow(OptimizationProblems.meta) + isempty(row[:lib]) && continue + for entry in split(row[:lib], ",") + e = strip(entry) + m = match(r"^(\w+):\S+$", e) + if m === nothing + push!(invalid, (row[:name], e, "bad format (expected 'Collection:ID')")) + elseif !haskey(OptimizationProblems.LIB_REFERENCES, m.captures[1]) + push!(invalid, (row[:name], e, "unknown collection '$(m.captures[1])'")) + end + end + end + for (name, entry, reason) in invalid + @error "Problem $name has invalid :lib entry '$entry': $reason" + end + @test isempty(invalid) +end diff --git a/test/test-utils.jl b/test/test-utils.jl index b5ff1829d..b95fb62ad 100644 --- a/test/test-utils.jl +++ b/test/test-utils.jl @@ -28,6 +28,28 @@ @test meta[:has_fixed_variables] == (get_ifix(nlp) != []) end +@testset "Test :implementation consistency with source files" begin + for row in eachrow(meta) + name = row[:name] + impl = row[:implementation] + sym = Symbol(name) + + in_jump = isdefined(PureJuMP, sym) + in_adnlp = isdefined(ADNLPProblems, sym) + + if impl == :both + @test in_jump || @error "$name has :implementation => :both but is missing from PureJuMP" + @test in_adnlp || @error "$name has :implementation => :both but is missing from ADNLPProblems" + elseif impl == :jump + @test in_jump || @error "$name has :implementation => :jump but is missing from PureJuMP" + @test !in_adnlp || @error "$name has :implementation => :jump but is also present in ADNLPProblems" + elseif impl == :adnlpmodels + @test in_adnlp || @error "$name has :implementation => :adnlpmodels but is missing from ADNLPProblems" + @test !in_jump || @error "$name has :implementation => :adnlpmodels but is also present in PureJuMP" + end + end +end + @everywhere function test_in_place_constraints(prob::Symbol) nlp = OptimizationProblems.ADNLPProblems.eval(prob)() return test_in_place_constraints(prob, nlp) diff --git a/test/utils.jl b/test/utils.jl index 2d4300a46..765d94f7f 100644 --- a/test/utils.jl +++ b/test/utils.jl @@ -245,3 +245,36 @@ function test_one_problem(prob::Symbol) @info "Test compatibility between PureJuMP and ADNLPProblems" test_compatibility(prob, nlp_jump, nlp_ad, ndef) end + +""" + is_valid_url(s) -> Bool + +Return `true` if `s` is a syntactically valid HTTP or HTTPS URL. +No network request is made; only the string structure is checked. +""" +function is_valid_url(s::String) + return match(r"^https?://[^\s/$.?#][^\s]*$"i, s) !== nothing +end + +""" + is_valid_bibtex(s) -> Bool + +Return `true` if `s` looks like a structurally valid BibTeX entry, i.e.: +- Starts with `@entrytype{key,` (or parentheses variant). +- Has balanced curly braces. +""" +function is_valid_bibtex(s::String) + s = strip(s) + isempty(s) && return false + match(r"^@\w+\s*[{(]\s*[^,\s]+\s*,"s, s) === nothing && return false + depth = 0 + for c in s + if c == '{' + depth += 1 + elseif c == '}' + depth -= 1 + depth < 0 && return false + end + end + return depth == 0 +end