VOOZH about

URL: https://www.coursera.org/learn/operations-research-algorithms

⇱ Operations Research (2): Optimization Algorithms | Coursera


Operations Research (2): Optimization Algorithms

Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Operations Research (2): Optimization Algorithms

This course is part of Operations Research Specialization

20,188 already enrolled

Included with

β€’

Learn more

Gain insight into a topic and learn the fundamentals.
4.9

161 reviews

Intermediate level

Recommended experience

1 week to complete
at 10 hours a week

Gain insight into a topic and learn the fundamentals.
4.9

161 reviews

Intermediate level

Recommended experience

1 week to complete
at 10 hours a week

What you'll 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.

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

6 assignments

Taught in English
Flexible schedule
Learn at your own pace

Build your subject-matter expertise

This course is part of the Operations Research Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 6 modules in this course

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. 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.

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.

What's included

7 videos1 reading1 assignment

7 videosβ€’Total 73 minutes
  • Preludeβ€’2 minutes
  • 1-1: Overview.β€’9 minutes
  • 1-2: The row and column views for a linear system – A two-dimensional example.β€’6 minutes
  • 1-3: The row and column views for a linear system – A three-dimensional example.β€’9 minutes
  • 1-4: Using Gaussian elimination to solve Ax=b – Nonsingular.β€’24 minutes
  • 1-5: Using Gauss-Jordan elimination to solve A^(-1) – Singular.β€’13 minutes
  • 1-6: Linear dependence and independence.β€’10 minutes
1 readingβ€’Total 1 minute
  • NTU MOOC course informationβ€’1 minute
1 assignmentβ€’Total 20 minutes
  • Quiz for Week 1β€’20 minutes

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.

What's included

25 videos1 assignment

25 videosβ€’Total 168 minutes
  • 2-0: Opening.β€’5 minutes
  • 2-1: Introduction.β€’4 minutes
  • 2-2: Standard form – Extreme points.β€’6 minutes
  • 2-3: Standard form – Standard form LPs.β€’8 minutes
  • 2-4: Standard form – Standard form LPs in matrices.β€’4 minutes
  • 2-5: Basic solutions – Independence among rows.β€’6 minutes
  • 2-6: Basic solutions – Basic solutions.β€’4 minutes
  • 2-7: Basic solutions – An example for listing basic solutions.β€’6 minutes
  • 2-8: Basic solutions – Basic feasible solutions.β€’8 minutes
  • 2-9: Basic solutions – Adjacent basic feasible solutions.β€’8 minutes
  • 2-10: The simplex method – The idea.β€’6 minutes
  • 2-11: The simplex method – The first move.β€’12 minutes
  • 2-12: The simplex method – The second move.β€’7 minutes
  • 2-13: The simplex method – Updating the system through elementary row operations.β€’8 minutes
  • 2-14: The simplex method – The last attempt with no more improvement.β€’4 minutes
  • 2-15: The simplex method – Visualization and summary for the simplex method.β€’7 minutes
  • 2-16: The tableau representation – An example.β€’6 minutes
  • 2-17: The tableau representation – Another example.β€’8 minutes
  • 2-18: Solving unbounded LPs.β€’6 minutes
  • 2-19: Infeasible LPs – The two-phase implementation.β€’10 minutes
  • 2-20: Infeasible LPs – An example.β€’10 minutes
  • 2-21: Computers – Gurobi and Python for LPs.β€’6 minutes
  • 2-22: Computers – An example.β€’7 minutes
  • 2-23: Computers – Model-data decoupling.β€’7 minutes
  • 2-24: Closing remarks.β€’6 minutes
1 assignmentβ€’Total 20 minutes
  • Quiz for Week 2β€’20 minutes

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.

What's included

16 videos1 assignment

