SOLVING BUSINESS PROBLEMS WITH SAS ANALYTICS AND OPTMODEL

Size: px
Start display at page:

Download "SOLVING BUSINESS PROBLEMS WITH SAS ANALYTICS AND OPTMODEL"

Transcription

1 SOLVING BUSINESS PROBLEMS WITH SAS ANALYTICS AND OPTMODEL INFORMS CONFERENCE ON BUSINESS ANALYTICS AND OPERATIONS RESEARCH HYATT REGENCY GRAND CYPRESS ORLANDO, FL TECHNOLOGY WORKSHOP APRIL 10, 2016

2 SAS ANALYTICS AND OPTMODEL WHAT WE LL COVER Background: SAS and SAS Analytics Introductory OPTMODEL Example: Political Redistricting Pharmaceutical Launch Revenue Optimization Product Formulation Optimization Pricing Optimization Technical Overview and Future Features

3 BACKGROUND: SAS AND SAS ANALYTICS ED HUGHES

4 SAS ANALYTICS AND OPTMODEL SAS BACKGROUND SAS Institute Inc. founded in 1976 SAS users, partners, and offices around the world Broad range of integrated analytic products Data access and integration Data mining Statistical analysis Forecasting and econometrics Text analytics Optimization, simulation, and scheduling

5 SAS ANALYTICS AND OPTMODEL OPTIMIZATION WITH SAS/OR OPTMODEL: algebraic optimization modeling language Linear Programming: Primal, dual, network simplex; interior point; concurrent Mixed Integer Linear Programming: Branch and cut: heuristics, conflict search, option tuning Decomposition algorithm (MILP and LP) Quadratic Programming: Interior point Nonlinear Programming: Active set; interior point; concurrent; multistart algorithm

6 SAS ANALYTICS AND OPTMODEL OPTIMIZATION WITH SAS/OR Network Algorithms 11 diagnostic and optimization algorithms Constraint Logic Programming Solve CSPs (general and scheduling) Local Search Hybrid parallel approach; multiple algorithms

7 SAS ANALYTICS AND OPTMODEL SAMPLE CUSTOMER PROJECTS: OPTIMIZATION Television advertising optimization (network) Chemical mixture optimization (Procter & Gamble) Optimal ATM replenishment (DBS Singapore) Public water management (national utilities agency) Optimal loan assignment (bank) Pharmaceutical launch revenue optimization

8 SAS ANALYTICS AND OPTMODEL RECENT CUSTOMER PROJECTS: SIMULATION Hospital room/bed assignment Neonatal intensive care unit (Duke Children s Hospital) Prison population planning (NC Sentencing Commission) Digital parts distribution (parts distributor/retailer)

9 SAS ANALYTICS AND OPTMODEL OPTIMIZATION-DRIVEN SOLUTIONS SAS Marketing Optimization SAS Size Optimization SAS Service Parts Optimization SAS for Service Operations Optimization SAS Risk Management for Banking, Insurance SAS Markdown Optimization SAS Credit Scoring for Banking SAS Customer Link Analytics SAS Fraud Framework SAS Inventory Optimization Workbench SAS Launch Revenue Optimization

