Skip to content# Operations Research Syllabi

**OPER 428: Stochastic Operations Research**## OPER 428

### Instructor

### Prerequisite(s)

### Required Text

### Calculator

### Software

### Grading Policy

### Topics/Schedule

### Attendance Policy

**OPER 527: (Optimization I) Introduction to Optimization**## OPER 427/527

### Instructor

### Prerequisite(s)

### Required Text

### Software

### Grading Policy

### Topics/Schedule

**OPER 528: Stochastic Simulation**## OPER 528

### Instructor

### Prerequisite(s)

### Required Texts

### Software

### Grading Policy

### Topics

**OPER 627: (Optimization II) Nonlinear Optimization**## OPER 627

### Instructor

### Prerequisite(s)

### Required Texts

### Course Objectives

### Course Topics

#### Part 1: Unconstrained nonlinear optimization

#### Part 2: Constrained nonlinear optimization

#### Part 3: Commercial and open-source nonlinear optimization software and case study

### Topics/Schedule

### Grading Policy

### Assignments

**OPER 635: Network Optimization**## OPER 635

### Instructor

### Course Objectives and Prerequisite(s)

### Required Text

### Other References

### Tentative Grading Scale

### Grading Policy

### Topics/Schedule

### Assignments

**OPER/STAT 636: Machine Learning Algorithms**## OPER/STAT 636

### Instructor

### Prerequisite(s)

### Required Text

### Course Description

### Software

### Grading Policy

### Topics/Schedule

### Attendance Policy

### Late Assignments

**OPER 639: Practical Optimization**## OPER 639

### Instructor

### Prerequisite(s)

### Required Text

### Additional Recommended References

### Software

### Grading Policy

### Topics/Schedule

### Attendance Policy

### Late Assignments

### Student Expectations

### Instructor Expectations

**OPER 643: Decision and Risk Analysis**## OPER 643

### Instructor

### Prerequisite(s)

### Required Text

### Course Description

### Software

### Grading Policy

### Course Objectives

**OPER/STAT 649: Statistical Quality Control**## OPER/STAT 649

### Instructor

### Prerequisite(s)

### Required Text

### Software

### Grading Policy

### Grading Scale

### Topics

### Exams

### Homework

### Guidelines

**OPER 732: Optimization under Uncertainty**## OPER 732

### Instructor

### Course Objectives and Prerequisite(s)

### Required Texts

### Software

### Grading Policy

### Topics/Schedule

### Assignments

**OPER 743: Decision Analysis II**## OPER 743

### Instructor

### Prerequisite(s)

### Required Text

### Conduct in Class

### Grading Policy

Courses in Operations Research

View graphic versionBelow are select sections from course syllabi from some of our courses in operations research. Full syllabi may be available by request from course instructors.

Ye Chen, Ph.D.

(Undergraduate level CMSC 245 Minimum Grade of D or Undergraduate level CMSC 255 Minimum Grade of D) and Undergraduate level STAT 309 Minimum Grade of D and Undergraduate level MATH 310 Minimum Grade of D.

Operations Research: Applications and Algorithms, 4th Edition, W.L. Winston, Cengage Learning, 2004.

Students wishing to use a calculator during a quiz or test are responsible for bringing the calculator or making arrangement with the instructor prior to the date of the quiz or test.

R

Homework (30%), Midterm 1 (15%), Midterm 2 (15%), Midterm 3 (15%), Final (25%). Justify all your work with enough details for homework/quizzes/projects/exams in order to receive full credit. Assignments that are turned in late will receive a grade of 0.

- Probability review
- Introduction to simulation
- Discrete-event simulation
- Queuing models
- Selecting input probability distributions
- Programming simulation
- Output data analysis

- Monte Carlo simulation
- Monte Carlo models
- Random variate generation
- Monte Carlo generation

Students that miss class are responsible for learning the material that is covered in class and for making up all work missed, regardless of the reason for the absence. In the event of an emergency, students must notify the instructor before the exam and provide legitimate excuse/evidence. A grade of zero will be assigned for test missed as a result of unexcused absence. Students must also abide by any administrative decisions (e.g., quiz dates) made by the class in his/her absence.