16 videosβ€’Total 121 minutes
  • 3-0: Opening.β€’6 minutes
  • 3-1: Introduction.β€’3 minutes
  • 3-2: Linear relaxation.β€’4 minutes
  • 3-3: Properties of linear relaxation.β€’10 minutes
  • 3-4: Idea of branch and bound.β€’6 minutes
  • 3-5: Example 1 for branch and bound (1).β€’6 minutes
  • 3-6: Example 1 for branch and bound (2).β€’9 minutes
  • 3-7: Example 2 for branch and bound.β€’5 minutes
  • 3-8: Remarks for branch and bound.β€’8 minutes
  • 3-9: Solving the continuous knapsack problem.β€’11 minutes
  • 3-10: Solving the knapsack problem with branch and bound.β€’11 minutes
  • 3-11: Heuristic algorithms.β€’11 minutes
  • 3-12: Performance evaluation.β€’8 minutes
  • 3-13: Remarks for performance evaluation.β€’6 minutes
  • 3-14: Computers – Gurobi and Python for IPs.β€’11 minutes
  • 3-15: Closing remarks.β€’6 minutes
1 assignmentβ€’Total 20 minutes
  • Quiz for Week 3β€’20 minutes

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.

What's included

13 videos1 assignment

13 videosβ€’Total 102 minutes
  • 4-0: Opening.β€’7 minutes
  • 4-1: Introduction.β€’8 minutes
  • 4-2: Gradient descent – Gradient and Hessians.β€’7 minutes
  • 4-3: Gradient descent – A gradient is an increasing direction.β€’9 minutes
  • 4-4: Gradient descent – The gradient descent algorithm.β€’11 minutes
  • 4-5: Gradient descent – Example 1.β€’8 minutes
  • 4-6: Gradient descent – Example 2.β€’9 minutes
  • 4-7: Newton’s method – Newton’s method for a nonlinear equation.β€’6 minutes
  • 4-8: Newton’s method – Newton’s method for a single-variate NLPs.β€’7 minutes
  • 4-9: Newton’s method – An example for single-variate Newton’s method.β€’7 minutes
  • 4-10: Newton’s method – Newton’s method for multi-variate NLPs.β€’9 minutes
  • 4-11: Computers – Gurobi and Python for NLPs.β€’8 minutes
  • 4-12: Closing remarks.β€’6 minutes
1 assignmentβ€’Total 20 minutes
  • Quiz for Week 4β€’20 minutes

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.

What's included

12 videos1 assignment

12 videosβ€’Total 91 minutes
  • 5-0: Opening.β€’7 minutes
  • 5-1: Background.β€’10 minutes
  • 5-2: Motivation and objective.β€’9 minutes
  • 5-3: Three levels of modeling.β€’7 minutes
  • 5-4: Conceptual modeling.β€’9 minutes
  • 5-5: Mathematical modeling (1).β€’9 minutes
  • 5-6: Mathematical modeling (2).β€’7 minutes
  • 5-7: Results.β€’7 minutes
  • 5-8: A heuristic algorithm.β€’10 minutes
  • 5-9: Pseudocode.β€’7 minutes
  • 5-10: Performance evaluation.β€’4 minutes
  • 5-11: Closing remarks.β€’5 minutes
1 assignmentβ€’Total 20 minutes
  • Quiz for Week 5β€’20 minutes

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.

What's included

3 videos1 assignment

3 videosβ€’Total 24 minutes
  • 6-1: Summary and discussions.β€’15 minutes
  • 6-2: Preview of the next course.β€’8 minutes
  • A story that never endsβ€’2 minutes
1 assignmentβ€’Total 40 minutes
  • Quiz for Week 6β€’40 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Instructor ratings
4.8 (44 ratings)
National Taiwan University
9 Coursesβ€’113,112 learners

Explore more from Algorithms

Why people choose Coursera for their career

πŸ‘ Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
πŸ‘ Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
πŸ‘ Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
πŸ‘ Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Learner reviews

  • 5 stars

    89.44%

  • 4 stars

    8.69%

  • 3 stars

    0.62%

  • 2 stars

    0.62%

  • 1 star

    0.62%

Showing 3 of 161

HP
Β·

Reviewed on Sep 15, 2021

The Course was done earlier, hence, there was no one to answer the forums or questions, otherwise a very good course to learn about applying Python.

ZW
Β·

Reviewed on Feb 11, 2023

Good course. Have concrete examples with enough (but not too much) mathematical details. I like it a lot.

H
Β·

Reviewed on Nov 4, 2023

I want the percentage that I was given when I completed this course

Frequently asked questions

To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,