Given a weighted directed graph without positive cycles, we construct a framework to detect all longest paths for pairs of nodes in a network. The interest is to identify all routes with the highest cumulative cost for each source–destination pair. The significance and need for this arises in several scheduling contexts, an example of which is called critical chain project management. All longest routes are enumerated and compared for each output to determine a bottleneck path referred to as critical chain. Besides finding longest paths, minimizing duration needs to be considered. This indicates that multiple types of optimization problems coexist in one methodology. We thus aim to contain the longest-paths problem through constraints, for which an optimal solution that minimizes duration can be detected by solving a single optimization problem. The framework is reduced to a constraint satisfaction problem in a mixed-integer linear-programming context, and the solution can be derived using a general purpose solver. Optimality for the longest-paths problem is proven using the small-m method. Since the developed framework does not require an objective function specification, the methodology can also be incorporated within other optimization based problem contexts.
Read full abstract