Difference between revisions of "Dynamic Programming"

From Chessprogramming wiki
Jump to: navigation, search
 
Line 37: Line 37:
 
* [[Andrew Barto]], [[Richard Sutton]], [https://dblp.uni-trier.de/pers/hd/w/Watkins:Christopher_J=_C=_H= Christopher J. C. H. Watkins] ('''1989'''). ''[https://papers.nips.cc/paper/194-sequential-decision-problems-and-neural-networks Sequential Decision Problems and Neural Networks]''. [https://dblp.uni-trier.de/db/conf/nips/nips1989.html NIPS 1989]
 
* [[Andrew Barto]], [[Richard Sutton]], [https://dblp.uni-trier.de/pers/hd/w/Watkins:Christopher_J=_C=_H= Christopher J. C. H. Watkins] ('''1989'''). ''[https://papers.nips.cc/paper/194-sequential-decision-problems-and-neural-networks Sequential Decision Problems and Neural Networks]''. [https://dblp.uni-trier.de/db/conf/nips/nips1989.html NIPS 1989]
 
==1990 ...==
 
==1990 ...==
 +
* [[David Eppstein]], [[Mathematician#ZviGalil|Zvi Galil]], [[Mathematician#RGiancarlo|Raffaele Giancarlo]], [[Mathematician#GFItaliano|Giuseppe F. Italiano]] ('''1990'''). ''Sparse Dynamic Programming''. [https://dblp.uni-trier.de/db/conf/soda/soda90.html SODA 1990], [http://www.cs.ust.hk/mjg_lib/bibs/DPSu/DPSu.Files/p513-eppstein.pdf pdf]
 
* [[Mathematician#DBertsekas|Dimitri Bertsekas]] ('''1996, 2017'''). ''[http://www.athenasc.com/dpbook.html Dynamic Programming and Optimal Control]''. [http://www.athenasc.com/index.html Athena Scientific]
 
* [[Mathematician#DBertsekas|Dimitri Bertsekas]] ('''1996, 2017'''). ''[http://www.athenasc.com/dpbook.html Dynamic Programming and Optimal Control]''. [http://www.athenasc.com/index.html Athena Scientific]
 
==2000 ...==
 
==2000 ...==

Latest revision as of 11:19, 20 July 2019

Home * Programming * Algorithms * Dynamic Programming

Dynamic Programming, (DP)
a mathematical, algorithmic optimization method of recursively nesting overlapping sub problems of optimal substructure inside larger decision problems. The term DP was coined by Richard E. Bellman in the 50s not as programming in the sense of producing computer code, but mathematical programming, planning or optimization similar to linear programming, devoted to the study of multistage processes. These processes are composed of sequences of operations in which the outcome of those preceding may be used to guide the course of future ones [1].

DP in Computer Chess

In computer chess, dynamic programming is applied in depth-first search with memoization aka using a transposition table and/or other hash tables while traversing a tree of overlapping sub problems aka child positions after making a move by one side in top-down manner, gaining from stored positions of sibling subtrees due to transpositions and/or common aspects of positions, in particular effective inside an iterative deepening framework. Another approach of dynamic programming in computer chess or computer games is the application of retrograde analysis, to solve a problem by solving subproblems in bottom-up manner starting from terminal nodes [2].

See also

Selected Publications

1953 ...

1960 ...

1970 ...

1980 ...

1990 ...

2000 ...

2010 ...

External Links

Algorithms that use dynamic programming

References

Up one Level