CUG 2009 May 7, 2009 * National Center for Computational Sciences + - - PowerPoint PPT Presentation

cug 2009
SMART_READER_LITE
LIVE PREVIEW

CUG 2009 May 7, 2009 * National Center for Computational Sciences + - - PowerPoint PPT Presentation

Solution of Mixed-Integer Programming Problems on the XT5 Rebecca J. Hartman-Baker * Ingrid K. Busch + Michael R. Hilliard + Richard S. Middleton + Michael S. Schultze + Oak Ridge National Laboratory CUG 2009 May 7, 2009 * National Center for


slide-1
SLIDE 1

Managed by UT-Battelle for the Department of Energy

Rebecca J. Hartman-Baker* Ingrid K. Busch+ Michael R. Hilliard+ Richard S. Middleton+ Michael S. Schultze+ Oak Ridge National Laboratory

Solution of Mixed-Integer Programming Problems on the XT5

*National Center for Computational Sciences +Center for Transportation Analysis

CUG 2009

May 7, 2009

slide-2
SLIDE 2

2 Managed by UT-Battelle for the Department of Energy

Outline

  • Motivation
  • Problem Formulation

– Linear Programming – Mixed-Integer Linear Programming

  • Problem Solution

– Linear Programming – Mixed-Integer Linear Programming – Parallelization of MILP solvers

  • Existing MILP Solvers
  • Results
  • Future Work
slide-3
SLIDE 3

3 Managed by UT-Battelle for the Department of Energy

Motivation

  • Mixed-integer linear programs arise in many

applications

– Logistics – Supply-chain analysis – Data mining

  • Problems that restrict some solution

variables to integer values

– E.g., can’t place 0.6 biorefineries

slide-4
SLIDE 4

4 Managed by UT-Battelle for the Department of Energy

Linear Programming

  • Optimization problem in which objective

function and constraints are linear functions

  • f unknowns

min cT x subject to Ax ≤ b

slide-5
SLIDE 5

5 Managed by UT-Battelle for the Department of Energy

Mixed-Integer Linear Programming

  • Linear program in which some variables

restricted to integer values min cT x subject to Ax ≤ b, x j ∈ Z ∀j ∈ D

D = set of indices of integer variables in x

slide-6
SLIDE 6

6 Managed by UT-Battelle for the Department of Energy

Solving Linear Programs

  • Simplex method

– Iteratively examine all vertices of polytope – Worst-case performance (n variables, m constraints): – Pathological examples exist but average performance O(min{(m-n)2, n2})

n m      

slide-7
SLIDE 7

7 Managed by UT-Battelle for the Department of Energy

Solving Mixed-Integer Linear Programs (MILPs)

  • MILPs are NP-

complete – use heuristics

  • Solvers rely on

branching concept

  • Combine branching

with means to compute lower bounds, to develop branch and bound method

slide-8
SLIDE 8

8 Managed by UT-Battelle for the Department of Energy

Branch and Bound

  • Improve upper and lower bounds by

systematic bounding and branching of subproblems

  • Use relaxation of MILP to LP as bounding

function

  • Eliminate nonviable pieces of domain by

applying bounds

  • Systematically search domain

– Best-first search (smallest lower bounds first) – Depth-first search (deepest branch first)

slide-9
SLIDE 9

9 Managed by UT-Battelle for the Department of Energy

Branch and Cut

  • Lower bound

generated by LP relaxation often too loose for efficient solution

  • Improve bound by

adding valid inequalities to problem as computation proceeds

slide-10
SLIDE 10

10 Managed by UT-Battelle for the Department of Energy

Parallelization of MILP Solvers

  • Algorithm can be broken into 3 parts

– Ramp-Up – Search and Process – Ramp-Down

slide-11
SLIDE 11

11 Managed by UT-Battelle for the Department of Energy

Ramp-Up Phase

  • Break feasible region into enough pieces for

