Skip to content

Energy & Finance Optimization

The Laboratory of Applied Mathematical Programming and Statistics (LAMPS) uses Julia for applied optimization research in energy and finance

The Laboratory of Applied Mathematical Programming and Statistics (LAMPS) at the Pontifical Catholic University of Rio de Janeiro (PUC-Rio) is a research laboratory that leverages optimization and statistics to create new knowledge, test hypotheses and develop new tools and techniques for optimization in energy and finance. LAMPS includes professors, researchers and students associated with the Electrical and Industrial Engineering Departments of PUC-Rio.

LAMPS researchers previously used mathematical language interfaces to code optimization problems for research, development and teaching together with Matlab and Fortran.

According to Alexandre Street, LAMPS co-founder and director of the energy group:

“In 2014, I was struggling with difficult integration processes between languages through files, having to deal with many issues associated with licenses, and suffering with the lack of computational power of both Matlab and mathematical languages interfaces. Then, I started an internal project where each student was asked to choose a different language or platform and we would make a competition with all of them to see which one could better handle the many tasks we need to accomplish in the everyday work at LAMPS. They came out with R, Python, C#, and Julia. During the first round of presentations I finished the competition because Julia was the winner by far. Julia was just as easy and as intuitive for math as Matlab, as fast as Fortran, as optimization-friendly as Mosel, and all integrated with nice plots and graphical outputs. So from that day on, we started moving to Julia, first for teaching and using in optimization classes, then the PhD students started using Julia to develop their code, and finally, we achieved a mature level two years ago where all the R&D projects with industry are now 100% made in Julia.

“We have now conducted many projects using Julia including hydrothermal dispatch coordination with risk averse measures, optimal power flow, renewable generation simulation, and robust portfolio management. Most of the students working in the lab use Julia in their thesis. Additionally, optimization, energy economics and finance classes at the graduate and undergraduate levels use Julia. One of our primary research themes is the implementation of stochastic and robust models for power systems planning and operation. For that, we have been using Julia to devise regulatory guidelines that are useful for many power system operators, planners and agents. Applications in energy market equilibrium are also another important area in which we have been using Julia.

“Now the next step is to move towards the confection of highly professional and stable end-user Julia application with easy deployment in companies. In the very short-term, we want to start making the developments available through our GitHub account.”

The LAMPS team includes Joaquim Garcia, Alexandre Street (Electrical Engineering), Davi Valladão, Bruno Fanzeres and Thuener Silva (Industrial Engineering). LAMPS has made extensive contributions to Julia including:

  • Contributions to open source Julia

  • Contributions to open source Julia packages

  • Scientific papers and citations featuring Julia

  • Teaching more than 100 students in Julia each year

  • Introducing Julia to industrial and commercial users via projects and professional courses, including more than 50 industry professionals who have studied energy - commercialization with Alexandre Street