Using Personal Condor to Solve Quadratic Assignment Problems Jeff Linderoth Axioma, Inc.

Slides:



Advertisements
Similar presentations
Markov Decision Process
Advertisements

SLA-Oriented Resource Provisioning for Cloud Computing
Algorithms + L. Grewe.
Progress in Linear Programming Based Branch-and-Bound Algorithms
Algorithms Recurrences. Definition – a recurrence is an equation or inequality that describes a function in terms of its value on smaller inputs Example.
Convex Optimization Chapter 1 Introduction. What, Why and How  What is convex optimization  Why study convex optimization  How to study convex optimization.
Introduction to Linear and Integer Programming
Condor and GridShell How to Execute 1 Million Jobs on the Teragrid Jeffrey P. Gardner - PSC Edward Walker - TACC Miron Livney - U. Wisconsin Todd Tannenbaum.
Slide 1 Search: Advanced Topics Jim Little UBC CS 322 – Search 5 September 22, 2014 Textbook § 3.6.
1 Lecture 5: Part 1 Performance Laws: Speedup and Scalability.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
1 Spreadsheet Modeling & Decision Analysis: A Practical Introduction to Management Science 3d edition by Cliff Ragsdale.
Author: David He, Astghik Babayan, Andrew Kusiak By: Carl Haehl Date: 11/18/09.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 22, 2010.
Spreadsheet Modeling & Decision Analysis A Practical Introduction to Management Science 6 th edition Cliff T. Ragsdale © 2011 Cengage Learning. All Rights.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
Fault-tolerant Adaptive Divisible Load Scheduling Xuan Lin, Sumanth J. V. Acknowledge: a few slides of DLT are from Thomas Robertazzi ’ s presentation.
High Performance Computing 1 Parallelization Strategies and Load Balancing Some material borrowed from lectures of J. Demmel, UC Berkeley.
CS 280 Data Structures Professor John Peterson. Project Questions? /CIS280/f07/project5http://wiki.western.edu/mcis/index.php.
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
Branch and Bound Algorithm for Solving Integer Linear Programming
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Hardness Results for Problems
A Grid-enabled Branch and Bound Algorithm for Solving Challenging Combinatorial Optimization Problems Authors: M. Mezmaz, N. Melab and E-G. Talbi Presented.
Analysis of Algorithms COMP171 Fall Analysis of Algorithms / Slide 2 Introduction * What is Algorithm? n a clearly specified set of simple instructions.
1 Combinatorial Problems in Cooperative Control: Complexity and Scalability Carla Gomes and Bart Selman Cornell University Muri Meeting March 2002.
Design and Analysis of Algorithms - Chapter 41 Divide and Conquer The most well known algorithm design strategy: 1. Divide instance of problem into two.
Integer programming Branch & bound algorithm ( B&B )
Operations Research Models
STRATEGIES INVOLVED IN REMOTE COMPUTATION
MA/CSSE 473 Day 03 Asymptotics A Closer Look at Arithmetic With another student, try to write a precise, formal definition of “t(n) is in O(g(n))”
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
1 Hyong-Mo Jeon Reliability Models for Facility Location with Risk Pooling ISE 2004 Summer IP Seminar Jul
Parallelism and Robotics: The Perfect Marriage By R.Theron,F.J.Blanco,B.Curto,V.Moreno and F.J.Garcia University of Salamanca,Spain Rejitha Anand CMPS.
Optimal n fe Tian-Li Yu & Kai-Chun Fan. n fe n fe = Population Size × Convergence Time n fe is one of the common used metrics to measure the performance.
ANTs PI Meeting, Nov. 29, 2000W. Zhang, Washington University1 Flexible Methods for Multi-agent distributed resource Allocation by Exploiting Phase Transitions.
Complexity of algorithms Algorithms can be classified by the amount of time they need to complete compared to their input size. There is a wide variety:
Chapter 3 Sec 3.3 With Question/Answer Animations 1.
DLS on Star (Single-level tree) Networks Background: A simple network model for DLS is the star network with a master-worker platform. It consists of a.
Parallel Optimization Tools for High Performance Design of Integrated Circuits WISCAD VLSI Design Automation Lab Azadeh Davoodi.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
Condor Project Computer Sciences Department University of Wisconsin-Madison Case Studies of Using.
Condor: High-throughput Computing From Clusters to Grid Computing P. Kacsuk – M. Livny MTA SYTAKI – Univ. of Wisconsin-Madison
Applications of Dynamic Programming and Heuristics to the Traveling Salesman Problem ERIC SALMON & JOSEPH SEWELL.
1 Lagrangean Relaxation --- Bounding through penalty adjustment.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Condor Project Computer Sciences Department University of Wisconsin-Madison Master/Worker and Condor.
Spreadsheet Modeling & Decision Analysis A Practical Introduction to Management Science 5 th edition Cliff T. Ragsdale.
Miron Livny Computer Sciences Department University of Wisconsin-Madison Condor-G: A Computation Management.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen Department of Computer Sciences University of Wisconsin-Madison Jeff Linderoth, Argonne.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
Jichuan Chang Computer Sciences Department University of Wisconsin-Madison MW – A Framework to Support.
Holding slide prior to starting show. Applications WG Jonathan Giddy
Solving Multistage Stochastic Linear Programs on the Computational Grid Jerry Shen June 8, 2004.
Branch and Bound Algorithms Present by Tina Yang Qianmei Feng.
1 Fault-Tolerant Mechanism for Hierarchical Branch and Bound Algorithm Université A/Mira de Béjaïa CEntre de Recherche sur l’Information Scientifique et.
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories.
1.2 Guidelines for strong formulations  Running time for LP usually depends on m and n ( number of iterations O(m), O(log n)). Not critically depend on.
&d1 Algorithms and networks Period 3, 2010/2011. &d2 Today Graphs and networks and algorithms: what and why? This course: organization Case introduction:
ALGORITHMS AND FLOWCHARTS. Why Algorithm is needed? 2 Computer Program ? Set of instructions to perform some specific task Is Program itself a Software.
Ch. Eick: Num. Optimization with GAs Numerical Optimization General Framework: objective function f(x 1,...,x n ) to be minimized or maximized constraints:
A Binary Linear Programming Formulation of the Graph Edit Distance Presented by Shihao Ji Duke University Machine Learning Group July 17, 2006 Authors:
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Campus Grid Technology Derek Weitzel University of Nebraska – Lincoln Holland Computing Center (HCC) Home of the 2012 OSG AHM!
Computable Functions.
Topic:- ALGORITHM Incharge Faculty – Lokesh Sir.
Algorithm Analysis CSE 2011 Winter September 2018.
Algorithm Analysis (not included in any exams!)
Algorithms: the big picture
Scheduling for MW applications
Presentation transcript:

