• Duración:
    3 semanas
  • Dedicación:
    8–10 horas por semana
  • Precio:

    GRATIS
    Agregar un Certificado Verificado por $150 USD

  • Institución
  • Tema:
  • Nivel:
    Intermediate
  • Idioma:
    English
  • Transcripción de video:
    English
  • Tipo de curso:
    A tu ritmo

Programas asociados:

Prerrequisitos

Basic knowledge of at least one programming language and material of the Algorithmic ToolboxData Structures and Algorithms on Graphs classes.

Sobre este curso

Omitir Sobre este curso

Step into the area of more complex problems and learn advanced algorithms to help solve them.

This course, part of the Algorithms and Data Structures MicroMasters program, discusses inherently hard problems that you will come across in the real-world that do not have a known provably efficient algorithm, known as NP-Complete problems.

You will practice solving large instances of some of these problems despite their hardness using very efficient specialized software and algorithmic techniques including:

  • SAT-solvers
  • Approximate algorithms
  • Special cases of NP-hard problems
  • Heuristic algorithms

Lo que aprenderás

Omitir Lo que aprenderás
  • NP-completeness and how to deal with it
  • How to approximate algorithms
  • How to use heuristic algorithms to solve a problem more quickly when classic methods are too slow

Plan de estudios

Omitir Plan de estudios

Week 1: NP-Complete Problems
Although many of the algorithms you've learned so far are applied in practice a lot, it turns out that the world is dominated by real-world problems without a known provably efficient algorithm. Many of these problems can be reduced to one of the classical problems called NP-complete problems which either cannot be solved by a polynomial algorithm or solving any one of them would win you a million dollars (see Millenium Prize Problems) and eternal worldwide fame for solving the main problem of computer science called P vs NP. It's good to know this before trying to solve a problem before the tomorrow's deadline :) Although these problems are very unlikely to be solvable efficiently in the nearest future, people always come up with various workarounds. In this module you will study the classical NP-complete problems and the reductions between them. You will also practice solving large instances of some of these problems despite their hardness using very efficient specialized software based on tons of research in the area of NP-complete problems.

Week 2: Coping with NP-completeness: special cases
After the previous module you might be sad: you've just went through 5 courses in Algorithms only to learn that they are not suitable for most real-world problems. However, don't give up yet! People are creative, and they need to solve these problems anyway, so in practice there are often ways to cope with an NP-complete problem at hand. We show that some special cases on NP-complete problems can, in fact, be solved in polynomial time.

Week 3: Coping with NP-completeness: exact and approximate algorithms
We consider exact algorithms that find a solution much faster than the brute force algorithm. We conclude with approximation algorithms that work in polynomial time and find a solution that is close to being optimal.

Conoce a tus instructores

Daniel Kane
Assistant Professor, Computer Science and Engineering & Dept. of Mathematics
UC San Diego
Alexander S. Kulikov
Visiting Professor
UC San Diego

Obtén un Certificado Verificado para destacar los conocimientos y las habilidades que adquieras
$150 USD

Ver un modelo de certificado de edX en PDF
  • Oficial y verificado

    Obtén un certificado con la firma del instructor y el logotipo de la institución para demostrar tus logros y aumentar las posibilidades de conseguir trabajo

  • Fácil de compartir

    Agrega el certificado a tu currículum o publícalo directamente en LinkedIn

  • Incentivo comprobado

    El certificado te da un motivo más para completar el curso

  • Apoya nuestra labor

    edX, una organización sin fines de lucro, se sustenta con los certificados verificados para financiar la educación gratuita para todo el mundo

¿Quién puede hacer este curso?

Lamentablemente, las personas de uno o más de los siguientes países o regiones no podrán registrarse para este curso: Irán, Cuba y la región de Crimea en Ucrania. Si bien edX consiguió licencias de la Oficina de Control de Activos Extranjeros de los EE. UU. (U.S. Office of Foreign Assets Control, OFAC) para ofrecer nuestros cursos a personas en estos países y regiones, las licencias que hemos recibido no son lo suficientemente amplias como para permitirnos dictar este curso en todas las ubicaciones. edX lamenta profundamente que las sanciones estadounidenses impidan que ofrezcamos todos nuestros cursos a cualquier persona, sin importar dónde viva.