It is an extension which finds solutions to problems involving a number of decisions which have to be made sequentially. For example, the amount of a product to be made next month may depend on the amount sold this month and so on.
Thus dynamic programming is a quantitative technique which divides a given problem into stages (or sub-problems which are interrelated). Here we attempt to find a combination of decisions which will maximize overall effectiveness.
Usually, we work backwards from the natural end of the problem until the initial problem is finally solved (as in the decision trees).
The decision made at each stage influences the next stage. This method is also termed as recursive approach.
Dynamic programming applications:1. Manufacture and distribution troubles.2. Organizing inventory control.3. Resource allowance.4. Substitution and maintenance troubles.