If the critical path determined completion time of the construction project is constrained by the lack of resources, which are needed to carry out some of the activities, then the analysis required for scheduling the activities is much more involved. There are two major categories of procedures for solving this problem. The first involves the use of some heuristic rules in determining priorities among activities competing for available resources. The second involves some form of mathematical programming to produce the optimal schedule. Heuristic scheduling rules. computer programmed to give good feasible schedules have been the basis for all practical systems to date. In the same time, the optimal solution of the problem has not been paid enough attention in the construction management literature. The increasing availability of more powerful computer systems should see more emphasis on the development of procedures to give the optimal solution for large complex projects which occur in construction practice. In this paper a Computer program is developed for implementing an implicit enumeration algorithm to give the optimal solution of the problem for construction projects. The algorithm has been chosen to satisfy large projects and its efficiency has been established by specifying a lower bound on the length of the schedule and by sorting project activities and resources in a way such that the computation time is greatly reduced. Experience in applying the algorithm to an actual project is reported.