Download presentation
Presentation is loading. Please wait.
Published byFrancis Copeland Modified over 9 years ago
2
FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories
3
MIP formulation minimize c T x subject to Ax b l x u and some x j integer Problems are specified by application convenient format - GAMS, AMPL, or MPS
4
Branch-and-Bound Algorithm 0 Top node Integer infeasible Integer feasible incumbent = Z LP relaxation Z lp > Z LP infeasible 2 1 x f 1x f 0 3 4 x g 0x g 1
5
The “Seymour Problem” Set covering problem used in proof of four color theorem CPLEX 6.0 and Condor (2 option files) Running since June 23, 1999 Currently >340 days CPU time per job (7.9 million nodes; 1.5 million nodes)
6
FAT COP FAT - large # of processors –opportunistic environment (Condor) COP - Master Worker control –fault tolerant: task exit, host suspend –portable parallel programming Mixed Integer Program Solver –Branch and Bound: LP relaxations –MPS file, AMPL or GAMS input
7
Condor and PVM Condor: a distributed resource management system Manages large heterogeneous clusters of UNIX workstations Design motivated to use ‘idle’ capacity for long-running, computation-intensive jobs PVM (parallel virtual machine): software allowing heterogeneous network of computers to appear as a single concurrent computational resource Unified framework for parallel program development PVM and Condor perfectly matched Framework to run parallel applications in a distributed opportunistic environment
8
condor master worker Condor Pool startd condor INTERNET shadow (global RM) FATCOP Master pvmd FATCOP worker pvmd starter (local RM)
9
GAMSAMPLMPS FATCOP MWCondor-PVM CPLEX OSL SOPLEX MINOS... Application Problem PVMInternet Protocol LPSOLVER INTERFACE
10
Problem Setup Create Work Pool Request Host Host Add Sub Solved Error Receive Solve Report Send Data Send Problem Request Host Clean Up Problem Remove Prob Update Pool Send New Problem Operation
11
FATCOP: Single Job
12
solution Message queue Host suspend Master Host deletion Task exit Host add Host resume............ Condor pool MIP data subproblem Condor Central Manager worker Select machines worker worker Host add requests
13
FATCOP Daily Log
14
FATCOP Weekly Log
15
FATCOP Monthly Log
16
MIP Technology Each task is a subtree, time limit –Diving heuristic –Cutting planes (global) –Pseudocosts –Preprocessing Master checkpoint Worker has state, how to share info?
18
TEST on MIPLIB problems MIPLIB:57 problems, varying size and difficulty (several not proven optimal) Solved by FATCOP sequential solver:41 (72%) Solved by FATCOP: 46 (80%)
19
MIPLIB Problems: Cuts
20
FATCOP: sequential/parallel
21
FATCOP on real problems
22
FATCOP vs CPLEX
23
Machine utilization For one run of “NSA” problem, used 122 machines (linux, intel/solaris, sun), 26 from UNM, 11 from NCSA. –Average number of machines in use 111 –Wall clock time - 31.8 hrs –Total worker cpu time - 3014 hrs –Total worker suspension time - 40 hrs
24
Simple Interfaces Write the heuristic code in C/C++ –Perform heuristics at root node –Rounding/reformulation at any node –Searching heuristics at integer nodes Compile and copy the object file to the solver directory Turn on option “perform heuristics”
25
Without Rounding Heuristic
26
With Rounding Heuristic
27
Set Covering Problem min c T x s.t.Ex>=e and x j = 0 or 1 E {0,1} 300 600,c i U(1,20) Rounding heuristic every 10 iterations Do “good solutions” early in the process help?
28
Product Design Problem Maximize market share by choosing a product profile (or other objectives) –Product has K attributes, and each attribute has L levels, N customers Important marketing problem NP hard, but good heuristics –How good are these solutions?
29
Product Design: MIP + GA
30
K LFATCOP (no heur)FATCOP(with heur)CPLEX 5 53,4319133,233 6 6 33,71511,18027,207 7 7305,34046,395239,973 Tree size for the problem with N=50
31
MIP Solution for Product Design using FATCOP Run FATCOP parallel solver Incorporate following user defined heuristics: –Upper bound (NP/GA heuristics) –Priority Branching (Greedy heuristic) –Reformulation (both in root and subtrees)
32
Product design - optimality K=12, L=3, N=200 Use FATCOP parallel solver Turn on all user defined heuristics Provable optimal solution found 10.1 18,115,883 75The FATCOP job lasted 10.1 hours, evaluated 18,115,883 nodes and utilized 75 machines on average
33
Product design - practicality K=12, L=3, N=200 Use FATCOP sequential solver Turn on all user defined heuristics Prove the solution found by heuristics is within 20% gap in about 90,000 nodes. Run CPLEX MIP solver for comparison
35
Back to Seymour Schmieta, Pataki, Linderoth and Ferris –explored to depth 8 in tree –applied cuts at each of these 256 nodes –solved in parallel, using whatever resources available (CPLEX, FATCOP,...) Problem solved with over 1 year CPU –over 10 million nodes, 11,000 hours
36
Seymour Node 319 FATCOP – 47.0 hrs with 2,887,808 nodes –average number of machine used is 108 CPLEX –12 days, 10 hrs with 356,600 nodes –single machine, clique cuts useful
37
Future Work How to use heuristics to guide node selection and branching variable selection? Fly-in FATCOP FATCOP under AMPL Branch and Cut algorithm www.cs.wisc.edu/math-prog/tech-reports
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.