10 IDC WORLDWIDE ADVANCED AND PREDICTIVE ANALYTICS SOFTWARE 2014 VENDOR SHARES Source: IDC, Worldwide Advanced and Predictive Analytics Software Market Shares, 2014: The Rise of the Long Tail (Doc # )., July 2015.

11 GARTNER: MAGIC QUADRANT FOR ADVANCED ANALYTIC PLATFORMS Gartner Magic Quadrant for Advanced Analytics Platforms by Lisa Kart, Gareth Herschel, Alexander Linden, Jim Hare 9 February This graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from SAS. Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.

12 INTRODUCTORY OPTMODEL EXAMPLE: POLITICAL REDISTRICTING ROB PRATT

13 GRAPH PARTITIONING PROBLEM DESCRIPTION Given undirected graph, node weights, positive integer k, target t [l, u] Partition node set into k subsets, each with total weight within [l, u] Usual objective: minimize sum of edge weights between parts of partition Our objective: find most balanced partition Minimize total absolute deviation of subset weight from target (L 1 norm) Minimize maximum absolute deviation of subset weight from target (L norm) Connectivity constraints: each of the k resulting induced subgraphs must be connected

14 GRAPH PARTITIONING MOTIVATION Dennis E. Shasha, Doctor Ecco s Cyberpuzzles (2002) Political districting Advanced Analytics and Optimization Services consulting engagement Assigning service workers to customer regions INFORMS OR Exchange posting (Jan. 2013) Forestry

15 GRAPH PARTITIONING MAP FROM SHASHA (2002)

16 GRAPH PARTITIONING MAP REPRESENTED AS GRAPH

17 GRAPH PARTITIONING NODE WEIGHTS (POPULATIONS)

18 GRAPH PARTITIONING FEASIBLE SOLUTION FOR 14 CLUSTERS, BOUNDS ± 100

19 GRAPH PARTITIONING SOLUTION APPROACHES Compact MILP formulation with binary variables, nonnegative flow variables, flow balance constraints Row generation, dynamically excluding disconnected subsets Column generation, dynamically generating connected subsets Column generation, statically generating all possible connected subsets

20 GRAPH PARTITIONING PROC OPTMODEL CODE: MILP SOLVER Master MILP problem: Given all feasible subsets, solve cardinality constrained set partitioning problem 1. /* master problem: partition nodes into connected subsets, minimizing deviation from target */ 2. /* UseSubset[s] = 1 if subset s is used, 0 otherwise */ 3. var UseSubset {SUBSETS} binary; /* L_1 norm */ 6. num subset_population {s in SUBSETS} = sum {i in NODES_s[s]} p[i]; 7. num subset_deviation {s in SUBSETS} = abs(subset_population[s] - target); 8. min Objective1 = sum {s in SUBSETS} subset_deviation[s] * UseSubset[s]; /* each node belongs to exactly one subset */ 11. con Partition {i in NODES}: 12. sum {s in SUBSETS: i in NODES_s[s]} UseSubset[s] = 1; /* use exactly the allowed number of subsets */ 15. con Cardinality: 16. sum {s in SUBSETS} UseSubset[s] = num_clusters; problem Master include 19. UseSubset Objective1 Partition Cardinality;

21 GRAPH PARTITIONING STATIC COLUMN GENERATION 1. Generate all possible connected subsets with weights close enough to target Relax connectivity and find all possible subsets Postprocess to filter out disconnected subsets 2. Solve cardinality constrained set partitioning master problem

22 GRAPH PARTITIONING FEATURES USED IN PROC OPTMODEL MILP solver to compute maximum subset size for each node (COFOR loop) Network solver (all-pairs shortest path) to generate valid cuts that encourage connectivity Constraint programming solver to generate subsets (multiple solutions) Network solver (connected components) to check connectivity (COFOR loop) MILP solver to solve set partitioning problem

23 GRAPH PARTITIONING COLUMN GENERATION SUBPROBLEM Given node populations p i and target population range [l, u] Find all connected node subsets close to target population Binary variable x i indicates whether node i appears in subset Range constraint l i N p i x i u Connectivity hard to impose directly, so relax (but do not ignore)

24 GRAPH PARTITIONING NODE SUBSET 1, 2, 3, 4, 5 SATISFIES POPULATION BOUNDS, BUT IS DISCONNECTED

25 GRAPH PARTITIONING VALID CUTS FOR NODES TOO FAR APART m i : max # nodes among feasible subsets that contain node i If shortest path distance d ij min m i, m j then x i + x j 1

26 GRAPH PARTITIONING PROC OPTMODEL CODE: MILP SOLVER 1. /* maxnodes[i] = max number of nodes among feasible subsets that contain node i */ 2. num maxnodes {NODES}; /* UseNode[i] = 1 if node i is used, 0 otherwise */ 5. var UseNode {NODES} binary; max NumUsed = sum {i in NODES} UseNode[i]; con PopulationBounds: 10. target - deviation_ub <= sum {i in NODES} p[i] * UseNode[i] <= target + deviation_ub; problem MaxNumUsed include 13. UseNode NumUsed PopulationBounds; 14. use problem MaxNumUsed; put Finding max number of nodes among feasible subsets that contain node i... ; 17. cofor {i in NODES} do; 18. put i=; 19. fix UseNode[i] = 1; 20. solve with MILP / loglevel=0 logfreq=0; 21. maxnodes[i] = round(numused.sol); 22. unfix UseNode; 23. end;

27 GRAPH PARTITIONING PROC OPTMODEL CODE: NETWORK SOLVER 1. /* distance[i,j] = shortest path distance (number of edges) from i to j */ 2. num distance {NODES, NODES}; 3. /* num one {EDGES} = 1; */ 4. put Finding all-pairs shortest path distances... ; 5. solve with network / 6. links = (include=edges /*weight=one*/) 7. shortpath 8. out = (spweights=distance);

28 GRAPH PARTITIONING VALID CUTS FOR SMALL-POPULATION NODES If x i = 1 and p i < l then x j = 1 for some neighbor j of i x i jεni x j

29 GRAPH PARTITIONING VALID CUTS FOR SMALL-POPULATION SETS More generally, if x i = 1 for some i S N such that j S p j < l then x k = 1 for some neighbor k in moat around S x i kε( j N j) S x k Known as ring inequalities in the literature

30 GRAPH PARTITIONING PROC OPTMODEL CODE: CONSTRAINT PROGRAMMING SOLVER 1. set NODE_PAIRS = {i in NODES, j in NODES: i < j}; /* cannot have two nodes i and j that are too far apart */ 4. con Conflict {<i,j> in NODE_PAIRS: distance[i,j] >= min(maxnodes[i],maxnodes[j])}: 5. UseNode[i] + UseNode[j] <= 1; /* if UseNode[i] = 1 and p[i] < target - deviation_ub 8. then UseNode[j] = 1 for some neighbor j of i */ 9. con Moat1 {i in NODES: p[i] < target - deviation_ub}: 10. UseNode[i] <= sum {j in NEIGHBORS[i]} UseNode[j]; /* if (UseNode[i] = 1 or UseNode[j] = 1) and p[i] + p[j] < target - deviation_ub 13. then UseNode[k] = 1 for some neighbor k in moat around {i,j} */ 14. con Moat2_i {<i,j> in NODE_PAIRS: p[i] + p[j] < target - deviation_ub}: 15. UseNode[i] <= sum {k in (NEIGHBORS[i] union NEIGHBORS[j]) diff {i,j}} UseNode[k]; 16. con Moat2_j {<i,j> in NODE_PAIRS: p[i] + p[j] < target - deviation_ub}: 17. UseNode[j] <= sum {k in (NEIGHBORS[i] union NEIGHBORS[j]) diff {i,j}} UseNode[k]; problem Subproblem include 20. UseNode PopulationBounds Conflict Moat1 Moat2_i Moat2_j; 21. use problem Subproblem; put Solving CLP subproblem... ; 24. solve with CLP / findallsolns; 25. /* use _NSOL_ and.sol[s] to access multiple solutions */ 26. SUBSETS = 1.._NSOL_; 27. for {s in SUBSETS} NODES_s[s] = {i in NODES: UseNode[i].sol[s] > 0.5};

31 GRAPH PARTITIONING CONSTRAINT PROGRAMMING SOLVER LOG NOTE: Problem generation will use 4 threads. NOTE: The problem has 66 variables (0 free, 0 fixed). NOTE: The problem has 66 binary and 0 integer variables. NOTE: The problem has 5123 linear constraints (5122 LE, 0 EQ, 0 GE, 1 range). NOTE: The problem has linear constraint coefficients. NOTE: The problem has 0 nonlinear constraints (0 LE, 0 EQ, 0 GE, 0 range). NOTE: All possible solutions have been found. NOTE: Number of solutions found = CARD(SUBSETS)=4472

32 GRAPH PARTITIONING PROC OPTMODEL CODE: NETWORK SOLVER 1. /* check connectivity */ 2. set NODES_THIS; 3. num component {NODES_THIS}; 4. set DISCONNECTED init {}; 5. cofor {s in SUBSETS} do; 6. put s=; 7. NODES_THIS = NODES_s[s]; 8. solve with network / 9. links = (include=edges) 10. subgraph = (nodes=nodes_this) 11. concomp 12. out = (concomp=component); 13. if or {i in NODES_THIS} (component[i] > 1) 14. then DISCONNECTED = DISCONNECTED union {s}; 15. end; 16. SUBSETS = SUBSETS diff DISCONNECTED;

33 GRAPH PARTITIONING NETWORK SOLVER LOG s=1 NOTE: The SUBGRAPH= option filtered 145 elements from EDGES. NOTE: The number of nodes in the input graph is 4. NOTE: The number of links in the input graph is 3. NOTE: Processing connected components. NOTE: The graph has 1 connected component. NOTE: Processing connected components used 0.00 (cpu: 0.00) seconds.... s=28 NOTE: The SUBGRAPH= option filtered 144 elements from EDGES. NOTE: The number of nodes in the input graph is 6. NOTE: The number of links in the input graph is 4. NOTE: Processing connected components. NOTE: The graph has 2 connected components. NOTE: Processing connected components used 0.00 (cpu: 0.00) seconds.... s=4472 NOTE: The SUBGRAPH= option filtered 144 elements from EDGES. NOTE: The number of nodes in the input graph is 5. NOTE: The number of links in the input graph is 4. NOTE: Processing connected components. NOTE: The graph has 1 connected component. NOTE: Processing connected components used 0.00 (cpu: 0.00) seconds. CARD(SUBSETS)=2771

34 GRAPH PARTITIONING PROC OPTMODEL CODE: MILP SOLVER 1. /* master problem: partition nodes into connected subsets, minimizing deviation from target */ 2. /* UseSubset[s] = 1 if subset s is used, 0 otherwise */ 3. var UseSubset {SUBSETS} binary; /* L_1 norm */ 6. num subset_population {s in SUBSETS} = sum {i in NODES_s[s]} p[i]; 7. num subset_deviation {s in SUBSETS} = abs(subset_population[s] - target); 8. min Objective1 = sum {s in SUBSETS} subset_deviation[s] * UseSubset[s]; /* each node belongs to exactly one subset */ 11. con Partition {i in NODES}: 12. sum {s in SUBSETS: i in NODES_s[s]} UseSubset[s] = 1; /* use exactly the allowed number of subsets */ 15. con Cardinality: 16. sum {s in SUBSETS} UseSubset[s] = num_clusters; problem Master include 19. UseSubset Objective1 Partition Cardinality; use problem Master; 24. put Solving master problem, minimizing Objective1... ; 25. solve;

35 GRAPH PARTITIONING MILP SOLVER LOG NOTE: Problem generation will use 4 threads. NOTE: The problem has 2771 variables (0 free, 0 fixed). NOTE: The problem has 2771 binary and 0 integer variables. NOTE: The problem has 67 linear constraints (0 LE, 67 EQ, 0 GE, 0 range). NOTE: The problem has linear constraint coefficients. NOTE: The problem has 0 nonlinear constraints (0 LE, 0 EQ, 0 GE, 0 range). NOTE: The OPTMODEL presolver is disabled for linear problems. NOTE: The MILP presolver value AUTOMATIC is applied. NOTE: The MILP presolver removed 1092 variables and 0 constraints. NOTE: The MILP presolver removed 7089 constraint coefficients. NOTE: The MILP presolver modified 0 constraint coefficients. NOTE: The presolved problem has 1679 variables, 67 constraints, and constraint coefficients. NOTE: The MILP solver is called. NOTE: The parallel Branch and Cut algorithm is used. NOTE: The Branch and Cut algorithm is using up to 4 threads. Node Active Sols BestInteger BestBound Gap Time NOTE: The MILP solver added 40 cuts with 2752 cut coefficients at the root % 3 NOTE: Optimal. NOTE: Objective = 124.

36 GRAPH PARTITIONING SOLUTION FOR 14 CLUSTERS, BOUNDS ± 100, OBJECTIVE1

37 GRAPH PARTITIONING PROC OPTMODEL CODE: MILP SOLVER 1. /* L_infinity norm */ 2. var MaxDeviation >= 0; 3. min Objective2 = MaxDeviation; 4. con MaxDeviationDef {s in SUBSETS}: 5. MaxDeviation >= subset_deviation[s] * UseSubset[s]; put Solving master problem, minimizing Objective2... ; 8. MaxDeviation = max {s in SUBSETS} (subset_deviation[s] * UseSubset[s].sol); 9. solve with MILP / primalin;

38 GRAPH PARTITIONING MILP SOLVER LOG NOTE: Problem generation will use 4 threads. NOTE: The problem has 2772 variables (0 free, 0 fixed). NOTE: The problem has 2771 binary and 0 integer variables. NOTE: The problem has 2838 linear constraints (0 LE, 67 EQ, 2771 GE, 0 range). NOTE: The problem has linear constraint coefficients. NOTE: The problem has 0 nonlinear constraints (0 LE, 0 EQ, 0 GE, 0 range). NOTE: The MILP presolver value AUTOMATIC is applied. NOTE: The MILP presolver removed 1092 variables and 2733 constraints. NOTE: The MILP presolver removed constraint coefficients. NOTE: The MILP presolver added 1798 constraint coefficients. NOTE: The MILP presolver modified 329 constraint coefficients. NOTE: The presolved problem has 1680 variables, 105 constraints, and constraint coefficients. NOTE: The MILP solver is called. NOTE: The parallel Branch and Cut algorithm is used. NOTE: The Branch and Cut algorithm is using up to 4 threads. Node Active Sols BestInteger BestBound Gap Time % 2 NOTE: The MILP presolver is applied again % % 3 NOTE: Optimal. NOTE: Objective = 29.

39 GRAPH PARTITIONING SOLUTION FOR 14 CLUSTERS, BOUNDS ± 100, OBJECTIVE2

40 GRAPH PARTITIONING PAPER SAS Global Forum 2015 paper: Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems

41 PHARMACEUTICAL LAUNCH REVENUE OPTIMIZATION SCOTT SHULER

42 PRODUCT FORMULATION OPTIMIZATION IVAN OLIVEIRA

43 PRICING OPTIMIZATION SCOTT SHULER

44 TECHNICAL OVERVIEW AND FUTURE FEATURES PATRICK KOCH

45 OPTIMIZATION IN MACHINE LEARNING OVERVIEW 1. Training Predictive Models Optimization problem Parameters opt and train 2. Tuning Predictive Models Manual, grid search, optimization Optimization challenges 3. Distributed / parallel processing 4. Sample results

46 OPTIMIZATION IN MACHINE LEARNING PREDICTIVE MODELS Transformation of relevant data to high quality descriptive and predictive models x 1 w ij Ex.: Neural Network How to determine weights, activation functions? x 2 x 3 w jk f 1 (x) f 2 (x) How to determine model configuration? x 4... f m (x) x n Input layer Hidden layer Output layer

47 OPTIMIZATION IN MACHINE LEARNING MODEL TRAINING OPTIMIZATION PROBLEM Objective Function f w = 1 n i=1 n L w; x i, y i + λ 1 w 1 + λ 2 2 w 2 2 Loss, L(w; x i, y i ), for observation (x i, y i ) and weights, w Stochastic Gradient Descent (SGD) Variation of Gradient Descent w k+1 = w k η f(w k ) Replaces f w k with mini-batch gradient f t (w) = 1 m i=1 m L(w; x i, y i ) Several tricks to improve performance

48 OPTIMIZATION IN MACHINE LEARNING MODEL TRAINING OPTIMIZATION PARAMETERS (SGD) Learning rate, η Too high, diverges Too low, slow performance Momentum, μ Too high, could pass solution Too low, no performance improvement Regularization parameters, λ 1 and λ 2 Too low, has little effect Too high, drives iterates to 0 Other parameters Adaptive decay rate, β Mini-batch size, m Communication Frequency, c Annealing Rate, r

49 OPTIMIZATION IN MACHINE LEARNING HYPERPARAMETERS Quality of trained model governed by so-called hyperparameters No clear defaults agreeable to a wide range of applications Optimization options (SGD) Neural Net training options Number of hidden layers Number of neurons in each hidden layer Random distribution for initial connection weights (normal, uniform, Cauchy) Error function (gamma, normal, Poisson, entropy) x 1 x 2 x 3 x 4. w ij. w jk. f 1 (x) f 2 (x) f m (x) x n Input layer Hidden layer Output layer

50 OPTIMIZATION IN MACHINE LEARNING MODEL TUNING Traditional Approach: manual tuning Even with expertise in machine learning algorithms and their parameters, best settings are directly dependent on the data used in training and scoring Hyperparameter Optimization: grid vs. random vs. optimization x 2 x 2 x 2 x 1 Standard Grid Search x 1 Random Search x 1 Random Latin Hypercube

51 OPTIMIZATION IN MACHINE LEARNING HYPERPARAMETER OPTIMIZATION CHALLENGES T(x) Objective blows up Flat-regions. Node failure Categorical / Integer Variables Noisy/Nondeterministic Tuning objective, T(x), is validation error score (to avoid increased overfitting effect) x

52 OPTIMIZATION IN MACHINE LEARNING PARALLEL HYBRID DERIVATIVE-FREE OPTIMIZATION STRATEGY Default hybrid search strategy: 1. Initial Search: Latin Hypercube Sampling (LHS) 2. Global search: Genetic Algorithm (GA) Supports integer, categorical variables Handles nonsmooth, discontinuous space 3. Local search: Generating Set Search (GSS) Similar to Pattern Search First-order convergence properties Developed for continuous variables All easy to parallelize

53 TIme (minutes) Time (hours) OPTIMIZATION IN MACHINE LEARNING DATA PARALLEL & MODEL PARALLEL Credit Data 49k Train / 21k Validate Handwritten Data Train 60k/Validate 10k Data Parallel Distributed Data, Sequential Tuning 10 8 Data Parallel & Model Parallel Distributed Data, Parallel Tuning Number of Nodes for Training Maximum Models Trained in Parallel

54 Error % Objective (Misclassification Error %) OPTIMIZATION IN MACHINE LEARNING SAMPLE HYPERPARAMETER OPTIMIZATION RESULTS Default train, 9.6 % error Iteration 1 Latin Hypercube best, 6.22% error Iteration 1: Latin Hypercube Sample Error Handwritten Data Train 60k/Validate 10k Evaluation 2 Very similar configuration can have very different error Best after tuning: 2.61% error Iteration

55 OPTIMIZATION IN MACHINE LEARNING MANY TUNING OPPORTUNITIES Other Machine Learning algorithms SVM - Support Vector Machines Decision Trees Random Forest Gradient Boosting Trees Other search methods, extending hybrid solver framework Bayesian Optimization Surrogate-based Optimization Better (generalized) Models = Better Predictions = Better Decisions

56 THANK YOU!

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems. Rob Pratt, Senior R&D Manager, SAS/OR

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems. Rob Pratt, Senior R&D Manager, SAS/OR Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems Rob Pratt, Senior R&D Manager, SAS/OR Outline 1 Recent Features in PROC OPTMODEL 2 Graph Partitioning with Connectivity Constraints 2 /

More information

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems

Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems Paper SAS1502-2015 Using the OPTMODEL Procedure in SAS/OR to Solve Complex Problems Rob Pratt, SAS Institute Inc. ABSTRACT Mathematical optimization is a powerful paradigm for modeling and solving business

More information

Using SAS/OR to Optimize Scheduling and Routing of Service Vehicles

Using SAS/OR to Optimize Scheduling and Routing of Service Vehicles Paper SAS1758-2018 Using SAS/OR to Optimize Scheduling and Routing of Service Vehicles Rob Pratt, SAS Institute Inc. ABSTRACT An oil company has a set of wells and a set of well operators. Each well has

More information

The Decomposition Algorithm

The Decomposition Algorithm SAS/OR 14.3 User s Guide Mathematical Programming The Decomposition Algorithm This document is an individual chapter from SAS/OR 14.3 User s Guide: Mathematical Programming. The correct bibliographic citation

More information

The SAS/OR s OPTMODEL Procedure :

The SAS/OR s OPTMODEL Procedure : The SAS/OR s OPTMODEL Procedure : A Powerful Modeling Environment for Building, Solving, and Maintaining Mathematical Optimization Models Maurice Djona OASUS - Wednesday, November 19 th, 2008 Agenda Context:

More information

Practical Guidance for Machine Learning Applications

Practical Guidance for Machine Learning Applications Practical Guidance for Machine Learning Applications Brett Wujek About the authors Material from SGF Paper SAS2360-2016 Brett Wujek Senior Data Scientist, Advanced Analytics R&D ~20 years developing engineering

More information

The Mixed Integer Linear Programming Solver

The Mixed Integer Linear Programming Solver SAS/OR 14.3 User s Guide Mathematical Programming The Mixed Integer Linear Programming Solver This document is an individual chapter from SAS/OR 14.3 User s Guide: Mathematical Programming. The correct

More information

SAS/OR 14.1 User s Guide: Mathematical Programming. The Mixed Integer Linear Programming Solver

SAS/OR 14.1 User s Guide: Mathematical Programming. The Mixed Integer Linear Programming Solver SAS/OR 14.1 User s Guide: Mathematical Programming The Mixed Integer Linear Programming Solver This document is an individual chapter from SAS/OR 14.1 User s Guide: Mathematical Programming. The correct

More information

SAS/OR 13.2 User s Guide. Mathematical Programming

SAS/OR 13.2 User s Guide. Mathematical Programming SAS/OR 13.2 User s Guide Mathematical Programming The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2014. SAS/OR 13.2 User s Guide: Mathematical Programming. Cary, NC:

More information

SAS/OR 12.3 User s Guide. Mathematical Programming Examples

SAS/OR 12.3 User s Guide. Mathematical Programming Examples SAS/OR 12.3 User s Guide Mathematical Programming Examples The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2013. SAS/OR 12.3 User s Guide: Mathematical Programming

More information

Algorithms for Decision Support. Integer linear programming models

Algorithms for Decision Support. Integer linear programming models Algorithms for Decision Support Integer linear programming models 1 People with reduced mobility (PRM) require assistance when travelling through the airport http://www.schiphol.nl/travellers/atschiphol/informationforpassengerswithreducedmobility.htm

More information

Selected Topics in Column Generation

Selected Topics in Column Generation Selected Topics in Column Generation February 1, 2007 Choosing a solver for the Master Solve in the dual space(kelly s method) by applying a cutting plane algorithm In the bundle method(lemarechal), a

More information

The MIP-Solving-Framework SCIP

The MIP-Solving-Framework SCIP The MIP-Solving-Framework SCIP Timo Berthold Zuse Institut Berlin DFG Research Center MATHEON Mathematics for key technologies Berlin, 23.05.2007 What Is A MIP? Definition MIP The optimization problem

More information

25. NLP algorithms. ˆ Overview. ˆ Local methods. ˆ Constrained optimization. ˆ Global methods. ˆ Black-box methods.

25. NLP algorithms. ˆ Overview. ˆ Local methods. ˆ Constrained optimization. ˆ Global methods. ˆ Black-box methods. CS/ECE/ISyE 524 Introduction to Optimization Spring 2017 18 25. NLP algorithms ˆ Overview ˆ Local methods ˆ Constrained optimization ˆ Global methods ˆ Black-box methods ˆ Course wrap-up Laurent Lessard

More information

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem Presented by: Ted Ralphs Joint work with: Leo Kopman Les Trotter Bill Pulleyblank 1 Outline of Talk Introduction Description

More information

Minimum Weight Constrained Forest Problems. Problem Definition

Minimum Weight Constrained Forest Problems. Problem Definition Slide 1 s Xiaoyun Ji, John E. Mitchell Department of Mathematical Sciences Rensselaer Polytechnic Institute Troy, NY, USA jix@rpi.edu, mitchj@rpi.edu 2005 Optimization Days Montreal, Canada May 09, 2005

More information

Chapter 1 Introduction to Optimization

Chapter 1 Introduction to Optimization Chapter 1 Introduction to Optimization Chapter Contents OVERVIEW................................... 3 LINEAR PROGRAMMING PROBLEMS.................. 4 PROC OPTLP................................. 4 PROC

More information

Machine Learning for Software Engineering

Machine Learning for Software Engineering Machine Learning for Software Engineering Introduction and Motivation Prof. Dr.-Ing. Norbert Siegmund Intelligent Software Systems 1 2 Organizational Stuff Lectures: Tuesday 11:00 12:30 in room SR015 Cover

More information

Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis

Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis Vijay Gupta Ignacio E. Grossmann Department of Chemical Engineering Carnegie Mellon University, Pittsburgh Bora Tarhan ExxonMobil

More information

Column Generation Based Primal Heuristics

Column Generation Based Primal Heuristics Column Generation Based Primal Heuristics C. Joncour, S. Michel, R. Sadykov, D. Sverdlov, F. Vanderbeck University Bordeaux 1 & INRIA team RealOpt Outline 1 Context Generic Primal Heuristics The Branch-and-Price

More information

Applying Supervised Learning

Applying Supervised Learning Applying Supervised Learning When to Consider Supervised Learning A supervised learning algorithm takes a known set of input data (the training set) and known responses to the data (output), and trains

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

SAS/OR 14.2 User s Guide: Mathematical Programming. The OPTMILP Procedure

SAS/OR 14.2 User s Guide: Mathematical Programming. The OPTMILP Procedure SAS/OR 14.2 User s Guide: Mathematical Programming The OPTMILP Procedure This document is an individual chapter from SAS/OR 14.2 User s Guide: Mathematical Programming. The correct bibliographic citation

More information

Outline. Modeling. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Models Lecture 5 Mixed Integer Programming Models and Exercises

Outline. Modeling. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Models Lecture 5 Mixed Integer Programming Models and Exercises Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING 1. Lecture 5 Mixed Integer Programming and Exercises Marco Chiarandini 2. 3. 2 Outline Modeling 1. Min cost flow Shortest path 2. Max flow Assignment

More information

Theoretical Concepts of Machine Learning

Theoretical Concepts of Machine Learning Theoretical Concepts of Machine Learning Part 2 Institute of Bioinformatics Johannes Kepler University, Linz, Austria Outline 1 Introduction 2 Generalization Error 3 Maximum Likelihood 4 Noise Models 5

More information

Deep Learning with Tensorflow AlexNet

Deep Learning with Tensorflow   AlexNet Machine Learning and Computer Vision Group Deep Learning with Tensorflow http://cvml.ist.ac.at/courses/dlwt_w17/ AlexNet Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton, "Imagenet classification

More information

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs Computational Integer Programming Lecture 12: Branch and Cut Dr. Ted Ralphs Computational MILP Lecture 12 1 Reading for This Lecture Wolsey Section 9.6 Nemhauser and Wolsey Section II.6 Martin Computational

More information

Recursive column generation for the Tactical Berth Allocation Problem

Recursive column generation for the Tactical Berth Allocation Problem Recursive column generation for the Tactical Berth Allocation Problem Ilaria Vacca 1 Matteo Salani 2 Michel Bierlaire 1 1 Transport and Mobility Laboratory, EPFL, Lausanne, Switzerland 2 IDSIA, Lugano,

More information

DETERMINISTIC OPERATIONS RESEARCH

DETERMINISTIC OPERATIONS RESEARCH DETERMINISTIC OPERATIONS RESEARCH Models and Methods in Optimization Linear DAVID J. RADER, JR. Rose-Hulman Institute of Technology Department of Mathematics Terre Haute, IN WILEY A JOHN WILEY & SONS,

More information

Conflict Graphs for Parallel Stochastic Gradient Descent

Conflict Graphs for Parallel Stochastic Gradient Descent Conflict Graphs for Parallel Stochastic Gradient Descent Darshan Thaker*, Guneet Singh Dhillon* Abstract We present various methods for inducing a conflict graph in order to effectively parallelize Pegasos.

More information

Solving lexicographic multiobjective MIPs with Branch-Cut-Price

Solving lexicographic multiobjective MIPs with Branch-Cut-Price Solving lexicographic multiobjective MIPs with Branch-Cut-Price Marta Eso (The Hotchkiss School) Laszlo Ladanyi (IBM T.J. Watson Research Center) David Jensen (IBM T.J. Watson Research Center) McMaster

More information

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 20 Dr. Ted Ralphs IE406 Lecture 20 1 Reading for This Lecture Bertsimas Sections 10.1, 11.4 IE406 Lecture 20 2 Integer Linear Programming An integer

More information

Chapter 1 Introduction to Optimization

Chapter 1 Introduction to Optimization Chapter 1 Introduction to Optimization Overview Operations Research tools are directed toward the solution of resource management and planning problems. Models in Operations Research are representations

More information

Predictive Analytics: Demystifying Current and Emerging Methodologies. Tom Kolde, FCAS, MAAA Linda Brobeck, FCAS, MAAA

Predictive Analytics: Demystifying Current and Emerging Methodologies. Tom Kolde, FCAS, MAAA Linda Brobeck, FCAS, MAAA Predictive Analytics: Demystifying Current and Emerging Methodologies Tom Kolde, FCAS, MAAA Linda Brobeck, FCAS, MAAA May 18, 2017 About the Presenters Tom Kolde, FCAS, MAAA Consulting Actuary Chicago,

More information

Benders in a nutshell Matteo Fischetti, University of Padova

Benders in a nutshell Matteo Fischetti, University of Padova Benders in a nutshell Matteo Fischetti, University of Padova ODS 2017, Sorrento, September 2017 1 Benders decomposition The original Benders decomposition from the 1960s uses two distinct ingredients for

More information

Toward the joint design of electronic and optical layer protection

Toward the joint design of electronic and optical layer protection Toward the joint design of electronic and optical layer protection Massachusetts Institute of Technology Slide 1 Slide 2 CHALLENGES: - SEAMLESS CONNECTIVITY - MULTI-MEDIA (FIBER,SATCOM,WIRELESS) - HETEROGENEOUS

More information

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming Samuel Souza Brito and Haroldo Gambini Santos 1 Dep. de Computação, Universidade Federal de Ouro Preto - UFOP

More information

The exam is closed book, closed notes except your one-page (two-sided) cheat sheet.

The exam is closed book, closed notes except your one-page (two-sided) cheat sheet. CS 189 Spring 2015 Introduction to Machine Learning Final You have 2 hours 50 minutes for the exam. The exam is closed book, closed notes except your one-page (two-sided) cheat sheet. No calculators or

More information

SAS Visual Data Mining and Machine Learning 8.2: Advanced Topics

SAS Visual Data Mining and Machine Learning 8.2: Advanced Topics SAS Visual Data Mining and Machine Learning 8.2: Advanced Topics SAS Documentation January 25, 2018 The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2017. SAS Visual

More information

Automated Hyperparameter Tuning for Effective Machine Learning

Automated Hyperparameter Tuning for Effective Machine Learning SAS514-2017 Automated Hyperparameter Tuning for Effective Machine Learning Patrick Koch, Brett Wujek, Oleg Golovidov, and Steven Gardner ABSTRACT SAS Institute Inc. Machine learning predictive modeling

More information

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997 56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997 Answer #1 and any five of the remaining six problems! possible score 1. Multiple Choice 25 2. Traveling Salesman Problem 15 3.

More information

Modern Benders (in a nutshell)

Modern Benders (in a nutshell) Modern Benders (in a nutshell) Matteo Fischetti, University of Padova (based on joint work with Ivana Ljubic and Markus Sinnl) Lunteren Conference on the Mathematics of Operations Research, January 17,

More information

Machine Learning: Think Big and Parallel

Machine Learning: Think Big and Parallel Day 1 Inderjit S. Dhillon Dept of Computer Science UT Austin CS395T: Topics in Multicore Programming Oct 1, 2013 Outline Scikit-learn: Machine Learning in Python Supervised Learning day1 Regression: Least

More information

Integer Programming and Network Modeis

Integer Programming and Network Modeis H.A. Eiselt C.-L. Sandblom Integer Programming and Network Modeis With Contributions by K. Spielberg, E. Richards, B.T. Smith, G. Laporte, B.T. Boffey With 165 Figures and 43 Tables &m Springer CONTENTS

More information

Heuristics in Commercial MIP Solvers Part I (Heuristics in IBM CPLEX)

Heuristics in Commercial MIP Solvers Part I (Heuristics in IBM CPLEX) Andrea Tramontani CPLEX Optimization, IBM CWI, Amsterdam, June 12, 2018 Heuristics in Commercial MIP Solvers Part I (Heuristics in IBM CPLEX) Agenda CPLEX Branch-and-Bound (B&B) Primal heuristics in CPLEX

More information

SAS High-Performance Analytics Products

SAS High-Performance Analytics Products Fact Sheet What do SAS High-Performance Analytics products do? With high-performance analytics products from SAS, you can develop and process models that use huge amounts of diverse data. These products

More information

IE598 Big Data Optimization Summary Nonconvex Optimization

IE598 Big Data Optimization Summary Nonconvex Optimization IE598 Big Data Optimization Summary Nonconvex Optimization Instructor: Niao He April 16, 2018 1 This Course Big Data Optimization Explore modern optimization theories, algorithms, and big data applications

More information

Gurobi Guidelines for Numerical Issues February 2017

Gurobi Guidelines for Numerical Issues February 2017 Gurobi Guidelines for Numerical Issues February 2017 Background Models with numerical issues can lead to undesirable results: slow performance, wrong answers or inconsistent behavior. When solving a model

More information

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

February 19, Integer programming. Outline. Problem formulation. Branch-andbound Olga Galinina olga.galinina@tut.fi ELT-53656 Network Analysis and Dimensioning II Department of Electronics and Communications Engineering Tampere University of Technology, Tampere, Finland February 19,

More information

Improving the way neural networks learn Srikumar Ramalingam School of Computing University of Utah

Improving the way neural networks learn Srikumar Ramalingam School of Computing University of Utah Improving the way neural networks learn Srikumar Ramalingam School of Computing University of Utah Reference Most of the slides are taken from the third chapter of the online book by Michael Nielson: neuralnetworksanddeeplearning.com

More information

3 INTEGER LINEAR PROGRAMMING

3 INTEGER LINEAR PROGRAMMING 3 INTEGER LINEAR PROGRAMMING PROBLEM DEFINITION Integer linear programming problem (ILP) of the decision variables x 1,..,x n : (ILP) subject to minimize c x j j n j= 1 a ij x j x j 0 x j integer n j=

More information

Implicit Hitting Set Problems

Implicit Hitting Set Problems Implicit Hitting Set Problems Paul A. Rubin April 15, 2016 Paul A. Rubin Implicit Hitting Set Problems April 15, 2016 1 / 39 Thank you INFORMS Student Chapter at the for the invitation to speak today.

More information

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization? Linear and Integer Programming 15-853:Algorithms in the Real World Linear and Integer Programming I Introduction Geometric Interpretation Simplex Method Linear or Integer programming maximize z = c T x

More information

Fundamentals of Integer Programming

Fundamentals of Integer Programming Fundamentals of Integer Programming Di Yuan Department of Information Technology, Uppsala University January 2018 Outline Definition of integer programming Formulating some classical problems with integer

More information

Partitioning Data. IRDS: Evaluation, Debugging, and Diagnostics. Cross-Validation. Cross-Validation for parameter tuning

Partitioning Data. IRDS: Evaluation, Debugging, and Diagnostics. Cross-Validation. Cross-Validation for parameter tuning Partitioning Data IRDS: Evaluation, Debugging, and Diagnostics Charles Sutton University of Edinburgh Training Validation Test Training : Running learning algorithms Validation : Tuning parameters of learning

More information

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI Outline Review the column generation in Generalized Assignment Problem (GAP) GAP Examples in Branch and Price 2 Assignment Problem The assignment

More information

Exploiting Degeneracy in MIP

Exploiting Degeneracy in MIP Exploiting Degeneracy in MIP Tobias Achterberg 9 January 2018 Aussois Performance Impact in Gurobi 7.5+ 35% 32.0% 30% 25% 20% 15% 14.6% 10% 5.7% 7.9% 6.6% 5% 0% 2.9% 1.2% 0.1% 2.6% 2.6% Time limit: 10000

More information

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation Optimization Methods: Introduction and Basic concepts 1 Module 1 Lecture Notes 2 Optimization Problem and Model Formulation Introduction In the previous lecture we studied the evolution of optimization

More information

Research Interests Optimization:

Research Interests Optimization: Mitchell: Research interests 1 Research Interests Optimization: looking for the best solution from among a number of candidates. Prototypical optimization problem: min f(x) subject to g(x) 0 x X IR n Here,

More information

Financial Optimization ISE 347/447. Lecture 13. Dr. Ted Ralphs

Financial Optimization ISE 347/447. Lecture 13. Dr. Ted Ralphs Financial Optimization ISE 347/447 Lecture 13 Dr. Ted Ralphs ISE 347/447 Lecture 13 1 Reading for This Lecture C&T Chapter 11 ISE 347/447 Lecture 13 2 Integer Linear Optimization An integer linear optimization

More information

Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem

Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem Eduardo Uchoa Túlio A.M. Toffolo Mauricio C. de Souza Alexandre X. Martins + Departamento

More information

SAS/OR 12.3 User s Guide. Network Optimization Algorithms

SAS/OR 12.3 User s Guide. Network Optimization Algorithms SAS/OR 12.3 User s Guide Network Optimization Algorithms The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2013. SAS/OR 12.3 User s Guide: Network Optimization Algorithms.

More information

Branch-and-cut implementation of Benders decomposition Matteo Fischetti, University of Padova

Branch-and-cut implementation of Benders decomposition Matteo Fischetti, University of Padova Branch-and-cut implementation of Benders decomposition Matteo Fischetti, University of Padova 8th Cargese-Porquerolles Workshop on Combinatorial Optimization, August 2017 1 Mixed-Integer Programming We

More information

Combine the PA Algorithm with a Proximal Classifier

Combine the PA Algorithm with a Proximal Classifier Combine the Passive and Aggressive Algorithm with a Proximal Classifier Yuh-Jye Lee Joint work with Y.-C. Tseng Dept. of Computer Science & Information Engineering TaiwanTech. Dept. of Statistics@NCKU

More information

Cost Functions in Machine Learning

Cost Functions in Machine Learning Cost Functions in Machine Learning Kevin Swingler Motivation Given some data that reflects measurements from the environment We want to build a model that reflects certain statistics about that data Something

More information

The Linear Programming Solver

The Linear Programming Solver SAS/OR 14.3 User s Guide Mathematical Programming The Linear Programming Solver This document is an individual chapter from SAS/OR 14.3 User s Guide: Mathematical Programming. The correct bibliographic

More information

Optimization in MATLAB Seth DeLand

Optimization in MATLAB Seth DeLand Optimization in MATLAB Seth DeLand 4 The MathWorks, Inc. Topics Intro Using gradient-based solvers Optimization in Comp. Finance toolboxes Global optimization Speeding up your optimizations Optimization

More information

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem Column Generation: Cutting Stock A very applied method thst@man.dtu.dk Outline History The Simplex algorithm (re-visited) Column Generation as an extension of the Simplex algorithm A simple example! DTU-Management

More information

Column Generation: Cutting Stock

Column Generation: Cutting Stock Column Generation: Cutting Stock A very applied method thst@man.dtu.dk DTU-Management Technical University of Denmark 1 Outline History The Simplex algorithm (re-visited) Column Generation as an extension

More information

Optimieren mit MATLAB jetzt auch gemischt-ganzzahlig Dr. Maka Karalashvili Application Engineer MathWorks

Optimieren mit MATLAB jetzt auch gemischt-ganzzahlig Dr. Maka Karalashvili Application Engineer MathWorks Optimieren mit MATLAB jetzt auch gemischt-ganzzahlig Dr. Maka Karalashvili Application Engineer MathWorks 2014 The MathWorks, Inc. 1 Let s consider the following modeling case study Requirements Item Nuts

More information

SAS/OR 15.1 User s Guide. Network Optimization Algorithms

SAS/OR 15.1 User s Guide. Network Optimization Algorithms SAS/OR 15.1 User s Guide Network Optimization Algorithms The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2018. SAS/OR 15.1 User s Guide: Network Optimization Algorithms.

More information

Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University

Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University Search & Optimization Search and Optimization method deals with

More information

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP): Linköping University Optimization TAOP3(0) Department of Mathematics Examination Oleg Burdakov of 30 October 03 Assignment Consider the following linear programming problem (LP): max z = x + x s.t. x x

