Stampa

 

deep space computing AG è in grado di implementare soluzioni a problemi che possono essere risolti con la programmazione lineare. Usiamo GLPK (GNU Linear Programming Kit) per implementare le nostre soluzioni. Appena saranno disponibili Risolutori Lineari che gireranno su GPU, deep space computing sarà trai i primi ad offrirle ai propri clienti attraverso il Cluster di Calcolo.

Centro del modello è una funzione obiettivo espressa sopra una regione ammissibile. La funzione obiettivo è lineare ed è espressa coi coefficienti del vettore c .

La regione ammissibile è un politopo (poliedro in n dimensioni) convesso con la stessa dimensionalità di c , vincolata da un insieme di disequazioni che rappresentano il limite del modello. Altre equazioni lineari definiscono leggi di conservazione e stati correnti del sistema. Tutte le equazioni e disequazioni lineari sono espresse con la matrice A e il vettore b.

L'algoritmo di programmazione lineare chiamato CPLEX, originariamente sviluppato da IBM, trova un punto nel politopo dove la funzione obiettivo ha il suo valore massimo, se questo punto esiste.

Prima di lanciare l'algoritmo, è necessario convertire il problema nella sua forma aumentata. Questa forma introduce variabli delle variabili non negative "slack" per rimpiazzare le disequazioni con uguaglianze. Il problema si può allora riscrivere nella seguente forma matematica:

dove xs sono le variabli slack e Z è la variabile da massimizzare.

Qui un semplice esempio di un'ottimizzazione lineare scritta da deep space con GLPK per un problema di ottimizzazione di centrali idroelettriche: