Code Monkey home page Code Monkey logo

fast-sls's Introduction

Fast System Level Synthesis: Robust Model Predictive Control using Riccati Recursions

This repository contains the MATLAB code that accompanies the research paper:

Leeman, Antoine P and Kohler, Johannes and Messerer, Florian and Lahr, Amon and Diehl, Moritz and Zeilinger, Melanie N “Fast System Level Synthesis: Robust Model Predictive Control using Riccati Recursions” arXiv preprint arXiv:2401.13762, 2024.

Project Image

The paper is freely available on arXiv

Prerequisites

  • MATLAB (tested with version R2023b running on Macbook Pro with M1 processor with 8 cores and 16GB of RAM running macOS Sonoma)
  • Casadi (tested with casadi-3.6.4-osx_arm64-matlab2018b )

Only for performance comparison:

  • Yalmip (tested with Version 22-June-2023)
  • Mosek (tested with Version 10.3)
  • Gurobi (tested with Version 10.0.3)

Installation

  1. Download and install MATLAB from the official website.

  2. Install Casadi by following the instructions from the official Casadi documentation.

  3. (optionnal) If you want to run the comparisons

  • Install Yalmip

  • Download MOSEK, (request a license), and add it to your matlab path

        addpath('C:/Users/Documents/mosek/10.3/toolbox/r2022b/mosekopt.mexmaca64'); % Adjust this path to your MOSEK installation
        savepath; % Save the updated path for future MATLAB sessions
    
  • Downlaod Gurobi, (request a license), and add it to your matlab path

        addpath('C:/Users/gurobi/macos_universal2/'); % Adjust this path to your Gurobi installation
        savepath; % Save the updated path for future MATLAB sessions
    
  1. Clone this repository or download the code as a ZIP archive and extract it to a folder of your choice.

  2. Add the code folder to your MATLAB path by running the following command in the MATLAB Command Window:

     addpath('/path/to/your/code/folder');
    

Usage

Run the main script (i.e., main.m) to execute the algorithms and models discussed in the paper.

License

This project is licensed under the MIT License.

Citation

If you use this code in your research, please cite our paper:

@article{leeman2024fast,
title={Fast System Level Synthesis: Robust Model Predictive Control using Riccati Recursions},
author={Leeman, Antoine P and K{\"o}hler, Johannes and Messerer, Florian and Lahr, Amon and Diehl, Moritz and Zeilinger, Melanie N},
journal={arXiv preprint arXiv:2401.13762},
year={2024}
}

Support and Contact

For any questions or issues related to this code, please contact the author:

  • Antoine Leeman: aleeman(at)ethz(dot)ch

We appreciate any feedback, bug reports, or suggestions for improvements.

fast-sls's People

Contributors

antoineleeman avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.