Code Monkey home page Code Monkey logo

ecc24_bomeetscontrol_workshop's Introduction

Introduction

This is the tutorial repository used for the workshop "When Bayesian optimization meets real-time control" held at European Control Conference 2024, Stockholm, Sweden.

Throughout this tutorial, we will use the programming language python. If you are not familiar with python, you may refer to this python tutorial. We will also use jupyter notebook. If you are not familiar with this, please be referred to this jupyter notebook tutorial.

Requirements

  • gym==0.24.1
  • pygame==2.5.2
  • numpy==1.24.4
  • matplotlib==3.7.1
  • IPython>=7.23.1
  • moviepy==1.0.3
  • decorator>=4.0.2,<5.0
  • GPy==1.10.0
  • ax-platform==0.3.3
  • jupyter
  • ipykernel>=6.29.4

Installation of requirements

To install the required dependencies, you can use the requirements.txt file. Make sure you have pip installed. We also recommend using python 3.8 or 3.9. The installation process were tested using python 3.9.0 and 3.8.5.

  1. Clone the repository:

    git clone https://github.com/your-username/your-repository.git
    cd your-repository
  2. Create a virtual environment (optional but recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  3. Install the dependencies:

    pip install -r requirements.txt

Structure

This tutorial includes the following parts,

Implement BO algorithm using the Gaussian process package GPy:

  • 'demo1.ipynb': Demonstrate the implementation of a Bayesian optimization algorithm.
  • 'exercise1.ipynb': Exercise for you to implement a Bayesian optimization algorithm by yourself.

Use Ax to solve problems.

  • 'demo2.ipynb': Demonstrate the application of Ax to solving a PID controller tuning problem for acrobot.
  • 'exercise2.ipynb': Exercise for you to apply the Bayesian optimization algorithm to a linear controller tuning problem by yourself.

ecc24_bomeetscontrol_workshop's People

Contributors

jackiexuw 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.