*Last updated: Fall 2019*

Yongjia Song

Basic knowledge on calculus and linear algebra is required. OPER 327 is preferred, but not required.

None

Julia and its JuMP package (Julia for Mathematical Programming)

- Homework: 25%
- Mid-term: 25%
- Final Project: 25%
- Take-home final: 25%

Mid-term exam focuses on linear programming models. No makeup exams will be given unless a university- approved excuse is provided. When possible, excuses should be provided at least ten days prior to the exam. Students will work in groups on the selected course projects. Project reports will be due on the last day of class. Four days during the final week will be given to the take-home final exam.

This course will address basic models and algorithms for optimization under the assumption of certain knowledge of the systems parameters. These techniques include linear programming models and associated special structures such as network optimization, discrete (integer) programming, and simple nonlinear programming. Students will also be trained to apply the optimization modeling techniques through practical application projects.

*Last updated: Fall 2017*

Marie Chau

CMSC 245 or 255, MATH/STAT 309 and MATH 310, or equivalent, or permission from the instructor.

- Simulation Modeling & Analysis, 5th ed., A. Law, McGraw-Hill, 2014. (or 4th edition)
- Simulation with Arena, 6th ed., W.D. Kelton, R.P. Sadowski, and N.B. Zupick, McGraw- Hill, 2014

Microsoft Excel, @RISK, Arena

Based on the following weighting system:

- Participation: 5%
- Homework: 25%
- Midterm: 20%
- Project (Written + Oral): 25%
- Final: 25%

This course covers techniques for simulation modeling and analysis of discrete-event systems, primarily queueing systems, which can be used to model manufacturing systems and telecommunication networks; application in finance are also covered. Specific topics include random variate generation, input distribution selection, output data analysis, variance reduction techniques, simulation optimization and gradient estimation techniques.

*Last updated: Fall 2015*

Yongjia Song

Students are expected to have certain math background: basic calculus, basic linear algebra, and some mathematical analysis ability. Basic knowledge in Matlab is preferred, but not required.

- Numerical Optimization, 2nd edition, by J. Nocedal and S. Wright
- Nonlinear programming, 2nd edition, by D. Bertsekas (very theoretical, requires advanced math background)
- Convex Optimization, by S. Boyd and L. Vandenberghe (connects optimization with many interesting applications, math level is high but very intuitive)

This course will address basic theory and algorithms for nonlinear optimization (unconstrained and constrained). After the course, students are expected to understand various optimization algorithms:

- How these algorithms work
- How to choose an appropriate algorithm in diﬀerent situations
- How to interpret the performance of an algorithm

- Optimality conditions
- Fundamental solution framework for nonlinear optimization
- Nonlinear optimization algorithms
- Steepest descent
- Newton’s method
- Quasi-Newton method

- Large-scale nonlinear optimization algorithms
- Large-scale Newton’s method
- Conjugate gradient method
- Derivative-free method

- Optimization over simple constraints, gradient projection
- Optimality conditions, KKT, constraint qualiﬁcation
- Lagrangian-based nonlinear optimization algorithms

Week | Topic |
---|---|

1 | Introduction |

2 | Line search |

3 | Newton’s method |

4 | Quasi-Newton method |

5 | Trust-region methods |

6 | Conjugate gradient method |

7 | Least-squares/Regression |

8 | Derivative free optimization/In-class midterm exam |

9 | Optimization with simple constraints |

10 | Gradient projection algorithms |

11 | Penalty functions |

12 | Optimality conditions, KKT |

13 | Lagrangian duality theory |

14 | Interior point method and nonlinear optimization software |

15 | Course summary, review, and extensions |

16 | Take-home ﬁnal exam |

The grade is distributed into the following sections:

- Homework: 30%
- Mid-term: 30%
- Take-home ﬁnal: 30%
- Participation: 10%

