250 likes | 267 Views
Learn how to find optimal solutions to large quadratic assignment problems using Personal Condor and Computational Grid technology. Discover the importance of QAP, its practical applications, and the perfect marriage of algorithm and platform for efficient computations. Explore unique strategies like branch-and-bound, Frank-Wolfe Algorithm, and leveraging Condor for parallel computing. See how the innovative approach can tackle complex numerical problems effectively.
E N D
Using Personal Condor toSolve Quadratic AssignmentProblems Jeff Linderoth Axioma, Inc. jlinderoth@axiomainc.com
Partners in Crime Kurt Anstreicher Nate Brixius University of Iowa Jean-Pierre Goux MCS Division, ANL LOTS of people in this room! University of Wisconsin
Our Mission • Find the best possible solution to large quadratic assignment problem (QAP) instances • Prove that the solution is indeed optimal • Show how to exploit the Computational Grid offered by Personal Condor to make it happen
What’s a QAP? • Can be thought of as a facility location problem • The QAP is NP-REALLY-Hard • TSP: Solve n=13509 • QAP: Solve n=25
Q: Why Is This Important? • Answer #1: Practical applications • Facility Location • Hospital Design • Flight Instrument Layout • Answer #2: Similarity • Comparable to other practically important combinatorial optimization problems • TSP, MIP
The REAL Answer – It’s NOT! “The Journey Is The Reward” What can we learn about solving complex numerical problems on Computational Grids?
The Perfect Marriage + While my wife likes this slide, really it’s the QAP and Condor that make the perfect marriage!
Making the Perfect Marriage • Something Old • Something New • Something Borrowed • Something Blue
Something Old: • Branch-and-Bound • Bound • Solve “auxiliary” problem that gives a lower bound on the optimal solution to the problem • Any assignment of facilities to locations gives an upper bound on the optimal solution • What if lower bound < upper bound?
Branch • Divide-and-Conquer! • Recursively make problem smaller by assigning each facility to a fixed location • Without the bounding, this is complete enumeration. (n!) This is not “pleasantly parallel” computing!
Something New: • A convex quadratic programming relaxation • Solved with the Frank-Wolfe Algorithm*. • Each iteration is one linear assignment problem * Something VERY old
Something Borrowed: • With Condor it is easy to “borrow” CPU cycles • Call your friends and colleagues and flock with their Condor pools • Write an NPACI proposal and Glide-In to supercomputer resources • If all else fails (Condor/Globus not installed), hobble in!
Something Blue? • You could work until you’re blue in the face and not solve QAP instances* * My sincerest apologies for the terrible pun
The Holy Grail • We want to solve nug30! • Extrapolating results and using an idea of Knuth*, we conjecture that we will need roughly 10-15 years of CPU time • How can we be sure to use 10-15 years of CPU time somewhat efficiently? • We have the additional burden of working in Condor’s extremely dynamic environment! * Something Old
Making the Marriage Work • The MW runtime support library helps us cope with the dynamic nature of our platform • MW – Master Worker paradigm • Must deal with contention at the master • Search/ordering strategies at both master and worker are important! • Parallel Efficiency improves from 50% to 90% • Lots more details! • Paper available at www.optimization-online.org
Mission Accomplished! Solution Characteristics
The Ups & Downs • Human (read Jeff) error • Master compiled for <= 1000 workers • Condor schedd bug (Gasp!!!!) • Master shut down to fix NFS problems • Condor schedd bug • Human (read Jeff) error • Incorrect editing of configuration files resulting in many incorrect submissions
The Moral of the Story • A good wedding/marriage requires four key ingredients • There were also four key ingredients to solving nug30 • Powerful mathematics for producing a lower bound • Innovative branching techniques • An EXTREMELY powerful computing platform • “Marrying” the algorithm to the platform in an appropriate manner
The TRUE Moral • It is possible to do complex numerical calculations on the Computational Grid using Condor! • It opens the doors to attacking heretofore unsolved problems! • http://www.mcs.anl.gov/metaneos