Presentation is loading. Please wait.

Presentation is loading. Please wait.

FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories.

Similar presentations


Presentation on theme: "FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories."— Presentation transcript:

1

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?

17

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

34

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


Download ppt "FATCOP: A Mixed Integer Program Solver Michael FerrisQun Chen University of Wisconsin-Madison Jeffrey Linderoth Argonne National Laboratories."

Similar presentations


Ads by Google