
Dynamic programming  optimization method, adapted to the operations in which the decisionmaking process can be broken down into individual steps (steps). Such operations are called multistep.
As part of mathematical programming, dynamic programming (DP) has started to develop in the 50ies of XX century. through the work of Bellman and his staff. For the first time this method solves the problem of optimal inventory control, then the class of problems has grown considerably. As a practical method for optimizing the method of dynamic programming has been made possible only with the use of modern computing.
In a dynamic programming based on the principle of optimality, formulated by Bellman. This principle and the idea of having a specific optimization problem in a family of similar multistep problems lead to recurrence relations  functional equations  regarding the optimal value. Their solution allows us to consistently obtain the optimal control for the original optimization problem.
We give a general description of the model of dynamic programming.
We consider a control system that is under the influence of the control moves from the initial to go into the final state  n Assume that the process control system can be divided into n steps. Let e, E2> >  state of the system after the first, second, ..., nth step.
Dynamic programming is used for optimization of both deterministic and stochastic processes.
In some problems to be solved by the DP, the management is naturally divided into steps. For example, the allocation of resources for a few years of the company step is natural to consider the time period in the allocation of funds between companies step number n is natural to consider the next number of the enterprise. 