Mid-term exam focuses on the ﬁrst part of the course material (unconstrained nonlinear optimization). Take-home ﬁnal focuses on the second part of the course material (constrained nonlinear optimization), although the basic concepts and techniques from the ﬁrst part may show up. No makeup exams will be given unless a university-approved excuse is provided. When possible, excuses should be provided at least ten days prior to the exam.

The tentative grading scale:

- A: 90-100
- B: 80-89
- C: 70-79
- D: 60-69
- F: 0-59

This course has approximately ﬁve or six assignments in total. Some of them require a minimum amount of coding in Matlab.

- All assignments are due when class begins on the assigned due date.
- You have FIVE “free” days for delayed assignment submission. After that, 20% of the grade will be taken oﬀ for each day delayed.
- No assignments will be accepted if more than ﬁve days overdue.
- You are welcome to submit an electronic version of your homework through Blackboard.
- All coding assignments will be submitted through Blackboard.

*Last updated: Fall 2014*

Yongjia Song

This course will address basic models and algorithms for network optimization. Network optimization has a wide range of applications, and is a playground of various optimization tools and algorithms. Students are expected to have certain background in basic linear algebra, linear programming, mathematical modeling, and algorithm design. After the course, students are expected to understand network optimization models, and know how to detect network problem structure in real world applications.

Network Flows, by R. Ahuja, T. Magnanti and J. Orlin

- Combinatorial Optimization, by W. Cook, W. Cunningham, W. Pulleyblank, and A. Schrijver
- A First Course on Combinatorial Optimization, by J. Lee

- A: 90-100
- B: 80-89
- C: 70-79
- D: 60-69
- F: 0-59

- Homework: 30%
- Project: 20%
- Mid-term: 25%
- Final: 25%

- Introduction and data structure: 2 lectures
- Graph search and minimum spanning tree: 1 lecture
- Shortest path: 2 lectures
- Maximum flow and minimum cut: 5 lectures
- Minimum cost flow: 2 lectures
- Application of network flow models: 1 lecture
- Linear programming and network simplex algorithm: 1 lecture
- Multicommodity flows: 3 lectures
- Integer programming and polyhedral study: 2 lectures
- Steiner tree problem: 2 lectures
- Traveling salesman problem: 3 lectures

This course has approximately five or six assignments in total. Some of them require a minimum amount of coding in a basic modeling language.

- All assignments are due when class begins on the assigned due date.
- You have FIVE "free" days for delayed assignment submission. After that, 20% of the grade will be taken off for each day delayed.
- No assignments will be accepted if more than five days overdue.

*Last updated: Spring 2014*

Paul Brooks

Graduate status in mathematical sciences, systems modeling and analysis, decision sciences and business analytics, computer science, or permission of instructor

Tan, P.-N., Steinbach, M. and Kumar, V. *Introduction to Data Mining*. Pearson, 2006.

Additional recommended reference: Nocedal, J. and Wright, S.J. *Numerical Optimization*. Springer, 2006.

Introduction to machine learning algorithms for data mining and related topics. Emphasis will be placed on analyzing the design of optimization-based algorithms and on learning theory, the probabilistic analysis of machine learning algorithms.

R language and environment for statistical computing

Grades will be based on one test (25%), one project (20%), 5-6 homework assignments (25%), final exam (20%), one paper presentation (5%), and class participation (5%).

- Introduction to data mining; introduction to optimization
- Linear regression and unconstrained optimization
- PCA/SVD and constrained optimization

- Classification
- Decision trees
- Support vector machines, Lagrange multipliers, and duality
- Empirical evaluation of classifiers

- Cluster analysis
- Minimum sum-of-squared clustering and nonconvex optimization
*k*-means, hierarchical clustering, DBSCAN

- Learning theory
- Bias/variance tradeoff
- Consistency and generalization
- Vapnik-Chervonenkis Theory - empirical risk minimization, structural risk minimization
- Rademacher Theory and stability
- No Free Lunch Theorem

- Association analysis

Students who miss class are responsible for learning the material that is covered in class and for making up all work missed, regardless of the reason for the absence. A grade of zero will be assigned for tests missed as a result of an unexcused absence. Students must also abide by any administrative decisions (e.g., quiz dates) made by the class in their absence.

