Linearno programiranje je veja matematike in statistike, ki raziskovalcem omogoča, da določijo rešitve optimizacijskih problemov. Problemi linearnega programiranja so značilni po tem, da so jasno opredeljeni v smislu ciljne funkcije, omejitev in linearnosti. Zaradi značilnosti linearnega programiranja je zelo koristno področje, ki se je našlo v uporabnih področjih, od logistike do industrijskega načrtovanja.
Vsi problemi linearnega programiranja so problemi optimizacije. To pomeni, da je resnični namen reševanja problema linearnega programiranja maksimiranje ali zmanjšanje neke vrednosti. Tako težave z linearnim programiranjem pogosto najdemo v ekonomiji, poslu, oglaševanju in na številnih drugih področjih, ki cenijo učinkovitost in varčevanje z viri. Primeri elementov, ki jih je mogoče optimizirati, so dobiček, pridobivanje virov, prosti čas in uporabnost.
Kot že ime pove, imajo vsi problemi linearnega programiranja lastnost linearnosti. Vendar je ta lastnost linearnosti lahko zavajajoča, saj se linearnost nanaša samo na spremenljivke, ki jim je prva jakost (in torej brez močnostnih funkcij, kvadratnih korenin in drugih nelinearnih funkcije). Linearnost pa ne pomeni, da imajo funkcije problema linearnega programiranja samo eno spremenljivko. Skratka, linearnost pri problemih linearnega programiranja omogoča, da se spremenljivke med seboj povezujejo kot koordinate na premici, razen drugih oblik in krivulj.
Vsi problemi linearnega programiranja imajo funkcijo, imenovano "ciljna funkcija". Ciljna funkcija je zapisano v obliki spremenljivk, ki jih je mogoče poljubno spreminjati (npr. čas, porabljen za delo, proizvedene enote itd naprej). Ciljna funkcija je tista, ki jo želi reševalec problema linearnega programiranja povečati ali zmanjšati. Rezultat problema linearnega programiranja bo podan v smislu ciljne funkcije. Ciljna funkcija je v večini problemov linearnega programiranja napisana z veliko začetnico.
Vsi problemi linearnega programiranja imajo omejitve glede spremenljivk znotraj ciljne funkcije. Te omejitve so v obliki neenakosti (npr. "B <3", kjer b lahko predstavlja enote knjig, ki jih avtor napiše na mesec). Te neenakosti določajo, kako je mogoče ciljno funkcijo maksimirati ali minimizirati, saj skupaj določajo "področje", na katerem lahko organizacija sprejema odločitve o virih.