Course Motivation. Kipp Martin University of Chicago Booth School of Business. January 4, 2012

Similar documents
An Introduction to MATLAB See Chapter 1 of Gilat

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

SPUNTINII RESTAURANT POINT OF SALE APPLICATION

Optimization. Using Analytic Solver Platform REVIEW BASED ON MANAGEMENT SCIENCE

Notes for Lecture 18

Rapid Application Development & Grid Computing Using GAMS. Software Demonstration INFORMS San Francisco 2005

CHAPTER 35: PRACTICE ANALYSIS

HKTA TANG HIN MEMORIAL SECONDARY SCHOOL SECONDARY 3 COMPUTER LITERACY. Name: ( ) Class: Date: Databases and Microsoft Access

Introduction to CS 4604

An open-source stochastic programming solver. H.I. Gassmann, Dalhousie University J. Ma, JTechnologies R.K. Martin, The University of Chicago

Network Analyst: An Introduction

Traineeship (graduate level)

Optimization Services: A Framework For Distributed Optimization

Using the Palladium Business Intelligence Functionality

Network Analyst: Performing Network Analysis

Example. Section: PS 709 Examples of Calculations of Reduced Hours of Work Last Revised: February 2017 Last Reviewed: February 2017 Next Review:

SRP SMART ENERGY SAVER STUDY

Connecticut Medical Assistance Program Enrollment Wizard. Presented by The Department of Social Services & HP Enterprise Services 1

Oracle - MySQL Developer Techniques with Advanced

US Consumer Device Preference Report

Get Exam Ready. Attention Potential HFMA Certification Candidates! HFMA Certification Candidate

GAMS. How can I make this work... arrgghh? GAMS Development Corporation

Returning Resident Room Selection Instruction Sheet

AM 221: Advanced Optimization Spring 2016

FIS Client Point Getting Started Guide

Pearson Edexcel Award

How to use the Sales Based Availability Dashboard

Oracle and Tangosol Acquisition Announcement

Board of Directors Meeting. April 27, 2017

PROFESSIONAL EXPERIENCE

Client Information Portal User Guide. 500 West Jefferson Street Suite 700 Louisville, KY (888)

SRP DEMAND MANAGEMENT STUDY

GreenSlot: Scheduling Energy Consumption in Green Datacenters

Agenda. GAMS Development / GAMS Software. GAMS at a Glance. An illustrative Example: The Mean Variance Model. Grid Computing

Oklahoma State University Institute of Technology Online Common Syllabus Fall 2018

Lesson 6.1 Matrix Representations

Prepared By. Handaru Jati, Ph.D. Universitas Negeri Yogyakarta.

Certificazione Oracle

Pan London Suspected Cancer Referral Forms for GPs A step-by-step guide to installing, using and ing the forms for GPs using EMIS Web

Tutorial 2 Today we will have a quick introduction to ArgoUML and how to use it, as well as look at some examples of class diagrams.

GAMS. Grid Computing

DIPLOMA IN PROGRAMMING WITH DOT NET TECHNOLOGIES

Column Generation: Cutting Stock

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

What is a database? Lesson - 1

1 GIAPETTO S WOODCARVING PROBLEM

Introduction to Databases Fall-Winter 2010/11. Syllabus

US Technology Informational Meeting

Creating a Hire eform for Academic Staff

COORDINATOR ISIP SYMPLICITY INSTRUCTIONS

A learning initiative for all What is it? - What does it cost? Usability Mapping. By CAT - i

Academic Year Student Induction. Handbook

G64DBS Database Systems. G64DBS Module. Recommended Textbook. Assessment. Recommended Textbook. Recommended Textbook.

CBOE Research Circular #RS14-098

Oklahoma State University Institute of Technology Face-to-Face Common Syllabus Fall 2017

Excel 2010 Macro Vba For Loops Break Nested

Emergency Preparedness Planning. The Office

Provider File Management Guide

Logical Database Design. ICT285 Databases: Topic 06

Class Organization. CSPP 53017: Data Warehousing Winter 2013" Lecture 1" Svetlozar Nestorov"

V6 Learning Path Service Providers Partners

IEOR E4008: Computational Discrete Optimization

Optimization Services Modeling Language (OSmL)

Notes for Student Version of Soritec

Excel Project 2 Formulas, Functions, and Formatting

Financial Econometrics MFE MATLAB Introduction. Kevin Sheppard University of Oxford

