Programação Dinâmica: Não é o que você pensa
O termo "programação dinâmica" em estudos de algoritmos costuma causar confusão. 'Dinâmica' não se refere à sua mutabilidade, mas sim ao aspecto de planejamento de 'programação', originário da década de 1950, quando engenheiros planejavam projetos de construção como 'cronograma de processos'. Na ciência da computação, programação dinâmica significa planejar a ordem das sub-etapas necessárias para resolver um problema. Por exemplo, computar a sequência de Fibonacci, o 'programa' é a sequência de etapas para calcular fib(2) a fib(10) em ordem de dependência. Isso pode ser planejado de cima para baixo ou de baixo para cima; o plano final é o mesmo, e ambos são considerados programação dinâmica. Richard Bellman cunhou o termo para evitar a aversão de um Secretário de Defesa a 'pesquisa matemática', escolhendo habilmente 'programação dinâmica' porque o adjetivo 'dinâmica' não pode ser usado pejorativamente.