[Roadmap] New problem types: hybrid, impulsional, and ensemble control

オープン
#807 コメント 0 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@ocots がすでに取り組んでいます。

2026年7月9日 から。

評価

この issue はまだ評価されていません。

説明

roadmap

Objective

Support non-conventional optimal control problems in the control-toolbox ecosystem:

  • Hybrid systems — mixed continuous/discrete dynamics, switching, mode transitions
  • Impulsional control — measure-driven control, state jumps
  • Ensemble control — control of populations of systems

Context

These problem classes are important for real-world applications but are not yet supported. Handling them requires extensions at the model, discretization, and solver levels. This is a long-term goal that will build on the architectural consolidation work (CTParser IR, CTDirect transcription recipes).

Related work

Several Julia packages address related problem classes and could serve as references or integration targets:

  • NOSNOC — Numerical optimal control for hybrid and nonsmooth dynamical systems. Key features: FESD (Finite Elements with Switch Detection) discretization with accurate event handling and sensitivities, time-freezing reformulations for systems with state jumps (contact, impacts), Filippov / piecewise smooth / complementarity-based models, real-time MPC algorithms for hybrid systems. Extensive MATLAB example library. Relevant to both hybrid and impulsional problem types.

  • CCOpt.jl — High-performance solver for Mathematical Programs with Complementarity Constraints (MPCCs), by the MadNLP team. Relaxation and penalty methods. Relevant to hybrid systems formulated with complementarity constraints.

  • MPCCbenchmark.jl — Benchmark set for large-scale MPCCs, implemented in JuMP with ComplementOpt. Includes nonsmooth optimal control problem instances from NOSNOC, power-flow problems with PV/PQ switches, and SCOPF problems with nonsmooth recourse. Useful as a source of benchmark problems for non-conventional OCPs.

Why

  • Hybrid systems appear in power systems, aerospace mode switching, contact dynamics
  • Impulsional control is needed for problems with instantaneous control actions (e.g., thruster burns, medication dosing)
  • Ensemble control is relevant for quantum control, epidemiology, and control of particle populations
  • These extensions will leverage the architectural work in CTParser (IR-level transformations) and CTDirect (recipe extensions for state jumps, as noted in CTDirect roadmap §12)

References

主要言語
Julia
スター
135
フォーク
11
平均マージ
7時間 51分
マージ済み PR(30日)
22

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

control-toolbox/OptimalControl.jl のほかの issue

control-toolbox/OptimalControl.jl の issue をすべて見る

似ている issue

Julia の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。