Using Personal Condor to Solve Quadratic Assignment Problems Jeff Linderoth Axioma, Inc.

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 1. Find the best possible solution to large quadratic assignment problem (QAP) instances 2. Prove that the solution is indeed optimal 3. 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 1. 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 VERY old Something New: A convex quadratic programming relaxation Solved with the Frank-Wolfe Algorithm *. Each iteration is one linear assignment problem

Something Borrowed: With Condor it is easy to “borrow” CPU cycles 1. Call your friends and colleagues and flock with their Condor pools 2. Write an NPACI proposal and Glide-In to supercomputer resources 3. If all else fails (Condor/Globus not installed), hobble in!

My Personal Grid NumberTypeLocationMethod 414Intel/LinuxArgonneHobble-In 96SGI/IrixArgonneGlide-In 1024SGI/IrixNCSAGlide-In 16Intel/LinuxNCSAFlocked 45SGI/IrixNCSAFlocked 246Intel/LinuxWisconsinFlocked 146Intel/SolarisWisconsinFlocked 133Sun/SolarisWisconsinFlocked 190Intel/LinuxGeorgia TechFlocked 94Intel/SolarisGeorgia TechFlocked 54Intel/LinuxItaly (INFN)Flocked 25Intel/LinuxNew Mexico (AHPCC)Flocked 5Intel/LinuxColumbia U.Flocked 10Sun/SolarisColumbia U.Flocked 12Sun/SolarisNorthwesternFlocked

* My sincerest apologies for the terrible pun Something Blue? You could work until you’re blue in the face and not solve QAP instances * InstanceArch.Wall TimePersonDate Nug22Ultra 360MHz56 HoursHahn1999 Nug24Ultra 360MHz9 daysHahn1999 Nug25Ultra 360MHz66 daysHahn1999 Nug Cenju-39 daysMarzetta1998 Nug Paragon30 daysMarzetta1998

The Holy Grail We want to solve nug30! Extrapolating results and using an idea of Knuth *, we conjecture that we will need roughly years of CPU time How can we be sure to use 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

Mission Accomplished! Wall Clock Time6:22:04:31 Avg. # Machines653 Max. # Machines1007 CPU TimeApprox. 11 years Nodes11,892,208,412 LAPs574,254,156,532 Parallel Efficiency92% Solution Characteristics

Number of Workers

The Ups & Downs 1.Human (read Jeff) error Master compiled for <= 1000 workers 2.Condor schedd bug (Gasp!!!!) 3.Master shut down to fix NFS problems 4.Condor schedd bug 5.Human (read Jeff) error Incorrect editing of configuration files resulting in many incorrect submissions

Number of Workers on June 12

Number of Workers at Three Biggest Contributors

Number of Workers at Three Next Largest Contributors

KLAPS

The Moral of the Story A good wedding/marriage requires four key ingredients There were also four key ingredients to solving nug30 1. Powerful mathematics for producing a lower bound 2. Innovative branching techniques 3. An EXTREMELY powerful computing platform 4. “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!