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

Abierto
#807 0 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@ocots ya está trabajando en esto.

Desde el 9/7/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

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

Lenguaje dominante
Julia
Estrellas
135
Forks
11
Merge medio
7 h 51 min
PR fusionados (30 d)
22

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de control-toolbox/OptimalControl.jl

Todos los issues de control-toolbox/OptimalControl.jl

Issues similares

Más issues de Julia

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.