Programarea stocastică este o abordare în programarea matematică care vă permite să luați în considerare incertitudinea în modelele de optimizare.
În timp ce problemele de optimizare deterministă sunt formulate folosind parametrii dați, problemele aplicate reale conțin de obicei niște parametri necunoscuți. Când parametrii sunt cunoscuți doar în anumite limite, o abordare pentru rezolvarea unor astfel de probleme se numește optimizare robustă . Această abordare este de a găsi o soluție fezabilă pentru toate aceste date și optimă într-un anumit sens.
Modelele de programare stocastică sunt similare, dar folosesc cunoștințele despre distribuțiile de probabilitate pentru date sau estimările acestora. Scopul aici este de a găsi o soluție care să fie valabilă pentru toate (sau aproape toate) valorile posibile de date și să maximizeze media unei anumite funcții de decizii și variabile aleatoare. În general, astfel de modele sunt formulate, rezolvate analitic sau numeric, iar rezultatele acestora sunt analizate pentru a oferi informații utile factorilor de decizie.
Cele mai utilizate și mai bine studiate modele liniare în două etape de programare stocastică. [1] Aici, decidentul ia unele măsuri în prima etapă, după care are loc un eveniment aleatoriu care afectează rezultatul deciziei primei etape. În a doua etapă, se poate lua apoi o decizie corectivă care compensează orice efecte nedorite rezultate din decizia din prima etapă.
Soluția optimă a unui astfel de model este o singură decizie din prima etapă și un set de decizii corective (reguli de decizie) care determină ce acțiune ar trebui întreprinsă în a doua etapă ca răspuns la fiecare rezultat aleatoriu.