More information

Outrun Your Competition With SAS In-Memory Analytics Sascha Schubert Global Technology Practice, SAS

Outrun Your Competition With SAS In-Memory Analytics Sascha Schubert Global Technology Practice, SAS Outrun Your Competition With SAS In-Memory Analytics Sascha Schubert Global Technology Practice, SAS Topics AGENDA Challenges with Big Data Analytics How SAS can help you to minimize time to value with

More information

Math Models of OR: The Simplex Algorithm: Practical Considerations

Math Models of OR: The Simplex Algorithm: Practical Considerations Math Models of OR: The Simplex Algorithm: Practical Considerations John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA September 2018 Mitchell Simplex Algorithm: Practical Considerations

More information

Introduction to ANSYS DesignXplorer

Introduction to ANSYS DesignXplorer Lecture 4 14. 5 Release Introduction to ANSYS DesignXplorer 1 2013 ANSYS, Inc. September 27, 2013 s are functions of different nature where the output parameters are described in terms of the input parameters

More information

An Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance

An Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance An Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance Jae-Gon Kim and Marc Goetschalckx School of Industrial and Systems Engineering Georgia Institute of Technology Atlanta,

More information

Stochastic Separable Mixed-Integer Nonlinear Programming via Nonconvex Generalized Benders Decomposition

