In SSC quando una variabile viene definita come una variabile intera o binaria, la procedura utilizza l'algoritmo del Branch and Bound per l'ottimizzazione. Nel Branch and Bound si risolve una successione di problemi rilassati (ovvero privati dei vincoli di interezza); per risolvere questi problemi rilassati si utilizza l'algoritmo del Simplesso.
Al contrario, il metodo del Branch and Bound ha una complessità computazionale maggiore, in quanto deve risolvere una succcessione di simplessi; questo lo rende molto più oneroso in termini di tempo di calcolo e risorse necessarie rispetto al singolo metodo del simplesso. Di conseguenza, la dimensione dei problemi di MILP risolvibili non può che essere limitata.
SSC (Software for Simplex Calculation) è una libreria Java open-source per la risoluzione di problemi di programmazione lineare. Distribuita come software libero (FOSS: free and open-source software), SSC è disponibile per il download su GitHub e Maven. La libreria è corredata da esempi e da una documentazione completa e offre un'integrazione semplice nei progetti Java, rendendola ideale per chiunque cerchi una soluzione efficiente per problemi di ottimizzazione.
La libreria SSC supporta la formulazione del problema di programmazione lineare in diversi formati: testo, coefficienti, matriciale, sparso e anche in formato JSON. È possibile specificare il problema direttamente nel codice o attraverso un file esterno, semplificando l'integrazione con progetti esistenti e facilitando la gestione di input complessi.
SSC utilizza l'algoritmo del Simplesso per risolvere questa classe di problemi, comunemente indicati con la sigla LP (Linear Programming), ma supporta anche problemi con variabili libere, intere, binarie, semicontinue e semicontinue intere, comunemente noti come MILP (Mixed Integer Linear Programming). Per la risoluzione di MILP, che includono variabili intere o binarie, SSC adotta l'algoritmo del Branch and Bound (B&B) .