all processes to share

  • Uninvolved processors are idle
  • Can occupy uninvolved processors with

auxiliary tasks such as preprocessing and computation of upper bounds, but may not be worth time

  • Ideally, shorten ramp-up phase
  • No good ramp-up acceleration techniques

developed

slide-12
SLIDE 12

12 Managed by UT-Battelle for the Department of Energy

Search and Process Phase

  • Search and process branch nodes, and use

and share info (knowledge management)

  • Two approaches

– Centralized control: manager-worker paradigm, not scalable, but clearer global picture of problem – Decentralized control: more scalable, local hubs serve as local centralized control, may perform more work

  • Search strategy must be considered in terms
  • f global and local scope
slide-13
SLIDE 13

13 Managed by UT-Battelle for the Department of Energy

Ramp-Down Phase

  • Symmetric to ramp-up phase
  • Face similar issues
  • Generally ignored but can lead to serious

scalability issues

slide-14
SLIDE 14

14 Managed by UT-Battelle for the Department of Energy

Existing MILP Solvers: Commercial

  • CPLEX

– Leading commercial package – Shared-memory parallel version available – ParaLEX, distributed memory version, developed by researchers, and shows limited promise

  • Gurobi

– Just released (Spring 2009) – Parallelizes across multicore processors

slide-15
SLIDE 15

15 Managed by UT-Battelle for the Department of Energy

Existing MILP Solvers: Open Source

  • COIN-OR

– Repository of operations research-related open source software – Repository includes SYMPHONY and CHiPPS – CHiPPS contains BLIS, distributed parallel MILP solver

  • PICO

– Distributed parallel package – Capable of scaling to thousands of processors

slide-16
SLIDE 16

16 Managed by UT-Battelle for the Department of Energy

BLIS Parallelization Strategy

  • Decentralized approach
  • Global list of candidate nodes spread across

all processes

  • Every process selects nodes from local pool
  • Load balancing uses 3-level master/hub/

worker paradigm

slide-17
SLIDE 17

17 Managed by UT-Battelle for the Department of Energy

PICO Parallelization Strategy

  • Hybrid knowledge management scheme,

similar to BLIS

  • Idle processes given work from
  • verburdened processes by hub processes
  • Communication occurs between hub and its

workers and between hubs

slide-18
SLIDE 18

18 Managed by UT-Battelle for the Department of Energy

Results

  • Two sets of test problems run on Jaguar

Cray XT5 at ORNL

  • Standard Test Problems

– Problems of varying sizes that came with BLIS distribution – 100-7200 unknowns, 90-1600 constraints

  • Canadian Cities Problems

– Placement of facilities in Canadian cities – 26,000-2.4 million unknowns and constraints

slide-19
SLIDE 19

19 Managed by UT-Battelle for the Department of Energy

Results: Standard Test Problems

BLIS

!" !#" !##" !###" !####" !$%" &'" ($" !&" %" '" $"

!"##$%&'($)*(+,-.*/$ 01'2(3$,4$53,+(**,3*$

)*+#,-./0" 1233,-./0" 1*2405!-./0" 67-&#-$#-(-./0"

PICO

!"#$ #$ #!$ #!!$ #!!!$ #!!!!$ %#&$ &%'$ #&($ ')$ *&$ #'$ ($ )$ &$

!"##$%&'($)*(+,-.*/$ 01'2(3$,4$53,+(**,3*$

+,-!%"./0$ 1233%"./0$ 1,2405#"./0$ 4260&"./0$ 7,8"./0$ 0/9(,-"./0$ :/.&"./0$

slide-20
SLIDE 20

20 Managed by UT-Battelle for the Department of Energy

Results: Standard Test Problems

!" !#" !##" !###" !####" $!%" %$&" !%'" &(" )%" !&" '" (" %"

!"##$%&'($)*(+,-.*/$ 01'2(3$,4$53,+(**,3*$

*+,#$"-./012" *+,#$"-30452" 6+789:!"-./012" 6+789:!"-30452"

slide-21
SLIDE 21

21 Managed by UT-Battelle for the Department of Energy

Results: Canadian Cities

BLIS

!"#$ #$ #!$ #!!$ #!!!$ #!!!!$ #%&$ '($ )%$ #'$ &$ ($ %$ !"##$%&'($)*(+,-.*/$ 01'2(3$,4$53,+(**,3*$ *+,-./01$ *2+1,34$ 56-01/01$ 5/037809:$ ;,<7=,>$ ;,-7</01$ ?7/8@:1:+$ A,B,<$ A01601$ C7DD7DD,2E,$ F0+/@G40+9$ H//,I,$ J2:3:8$ K:E71,$ K78@-016$ L,D9,/001$ L8,+30+02E@$ L2++:4$ M0+01/0$ N,1802B:+$ O716D0+$ O7117.:E$ P0+9$

PICO

!"#$ #$ #!$ #!!$ #!!!$ #!!!!$ %&'$ #%($ ')$ *%$ #'$ ($ )$ %$

!"##$%&'($)*(+,-.*/$ 01'2(3$,4$53,+(**,3*$

+,-./012$ +3,2-45$ 60147819:$ ;-<7=->$ ;-.7<012$ ?708@:2:,$ A-B-<$ A12C12$ D00-E-$ F3:4:8$ G:H72-$ G78@.12C$ I-J9-0112$ I8-,41,13H@$ I3,,:5$ K1,1201$ L72CJ1,$ L7227/:H$ M1,9$

slide-22
SLIDE 22

22 Managed by UT-Battelle for the Department of Energy

Results: Analysis

  • Some scalability for standard test problems
  • No scaling for Canadian cities problems

– Majority of compute time spent in ramp-up phase – No room to scale!

  • Both PICO and BLIS had trouble solving some

problems

– Segfaults, OOM, hangs – Insufficiently robust for petascale

  • In principle, parallel MILP solvers show promise;

in practice, need improvement

slide-23
SLIDE 23

23 Managed by UT-Battelle for the Department of Energy

Future Work

  • More code development needed
  • One idea: use existing parallel framework to

parallelize MILP solvers

– MADNESS (Multiscale Adaptive Numerical Environment for Scientific Simulation) good candidate – Use MADNESS to distribute branches across processes, paired with well-established branching and bounding/cutting methods

slide-24
SLIDE 24

24 Managed by UT-Battelle for the Department of Energy

Acknowledgments

  • This research was sponsored by the

Laboratory Directed Research and Development Program of Oak Ridge National Laboratory, managed by UT-Battelle, LLC, for the U.S. Department of Energy.

  • This research used resources of the National

Center for Computational Sciences at Oak Ridge National Laboratory, which is supported by the Office of Science of the U.S. Department of Energy under Contract

  • No. DE-AC05-00OR22725.
slide-25
SLIDE 25

25 Managed by UT-Battelle for the Department of Energy

Resources

  • BLIS

Available for download from http://www.coin-or.org/

  • PICO

Jonathan Eckstein, Cynthia A. Phillips and William

  • E. Hart, “PICO: An object-oriented framework for

parallel branch-and-bound,” in Proc Inherently Parallel Algorithms in Feasibility and Optimization and Their Applications, Elsevier Scientific Series

  • n Studies in Computational Mathematics, pp. 219
  • - 265, 2001.
slide-26
SLIDE 26

26 Managed by UT-Battelle for the Department of Energy

Resources

  • Books and articles about MILP

Steven G. Nash and Ariela Sofer, Linear and Non- Linear Programming, New York: McGraw-Hill, 1996.

  • T. Ralphs, ``Parallel Branch and Cut,'' in Parallel

Combinatorial Optimization, Wiley, 2006.

slide-27
SLIDE 27

27 Managed by UT-Battelle for the Department of Energy

Questions?