Instructor Information

Beryl Castello

Work Phone: 410-516-7579

Course Information

Course Description

This course introduces applications and algorithms for linear, network, integer, and nonlinear optimization. Topics include the primal and dual simplex methods, network flow algorithms, branch and bound, interior point methods, Newton and quasi-Newton methods, and heuristic methods. Students will gain experience in formulating models and implementing algorithms using MATLAB. No previous experience with the software is required. Prerequisite(s): Multivariate calculus, linear algebra. Comfort with reading and writing mathematical proofs would be helpful but is not required. Course Note(s): Due to overlap in subject matter in EN.625.615 and EN.625.616, students may not receive credit towards the MS or post-master’s certificate for both EN.625.615 and EN.625.616.

Course Goal

This course covers fundamental methods of optimization. Emphasis in this course will be on formulating optimization problems, understanding the methods available to address them, and solving them using appropriate means.

Course Objectives

  • Learn how to convert real world scenarios involving optimization into mathematical problems.

  • Use the Simplex Method, and some of its variants to numerically solve problems that can be stated as linear programs.
  • Apply classical methods of optimization to problems that may be formulated using nonlinear functions.
  • Address special topics such as multi-objective optimization, dynamic programming, non-derivative optimization methods, and optimization heuristics.

When This Course is Typically Offered

This course is typically offered online in the fall and spring semesters.


  • Optimization Applications
  • Formulation of Optimization Models
  • Graphical Solution of Linear Programs
  • Simplex Method
  • Linear Programming Duality and Sensitivity Analysis
  • Nonlinear Optimization Theory
  • Steepest Descent and Conjugate Gradient Methods
  • Newton and Quasi-Newton Methods
  • Quadratic Programming
  • Network Models
  • Dynamic Programming
  • Multi-objective Programming
  • Optimization Heuristics

Student Assessment Criteria

Homework 30%
Midterm Exam 30%
Final Exam 30%
Discussions 10%

All homework is due within one week of its assignment. Late homework will not be accepted without the prior permission of the instructor.  The two lowest homework scores will be dropped.

Timely feedback on students' performance is an established learning tool, so we will endeavor to grade and return to you, as quickly as possible, all material that you submit.

Homework will normally be graded and returned via the website before the next assignment is due. If you do not receive a grade on homework that you have turned in, please ask of its whereabouts; it may need to be resubmitted.

A grade of A-/A/A+ indicates achievement of consistent excellence and distinction throughout the course—that is, conspicuous excellence in all aspects of assignments and discussion in every week.

A grade of B-/B/B+ indicates work that meets all course requirements on a level appropriate for graduate academic work.

These criteria apply to both undergraduates and graduate students taking the course.

All external sources of information used by the student must be appropriately referenced.  Students should be fully aware of JHU's policy on academic integrity.

Computer and Technical Requirements

Students will use Matlab to complete assignments.  Students are not expected to be proficient with the software although some experience with it would be beneficial.  Examples on how to use the software will be provided in the lectures and through handouts.

Participation Expectations

Homework is expected to be turned in on the website as indicated in the assignment tool; it will be considered late if it is received after that time. Special circumstances (e.g., temporary lack of internet access) can be cheerfully accommodated if the student informs us in advance. Homework that is unjustifiably late will have the grade reduced for lateness.

We generally do not directly grade spelling and grammar. However, egregious violations of the rules of the English language will be noted without comment. Consistently poor performance in either spelling or grammar is taken as an indication of poor written communication ability that may detract from your grade.

Students are expected to participate in any class discussions.  Discussions are used to review concepts from the lectures.


Textbook information for this course is available online through the MBS Direct Virtual Bookstore.

Course Notes

There are no notes for this course.

Final Words from the Instructor

The optional course text is Engineering Optimization: Theory and Practice, by Singiresu S. Rao, John Wiley and Sons.  You can reference the 4th edition or higher: 
     * 4th edition (2009). ISBN: 978-0-470-18352-6
     * 5th edition (2019) ISBN: 978-1-119-45471-7

To be successful in this course, the student should have a good understanding of multivariable calculus and proof techniques.  Specifically, from multivariable calculus, you should be familiar with:

1. limits
2. derivative definition as a limit
3. product rule for differentiation
4. L'Hopital's rule
5. chain rule for differentiation
6. integration by parts
7. integration via substitutions
8. partial derivatives

From Linear Algebra, you should be familiar with:

1. Taking a word problem and converting it into a system of linear equations and/or linear inequalities.
2. Finding the set of feasible solutions for a system of linear inequalities in 2 variables graphically.
3. Matrix arithmetic (add, subtract, multiple by a constant; multiplying two matrices)
4. Solving systems of linear equations using Gaussian or Gauss-Jordan elimination.
5. Finding the inverse of a matrix using Gauss-Jordan elimination
6. Finding the determinant of  a matrix
7. Finding eigenvalues and eigenvectors for a matrix
8. Linear independence and dependence of vectors
9. Linear combinations of vectors

While students will generally be walked through any proofs, it will also help students are familiar with basic proof techniques:

1. Direct proof of if-then and if-and-only-if statements.
2.Indirect proof (i.e., by contradiction or contrapositive)
3.Proof by weak and strong induction.

Term Specific Course Website

(Last Modified: 12/01/2021 05:22:10 PM)