Sample Paper 2014 Class - XII Subject Informatics Practices (065)

Hi Fi Infirmary Portal Java Project Report

Microsoft Project. EPIC 76/106 Manchester St. PO Box 362 Christchurch 8140

Excel Functions & Tables

MICROSOFT WORD INTERMEDIATE TRAINING MANUAL

COMP5318 Knowledge Management & Data Mining Assignment 1

Scheduling for Trinity School at Meadow View. User s Manual. May 8, 2017

Individual Funding Requests (IFR) Guidance notes for referrers (GPs and Referring Clinicians)

Developing Optimization Algorithms for Real-World Applications

Guidance on the appropriateness of the information technology solution

Provider File Management Guide

and compare electrical costs of computers in various modes. Cost of Computers

MS SQL Server DBA Training Course. Table of Contents

Visual Basic for Applications

Fusion Registry 9 SDMX Data and Metadata Management System

Primavera P6 Portlet Index

Looking to improve your employment prospects in surgery?

Session id: The Self-Managing Database: Guided Application and SQL Tuning

Lecture 25 Nonlinear Programming. November 9, 2009

Database Design. 1-4 Major Transformations in Computing. Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Onboarding Guide. ipointsolutions.net (800)

MAT 103 F09 TEST 3 REVIEW (CH 4-5)

Exceed Customer Expectations. Gain the Edge. Certificate III in Business. Design and Produce Business Documents BSBITU306A

This addendum is to provide all potential proponents with the information to the various questions received.

The strategic advantage of OLAP and multidimensional analysis

Copyright 2012 Pulse Systems, Inc. Page 1 of 94

Simply Access Tips. Issue February 2 nd 2009

New Provider Onboarding

How to Create Collaborative Communities Within Your Portal

T E L E H E A LT H S O L U T I O N S

Rapid Application Prototyping using GAMS

Recent enhancements in. GAMS Software GmbH GAMS Development Corporation

Open File Explorer Start Pro with SanFran project Open Locator in SanFran project Open Browser and AGOL with RouteExample Web map.

Profile: How to update your CV - just an idea. 1) Make sure your margins are a slim as possible. 2) Make sure your font size is 10-12

Transcription:

Course Motivation Kipp Martin University of Chicago Booth School of Business January 4, 2012

Excel and MATLAB: Why? Course: Tools for Business Analysis: Excel and Matlab Why study Excel and MATLAB? What role do Excel and MATLAB play in moderate corporate problem solving? What can you do with Excel and MATLAB?

Outline 3 Example 1 Hospital Scheduling Example 2 Optimal Energy Dispatch Example 3 Portfolio Optimization Course Objectives

Hospital Scheduling Develop an application for a large hospital to take: Requests for surgical spaces (e.g., a cardiology surgery, at Location 1, in the AM, two days a week, two weeks per planning horizon) Requests for clinical spaces (e.g., an ENT clinic, at Location 2, all day, Monday and Wednesday, every week) Doctor requests (e.g., I play golf every Tuesday afternoon) Find a schedule: Match available surgery and clinic rooms at the various locations with the space requests Match doctor requests as closely as possible to the space request assignments

Hospital Scheduling Administrative assistants for each specialty need to sit at their desktop machines and enter the space and doctor request information for the given specialty. The requests across all specialties must be gathered, aggregated, and stored somewhere. An optimization model must be built and solved that finds a feasible allocation of space requests to available rooms and doctors to meet the requests The results need to be returned to the desktops of each administrative assistant in order to schedule the doctors. The system must be run and used every month by people that know nothing about optimization.

Hospital Scheduling There are two problems here: 1. Develop an optimization model to solve a complex scheduling problem. 2. Incorporate the model into an architecture so that the model is actually used. What do I mean by architecture?

Hospital Scheduling 7 Figure: Entering the Data.

8 Hospital Scheduling Data entry form (this is an Excel UserForm):

Hospital Scheduling 9 MySQL Excel UserForm Tomcat Web Server Java Web Services Application Java Database Driver Tomcat Web Server COIN-OR OS COIN-OR Bcp Figure: Calling the Scheduling Application

Hospital Scheduling 10 Solve the problem with optimization solvers:

Hospital Scheduling 11 Model solution form (another Excel UserForm):

