Code Monkey home page Code Monkey logo

antaresinvest's Introduction

AntaresInvest antareslogo

AntaresInvest is an extension of Antares Simulator optimization solution provided by Rte to model the european power system. Antares is a unit commitment tool and makes the dispatch over the EU power system whereas AntaresInvest works as the multi-year investment simulation model. AntaresInvest computes revenues of the energy-only market based on Antares Simulation. Then, other market architectures are implemented such as capacity remuneration mechanism or service system for example. Investors make decisions to retire or invest based on economic assumptions and revenues computation. Powerfleet is updated based on these decisions and time moves on. Iterations over the same year are made. Powerfleet is adapted following rules implemented.

Table of contents

  1. Architecture of the model
  2. Quick start!
  3. Project's architecture
  4. Parameters description
  5. Scripts description
  6. Data format description
  7. Make outputs of the model
  8. Interact with AntaresWeb through API
  9. Modelling elements
  10. Authors and contributions

Architecture of the model

Dynamic functioning of the model Data organization & pipeline
Résumé

Investment decisions

  • Investment decisions is made if following conditions are filled for a capacity c on year t:
$$NPV = \sum_{t = 1}^{timeHorizon} \gamma (energy_{t,c} + crm_{t,c} + ss_{t,c} - OC_{c}) - IC_{c} > 0$$
  • Retirement is assumed if :
$$totalNetRevenues_{t,c} < \alpha$$ $$expectedNetProfit = \sum_{t = 1}^{midTermHorizon} \gamma (energy_{t,c} + crm_{t,c} + ss_{t,c} - OC_{c}) < 0$$
  • Limit of investment & retirement for each country and year :
$$\sum_{c \in I_{y}} K_{c} < limitInvestment_{area}$$ $$\sum_{c \in I_{y}} K_{c} < limitRetirement_{area}$$
  • For adaptative power increment option, the new power increment is computed as :
$$powerIncrement_{area,t} = powerIncrement_{area} | \frac{LOLD_{t,area} - RS_{area}}{RS_{area}} |$$
  • For the 25% remaining iteration,
$$powerIncrement_{area,t} = min(powerIncrement_{area,t}, minIncrement)$$

where :

  • energy : energy revenues
  • crm : capacity remuneration mechanism revenues
  • ss : service system revenues
  • OC : maintenance & operational costs
  • γ : discount rate
  • α : threshold to consider revenues as negative
  • IC : investement costs
  • LOLD : Loss of load duration
  • RS : Reliability standard

Quick start

Here find examples and insights to get started with AntaresInvest.

Project's architecture

Here is the project's architecture :

Parameters description

The package has different parameters config yaml file. YAML is a structured text file easy to load in R and keeps the data structure. Here are the different config files :

Find here a full description.

Scripts description

Find here a full description.

Data format description

In the model, the data format mainly used to keep data organised and tracked are the R lists (eg. dictionnaries for Python addict). There are 5 main variables to do so.

Find here a full description.

Make outputs of the model

Here find examples of how to complete make_outputs() functions. To build such graphics and output excel files :

Interact with AntaresWeb through API

Here find examples to get to know how to handle API of AntaresWeb with R.

Modelling elements

Here find modelling choices.

Contributions & contributors

AntaresInvest is licensed under the open source MIT License.

Copyright 2022 - Now Rte - AntaresInvest developpers.

To contribute, follow the guidelines.

antaresinvest's People

Contributors

lucarammel avatar

Stargazers

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