More to the point, actually solving some of these problems may well be NP-complete. But what do we and evolution do in practice, when we have to solve the problem and throwing up our hands is not an option? We and it use a numerical approximation which works pretty darned well. Worse is, in fact, better.
I noticed that recently I wrote several comments of the form "UDT can be seen as a step towards solving X" and thought it might be a good idea to list in one place all of the problems that helped motivate UDT1 (not including problems that came up subsequent to that post).