Stochastic Separable Mixed-Integer Nonlinear Programming via Nonconvex Generalized Benders Decomposition Stochastic Separable Mixed-Integer Nonlinear Programming via Nonconvex Generalized Benders Decomposition Xiang Li Process Systems Engineering Laboratory Department of Chemical Engineering Massachusetts

More information

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998 56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998 Part A: Answer any four of the five problems. (15 points each) 1. Transportation problem 2. Integer LP Model Formulation

More information

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 7 Dr. Ted Ralphs ISE 418 Lecture 7 1 Reading for This Lecture Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Wolsey Chapter 7 CCZ Chapter 1 Constraint

More information

The Gurobi Optimizer. Bob Bixby

The Gurobi Optimizer. Bob Bixby The Gurobi Optimizer Bob Bixby Outline Gurobi Introduction Company Products Benchmarks Gurobi Technology Rethinking MIP MIP as a bag of tricks 8-Jul-11 2010 Gurobi Optimization 2 Gurobi Optimization Incorporated

More information

DS Machine Learning and Data Mining I. Alina Oprea Associate Professor, CCIS Northeastern University

DS Machine Learning and Data Mining I. Alina Oprea Associate Professor, CCIS Northeastern University DS 4400 Machine Learning and Data Mining I Alina Oprea Associate Professor, CCIS Northeastern University January 24 2019 Logistics HW 1 is due on Friday 01/25 Project proposal: due Feb 21 1 page description

