6 Initializing Abstract Models with Data Command Files Model Data The set Command Simple Sets... 68

Size: px
Start display at page:

Download "6 Initializing Abstract Models with Data Command Files Model Data The set Command Simple Sets... 68"

Transcription

1 Contents 1 Introduction Mathematical Modeling Modeling Languages for Optimization Modeling Graph Coloring Motivating Pyomo Open Source Customizable Capability Solver Integration Modern Programming Language Getting Started Book Summary Discussion Pyomo Modeling Strategies Modeling Components Concrete Models: Specifying Components Via Expressions Concrete Models: Specifying Components Via Rules Abstract Models Optimizing Models Optimization with the pyomo Command Optimization Scripts Discussion A Examples A.1 Concrete Pyomo Model with Explicit Variables A.2 Concrete Pyomo Model with Indexed Variables A.3 Concrete Pyomo Model with External Data A.4 Concrete Pyomo Model with Constraint Rules A.5 Concrete Pyomo Model with Abstract Component Declarations A.6 Using a Function to Construct a Concrete Pyomo Model A.7 Abstract Pyomo Model A.8 A Python Script that Optimizes a Concrete Pyomo Model 26 2.A.9 A Python Script that Optimizes an Abstract Pyomo Model 27 xiii

2 xiv Contents 3 Model Components: Variables, Objectives, and Constraints Modeling with Components Variables Var Declarations Variable Initialization Working with Variables Objectives Simple Declarations Declarations with Rule Functions Constraints Declarations with Logical Expressions Declarations with Expression Tuples Constraint Lists Discussion Model Components: Sets and Parameters Set Data Set Declarations Set Initialization Set Data Validation Set Options RangeSet Discussion of Index Sets Parameter Data Param Declarations Parameter Initialization Data Validation Discussion Miscellaneous Model Components and Utility Functions Miscellaneous Components Advanced Component Indexing Functions to Support Modeling Generalized Dot Products Generating Sequences Helper Functions Discussion A Examples A.1 Error Checks in a Concrete Model A.2 Error Checks in an Abstract Model Initializing Abstract Models with Data Command Files Model Data The set Command Simple Sets

3 Contents xv Sets of Tuple Data Set Arrays The param Command One-dimensional Parameter Data Multi-Dimensional Parameter Data The import Command Simple Import Examples Import Syntax Options Interpreting Relational Tables Importing from Spreadsheets and Relational Databases The include Command Data Namespaces Discussion A Examples A.1 Namespace Data Commands A.2 The Diet Problem The Pyomo Command-line Interface Overview Building a Model Instance Specifying the Model Object Selecting Data with Namespaces Customizing Pyomo s Workflow Customizing Solver Behavior Analyze Solver Results Managing Diagnostic Output Discussion A Examples A.1 Model Object with Non-Default Name A.2 Pyomo Data Commands with Multiple Namespaces Nonlinear Programming with Pyomo Introduction Building Nonlinear Programming Formulations Nonlinear Expressions The Rosenbrock Example Solving Nonlinear Programming Formulations Nonlinear Solvers Tips for Nonlinear Programming Nonlinear Programming Examples Variable Initialization in Minimization of Multimodal Function Optimal Quotas for Sustainable Harvesting of Deer Estimation of Parameters in Infectious Disease Models Reactor Design

4 xvi Contents 8.A Examples A.1 Rosenbrock A.2 Multimodal A.3 Deer Harvesting A.4 Disease Estimation A.5 Reactor Design Stochastic Programming Extensions Introduction Stochastic Programming: Definition and Notations Modeling in PySP The Deterministic Reference Model The Scenario Tree Scenario Parameter Specification Compilation of the Scenario Tree Model Generating and Solving the Extensive Form Progressive Hedging: A Generic Decomposition Strategy The runph Script Progressive Hedging Extensions: Advanced Configuration Watson and Woodruff Extensions Solving a Constrained Extensive Form Alternative Convergence Criteria User-Defined Extensions Solving PH Scenario Sub-Problems in Parallel Discussion A Examples A.1 Farmer Model A.2 Farmer Data File A.3 Scenario Tree Model A.4 Scenario Data Command File Scripting and Algorithm Development Introduction Scripting Basics A Canonical Optimization Script Common Scripting Tasks Printing and Comparing Variable Values Looping Over Variables Initializing and Fixing Variables Adding and Dropping Constraints Sharing Solution Results Across Multiple Models Plotting Data with Matplotlib Generating Different Models with a Function Hybrid Optimization Benders Decomposition

