확률계획법 (Stochastic Programming)

산업공학
한 줄 정의: 문제에 포함된 불확실한 값들을 확률분포로 표현하고, 그 분포를 반영해 기대되는 성과가 최적이 되는 결정을 찾는 수리계획 기법입니다.

쉽게 풀면

내일 비가 올 확률이 60%라는 정보를 알고 있다면, 우산을 챙길지 말지를 그 확률에 근거해 합리적으로 결정할 수 있습니다. 확률계획법은 이렇게 미래의 불확실한 상황을 확률로 표현하고, 여러 가능한 시나리오를 놓고 평균적으로 가장 좋은 결정을 계산하는 방법입니다. 흔히 지금 당장 내려야 하는 결정과, 상황이 밝혀진 뒤에 조정할 수 있는 결정을 나누어 다룹니다. 이렇게 하면 불확실성 속에서도 장기적으로 손해를 최소화하는 계획을 세울 수 있습니다.

왜 중요한가

산업공학의 생산·재고·물류 문제는 수요나 가격처럼 예측이 어려운 값에 크게 영향을 받습니다. 과거 데이터로 확률분포를 추정할 수 있는 경우, 확률계획법은 이 정보를 명시적으로 활용해 평균적으로 더 나은 결정을 내릴 수 있게 해줍니다. 그래서 재고관리, 공급망 설계, 에너지 계획 등 다양한 실무 및 연구 분야에서 핵심적인 도구로 쓰입니다.

논문에서는 이렇게 쓰입니다

"수요 시나리오를 반영한 2단계 확률계획법 모형을 구축하여 재고 수준을 결정하였다."

지금 시점에 정해야 하는 발주량과, 수요가 실현된 이후 조정 가능한 결정을 나누어 최적화했다는 뜻입니다.

"몬테카를로 시뮬레이션으로 생성한 시나리오를 확률계획법에 적용하여 기대비용을 최소화하였다."

가능한 미래 상황들을 무작위로 여러 개 만들어내고, 그 평균적인 비용이 최소가 되는 계획을 구했다는 의미입니다.

조금 더 깊게 보면

대표적인 형태로 2단계 확률계획법이 있으며, 1단계는 불확실성이 실현되기 전에 내리는 결정, 2단계는 실현 이후에 대응하는 결정으로 구성됩니다. 확률분포를 몇 개의 대표 시나리오로 근사하여 계산 가능한 문제로 바꾸는 시나리오 기반 접근이 흔히 쓰입니다. 강건최적화와 달리 확률분포에 대한 정보를 명시적으로 활용한다는 점이 차이입니다.

주의할 점

확률분포를 잘못 추정하면 결과의 신뢰성이 떨어질 수 있으며, 시나리오 수가 많아질수록 계산 부담이 커진다는 한계가 있습니다.

관련 용어