[Roadmap] Update OptimalControlProblems for v2 and add new problems
Les mainteneurs répondent en général sous 1 jour
@ocots y travaille déjà.
Depuis le 9/7/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Objective
Update OptimalControlProblems.jl for OptimalControl v2 compatibility and add new benchmark problems from the curated list of sources below.
Context
OptimalControlProblems.jl provides a curated collection of benchmark optimal control problems. It needs to be updated for the v2 API, and new problems need to be added. This issue consolidates and supersedes issue #92.
Problem sources
A non-exhaustive list of places to find benchmark optimal control problems:
- ICLOCS — Imperial College London Optimal Control Software, example library
- COPS — Constrained Optimization Problem Set (Argonne)
- PSOPT — PSOPT example list; see also the PSOPT Application Examples Document and the source examples
- MINTOC — Mintoc optimal control toolkit examples
- DYMOS — Dymos (OpenMDAO) example library
- BOCOP — BOCOP examples document
- Betts — Practical Methods for Optimal Control and Estimation Using Nonlinear Programming, second edition (Betts)
Specific problems to add
- MRI — from issue #92
- Kepler — from issue #92
- Swimmer — see swimmer.jl and swimmer2.jl (scalarised version) in CTDirect test problems
- Problems from the PSOPT examples that overlap with existing OptimalControlProblems could be updated/cross-referenced
Why
A rich problem library is essential for benchmarking, testing, and tutorials. Keeping it up to date with the latest API ensures it remains useful for the community. The benchmarking paper (see roadmap) will rely on this collection.
References
- OptimalControlProblems.jl
- Issue #92 (superseded, to be closed)
- Roadmap comment
- Langage dominant
- Julia
- Étoiles
- 13
- Forks
- 1
- Merge moyen
- 3 h 9 min
- PR mergées (30 j)
- 47
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de control-toolbox/OptimalControlProblems.jl
-
[Cron] cron-convergenceOuvertecron-convergence
Difficulté 4/5 3-5 jours Accessibilité débutants 28/100
control-toolbox/OptimalControlProblems.jl#418 ·
Les mainteneurs répondent en général sous 1 jour
-
[Dev] Split src into submodules (ct-conventions MOD1, MOD2), keeping the public exportsPeut-être pris @ocots l’a pris il y a 1 jour. Ouvertedev
control-toolbox/OptimalControlProblems.jl#413 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
[Metadata] Reference solutions with how they were obtained: typed references and APIPeut-être pris @ocots l’a pris il y a 1 jour. Ouvertefeature
control-toolbox/OptimalControlProblems.jl#409 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
[Tests] Remove the MadNLP barrier bypass once CTSolvers ≥ 0.7.1 is usedPeut-être pris @ocots l’a pris il y a 1 jour. Ouverte
control-toolbox/OptimalControlProblems.jl#398 · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
[Dev] One source of truth per problem, and the equality of the modelings checked by computationPeut-être pris @ocots l’a pris il y a 2 jours. Ouverte
control-toolbox/OptimalControlProblems.jl#391 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de control-toolbox/OptimalControlProblems.jl
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 73/100
Les mainteneurs répondent en général sous 1 jour
-
lux
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
JuliaGraphs/GraphNeuralNetworks.jl#732 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour
-
erfinv(::Float16) and erfcinv(::Float16) are wrong for abs(x) <= 0.75 (erfinv(Float16(0)) == 0.2201)Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
JuliaMath/SpecialFunctions.jl#571 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100