5 Contents xvii 10.6 Discussion A Examples A.1 A Simple Optimization Script A.2 A Simple Optimization Script with Multiple Data Files A.3 A More Comprehensive Optimization Script A.4 A Comprehensive Optimization Script that Mimics the pyomo Command A.5 An Optimization Script with Multiple Models A.6 An Optimization Script that Prints the Value of Variables A.7 A Script that Performs Optimization from Two Starting Points A.8 A Script that Performs Optimization from a Grid of Starting Points A.9 A Script that Reoptimizes a Model after Fixing Variables A.10 An Iterative Optimization Process that Explicitly Activates Select Constraints A.11 Sharing Results Between Models A.12 Plotting Solver Results with Matplotlib A.13 A Sudoku Problem Solved by Iteratively Adding Cuts A.14 Hybrid Optimization for Parameter Estimation A Installing Coopr 205 A.1 Installation Overview A.2 Using an Installer A.3 Installing Coopr as a Site Package A.4 Installing a Coopr Release Using coopr install A.5 Installing a Development Branch Using coopr install A.6 Discussion B A Brief Python Tutorial 211 B.1 Overview B.2 Installing and Running Python B.3 Python Line Format B.4 Variables and Data Types B.5 Data Structures B.5.1 Strings B.5.2 Lists B.5.3 Tuples B.5.4 Sets B.5.5 Dictionaries B.6 Conditionals B.7 Iterations and Looping B.8 Generators and List Comprehensions B.9 Functions B.10 Objects and Classes

6 xviii Contents B.11 Modules B.12 Python Resources C Pyomo and Coopr: The Bigger Picture 225 C.1 Coopr Overview C.2 Optimization Solvers References 229 Index 233

7

8. Solving Stochastic Programs

8. Solving Stochastic Programs 8. Solving Stochastic Programs Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation, for the U.S.

More information

Coopr User Manual: Getting Started with the Pyomo Modeling Language

Coopr User Manual: Getting Started with the Pyomo Modeling Language Coopr User Manual: Getting Started with the Pyomo Modeling Language William E. Hart 1 Jean-Paul Watson 2 David L. Woodruff 3 November 7, 2009 1 Sandia National Laboratories, Discrete Math and Complex Systems

More information

Python Scripting for Computational Science

Python Scripting for Computational Science Hans Petter Langtangen Python Scripting for Computational Science Third Edition With 62 Figures 43 Springer Table of Contents 1 Introduction... 1 1.1 Scripting versus Traditional Programming... 1 1.1.1

More information

3. Pyomo Fundamentals

3. Pyomo Fundamentals 3. Pyomo Fundamentals John D. Siirola Discrete Math & Optimization (1464) Center for Computing Research Sandia National Laboratories Albuquerque, NM USA Sandia National Laboratories is a

More information

Python Optimization Modeling Objects (Pyomo)

Python Optimization Modeling Objects (Pyomo) Noname manuscript No. (will be inserted by the editor) Python Optimization Modeling Objects (Pyomo) William E. Hart Jean-Paul Watson David L. Woodruff Received: December 29, 2009. Abstract We describe

More information

PySP: modeling and solving stochastic programs in Python

PySP: modeling and solving stochastic programs in Python Math. Prog. Comp. (2012) 4:109 149 DOI 10.1007/s12532-012-0036-1 FULL LENGTH PAPER PySP: modeling and solving stochastic programs in Python Jean-Paul Watson David L. Woodruff William E. Hart Received:

More information

Pyomo online Documentation 3.5. Pyomo online Documentation 3.5

Pyomo online Documentation 3.5. Pyomo online Documentation 3.5 Pyomo online Documentation 3.5 i Pyomo online Documentation 3.5 Pyomo online Documentation 3.5 ii COLLABORATORS TITLE : Pyomo online Documentation 3.5 ACTION NAME DATE SIGNATURE WRITTEN BY William E. Hart

More information

PYTHON. p ykos vtawynivis. Second eciitiovl. CO Ve, WESLEY J. CHUN

PYTHON. p ykos vtawynivis. Second eciitiovl. CO Ve, WESLEY J. CHUN CO Ve, PYTHON p ykos vtawynivis Second eciitiovl WESLEY J. CHUN. PRENTICE HALL Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney

More information

Contents. Introduction

Contents. Introduction Contents Introduction xv Chapter 1. Production Models: Maximizing Profits 1 1.1 A two-variable linear program 2 1.2 The two-variable linear program in AMPL 5 1.3 A linear programming model 6 1.4 The linear

More information

Python Scripting for Computational Science

Python Scripting for Computational Science Hans Petter Langtangen Python Scripting for Computational Science Third Edition With 62 Figures Sprin ger Table of Contents 1 Introduction 1 1.1 Scripting versus Traditional Programming 1 1.1.1 Why Scripting

More information

Managing Your Biological Data with Python

Managing Your Biological Data with Python Chapman & Hall/CRC Mathematical and Computational Biology Series Managing Your Biological Data with Python Ailegra Via Kristian Rother Anna Tramontano CRC Press Taylor & Francis Group Boca Raton London

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

PySP: Modeling and Solving Stochastic Programs in Python

PySP: Modeling and Solving Stochastic Programs in Python Noname manuscript No. (will be inserted by the editor) PySP: Modeling and Solving Stochastic Programs in Python Jean-Paul Watson David L. Woodruff William E. Hart Received: September 6, 2010. Abstract

More information

CHAPTER 1: INTRODUCING C# 3

CHAPTER 1: INTRODUCING C# 3 INTRODUCTION xix PART I: THE OOP LANGUAGE CHAPTER 1: INTRODUCING C# 3 What Is the.net Framework? 4 What s in the.net Framework? 4 Writing Applications Using the.net Framework 5 What Is C#? 8 Applications

More information

pyomo.dae: A Modeling and Automatic Discretization Framework for Optimization with Differential and Algebraic Equations

