Dynamic programming may be considered thoutgrowth of mathematical programming and involves the optimization of multistage( sequence of inter related decisions) decision processes. The method starts by dividing a given problem into stage or sub problems and then solves those sub problems sequentially until the solution to the original problem is obtained.