Optimization Algorithms For Networks and Graphs by James Evans