Hospital Scheduling What is involved? Excel/Visual Basic User Forms Excel/Visual Basic Create SQL requests from User Forms MySQL (Relational Data Base) An optimization model Optimization solvers Web Server Excel/Visual Basic Web Services communication (send and receive over the Web). You will learn to have VBA generate code for you!

Hospital Scheduling Key Takeaway: What is the role of Excel and VBA? Store the data? No! Build the model? No! Solve the model? No! The role of Excel and VBA system integration!!!

Optimal Energy Dispatch The Problem: A utility wants to achieve an energy level reduction during certain time periods (usually peak periods) Customers agree to have their service interrupted or curtailed Customers receive compensation for this How does the utility interrupt in a way to maximize revenue

Optimal Energy Dispatch Key Components: Utility portal run/invoke the models Customer portal lets customers decide to participate in an event (i.e., to let us control their appliances) or to override during an event. Database Microsoft SQL Server Demand and energy cost forecasting modules An optimization model A optimization solver

Optimal Energy Dispatch 16

Optimal Energy Dispatch 17

Energy Dispatch Key Takeaways: An optimization model is the critical to the system A fast solver is needed for the system things happen in real time Must get data in and out of the model Note: in this case the portal is a web page rather than an Excel UserForm and is a system integrator.

Model: Portfolio Optimization n = number of stocks under consideration x i = percentage of portfolio invested in stock i X = [x 1 x 2 x n ] C = n n variance-covariance matrix µ i expected return for stock i R = required portfolio return C = variance-covariance matrix min X CX (1) n µ i x i R (2) i=1 n x i = 1 (3) i=1 x i 0, i = 1,..., n (4)

Load the data into MATLAB Model: Import Data prices = load( ASWch8ex13stockprices.txt ) Table: Stock Price Data for Apple, AMD, and Oracle AAPL AMD ORCL 4.16 17.57 4.32 4.58 10.10 3.88 10.30 11.47 9.23 25.94 18.00 24.98 10.81 24.60 29.12 12.36 16.05 17.26 7.18 5.24 12.03 11.28 14.86 13.86 38.45 15.80 13.77 75.51 41.80 12.57

Model: Massage the Data Calculate returns from prices and create a variance-covariance matrix. p i,t+1 = p it e r. Taking the natural logarithm of both sides gives the return r = ln(p i,t+1 /p it ) % get rows 2 through 10 of prices pricesmod1 = prices(2: numrows, :); % get rows 1 through 10 of prices pricesmod2 = prices(1: numrows - 1, :); % calculate the returns (assumes continuous compounding) returns = log(pricesmod1./pricesmod2)

Model: Calculate Model Parameters C = cov(returns, 1) C = 0.4253 0.1852 0.1393 0.1852 0.4458 0.1388 0.1393 0.1388 0.2314 The variance-covariance matrix is used in the optimization model. In MATLAB use the mean() function, or in Excel use the AVERAGE() function to get the expected stock returns.

Model: Optimize the Model Both MATLAB and Excel have optimization routines. However, we might wish to solve the model on a remote faster machine. The optimal solution is x 1 = 0.1818, x 2 = 0.1688, x 3 = 0.6495

Model: Visualization Excel and MATLAB are also ideal tools for analyzing problem results and visualizing functions and data. 24

Example Summary What roles do MATLAB and Excel play 1. import data from various sources, modify the data, and analyze the data 2. use data to create a model instance 3. solve the model 4. analyze the problem results 5. provide visualization 6. act as middleware, provide an interface (API - application program interface) to other software 7. provide a user interface for the underlying model

Summary Takeaways 1. A real system is complex there are lot of parts that need to be connected. You need to move information around. 2. It is critical, for example in consulting, to have knowledge about how to connect things together. At least know what tools are available and what are the capabilities of these tools. 3. In most interesting applications there are lots of tradeoffs too many for a human to enumerate. A model is needed to find the best solution. This can have a large impact on profitability.

Course Objectives 1. Learn VBA (Visual Basic for Applications), a key tool that adds tremendous functionality to Microsoft Excel. This tool is widely used in business. 2. Learn to use MATLAB. This is an important program used in a number of other Booth courses. In the business world it is used extensively on Wall Street. 3. Develop skill in building realistic optimization models to support decision making. 4. Learn how to access and integrate data that reside in different locations and use these data as input to models. 5. Learn to use the General Algebraic Modeling System (GAMS) developed at the World Bank. This modeling system will allow students to formulate and solve realistic models using the input from Excel and MATLAB.