JuliaCon 2023

An optimization package for constrained nonlinear least-squares
2023-07-28 , 32-D463 (Star)

ENLSIP algorithm is designed to solve nonlinear least squares problems under nonlinear constraints. Implemented in Fortran77, it has been successfully used for decades by Hydro-Québec, the main electricity supplier for the province of Quebec in Canada, to calibrate its short-term electricity demand forecast models. A conversion into Julia has been developed to improve reliability and readability of the original code. We now present it as a Julia numerical optimization open-source package


ENLSIP, which stands for Easy Nonlinear Least-Squares Inequality Program and available at https://plato.asu.edu/sub/nonlsq.html#lsqres, is the name of an optimization algorithm and an open-source Fortran77 library developed and released in the 1980s that solves nonlinear least squares problems under nonlinear constraints using a Gauss-Newton type method.

This library has been successfully used for decades by Hydro-Québec, the main electricity supplier for the province of Quebec in Canada, to calibrate its short-term electricity demand forecast models, also coded in Fortran. Since Hydro-Québec is starting to switch from Fortran to Julia and because its systems are used in a very critical context, the first goal of this transition is to ensure that the replacing Julia version reproduce the results given by the original Fortran version. The Julia conversion of the above-mentioned ENLSIP library is part of this process. Comparison of results and performance on operational Hydro-Québec optimization problems have been performed thanks to a Julia-Fortran interface and show very encouraging results, which leads us to think that the current version of our implementation can be published as a Julia package.

We recognize that this algorithm does not beneficiate from state-of-the-art least-squares optimization improvements, but we think using it can still be relevant nowadays. Indeed, its application remains very general covering non-linearity and non-convexity of the constraints and objective function. This category of least-squares problems is seldom mentioned in the literature compared to other ones such as linear cases without constraints for instance. The second part of this project is to improve the optimization method and we hope the release of this package and its eventual use by the community can help us gathering improvements useful to all.

PhD student at the University of Montreal in computer Science, currently working on the modernization of an electricity demand forecast tool for Hydro-Québec, main electricity supplier for the province of Quebec in Canada.