Skip to content

This repository contains all model development using GENESYS-2 within the open_MODEX project.

Notifications You must be signed in to change notification settings

open-modex/model_GENESYS-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation


GENESYS v2.0 - European Power System Model & Transformation Optimisation

========================

GENESYS v2 is an optimisation tool for the optimisation of the transformation and operation of the European Power System. It is implemented using the CMA-ES Optimiser [(1) Nikolaus Hansen et.al.], with the implementation of libcmaes by [(2)Emmanuel Benazera]

GENESYS v2 is based on the ideas and experience from a prior research project (GENESYS v1) which aimed at the study of possible realisation of a fully renewable power system for EUMENA.

GENESYS v2 is implemented by RWTH Aachen University within a collaboration of the Institute for Power Generation and Storage Systems (PGS/ISEA) and the Institute of Power Systems and Power Economics (IAEW).

Learn more: http://www.genesys.rwth-aachen.de

Dependencies

References

  • (1) Hansen, N. and A. Ostermeier (2001). Completely Derandomized Self-Adaptation in Evolution Strategies. Evolutionary Computation, 9(2), pp. 159-195.

  • (2) libcmaes, designed and implemented by Emmanuel Benazera with help of Nikolaus Hansen, on behalf of Inria Saclay / Research group TAO and Laboratoir de l'Accélérateur linéaire, research group Appstats, https://github.com/beniz/libcmaes

Funding

The project GENESYS is funded by the German Ministry for Economic Affairs and Energy under the project number FKZ 0325366

Installation Guide

Genesys v2.0 is running solely on Linux based machines (see dependencies above). To be able to run the programm stick to the instructions below:

Necessary library configuration for Genesys v2.0
version: 2019-11-25

All instructions refer to the usage of Eclipse Oxigen as development environment

STEP 0: Only for Windows users: Install a virtual box with Centos7



STEP 1: Install libraries/dependencies/development software in Centos7

  • (1.1) Download/install eclipse oxigen for C/C++ development: https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2019-09/R/eclipse-cpp-2019-09-R-linux-gtk-x86_64.tar.gz

  • (1.2) Install epel repository : sudo yum install -y epel-release

  • (1.3) Install eigen3 lib : sudo yum install -y eigen3-devel

  • (1.4) Clone libcmaes : git clone https://github.com/beniz/libcmaes.git
    Follow setup instructions in README.MD:
    ./autogen.sh
    echo "#define CMAES_EXPORT" > cmaes_export.h
    ./configure
    make (the compilation takes some time!) -> agree to install in standard directory
    sudo make install
    add libraries to shared library path: ldconfig /usr/local/lib

    helpful linux commands within the installation:
    chmod -R 777 file (grant recursive access to file for all users and groups)

STEP 2: Download Genesys-Code and import it into Eclipse

  • (2.1) Clone repository from GitHub: git clone https://github.com/open-modex/model_GENESYS-2.git
  • (2.2) Checkout the submodule genesys2 as new general project in Eclipse via the Git-Symbol in the upper right corner
  • (2.3) Convert the project to a c++ project (Executable, Linux GCC) by right clicking on the project in the project explorer

Step 3: Set Eclipse-Project-Configurations
GO TO: File → Properties → C/C++ Build

  • (3.1) set Configuration to '[All configurations]'


GO TO: File → Properties → C/C++ Build → Settings → GCC C++ Compiler

  • (3.2) Dialect: ISO C++11 (-std=c++0x)


  • (3.3) Preprocessor(-D): __cplusplus=201103L


  • (3.4) include paths (-l):
    /usr/include/eigen3
    /usr/local/include/libcmaes
    "${workspace_loc:/genesys_2/}" (or "${workspace_loc:/${ProjName}}")


  • (2.5) Miscellaneous - other flags: add '-fopenmp'


GO TO: C/C++ Build → Settings → GCC C++ LINKER libraries (-l): cmaes library search path (-L): /usr/local/lib



  • (3) Miscellaneous - linker flags: add '-fopenmp'


Step 4: Change Eclipse-Project-Configurations

  • (4.1) Open window Run → Run Configurations and create 2 new C/C++ Applications in the panel on the left side for 'analysis' and 'optimisation'
  • (4.2) Fill in Spaces for name, project and C/C++ Application for the 'Main'-tab of the analysis application


  • (4.3) Enter '--mode=analysis -j=1' in the Arguments-tab of the analysis application
  • (4.4) Important: set the working directory to the Debug-folder location in your project as marked in red below!


  • (4.4) Repeat all upper steps for the optimisation application as shown below in the screenshots




Debugging

Possible Problems while running the Program

  • Input files need to be in LF-Line-ending format, otherwise "\r" will be read in as string in Linux. Either the files are generated in Linux in the first place or need to be converted when from Windoes with "Atom" for example in the task menu at the bottom of the program

About

This repository contains all model development using GENESYS-2 within the open_MODEX project.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages