Documentation: sign conventions (min/max, p⁰, constraints, duals) and how they appear in a solution
メンテナーはふだん 1 日以内に返信
@ocots がすでに取り組んでいます。
2026年10月21日 から。
評価
この issue はまだ評価されていません。
説明
Summary
Add a page to the documentation that explains the sign conventions of the ecosystem and how they show up in a solution, once they are settled in the discussion control-toolbox/OptimalControl.jl#1014. This issue is the place for that page; it should not be written before the choices are made.
Related: control-toolbox/OptimalControl.jl#968 (documentation items waiting on other packages), control-toolbox/CTDirect.jl#639, control-toolbox/CTFlows.jl#472.
What the page should explain
minvsmax: the value ofp⁰, the Hamiltonian (with and without constraints), and whetherpand the duals change sign whenmin Jbecomesmax −J.- Inequality constraints:
g ≥ 0orc ≤ 0, the sign of the multiplier on each side, two-sided constraints, equalities. - What
dual(sol, ocp, :label)returns for each kind of constraint (path, box, boundary, variable box): sign, scaling (continuous-time density or raw NLP value), and its meaning at the first and last nodes. - The same constraint solved directly (
solve) and by an indirect method (Flow(ocp, law; constraint=:label, multiplier=μ)): how to read the duals on both sides, and the dictionary betweenμanddual. - Transversality and boundary constraints: the sign of
βand of the dual of a boundary constraint. - Which of these do not depend on the NLP solver (Ipopt, MadNLP).
Elements already available
- Probes of 2026-10-21 (closed-form problems; table in the discussion).
- The KKT derivation per scheme and the measurements in control-toolbox/CTDirect.jl#639.
- The existing section Formulation → Notation and conventions, to complete or to point to.
- A runnable probe such as
solution_duals.jl(see #968), extended with an indirect solve, so the page is checked by the documentation build.
Depends on
- Decision on the conventions: control-toolbox/OptimalControl.jl#1014
- CTDirect alignment: control-toolbox/CTDirect.jl#639
- Duals of
Flow(ocp, law): control-toolbox/CTFlows.jl#472
- 主要言語
- Julia
- スター
- 135
- フォーク
- 11
- 平均マージ
- 7時間 49分
- マージ済み PR(30日)
- 23
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
control-toolbox/OptimalControl.jl のほかの issue
-
[Doc] A pull request without the preview label announces a deployment that never happens対応中かも @ocots が今日担当しました。 オープンdocumentation
control-toolbox/OptimalControl.jl#1042 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
[Doc] User guide to the duals: every kind, constraint ↔ dual, direct ↔ indirect対応中かも @ocots が 7 日前に担当しました。 オープン
control-toolbox/OptimalControl.jl#1035 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Tests of the duals: every kind of constraint, direct vs indirect, pinned algorithms対応中かも @ocots が 7 日前に担当しました。 オープン
control-toolbox/OptimalControl.jl#1034 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
[Doc] Examples for the sign convention of duals and costate (min/max, writing of constraints, direct vs indirect)対応中かも @ocots が 15 日前に担当しました。 オープン
control-toolbox/OptimalControl.jl#1016 · コメント 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Tests fail on Julia 1.13: keyword-only anonymous function in test/problems/goddard.jl対応中かも @ocots が 20 日前に担当しました。 オープン
control-toolbox/OptimalControl.jl#996 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
control-toolbox/OptimalControl.jl の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
メンテナーはふだん 1 日以内に返信
-
lux
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
JuliaGraphs/GraphNeuralNetworks.jl#732 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
erfinv(::Float16) and erfcinv(::Float16) are wrong for abs(x) <= 0.75 (erfinv(Float16(0)) == 0.2201)オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
JuliaMath/SpecialFunctions.jl#571 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100