Integer Linear Programming

Total Page:16

File Type:pdf, Size:1020Kb

Integer Linear Programming Introduction Introduction to Linear Programming and Integer Linear Programming ► Outline - brief introduction to… § Modeling § Linear Programming RMIT, Melbourne, Australia § Integer Linear Programming § Solution Methods for LP and ILP Helena Ramalhinho Lourenço § AMPL LP & ILP introduction 1 LP & ILP introduction 2 Real Problem OR Methodology Linear Programming Data Analysis ► Linear programming (LP) is a widely used mathematical Set of Models modeling technique designed to help managers in Optimization Model planning and decision making relative to resource maker - Solution Methods Results & Interpretation allocation. ► Integer Linear Programming (ILP) Simulation Decision § An integer programming model is one where one or more of the decision variables has to take on an integer or binary values in Solution & Analysis OR provides many methods the final solution. and techniques to analyze Scenarios ► Combinatorial Optimization (next) the consequences of decisions Make a decision before their introduction to reality.LP & ILP introduction 3 LP & ILP introduction 4 OR Methodology OR Methodology ► Identify a problem ► Identify the problem ► Get to know the problem context (get Data) § Describe in detail the problem, and identify all the components. § Identify the qualitative and quantitative aspects of the problem. ► Build a Model (Mathematical Model) ► Get to know the problem context ► Obtain a solution to the model (Algorithm) § Identify the relationships of the problem with the context of the ► Understand the solution the real context organization. ► Take the decision § Obtain the relevant data. § Verify the data. LP & ILP introduction 5 LP & ILP introduction 6 © Helena Ramalhinho-Lourenço, (2019) 1 OR Methodology OR Methodology ► Build a model ► Obtain a solution to the model § A Model is an abstract representation of a real world system § Which are the adequate solution methods to be applied to the § Simplification is the very essence of Modeling model? § Which components should be included in the model? * Exact Methods § Types of models: * Heuristics and Metaheuristics • Linear programming § Which is the best software to be applied? • Integer Linear Programming * Commercial software • Combinatorial Optimization * Algorithm design and code • Networks • Non-linear • Simulation • Etc. LP & ILP introduction 7 LP & ILP introduction 8 OR Methodology Linear Programming ► Understand the solution the real context ► Linear programming (LP) is a widely used mathematical § Does the solution obtained makes sense in the real life? modeling technique designed to help managers in § Did we have considered all relevant components? planning and decision making relative to resource ► Take the decision allocation. § Evaluate the impact of the solution § Evaluate the decision process (model + method) § Review frequently the impact of the decision. LP & ILP introduction 9 LP & ILP introduction 10 Linear Programming Linear Programming ► The Linear Programming Models have 4 properties in ► Formulating a linear program involves developing a common: mathematical model to represent the managerial problem. § All problems seek to maximize or minimize some quantity (the ► The steps in formulating a linear program are: objective function). § Completely understand the managerial problem being faced. § Restrictions or constraints that limit the degree to which we can § Identify the objective and the constraints. pursue our objective are present. § Define the decision variables. § There must be alternative courses of action from which to choose. § Use the decision variables to write mathematical expressions for § The objective and constraints in problems must be expressed in the objective function and the constraints. terms of linear equations or inequalities. LP & ILP introduction 11 LP & ILP introduction 12 © Helena Ramalhinho-Lourenço, (2019) 2 Linear Programming Methodology Example 2: Call Center ► Understand well the problem (by words) ► A call center is hiring personnel since it is § What is the problem expanding to a 24h working period. § What is the decision we have to take? Can we make quantitative? § The call center works 24h a day, and needs personnel to § What are the constraints on the decisions? attend the customers every hour. § What is the objective or how we are going to evaluate the solution? § The human recourses and the operations directors have ► Define the decision variables (math) estimate the number of persons in each interval of time. ► Define the constraints on the variables (math) § There are 6 intervals of time (4 hours each). ► Define the objective function (math) § The contract of the new employees is for 8h in a row. ► Solve it!!! LP & ILP introduction 13 LP & ILP introduction 14 Example 2: Call Center Example 2: Call Center ► Need of additional employeesInterval for ofinterval times of time: ► Describe the problem by words. § What is the problem? Period 1 2 3 4 5 6 § What is the decision we have to take? Can we make quantitative? 0:00 – 4:00 – 8:00 – 12:00 – 16:00 – 20:00 – 4:00 h 8:00 h 12:00 h 16:00 h 20:00 h 24:00 h § What are the constraints on the decisions? Employees § What is the objective or how we are going to evaluate the needed 9 8 3 7 5 4 solution? ► Which is the minimal number of employees that should be hired? LP & ILP introduction 15 LP & ILP introduction 16 Example 2: Call Center Ejemplo 1: Personal laboratorio ► Define the decision variables: ► Define the constraints § Number of employees to be hired to start at the beginning of § In period 1, there is the need of 9 employees… period 1 (x1) § In period 2, there is the need of 8 employees… § Number of employees to be hired to start at the beginning of § In period 3, there is the need of 3 employees… period 2 (x2) Periods § … 1 2 3 4 5 6 § Number of employees to be hired to start at the beginning of 0:00-4:00 4:00-8:00 8:00-12:00 12:00-16:00 16:00-20:00 20:00-24:00 period 3 (x3) 0:00 X1 X1 4:00 X2 X2 § Number of employees to be hired to start at the beginning of 8:00 X3 X3 period 4 (x4) 12:00 X4 X4 16:00 X5 X5 § … 20:00 X6 X6 Personnel ≥ ≥ ≥ ≥ ≥ ≥ 9 8 3 7 5 4 LP & ILP introduction 17 LP & ILP introduction 18 © Helena Ramalhinho-Lourenço, (2019) 3 Example 2: Call Center Example 2: Call Center ► The constraints… ► Define the constraints: § The number of persons that start at beginning of period 1 + the § X6 + X1 ≥ 9 ones that continue from period 6 must be greater or equal to 9: § X1 + X2 ≥ 8 * X6 + X1 ≥ 9 § X2 + X3 ≥ 3 § The number of persons that start at beginning of period 2 + the § X3 + X4 ≥ 7 ones that continue from period 1 must be greater or equal to 8. § X4 + X5 ≥ 5 * X1 + X2 ≥ 8 § X5 + X6 ≥ 4 § … § Xj ≥ 0, j= 1,...,6. LP & ILP introduction 19 LP & ILP introduction 20 Example 2: Call Center Example 2: Call Center ► Define the objective function ► The complete model ► Min Z= X1 + X2 + X3 + X4 + X5 + X6 ► Min Z= X1 + X2 + X3 + X4 + X5 + X6 § Subject to: * X6 + X1 ≥ 9 * X1 + X2 ≥ 8 * X2 + X3 ≥ 3 * X3 + X4 ≥ 7 * X4 + X5 ≥ 5 * X5 + X6 ≥ 4 * Xj ≥ 0, j= 1,...,6. LP & ILP introduction 21 LP & ILP introduction 22 Solution Methods Solution Methods ► Obtain the optimal solution of the LP Model ► LINEAR PROGRAMMING SOFTWARE SURVEY ► Exact Method § https://www.informs.org/ORMS-Today/Public-Articles/June- Volume-44-Number-3/Linear-Programming-SoFtware-Survey § The PL models are “easy” to be solved § June 2017 § Simplex Method (Dantzig 1947) * https://www.inForms.org/ORMS-Today/OR-MS-Today-SoFtware- * Primal simplex Surveys/Linear-Programming-SoFtware-Survey * Dual simplex § Vendors § Interior Point Method (Karmarkar 1984) * GLPK (GNU Linear Programming Kit), Gurobi OptimiZer, IBM ILOG § ALGORITMS / SOFTWARE CPLEX OptimiZation Studio, LINDO & LINGO, Premium Solver Pro, * Excel Solver etc * Commercial Software § Prices * Open Software * Free to $4000/licence LP & ILP introduction 23 LP & ILP introduction 24 © Helena Ramalhinho-Lourenço, (2019) 4 Simplex Method Simplex Method ► Dantzig (1947) ► In Euclidean space, an object is convex if for every pair of § The set of solutions is a convex set. points within the object, every point on the straight § If there is a optimal solution, there exist an optimal solution in a line segment that joins them is also within the object. corner point (or extreme point) § An extreme point always have at least two adJacent extreme points. § If a extreme point has no adJacent extreme points with better value for the obJective function, then it is the optimal solution. LP & ILP introduction 25 LP & ILP introduction 26 Simplex Method Simplex Method ► Basic theorem ► Example of Linear Programming Maximizar Z =60x +40x ► If exist a optimal solution there exist one in a extreme 1 2 sa point. + x1 x2 £8 ► Simplex method 2x2 £12 § Look only in the extreme point (or corner points of the polytope) 4x1+2x2 £22 § There are a finite numBer of extreme points x1³0, x2 ³0 LP & ILP introduction 27 LP & ILP introduction 28 Only five extreme Infinite number of points feasible solutions LP & ILP introduction 29 LP & ILP introduction 30 © Helena Ramalhinho-Lourenço, (2019) 5 Simplex Method Initialization Find initial feasible extreme-point solution Look for the optimal ► An iterative procedure solution in the 5 § Move from extreme extreme/corner point to extreme point Is the current Yes points feasible extreme- Stop point solution § Optimality test in the the actual optimal? solution is Simplex Method: optimal * If a extreme-corner No solution has no adjacent solutions that Move to a better are better, then it must adjacent feasible extreme-point be an optimal solution solution LP & ILP introduction 31 LP & ILP introduction 32 step 1. Solution (0,0) step 2. Adjacent with z=0. solution(0,6) with z=240. LP & ILP introduction 33 LP & ILP introduction 34 Step 3. Adjacent solution(2,6) with Step 4.
Recommended publications
  • Multi-Objective Optimization of Unidirectional Non-Isolated Dc/Dcconverters
    MULTI-OBJECTIVE OPTIMIZATION OF UNIDIRECTIONAL NON-ISOLATED DC/DC CONVERTERS by Andrija Stupar A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Graduate Department of Edward S. Rogers Department of Electrical and Computer Engineering University of Toronto © Copyright 2017 by Andrija Stupar Abstract Multi-Objective Optimization of Unidirectional Non-Isolated DC/DC Converters Andrija Stupar Doctor of Philosophy Graduate Department of Edward S. Rogers Department of Electrical and Computer Engineering University of Toronto 2017 Engineers have to fulfill multiple requirements and strive towards often competing goals while designing power electronic systems. This can be an analytically complex and computationally intensive task since the relationship between the parameters of a system’s design space is not always obvious. Furthermore, a number of possible solutions to a particular problem may exist. To find an optimal system, many different possible designs must be evaluated. Literature on power electronics optimization focuses on the modeling and design of partic- ular converters, with little thought given to the mathematical formulation of the optimization problem. Therefore, converter optimization has generally been a slow process, with exhaus- tive search, the execution time of which is exponential in the number of design variables, the prevalent approach. In this thesis, geometric programming (GP), a type of convex optimization, the execution time of which is polynomial in the number of design variables, is proposed and demonstrated as an efficient and comprehensive framework for the multi-objective optimization of non-isolated unidirectional DC/DC converters. A GP model of multilevel flying capacitor step-down convert- ers is developed and experimentally verified on a 15-to-3.3 V, 9.9 W discrete prototype, with sets of loss-volume Pareto optimal designs generated in under one minute.
    [Show full text]
  • How to Use Your Favorite MIP Solver: Modeling, Solving, Cannibalizing
    How to use your favorite MIP Solver: modeling, solving, cannibalizing Andrea Lodi University of Bologna, Italy [email protected] January-February, 2012 @ Universit¨atWien A. Lodi, How to use your favorite MIP Solver Setting • We consider a general Mixed Integer Program in the form: T maxfc x : Ax ≤ b; x ≥ 0; xj 2 Z; 8j 2 Ig (1) where matrix A does not have a special structure. A. Lodi, How to use your favorite MIP Solver 1 Setting • We consider a general Mixed Integer Program in the form: T maxfc x : Ax ≤ b; x ≥ 0; xj 2 Z; 8j 2 Ig (1) where matrix A does not have a special structure. • Thus, the problem is solved through branch-and-bound and the bounds are computed by iteratively solving the LP relaxations through a general-purpose LP solver. A. Lodi, How to use your favorite MIP Solver 1 Setting • We consider a general Mixed Integer Program in the form: T maxfc x : Ax ≤ b; x ≥ 0; xj 2 Z; 8j 2 Ig (1) where matrix A does not have a special structure. • Thus, the problem is solved through branch-and-bound and the bounds are computed by iteratively solving the LP relaxations through a general-purpose LP solver. • The course basically covers the MIP but we will try to discuss when possible how crucial is the LP component (the engine), and how much the whole framework is built on top the capability of effectively solving LPs. • Roughly speaking, using the LP computation as a tool, MIP solvers integrate the branch-and-bound and the cutting plane algorithms through variations of the general branch-and-cut scheme [Padberg & Rinaldi 1987] developed in the context of the Traveling Salesman Problem (TSP).
    [Show full text]
  • Julia, My New Friend for Computing and Optimization? Pierre Haessig, Lilian Besson
    Julia, my new friend for computing and optimization? Pierre Haessig, Lilian Besson To cite this version: Pierre Haessig, Lilian Besson. Julia, my new friend for computing and optimization?. Master. France. 2018. cel-01830248 HAL Id: cel-01830248 https://hal.archives-ouvertes.fr/cel-01830248 Submitted on 4 Jul 2018 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 1 « Julia, my New frieNd for computiNg aNd optimizatioN? » Intro to the Julia programming language, for MATLAB users Date: 14th of June 2018 Who: Lilian Besson & Pierre Haessig (SCEE & AUT team @ IETR / CentraleSupélec campus Rennes) « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 2 AgeNda for today [30 miN] 1. What is Julia? [5 miN] 2. ComparisoN with MATLAB [5 miN] 3. Two examples of problems solved Julia [5 miN] 4. LoNger ex. oN optimizatioN with JuMP [13miN] 5. LiNks for more iNformatioN ? [2 miN] « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 3 1. What is Julia ? Open-source and free programming language (MIT license) Developed since 2012 (creators: MIT researchers) Growing popularity worldwide, in research, data science, finance etc… Multi-platform: Windows, Mac OS X, GNU/Linux..
    [Show full text]
  • Solving Mixed Integer Linear and Nonlinear Problems Using the SCIP Optimization Suite
    Takustraße 7 Konrad-Zuse-Zentrum D-14195 Berlin-Dahlem fur¨ Informationstechnik Berlin Germany TIMO BERTHOLD GERALD GAMRATH AMBROS M. GLEIXNER STEFAN HEINZ THORSTEN KOCH YUJI SHINANO Solving mixed integer linear and nonlinear problems using the SCIP Optimization Suite Supported by the DFG Research Center MATHEON Mathematics for key technologies in Berlin. ZIB-Report 12-27 (July 2012) Herausgegeben vom Konrad-Zuse-Zentrum f¨urInformationstechnik Berlin Takustraße 7 D-14195 Berlin-Dahlem Telefon: 030-84185-0 Telefax: 030-84185-125 e-mail: [email protected] URL: http://www.zib.de ZIB-Report (Print) ISSN 1438-0064 ZIB-Report (Internet) ISSN 2192-7782 Solving mixed integer linear and nonlinear problems using the SCIP Optimization Suite∗ Timo Berthold Gerald Gamrath Ambros M. Gleixner Stefan Heinz Thorsten Koch Yuji Shinano Zuse Institute Berlin, Takustr. 7, 14195 Berlin, Germany, fberthold,gamrath,gleixner,heinz,koch,[email protected] July 31, 2012 Abstract This paper introduces the SCIP Optimization Suite and discusses the ca- pabilities of its three components: the modeling language Zimpl, the linear programming solver SoPlex, and the constraint integer programming frame- work SCIP. We explain how these can be used in concert to model and solve challenging mixed integer linear and nonlinear optimization problems. SCIP is currently one of the fastest non-commercial MIP and MINLP solvers. We demonstrate the usage of Zimpl, SCIP, and SoPlex by selected examples, give an overview of available interfaces, and outline plans for future development. ∗A Japanese translation of this paper will be published in the Proceedings of the 24th RAMP Symposium held at Tohoku University, Miyagi, Japan, 27{28 September 2012, see http://orsj.or.
    [Show full text]
  • [20Pt]Algorithms for Constrained Optimization: [ 5Pt]
    SOL Optimization 1970s 1980s 1990s 2000s 2010s Summary 2020s Algorithms for Constrained Optimization: The Benefits of General-purpose Software Michael Saunders MS&E and ICME, Stanford University California, USA 3rd AI+IoT Business Conference Shenzhen, China, April 25, 2019 Optimization Software 3rd AI+IoT Business Conference, Shenzhen, April 25, 2019 1/39 SOL Optimization 1970s 1980s 1990s 2000s 2010s Summary 2020s SOL Systems Optimization Laboratory George Dantzig, Stanford University, 1974 Inventor of the Simplex Method Father of linear programming Large-scale optimization: Algorithms, software, applications Optimization Software 3rd AI+IoT Business Conference, Shenzhen, April 25, 2019 2/39 SOL Optimization 1970s 1980s 1990s 2000s 2010s Summary 2020s SOL history 1974 Dantzig and Cottle start SOL 1974{78 John Tomlin, LP/MIP expert 1974{2005 Alan Manne, nonlinear economic models 1975{76 MS, MINOS first version 1979{87 Philip Gill, Walter Murray, MS, Margaret Wright (Gang of 4!) 1989{ Gerd Infanger, stochastic optimization 1979{ Walter Murray, MS, many students 2002{ Yinyu Ye, optimization algorithms, especially interior methods This week! UC Berkeley opened George B. Dantzig Auditorium Optimization Software 3rd AI+IoT Business Conference, Shenzhen, April 25, 2019 3/39 SOL Optimization 1970s 1980s 1990s 2000s 2010s Summary 2020s Optimization problems Minimize an objective function subject to constraints: 0 x 1 min '(x) st ` ≤ @ Ax A ≤ u c(x) x variables 0 1 A matrix c1(x) B . C c(x) nonlinear functions @ . A c (x) `; u bounds m Optimization
    [Show full text]
  • A Lifted Linear Programming Branch-And-Bound Algorithm for Mixed Integer Conic Quadratic Programs Juan Pablo Vielma, Shabbir Ahmed, George L
    A Lifted Linear Programming Branch-and-Bound Algorithm for Mixed Integer Conic Quadratic Programs Juan Pablo Vielma, Shabbir Ahmed, George L. Nemhauser, H. Milton Stewart School of Industrial and Systems Engineering, Georgia Institute of Technology, 765 Ferst Drive NW, Atlanta, GA 30332-0205, USA, {[email protected], [email protected], [email protected]} This paper develops a linear programming based branch-and-bound algorithm for mixed in- teger conic quadratic programs. The algorithm is based on a higher dimensional or lifted polyhedral relaxation of conic quadratic constraints introduced by Ben-Tal and Nemirovski. The algorithm is different from other linear programming based branch-and-bound algo- rithms for mixed integer nonlinear programs in that, it is not based on cuts from gradient inequalities and it sometimes branches on integer feasible solutions. The algorithm is tested on a series of portfolio optimization problems. It is shown that it significantly outperforms commercial and open source solvers based on both linear and nonlinear relaxations. Key words: nonlinear integer programming; branch and bound; portfolio optimization History: February 2007. 1. Introduction This paper deals with the development of an algorithm for the class of mixed integer non- linear programming (MINLP) problems known as mixed integer conic quadratic program- ming problems. This class of problems arises from adding integrality requirements to conic quadratic programming problems (Lobo et al., 1998), and is used to model several applica- tions from engineering and finance. Conic quadratic programming problems are also known as second order cone programming problems, and together with semidefinite and linear pro- gramming (LP) problems are special cases of the more general conic programming problems (Ben-Tal and Nemirovski, 2001a).
    [Show full text]
  • Numericaloptimization
    Numerical Optimization Alberto Bemporad http://cse.lab.imtlucca.it/~bemporad/teaching/numopt Academic year 2020-2021 Course objectives Solve complex decision problems by using numerical optimization Application domains: • Finance, management science, economics (portfolio optimization, business analytics, investment plans, resource allocation, logistics, ...) • Engineering (engineering design, process optimization, embedded control, ...) • Artificial intelligence (machine learning, data science, autonomous driving, ...) • Myriads of other applications (transportation, smart grids, water networks, sports scheduling, health-care, oil & gas, space, ...) ©2021 A. Bemporad - Numerical Optimization 2/102 Course objectives What this course is about: • How to formulate a decision problem as a numerical optimization problem? (modeling) • Which numerical algorithm is most appropriate to solve the problem? (algorithms) • What’s the theory behind the algorithm? (theory) ©2021 A. Bemporad - Numerical Optimization 3/102 Course contents • Optimization modeling – Linear models – Convex models • Optimization theory – Optimality conditions, sensitivity analysis – Duality • Optimization algorithms – Basics of numerical linear algebra – Convex programming – Nonlinear programming ©2021 A. Bemporad - Numerical Optimization 4/102 References i ©2021 A. Bemporad - Numerical Optimization 5/102 Other references • Stephen Boyd’s “Convex Optimization” courses at Stanford: http://ee364a.stanford.edu http://ee364b.stanford.edu • Lieven Vandenberghe’s courses at UCLA: http://www.seas.ucla.edu/~vandenbe/ • For more tutorials/books see http://plato.asu.edu/sub/tutorials.html ©2021 A. Bemporad - Numerical Optimization 6/102 Optimization modeling What is optimization? • Optimization = assign values to a set of decision variables so to optimize a certain objective function • Example: Which is the best velocity to minimize fuel consumption ? fuel [ℓ/km] velocity [km/h] 0 30 60 90 120 160 ©2021 A.
    [Show full text]
  • A Branch-And-Price Approach with Milp Formulation to Modularity Density Maximization on Graphs
    A BRANCH-AND-PRICE APPROACH WITH MILP FORMULATION TO MODULARITY DENSITY MAXIMIZATION ON GRAPHS KEISUKE SATO Signalling and Transport Information Technology Division, Railway Technical Research Institute. 2-8-38 Hikari-cho, Kokubunji-shi, Tokyo 185-8540, Japan YOICHI IZUNAGA Information Systems Research Division, The Institute of Behavioral Sciences. 2-9 Ichigayahonmura-cho, Shinjyuku-ku, Tokyo 162-0845, Japan Abstract. For clustering of an undirected graph, this paper presents an exact algorithm for the maximization of modularity density, a more complicated criterion to overcome drawbacks of the well-known modularity. The problem can be interpreted as the set-partitioning problem, which reminds us of its integer linear programming (ILP) formulation. We provide a branch-and-price framework for solving this ILP, or column generation combined with branch-and-bound. Above all, we formulate the column gen- eration subproblem to be solved repeatedly as a simpler mixed integer linear programming (MILP) problem. Acceleration tech- niques called the set-packing relaxation and the multiple-cutting- planes-at-a-time combined with the MILP formulation enable us to optimize the modularity density for famous test instances in- cluding ones with over 100 vertices in around four minutes by a PC. Our solution method is deterministic and the computation time is not affected by any stochastic behavior. For one of them, column generation at the root node of the branch-and-bound tree arXiv:1705.02961v3 [cs.SI] 27 Jun 2017 provides a fractional upper bound solution and our algorithm finds an integral optimal solution after branching. E-mail addresses: (Keisuke Sato) [email protected], (Yoichi Izunaga) [email protected].
    [Show full text]
  • Linear Programming
    Lecture 18 Linear Programming 18.1 Overview In this lecture we describe a very general problem called linear programming that can be used to express a wide variety of different kinds of problems. We can use algorithms for linear program- ming to solve the max-flow problem, solve the min-cost max-flow problem, find minimax-optimal strategies in games, and many other things. We will primarily discuss the setting and how to code up various problems as linear programs At the end, we will briefly describe some of the algorithms for solving linear programming problems. Specific topics include: • The definition of linear programming and simple examples. • Using linear programming to solve max flow and min-cost max flow. • Using linear programming to solve for minimax-optimal strategies in games. • Algorithms for linear programming. 18.2 Introduction In the last two lectures we looked at: — Bipartite matching: given a bipartite graph, find the largest set of edges with no endpoints in common. — Network flow (more general than bipartite matching). — Min-Cost Max-flow (even more general than plain max flow). Today, we’ll look at something even more general that we can solve algorithmically: linear pro- gramming. (Except we won’t necessarily be able to get integer solutions, even when the specifi- cation of the problem is integral). Linear Programming is important because it is so expressive: many, many problems can be coded up as linear programs (LPs). This especially includes problems of allocating resources and business 95 18.3. DEFINITION OF LINEAR PROGRAMMING 96 supply-chain applications. In business schools and Operations Research departments there are entire courses devoted to linear programming.
    [Show full text]
  • Integer Linear Programs
    20 ________________________________________________________________________________________________ Integer Linear Programs Many linear programming problems require certain variables to have whole number, or integer, values. Such a requirement arises naturally when the variables represent enti- ties like packages or people that can not be fractionally divided — at least, not in a mean- ingful way for the situation being modeled. Integer variables also play a role in formulat- ing equation systems that model logical conditions, as we will show later in this chapter. In some situations, the optimization techniques described in previous chapters are suf- ficient to find an integer solution. An integer optimal solution is guaranteed for certain network linear programs, as explained in Section 15.5. Even where there is no guarantee, a linear programming solver may happen to find an integer optimal solution for the par- ticular instances of a model in which you are interested. This happened in the solution of the multicommodity transportation model (Figure 4-1) for the particular data that we specified (Figure 4-2). Even if you do not obtain an integer solution from the solver, chances are good that you’ll get a solution in which most of the variables lie at integer values. Specifically, many solvers are able to return an ‘‘extreme’’ solution in which the number of variables not lying at their bounds is at most the number of constraints. If the bounds are integral, all of the variables at their bounds will have integer values; and if the rest of the data is integral, many of the remaining variables may turn out to be integers, too.
    [Show full text]
  • TOMLAB –Unique Features for Optimization in MATLAB
    TOMLAB –Unique Features for Optimization in MATLAB Bad Honnef, Germany October 15, 2004 Kenneth Holmström Tomlab Optimization AB Västerås, Sweden [email protected] ´ Professor in Optimization Department of Mathematics and Physics Mälardalen University, Sweden http://tomlab.biz Outline of the talk • The TOMLAB Optimization Environment – Background and history – Technology available • Optimization in TOMLAB • Tests on customer supplied large-scale optimization examples • Customer cases, embedded solutions, consultant work • Business perspective • Box-bounded global non-convex optimization • Summary http://tomlab.biz Background • MATLAB – a high-level language for mathematical calculations, distributed by MathWorks Inc. • Matlab can be extended by Toolboxes that adds to the features in the software, e.g.: finance, statistics, control, and optimization • Why develop the TOMLAB Optimization Environment? – A uniform approach to optimization didn’t exist in MATLAB – Good optimization solvers were missing – Large-scale optimization was non-existent in MATLAB – Other toolboxes needed robust and fast optimization – Technical advantages from the MATLAB languages • Fast algorithm development and modeling of applied optimization problems • Many built in functions (ODE, linear algebra, …) • GUIdevelopmentfast • Interfaceable with C, Fortran, Java code http://tomlab.biz History of Tomlab • President and founder: Professor Kenneth Holmström • The company founded 1986, Development started 1989 • Two toolboxes NLPLIB och OPERA by 1995 • Integrated format for optimization 1996 • TOMLAB introduced, ISMP97 in Lausanne 1997 • TOMLAB v1.0 distributed for free until summer 1999 • TOMLAB v2.0 first commercial version fall 1999 • TOMLAB starting sales from web site March 2000 • TOMLAB v3.0 expanded with external solvers /SOL spring 2001 • Dash Optimization Ltd’s XpressMP added in TOMLAB fall 2001 • Tomlab Optimization Inc.
    [Show full text]
  • Process Optimization
    Process Optimization Mathematical Programming and Optimization of Multi-Plant Operations and Process Design Ralph W. Pike Director, Minerals Processing Research Institute Horton Professor of Chemical Engineering Louisiana State University Department of Chemical Engineering, Lamar University, April, 10, 2007 Process Optimization • Typical Industrial Problems • Mathematical Programming Software • Mathematical Basis for Optimization • Lagrange Multipliers and the Simplex Algorithm • Generalized Reduced Gradient Algorithm • On-Line Optimization • Mixed Integer Programming and the Branch and Bound Algorithm • Chemical Production Complex Optimization New Results • Using one computer language to write and run a program in another language • Cumulative probability distribution instead of an optimal point using Monte Carlo simulation for a multi-criteria, mixed integer nonlinear programming problem • Global optimization Design vs. Operations • Optimal Design −Uses flowsheet simulators and SQP – Heuristics for a design, a superstructure, an optimal design • Optimal Operations – On-line optimization – Plant optimal scheduling – Corporate supply chain optimization Plant Problem Size Contact Alkylation Ethylene 3,200 TPD 15,000 BPD 200 million lb/yr Units 14 76 ~200 Streams 35 110 ~4,000 Constraints Equality 761 1,579 ~400,000 Inequality 28 50 ~10,000 Variables Measured 43 125 ~300 Unmeasured 732 1,509 ~10,000 Parameters 11 64 ~100 Optimization Programming Languages • GAMS - General Algebraic Modeling System • LINDO - Widely used in business applications
    [Show full text]