Assignments that are turned in late will receive a grade of 0%. Assignments should be turned in using the Assignment feature on Blackboard.

*Last updated: Fall 2017*

Paul Brooks

OPER 527

Williams, H. Paul. *Model Building in Mathematical Programming*, 5th Edition. Wiley, 2013.

- Chvátal, V.
*Linear Programming*. Freeman, 1983. - Garey, M.R. and Johnson, D.S.
*Computers and Intractability: A Guide to the Theory of NP-Completeness*. Freeman, 1979. - Nemhauser, G.L. and Wolsey, L.A.
*Integer and Combinatorial Optimization*. Wiley, 1999. - Rader, D.J.
*Deterministic Operations Research*. Wiley, 2010 - Winston, W.L. and Venkataramanan, V.
*Introduction to Mathematical Programming: Applications and Algorithms, Volume 1*, 4th Edition. Thomson, 2002.

You may use any mathematical optimization modeling language and solvers approved by the instructor. Approved software includes GAMS, GLPK/MathProg, and SAS/OR. We will use the Linux server compile.vcu.edu; students are expected to become familiar with working in a Unix-like environment.

Grades will be based on homework (30%), one mid-term (10%), one project (20%), final exam (30%), and class participation (10%).

- Introduction to math modeling using math programming
- Graphs/networks and linear programming: maximum flow, min-cost network flow, minimum spanning tree
- Modeling with integer variables: modeling logical implications, modeling disjunctions
- Special classes of integer programs: set covering, set packing, traveling salesperson problem
- Computational complexity: theory of NP-completeness
- Best practices for operations research consulting
- Using software to solve large-scale linear and integer programming problems

Students who miss class are responsible for learning the material that is covered in class and for making up all work missed, regardless of the reason for the absence. A grade of zero will be assigned for tests missed as a result of an unexcused absence. Students must also abide by any administrative decisions (e.g., quiz dates) made by the class in their absence.

Assignments that are turned in late will receive a grade of 0%. Assignments may be turned in using the Assignment feature on Blackboard, emailed to jpbrooks@vcu.edu, handed in during class, or left in the instructor's mailbox.

- show up for class ready to learn by actively participating
- attend class regularly
- read appropriate sections in the text, and be familiar with the locations of formulas and explanations in the readings
- be able to learn from different sources - lecture notes, the internet, other books; be resourceful
- take careful note of topics covered in class that are not in the textbook
- start homework problems early, and visit them often
- communicate answers as if communicating with a manager or a friend; bring disparate material together in a clear, coherent manner
- ask the instructor specific questions about difficulties with homework
- keep homework and all associated files for future reference
- be able to calculate a current grade - it is a weighted average
- treat the instructor and other students with respect

- be punctual
- be available by appointment
- return graded assignments within one week of their due date
- provide prompt and clear feedback on assignments
- maintain an accurate record of grades
- assign homework that clearly reflects the goals of the class
- create an environment where students are encouraged to ask questions about class material
- treat all students with respect

*Last updated: Spring 2015*

Jason Merrick

Graduate status in mathematical sciences, systems modeling and analysis, or decision sciences and business analytics, or permission of the instructor.

*Making Hard Decisions with Decision Tools Suite, Third Edition*, 2014, by Robert T. Clemen and Terence Reilly. ISBN: 9780538797573.

This course presents the decision and risk analysis theory and methodology. Decision analysis applies to hard problems involving sequential decisions, major uncertainties, significant outcomes, and complex values. The course includes: decision structuring with influence diagrams and decision trees; modeling uncertainty with subjective probabilities; sensitivity analysis and the value of information; and modeling preferences with utility functions. Decision and risk analysis applications in business and government are considered.

DecisionTools Suite Industrial, Textbook Edition. Available from the textbook student companion site at cengagebrain.com.

Activity | Due | % of Grade |
---|---|---|

Class participation | ongoing | 30 |

Homework | ongoing | 20 |

