Welcome

TulipaEnergyModel.jl is an optimization model for the electricity market that can be coupled with other energy sectors (e.g., hydrogen, heat, natural gas, etc.). The optimization model determines the optimal investment and operation decisions for different types of assets (e.g., producers, consumers, conversion, storage, and transport). TulipaEnergyModel.jl is developed in Julia and depends on the JuMP.jl package.

Using Tulipa

Tulipa is free and easy to install. Check out Getting Started to start using Tulipa today!

Tulipa in a Nutshell

Example Questions

Tulipa can answer questions such as:

  • How much flexible energy supply and demand is available? How much is needed in the future?
  • How will different investment decisions impact the balance and generation mix of the energy system?
  • Where will there be grid congestion in the future? How would placing [technology] at [location] impact congestion?
  • How will policy targets influence investment and dispatch?
  • How will a future energy system handle different weather patterns and extreme events (such as dunkelflaute)?

Not sure if Tulipa is right for your research? Feel free to ask in our Discussions!

Scope & Features

For modellers, here is a brief summary of Tulipa's scope and features. More details can be found in the Concepts or Formulation.

  • Optimisation Objective: Minimize total system cost for investment & dispatch (investment in production, conversion, storage, transport/grid)
  • Geographic scope: Flexible (Anywhere - Region/Country/Continent)
  • Energy carriers: Any (All - electricity, gas, H2, heat, etc)
  • Timespan: Any (Usually Yearly or Multi-year)
  • Time resolution: Fully-flexible - even mixing different resolutions (1-hr, 2-hr, 3-hr, etc) within a scenario
  • Temporal aggregation: Time series aggregation with blended representative periods using TulipaClustering
  • Storage representation: Short- and Long-term storage constraints, even while using representative periods

Bug reports and discussions

If you think you have found a bug, feel free to open an Issue. If you have a general question or idea, start a Discussion.

Contributing

If you want to contribute (awesome!), please read our Contributing Guidelines and follow the setup in our Developer Documentation.

License

This content is released under the Apache License 2.0 License.

Contributors

Abel Soares Siqueira
Abel Soares Siqueira

💻 👀
Diego Alejandro Tejada Arango
Diego Alejandro Tejada Arango

💻 👀 🤔 🔬
Germán Morales
Germán Morales

🔬 🤔 🔍 📆
Greg Neustroev
Greg Neustroev

🤔 🔬 💻
IsaiMaganTNO
IsaiMaganTNO

👀
Juha Kiviluoma
Juha Kiviluoma

🤔 🔬
Lauren Clisby
Lauren Clisby

💻 👀 🤔 📆
Laurent Soucasse
Laurent Soucasse

🤔
Mathijs de Weerdt
Mathijs de Weerdt

🔍 📆
Ni Wang
Ni Wang

💻 👀 🤔 🔬
Sander van Rijn
Sander van Rijn

🤔
Suvayu Ali
Suvayu Ali

💻 👀 🤔
Zhi
Zhi

🤔 🔬
maaikeelgersma
maaikeelgersma

🤔 🔬
nope82
nope82

👀