More information

Parallel Branch & Bound

Parallel Branch & Bound Parallel Branch & Bound Bernard Gendron Université de Montréal gendron@iro.umontreal.ca Outline Mixed integer programming (MIP) and branch & bound (B&B) Linear programming (LP) based B&B Relaxation and

More information

Large-Scale Lasso and Elastic-Net Regularized Generalized Linear Models

Large-Scale Lasso and Elastic-Net Regularized Generalized Linear Models Large-Scale Lasso and Elastic-Net Regularized Generalized Linear Models DB Tsai Steven Hillion Outline Introduction Linear / Nonlinear Classification Feature Engineering - Polynomial Expansion Big-data

More information

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING Bulletin of Mathematics Vol. 06, No. 0 (20), pp.. SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING Eddy Roflin, Sisca Octarina, Putra B. J Bangun,

More information

Solving a Challenging Quadratic 3D Assignment Problem

Solving a Challenging Quadratic 3D Assignment Problem Solving a Challenging Quadratic 3D Assignment Problem Hans Mittelmann Arizona State University Domenico Salvagnin DEI - University of Padova Quadratic 3D Assignment Problem Quadratic 3D Assignment Problem

More information

Fast-Lipschitz Optimization

Fast-Lipschitz Optimization Fast-Lipschitz Optimization DREAM Seminar Series University of California at Berkeley September 11, 2012 Carlo Fischione ACCESS Linnaeus Center, Electrical Engineering KTH Royal Institute of Technology

