4 ms·
Also, the term "dynamic programming" has slightly different meanings in the context of leetcode problems and in the context of reinforcement learning. In the f
by smokel 1y ago
Also, the term "dynamic programming" has slightly different meanings in the context of leetcode problems and in the context of reinforcement learning.
In the first it's for optimizing a relatively small deterministic system, in the latter it is for optimizing a stochastic process.
Pretty confusing.
- jeltz 1y agoThe idea is way older than both leetcode and reinforcement learning and is used everywhere (for example when planning SQL queries). If reinforcement learning invented a new way to use the word then that is all their fault because leetcode is true to the original meaning.
- smokel 1y agoBoth meanings derive from Bellman. "Reinforcement learning" did not invent a new way, and the field of reinforcement learning predates leetcode by a large margin.
- jeltz 1y agoSo what is the confusion then? Leetcode got it from real computer science and engineering and retained the original meaning in both steps without any changes. Every bigger piece of software you use probably uses dynamic programming somewhere. Or do you think that e.g. PostgreSQL is leetcode? There is nothing derived here. It is exactly the same meaning.
- smokel 1y agoPerhaps we misunderstand each other. I'm saying that the mathematical optimization method differs from the algorithmic paradigm, as explained on this Wikipedia page for example: https://en.wikipedia.org/wiki/Dynamic_programming https://en.wikipedia.org/wiki/Dynamic_programming. That is to say, they serve different purposes and are distinct concepts. They sure have the same fundamental basis laid out by Bellman, but the applications have diverged quite a bit. Do you mean to say that these two concepts also have exactly the same meaning?