# Operations Research (2): Optimization Algorithms (Coursera)

##### Start Date
Sep 6th 2021
Course Auditing
Categories
Effort
Certification
Languages
For learners who have already taken basic operations research courses. Experience with calculus, linear algebra, and probability is suggested.
Misc

MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Operations Research (OR) is a field in which people use mathematical and engineering methods to study optimization problems in Business and Management, Economics, Computer Science, Civil Engineering, Electrical Engineering, etc. The series of courses consists of three parts, we focus on deterministic optimization techniques, which is a major part of the field of OR. As the second part of the series, we study some efficient algorithms for solving linear programs, integer programs, and nonlinear programs.

#### Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

We also introduce the basic computer implementation of solving different programs, integer programs, and nonlinear programs and thus an example of algorithm application will be discussed.

WHAT YOU WILL LEARN

- Learn how to use algorithms to solve different types of optimization programs.

- Learn how to use Gurobi solver with Python to solve these problems efficiently.

### Syllabus

WEEK 1

Course Overview

In the first lecture, we briefly introduce the course and give a quick review about some basic knowledge of linear algebra, including Gaussian elimination, Gauss-Jordan elimination, and definition of linear independence.

WEEK 2

The Simplex Method

Complicated linear programs were difficult to solve until Dr. George Dantzig developed the simplex method. In this week, we first introduce the standard form and the basic solutions of a linear program. With the above ideas, we focus on the simplex method and study how it efficiently solves a linear program. Finally, we discuss some properties of unbounded and infeasible problems, which can help us identify whether a problem has optimal solution.

WEEK 3

The Branch-and-Bound Algorithm

Integer programming is a special case of linear programming, with some of the variables must only take integer values. In this week, we introduce the concept of linear relaxation and the Branch-and-Bound algorithm for solving integer programs.

WEEK 4

In the past two weeks, we discuss the algorithms of solving linear and integer programs, while now we focus on nonlinear programs. In this week, we first review some necessary knowledge such as gradients and Hessians. Second, we introduce gradient descent and Newton’s method to solve nonlinear programs. We also compare these two methods in the end of the lesson.

WEEK 5

Design and Evaluation of Heuristic Algorithms

As the last lesson of this course, we introduce a case of NEC Taiwan, which provides IT and network solutions including cloud computing, AI, IoT etc. Since maintaining all its service hubs is too costly, they plan to rearrange the locations of the hubs and reallocate the number of employees in each hub. An algorithm is included to solve the facility location problem faced by NEC Taiwan.

WEEK 6

Course Summary and Future Learning Directions

In the final week, we review the topics that we have learned and give students a summary. Besides, we briefly preview the advanced course to provide future direction of studying.

MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.