Notes 1: Introduction to Optimization Models

Total Page:16

File Type:pdf, Size:1020Kb

Notes 1: Introduction to Optimization Models Notes 1: Introduction to Optimization Models IND E 599 September 29, 2010 IND E 599 Notes 1 Slide 1 Course Objectives I Survey of optimization models and formulations, with focus on modeling, not on algorithms I Include a variety of applications, such as, industrial, mechanical, civil and electrical engineering, financial optimization models, health care systems, environmental ecology, and forestry I Include many types of optimization models, such as, linear programming, integer programming, quadratic assignment problem, nonlinear convex problems and black-box models I Include many common formulations, such as, facility location, vehicle routing, job shop scheduling, flow shop scheduling, production scheduling (min make span, min max lateness), knapsack/multi-knapsack, traveling salesman, capacitated assignment problem, set covering/packing, network flow, shortest path, and max flow. IND E 599 Notes 1 Slide 2 Tentative Topics Each topic is an introduction to what could be a complete course: 1. basic linear models (LP) with sensitivity analysis 2. integer models (IP), such as the assignment problem, knapsack problem and the traveling salesman problem 3. mixed integer formulations 4. quadratic assignment problems 5. include uncertainty with chance-constraints, stochastic programming scenario-based formulations, and robust optimization 6. multi-objective formulations 7. nonlinear formulations, as often found in engineering design 8. brief introduction to constraint logic programming 9. brief introduction to dynamic programming IND E 599 Notes 1 Slide 3 Computer Software I Catalyst Tools (https://catalyst.uw.edu/) I AIMMS - optimization software (http://www.aimms.com/) Ming Fang - AIMMS software consultant IND E 599 Notes 1 Slide 4 What is Mathematical Programming? Mathematical programming refers to \programming" as a \planning" activity: as in I linear programming (LP) I integer programming (IP) I mixed integer linear programming (MILP) I non-linear programming (NLP) \Optimization" is becoming more common, e.g. the Mathematical Programming Society (MPS) just changed their name to the Mathematical Optimization Society - but are keeping the name of their flagship journal Mathematical Programming IND E 599 Notes 1 Slide 5 Optimization Models Optimization models are typically categorized by the mathematical structure of the functions, which is necessary for algorithm development There is a connection between the models and the algorithms: I a nonlinear integer model may be very accurate, but impractical to solve in reasonable time I be aware of the assumptions and implications of the model The process of creating and exploring an optimization model is often more useful then a single solution IND E 599 Notes 1 Slide 6 General Optimization Model The standard optimization formulation consists of: I decision variables I objective function I constraints Formulation minimize f (x) subject to gj (x) ≤ bj ; j = 1;:::; m1 hj (x) = 0; j = 1;:::; m2 xi ≥ 0; i = 1;:::; n x1; x2 2 f0; 1g (binary variables) IND E 599 Notes 1 Slide 7 Feasibility and Optimality Terminology 1. Feasible solution: a vector x 2 Rn that satisfies all constraints 2. Feasible region: the set of all feasible solutions 3. Optimal solution: a feasible solution x∗ such that f (x∗) ≤ f (x) for all feasible solutions x 4. Optimal value: f ∗ = f (x∗). Existence: I Does a feasible solution always exist? NO I If the feasible region is non-empty, does an optimal solution always exist? NO IND E 599 Notes 1 Slide 8 Existence of an optimal solution Example (Unbounded feasible region) Maximize x, for x ≥ 0 Example (Open feasible region) Minimize 1=x, for x 2 (0; 1) Theorem (Weierstrass Theorem) A continuous function f defined on a compact (closed and bounded) feasible region S HAS a minimum point x∗ 2 S such that f (x) ≥ f (x∗) for all x 2 S. IND E 599 Notes 1 Slide 9 A Special Type of Optimization Model: Linear Terminology (Linear Program) A linear program (LP) is a linear optimization model: minimize a linear objective function subject to linear equality and linear inequality constraints. Example minimize 2x1 − x2 + 4x3 subject to x1 + x2 + x4 ≤ 2 3x2 − x3 = 5 x3 + x4 ≥ 3 x1 ≥ 0 x3 ≤ 0 IND E 599 Notes 1 Slide 10 A Standard Linear Program Formulation minimize cx subject to Ax = b x ≥ 0 where x 2 Rn, A is an m × n matrix, c is 1 × n, and b is m × 1 for some integers m and n. Remark Every linear program can be converted into an equivalent problem with equality constraints and non-negativity constraints. What does \equivalent problem" mean? Problem P is equivalent to Problem Q, if, for every feasible x 2 P, there exists a feasible y 2 Q, and vice versa, and for every optimal x∗ 2 P, there exists an optimal y 2 Q, and vice versa. IND E 599 Notes 1 Slide 11 Common Modeling Tricks to Convert to Standard LP Form 1. Minimize or Maximize - that is the question Minimizing cx is equivalent to maximizing −cx. Is this true for f (x)? YES, minimizing f (x) is equivalent to maximizing −f (x) 2. Eliminate Free Variables For variables xj that are not restricted + − to be non-negative or non-positive, write xj = xj − xj , + − xj ≥ 0, xj ≥ 0. Does this trick work for nonlinear problems? + − ALMOST, need to add (xj ) · (xj ) = 0. 3. Eliminate Inequality Constraints I Modify every ≥ inequality constraint by introducing a surplus 0 variable si ≥ 0 to write ai x − si = bi . I Modify every ≤ inequality constraint by introducing a slack 0 variable si ≥ 0 to write ai x + si = bi . IND E 599 Notes 1 Slide 12 Two Equivalent Linear Programs Example + − minimize 2x1 + 4x2 minimize 2x1 + 4x2 − 4x2 + − x1 + x2 ≥ 3 x1 + x2 − x2 − s1 = 3 + − 3x1 + 2x2 = 14 3x1 + 2x2 − 2x2 = 14 + − x1 ≥ 0 x1; x2 ; x2 ; s1 ≥ 0 IND E 599 Notes 1 Slide 13 Two Variable LPs: A Geometric View minimize − x1 − x2 subject to x1 + 2x2 ≤ 3 2x1 + x2 ≤ 3 x1; x2 ≥ 0 IND E 599 Notes 1 Slide 14 A Linear Programming Model - Product Mix Example (Product Mix Problem) An engineering factory can produce five types of product (PROD1, PROD2, . , PROD5) by using two processes: grinding and drilling. We are given data on: I How much each unit of each product contributes to profit I How much time each unit of each product requires on each process (grinding and drilling) I How much employee's time is needed for final assembly of each unit of each product I Availability of grinding machines, drilling machines, and employees The problem is to find how much to make of each product so as to maximize the total profit contribution. IND E 599 Notes 1 Slide 15 Example PROD1 PROD2 PROD3 PROD4 PROD5 Profit 550 600 350 400 200 Grinding 12 20 { 25 15 Drilling 10 8 16 { { Each unit of each product uses 20 hours of an employee's time in the final assembly. The factory has three grinding machines and two drilling machines and works a six-day week with two shifts of 8 hours on each day. Eight workers are employed in assembly, each working one shift a day. Decision variables: xi is units of product i to be produced every week, i = 1;:::; 5. Objective function: Profit per week = 550x1 + 600x2 + 350x3 + 400x4 + 200x5 IND E 599 Notes 1 Slide 16 Example: Product Mix LP Model Formulation minimize 550x1 +600x2 +350x3 +400x4 +200x5 subject to 12x1 +20x2 +25x4 +15x5 ≤ 288 10x1 +8x2 +16x3 ≤ 192 20x1 +20x2 +20x3 +20x4 +20x5 ≤ 384 x1; x2; x3; x4; x5 ≥ 0 IND E 599 Notes 1 Slide 17 Example: Product Mix LP in AIMMS Software Example I Indices: Types of product i, i = 1;:::; 5 I Variables: Number of product of type i per week I Parameters: I Pi Profit contribution of product i I Gi Grinding time for product i I Di Drilling time for product i I M Manpower time for product i P5 minimize i=1 Pi xi P5 subject to i=1 Gi xi ≤ 288 P5 i=1 Di xi ≤ 192 P5 i=1 Mxi ≤ 384 x ≥ 0 IND E 599 Notes 1 Slide 18 Notes 2: Blending and other Linear Models IND E 599 October 4, 2010 IND E 599 Notes 2 Slide 1 A Linear Programming Model - Blending A blending problem is another common LP found in: I chemical processing industry I oil refinery I animal feed I pharmaceuticals A characteristic of a blending problem is using proportions with a type of balance constraint IND E 599 Notes 2 Slide 2 Example (Blending Problem) A food is manufactured by refining raw oils and blending them together. The raw oils come in two categories: I Vegetable oils: VEG1 and VEG2 I Non-vegetable oils: OIL1, OIL2 and OIL3 In any month it is not possible to refine more than 200 tons of vegetable oils and more than 250 tons of non-vegetable oils. ASSUME: there is no loss of weight in the refining process. There is a technological restriction on hardness. In the units in which hardness is measured, this must lie between 3 and 6. ASSUME: hardness blends linearly. IND E 599 Notes 2 Slide 3 Example The final product sells for $150 per ton. VEG1 VEG2 OIL1 OIL2 OIL3 Cost (per ton) 110 120 130 110 115 Hardness 8.8 6.1 2.0 4.2 5.0 How should the food manufacturer make their product in order to maximize their net profit? Decision variables: xi is the tons of oil i (i = 1;:::; 5 for VEG1, VEG2, OIL1, OIL2, OIL3) bought, refined and blended per month. y is the total quantity (tons) of product made per month. Equality (Balance) Constraint: x1 + x2 + x3 + x4 + x5 = y IND E 599 Notes 2 Slide 4 Objective Function Max Profit −110x1 − 120x2 − 130x3 − 110x4 − 115x5 + 150y Capacity Constraints Refining capacity on vegetable oil (200 tons/month) x1 + x2 ≤ 200 Refining capacity on non-vegetable oil (250 tons/month) x3 + x4 + x5 ≤ 250 Hardness Constraints 8:8x1 + 6:1x2 + 2x3 + 4:2x4 + 5x5 ≤ 6y 8:8x1 + 6:1x2 + 2x3 + 4:2x4 + 5x5 ≥ 3y Non-negativity Constraints x1; x2; x3; x4; x5 ≥ 0 y ≥ 0 The non-negativity constraint on y is redundant, and in fact, y could be removed by substituting the Balance equality.
Recommended publications
  • 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]
  • Xpress Nonlinear Manual This Material Is the Confidential, Proprietary, and Unpublished Property of Fair Isaac Corporation
    R FICO Xpress Optimization Last update 01 May, 2018 version 33.01 FICO R Xpress Nonlinear Manual This material is the confidential, proprietary, and unpublished property of Fair Isaac Corporation. Receipt or possession of this material does not convey rights to divulge, reproduce, use, or allow others to use it without the specific written authorization of Fair Isaac Corporation and use must conform strictly to the license agreement. The information in this document is subject to change without notice. If you find any problems in this documentation, please report them to us in writing. Neither Fair Isaac Corporation nor its affiliates warrant that this documentation is error-free, nor are there any other warranties with respect to the documentation except as may be provided in the license agreement. ©1983–2018 Fair Isaac Corporation. All rights reserved. Permission to use this software and its documentation is governed by the software license agreement between the licensee and Fair Isaac Corporation (or its affiliate). Portions of the program may contain copyright of various authors and may be licensed under certain third-party licenses identified in the software, documentation, or both. In no event shall Fair Isaac Corporation or its affiliates be liable to any person for direct, indirect, special, incidental, or consequential damages, including lost profits, arising out of the use of this software and its documentation, even if Fair Isaac Corporation or its affiliates have been advised of the possibility of such damage. The rights and allocation of risk between the licensee and Fair Isaac Corporation (or its affiliates) are governed by the respective identified licenses in the software, documentation, or both.
    [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]
  • 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]
  • Hydraulic Optimization Demonstration for Groundwater Pump
    Figure 5-18: Shallow Particles, Contain Shallow 20-ppb Plume, & 500 gpm for Deep 20-ppb plume (1573 gpm, 3 new wells, 1 existing well) Injection Well Well Layer 1 Well Layer 2 30000 25000 20000 15000 10000 5000 0 0 5000 10000 15000 A "+" symbol indicates that a particle starting at that location is captured by one of the remediation wells, based on particle tracking with MODPATH. Shallow particles originate half-way down in layer 1. Figure 5-19: Deep Particles, Contain Shallow 20-ppb Plume, & 500 gpm for Deep 20-ppb plume (1573 gpm, 3 new wells, 1 existing well) Injection Well Well Layer 1 Well Layer 2 30000 25000 20000 15000 10000 5000 0 0 5000 10000 15000 A "+" symbol indicates that a particle starting at that location is captured by one of the remediation wells, based on particle tracking with MODPATH. Deep particles originate half-way down in layer 2. Figure 5-20: Shallow Particles, Contain Shallow 20-ppb & 50-ppb Plumes, & 500 gpm for Deep 20-ppb plume (2620 gpm, 6 new wells, 0 existing wells) Injection Well Well Layer 1 Well Layer 2 30000 25000 20000 15000 10000 5000 0 0 5000 10000 15000 A "+" symbol indicates that a particle starting at that location is captured by one of the remediation wells, based on particle tracking with MODPATH. Shallow particles originate half-way down in layer 1. Figure 5-21: Deep Particles, Contain Shallow 20-ppb & 50-ppb Plumes, & 500 gpm for Deep 20-ppb plume (2620 gpm, 6 new wells, 0 existing wells) Injection Well Well Layer 1 Well Layer 2 30000 25000 20000 15000 10000 5000 0 0 5000 10000 15000 A "+" symbol indicates that a particle starting at that location is captured by one of the remediation wells, based on particle tracking with MODPATH.
    [Show full text]
  • Using the COIN-OR Server
    Using the COIN-OR Server Your CoinEasy Team November 16, 2009 1 1 Overview This document is part of the CoinEasy project. See projects.coin-or.org/CoinEasy. In this document we describe the options available to users of COIN-OR who are interested in solving opti- mization problems but do not wish to compile source code in order to build the COIN-OR projects. In particular, we show how the user can send optimization problems to a COIN-OR server and get the solution result back. The COIN-OR server, webdss.ise.ufl.edu, is 2x Intel(R) Xeon(TM) CPU 3.06GHz 512MiB L2 1024MiB L3, 2GiB DRAM, 4x73GiB scsi disk 2xGigE machine. This server allows the user to directly access the following COIN-OR optimization solvers: • Bonmin { a solver for mixed-integer nonlinear optimization • Cbc { a solver for mixed-integer linear programs • Clp { a linear programming solver • Couenne { a solver for mixed-integer nonlinear optimization problems and is capable of global optiomization • DyLP { a linear programming solver • Ipopt { an interior point nonlinear optimization solver • SYMPHONY { mixed integer linear solver that can be executed in either parallel (dis- tributed or shared memory) or sequential modes • Vol { a linear programming solver All of these solvers on the COIN-OR server may be accessed through either the GAMS or AMPL modeling languages. In Section 2.1 we describe how to use the solvers using the GAMS modeling language. In Section 2.2 we describe how to call the solvers using the AMPL modeling language. In Section 3 we describe how to call the solvers using a command line executable pro- gram OSSolverService.exe (or OSSolverService for Linux/Mac OS X users { in the rest of the document we refer to this executable using a .exe extension).
    [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]
  • 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]
  • Click to Edit Master Title Style
    Click to edit Master title style MINLP with Combined Interior Point and Active Set Methods Jose L. Mojica Adam D. Lewis John D. Hedengren Brigham Young University INFORM 2013, Minneapolis, MN Presentation Overview NLP Benchmarking Hock-Schittkowski Dynamic optimization Biological models Combining Interior Point and Active Set MINLP Benchmarking MacMINLP MINLP Model Predictive Control Chiller Thermal Energy Storage Unmanned Aerial Systems Future Developments Oct 9, 2013 APMonitor.com APOPT.com Brigham Young University Overview of Benchmark Testing NLP Benchmark Testing 1 1 2 3 3 min J (x, y,u) APOPT , BPOPT , IPOPT , SNOPT , MINOS x Problem characteristics: s.t. 0 f , x, y,u t Hock Schittkowski, Dynamic Opt, SBML 0 g(x, y,u) Nonlinear Programming (NLP) Differential Algebraic Equations (DAEs) 0 h(x, y,u) n m APMonitor Modeling Language x, y u MINLP Benchmark Testing min J (x, y,u, z) 1 1 2 APOPT , BPOPT , BONMIN x s.t. 0 f , x, y,u, z Problem characteristics: t MacMINLP, Industrial Test Set 0 g(x, y,u, z) Mixed Integer Nonlinear Programming (MINLP) 0 h(x, y,u, z) Mixed Integer Differential Algebraic Equations (MIDAEs) x, y n u m z m APMonitor & AMPL Modeling Language 1–APS, LLC 2–EPL, 3–SBS, Inc. Oct 9, 2013 APMonitor.com APOPT.com Brigham Young University NLP Benchmark – Summary (494) 100 90 80 APOPT+BPOPT APOPT 70 1.0 BPOPT 1.0 60 IPOPT 3.10 IPOPT 50 2.3 SNOPT Percentage (%) 6.1 40 Benchmark Results MINOS 494 Problems 5.5 30 20 10 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Not worse than 2 times slower than
    [Show full text]
  • Specifying “Logical” Conditions in AMPL Optimization Models
    Specifying “Logical” Conditions in AMPL Optimization Models Robert Fourer AMPL Optimization www.ampl.com — 773-336-AMPL INFORMS Annual Meeting Phoenix, Arizona — 14-17 October 2012 Session SA15, Software Demonstrations Robert Fourer, Logical Conditions in AMPL INFORMS Annual Meeting — 14-17 Oct 2012 — Session SA15, Software Demonstrations 1 New and Forthcoming Developments in the AMPL Modeling Language and System Optimization modelers are often stymied by the complications of converting problem logic into algebraic constraints suitable for solvers. The AMPL modeling language thus allows various logical conditions to be described directly. Additionally a new interface to the ILOG CP solver handles logic in a natural way not requiring conventional transformations. Robert Fourer, Logical Conditions in AMPL INFORMS Annual Meeting — 14-17 Oct 2012 — Session SA15, Software Demonstrations 2 AMPL News Free AMPL book chapters AMPL for Courses Extended function library Extended support for “logical” conditions AMPL driver for CPLEX Opt Studio “Concert” C++ interface Support for ILOG CP constraint programming solver Support for “logical” constraints in CPLEX INFORMS Impact Prize to . Originators of AIMMS, AMPL, GAMS, LINDO, MPL Awards presented Sunday 8:30-9:45, Conv Ctr West 101 Doors close 8:45! Robert Fourer, Logical Conditions in AMPL INFORMS Annual Meeting — 14-17 Oct 2012 — Session SA15, Software Demonstrations 3 AMPL Book Chapters now free for download www.ampl.com/BOOK/download.html Bound copies remain available purchase from usual
    [Show full text]
  • Chapter 11: Basic Linear Programming Concepts
    CHAPTER 11: BASIC LINEAR PROGRAMMING CONCEPTS Linear programming is a mathematical technique for finding optimal solutions to problems that can be expressed using linear equations and inequalities. If a real-world problem can be represented accurately by the mathematical equations of a linear program, the method will find the best solution to the problem. Of course, few complex real-world problems can be expressed perfectly in terms of a set of linear functions. Nevertheless, linear programs can provide reasonably realistic representations of many real-world problems — especially if a little creativity is applied in the mathematical formulation of the problem. The subject of modeling was briefly discussed in the context of regulation. The regulation problems you learned to solve were very simple mathematical representations of reality. This chapter continues this trek down the modeling path. As we progress, the models will become more mathematical — and more complex. The real world is always more complex than a model. Thus, as we try to represent the real world more accurately, the models we build will inevitably become more complex. You should remember the maxim discussed earlier that a model should only be as complex as is necessary in order to represent the real world problem reasonably well. Therefore, the added complexity introduced by using linear programming should be accompanied by some significant gains in our ability to represent the problem and, hence, in the quality of the solutions that can be obtained. You should ask yourself, as you learn more about linear programming, what the benefits of the technique are and whether they outweigh the additional costs.
    [Show full text]