2025 AIChE Annual Meeting
(593d) Dominopy: A Python Package for Data-Driven Optimization of Bi-Level Mixed-Integer Nonlinear Problems
Authors
In this work, we introduce DOMINOpy, a ready-to-use Python implementation of the Data-driven Optimization of bi-level Mixed-Integer NOnlinear problems (DOMINO) framework [4]. DOMINOpy enables flexible construction of bi-level MINLP optimization models and leverages data-driven strategies to solve them. It supports: (a) Constructing models from basic problem information; (b) Incorporating user-defined models, including GAMSPy, Pyomo, and scikit-learn workflows; (c) Using deterministic solvers (e.g., BARON [5], GUROBI, IPOPT, CPLEX) to find the global optima at the lower level; (d) Data-driven algorithms for constrained, bound-constrained, or unconstrainted optimization at the upper level (e.g., Particle Swarm Optimization, DIRECT, NOMAD [6], etc.). The application of DOMINOpy is examined across a diverse range of bi-level benchmark problems with varying complexity and hyperparameter optimization for machine-learning models as an example of user-defined models at the lower level.
References:
[1] Gümüş, Z.H. and Floudas, C.A., 2001. Nonlinear bilevel programming: A deterministic global optimization framework. In Computer Aided Chemical Engineering (Vol. 9, pp. 393-400). Elsevier.
[2] Kleniati, P.M. and Adjiman, C.S., 2014. Branch-and-Sandwich: a deterministic global optimization algorithm for optimistic bilevel programming problems. Part I: Theoretical development. Journal of Global Optimization, 60, pp.425-458.
[3] Avraamidou, S. and Pistikopoulos, E.N., 2019. B-POP: Bi-level parametric optimization toolbox. Computers & Chemical Engineering, 122, pp.193-202.
[4] Beykal, B., Avraamidou, S., Pistikopoulos, I.P., Onel, M. and Pistikopoulos, E.N., 2020. Domino: Data-driven optimization of bi-level mixed-integer nonlinear problems. Journal of Global Optimization, 78, pp.1-36.
[5] Sahinidis, N.V., 1996. BARON: A general purpose global optimization software package. Journal of global optimization, 8, pp.201-205.
[6] Le Digabel, S., 2011. Algorithm 909: NOMAD: Nonlinear optimization with the MADS algorithm. ACM Transactions on Mathematical Software (TOMS), 37(4), pp.1-15.