Live data from Hacker News

Dynamic Progamming: First Principles

flawlessrhetoric.com

31–40 of 102 posts

Re: Dynamic Progamming: First Principles

#31
post #7
post #3

Favorite examples for applications of dynamic programming? Mine are sequence alignment/BLAST in bioinformatics, but I'm sure there are many of which I am not aware in other fields.

Reinforcement Learning

I think really just "Value Iteration" (which isn't just used in RL). Reinforcement Learning itself is a problem setting and there are solutions in RL that don't use dynamic programming (for example, policy gradient methods).

Re: Dynamic Progamming: First Principles

#32

> Memorisation It is memoization, not memorisation! Although for two weeks in algorithms class I did in fact think our prof was just pronouncing memorize in a cutesy manner.

That's simply the British English way of writing the word. The author is a Swede and most probably got educated in the official way of writing English.

Re: Dynamic Progamming: First Principles

#33
post #32

> Memorisation It is memoization, not memorisation! Although for two weeks in algorithms class I did in fact think our prof was just pronouncing memorize in a cutesy manner.

That's simply the British English way of writing the word. The author is a Swede and most probably got educated in the official way of writing English.

If you think the parent is talking about the s/z, look back earlier in the word. Memoization (regardless of locale) doesn't have an "r".

Re: Dynamic Progamming: First Principles

#34
post #15

Earlier quoted context omitted.

It’s odd that there would be algorithms classes that don’t require some implementations.

When I took Algorithms II in college at a top 10 CS program, our entire class involved ZERO coding or programming of any sort.

Same. Probably the worst class I ever took was my algorithms and data structures class. I swear the professor transcribed most of CLRS onto the blackboard over 10 weeks verbatim, and we never so much as touched a keyboard.

Re: Dynamic Progamming: First Principles

#35
post #12

While dynamic programming is taught in almost all algorithms classes, I think I finally grokked it after implementing it in a few practice problems. Would strongly recommend giving a few exercises listed here a shot: https://leetcode.com/tag/dynamic-programming/

Personally, I prefer these more than the leet code problems: https://people.cs.clemson.edu/~bcdean/dp_practice/

Great resource, thank you!

Re: Dynamic Progamming: First Principles

#36

Earlier quoted context omitted.

What were you supposed to use instead? My impression is that dynamic programming is sometimes sluggish but often better than the alternatives.

Most optimization problems use Linear Programming if the problem has linear/continuous variables and Mixed Integer Programming if binary values (turning something on or off) is part of the solution. These are used in production pretty much everywhere. LP (linear programming) problems are extremely fast too. My company has a HUGE LP & MIP problems and the LPs are still only a few minutes to solve on nice hardware. MIP…

That's not a drop-in replacement for dynamic programming though, is it? Can you do something like edit distance with IP?

Re: Dynamic Progamming: First Principles

#39

Earlier quoted context omitted.

When I took Algorithms II in college at a top 10 CS program, our entire class involved ZERO coding or programming of any sort.

Same. Probably the worst class I ever took was my algorithms and data structures class. I swear the professor transcribed most of CLRS onto the blackboard over 10 weeks verbatim, and we never so much as touched a keyboard.

Is paper programming in pseudocode bad, though? I mean, computing science is not about computers, and all that.
Post reply on HN