pyomo.dae: A Modeling and Automatic Discretization Framework for Optimization with Differential and Algebraic Equations Noname manuscript No. (will be inserted by the editor) pyomo.dae: A Modeling and Automatic Discretization Framework for Optimization with Differential and Algebraic Equations Bethany Nicholson John D.

More information

Table of Contents. Preface... xxi

Table of Contents. Preface... xxi Table of Contents Preface... xxi Chapter 1: Introduction to Python... 1 Python... 2 Features of Python... 3 Execution of a Python Program... 7 Viewing the Byte Code... 9 Flavors of Python... 10 Python

More information

BMEGUI Tutorial 1 Spatial kriging

BMEGUI Tutorial 1 Spatial kriging BMEGUI Tutorial 1 Spatial kriging 1. Objective The primary objective of this exercise is to get used to the basic operations of BMEGUI using a purely spatial dataset. The analysis will consist in an exploratory

More information

Contents Computing with Formulas

Contents Computing with Formulas Contents 1 Computing with Formulas... 1 1.1 The First Programming Encounter: a Formula... 1 1.1.1 Using a Program as a Calculator... 2 1.1.2 About Programs and Programming... 2 1.1.3 Tools for Writing

More information

Python review. 1 Python basics. References. CS 234 Naomi Nishimura

Python review. 1 Python basics. References. CS 234 Naomi Nishimura Python review CS 234 Naomi Nishimura The sections below indicate Python material, the degree to which it will be used in the course, and various resources you can use to review the material. You are not

More information

Excel Programming with VBA (Macro Programming) 24 hours Getting Started

Excel Programming with VBA (Macro Programming) 24 hours Getting Started Excel Programming with VBA (Macro Programming) 24 hours Getting Started Introducing Visual Basic for Applications Displaying the Developer Tab in the Ribbon Recording a Macro Saving a Macro-Enabled Workbook

More information

Pyomo Documentation. Release 5.1. Pyomo

Pyomo Documentation. Release 5.1. Pyomo Pyomo Documentation Release 5.1 Pyomo Dec 19, 2018 Contents 1 Installation 3 1.1 Using CONDA.............................................. 3 1.2 Using PIP.................................................

More information

Introduction to Python

Introduction to Python Introduction to Python Version 1.1.5 (12/29/2008) [CG] Page 1 of 243 Introduction...6 About Python...7 The Python Interpreter...9 Exercises...11 Python Compilation...12 Python Scripts in Linux/Unix & Windows...14

More information

CONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17

CONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17 List of Programs xxv List of Figures xxix List of Tables xxxiii Preface to second version xxxv PART 1 Structured Programming 1 1 Getting started 3 1.1 Programming 3 1.2 Editing source code 5 Source code

More information

Contents. Chapter 1 SPECIFYING SYNTAX 1

Contents. Chapter 1 SPECIFYING SYNTAX 1 Contents Chapter 1 SPECIFYING SYNTAX 1 1.1 GRAMMARS AND BNF 2 Context-Free Grammars 4 Context-Sensitive Grammars 8 Exercises 8 1.2 THE PROGRAMMING LANGUAGE WREN 10 Ambiguity 12 Context Constraints in Wren

More information

COPT: A C++ Open Optimization Library

COPT: A C++ Open Optimization Library COPT: A C++ Open Optimization Library {Zhouwang Yang, Ruimin Wang}@MathU School of Mathematical Science University of Science and Technology of China Zhouwang Yang Ruimin Wang University of Science and

More information

Introduction to Creo Elements/Direct 19.0 Modeling

Introduction to Creo Elements/Direct 19.0 Modeling Introduction to Creo Elements/Direct 19.0 Modeling Overview Course Code Course Length TRN-4531-T 3 Day In this course, you will learn the basics about 3-D design using Creo Elements/Direct Modeling. You

More information

Torben./Egidius Mogensen. Introduction. to Compiler Design. ^ Springer

Torben./Egidius Mogensen. Introduction. to Compiler Design. ^ Springer Torben./Egidius Mogensen Introduction to Compiler Design ^ Springer Contents 1 Lexical Analysis 1 1.1 Regular Expressions 2 1.1.1 Shorthands 4 1.1.2 Examples 5 1.2 Nondeterministic Finite Automata 6 1.3

More information

DEGENERACY AND THE FUNDAMENTAL THEOREM

DEGENERACY AND THE FUNDAMENTAL THEOREM DEGENERACY AND THE FUNDAMENTAL THEOREM The Standard Simplex Method in Matrix Notation: we start with the standard form of the linear program in matrix notation: (SLP) m n we assume (SLP) is feasible, and

More information

"Charting the Course to Your Success!" MOC A Developing High-performance Applications using Microsoft Windows HPC Server 2008

Charting the Course to Your Success! MOC A Developing High-performance Applications using Microsoft Windows HPC Server 2008 Description Course Summary This course provides students with the knowledge and skills to develop high-performance computing (HPC) applications for Microsoft. Students learn about the product Microsoft,

More information

Fundamentals of the Java Programming Language

Fundamentals of the Java Programming Language Fundamentals of the Java Programming Language Student Guide SL-110 REV E D61798GC10 Edition 1.0 2009 D62399 Copyright 2006, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This document

More information

