In this paper, we present a modification of dynamic programming algorithms (DPA), which we denote as graphical algorithms (GrA). For some single machine scheduling problems, it is shown that the time complexity of the GrA is less than the time complexity of the standard DPA. Moreover, the average running time of the GrA is often essentially smaller. A GrA can also solve large-scale instances and instances, where the parameters are not integer. For some problems, GrA has a polynomial time complexity in contrast to a pseudo-polynomial complexity of a DPA.
We consider a project investment problem, where a set of projects and an overall budget are given. For each project, a piecewise linear profit function is known which describes the profit obtained if a specific amount is invested into this project. The objective is to determine the amount invested into each project such that the overall budget is not exceeded and the total profit is maximized. For this problem, a graphical algorithm (GrA) is presented which is based on the same Bellman equations as the best known dynamic programming algorithm (DPA) but the GrA has several advantages in comparison with the DPA. Based on this GrA, a fully-polynomial time approximation scheme is proposed having the best known running time. The idea of the GrA presented can also be used to solve some similar scheduling or lot-sizing problems in a more effective way, e.g., the related problem of finding lot-sizes and sequencing several products on a single imperfect machine.