In SSC when a variable is defined as an integer variable or binary, the procedure uses the algorithm of Branch and Bound for optimization. The Branch and Bound resolves a succession of relaxed problems (deprived of integer constraints); to solve these problems is used the Simplex algorithm.
On the other hand, the Branch and Bound method has a higher computational complexity, as it must solve a succession of simplexes; this makes it much more demanding in terms of calculation time and required resources compared to the single simplex method. Consequently, the size of the MILP (Mixed Integer Linear Programming) problems that can be solved is necessarily limited.
SSC (Software for Simplex Calculation) is an open-source Java library for solving linear programming (LP) problems. Distributed as free and open-source software (FOSS), SSC is available for download on GitHub and Maven. The library comes with examples and documentation, offering easy integration into Java projects, making it ideal for anyone seeking an efficient solution for optimization problems.
The SSC library supports the formulation of linear programming problems in various formats: text, coefficient, matrix, sparse, and even JSON. Problems can be specified directly in code or through an external file, simplifying integration with existing projects and facilitating the management of complex inputs.
SSC uses the Simplex algorithm to solve this class of problems, commonly referred to as LP (Linear Programming). It also supports problems with free, integer, binary, semicontinuous, and semi-continuous integer variables, known as MILP (Mixed Integer Linear Programming). To solve MILP problems, which include integer or binary variables, SSC employs the Branch and Bound (B&B) algorithm.