Midterm exam | take-home | 20 |

Final project | take-home | 30 |

The homework and cases will not be graded for correctness, just completion.

You will be graded on your participation in class. For each homework problem students will be called upon to discuss their solution, so you must be prepared! The rest of the class should be involved in the discussion. Not having completed the problem is not a problem, but you should have a good explanation of what you found difficult and what stopped you from finishing the problem. Not having the correct answer is not a problem, the aim is to learn at this stage. You should each bring a flash drive to class with your spreadsheet solutions or have the solutions available for download from the web to show to the rest of the class.

The mid-term exam and final project will be take-home.

You will have to hand in a write up of your solutions in hard copy and email your solution files, such as Palisade models and/or spreadsheets. The final project will be a decision analysis solution of a real decision you are trying to make.

Each student should

- Understand the concepts of decision analysis and Bayesian statistics and their application to real world problems
- Be able to structure the decisions, uncertainties and values of a decision maker
- Identify and formulate decision opportunities
- Clearly and concisely present the insights obtained from the analysis

*Last updated: Spring 2015*

Yanjun Qian, Ph.D.

- Linear Algebra or Matrix Algebra (MATH 310, or equivalent)
- Knowledge on hypothesis test and linear regression (STAT 310, or equivalent)

None. Class notes will be posted on the course website.

We will use in this class so we can look at real data—not all calculations can be done by hand. Software I recommend: Excel, MATLAB, R, SAS and Minitab. I will demonstrate examples in class with MATLAB or R.

- In-class quizzes (5-6): 10%
- In-class exams (4): 80%
- Course project: 10%

All assessment grades will count towards the final course grade.

- 90 – 100: A
- 80 – 89.99: B
- 70 – 79.99: C
- 60 – 69.99: D
- 0 – 59.99: F

- Statistical background: confidence intervals and hypothesis tests
- Shewhart control chart: method and evaluation using ARL
- Control charts with memory: CUSUM and EWMA
- Control charts for attribute data
- Univariate analysis: risk adjustments
- Multivariate statistics
- Hotelling T2 charts
- Multivariate CUMSUM and EWMA
- Handling the high-dimension data
- Multivariate control charts for attribute data
- Time-space cluster detection: spatial-temporal scan statistics (optional)

There will be four in-class exams. Absolutely no make-up exams will be allowed unless a university-approved excuse is provided. Whenever possible, excuses should be provided at least two weeks in advance. More information will be provided about the exams later in the course.

All tests will be closed notes and closed book. I do not expect you to memorize formulas for this course; so, a 1-page formula sheet will be permitted during the tests.

Homework will be assigned periodically but may not be collected for grading. Popup quizzes related to homework questions will be assigned during the class and graded.

- Attend all classes and arrive at class on time. If you miss class, you are responsible for any material covered in class that you missed, including information not included in your textbook. Please talk with me if something prevents you from arriving to class on time.
- Regularly check your email and Canvas (at least every other day) for announcements.
- Readings should be completed before class.
- While I check my own email frequently during the week and at least once on weekends, a situation may arise where this is not possible. Do not wait until the last day before an assignment is due to contact me if you have questions!
- I value integrity. Cheating in any form will not be tolerated. The documented policies of the department, college, and university related to academic integrity will be enforced. Any violation of these regulations, including acts of plagiarism or cheating, will be dealt with according to those policies.
- The course syllabus is a general plan for the course; deviations announced to the class by the instructor may be necessary.

*Last updated: Spring 2019*

Yongjia Song, Ph.D.

This course will address basic models and algorithms for stochastic programming (optimization). Stochastic programming is a popular optimization tool that integrates statistics and operations research. Students are expected to have certain math background: basic calculus, basic linear algebra and some mathematical analysis ability. Basic knowledge in optimization: linear programming, mathematical modeling. Basic knowledge in statistics: basic probability, statistical tests. Basic knowledge in a general purpose programming language is preferred, but not required. After the course, students are expected to understand and apply stochastic optimization tools:

