Invented by the professor Richard Bellman, the dynamic programming makes it possible to solve by means of a computer any problem of optimization whose function objective is described like the nap of not-decreasing monotonous functions of the resources . Concretely, that means that one will be able to deduce the optimal solution from a problem starting from an optimal solution of under problem.
The dynamic programming is very often applicable within an industrial framework for two reasons:
Some concrete examples:
It is the dynamic programming - and not considerations of respect of the residents of an airport - which resulted in making mount the civil aircrafts and military as soon as possible until their altitude of cruising. This technique shows indeed that it is what minimizes as well the general fuel consumption as the profitability of the capital of the apparatus.
The problem of the skiers constitutes an application: it is a question of distributing m skis to N skiers (m>n) by minimizing the variations of size between the skis and the skiers. The property of optimality of the substructures (if a distribution is optimal, then very under part of the skis and the skiers is optimal) makes it manageable by dynamic programming.
The Problème of the backpack ( knapsack in English) is a traditional problem of Operations research which is Np-complete, but which is solved in a pseudo-polynomial way using a dynamic algorithm of programming.
Another example is the calculation of the Distance of Levenshtein.
The dynamic programming has, taking into account its many successes, makes disappear from the program of the majority of the schools of engineers part of mathematics which aimed to the same result by other means: the Calculation of the variations.
The execution time of a dynamic algorithm of programming can be calculated thanks to the fundamental Théorème.
Martelli showed into 1976 that any algorithm of dynamic programming could be reduced to research shorter way in a graph (A. Martelli. Year application off heuristic search methods to edge and contour detection. Com. ACM, 19 (2): 73--83, February 1976). However, the techniques of heuristic research based on a* algorithm make it possible to exploit the specific properties of a problem to gain in computing times. In other words, it is often more advantageous to exploit A* than to use the dynamic programming.
| Random links: | Briconville | George Gillett Jr | Osterøy | Stephan Maurel | Besancon line - Locle |