Code Monkey home page Code Monkey logo

learningstabledynamicmodels's Introduction

Learning System Dynamics of Holohover

This repository is the implementation to prepare the data for processing and to learn the system dynamics of the Holohover vehicle. It is a semester project at STI IGM LA3, EPFL. The report is found under SemesterProjectReport_NicolajSchmid.pdf.

  • Student: Nicolaj Schmid
  • Supervisor: Roland Schwan
  • Professor: Colin Jones

System requirements

The code is run with Python 3.10.9 and all library requirements are found in the file requirements.

Data

The data is contained in the experiment folder. Only the csv files are included due to the large size of the ROS files (deb3 and mcap files):

  • holohover_20221130: First holohover measurements with random noise added to the LQR controller and without idle thrust
  • holohover_20221208: First holohover measurements with random noise added to the LQR controller and with idle thrust
  • signal_20221121: First force sensor measurement without idle thrust
  • signal_20221206: First force sensor measurement with idle thrust
  • validation_20221208: Could be used for validation

Settings

args contains the arguments for the different models and params the parameters of the white box model.

Data preparation

The data preparation is done by executing run_preprocess.py. All source code is contained in src_preprocess and the plots are saved in the folder plots.

Models

To train and evaluate the system dynamics execute run.py. Choose the model type by setting the variable model_type to one of the following possibilities:

  • DHO: Learn stabalizable system dynamics of damped harmonic oscillator
  • CSTR: Learn stabalizable system dynamics of continuous stirred tank reactor
  • HolohoverBlack: Learn stabalizable system dynamics of Holohover
  • HolohoverBlackSimple: Learn control input to acceleration mapping without ensuring the dynamics to be stable
  • HolohoverGrey: Learn grey box model of Holohover

All source code is contained in the folder src and the models and plots are saved in models.

learningstabledynamicmodels's People

Contributors

nas-git-nas avatar

Watchers

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