- How to create a stochastic programming model using the given information (data, probability distribution, decision makers' risk tolerance, etc.)
- How to solve the stochastic programming model using optimization solvers (e.g., through Julia)
- How to perform statistical analysis on solutions of stochastic programs

*Introduction to Stochastic Programming, 2nd edition*, by J. Birge and F. Louveaux*Robust optimization*, by A. BenTal et. al.

Julia and its JuMP package (Julia for Mathematical Programming)

- We will be using JuliaBox, an online platform for writing, running, and displaying Julia scripts. You can essentially use all functionality of Julia inside your internet explorer such as Google Chrome. The only thing you need is internet.
- If you want, you can also download Julia from juliaopt.org and install it on your own computer. You can also write and run Julia locally on your computer.

More information about JuliaOpt:

- There are many online tutorial videos and courses on Julia. Here is a collection of introduction videos of Julia on Youtube.
- Pros: Simple interface with state-of-the-art FREE optimization software and solvers; maintained by a group of excellent researchers from MIT.
- Cons: Julia is a new language; JuliaOpt is very dynamic and needs updates frequently.

The grade is distributed into the following sections:

- Homework: 30%
- Mid-term: 30%
- Course Project: 30%
- Participation: 10%

Mid-term exam focuses on the first two parts of the course material. No makeup exams will be given unless a university-approved excuse is provided. When possible, excuses should be provided at least ten days prior to the exam. Students will work in groups on the selected course projects. Project presentations will be arranged in the last one or two weeks of class. Project reports will be due on the last day of the finals week.

The tentative grading scale:

- A: 90-100
- B: 80-89
- C: 70-79
- D: 60-69
- F: 0-59

- Part 1: Modeling uncertainty in optimization: stochastic programs and robust optimization
- Part 2: Solution methods for:
- Robust optimization
- Two-stage stochastic programs with recourse and two-stage robust optimization
- Multi-stage stochastic programs and multi-stage robust optimization
- Risk averse and chance-constrained programs

- Part 3: Sampling methods in stochastic programs
- Part 4: Data-driven stochastic programs

This course has approximately five or six assignments in total. Some of them require a minimum amount of coding in a basic modeling language.

- All assignments are due when class begins on the assigned due date.
- You have FIVE "free" days for delayed assignment submission. After that, 20% of the grade will be taken off for each day delayed.
- No assignments will be accepted if more than five days overdue.

*Last updated: Fall 2017*

Jason Merrick, Ph.D.

Either one or both of:

- OPER 643 Decision and Risk Analysis
- OPER 647 Multi-objective Decision Analysis

*Prospect Theory: For Risk and Ambiguity*, Peter Wakker, Cambridge University Press, 2010.

You will be graded on your participation in class. Good participation involves:

- Being prepared with a recommendation and supporting arguments
- Asking clarifying questions that articulate any confusion you might be experiencing
- Pursuing lines of inquiry that enhance the learning process by challenging assumptions and ideas constructively
- Engaging in the learning process of others even after you think you understand
- Helping to find ways to move the discussion forward especially when the class is struggling

In short, contributing to the learning process of the section.

Good participation is not about:

- Being right
- Defending your position at all cost
- Making yourself look “smart” or causing someone else to feel “stupid”
- Sitting back passively after you understand something

In short, damaging the learning climate of the class.

Cell phones and beepers should be turned off while in the classroom. University Rules and Procedures prohibit anyone "to have in his possession any firearm, other weapon, or explosive, regardless of whether a license to possess the same has been issued, without the written authorization of the President of the university...".

- Homework 20%
- Class participation 30%
- Mid-term exam 20%
- Term Paper 30%

Each week, some problems will be assigned for homework and discussion in the next class. For each class discussion problem, a student will be called upon to discuss his or her solution, so you must be prepared! Even when not specifically called upon, you are expected to be involved in the discussion. If you are obviously not prepared, you will get zero for that homework. If you have tried, even if the question is not complete, you will get full marks for that homework. The term paper will be an in-depth literature review on an area of decision analysis research that you choose and I approve. It will be due at the end of the semester.

*Last updated: Spring 2015*