Decogo

Decogo is a software framework for decomposition-based global optimization of block-separable MINLP problems of the form

\begin{equation} \min \, c^Tx : x\in P,\,\, x_k\in X_k,\,\, k\in K \end{equation}

with

\begin{equation} P:= \{x \in {\bf R}^{n}: \, \, a_i^T x\leq b_i,\, i\in M_1, \,\, a_i^T x= b_i,\, i\in M_2 \}, \end{equation}

\(|M_1|+|M_2|=m\), and

\begin{equation} X_k:=\{ y \in [\underline{x}_k, \overline{x}_k] \subset {\bf R}^{n_{k1}} \times {\bf Z}^{n_{k2}}: g_{kj}(y)\leq 0,\, j\in J_k \}. \end{equation}

The vector of variables \(x \in {\bf R}^n\) is partitioned into \(|K|\) blocks such that \(n=\sum\limits_{k \in K}n_k\), where \(n_k=n_{k1}+n_{k2}\) is the dimension of block \(k\), \(n=\sum\limits_{k \in K}n_k\) and \(x_k\in {\bf R}^{n_k}\) denotes the variables of block \(k\). The vectors \(\underline{x}, \overline{x} \in {\bf R}^{n}\) denote lower and upper bounds on the variables.