More information

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007) In the name of God Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm Spring 2009 Instructor: Dr. Masoud Yaghini Outlines Problem Definition Modeling As A Set Partitioning

More information

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Approximation Algorithms: The Primal-Dual Method. My T. Thai Approximation Algorithms: The Primal-Dual Method My T. Thai 1 Overview of the Primal-Dual Method Consider the following primal program, called P: min st n c j x j j=1 n a ij x j b i j=1 x j 0 Then the

More information

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2018 04 24 Lecture 9 Linear and integer optimization with applications

More information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch. Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible

More information

Algorithms for Integer Programming

Algorithms for Integer Programming Algorithms for Integer Programming Laura Galli November 9, 2016 Unlike linear programming problems, integer programming problems are very difficult to solve. In fact, no efficient general algorithm is

More information

SAS/OR 15.1 User s Guide. Local Search Optimization. The OPTLSO Procedure

SAS/OR 15.1 User s Guide. Local Search Optimization. The OPTLSO Procedure SAS/OR 15.1 User s Guide Local Search Optimization The OPTLSO Procedure This document is an individual chapter from SAS/OR 15.1 User s Guide: Local Search Optimization. The correct bibliographic citation

More information

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming algorithms Ann-Brith Strömberg 2009 04 15 Methods for ILP: Overview (Ch. 14.1) Enumeration Implicit enumeration: Branch and bound Relaxations Decomposition methods:

