Lineaarprogrammeerimine (ka lineaarne planeerimine) on matemaatikas optimeerimise meetod, millega leitakse sihifunktsiooni muutujate väärtused, mille puhul funktsiooni väärtus on minimaalne või maksimaalne. Sealjuures võivad muutujatele kehtida võrratussüsteemina esitatavad kitsendused. Nii sihifunktsioon kui ka kitsenduste võrratused peavad olema lineaarsed.
Lineaarprogrammeerimisega lahendatavaid probleeme saab esitada standardkujul, mis koosneb kolmest osast:
on sihifunktsiooni argumendid ehk muutujad, mille väärtusi otsitakse. , ja on väärtused, mis tulenevad probleemipüstitusest.
Sõltuvalt lahendamise meetodist võib olla otstarbekas kasutada teistsugust standardkuju. Näiteks simpleksmeetodi puhul tuleb kitsendused viia võrdusmärgiga kujule, nt
Kondiitril on varutud 12 kg kohupiima ja 3 kg suhkrut, millest tuleb valmistada kg kooki ja kg torti nii, et saadav kasum oleks maksimaalne. Ülejäänud koostisaineid on piiramatus koguses.
Antud ülesande saab esitada standardkujul:
| Maksimeerida: | (müügist saadav kasum) | |
| Sealjuures: | (kohupiim) | |
| (suhkur) | ||
| (negatiivset kogust ei saa valmistada). | ||
→
→
Lisatud muutuja väljendab võrratuse vasaku poole ja selle suurima lubatud väärtuse vahet. See võib tähendada näiteks ressurssi, mida optimaalse lahenduse puhul ei kasutata.
Lineaarprogrammeerimise probleeme saab lahendada näiteks simpleksmeetodi või sisepunkti meetodi abil.