Rakenduse eesmärk on pakkuda mugavaid tööriistu objektide mudelite loomiseks ja lahendamiseks lineaarseks optimeerimiseks.
Lineaarne optimeerimine, mida nimetatakse ka lineaarseks programmeerimiseks (LP), on meetod parima tulemuse saavutamiseks (nt maksimaalne (minimaalne) kasum või madalaim kulu) matemaatilises mudelis, mille nõuded ja eesmärk on esitatud lineaarsete seostega. Lineaarne programmeerimine on matemaatilise programmeerimise (tuntud ka kui matemaatiline optimeerimine) erijuht.
Lineaarsed programmid (selle rakenduse mõistes mudelid) on probleemid, mida saab väljendada standardvormides (Wikipedia):- leidke vektor x; - mis maksimeerib(minimeerib) Z = cx; - allub Ax<=b – in maksimeerib( Ax>=b – in minimeerib );- ja x>=0. Siin on määratavateks muutujateks x komponendid, vektorid c ja b ning A on antud maatriks.
Rakenduse algtegevusest – App Linear Optimization – on kaasas mudelite loomise, redigeerimise, lahendamise ja kustutamise funktsioonid. Mudelid on salvestatud SQLite andmebaasi nimega linearProgramming.db. Rakendusel on funktsioonid andmebaasi salvestamiseks ja taastamiseks seadme kataloogis Laadi alla.
Optimeerimismudeli loomisel sisestatakse kaks parameetrit (Lineaarmudeli tegevus) - vektori x muutujate arv ja piirangute arv (see ei sisalda muutujate piiranguid) - st maatriksi A read. Pärast nende andmete sisestamist ja nupu – Lineaarmudel – vajutamist jätkate mudeli andmete sisestamisega – tegevusest Lineaarmudeli loomine.
Vektor x koefitsiendid c sisestatakse reale, mille sildid *Xi+ ette näevad sildiga Z=.
Maatriksi А elemendid sisestatakse tabelisse nimega Constraints väljade sildi *Xi+ ette. Maatriksi iga rea viimasele väljale pärast silti <= on sisestatud ka piirangute piirid b. Pärast nende andmete sisestamist ja nupu OK vajutamist naaseb tegevusse - Lineaarse mudeli tegevus , kus ilmub mudeli nime kohustuslik väli ja salvestamise nupp.
Kui mudel on salvestatud, kuvatakse selle nimi mudelite loendis, mis kuvatakse rakenduse algses tegevuses. Loendist valitud mudelit saab redigeerida (nupp Muuda) või lahendada (nupp Arvuta). Pärast redigeerimist ja salvestamist salvestatakse redigeeritud versioon uue mudelina ja vana jääb andmebaasi muutmata. Seda selleks, et mõlemad mudelid saaksid lahendatavad ja tulemusi võrrelda. Kui mõnda neist pole vaja, saab selle kustutada.
Mudeli lahendamisel näitab tulemus sihtfunktsiooni Z maksimeerimist ja minimeerimist ning seda, millistel vektori x elementide väärtustel ja ka piiranguid see juhtub.
Lineaarseid programmeerimismudeleid kasutavad tööstusharud hõlmavad transporti, energeetikat, telekommunikatsiooni ja tootmist. See on osutunud kasulikuks mitmesuguste planeerimis-, marsruutimis-, ajakava-, määramis- ja disainiprobleemide modelleerimisel.
Rakendus kasutab optimeerimisklassi SimplexSolver standardteegi org.apache.commons:commons-math:3.6.1.
Värskendatud:
14. okt 2025