Dynamic programming - optimization method, adapted to the operations in which the decision-making 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 50-ies 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 multi-step 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, ..., n-th step.
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.
Dynamic programming is used for optimization of both deterministic and stochastic processes.