Mathematics Shape and Space: Polygon Angles

Mathematics Shape and Space: Polygon Angles a place of mind F A C U L T Y O F E D U C A T I O N Department of Curriculum and Pedagogy Mathematics Shape and Space: Polygon Angles Science and Mathematics Education Research Group Supported by UBC Teaching

More information

Multi-stage Stochastic Programming, Stochastic Decomposition, and Connections to Dynamic Programming: An Algorithmic Perspective

Multi-stage Stochastic Programming, Stochastic Decomposition, and Connections to Dynamic Programming: An Algorithmic Perspective Multi-stage Stochastic Programming, Stochastic Decomposition, and Connections to Dynamic Programming: An Algorithmic Perspective Suvrajeet Sen Data Driven Decisions Lab, ISE Department Ohio State University

More information

Solving Large-Scale Energy System Models

Solving Large-Scale Energy System Models Solving Large-Scale Energy System Models Frederik Fiand Operations Research Analyst GAMS Software GmbH GAMS Development Corp. GAMS Software GmbH www.gams.com Agenda 1. GAMS System Overview 2. BEAM-ME Background

More information

Welcome to Starting Out with Programming Logic and Design, Third Edition.

Welcome to Starting Out with Programming Logic and Design, Third Edition. Welcome to Starting Out with Programming Logic and Design, Third Edition. This book uses a language-independent approach to teach programming concepts and problem-solving skills, without assuming any previous

More information

MULTIRESOLUTION. APPROACHES in TURBULENCE. MULHSCALf and. Applications. LES, DES and Hybrid. 2nd Edition. RANS/LES Methods and Guidelines

MULTIRESOLUTION. APPROACHES in TURBULENCE. MULHSCALf and. Applications. LES, DES and Hybrid. 2nd Edition. RANS/LES Methods and Guidelines 2nd Edition MULHSCALf and MULTIRESOLUTION APPROACHES in TURBULENCE LES, DES and Hybrid Applications RANS/LES Methods and Guidelines Pierre Sagaut Uniuersite Pierre et Marie Curie-Paris 6, France Sebastien

More information

CIS581: Computer Vision and Computational Photography Project 4, Part B: Convolutional Neural Networks (CNNs) Due: Dec.11, 2017 at 11:59 pm

CIS581: Computer Vision and Computational Photography Project 4, Part B: Convolutional Neural Networks (CNNs) Due: Dec.11, 2017 at 11:59 pm CIS581: Computer Vision and Computational Photography Project 4, Part B: Convolutional Neural Networks (CNNs) Due: Dec.11, 2017 at 11:59 pm Instructions CNNs is a team project. The maximum size of a team

More information

Learning R via Python...or the other way around

Learning R via Python...or the other way around Learning R via Python...or the other way around Dept. of Politics - NYU January 7, 2010 What We ll Cover Brief review of Python The Zen of Python How are R and Python the same, and how are they different

More information

Contents. Acknowledgments Parachutes: Coda. About the Author. Presentation Conventions. PART ONE Foundations 1

Contents. Acknowledgments Parachutes: Coda. About the Author. Presentation Conventions. PART ONE Foundations 1 fm01.qxd 5/24/07 11:16 AM Page ix Preface Aims Subject Matter Structure Supplementary Material Acknowledgments Parachutes: Coda About the Author Prologue A Dichotomy of Character Principles of UNIX Programming

More information

ENGR (Socolofsky) Week 07 Python scripts

ENGR (Socolofsky) Week 07 Python scripts ENGR 102-213 (Socolofsky) Week 07 Python scripts A couple programming examples for this week are embedded in the lecture notes for Week 7. We repeat these here as brief examples of typical array-like operations

More information

C# in Depth THIRD EDITION

C# in Depth THIRD EDITION C# in Depth THIRD EDITION JON SKEET MANNING SHELTER ISLAND brief contents PART 1 PREPARING FOR THE JOURNEY...1 1 The changing face of C# development 3 2 Core foundations: building on C# 1 29 PART 2 C#

More information

Pyomo Documentation. Release 5.1. Pyomo

Pyomo Documentation. Release 5.1. Pyomo Pyomo Documentation Release 5.1 Pyomo Apr 26, 2018 Contents 1 Getting Started 3 2 Tutorial 5 3 Core Pyomo Components 9 4 Managing Data in Pyomo Models 11 5 Scripting 41 6 Modeling Extensions 43 7 Developer

More information

Modern Multidimensional Scaling

Modern Multidimensional Scaling Ingwer Borg Patrick Groenen Modern Multidimensional Scaling Theory and Applications With 116 Figures Springer Contents Preface vii I Fundamentals of MDS 1 1 The Four Purposes of Multidimensional Scaling

More information

Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS

Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS Contents Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS 1.1. INTRODUCTION TO COMPUTERS... 1 1.2. HISTORY OF C & C++... 3 1.3. DESIGN, DEVELOPMENT AND EXECUTION OF A PROGRAM... 3 1.4 TESTING OF PROGRAMS...

More information

Automation.

Automation. Automation www.austech.edu.au WHAT IS AUTOMATION? Automation testing is a technique uses an application to implement entire life cycle of the software in less time and provides efficiency and effectiveness

More information

PYTHON TRAINING COURSE CONTENT

PYTHON TRAINING COURSE CONTENT SECTION 1: INTRODUCTION What s python? Why do people use python? Some quotable quotes A python history lesson Advocacy news What s python good for? What s python not good for? The compulsory features list

More information

The Immersed Interface Method

The Immersed Interface Method The Immersed Interface Method Numerical Solutions of PDEs Involving Interfaces and Irregular Domains Zhiiin Li Kazufumi Ito North Carolina State University Raleigh, North Carolina Society for Industrial

More information

GAMS and High-Performance Computing

GAMS and High-Performance Computing GAMS and High-Performance Computing Frederik Fiand Operations Research Analyst, GAMS Software GAMS Development Corp. GAMS Software GmbH www.gams.com Motivation ... HPC standard Available Computing Resources

More information

Approximation in Linear Stochastic Programming Using L-Shaped Method

Approximation in Linear Stochastic Programming Using L-Shaped Method Approximation in Linear Stochastic Programming Using L-Shaped Method Liza Setyaning Pertiwi 1, Rini Purwanti 2, Wilma Handayani 3, Prof. Dr. Herman Mawengkang 4 1,2,3,4 University of North Sumatra, Indonesia

More information

Fuzzy Systems Handbook

Fuzzy Systems Handbook The Fuzzy Systems Handbook Second Edition Te^hnische Universitat to instmjnik AutomatisiaMngstechnlk Fachgebi^KQegelup^stheorie und D-S4283 Darrftstadt lnvfentar-ngxc? V 2^s TU Darmstadt FB ETiT 05C Figures

More information

Write an iterative real-space Poisson solver in Python/C

Write an iterative real-space Poisson solver in Python/C Write an iterative real-space Poisson solver in Python/C Ask Hjorth Larsen asklarsen@gmail.com October 10, 2018 The Poisson equation is 2 φ(r) = ρ(r). (1) This is a second-order linear dierential equation

More information

ощ 'ршорвшэш! цвн-эориэу ощ 'sajbpossv # PIPG DUJ 'ssjmoossv ^ PIPG pipa w н OX ЛЮН VAV

ощ 'ршорвшэш! цвн-эориэу ощ 'sajbpossv # PIPG DUJ 'ssjmoossv ^ PIPG pipa w н OX ЛЮН VAV ощ 'ршорвшэш! цвн-эориэу ощ 'sajbpossv # PIPG DUJ 'ssjmoossv ^ PIPG pipa w н OX ЛЮН VAV Contents Preface Chapter 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19

More information

Basic Python 3 Programming (Theory & Practical)

Basic Python 3 Programming (Theory & Practical) Basic Python 3 Programming (Theory & Practical) Length Delivery Method : 5 Days : Instructor-led (Classroom) Course Overview This Python 3 Programming training leads the student from the basics of writing

More information

ARTIFICIAL INTELLIGENCE AND PYTHON

ARTIFICIAL INTELLIGENCE AND PYTHON ARTIFICIAL INTELLIGENCE AND PYTHON DAY 1 STANLEY LIANG, LASSONDE SCHOOL OF ENGINEERING, YORK UNIVERSITY WHAT IS PYTHON An interpreted high-level programming language for general-purpose programming. Python

More information

Python in 10 (50) minutes

Python in 10 (50) minutes Python in 10 (50) minutes https://www.stavros.io/tutorials/python/ Python for Microcontrollers Getting started with MicroPython Donald Norris, McGrawHill (2017) Python is strongly typed (i.e. types are

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

Introduction to Python Part 2

Introduction to Python Part 2 Introduction to Python Part 2 v0.2 Brian Gregor Research Computing Services Information Services & Technology Tutorial Outline Part 2 Functions Tuples and dictionaries Modules numpy and matplotlib modules

More information

Computer Laboratories: Mathematical Formulation and Implementation in GAMS. S. Vitali Charles University. 3/15/2017 Copyright 2017 S.

Computer Laboratories: Mathematical Formulation and Implementation in GAMS. S. Vitali Charles University. 3/15/2017 Copyright 2017 S. Computer Laboratories: Mathematical Formulation and Implementation in GAMS 1 S. Vitali Charles University 3/15/2017 Copyright 2017 S. Vitali 1 3/15/2017 1.2 GAMS General Algebraic Modeling System: language

More information

AC : USING A SCRIPTING LANGUAGE FOR DYNAMIC PROGRAMMING

AC : USING A SCRIPTING LANGUAGE FOR DYNAMIC PROGRAMMING AC 2008-2623: USING A SCRIPTING LANGUAGE FOR DYNAMIC PROGRAMMING Louis Plebani, Lehigh University American Society for Engineering Education, 2008 Page 13.1325.1 Using a Scripting Language for Dynamic

More information

MODERN FACTOR ANALYSIS

MODERN FACTOR ANALYSIS MODERN FACTOR ANALYSIS Harry H. Harman «ö THE pigj UNIVERSITY OF CHICAGO PRESS Contents LIST OF ILLUSTRATIONS GUIDE TO NOTATION xv xvi Parti Foundations of Factor Analysis 1. INTRODUCTION 3 1.1. Brief

More information

GE PROBLEM SOVING AND PYTHON PROGRAMMING. Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING

GE PROBLEM SOVING AND PYTHON PROGRAMMING. Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING GE8151 - PROBLEM SOVING AND PYTHON PROGRAMMING Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING 1) Define Computer 2) Define algorithm 3) What are the two phases in algorithmic problem solving? 4) Why

More information

Pro Business Applications with Silverlight 4

Pro Business Applications with Silverlight 4 Pro Business Applications with Silverlight 4 Chris Anderson Apress* Contents at a Glance Contents About the Author Acknowledgments iv v xix xx a Chapter 1: Introduction 1 Who This Book Is For 1 About This

More information

CoinEasy. Kipp Martin Booth School of Business University of Chicago. November 9, 2010

CoinEasy. Kipp Martin Booth School of Business University of Chicago. November 9, 2010 CoinEasy Kipp Martin Booth School of Business University of Chicago November 9, 2010 IMPORTANT DISCLAIMER! What follows are opinions of this author not official opinions of the COIN-OR Strategic Leadership

More information

Introduction to Programming: Variables and Objects. HORT Lecture 7 Instructor: Kranthi Varala

Introduction to Programming: Variables and Objects. HORT Lecture 7 Instructor: Kranthi Varala Introduction to Programming: Variables and Objects HORT 59000 Lecture 7 Instructor: Kranthi Varala What is a program? A set of instructions to the computer that perform a specified task in a specified

More information

OPTIMIZATION METHODS

OPTIMIZATION METHODS D. Nagesh Kumar Associate Professor Department of Civil Engineering, Indian Institute of Science, Bangalore - 50 0 Email : nagesh@civil.iisc.ernet.in URL: http://www.civil.iisc.ernet.in/~nagesh Brief Contents

More information

Using Cisco IOS Software

Using Cisco IOS Software Using Cisco IOS Software This chapter provides helpful tips for understanding and configuring Cisco IOS software using the command-line interface (CLI) It contains the following sections: Understanding

More information

Code Mania Artificial Intelligence: a. Module - 1: Introduction to Artificial intelligence and Python:

Code Mania Artificial Intelligence: a. Module - 1: Introduction to Artificial intelligence and Python: Code Mania 2019 Artificial Intelligence: a. Module - 1: Introduction to Artificial intelligence and Python: 1. Introduction to Artificial Intelligence 2. Introduction to python programming and Environment

More information

David J. Pine. Introduction to Python for Science & Engineering

David J. Pine. Introduction to Python for Science & Engineering David J. Pine Introduction to Python for Science & Engineering To Alex Pine who introduced me to Python Contents Preface About the Author xi xv 1 Introduction 1 1.1 Introduction to Python for Science and

More information

Introduction to PTC Windchill PDMLink 11.0 for the Implementation Team

Introduction to PTC Windchill PDMLink 11.0 for the Implementation Team Introduction to PTC Windchill PDMLink 11.0 for the Implementation Team Overview Course Code Course Length TRN-4752-T 16 Hours In this course, you will learn how to complete basic Windchill PDMLink functions.

More information

Table of Contents 1 Introduction A Declarative Approach to Entity Resolution... 17

Table of Contents 1 Introduction A Declarative Approach to Entity Resolution... 17 Table of Contents 1 Introduction...1 1.1 Common Problem...1 1.2 Data Integration and Data Management...3 1.2.1 Information Quality Overview...3 1.2.2 Customer Data Integration...4 1.2.3 Data Management...8

More information

Advanced R. V!aylor & Francis Group. Hadley Wickham. ~ CRC Press

Advanced R. V!aylor & Francis Group. Hadley Wickham. ~ CRC Press ~ CRC Press V!aylor & Francis Group Advanced R Hadley Wickham ')'l If trlro r r 1 Introduction 1 1.1 Who should read this book 3 1.2 What you will get out of this book 3 1.3 Meta-techniques... 4 1.4 Recommended

More information

Designing Object-Oriented C++ Applications

Designing Object-Oriented C++ Applications Designing Object-Oriented C++ Applications Using the Booch Method Robert Cecil Martin Object Mentor Associates Technieche Universftat Dermstadt FACHBEREUCH INFORMATIK B1BL1OTHEK Sachgebtete: Stendort Cliffs,

More information

SCIENCE. An Introduction to Python Brief History Why Python Where to use

SCIENCE. An Introduction to Python Brief History Why Python Where to use DATA SCIENCE Python is a general-purpose interpreted, interactive, object-oriented and high-level programming language. Currently Python is the most popular Language in IT. Python adopted as a language

More information

Contents Metal Forming and Machining Processes Review of Stress, Linear Strain and Elastic Stress-Strain Relations 3 Classical Theory of Plasticity

Contents Metal Forming and Machining Processes Review of Stress, Linear Strain and Elastic Stress-Strain Relations 3 Classical Theory of Plasticity Contents 1 Metal Forming and Machining Processes... 1 1.1 Introduction.. 1 1.2 Metal Forming...... 2 1.2.1 Bulk Metal Forming.... 2 1.2.2 Sheet Metal Forming Processes... 17 1.3 Machining.. 23 1.3.1 Turning......

More information

Acknowledgments Introduction. Part I: Programming Access Applications 1. Chapter 1: Overview of Programming for Access 3

Acknowledgments Introduction. Part I: Programming Access Applications 1. Chapter 1: Overview of Programming for Access 3 74029ftoc.qxd:WroxPro 9/27/07 1:40 PM Page xiii Acknowledgments Introduction x xxv Part I: Programming Access Applications 1 Chapter 1: Overview of Programming for Access 3 Writing Code for Access 3 The

More information

Contents in Detail. Part I: Content

Contents in Detail. Part I: Content Contents in Detail Introduction... xvii Inside This Book... xviii What You Should Know Going In...xix Using This Book... xix Our Approach to Understanding Wikipedia...xx It s Everyone s Encyclopedia: Be

More information

Pure Cutting Plane Methods for ILP: a computational perspective

Pure Cutting Plane Methods for ILP: a computational perspective Pure Cutting Plane Methods for ILP: a computational perspective Matteo Fischetti, DEI, University of Padova Rorschach test for OR disorders: can you see the tree? 1 Outline 1. Pure cutting plane methods

More information

"Charting the Course... Oracle 18c PL/SQL (5 Day) Course Summary

Charting the Course... Oracle 18c PL/SQL (5 Day) Course Summary Course Summary Description This course provides a complete, hands-on, comprehensive introduction to PL/SQL including the use of both SQL Developer and SQL*Plus. This coverage is appropriate for both Oracle11g

More information

Introduction to C++/CLI 3. What C++/CLI can do for you 6 The rationale behind the new syntax Hello World in C++/CLI 13

Introduction to C++/CLI 3. What C++/CLI can do for you 6 The rationale behind the new syntax Hello World in C++/CLI 13 contents preface xv acknowledgments xvii about this book xix PART 1 THE C++/CLI LANGUAGE... 1 1 Introduction to C++/CLI 3 1.1 The role of C++/CLI 4 What C++/CLI can do for you 6 The rationale behind the

More information

CS 3360 Design and Implementation of Programming Languages. Exam 1

CS 3360 Design and Implementation of Programming Languages. Exam 1 1 Spring 2016 (Monday, March 21) Name: CS 3360 Design and Implementation of Programming Languages Exam 1 This test has 18 questions and pages numbered 1 through 6. Reminders This test is closed-notes and

More information

Functions, Scope & Arguments. HORT Lecture 12 Instructor: Kranthi Varala

Functions, Scope & Arguments. HORT Lecture 12 Instructor: Kranthi Varala Functions, Scope & Arguments HORT 59000 Lecture 12 Instructor: Kranthi Varala Functions Functions are logical groupings of statements to achieve a task. For example, a function to calculate the average

More information

Microsoft Visual C# Step by Step. John Sharp

Microsoft Visual C# Step by Step. John Sharp Microsoft Visual C# 2013 Step by Step John Sharp Introduction xix PART I INTRODUCING MICROSOFT VISUAL C# AND MICROSOFT VISUAL STUDIO 2013 Chapter 1 Welcome to C# 3 Beginning programming with the Visual

More information

Contents Introduction Sparse Feature Extraction and Matching

Contents Introduction Sparse Feature Extraction and Matching Contents 1 Introduction 1 1.1 Motivation........................ 1 1.2 Image Domain Warping................. 4 1.3 Thesis Overview..................... 8 1.4 Prior Work........................ 10 1.5 Contributions.......................

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

Episode 8 Matplotlib, SciPy, and Pandas. We will start with Matplotlib. The following code makes a sample plot.

Episode 8 Matplotlib, SciPy, and Pandas. We will start with Matplotlib. The following code makes a sample plot. Episode 8 Matplotlib, SciPy, and Pandas Now that we understand ndarrays, we can start using other packages that utilize them. In particular, we're going to look at Matplotlib, SciPy, and Pandas. Matplotlib

More information

Intelligent Control. 4^ Springer. A Hybrid Approach Based on Fuzzy Logic, Neural Networks and Genetic Algorithms. Nazmul Siddique.

Intelligent Control. 4^ Springer. A Hybrid Approach Based on Fuzzy Logic, Neural Networks and Genetic Algorithms. Nazmul Siddique. Nazmul Siddique Intelligent Control A Hybrid Approach Based on Fuzzy Logic, Neural Networks and Genetic Algorithms Foreword by Bernard Widrow 4^ Springer Contents 1 Introduction 1 1.1 Intelligent Control

More information

Acknowledgments Introduction. Chapter 1: Introduction to Access 2007 VBA 1. The Visual Basic Editor 18. Testing Phase 24

Acknowledgments Introduction. Chapter 1: Introduction to Access 2007 VBA 1. The Visual Basic Editor 18. Testing Phase 24 Acknowledgments Introduction Chapter 1: Introduction to Access 2007 VBA 1 What Is Access 2007 VBA? 1 What s New in Access 2007 VBA? 2 Access 2007 VBA Programming 101 3 Requirements-Gathering Phase 3 Design

More information

Integrating Optimization Modeling with General-Purpose Programming for Efficient and Reliable Application Deployment

Integrating Optimization Modeling with General-Purpose Programming for Efficient and Reliable Application Deployment Integrating Optimization Modeling with General-Purpose Programming for Efficient and Reliable Application Deployment Robert Fourer, Filipe Brandão AMPL Optimization {4er,fdabrandao}@ampl.com Christian

