Skip to content

Commit

Permalink
Update solvers list and add symbolics to docs deps
Browse files Browse the repository at this point in the history
  • Loading branch information
Vaibhavdixit02 committed Aug 7, 2024
1 parent 04d7275 commit 7a63f62
Show file tree
Hide file tree
Showing 2 changed files with 136 additions and 23 deletions.
1 change: 1 addition & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267"
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
SciMLSensitivity = "1ed8b502-d754-442c-8d5d-10ac956f44a1"
Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7"
Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c"
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"

Expand Down
158 changes: 135 additions & 23 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,29 +49,141 @@ to add the specific wrapper packages.
+ On the [Julia Discourse forums](https://discourse.julialang.org)
+ See also [SciML Community page](https://sciml.ai/community/)

## Overview of the Optimizers

| Package | Local Gradient-Based | Local Hessian-Based | Local Derivative-Free | Box Constraints | Local Constrained | Global Unconstrained | Global Constrained |
|:----------------------- |:--------------------:|:-------------------:|:---------------------:|:---------------:|:-----------------:|:--------------------:|:--------------------:|
| BlackBoxOptim ||||||| ❌ ✅ |
| CMAEvolutionaryStrategy ||||||||
| Evolutionary ||||||| 🟡 |
| Flux ||||||||
| GCMAES ||||||||
| MathOptInterface ||||||| 🟡 |
| MultistartOptimization ||||||||
| Metaheuristics ||||||| 🟡 |
| NOMAD ||||||| 🟡 |
| NLopt ||||| 🟡 || 🟡 |
| Optim ||||||||
| PRIMA ||||||||
| QuadDIRECT ||||||||

✅ = supported

🟡 = supported in downstream library but not yet implemented in `Optimization`; PR to add this functionality are welcome

❌ = not supported
## Overview of the solver packages in alphabetical order

<details>
<summary><strong>BlackBoxOptim</strong></summary>
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
</details>

<details>
<summary><strong>CMAEvolutionaryStrategy</strong></summary>
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
</details>

<details>
<summary><strong>Evolutionary</strong></summary>
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
- Non-linear Constraints
</details>

<details>
<summary><strong>GCMAES</strong></summary>
- **Global Methods**
- First order
- Box Constraints
- Unconstrained
</details>

<details>
<summary><strong>Manopt</strong></summary>
- **Local Methods**
- First order
- Second order
- Zeroth order
- Box Constraints
- Constrained 🟡
- **Global Methods**
- Zeroth order
- Unconstrained
</details>

<details>
<summary><strong>MathOptInterface</strong></summary>
- **Local Methods**
- First order
- Second order
- Box Constraints
- Constrained
- **Global Methods**
- First order
- Second order
- Constrained
</details>

<details>
<summary><strong>MultistartOptimization</strong></summary>
- **Global Methods**
- Zeroth order
- First order
- Second order
- Box Constraints
</details>

<details>
<summary><strong>Metaheuristics</strong></summary>
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
</details>

<details>
<summary><strong>NOMAD</strong></summary>
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
- Constrained 🟡
</details>

<details>
<summary><strong>NLopt</strong></summary>
- **Local Methods**
- First order
- Zeroth order
- Second order 🟡
- Box Constraints
- Local Constrained 🟡
- **Global Methods**
- Zeroth order
- First order
- Unconstrained
- Constrained 🟡
</details>

<details>
<summary><strong>Optim</strong></summary>
- **Local Methods**
- Zeroth order
- First order
- Second order
- Box Constraints
- Constrained
- **Global Methods**
- Zeroth order
- Unconstrained
- Box Constraints
</details>

<details>
<summary><strong>PRIMA</strong></summary>
- **Local Methods**
- Derivative-Free: ✅
- **Constraints**
- Box Constraints: ✅
- Local Constrained: ✅
</details>

<details>
<summary><strong>QuadDIRECT</strong></summary>
- **Constraints**
- Box Constraints: ✅
- **Global Methods**
- Unconstrained: ✅
</details>

🟡 = supported in downstream library but not yet implemented in `Optimization.jl`; PR to add this functionality are welcome


## Citation

Expand Down

0 comments on commit 7a63f62

Please sign in to comment.