Upload
vincent-richardson
View
212
Download
0
Embed Size (px)
Citation preview
Applications of Graph and Scheduling Theory
for getting out of Ohio Statefor getting out of Ohio State
Eugene TalagrandMauktik GandhiJeff Mathew
The Problem Design and implement algorithms to solve
scheduling problems with prerequisites. Schedule a certain amount of events in as
short of a time as possible, while considering the fact that some events must occur before others, some events cannot occur at the same time due to conflicts, and that at any given time there is a bounded number of events that can be happening simultaneously
The Motivation This is a hard problem –
Hard in the theoretical sense Brute force approach
O (life time of the universe2) 1055 operations
A different class of projects Non conventional
Very long and complex project
The Applications
This isn’t just a toy problem Similar problems are encountered in
industry, for example building an airplane The plane cannot be painted before it is
built
Existing work in the field The Crew Scheduling problem,
studied in Operations Research, is similar to this one. It can be solved using Binary Programming and the Simplex Method. It is NP-Complete.
Different data structures will only serve to reduce the complexity of a problem marginally.
The Goals
Develop intelligent heuristics to find polynomial-time approximations for this problem
Develop progressive solutions, meaning that given more time, the optimality of the solution improves accordingly
The Approach We took a three-step approach to solving
this problem Develop an efficient data structure
Must model every behavior Develop polynomial-time deterministic
algorithms to reduce the size of the problem set Reduction was chosen over construction to
make use of these algorithms Develop polynomial time heuristic algorithms to
get closer to the optimal solution
The Data Structures
A first attempt was made to work directly on graphs.
Refined into a ‘tape’ model. Bins represent quarters. Each bin initially contains all courses
offered that quarter Bins are reduced based on prerequisites
and conflicts How to resolve conflicts?
The Prerequisite Graph A prerequisite graph needs to be built Longest-path algorithms (NP-Complete)
need to be as fast as possible – constant time!
Implementation akin to adjacency matrices, but every cell contains the directed longest path between two courses. Negative dependencies are also indexed (222 has a negative dependency on 321)
The Branch-and-Bound Algorithms
Conflict resolution gets easier as more courses are scheduled. How to start? (Edge effect) Pack the bins from the left Pack the bins from the right – least
amount of time through college can be minimum bounded
Heuristics will help later on When a conflict is resolved, cascade
the result
The Core Dilemma
Many more deterministic algorithms have been considered For many, we hit the core dilemma – the
fragile balance between prerequisites and scheduling conflicts
Long-term effects of scheduling
The Initial Heuristics For each course in a bin, assign a priority
equal to the sum of the lengths of the longest paths to outgoing classes
Pick the subset of courses within the credit-hour limit that maximizes the sum of priorities This is the subset-sum problem – another NP-
Complete problem! Fortunately, there already exists a polynomial time approximation Approximate the approximation
Optimizations like aging effects to prevent ‘starvation’ can be applied as well
The Future Develop a more formal model for the
problem, allowing for more algebraic solutions
Explore scheduling bottlenecks, and work towards them (such as tilting the heuristics towards them). These might be detected through adjacency matrix eigenvalues
Exploit graph cut sets, to localize the effects of the heuristics