Skip to content

Code from internship activities at Systems Optimization Group at UFSC

Notifications You must be signed in to change notification settings

igoryamamoto/systems-optimization-research

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Systems Optimization Research

Repo with code of the algorithms developed of predictive control systems, GPC (Generalized Predictive Control) and IHMPC (Infinite Horizon Model Predictive Control). Internship report and base article used for the implementations.

Repo structure:

  • ./requirements.txt : python dependencies to execute the algorithms
  • ./doc : articles and reports
  • ./img : pictures and screenshots from the experiments
  • ./src : source code for the algorithms implementation
    • /gpc : GPC algorithm files
    • /ihmpc : IHMPC algorithm files
    • /ethylene_oxide_gpc.py : script with simulation with the application of GPC algorithm to control an ethylene oxide plant
    • /ethylene_oxide_ihmpc.py : script with simulation with the application of IHMPC algorithm to control an ethylene oxide plant

Prerequisites

For the execution of the IHMPC algorithm, it's used the solver OSQP. The following dependencies must be installed on your machine:

  • GCC

  • CMake

    curl https://cmake.org/files/v3.10/cmake-3.10.3-Linux-x86_64.sh -o /tmp/curl-install.sh \
          && chmod u+x /tmp/curl-install.sh \
          && mkdir /usr/bin/cmake \
          && /tmp/curl-install.sh --skip-license --prefix=/usr/bin/cmake \
          && rm /tmp/curl-install.sh
    

Instructions to run:

  • git clone git@github.com:igoryamamoto/internship-code.git
  • cd internship-code
  • pip3 install -r requirements.txt
  • pip3 install osqp
  • cd src
  • python3 ethylene_oxide_gpc.py
  • python3 ethylene_oxide_ihmpc.py

About

Code from internship activities at Systems Optimization Group at UFSC

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages