OpenSolver: Open Source Optimisation for Excel
|
|
|
- Dorthy Evans
- 9 years ago
- Views:
Transcription
1 OpenSolver: Open Source Optimisation for Excel Andrew J Mason Department of Engineering Science University of Auckland New Zealand [email protected] Iain Dunning Department of Engineering Science University of Auckland New Zealand Abstract We have developed an open source Excel add-in, known as OpenSolver, that allows linear and integer programming models developed in Excel to be solved using the COIN-OR CBC solver. This paper describes OpenSolver s development and features. Key words: OpenSolver, Open Source, Excel, Solver, Add-in, COIN-OR, CBC. 1 Introduction Microsoft Excel (Wikipedia, 2010) contains a built-in optimisation tool known as Solver (Frontline, 2010). Solver is developed by Frontline Systems, who provide the software to Microsoft. Using Solver, a user can develop a spreadsheet optimisation model and then solve it to find an optimal solution. Many introductory optimisation courses use Solver and Excel to introduce students to modelling and optimisation. Unfortunately, when students apply their optimisation skills to real-world problems, they often discover that the size of problem Solver can optimise is artificially limited to no more than 200 decision variables (Solver Limits, 2010), and that they need to upgrade Solver to one of Frontline s more expensive products, such as Premium Solver. (Beta versions of the latest Excel version, Excel 2010, have a smaller variable limit (Dunning 2010); the current variable limit in shipping versions of Excel 2010 has not been confirmed.) We have recently been involved in the development of a large staff scheduling model. This model was developed as part of a consultancy exercise where it was important that the model could be used and scrutinised by a range of different users. Satisfying this requirement using commercial products would have been logistically difficult and expensive. For a number of years, a group known as COIN-OR (Computational Infrastructure for OR) (COIN-OR, 2010) have been developing and promoting open source optimisation software, including the linear/integer programming optimiser known as 181
2 CBC (CBC, 2010). While typically not as fast as its commercial equivalents, the COIN- OR software has gained a reputation for quality and reliability and is now widely used in industrial applications. The combination of Excel and COIN-OR is a compelling one, and appeared to be a perfect solution for our large staff scheduling model. Unfortunately, we were unable to find any software that allowed Excel spreadsheet models to be solved using any of the COIN-OR optimisers. A decision was taken to develop such software to progress the scheduling project. This decision eventually led to the development of OpenSolver, a freely available Excel add-in that allows existing spreadsheet linear and integer programming models to be solved using the COIN-OR CBC optimiser 2 Solver Operation We start by briefly describing how optimisation models are built using Solver. Readers familiar with Solver may wish to skip this section. A typical linear programming model is shown in Figure 1. The decision variables are given in cells C2:E2. Cell G4 defines the objective function using a sumproduct formula defined in terms of the decision variables and the objective coefficients in cells C4:E4. Each of the constraints are defined in terms of a constraint left hand side (LHS) in G6:G9 and right hand side (RHS) in I6:I9. Note that the min in B4 and the constraint relations in H6:H9 are for display purposes only, and are not used by Solver. Figure 1: A typical spreadsheet optimization model. Many models do not follow this layout, but instead hide the model inside the spreadsheet formulae. 182
3 Figure 2 shows how this model is set up using Solver. The decision variables, objective function cell and constraint left and right hand side cells must all be specified by the user within Solver. Note that a constraint can either consist of two multi-cell ranges of the same dimension, such as A4:A8 >= B4:B8, or a multi-cell range and a constant or single-cell range such as A4:A8 <= 8. Integer and binary restrictions on the variables can also be specified using constraints. Figure 2: Solver setup for the model above. The means by which Solver stores a model does not appear to be documented. However, a Google search eventually uncovered a comment that Solver uses hidden named ranges (see, e.g., Walkenbach 2010). The Excel Name Manager add-in (Pieterse, 2010), developed by Jan Karel Pieterse of Decision Models UK, was then used to reveal this hidden data. The names used by Solver are documented in Appendix 1. OpenSolver uses these named ranges to determine the decision variables, the objective function and LHS and RHS ranges of each constraint. 3 Constructing a Model from Excel Ranges We wish to analyse the spreadsheet data to build an optimisation model which has equations of the form: Min/max c 1 x 1 +c 2 x c n x n Subject to a 11 x 1 +a 12 x a 1n x n /=/ b 1 a 21 x 1 +a 22 x a 2n x n /=/ b 2... a m1 x 1 +a m2 x x 1, x 2,..., x n >= 0 a mn x n /=/ b m Assuming the model is linear, then the Excel data can be thought of as defining an objective function given by Obj(x) = c 0 +c 1 x 1 +c 2 x c n x n where x=(x 1, x 2,..., x n ) are the decision variable values, Obj(x) is the objective function cell value, and c 0 is a constant. Similarly, each constraint equation i is defined in Excel by 183
4 LHS i (x) /=/ RHS i (x) LHS i (x) - RHS i (x) /=/ 0, i=1, 2,..., m where LHS i (x) and RHS i (x) are the cell values for the LHS and RHS of constraint i respectively given decision variable values x. Because Solver allows both LHS i (x) and RHS i (x) to be expressions, we assume that both of these are linear functions of the decision variables. Thus, we have a i1 x 1 +a i2 x a in x n - b i = LHS i (x) - RHS i (x), i=1, 2,..., m. OpenSolver determines the coefficients for the objective function and constraints through numerical differentiation. First, all the decision variables are set to zero, x=x 0 =(0,0,...,0) giving: c 0 =Obj(x 0 ) b i = RHS i (x 0 ) - LHS i (x 0 ), i=1, 2,..., m Then, each variable x j is set to 1 in turn, giving decision variables values x=x j, where x j =(x 1 j, x 2 j,..., x n j ) is a unit vector with the single non-zero element x j j =1. Then, the spreadsheet is recalculated, and the change in the objective and LHS and RHS of each constraint recorded. This allows us to calculate the following coefficients: c j = Obj(x j )-c 0 a ij = LHS(x j )-RHS(x j )+b i, i=1, 2,..., m This process assumes that these equations are indeed all linear. OpenSolver does not currently check this, but will do so in a future release. The speed of this process is set by the speed at which Excel can re-calculate the spreadsheet. As an example, the large staff scheduling model discussed earlier has 532 variables and 1909 constraints, and took 22s to build (and just 1 second to solve) on an Intel Core-2 Duo 2.66GHz laptop. There are a number of different Excel calculation options available, such as just recalculating individual cells or recalculating the full worksheet or workbook. OpenSolver currently does a full workbook recalculation as the other options did not appear to give any faster results. In our model form above, we have specified that the decision variables are all nonnegative. This assumption is also made by the COIN-OR CBC solver we use. To ensure this is the case, OpenSolver requires the user to set Solver s Assume Non-Negative option. OpenSolver cannot currently solve models for which this is not the case. OpenSolver also requires that Solver s Assume Linear Model is set. 4 Integration with COIN-OR CBC Solver OpenSolver uses the COIN-OR CBC linear/integer programming solver to generate its solutions. While this solver can be called directly as a DLL, OpenSolver adopts the simpler process of writing a.lp file that contains the model definition and then calling the command line version of CBC with this file as an input argument. CBC then produces an output file which is read back by OpenSolver. If a solution has been found, OpenSolver uses this to set the values of the decision variable cells. Any infeasibility or unboundedness, or early termination caused by time limits, is reported using a dialog. Solver provides the user with a number of solution options. Of these, the Max Time option is passed to CBC (using the CBC parameter -seconds ), and the Tolerance option is passed (using -ratiogap ) to set the percentage tolerance required for CBC integer solutions. Other CBC options can be set by creating a two column 184
5 range named OpenSolver_CBCParameters on the spreadsheet that contains CBC parameter names and values. If the Show Iteration Results option is set, OpenSolver displays the CBC command line window while CBC is running. (OpenSolver does not provide the stepby-step functionality that this option enables in Solver.) 5 Excel Integration and User Interface OpenSolver is coded in Visual Basic for Applications and runs as an Excel add-in. The add-in presents the user with new OpenSolver controls using the standard ribbon interface. These OpenSolver buttons and menus are shown in Figure 3 and Figure 4. Figure 3: OpenSolver s buttons and menu appear in Excel's Data ribbon. Figure 4: OpenSolver s menu gives access to its more advanced options. OpenSolver is downloaded as a single.zip file which when expanded gives a folder containing the CBC files and the OpenSolver.xlam add-in. Double clicking OpenSolver.xlam loads OpenSolver and adds the new OpenSolver buttons and menu to Excel. OpenSolver then remains available until Excel is quit. If required, the OpenSolver and CBC files can be copied to the appropriate Office folder to ensure OpenSolver is available every time Excel is launched. Note that no installation program needs to be run to install either OpenSolver or CBC. 6 Performance We have found OpenSolver s performance to be similar or better than Solver s. CBC appears to be a more modern optimizer than Solver s, and so gives much improved 185
6 performance on some difficult problems. For example, large knapsack problems which take hours with Solver are solved instantly using OpenSolver, thanks to the newer techniques such as problem strengthening and preprocessing used by CBC. 7 Model Visualisation To view an optimisation model developed using the built-in Solver, the user needs to check both the equations on the spreadsheet and the model formulation as entered into Solver. This separation between the equations and the model form makes checking and debugging difficult. OpenSolver provides a novel solution to this in the form of direct model visualisation on the spreadsheet. As Figure 5 shows, OpenSolver can annotate a spreadsheet to display a model as follows: The objective cell is highlighted and labelled min or max The adjustable cells are shaded. Binary and integer decision variable cells are labelled b and i respectively. Each constraint is highlighted, and its sense (,, or =) shown (using a >, < or = respectively). We have found this model visualisation to be very useful for checking large models, and believe it will be very useful debugging tool for students learning to use Solver. Figure 5: OpenSolver can display an optimisation model directly on the spreadsheet. The screenshot on the left shows OpenSolver s highlighting for the model given earlier, while the screenshot on the right illustrates OpenSolver s highlighting for several other common model representations. 8 Automatic Model Construction The original design of OpenSolver envisaged the continued use of Solver to build (but not solve) the optimisation models. However, we have developed additional functionality that allows OpenSolver to build Solver-compatible models itself without requiring any user-interaction with Solver. Our approach builds on the philosophy that the model should be fully documented on the spreadsheet. Thus, we require that the spreadsheet identifies the objective sense (using the keyword min or max or variants of these), and gives the sense (>=,<=, or =) of each constraint. Our example problem shown in Figure 1 satisfies these requirements. In our teaching, we have always recommended this model layout as good practice, and note that many textbooks follow a similar approach. Our keyword-based approach creates only a minimal additional 186
7 burden for the user but, by allowing the model construction process to be automated, delivers what we consider to be a significantly improved modelling experience. To identify the model, OpenSolver starts by searching for a cell containing the text `min or max (or variants on these). It then searches the cells in the vicinity of this min/max cell to find a cell containing a formula (giving preference to any cell containing a sumproduct formula); if one is found, this is assumed to define the objective function. The user is then asked to confirm that this is the objective function cell, or manually set or change the objective function cell. After identifying the objective function cell, OpenSolver then tries to locate the decision variables. Because the objective function depends on the decision variable cells, these decision cells must be contained in the set of the objective function s precedent cells (i.e. the cells referred to by the objective function formula, either directly or indirectly through other intermediate cells). However, if a sumproduct is used, for example, these precedents will also contain the objective function coefficients. OpenSolver attempts to distinguish between decision variables and objective function coefficients by looking at the number of dependent cells. An objective function coefficient will typically only have one dependent cell, being the objective function cell. However, decision variables will have many dependents as they feature in both the objective function cell and in the constraint cells. Thus, OpenSolver examines each objective function precedent cell, and keeps as decision variables those cells with more than 1 successor. The resultant set of decision variables is presented to the user to confirm or change. The next step is to identify any binary or integer restrictions on the decision variables. These are assumed to be indicated in the spreadsheet by the text binary or integer (and variants of these) entered in the cell beneath any restricted decision variable. The final requirement is to determine the constraints. OpenSolver considers all cells (except for the objective function cell) that are successors of the decision variables, and searches in the vicinity of each of these for one of the symbols <=, <, =, >=, or >. A constraint is created for each occurrence of these symbols. As shown in, OpenSolver allows the user to correct mistakes made when determining the objective function cell, the decision variable cells, and/or any binary or integer restrictions on these cells. Errors in the constraints currently need to be corrected using Solver. Once the model has been confirmed (and/or corrected) by the user, it is constructed and stored using the standard Solver named ranges, and thus can be solved using Solver or OpenSolver. It can also be edited using Solver. Testing on a range of spreadsheet models has shown that the auto-model algorithms work correctly for commonly taught model layouts including tabular models such as transportation. The AutoModel feature has been developed by Iain Dunning, a student in the Engineering Science department at the University of Auckland 9 Advanced Features OpenSolver offers a number of features for advanced users, including: The ability to easily solve an LP relaxation, Interaction with the CBC solver via the command line, Faster running using Quick Solve when repeatedly solving the same problem with a succession of different right hand sides, and Viewing of the.lp problem file and CBC s solution file 187
8 Note that our large scheduling problem had to be solved repeatedly for 52 different right hand side values. The Quick Solve feature was developed to remove the need to repeatedly analyse the spreadsheet to determine the model coefficients. Using Quick Solve reduced the scheduling problem s run times for from one hour to one minute. Figure 6: The auto-model dialog, shown here for the model in Figure 1, guides the user through the model building steps, allowing them to correct any mistakes made by OpenSolver s auto-model algorithms. 10 User Feedback As at 10 November 2010, OpenSolver has been downloaded over 750 times since 16 July Since 20 June 2010, the OpenSolver web site, has 188
9 served over 6000 page views to over 1800 visitors. Much of this interest can be attributed to OpenSolver being featured on Mike Trick s OR blog (Trick, 2010) and mentioned on the IEOR Tools website (Larry, 2010). It is difficult to determine how OpenSolver is being used, but a comment by Joel Sokol from Georgia Tech on the OpenSolver web site describes one use of OpenSolver as follows: Thanks, Andrew! I m using OpenSolver on a project I m doing for a Major League Baseball team, and it s exactly what I needed. It lets the team use their preferred platform, creates and solves their LPs very quickly, and doesn t constrain them with any variable limits. Thanks again! - Joel Sokol, August 11, Conclusions We have shown that it is possible to leverage the COIN-OR software to provide users with a new open source option for delivering spreadsheet-based operations research solutions. While our software is compatible with Solver, it also provides novel tools for visualising and building spreadsheet models that we hope will benefit both students and practitioners. References CBC, 8 November 2010, COIN-OR, 8 November 2010, Dunning, I., personal communication, August 2010 FrontLine, 8 November 2010, Larry, 7 July 2010, Pieterse, J.K., 6 November 2010, Solver Limits, 8 November 2010, Trick, M., 7 July 2010, Walkenbach, J., Excel 2010 Formulas, p75, Wiley Publishing, Indiana, 2010, online on 7 November 2010 at Google Books. Wikipedia, Microsoft Excel, 7 November 2010, Appendix 1: Solver s internal model representation under Excel 2010 and earlier versions. (This is a partial listing for Excel 2010.) Name 1 Interpretation Example Values 2 solver_lhs1, solver_lhs2,... 5 A range defining the left hand side of constraints 1, 2,..., =Sheet1!$G$6:$G$7 =Sheet1!$G$8 solver_rhs1, solver_rhs2,... 5 The right hand side of constraints 1, 2,... defined by either a range or a constant value or one of the keywords: integer, binary =Sheet1!$I$6:$I$7 =7 solver_rel1, solver_rel2,... 5 Proceedings of the 45 th Annual Conference of the ORSNZ, November 2010 The nature of the constraint, being one of the following integer values: 1: <=, 2: =, 3: >=, 4: integer, 5: binary =1 =binary solver_num 5 The number of constraints. =2 solver_adj A range defining the decision variables =Sheet1!$C$2:$E$2 (termed adjustable cells) 189
10 solver_lin 3,7 1 if the user has ticked Assume linear model, 2 if this is unchecked. =1 =2 solver_neg 3 1 if the user has ticked Assume nonnegative, 2 if this is unchecked. =1 =2 solver_nwt Solver s Search option value, =1 1= Newton, 2= Conjugate solver_pre Solver s Precision option value = solver_cvg Solver s Convergence option value = solver_drv Solver s Derivative option value, =1 1= Forward, 2= Central solver_est Solver s Estimates option value, =1 1= Tangent, 2= Quadratic solver_itr Solver s Iterations option value, the =100 maximum number of iterations (branch and bound nodes?) Solver can run for before the user is alerted solver_scl Solver s Use Automatic Scaling option =2 value, 1=true, 2=false solver_sho 8 Solver s Show Iteration Results option =2 value, 1=true, 2=false solver_tim Solver s Max time option value, the =100 maximum number of seconds Solver can run for before the user is alerted solver_tol Solver s Tolerance option value, stored as =0.05 a fraction and displayed to the user as a percentage value. solver_typ Objective sense, as in Set target cell to : =2 1= Max, 2= Min, 3= Value of solver_val If solver_typ=3, this gives the target value =0 for the objective function. solver_ver 8 Solver version.(=3 in Excel 2010) =3 solver_eng 8 Engine. 1=Nonlinear, 2=Simplex, =2 3=Evolutionary Notes: 1: The name is local to the sheet, and so is prefixed by the sheet name, e.g. Sheet1!solver_lhs1. 2: The value always begins with an =, e.g. =2 or =Sheet1!$C$2:$E$2 3: Models built using older versions of Solver may not have this defined. 4: Some values may be missing. For example, a model can be defined that has no decision variables. 5: solver_num may be less than the apparent number of constraints. This occurs when constraints are deleted because Solver does not delete the unused solver_lhs, solver_rhs and solver_rel names. 6: References such as =Sheet1!#REF! can occur in the current model if cells have been deleted. These are detected by OpenSolver. 7: Excel 2010 removes the Assume linear model option, and instead asks the user to choose the specific solver (linear solver, non-linear solver or genetic algorithm). 8: Not defined in versions before Excel
Using EXCEL Solver October, 2000
Using EXCEL Solver October, 2000 2 The Solver option in EXCEL may be used to solve linear and nonlinear optimization problems. Integer restrictions may be placed on the decision variables. Solver may be
Solving Linear Programs using Microsoft EXCEL Solver
Solving Linear Programs using Microsoft EXCEL Solver By Andrew J. Mason, University of Auckland To illustrate how we can use Microsoft EXCEL to solve linear programming problems, consider the following
USING EXCEL 2010 TO SOLVE LINEAR PROGRAMMING PROBLEMS MTH 125 Chapter 4
ONE-TIME ONLY SET UP INSTRUCTIONS Begin by verifying that the computer you are using has the Solver Add-In enabled. Click on Data in the menu across the top of the window. On the far right side, you should
Solving Linear Programs in Excel
Notes for AGEC 622 Bruce McCarl Regents Professor of Agricultural Economics Texas A&M University Thanks to Michael Lau for his efforts to prepare the earlier copies of this. 1 http://ageco.tamu.edu/faculty/mccarl/622class/
Installing and Using the Monte Carlo Simulation Excel Add-in. Software for
Installing and Using the Monte Carlo Simulation Excel Add-in Software for Introductory Econometrics By Humberto Barreto and Frank M. Howland [email protected] and [email protected] (765) 658-4531 and
EXCEL SOLVER TUTORIAL
ENGR62/MS&E111 Autumn 2003 2004 Prof. Ben Van Roy October 1, 2003 EXCEL SOLVER TUTORIAL This tutorial will introduce you to some essential features of Excel and its plug-in, Solver, that we will be using
Polynomial Neural Network Discovery Client User Guide
Polynomial Neural Network Discovery Client User Guide Version 1.3 Table of contents Table of contents...2 1. Introduction...3 1.1 Overview...3 1.2 PNN algorithm principles...3 1.3 Additional criteria...3
E x c e l 2 0 1 0 : Data Analysis Tools Student Manual
E x c e l 2 0 1 0 : Data Analysis Tools Student Manual Excel 2010: Data Analysis Tools Chief Executive Officer, Axzo Press: Series Designer and COO: Vice President, Operations: Director of Publishing Systems
Notes on Excel Forecasting Tools. Data Table, Scenario Manager, Goal Seek, & Solver
Notes on Excel Forecasting Tools Data Table, Scenario Manager, Goal Seek, & Solver 2001-2002 1 Contents Overview...1 Data Table Scenario Manager Goal Seek Solver Examples Data Table...2 Scenario Manager...8
ECDL. European Computer Driving Licence. Spreadsheet Software BCS ITQ Level 2. Syllabus Version 5.0
European Computer Driving Licence Spreadsheet Software BCS ITQ Level 2 Using Microsoft Excel 2010 Syllabus Version 5.0 This training, which has been approved by BCS, The Chartered Institute for IT, includes
Images of Microsoft Excel dialog boxes Microsoft. All rights reserved. This content is excluded from our Creative Commons license.
1 Images of Microsoft Excel dialog boxes Microsoft. All rights reserved. This content is excluded from our Creative Commons license. For more information, see http://ocw.mit.edu/help/faq-fair-use/. Tool
Airport Planning and Design. Excel Solver
Airport Planning and Design Excel Solver Dr. Antonio A. Trani Professor of Civil and Environmental Engineering Virginia Polytechnic Institute and State University Blacksburg, Virginia Spring 2012 1 of
Calc Guide Chapter 9 Data Analysis
Calc Guide Chapter 9 Data Analysis Using Scenarios, Goal Seek, Solver, others Copyright This document is Copyright 2007 2011 by its contributors as listed below. You may distribute it and/or modify it
Linear Programming. Solving LP Models Using MS Excel, 18
SUPPLEMENT TO CHAPTER SIX Linear Programming SUPPLEMENT OUTLINE Introduction, 2 Linear Programming Models, 2 Model Formulation, 4 Graphical Linear Programming, 5 Outline of Graphical Procedure, 5 Plotting
Graphing Parabolas With Microsoft Excel
Graphing Parabolas With Microsoft Excel Mr. Clausen Algebra 2 California State Standard for Algebra 2 #10.0: Students graph quadratic functions and determine the maxima, minima, and zeros of the function.
Migrating to Excel 2010 from Excel 2003 - Excel - Microsoft Office 1 of 1
Migrating to Excel 2010 - Excel - Microsoft Office 1 of 1 In This Guide Microsoft Excel 2010 looks very different, so we created this guide to help you minimize the learning curve. Read on to learn key
IBM ILOG CPLEX for Microsoft Excel User's Manual
IBM ILOG CPLEX V12.1 IBM ILOG CPLEX for Microsoft Excel User's Manual Copyright International Business Machines Corporation 1987, 2009 US Government Users Restricted Rights - Use, duplication or disclosure
Microsoft Excel 2010 Part 3: Advanced Excel
CALIFORNIA STATE UNIVERSITY, LOS ANGELES INFORMATION TECHNOLOGY SERVICES Microsoft Excel 2010 Part 3: Advanced Excel Winter 2015, Version 1.0 Table of Contents Introduction...2 Sorting Data...2 Sorting
Q&As: Microsoft Excel 2013: Chapter 2
Q&As: Microsoft Excel 2013: Chapter 2 In Step 5, why did the date that was entered change from 4/5/10 to 4/5/2010? When Excel recognizes that you entered a date in mm/dd/yy format, it automatically formats
RA MODEL VISUALIZATION WITH MICROSOFT EXCEL 2013 AND GEPHI
RA MODEL VISUALIZATION WITH MICROSOFT EXCEL 2013 AND GEPHI Prepared for Prof. Martin Zwick December 9, 2014 by Teresa D. Schmidt ([email protected]) 1. DOWNLOADING AND INSTALLING USER DEFINED SPLIT FUNCTION
Using Analysis Tools: Goal Seek, Solver, and Data Tables
CHAPTER Using Analysis Tools: Goal Seek, Solver, and Data Tables In this chapter Analyzing Your Data with Excel 646 Using Goal Seek 646 Using Solver 650 Creating Amortization Tables to Calculate Mortgage
one Introduction chapter OVERVIEW CHAPTER
one Introduction CHAPTER chapter OVERVIEW 1.1 Introduction to Decision Support Systems 1.2 Defining a Decision Support System 1.3 Decision Support Systems Applications 1.4 Textbook Overview 1.5 Summary
Excel 2010: Create your first spreadsheet
Excel 2010: Create your first spreadsheet Goals: After completing this course you will be able to: Create a new spreadsheet. Add, subtract, multiply, and divide in a spreadsheet. Enter and format column
Using Excel s Solver
Using Excel s Solver Contents Page Answer Complex What-If Questions Using Microsoft Excel Solver........... 1 When to Use Solver Identifying Key Cells in Your Worksheet Solver Settings are Persistent Saving
Linear Programming. March 14, 2014
Linear Programming March 1, 01 Parts of this introduction to linear programming were adapted from Chapter 9 of Introduction to Algorithms, Second Edition, by Cormen, Leiserson, Rivest and Stein [1]. 1
Tutorial: Using Excel for Linear Optimization Problems
Tutorial: Using Excel for Linear Optimization Problems Part 1: Organize Your Information There are three categories of information needed for solving an optimization problem in Excel: an Objective Function,
Using the Solver add-in in MS Excel 2007
First version: April 21, 2008 Last revision: February 22, 2011 ANDREI JIRNYI, KELLOGG OFFICE OF RESEARCH Using the Solver add-in in MS Excel 2007 The Excel Solver add-in is a tool that allows you to perform
Optimal Scheduling for Dependent Details Processing Using MS Excel Solver
BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 8, No 2 Sofia 2008 Optimal Scheduling for Dependent Details Processing Using MS Excel Solver Daniela Borissova Institute of
Follow links Class Use and other Permissions. For more information, send email to: [email protected]
COPYRIGHT NOTICE: David A. Kendrick, P. Ruben Mercado, and Hans M. Amman: Computational Economics is published by Princeton University Press and copyrighted, 2006, by Princeton University Press. All rights
Excel 2007: Basics Learning Guide
Excel 2007: Basics Learning Guide Exploring Excel At first glance, the new Excel 2007 interface may seem a bit unsettling, with fat bands called Ribbons replacing cascading text menus and task bars. This
Microsoft Excel 2010 and Tools for Statistical Analysis
Appendix E: Microsoft Excel 2010 and Tools for Statistical Analysis Microsoft Excel 2010, part of the Microsoft Office 2010 system, is a spreadsheet program that can be used to organize and analyze data,
Excel 2003: Ringtones Task
Excel 2003: Ringtones Task 1. Open up a blank spreadsheet 2. Save the spreadsheet to your area and call it Ringtones.xls 3. Add the data as shown here, making sure you keep to the cells as shown Make sure
Table of Contents TASK 1: DATA ANALYSIS TOOLPAK... 2 TASK 2: HISTOGRAMS... 5 TASK 3: ENTER MIDPOINT FORMULAS... 11
Table of Contents TASK 1: DATA ANALYSIS TOOLPAK... 2 TASK 2: HISTOGRAMS... 5 TASK 3: ENTER MIDPOINT FORMULAS... 11 TASK 4: ADD TOTAL LABEL AND FORMULA FOR FREQUENCY... 12 TASK 5: MODIFICATIONS TO THE HISTOGRAM...
Using Excel for Business Analysis: A Guide to Financial Modelling Fundamentals
Excel 2003 Instructions Using Excel for Business Analysis: A Guide to Financial Modelling Fundamentals contains extensive instructions for using Excel 2010 and Excel for Mac 2011. There are a few instances
Figure 1. An embedded chart on a worksheet.
8. Excel Charts and Analysis ToolPak Charts, also known as graphs, have been an integral part of spreadsheets since the early days of Lotus 1-2-3. Charting features have improved significantly over the
USING EXCEL SOLVER IN OPTIMIZATION PROBLEMS
USING EXCEL SOLVER IN OPTIMIZATION PROBLEMS Leslie Chandrakantha John Jay College of Criminal Justice of CUNY Mathematics and Computer Science Department 445 West 59 th Street, New York, NY 10019 [email protected]
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
Explore commands on the ribbon Each ribbon tab has groups, and each group has a set of related commands.
Quick Start Guide Microsoft Excel 2013 looks different from previous versions, so we created this guide to help you minimize the learning curve. Add commands to the Quick Access Toolbar Keep favorite commands
Sage Intelligence Report Designer Add-In
Sage Intelligence Report Designer Add-In Q: What is Sage Intelligence Reporting? A: Sage Intelligence Reporting helps you to easily control, automate and analyze your data to make better informed decision,
Microsoft Excel 2007. Introduction to Microsoft Excel 2007
Microsoft Excel 2007 Introduction to Microsoft Excel 2007 Excel is an electronic spreadsheet to organize your data into rows and columns. One can use it to perform basic to advanced level mathematical
Excel Modeling Practice. The Svelte Glove Problem Step-by-Step With Instructions
Excel Modeling Practice The Svelte Glove Problem Step-by-Step With Instructions EXCEL REVIEW 2001-2002 Contents Page Number Overview...1 Features...1 The Svelte Glove Problem...1 Outputs...2 Approaching
UCINET Quick Start Guide
UCINET Quick Start Guide This guide provides a quick introduction to UCINET. It assumes that the software has been installed with the data in the folder C:\Program Files\Analytic Technologies\Ucinet 6\DataFiles
The Center for Teaching, Learning, & Technology
The Center for Teaching, Learning, & Technology Instructional Technology Workshops Microsoft Excel 2010 Formulas and Charts Albert Robinson / Delwar Sayeed Faculty and Staff Development Programs Colston
Linear Programming Notes V Problem Transformations
Linear Programming Notes V Problem Transformations 1 Introduction Any linear programming problem can be rewritten in either of two standard forms. In the first form, the objective is to maximize, the material
Linear Programming. April 12, 2005
Linear Programming April 1, 005 Parts of this were adapted from Chapter 9 of i Introduction to Algorithms (Second Edition) /i by Cormen, Leiserson, Rivest and Stein. 1 What is linear programming? The first
Section 1: Ribbon Customization
WHAT S NEW, COMMON FEATURES IN OFFICE 2010 2 Contents Section 1: Ribbon Customization... 4 Customizable Ribbon... 4 Section 2: File is back... 5 Info Tab... 5 Recent Documents Tab... 7 New Documents Tab...
Chapter 6. Linear Programming: The Simplex Method. Introduction to the Big M Method. Section 4 Maximization and Minimization with Problem Constraints
Chapter 6 Linear Programming: The Simplex Method Introduction to the Big M Method In this section, we will present a generalized version of the simplex method that t will solve both maximization i and
Excel 2007 Basic knowledge
Ribbon menu The Ribbon menu system with tabs for various Excel commands. This Ribbon system replaces the traditional menus used with Excel 2003. Above the Ribbon in the upper-left corner is the Microsoft
Preface of Excel Guide
Preface of Excel Guide The use of spreadsheets in a course designed primarily for business and social science majors can enhance the understanding of the underlying mathematical concepts. In addition,
Simply Accounting Intelligence Tips and Tricks Booklet Vol. 1
Simply Accounting Intelligence Tips and Tricks Booklet Vol. 1 1 Contents Accessing the SAI reports... 3 Running, Copying and Pasting reports... 4 Creating and linking a report... 5 Auto e-mailing reports...
Sensitivity Analysis 3.1 AN EXAMPLE FOR ANALYSIS
Sensitivity Analysis 3 We have already been introduced to sensitivity analysis in Chapter via the geometry of a simple example. We saw that the values of the decision variables and those of the slack and
A simplified implementation of the least squares solution for pairwise comparisons matrices
A simplified implementation of the least squares solution for pairwise comparisons matrices Marcin Anholcer Poznań University of Economics Al. Niepodleg lości 10, 61-875 Poznań, Poland V. Babiy McMaster
Excel basics. Before you begin. What you'll learn. Requirements. Estimated time to complete:
Excel basics Excel is a powerful spreadsheet and data analysis application, but to use it most effectively, you first have to understand the basics. This tutorial introduces some of the tasks and features
1 Solving LPs: The Simplex Algorithm of George Dantzig
Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.
To launch the Microsoft Excel program, locate the Microsoft Excel icon, and double click.
EDIT202 Spreadsheet Lab Assignment Guidelines Getting Started 1. For this lab you will modify a sample spreadsheet file named Starter- Spreadsheet.xls which is available for download from the Spreadsheet
Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method
Lecture 3 3B1B Optimization Michaelmas 2015 A. Zisserman Linear Programming Extreme solutions Simplex method Interior point method Integer programming and relaxation The Optimization Tree Linear Programming
Excel 2007 A Beginners Guide
Excel 2007 A Beginners Guide Beginner Introduction The aim of this document is to introduce some basic techniques for using Excel to enter data, perform calculations and produce simple charts based on
Call Centre Helper - Forecasting Excel Template
Call Centre Helper - Forecasting Excel Template This is a monthly forecaster, and to use it you need to have at least 24 months of data available to you. Using the Forecaster Open the spreadsheet and enable
Microsoft Excel 2007 Level 2
Information Technology Services Kennesaw State University Microsoft Excel 2007 Level 2 Copyright 2008 KSU Dept. of Information Technology Services This document may be downloaded, printed or copied for
Excel 2003 PivotTables Summarizing, Analyzing, and Presenting Your Data
The Company Rocks Excel 2003 PivotTables Summarizing, Analyzing, and Presenting Step-by-step instructions to accompany video lessons Danny Rocks 5/19/2011 Creating PivotTables in Excel 2003 PivotTables
Chapter 9 Creating Reports in Excel
Chapter 9 Creating Reports in Excel One of the most powerful features of Standard & Poor s Research Insight is its ability to communicate with Microsoft Excel through Active-X Technology. Excel requests
Microsoft Office System Tip Sheet
Experience the 2007 Microsoft Office System The 2007 Microsoft Office system includes programs, servers, services, and solutions designed to work together to help you succeed. New features in the 2007
How To Analyze Data In Excel 2003 With A Powerpoint 3.5
Microsoft Excel 2003 Data Analysis Larry F. Vint, Ph.D [email protected] 815-753-8053 Technical Advisory Group Customer Support Services Northern Illinois University 120 Swen Parson Hall DeKalb, IL 60115 Copyright
Understanding BEx Query Designer: Part-2 Structures, Selections and Formulas
Understanding BEx Query Designer: Part-2 Structures, Selections and Formulas Applies to: SAP NetWeaver BW. Summary This document is the second installment of a 6 part Query Designer Training guide for
MAS 500 Intelligence Tips and Tricks Booklet Vol. 1
MAS 500 Intelligence Tips and Tricks Booklet Vol. 1 1 Contents Accessing the Sage MAS Intelligence Reports... 3 Copying, Pasting and Renaming Reports... 4 To create a new report from an existing report...
DATASTREAM CHARTING ADVANCED FEATURES
DATASTREAM DATASTREAM CHARTING ADVANCED FEATURES Thomson Reuters Training Creating and customizing complex charts is easy with Datastream Charting. The full breadth and depth of Datastream s vast database
Excel Programming Tutorial 1
Excel Programming Tutorial 1 Macros and Functions by Dr. Tom Co Department of Chemical Engineering Michigan Technological University (8/31/07, 11/11/07) Excel Version: Excel 2007 Basic Concepts: Features:
Microsoft Excel 2013 Tutorial
Microsoft Excel 2013 Tutorial TABLE OF CONTENTS 1. Getting Started Pg. 3 2. Creating A New Document Pg. 3 3. Saving Your Document Pg. 4 4. Toolbars Pg. 4 5. Formatting Pg. 6 Working With Cells Pg. 6 Changing
About PivotTable reports
Page 1 of 8 Excel Home > PivotTable reports and PivotChart reports > Basics Overview of PivotTable and PivotChart reports Show All Use a PivotTable report to summarize, analyze, explore, and present summary
Review of Fundamental Mathematics
Review of Fundamental Mathematics As explained in the Preface and in Chapter 1 of your textbook, managerial economics applies microeconomic theory to business decision making. The decision-making tools
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
Linear Programming Refining Transportation
Solving a Refinery Problem with Excel Solver Type of Crude or Process Product A B C 1 C 2 D Demand Profits on Crudes 10 20 15 25 7 Products Product Slate for Crude or Process G 0.6 0.5 0.4 0.4 0.3 170
Microsoft Excel 2007 and Tools for Statistical Analysis David R. Anderson, Dennis J. Sweeney, and Thomas A. Williams
ASW_MBS_Primer_Web.qxd 11/1/07 1:41 PM Page 1 Microsoft Excel 2007 and Tools for Statistical Analysis David R. Anderson, Dennis J. Sweeney, and Thomas A. Williams Microsoft Excel 2007, part of the Microsoft
Lecture 2 Mathcad Basics
Operators Lecture 2 Mathcad Basics + Addition, - Subtraction, * Multiplication, / Division, ^ Power ( ) Specify evaluation order Order of Operations ( ) ^ highest level, first priority * / next priority
A Generalized PERT/CPM Implementation in a Spreadsheet
A Generalized PERT/CPM Implementation in a Spreadsheet Abstract Kala C. Seal College of Business Administration Loyola Marymount University Los Angles, CA 90045, USA [email protected] This paper describes
Produced by Flinders University Centre for Educational ICT. PivotTables Excel 2010
Produced by Flinders University Centre for Educational ICT PivotTables Excel 2010 CONTENTS Layout... 1 The Ribbon Bar... 2 Minimising the Ribbon Bar... 2 The File Tab... 3 What the Commands and Buttons
SOAL-SOAL MICROSOFT EXCEL 1. The box on the chart that contains the name of each individual record is called the. A. cell B. title C. axis D.
SOAL-SOAL MICROSOFT EXCEL 1. The box on the chart that contains the name of each individual record is called the. A. cell B. title C. axis D. legend 2. If you want all of the white cats grouped together
Introduction To Microsoft Office Excel 2007. Bob Booth July 2008 AP-Excel8
Introduction To Microsoft Office Excel 2007. Bob Booth July 2008 AP-Excel8 University of Sheffield Contents 1. INTRODUCTION... 3 2. OVERVIEW OF SPREADSHEETS... 3 3. GETTING STARTED... 4 3.1 STARTING EXCEL
Basic Excel Handbook
2 5 2 7 1 1 0 4 3 9 8 1 Basic Excel Handbook Version 3.6 May 6, 2008 Contents Contents... 1 Part I: Background Information...3 About This Handbook... 4 Excel Terminology... 5 Excel Terminology (cont.)...
SnagIt Add-Ins User Guide
Version 8.1 User Guide By TechSmith Corp. User Guide User Guide Contents User s Guide 1 Overview...1 Word, PowerPoint, and Excel Add-Ins...2 Outlook Add-In...2 Internet Explorer / Windows Explorer Add-In...2
2. The Open dialog box appears and you select Text Files (*.prn,*.txt,*.csv) from the drop-down list in the lower right-hand corner.
How to open CSV file in Excel If you created a CSV file in another program, you can still open it as an Excel workbook in the usual way by using the Open command. Note. Opening the CSV file in Excel does
Basic Microsoft Excel 2007
Basic Microsoft Excel 2007 The biggest difference between Excel 2007 and its predecessors is the new layout. All of the old functions are still there (with some new additions), but they are now located
Advanced Excel 10/20/2011 1
Advanced Excel Data Validation Excel has a feature called Data Validation, which will allow you to control what kind of information is typed into cells. 1. Select the cell(s) you wish to control. 2. Click
Getting started in Excel
Getting started in Excel Disclaimer: This guide is not complete. It is rather a chronicle of my attempts to start using Excel for data analysis. As I use a Mac with OS X, these directions may need to be
Microsoft Excel 2013: Macro to apply Custom Margins, Titles, Gridlines, Autofit Width & Add Macro to Quick Access Toolbar & How to Delete a Macro.
Microsoft Excel 2013: Macro to apply Custom Margins, Titles, Gridlines, Autofit Width & Add Macro to Quick Access Toolbar & How to Delete a Macro. Do you need to always add gridlines, bold the heading
To create a histogram, you must organize the data in two columns on the worksheet. These columns must contain the following data:
You can analyze your data and display it in a histogram (a column chart that displays frequency data) by using the Histogram tool of the Analysis ToolPak. This data analysis add-in is available when you
WHAT S NEW IN MS EXCEL 2013
Contents Excel... 1 Filling empty cells using Flash Fill... 1 Filtering records using a Timeline... 2 Previewing with Quick Analysis... 4 Using Chart Advisor recommendations... 5 Finding errors and issues
1. To ensure the appropriate level of security, you will need Microsoft Windows XP or above.
System Requirements This section describes the resources you will need on your computer and how to configure your system to use @venture. Because individual systems widely vary, these guidelines are general
Introduction to Linear Programming (LP) Mathematical Programming (MP) Concept
Introduction to Linear Programming (LP) Mathematical Programming Concept LP Concept Standard Form Assumptions Consequences of Assumptions Solution Approach Solution Methods Typical Formulations Massachusetts
Introduction to Microsoft Excel 2007/2010
to Microsoft Excel 2007/2010 Abstract: Microsoft Excel is one of the most powerful and widely used spreadsheet applications available today. Excel's functionality and popularity have made it an essential
Release 2.1 of SAS Add-In for Microsoft Office Bringing Microsoft PowerPoint into the Mix ABSTRACT INTRODUCTION Data Access
Release 2.1 of SAS Add-In for Microsoft Office Bringing Microsoft PowerPoint into the Mix Jennifer Clegg, SAS Institute Inc., Cary, NC Eric Hill, SAS Institute Inc., Cary, NC ABSTRACT Release 2.1 of SAS
Merging Labels, Letters, and Envelopes Word 2013
Merging Labels, Letters, and Envelopes Word 2013 Merging... 1 Types of Merges... 1 The Merging Process... 2 Labels - A Page of the Same... 2 Labels - A Blank Page... 3 Creating Custom Labels... 3 Merged
IEOR 4404 Homework #2 Intro OR: Deterministic Models February 14, 2011 Prof. Jay Sethuraman Page 1 of 5. Homework #2
IEOR 4404 Homework # Intro OR: Deterministic Models February 14, 011 Prof. Jay Sethuraman Page 1 of 5 Homework #.1 (a) What is the optimal solution of this problem? Let us consider that x 1, x and x 3
Advanced Excel for Institutional Researchers
Advanced Excel for Institutional Researchers Presented by: Sandra Archer Helen Fu University Analysis and Planning Support University of Central Florida September 22-25, 2012 Agenda Sunday, September 23,
Quick Start Guide. Highly customizable automated trading Automate your trades according to rules and models you create.
POWER E*TRADE PRO EXCEL MANAGER Quick Start Guide We are pleased to announce the launch of Excel Manager, an exciting new feature in Power E*TRADE Pro that leverages the flexibility of Microsoft Excel
Introduction to Pivot Tables in Excel 2007
The Company Rocks Introduction to Pivot Tables in Excel 2007 Step-by-step instructions to accompany video lessons Danny Rocks 4/11/2011 Introduction to Pivot Tables in Excel 2007 Pivot Tables are the most
PowerWorld Simulator
PowerWorld Simulator Quick Start Guide 2001 South First Street Champaign, Illinois 61820 +1 (217) 384.6330 [email protected] http://www.powerworld.com Purpose This quick start guide is intended to
Argus Direct add-in for spreadsheets - Installation Guide
Argus Direct add-in for spreadsheets - Installation Guide The add-in enables you to download Argus data that you are permissioned for directly in Excel spreadsheets. The spreadsheet can be refreshed to
Microsoft Office System Tip Sheet
The 2007 Microsoft Office System The 2007 Microsoft Office system is a complete set of desktop and server software that can help streamline the way you and your people do business. This latest release