More information

Programming for AmI MOTIVATIONS AND GOALS

Programming for AmI MOTIVATIONS AND GOALS Programming for AmI MOTIVATIONS AND GOALS Why AmI needs programming? Define the goals and requirements of software development for an Ambient Intelligent system Ambient Intelligence systems: digital environments

More information

C# Programming: From Problem Analysis to Program Design. Fourth Edition

C# Programming: From Problem Analysis to Program Design. Fourth Edition C# Programming: From Problem Analysis to Program Design Fourth Edition Preface xxi INTRODUCTION TO COMPUTING AND PROGRAMMING 1 History of Computers 2 System and Application Software 4 System Software 4

More information

Fall 2018 Updates. Materials and Energy Balances. Fundamental Programming Concepts. Data Structure Essentials (Available now) Circuits (Algebra)

Fall 2018 Updates. Materials and Energy Balances. Fundamental Programming Concepts. Data Structure Essentials (Available now) Circuits (Algebra) Fall 2018 Updates Materials and Energy Balances New Sections Solver and least squares fits Error and statistics Interpolation 9.9 Integration and numerical integration 9.10 Math functions 9.11 Logical

More information

Summary of Contents LIST OF FIGURES LIST OF TABLES

Summary of Contents LIST OF FIGURES LIST OF TABLES Summary of Contents LIST OF FIGURES LIST OF TABLES PREFACE xvii xix xxi PART 1 BACKGROUND Chapter 1. Introduction 3 Chapter 2. Standards-Makers 21 Chapter 3. Principles of the S2ESC Collection 45 Chapter

More information

Parallel Architectures and Algorithms for Large-Scale Nonlinear Programming

Parallel Architectures and Algorithms for Large-Scale Nonlinear Programming Parallel Architectures and Algorithms for Large-Scale Nonlinear Programming Carl D. Laird Associate Professor, School of Chemical Engineering, Purdue University Faculty Fellow, Mary Kay O Connor Process

More information

Verilog HDL. A Guide to Digital Design and Synthesis. Samir Palnitkar. SunSoft Press A Prentice Hall Title

Verilog HDL. A Guide to Digital Design and Synthesis. Samir Palnitkar. SunSoft Press A Prentice Hall Title Verilog HDL A Guide to Digital Design and Synthesis Samir Palnitkar SunSoft Press A Prentice Hall Title Table of Contents About the Author Foreword Preface Acknowledgments v xxxi xxxiii xxxvii Part 1:

More information

Time Series Analysis by State Space Methods

Time Series Analysis by State Space Methods Time Series Analysis by State Space Methods Second Edition J. Durbin London School of Economics and Political Science and University College London S. J. Koopman Vrije Universiteit Amsterdam OXFORD UNIVERSITY

More information

SECTION I: ALL ABOUT STRUTS2 FRAMEWORK 1. FUNDAMENTALS OF STRUTS AND STRUTS2...

SECTION I: ALL ABOUT STRUTS2 FRAMEWORK 1. FUNDAMENTALS OF STRUTS AND STRUTS2... Table Of Contents SECTION I: ALL ABOUT STRUTS 2 FRAMEWORK 1. FUNDAMENTALS OF STRUTS AND STRUTS 2... 1 STANDARD APPLICATION FLOW... 1 Framework... 2 Why Struts?... 3 MVC... 3 APPLICATION FLOW IN MVC...

More information

Accelerating image registration on GPUs

Accelerating image registration on GPUs Accelerating image registration on GPUs Harald Köstler, Sunil Ramgopal Tatavarty SIAM Conference on Imaging Science (IS10) 13.4.2010 Contents Motivation: Image registration with FAIR GPU Programming Combining

More information

PROBLEM SOLVING WITH FORTRAN 90

PROBLEM SOLVING WITH FORTRAN 90 David R. Brooks PROBLEM SOLVING WITH FORTRAN 90 FOR SCIENTISTS AND ENGINEERS Springer Contents Preface v 1.1 Overview for Instructors v 1.1.1 The Case for Fortran 90 vi 1.1.2 Structure of the Text vii

More information

Acknowledgements...xvii. Foreword...xix

Acknowledgements...xvii. Foreword...xix Contents Acknowledgements...xvii Foreword...xix Chapter 1 An Introduction to BPM... 1 1.1 Brief History of Business Process Management... 1 1.1.1 The Need for Business Value... 1 1.1.2 The Production Line...

More information

Figures, Tables, and Listings

Figures, Tables, and Listings Figures, Tables, and Listings Preface About This Book xxiii Chapter 1 Introduction to Interapplication Communication 1-1 Figure 1-1 Principal methods of communication between applications 1-5 Figure 1-2

More information

9 Modified Big Bang Big Crunch Algorithm Introduction MBB BC Method Introduction to BB BC Method

9 Modified Big Bang Big Crunch Algorithm Introduction MBB BC Method Introduction to BB BC Method Contents 1 Introduction... 1 1.1 Metaheuristic Algorithms for Optimization... 1 1.2 Optimal Design of Structures and Goals of the Present Book... 2 1.3 Organization of the Present Book... 5 References...

More information