Skip to content

Example notebooks

Introductory examples

If you haven't already, check out the tutorials, which explain how to build and simulate models in Collimator.

Primitive blocks and composability

Shows how to build systems with primitive blocks and how to compose them into larger diagrams.

Bouncing ball

Shows hybrid dynamics modeling of a bouncing ball.

Linear Quadratic Regulator (LQR)

Demonstrates the LQR for a pendulum and a planar quadrotor model.

Energy shaping and LQR stabilization

Demonstrates energy shaping control to swing a pendulum to the vertically 'up' orientation and then stabilize it in the 'up' orientation via LQR.

Linear Model Predictive Control (MPC)

Demonstrates MPC on a linearized model of the Cessna Citation aircraft and a pendulum model.

Multi-layer perceptron (MLP)

Demonstrates training of a multi-layer perceptron (MLP), a class of feedforward artificial neural networks, for a regression task.

Interacting with the Dashboard

Demonstrates how to interact with Collimator's Dashboard to upload your local models, import Dashboard models and run simulations on the cloud.

Advanced examples

Trajectory optimization and stabilization

Shows trajectory optimization for the problem of swinging an Acrobot to the vertically 'up' orientation and then stabilizing the trajectory via finite-horizon LQR.

Robotic arm control

Implement a controller for a "pick-and-place" task with a robotic arm using MuJoCo as a multibody physics engine. Download the necessary files from here.

Automatic tuning of a PID controller

Demonstrates automatic differentiation and optimization capabilities of Collimator to automatically tune the gains of a discrete-time PID controller.

Interactive and automatic tuning of a PID controller with sensitivity constraints

Showcases fast compiled simulations in Collimator for interactive applications and automatic tuning of a continuous-time PID controller with maximum sensitivity and complementary sensitivity constraints.

Finding limit cycles

Demonstrates how to find limit cycles and assess their stability by leveraging the automatic differentiation capabilities of Collimator.

Kalman Filters: linear and nonlinear extensions

Demonstrates the use of Kalman filters (finite and infinite-horizon) and nonlinear extensions (Extended Kalman Filter and Unscented Kalman Filter) for state estimation in a pendulum model. Where necessary, the nonlinear Pendulum plant is automatically linearized and discretized by Collimator for the construction of the filters.

Universal Differential Equations (UDEs) and symbolic regression (SR)

Demonstrates training a Universal Differential Equation (UDE) to fit the observations produced by the Lotka-Volterra predator-prey system. Subsequently, the UDE is symbolically regressed to learn a closed-form model.

Nonlinear MPC

See thematic series on modeling and control of 3D quadcopter below, which showcases trajectory tracking by nonlinear MPC.

Submodels

Demonstrates how to download a submodel defined in the Dashboard, incorporate it in a local model to run an optimization workflow and upload the result to the Dashboard.

Thematic examples

Battery modeling

  1. Equivalent circuit model (ECM) for a battery
  2. ECM parameter estimation: synthetic data
  3. ECM parameter estimation: experimental data
  4. Data-driven modeling: Dynamic Mode Decomposition (DMD)
  5. Data-driven modeling: Extended DMD
  6. Data-driven modeling: SINDy with control
  7. Data-driven modeling: Neural Networks

3D quadcopter modeling and control

  1. 3D quadcopter modelling
  2. Trajectory generation through differentially flat outputs
  3. Control with nonlinear MPC

Quanser Qube Servo hardware control

  1. Qube Servo modeling
  2. Linear control
  3. Nonlinear swing-up control
  4. Trajectory optimization
  5. Neural network control