More information

This matrix is not TU since the submatrix shown below has determinant of

This matrix is not TU since the submatrix shown below has determinant of EMIS 8373: Integer Programming [Homework 5 Solutions] 1 Problem 1 Problem 1 on page 50 of the Wolsey text book. (a) A 1 = 1 0 1 0 1 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 This matrix is not TU since the submatrix

More information

New Features in SAS/OR 13.1

New Features in SAS/OR 13.1 ABSTRACT Paper SAS256-2014 New Features in SAS/OR 13.1 Ed Hughes and Rob Pratt, SAS Institute Inc. SAS/OR software for operations research includes mathematical optimization, discrete-event simulation,

More information

Perceptron: This is convolution!

Perceptron: This is convolution! Perceptron: This is convolution! v v v Shared weights v Filter = local perceptron. Also called kernel. By pooling responses at different locations, we gain robustness to the exact spatial location of image

More information

15-780: Problem Set #2

15-780: Problem Set #2 15-780: Problem Set #2 February 19, 2014 1. Constraint satisfaction problem (CSP) [20pts] A common problem at universities is to schedule rooms for exams. The basic structure of this problem is to divide

More information

Index. Umberto Michelucci 2018 U. Michelucci, Applied Deep Learning,

Index. Umberto Michelucci 2018 U. Michelucci, Applied Deep Learning, A Acquisition function, 298, 301 Adam optimizer, 175 178 Anaconda navigator conda command, 3 Create button, 5 download and install, 1 installing packages, 8 Jupyter Notebook, 11 13 left navigation pane,

More information