About this Course
5,458

100% 온라인

지금 바로 시작해 나만의 일정에 따라 학습을 진행하세요.

탄력적인 마감일

일정에 따라 마감일을 재설정합니다.

초급 단계

완료하는 데 약 8시간 필요

권장: 3 weeks of study, 2–5 hours/week...

영어

자막: 영어

100% 온라인

지금 바로 시작해 나만의 일정에 따라 학습을 진행하세요.

탄력적인 마감일

일정에 따라 마감일을 재설정합니다.

초급 단계

완료하는 데 약 8시간 필요

권장: 3 weeks of study, 2–5 hours/week...

영어

자막: 영어

강의 계획 - 이 강좌에서 배울 내용

1
완료하는 데 4시간 필요

Traveling Salesman Problem

We start this module with the definition of mathematical model of the delivery problem — the classical traveling salesman problem (usually abbreviated as TSP). We'll then review just a few of its many applications: from straightforward ones (delivering goods, planning a trip) to less obvious ones (data storage and compression, genome assembly). After that, we will together take the first steps in implementing programs for TSP....
4 videos (Total 43 min), 1 reading, 4 quizzes
4개의 동영상
Shortest Common Superstring Problem10m
Brute Force Search11m
Nearest Neighbor8m
1개의 읽기 자료
Additional Materials10m
4개 연습문제
Cycle Weight20m
Brute Force Algorithm2m
Average Weight30m
Nearest Neighbors2m
2
완료하는 데 4시간 필요

Exact Algorithms

We'll see two general techniques applied to the traveling salesman problem. The first one, branch and bound, is a classical approach in combinatorial optimization that is used for various problems. It can be seen as an improvement of the brute force search: we try to construct a permutation piece by piece, but at each step we check whether it still makes sense to continue constructing the permutation (if it doesn't, we just cut off the current branch). The second one, dynamic programming, is arguably the most popular algorithmic technique. It solves a problem by going through a collection of smaller subproblems....
4 videos (Total 49 min), 2 quizzes
4개의 동영상
Dynamic Programming: Main Ideas9m
Dynamic Programming: Representing Subsets10m
Dynamic Programming: Code13m
2개 연습문제
Branch and Bound
Dynamic Programming
3
완료하는 데 4시간 필요

Approximation Algorithms

As we've seen in the previous modules, solving the traveling salesman problem exactly is hard. In fact, we don't even expect an efficient solution in the nearest future. For this reason, it makes sense to ask: is it possible to find efficiently a solution that is probably suboptimal, but at the same time is close to optimal? It turns out that the answer is yes! We'll learn two algorithms. The first one guarantees to find quickly a solution which is at most twice longer than the optimal one. The second algorithms does not have such guarantees, but it is known to work pretty well in practice....
2 videos (Total 20 min), 1 quiz
2개의 동영상
Local Search8m
1개 연습문제
2-Approximation2m
4.7
9개의 리뷰Chevron Right

최상위 리뷰

대학: ASJul 25th 2018

This final course in 5 course specialization is relatively easy one, although the last problem takes little bit time to solve. Provides good introduction to difficult to learn Delivery problem.

대학: ESJun 19th 2018

perfect course! very easy and interesting to follow. Pseudo-Algorithms were very useful and helped a lot to understand the concepts.

강사

Avatar

Alexander S. Kulikov

Visiting Professor
Department of Computer Science and Engineering

캘리포니아 샌디에고 대학교 정보

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

국립 연구 고등 경제 대학 정보

National Research University - Higher School of Economics (HSE) is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communicamathematics, engineering, and more. Learn more on www.hse.ru...

Introduction to Discrete Mathematics for Computer Science 전문 분야 정보

Discrete Math is needed to see mathematical structures in the object you work with, and understand their properties. This ability is important for software engineers, data scientists, security and financial analysts (it is not a coincidence that math puzzles are often used for interviews). We cover the basic notions and results (combinatorics, graphs, probability, number theory) that are universally needed. To deliver techniques and ideas in discrete mathematics to the learner we extensively use interactive puzzles specially created for this specialization. To bring the learners experience closer to IT-applications we incorporate programming examples, problems and projects in our courses....
Introduction to Discrete Mathematics for Computer Science

자주 묻는 질문

  • 강좌에 등록하면 바로 모든 비디오, 테스트 및 프로그래밍 과제(해당하는 경우)에 접근할 수 있습니다. 상호 첨삭 과제는 이 세션이 시작된 경우에만 제출하고 검토할 수 있습니다. 강좌를 구매하지 않고 살펴보기만 하면 특정 과제에 접근하지 못할 수 있습니다.

  • 강좌를 등록하면 전문 분야의 모든 강좌에 접근할 수 있고 강좌를 완료하면 수료증을 취득할 수 있습니다. 전자 수료증이 성취도 페이지에 추가되며 해당 페이지에서 수료증을 인쇄하거나 LinkedIn 프로필에 수료증을 추가할 수 있습니다. 강좌 내용만 읽고 살펴보려면 해당 강좌를 무료로 청강할 수 있습니다.

궁금한 점이 더 있으신가요? 학습자 도움말 센터를 방문해 보세요.