# Interpretable Optimization: Why and How We Should Explain Optimization Models
## 3 Problem Reduction and Surrogate Model Building
### Decomposition Approaches  
Another traditional approach that has been applied to problem simplification is decomposition. Decomposition techniques in optimization break down complex problems into smaller, more manageable subproblems that can be solved independently or iteratively coordinated to find an optimal solution. These methods are particularly useful for large-scale optimization problems, where solving the entire model directly would be computationally prohibitive. One widely used approach is Benders' decomposition [43], which separates decision variables into master problem and subproblems, iteratively refining feasibility and optimality cuts to converge to the optimal solution. Benders' decomposition solves large-scale optimization problems by partitioning them into a master problem and a subproblem, both of which are solved iteratively. The master retains the complicating (typically integer, aggregate, or investment) variables, while the subproblem optimizes the remaining continuous variables, conditional on the master's current solution. The subproblem returns either an optimal objective value or feasibility/optimality cuts--linear constraints that summarize its outcome--which are appended to the master. Subproblems are independent and can be solved in parallel. This exchange continues until no further cuts arise, at which point the master's solution is provably optimal for the original problem. Benders' decomposition can be applied to a very  
Figure 4: Plot of feasible region of optimization problem example. Redundant equations are represented with dashed lines. large scope of problems, namely two-stage stochastic ones, where complicating variables correspond to investment decisions taken in the first stage, and the non-complicating ones are the second-stage decisions that affect only one particular scenario [44]. Benders' decouples the investment and operation decisions and provides an economic value for the second stage (the recourse function), facilitating the potential interpretation of solutions. The main disadvantage of Benders' decomposition is its slow convergence [45]. Many Benders' cuts may be necessary until the algorithm converges, and each iteration requires solving an additional master problem and subproblems, which may be computationally intensive [46]. Another key technique is Dantzig-Wolfe decomposition [47], which reformulates a large problem into a master problem and subproblems based on a column-generation approach, improving efficiency in structured linear programs. The main strength of Danzig-Wolfe decomposition is that the subproblems are independent, enabling parallelization [48]. Its main weakness is that, under some circumstances, convergence is not guaranteed and may not be reached [49]. Lagrangian relaxation [50] is also commonly used, where complicating constraints are relaxed and incorporated into the objective function through Lagrange multipliers, allowing the problem to be solved as a series of simpler subproblems. Its main advantage lies in its ability to handle complicated constraints [51], and the main disadvantage is that the solution of the relaxed problem may be unfeasible in the original problem [52]. Additionally, the Alternating Dual Multiplier Method (ADMM) is an iterative decomposition approach that updates dual multipliers in an alternating fashion to optimize separable convex problems efficiently [53]. ADMM is particularly effective in distributed optimization and large-scale convex programming, enabling parallel computation while maintaining convergence properties. Its main strength is that parallelization allows for application in large-scale problems [54], while its main weakness is that convergence is only guaranteed if the problem is convex [55]. The scalability of decomposition methods is fundamentally influenced by the structure of the constraint matrix, particularly the extent to which it permits decomposition into loosely coupled subcomponents.