Namen aplikacije je zagotoviti priročna orodja za ustvarjanje in reševanje modelov objektov za linearno optimizacijo.
Linearna optimizacija, imenovana tudi linearno programiranje (LP), je metoda za doseganje najboljšega rezultata (kot je največji (najmanjši) dobiček ali najnižji strošek) v matematičnem modelu, katerega zahteve in cilji so predstavljeni z linearnimi razmerji. Linearno programiranje je poseben primer matematičnega programiranja (znanega tudi kot matematična optimizacija).
Linearni programi (modeli v smislu te aplikacije) so problemi, ki jih je mogoče izraziti v standardnih oblikah (Wikipedia): - najti vektor x; - ki maksimizira(minimizira) Z = cx; - predmet Ax<=b – in maksimizira( Ax>=b – in minimizira );- in x>=0. Tu so komponente x spremenljivke, ki jih je treba določiti, c in b sta podana vektorja, A pa je dana matrika.
Od začetne aktivnosti aplikacije – App Linear Optimization so vključene funkcije za ustvarjanje, urejanje, reševanje in brisanje modelov. Modeli so shranjeni v bazi podatkov SQLite z imenom linearProgramming.db. Aplikacija ima funkcije za shranjevanje in obnavljanje baze podatkov v imeniku Prenos naprave.
Pri izdelavi optimizacijskega modela se vneseta dva parametra (aktivnost linearnega modela) - število spremenljivk vektorja x in število omejitev (to ne vključuje omejitev za spremenljivke) – to je vrstic matrike A . Po vnosu teh podatkov in pritisku na gumb – Linearni model, nadaljujete z vnosom podatkov o modelu – iz aktivnosti Izdelava linearnega modela.
Koeficiente vektorja x c vnesemo v vrstico z oznako Z= pred oznakami *Xi+.
Elemente matrike А vnesemo v tabelo z imenom Omejitve pred oznako polja *Xi+. V zadnjem polju vsake vrstice matrike za oznako <= je vpisana tudi meja b omejitev. Po vnosu teh podatkov in pritisku na tipko OK se vrne na aktivnost - Aktivnost linearnega modela , kjer se pojavi obvezno polje za ime modela in gumb za shranjevanje.
Ko je model shranjen, se njegovo ime prikaže na seznamu modelov, ki je prikazan v začetni dejavnosti aplikacije. Izbrani model s seznama lahko urejate (gumb Uredi) ali rešujete (gumb Izračunaj). Po urejanju in shranjevanju se urejena različica shrani kot nov model, stari pa ostane nespremenjen v bazi. To je zato, da je mogoče rešiti oba modela in primerjati rezultate. Če nekateri od njih niso potrebni, jih je mogoče izbrisati.
Pri reševanju modela rezultat pokaže maksimizacijo in minimizacijo ciljne funkcije Z in pri katerih vrednostih elementov vektorja x se to zgodi ter tudi omejitve.
Industrije, ki uporabljajo modele linearnega programiranja, vključujejo transport, energetiko, telekomunikacije in proizvodnjo. Izkazalo se je za uporabnega pri modeliranju različnih vrst problemov pri načrtovanju, usmerjanju, razporejanju, dodeljevanju in oblikovanju.
Aplikacija za optimizacijo uporablja razred SimplexSolver iz standardne knjižnice org.apache.commons:commons-math:3.6.1.
Posodobljeno dne
14. okt. 2025