Examples
More than 650 examples have already been implemented in DYNA for you. A good deal of them are borrowed from the literature and various academic or commercial OCP solvers. Use the links below to check the details and feel free to use them as a starting point to formulate your own optimal control problem.
Problem libraries, cross-referencing and bibliography
- ACADO library
- APMonitor library
- BOCOP library
- COPS 3.0 library
- DIDO library
- DYNOPT library
- GPOPS library
- ICLOCS library
- MUSCOD library
- OpenOCL library
- PROPT library
- PSOPT library
- TACO library
- DYNA continuous time library
- DYNA discrete time library
- DYNA other example problems
- DYNA tutorial library
- DYNA tutorial models translated to GAMS
- Cross-reference of DYNA features with example models
- Bibliographic sources
Example problems from the ACADO[1] library
- Active Damping (acado-active-damping)
- Bioreactor (acado-bioreactor)
- Discrete Time Rocket (acado-discrete-time-rocket)
- Distillation column (acado-hydroscal-ocp-equil | acado-hydroscal-ocp)
- Optimal Control of a Jojo (acado-jojo)
- Catalyst mixing multiobjective problem in a tubular reactor (acado-pareto-catalyst-mixing)
- Fed-batch bioreactor with yield-productivity conflict (acado-pareto-batch-bioreactor)
- Plug-flow tubular reactor multiobjective problem (acado-pareto-plug-flow-reactor)
- Pendulum Estimation (acado-pendulum-estimation)
- Powerkite (acado-powerkite-a | acado-powerkite-b | acado-powerkite-c | acado-powerkite-d | acado-powerkite-e)
- Wave Energy (acado-wave-energy)
Example problems from the APMonitor[2] library
- Direct current motor (apm-dc-motor)
- Blood glucose response of an insulin dependent patient (apm-diabetes)
- Blood Glucose in Type I Diabetes (apm-diabetic-a | apm-diabetic-b)
- Estimation of seasonal transmission parameters in childhood infectious disease (apm-measles-biweek)
- Pendulum motion (apm-pendulum-a | apm-pendulum-b | apm-pendulum-c | apm-pendulum-d)
- Truck suspension (apm-truck-suspension)
Example problems from the BOCOP[3] library
- Anaerobic digestion of microalgae for biogas production (bocop-anaerobic-digestion)
- Clamped beam (bocop-clamped-beam)
- Contrast in magnetic resonance imaging (bocop-contrast)
- Fuller problem (bocop-fuller)
- A simple Goddard problem (bocop-goddard)
- Harvest (bocop-harvest)
- Control of the heat equation (bocop-heat-dirichlet | bocop-heat-neumann)
- Optimal health insurance (bocop-insurance-audit | bocop-insurance-non-audit)
- Inverted pendulum (bocop-inverted-pendulum)
- Jackson (bocop-jackson)
- Jackson identification (bocop-jackson-id | bocop-jackson-id2 | bocop-jackson-id3)
- Leukemia (bocop-leukemia)
- Three-link micro-swimmer (bocop-micro-swimmer)
- Energy management for an electric microgrid (bocop-microgrid-binary-a | bocop-microgrid-binary-b | bocop-microgrid)
- Second order singular regulator (bocop-second-order-singular-regulator)
- Third order state constraints (bocop-third-order-state-constraints)
Example problems from the COPS 3.0[4] benchmarking suite
- Catalyst Mixing Problem (cops-catmix | cops-catmix2)
- Fluid Flow in a Channel (cops-fluidflow | cops-fluidflow2 | cops-fluidflow3)
- Catalytic Cracking of Gas Oil (cops-gasoil | cops-gasoil2)
- Hang glider (cops-glider)
- Goddard Rocket (cops-goddard)
- Hanging Chain (cops-hanging-chain)
- Marine Population Dynamics (cops-marine | cops-marine2)
- Methanol-to-Hydrocarbons (cops-methanol | cops-methanol2)
- Particle Steering (cops-particle | cops-particle2 | cops-particle3)
- Isomerization of Alpha-Pinene (cops-pinene | cops-pinene2)
- Robot arm (cops-robotarm)
Example problems from the DIDO[5] library
- Unmanned Aerial Vehicle Drop Problem (dido-uav)
Example problems from the DYNOPT[6] library
- Batch Reactor Problem (dynopt-batch-reactor)
- Diafiltration optimal design (dynopt-diafiltration)
- High Dimensional Control (dynopt-high-dim-control)
- Parallel Reactions in Tubular Reactor (dynopt-parallel-reactions)
- Parameter Estimation Problem (dynopt-parameter-estimation)
Example problems from the GPOPS[7] library
- Dynamic Soaring Problem (gpops-dynamic-soaring)
- Hyper-Sensitive Problem (gpops-hyper-sensitive)
- Kinetic Batch Reactor Problem (gpops-kinetic-batch-reactor)
- Low-Thrust Orbit Transfer Example (gpops-low-thrust-orbit | gpops-low-thrust-orbit2)
- Multiple-Stage Launch Vehicle Ascent Example (gpops-multiple-stage-launch-a | gpops-multiple-stage-launch-a2 | gpops-multiple-stage-launch-a3 | gpops-multiple-stage-launch-b | gpops-multiple-stage-launch-b2 | gpops-multiple-stage-launch-b3)
- Aeroassisted Orbit Transfer from Geostationary to Low Earth Orbit (gpops-orbit-transfer)
- Reusable Launch Vehicle Entry (gpops-reusable-launch-vehicle)
- Minimum Time-to-Climb Problem Using Seywald Model (gpops-seywald)
- Optimal Configuration of Tetrahedral Spacecraft Formations (gpops-spacecraft-tetra-a | gpops-spacecraft-tetra-b)
- Minimum Time-to-Climb of a Supersonic Aircraft (gpops-supersonic)
- Two-Strain Tuberculosis Optimal Control Model (gpops-tuberculosis)
- Tumor Anti-Angiogenesis Problem (gpops-tumor)
- Optimal Control of a Vertical Takeoff Vertical Landing Hopping Vehicle (gpops-vtvl)
Example problems from the ICLOCS[8] library
- Aly-Chan problem (iclocs-aly-chan)
- Minimum Time Flight Profile for a Commercial Aircraft (iclocs-commercial-flight)
- Orbit-raising optimal control (iclocs-orbit-raising)
- Automatic parallel parking in minimum time (iclocs-parallel-parking)
- Optimal Control for a Spaceship (iclocs-spaceship-control)
- Aircraft Go-Around in the Presence of Windshear (iclocs-windshear)
Example problems from the MUSCOD[9] library
- Annihilation of calcium oscillations (muscod-calcium-oscil-binary-a | muscod-calcium-oscil-a)
- Annihilation of calcium oscillations with PLC activation inhibition (muscod-calcium-oscil-binary-b | muscod-calcium-oscil-b)
- Egerstedt problem with switching constraints (muscod-egerstedt-binary-b)
- Egerstedt standard problem (muscod-egerstedt-binary-a)
- F-8 aircraft (muscod-f8-aircraft-binary | muscod-f8-aircraft)
- Fuller’s initial value multimode problem (muscod-fuller-binary)
- D’Onofrio chemotherapy model (muscod-onofrio-binary | muscod-onofrio)
- Supermarket refrigeration system (muscod-refrigeration-binary | muscod-refrigeration)
- Subway ride (muscod-subway-binary | muscod-subway)
- Van der Pol Oscillator (muscod-vanderpol-binary)
- Lotka Volterra multi-arcs problem (muscod-volterra-binary-a | muscod-volterra-binary-b)
Example problems from the OpenOCL[10] library
- Ball and beam problem (oocl-ball-and-beam)
- Bouncing ball problem (oocl-bouncing-ball)
- Cartpole problem (oocl-cartpole)
- Pendulum problem (oocl-pendulum)
- Racecar problem (oocl-racecar)
Example problems from the PROPT[11] library
- Acrobot (propt-acrobot)
- A Linear Problem with Bang Bang Control (propt-bang-bang-free-time)
- Batch Fermentor (propt-batch-fermentor)
- Batch Production (propt-batch-production)
- Lee-Ramirez bioreactor (propt-bioreactor-lee)
- Park-Ramirez bioreactor (propt-bioreactor-park)
- The Brachistochrone Problem (propt-brachistochrone-dae | propt-brachistochrone)
- Bridge Crane System (propt-bridge-crane-system)
- Bryson Maxrange (propt-bryson-max-range)
- Bryson-Denham Problem (propt-bryson-denham-detailed | propt-bryson-denham-short | propt-bryson-denham)
- Bryson-Denham Two-Phase Problem (propt-bryson-denham-two-phase)
- Catalyst Mixing (propt-catalyst-mixing)
- Catalytic Cracking of Gas Oil (propt-catalytic-cracking)
- Flow in a Channel (propt-channel-flow)
- Continuous State Constraint Problem (propt-cont-state-constraint)
- Coulomb Friction (propt-coulomb-friction-a | propt-coulomb-friction-b)
- Curve Area Maximization (propt-curve-area-maximization)
- Denbigh’s System of Reactions (propt-denbigh-system)
- Dielectrophoresis Particle Control (propt-dielectrophoresis-problem)
- Disturbance Control (propt-disturbance-control)
- Drug Displacement Problem (propt-drug-displacement)
- Optimal Drug Scheduling for Cancer Chemotherapy (propt-drug-scheduling)
- Euler Buckling Problem (propt-euler-buckling)
- Flight Path Tracking (propt-flight-path-tracking)
- Food Sterilization (propt-food-sterilization)
- Free Floating Robot (propt-free-floating-robot)
- Fuller Phenomenon (propt-fuller-phenomenon)
- Genetic (propt-genetic-a | propt-genetic-b)
- Global Dynamic System (propt-global-dynamic-system)
- Goddard Rocket (propt-goddard-singular-a | propt-goddard-singular-b)
- Goddard Rocket, Maximum Ascent (propt-goddard-rocket)
- Greenhouse Climate Control (propt-greenhouse-control)
- Grusin’s Metric (propt-grusins-metric)
- Hang Glider Control (propt-hang-glider)
- Hanging Chain (propt-hanging-chain)
- Hyper-Sensitive Optimal Control (propt-hyper-sensitive)
- Initial Value Problem (propt-initial-value-problem)
- Isomerization of alpha pinene (propt-isomerization-alpha)
- Isoperimetric Constraint Problem (propt-isoperimetric)
- Jumbo Crane Container Control (propt-jumbo-container-crane)
- Linear Tangent Steering Problem (propt-lin-tan-ste)
- Linear Gas Absorber (propt-linear-gas-absorber)
- Linear Pendulum (propt-linear-pendulum)
- Linear Problem with Bang Bang Control (propt-linear-problem-bang)
- LQR Problem (propt-lqr-problem)
- Marine Population Dynamics (propt-marine-population)
- Maximum Radius Orbit Transfer (propt-maximum-orbit-transfer)
- Sequential Activation of Metabolic Pathways (propt-metabolic-pathways)
- Methanol to Hydrocarbons (propt-methanol-to-hydrocarbons)
- Minimum Energy Orbit Transfer (propt-min-energy-orbit-transfer)
- Minimum Climb Time (propt-minimum-climb-eng)
- Missile Intercept (propt-missile-intercept)
- Moonlander Example (propt-moon-lander)
- Nagurka Problem (propt-nagurka-problem)
- Nishida Problem (propt-nishida-problem)
- Nondifferentiable system (propt-nondiff-system-a | propt-nondiff-system-b)
- Nonlinear Continuous Stirred Tank Reactor (propt-nonlinear-cstr)
- Obstacle Avoidance (propt-obstacle-avoidance)
- Oil Shale Pyrolysis (propt-oil-pyrolysis)
- One Dimensional Rocket Ascent (propt-one-dim-rocket)
- Parametric Sensitivity Control (propt-optimal-parametric-sensitivity)
- Orbit Raising Minimum Time (propt-orbit-raising-min-time)
- Path Tracking Robot (propt-path-tracking-robot-two-phase | propt-path-tracking-robot)
- Pendulum Gravity Estimation (propt-pendulum-gravity)
- Penicillin Plant (propt-penicillin-plant)
- Plug-Flow Tubular Reactor (propt-plug-flow-reactor)
- Quadratic constraint problem (propt-quadratic-constraint)
- Quadruple Integral (propt-quadruple-integral)
- Radio telescope (propt-radio-telescope)
- Rayleigh Unconstrained (propt-rayleigh-unconstrained)
- Rigid Body Rotation (propt-rigid-body-rotation)
- Robot Arm Movement (propt-robot-arm-movement)
- Time-optimal Trajectories for Robot Manipulators (propt-robot-manipulators)
- Satellite Control (propt-satellite-control)
- Second Order System (propt-second-order-system)
- Space Shuttle Reentry (propt-shuttle-entry)
- Simple Bang Bang Problem (propt-simple-bang-bang)
- Singular Arc Problem (propt-singular-arc)
- Singular Continuous Stirred Tank Reactor (propt-singular-cstr)
- Singular Control (propt-singular-control-a | propt-singular-control-b | propt-singular-control-c | propt-singular-control-d | propt-singular-control-e | propt-singular-control-f)
- Spring Mass Damper (propt-spring-system)
- Stirred Tank (propt-stirred-tank)
- Temperature Control (propt-temperature-control)
- A Simple Terminal Constraint Problem (propt-terminal-constraint-a | propt-terminal-constraint-b)
- Third order system (propt-third-order-system)
- Time Delay (propt-time-delay-proxi-a | propt-time-delay-proxi-b | propt-time-delay-a | propt-time-delay-b)
- Transfer Min Swing (propt-transfer-min-swing)
- Tubular Reactor (propt-tubular-reactor)
- Turbo Generator (propt-turbo-generator)
- Two Stage CSTR (propt-two-stage-cstr)
- Two-Link Robot (propt-two-link-robot)
- Two-Link Robotic Arm (propt-two-link-robotic-arm)
- Two-Phase Schwartz (propt-two-phase-schwartz)
- Van der Pol Oscillator (propt-vanDerPol)
- Zermelo Ferry Trajectory (propt-zermelo-ferry)
- Zermelo Flight Trajectory (propt-zermelo-flight)
Example problems from the PSOPT[12] library
- Alp rider problem (psopt-alpine)
- Lee-Ramirez bioreactor (psopt-bioreactor)
- Bouncing ball (psopt-bouncing-ball)
- Brachistochrone problem (psopt-brac)
- Breakwell problem (psopt-breakwell)
- Bryson Maximum Range Problem (psopt-bryson-max-range)
- Bryson-Denham problem (psopt-bryson-denham)
- Catalyst mixing problem (psopt-catmix)
- Coulomb friction problem (psopt-coulomb)
- Catalytic Cracking of Gas Oil (psopt-cracking | psopt-cracking2)
- Minimum Swing Control for Container Crane (psopt-crane)
- DAE index 3 parameter estimation problem (psopt-dae-i3)
- Time delay problem (psopt-delay)
- Geodesic problem (psopt-geodesic)
- Hanging chain problem (psopt-hanging-chain)
- Heat diffusion problem (psopt-heat)
- Isoperimetric problem (psopt-isoperimetric)
- Lambert problem (psopt-lambert)
- Parameter estimation for ODE with 2 parameters (psopt-li-b | psopt-li-a)
- Linear tangent steering problem (psopt-lts)
- Optimal control of a simplified Manutec R3 robot with three arms (psopt-manutec)
- Missile terminal burn manoeuvre (psopt-missile)
- Moonlander problem (psopt-moon)
- Dynamic MPEC problem (psopt-mpec)
- Bock’s notorious parameter estimation problem (psopt-notorious)
- Obstacle avoidance problem (psopt-obstacle-a | psopt-obstacle-b)
- Predator-prey parameter estimation problem (psopt-predator)
- Rayleigh problem (psopt-rayleigh)
- Reorientation of an asymmetric rigid body (psopt-reorientation)
- Shuttle reentry problem (psopt-shuttle-reentry)
- Singular problem (psopt-singular)
- Time varying state constraint problem (psopt-stc)
- Two link arm problem (psopt-two-link-arm)
- Two-phase Schwartz problem (psopt-two-phase-schwartz-a | psopt-two-phase-schwartz-b)
- Two-phase path tracking robot (psopt-two-phase-robot-a | psopt-two-phase-robot-b)
- Two burn orbit transfer (psopt-twoburn | psopt-twoburn2)
- Zero Propellant Manoeuvre of the ISS (psopt-zpm-a1 | psopt-zpm-b1 | psopt-zpm-b2)
Example problems from the TACO[13] library
- Batch distillation model (taco-batchdist)
- The classical brachistochrone problem (taco-brac)
- Time Optimal Car (taco-car)
- Continuously Stirred Tank Reactor (taco-cstr)
- Simple nonlinear model predictive control toy problem (taco-nmpc)
- Apollo type vehicle reentry problem (taco-reentry)
- Semibatch esterification problem (taco-semibatch)
DYNA example problems for continuous time
Note that some of the problems are from mintOC.de[14].
Optimal control
- An academic problem (academic-a | academic-b)
- Autonomous Car Racing (acados-racecar-a | acados-racecar-b)
- Aerial swarming model (acados-swarming)
- An underwater vehicle problem (aquanautics)
- Atmospheric entry problem (atmo-entry-nre | atmo-entry-re)
- A system with autonomous switches (autonomous-switch-b)
- Bagley-Torvik equation (bagley-torvik-a1 | bagley-torvik-a2 | bagley-torvik-b1 | bagley-torvik-b2)
- Ball and beam problem (ball-and-beam)
- Batch reactor (batch-reactor)
- Time Optimal Launch of a Titan-II Trajectory (beluga-TitanII)
- Financial oscillator (beluga-financial-oscillator)
- High Thrust Orbit Raising (beluga-high-thrust)
- 2D Hypersonic Planetary Entry (beluga-hypersonic-2D)
- 3D Hypersonic Planetary Entry (beluga-hypersonic-3D)
- Hypersonic nose (beluga-hypersonic-nose)
- Low Thrust Orbit Raising (beluga-low-thrust)
- One loop circuit (beluga-one-loop-circuit)
- Optimal Aeroassisted Plane - Change Maximum Velocity with Heat Rate Limit (betts-aotv-a)
- Optimal Aeroassisted Plane - Minimax Heat Rate (betts-aotv-b)
- Minimum Time to Climb (betts-clym)
- Optimal Spacecraft Docking Maneuver (betts-dock)
- Free-Flying Robot (betts-ffrb)
- Goddard Rocket Problem (betts-gdrd)
- Multi-path Multi-phase Optimization (betts-gsoc)
- Optimal Low-Thrust Transfer Between Libration Points (betts-lbr1-a | betts-lbr1-b | betts-lbr2-a | betts-lbr2-b | betts-lbri-b | betts-lbri-a)
- Racecar on an eight-shape circuit (car-racing)
- Buffer Tank Case Study (cc-buffer-tank)
- A Differential Complementarity Linear System (cc-dcls)
- Circuit with an ideal diode and two voltage sources (cc-diode)
- Optimization Problem Tank Cascade (cc-tank-cascade1 | cc-tank-cascade2)
- Keep-out zone chance constraint (chc-keep-out-zone-a | chc-keep-out-zone-b)
- Minimum-energy trajectory with chance constraints (chc-min-energy)
- Chebyshev Differential Equation (chebychev | chebychev2)
- Control of the Circadian Rhythms (circadian-rhythms-a | circadian-rhythms-b)
- Pneumonia and Meningitis Coinfection (coinfection)
- Convert to AMPL (convert-to-ampl)
- Bang-Bang Control Problem (costate-example-c)
- Infinite Horizon Optimal Control Problem (costate-example-f1 | costate-example-f2)
- Infinite-Horizon One-Dimensional Nonlinear Problem (costate-example-e1 | costate-example-e2)
- Nonlinear One-Dimensional Finite-Horizon Problem (costate-example-b)
- Nonlinear One-Dimensional Initial-Value Problem (costate-example-a)
- Singular Arc Problem (costate-example-d)
- Cubesat fuel cost optimal control (cubesat-a)
- Cubesat time optimal control (cubesat-b)
- Cubesat energy optimal pseudowheels (cubesat-c)
- Cubesat energy optimal velocity pseudowheels (cubesat-d)
- Damped Linear Oscillator (damp-lin-oscil-c | damp-lin-oscil-a | damp-lin-oscil-e | damp-lin-oscil-d | damp-lin-oscil-b)
- Debris Pickup Problem (debris-pickup)
- Optimal and sub-optimal control in Dengue epidemics (dengue)
- Dengue in Cape Verde: vector control (dengue-sir)
- Dengue in Cape Verde: vector control and vaccination (dengue-svir)
- De Pillis chemotherapy model (depillis-binary | depillis)
- Robust PID Design (design-pid-a-dist | design-pid-a-step | design-pid-b-dist | design-pid-b-step | design-pid-c-dist | design-pid-c-step | design-pid-d-dist | design-pid-d-step)
- Oligopoly model of advertising (dg-advertising)
- Differential Game - Homicidal Chauffeur (dg-homicidal-chauffeur)
- A Pursuit-Evasion Game Involving Two Spacecraft (dg-two-spacecraft)
- Differential Game - A Game of Two Cars (dg-two-cars | dg-two-cars2)
- A singular control problem (diedam-sager)
- Inverted double pendulum on a cart (double-pendulum-inverted | double-pendulum-inverted2)
- Double Tank (double-tank-binary | double-tank)
- Double Tank Model Parameters Identification (double-tank-id-a | double-tank-id-a2)
- Drug displacement (drug-displacement)
- Optimal steering for the Dubins car (dubins)
- The driver and the evader particles (dycon-driver-evader)
- Fractional heat equation (dycon-fractional-heat-a | dycon-fractional-heat-b | dycon-fractional-heat-c)
- Controllability of the 2D heat equation (dycon-heat-equation-2D)
- The optimal control of the Kuramoto adaptive coupling model (dycon-kuramoto)
- Robot (dycon-robot)
- Rotors imbalance suppression by optimal control (dycon-rotor-balance)
- Simultaneous control (dycon-simultaneous-control)
- Aircraft Balanced Field Length Calculation (dymos-balanced-field)
- Race Car Lap Optimization (dymos-racecar)
- Water rocket (dymos-water-rocket)
- Two-dimensional low-thrust Earth-to-Mars trajectory optimization (earth-to-mars-a)
- Two-dimensional solar sail Earth-to-Mars trajectory optimization (earth-to-mars-b)
- Electric Car (electric-car)
- Electron Spin Flip in Minimum Time (electron-spin-flip)
- E5 problem (enright-hull-lindberg-c)
- Oregonator equation (enright-hull-lindberg-b)
- Robertson equation (enright-hull-lindberg-a)
- Fed-batch Reactor For Ethanol Production (ethanol)
- Linearization of the F-16 model (f16-nonlinear-linearization)
- Non-linear F-16 model (f16-nonlinear)
- Vertical takeoff and vertical landing reusable rockets (falcon9-launcher)
- Flying Capacitor Converters (fcc-converter)
- A Batch Beer Fermentation Process (fermentor-beer)
- Four tank process (four-tank | four-tank2)
- A simple fractional order control problem (fractional-a1 | fractional-a2 | fractional-b1 | fractional-b2)
- Fractional bang-bang problem (fractional-optctrl-b)
- Linear time-varying problem (fractional-optctrl-a)
- Graham and Lathrop polynomials (graham-lathrop)
- Gravity Turn Maneuver (gravity)
- Helicopter model (helicopter)
- An example from Herber’s PhD thesis (herber)
- High-altitude long-endurance solar aircraft trajectories under station-keeping constraints (high-altitude-solar-aircraft-a | high-altitude-solar-aircraft-b | high-altitude-solar-aircraft-c)
- Human Immunodeficiency Virus (hiv)
- Huygens’s pendulums (huygens)
- Innate Immune Response (immune-response)
- SEIR Model for the Control of Infectious Diseases (infectious-diseases)
- Swing-up problem for acrobot (kelly-acrobot)
- A simple model of walking (kelly-simple-walker)
- A simple Lambert problem (lambert)
- Planetary descent of a spacecraft (lander-12dof | lander-6dof | lander-basic | lander-quadrotor | lander-reaction-wheel | lander-thrusters)
- Car problem (liu-chen-hu-b)
- Catalyst Mixing Problem (liu-chen-hu-a)
- Parallel reaction in tubular reactor (liu-chen-hu-c)
- Unconstrained mathematical system (liu-chen-hu-d)
- Lotka Experimental Design (lotka-design)
- Lotka Volterra fishing problem (lotka-volterra-fishing)
- Infinite horizontal optimization (mathoverflow-a)
- Mountain Car Problem (mountain-car-a | mountain-car-b1 | mountain-car-b2)
- Multiple Satellite Trajectory Optimization (multi-sat-traj-a | multi-sat-traj-b | multi-sat-traj-c | multi-sat-traj-d)
- Optimal control of acute myeloid leukaemia (myeloid-leukaemia)
- Non-linear beam with bounded deflection (non-linear-beam)
- Novak-Tyson model (novak-tyson)
- Optimal observer of a paper machine headbox (optimal-observer-paper)
- Elastic beam fixed on a moving cart and carrying lumped tip mass (pde-beam-mass-cart-a | pde-beam-mass-cart-b | pde-beam-mass-cart-c)
- Burgers’ equation (pde-burgers)
- An optimal control problem arised in ecology (pde-ecology | pde-ecology2)
- Heat Diffusion Process with Inequality (pde-heat-b)
- Heat equation (pde-heat-a | pde-heat-a2)
- A Portfolio Optimization Problem (pde-stochastic-portfolio)
- Pendulum robust control (pendulum-robust-a | pendulum-robust-b)
- Fed-batch Fermenter For Penicillin Production (penicillin)
- Microalgae photoacclimation as an optimal control problem of resource allocation (photoacclimation-a | photoacclimation-b)
- Production of Secreted Protein in a Fed-batch Reactor (protein-a | protein-b | protein-c)
- Trajectory Optimisation for a Quadrotor Helicopter (quadrotor-helicopter-a | quadrotor-helicopter-b)
- Reachable set (reachable-set-a | reachable-set-b | reachable-set-c)
- A Continuous Tank Reactor (reactor-simul)
- Optimal control of the heel angle of a rocket (rocket-heel)
- Rubella Disease (rubella)
- Modelling and Optimal Control of a Sailboat (sailboat-a | sailboat-b)
- Time optimal low-thrust planar transfer to a geosynchronous orbit (satellite)
- Designing optimal spacecraft formations (satellite-swarms-a | satellite-swarms-b)
- A Stochastic Renewable Resource Valuation Problem (sde-forestry-lsmc | sde-forestry)
- Standard linear-quadratic stochastic regulator (sde-lqsr)
- A simplified Merton’s portfolio model (sde-merton)
- Nonlinear-quadratic stochastic regulator (sde-nlqsr-a | sde-nlqsr-b | sde-nlqsr-b2 | sde-nlqsr-c | sde-nlqsr-d | sde-nlqsr-e)
- Silverbox Parameters Estimation (silverbox-lse | silverbox-mle-a)
- Integration with a singularity (singularity)
- A nonlinear optimal control problem (skandari-a | skandari-b | skandari-c)
- Closed loop control for a sliding mass system (sliding-mass)
- Soft Lunar Landing (soft-lunar-landing)
- System of ODEs with integral constraints (stackexchange-a)
- An optimal control problem (stackexchange-b | stackexchange-c1 | stackexchange-c2)
- Optimal fishing plan (stackexchange-d)
- A minimum travel time problem (stackexchange-e1 | stackexchange-e2)
- Minimum travel time between two sets (stackexchange-f1 | stackexchange-f2)
- An optimal control problem (stackexchange-g)
- Optimizing the ratio between two differential equations (stackexchange-h)
- Nonlinear system with time-optimal control (stackexchange-i)
- UAV stochastic path planning problem (sto-uav-a | sto-uav-b | sto-uav-c)
- UGV stochastic path planning problem (sto-ugv1 | sto-ugv2)
- Timing a stoplight just right (stoplight | stoplight2)
- Regulation of a synchronous machine (synchro-machine-a | synchro-machine-b | synchro-machine-c)
- Two coupled synchronous machines (synchro-machine-d)
- Time Optimal Car (time-optimal-car-a | time-optimal-car-b)
- A PID Transfer function (transfer-fun-h)
- Optimal PID (transfer-fun-i)
- Transfer function (transfer-fun-a | transfer-fun-b | transfer-fun-b2 | transfer-fun-c | transfer-fun-d | transfer-fun-e | transfer-fun-f | transfer-fun-g)
- Governance of a two-link manipulator (two-link-manipulator)
- Electric power generation with underwater kite systems (underwater-kite)
- Van der Pol (vanderpol)
- Optimal Control of Wave Energy Converters (wec-a1 | wec-a2 | wec-b1)
- Open loop control scheme for a wind turbine generator (wtgen)
- Greenhouse Climate Control (yop-greenhouse)
Simulation
- Simulation of a Jojo (sim-acado-jojo)
- The Aizawa attractor (sim-aizawa)
- The bouncing ball problem (sim-bball)
- The non-linear Coupled Pendulum (sim-coupled-pendulum)
- Implementation of a digital regulator (sim-digital-regulator-a | sim-digital-regulator-a2 | sim-digital-regulator-a3 | sim-digital-regulator-b | sim-digital-regulator-b2 | sim-digital-regulator-c | sim-digital-regulator-d)
- Evolution of an epidemic of bubonic plague (sim-epidemic)
- Optimization of fedbatch bioreactors by adaptive extremum seeking control (sim-fedbatch-bioreactor-a | sim-fedbatch-bioreactor-b)
- Fitzhugh-Nagumo problem (sim-fitzhugh-nagumo)
- Four tank process (sim-four-tank)
- Low-Thrust Orbit Transfer Example (sim-gpops-low-thrust-orbit)
- Huygens’s pendulums (sim-huygens)
- Infinite Horizon Optimal Control Problem (sim-infinite-horizon)
- The Lorenz model (sim-lorenz)
- Lotka-Volterra problem (sim-lotka-volterra)
- MPC control of a citation aircraft (sim-mpc-aircraft-a | sim-mpc-aircraft-b)
- MPC control of a paper machine headbox (sim-mpc-paper-a | sim-mpc-paper-b | sim-mpc-paper-c | sim-mpc-paper-d)
- NMPC control scheme for a wind turbine generator (sim-mpc-wtgen)
- Novak-Tyson model (sim-novak-tyson)
- Pleiades problem (sim-pleiades)
- Optimal Continuous Control of Primary Coolant Temperature in a Nuclear Plant (sim-pwr-d)
- Optimal Discrete Control of Primary Coolant Temperature in a Nuclear Plant (sim-pwr-e)
- Regulation of the Steam Generator of a Nuclear Power Plant (sim-pwr-a | sim-pwr-b | sim-pwr-c)
- The Rabinovich-Fabrikant equations (sim-rabinovich-fabrikant)
- Rigid Body problem (sim-rigid-body)
- The Rossler equations (sim-rossler)
- A Mean-Reverting Square-Root Process (sim-sde-mrsrp)
- Consensus-based global optimization (sim-sde-gloptim-a | sim-sde-gloptim-b | sim-sde-gloptim-c)
- Simple stochastic differential equation (sim-sde-wiener)
- The London Brent crude oil spot price (sim-sde-london-brent)
- The NBP natural gas spot price (sim-sde-nbp-a | sim-sde-nbp-b)
- Vasicek Short Rate Model (sim-sde-short-rate)
- A problem from StackExchange (sim-stackexchange-a)
- Stiff (sim-stiff-a)
- The Prothero-Robinson stiff ODE model (sim-stiff-b)
- A Portfolio Simulation Problem (sim-stochastic-portfolio)
- Simulation of the Stochastic Optimal Control of a Sailboat (sim-stochastic-sailing-a | sim-stochastic-sailing-b)
- Three Body problem (sim-three-body)
- Transfer function (sim-transfer-fun-a | sim-transfer-fun-b)
- Vaccine (sim-vaccine)
DYNA example problems for discrete time
Optimal control
- A system with autonomous switches (autonomous-switch-a)
- Optimal Growth Model (compecon-demdp07-b | compecon-demdp07-c)
- Optimization of a digital regulator (digital-regulator-a | digital-regulator-b)
- The consumption-saving problem (dolo-consumption-saving-a | dolo-consumption-saving-b)
- Double Tank Model Parameters Identification (double-tank-id-b)
- A Hydropower Planning Model (hydro-planning-b-sim-a | hydro-planning-b-sim-b)
- A two reach river pollution control (river)
- Standard linear-quadratic stochastic regulator (sde-lqsr2)
- Silverbox Parameters Estimation (silverbox-mle-b | silverbox-mle-c)
Simulation
- Optimal Growth Model - Simulation (sim-compecon-demdp07-a)
- Discrete simulation of a continuous transfer function (sim-continuous)
- Digital regulator for a system (sim-ddigital-regulator-a | sim-ddigital-regulator-a2 | sim-ddigital-regulator-b | sim-ddigital-regulator-b2)
- Simple discrete stochastic equation (sim-dse-wiener)
- A two reach river pollution control (sim-river)
- Tinkerbell map (sim-tinkerbell)
DYNA other example problems
Optimal control
- Deterministic Brock-Mirman Growth Model Using a Chebyshev Polynomial Approximation (brockmirman-a)
- Stochastic Brock-Mirman Growth Model Using a Chebyshev Polynomial Approximation (brockmirman-b)
- N-Sector Stochastic Brock-Mirman Growth Model Using a Chebyshev Polynomial Approximation (brockmirman-c | brockmirman-d)
- N-Sector Stochastic Brock-Mirman Growth Model Using a Smolyak Approximation (brockmirman-e | brockmirman-e2)
- Timber Harvesting (compecon-demdp01-a | compecon-demdp01-b | compecon-demdp01-c)
- Optimal Growth Model (compecon-demdp07-a)
- Renewable Resource Model (compecon-demdp08)
- The consumption-saving problem (dolo-consumption-saving-c | dolo-consumption-saving-d)
- A Hydropower Planning Model (hydro-planning-a | hydro-planning-b | hydro-planning-b2)
- Stochastic Optimal Control of a Sailboat (stochastic-sailing)
Simulation
DYNA tutorial library
- Closed Loop Control for a Sliding Mass System (tutor-a)
- Car Problem (tutor-b)
- Goddard Rocket (tutor-c)
- Infinite Horizon Optimal Control Problem (tutor-d)
- Minimum Time-to-Climb of a Supersonic Aircraft (tutor-e)
- Methanol to Hydrocarbons Conversion (tutor-f)
- Optimal Control of a Jojo (tutor-g)
- Binary Variant of the Van der Pol Oscillator (tutor-h)
- Heat Equation (tutor-i)
- A Two Reach River Pollution Control (tutor-j)
- Three Body problem (tutor-k-dae-multi-phase | tutor-k-dae | tutor-k-ode)
DYNA tutorial models translated to GAMS
- Closed Loop Control for a Sliding Mass System ( tutor-a.gms | tutor-a.lst)
- Car Problem ( tutor-b.gms | tutor-b.lst)
- Goddard Rocket ( tutor-c.gms | tutor-c.lst)
- Infinite Horizon Optimal Control Problem ( tutor-d.gms | tutor-d.lst)
- Minimum Time-to-Climb of a Supersonic Aircraft (tutor-e.gms)
- Methanol to Hydrocarbons Conversion ( tutor-f.gms | tutor-f.lst)
- Optimal Control of a Jojo ( tutor-g.gms | tutor-g.lst)
- Binary Variant of the Van der Pol Oscillator ( tutor-h.gms | tutor-h.lst)
- Heat Equation ( tutor-i.gms | tutor-i.lst)
- A Two Reach River Pollution Control ( tutor-j.gms | tutor-j.lst)
- Three Body problem (tutor-k-dae-multi-phase.gms | tutor-k-dae.gms | tutor-k-ode.gms)
Cross-reference of DYNA features with example models
DYNA features are cross-referenced with the aforementioned example models to illustrate how to use them.
Bibliography sources
Most of the models described here above are drawn from the literature on optimal control and parameter estimation. A master list of bibliography sources is available for your convenience.
References
- B. Houska, H.J. Ferreau and M. Diehl, ACADO Toolkit - An open-source framework for automatic control and dynamic optimization, Optimal Control Applications and Methods, 32(3):298-312, 2011.
- J.D. Hedengren, R. Asgharzadeh Shishavan, K.M. Powell and T.F. Edgar, Nonlinear Modeling, Estimation and Predictive Control in APMonitor, Computers and Chemical Engineering, 70:133-148, 2014.
- F. Bonnans, P. Martinon, V. Grélard, Bocop - A collection of examples, [Research Report] RR-8053, INRIA, 2012. (hal-00726992)
- E.D. Dolan, J.J. Moré and T.S. Munson, Benchmarking Optimization Software with COPS 3.0, Argonne National Laboratory, Technical Report ANL/MCS-TM-273, February 2004.
- M. Ross, User’s Manual For DIDO (Ver. PR.1β): A MATLAB™ Application Package for Solving Optimal Control Problems, Naval Postgraduate School, Monterey, CA, Tech. Rep. 0401.0, February 2004.
- M. Čižniar, M. Fikar, M.A. Latifi, MATLAB™ Dynamic Optimisation Code DYNOPT User’s Guide, Technical Report, KIRP FCHPT STU Bratislava, Slovak Republic, 2006.
- M.A. Patterson, A.V. Rao, GPOPS-II: A MATLAB™ Software for Solving Multiple-Phase Optimal Control Problems Using hp-Adaptive Gaussian Quadrature Collocation Methods and Sparse Nonlinear Programming, ACM Transactions on Mathematical Software (TOMS), Volume 41 Issue 1, October 2014.
- P. Falugi, E. Kerrigan, E. van Wyk, Imperial College London Optimal Control Software User Guide (ICLOCS), Department of Electrical and Electronic Engineering, Imperial College London, London England, UK, 6 May 2010.
- H.G. Bock, K.J. Plitt, A Multiple Shooting Algorithm for Direct Solution of Optimal Control Problems, IFAC Proceedings, 17(2):1603-1608, 1984.
- J. Koenemann, G. Licitra, M. Alp, M. Diehl, OpenOCL - Open Optimal Control Library, Robotics Science and Systems, workshop submission, extended abstract, June 2019.
- P.E. Rutquist, M.M. Edvall, PROPT - MATLAB™ Optimal Control Software - One Of A Kind, Lightning Fast Solutions To Your Optimal Control Problems!, TOMLAB Optimization, April 26, 2010.
- V.M. Becerra, Solving complex optimal control problems at no cost with PSOPT, Proc. IEEE Multi-conference on Systems and Control, Yokohama, Japan, pp. 1391-1396, September 7-10, 2010.
- C. Kirches, S. Leyffer, TACO -- A Toolkit for AMPL Control Optimization, Mathematical Programming Computation, 5:227-265, 2013.
- S. Sager, A benchmark library of mixed-integer optimal control problems, Springer, Mixed Integer Nonlinear Programming, 2012.