Modulo 6: Complejidad computacional

अब Quizwiz के साथ अपने होमवर्क और परीक्षाओं को एस करें!

¿Cuándo tiene un algoritmo complejidad exponencial?

Un algoritmo tiene complejidad polinómica (espacial o temporal) si la tasa de crecimiento de su coste respecto al tamaño de la entrada (n) es del orden de O(2^O(n^k)) para alguna constante k

¿Cuándo tiene un algoritmo complejidad polinómica?

Un algoritmo tiene complejidad polinómica (espacial o temporal) si la tasa de crecimiento de su coste respecto al tamaño de la entrada (n) es del orden de O(n^k) para alguna constante k

¿Cuándo un problema es intratable?

Un problema Prob es intratable si es resoluble en tiempo exponencial pero no polinómico.

¿Cuándo un problema es tratable?

Un problema Prob es tratable si es resoluble en tiempo polinómico.

¿Que significa que un problema sea verificable en tiempo polinómico?

Un problema Prob es verificable en tiempo polinómico si tiene una función verificadora v calculable en tiempo polinómico.

¿Qué es un problema de cálculo?

Un problema Prob: I → S es un problema de cálculo si el conjunto de soluciones de S es diferente de {SI, NO}. En estos casos el resultado es un valor que se tiene que calcular a partir de la entrada de acuerdo con el enunciado del problema.

¿Qué es un problema decisional?

Un problema Prob: I → S es un problema decisional si el conjunto de las soluciones es {SI, NO}. Dicho de otra forma el problema consiste en establecier si la entrada satisface una cierta propiedad.

¿Qué es un problema de optimización?

Un problema Prob: I→S es un problema de optimización si es un problema de cáculo y el resultado tiene que ser óptimo (máximo o mínimo) de acuerdo con una función de valoración definida en el enunciado del problema. Es decir pide la mejor solución dado un cierto criterio.

¿Qué es un problema computacional?

Un problema computacional es un enunciado donde, partiendo de una información de entrada (instancia), se pide una respuesta finita (solución) con unas características determinadas. Formalmente ver imagen

¿Qué es la reducción del problema A en B?

Una reducción del problema A al problema B es una función f : IA →IB que transforma cada entrada del problema A (x ∈ IA) en una entrada del problema B (f (x) ∈ IB) de forma que se cumple A(x) = B(f (x)).

¿Dado un problema decisional que es Prob*?

Es el conjunto de entradas que tienen solución SI. Así x∈Prob* es equivalente a Prob(x) = SI. Y x∉Prob* es equivalente a Prob(x) = NO

¿Cuál es la clase EXPSPACE?

Es el conjunto de todos los problemas resolubles en espacio exponencial.

¿Cuál es la clase PSPACE?

Es el conjunto de todos los problemas resolubles en espacio polinómico

¿Cuál es la clase EXPTIME?

Es el conjunto de todos los problemas resolubles en tiempo exponencial. Para abreviar se reviere como ...

¿Cuál es la clase PTIME?

Es el conjunto de todos los problemas resolubles en tiempo polinómico. Para abreviar se refiere a esta clase como P

¿Qué es la clase NPTIME?

Es la clase de todos los problemas verificables en tiempo polinómico. Para abreviar se define como NP

¿Qué es una clase de complejidad C?

Es un conjunto de problemas con una característica común en su complejidad computacional.

Qué es un problema C- Completo

Es un problema C-Dificil que pertenece a C

¿Qué es el problema de 3-Satisfacibilidad (3SAT)?

Es un problema SAT en el que cada cláusula tiene exactamente 3 literales.

¿Qué es una fórmula booleana?

Es una combinación de variables mediante operaciones lógicas como la conjunción y-lógica (∧), la disyunción o-lógica (∨) o la negación. (-x)

¿Qué es un variable booleana?

Es una variable que puede tomar los valores 0 (Falso) o 1 (Verdadero)

¿Qué significa que la reducción polinómica sea transitiva?

La reducción polinómica es transitiva: dados tres problemas A, B y C,si A ≤p B y B ≤p C, entonces tenemos que A ≤p C.

¿Cuál es la relación de inclusión entre las distintas clases?

Las clases de complejidad satisfacen las siguientes relaciones de inclusión: P⊆NP⊆PSPACE⊆[⊆EXPSPACE

¿Qué significa que NP representa una frontera de tratabilidad?

Los problemasque no pertenecen a NP son claramente intratables: si hay un problema queni siquiera se puede verificar eficientemente, nos podemos olvidar de resolverlo eficientemente

Si Prob es un problema NP-Completo cualquiera, entonces Prob ∈ P si y sólo si

P = NP

¿Di dos problemas C-Completos?

PARTICION y SUMA_SUB

¿Qué es un problema C-Dificil?

Sea C una clase de complejidad y sea Prob un problema. Prob es unproblema C-Difícil si cualquier problema de la clase C se puede reducir polinómicamente a Prob

¿Qué son los testigos?

Sea T, un conjunto de elementos que se llaman testigos. Dado un problema decisinal Prob:I→{SI,NO}, una función verificadora es una función v: IxT→{SI,NO} tal que: * Si Prob(x) = SÍ, entonces existe algún testigo t ∈ T para el que v(x,t) =SÍ. * Si Prob(x) = NO, entonces v(x,t) = NO para cualquier t ∈ T .

¿Cuándo una fórmula está en forma normal conjuntiva (FNC)?

Si es una conjunción y-lógica de cláusulas

¿Qué es una reducción polinómica?

Si para la funcion f, que se utiliza para hacer una reducción, hay un algoritmo que calcula en f en tiempo polinómico , diremos que f es una reducción polinómica del problema A al problema B (ver imagen)

¿SAT y PARTICION pertenecen a la clase NP?

Si A es reducible en B, entonces... (4 propiedades)

1) B ∈ P → A ∈ P (Si B pertenece a P, entonces A también) 2) B ∈ NP → A ∈ NP (Si B pertenece a NP, entonces A también) 3) A ∉ P → B ∉ P (Si A no pertenece a P, entonces B tampoco) 4) A ∉ NP → B ∉ NP (Si A no pertenece a NP, entonces B tampoco)

Si C es un conjunto. Como se representa el conjunto formado por todos los subconjuntos de C

2^C

Sea C una clase de complejidad y Prob un problema C-Difícil. Si tenemos un problema A tal que Prob ≤p A (Prob es reducible a A), entonces...

A también es C-Dificil

Dado un problema de cálculo: Dada una entrada x, calcular el valor de salida f (x). ¿Cómo se reformula como un problema decisional?

Dada una entrada x y un valor k,decidir si f (x) = k

Dado un problema de optimización: "Dada una entrada x, calcular el valor de salida f (x) que maximizael criterio c" ¿Cómo se reformula en un problema decisional?

Dada una entrada x y un valor límite l, decidir si hay alguna salida f(x) tal que c(f (x)) ≥ l

¿Enunciado problema SAT?

Dada una fórmula booleana f : V → {0,1} en FNC, decidir si hay alguna asignación de valores de verdad a las variables V que satisface f (es decir, hace que f evalúe a 1)

¿Cuál es el enunciado del problema LCS?

Dadas dos cadenas de caracteres a y b, encontrar la subcadena común más larga entre a y b

¿Cuál es el enunciado del problema suma de subconjuntos? SUMA_SUB

Dado un conjunto de enteros C y un entero t, decidir si existe un subconjunto C′ ⊆ C tal que la suma de todos los elementos de C′ sea igual a t.

¿Cuál es el enunciado del problema CPP?

Dado un conjunto de puntos en un espacio bidimensional, donde cada punto está definido por las coordenades (x,y), calcular el par de puntos que son más próximos entre sí.

Cual es el enunciado del problema AISLADOS

Dado un grafo G=(V,A), determinar el conjunto de vértices de grado cero. Es un problema de cáculo.

¿Cual es el enunciado del problema MSP?

Dado un grafo conexo y ponderado, es decir, un grafo G = (V,A) y la función deponderación w, calcular un árbol generador minimal

¿Cuál es el enunciado de partición de conjuntos? PARTICION

Dado un multiconjunto de enteros C, decidir si existe un subconjunto C′ ⊆ C tal que la suma de todos los elementos de C′ sea igual a la suma de los elementos fuera de C′.

¿Qué significa que dos problemas decisionales A y B sean polinómicamente equivalentes?

Dos problemas decisionales A y B son polinómicamente equivalentescuando A ≤p B y B ≤p A. (es decir A es reducible a B y viceversa).

¿Qué es una cláusula?

ES una disyunción o-lógica de los literales

¿Qué es un literal?

ES una variable booleana y su negación.

¿Qué dice el teorema de Cook?

El problema SAT es un problema NP-Completo

Cuando la entrada de un algoritmo depende de un número entero N. ¿Cómo definimos el tamaño de la entrada?

El tamaño de la entrada se definirá como el número de bits de la representación binaria de N (n=[log2 N]+1

¿En que categorías se agrupan las funciones de coste de los algoritmos?

En dos categorías, complejidad polinómica y complejidad exponencial.

De forma intuitiva, ¿qué es una reducción?

es un preproceso que nos permite reaprovecharel algoritmo que resuelve el problema B para resolver el problema A sin ninguna otra modificación al algoritmo.

Todos los problemas C-Completos de una clase de complejidad C son...

polinómicamente equivalentes entre sí.


संबंधित स्टडी सेट्स

Accident and Sickness Policy Provisions, Clauses, and Riders

View Set

Ch 35 Assessment of the Immune System PrepU

View Set

ACC410 - Advanced Accounting - Test 2

View Set

Chapter 7: The Mole and Chemical Composition

View Set

Levels of organization, Circulatory System

View Set

Marketing Chapter 12 Video Assignment

View Set

CISCO NetAcad CCNA 1 Chapter 7 Exam

View Set

HA - Unit 2 - Chapter 21: Assessing Heart and Neck Vessels

View Set

CompTIA Security+ SY0-501: Types of Malware

View Set

Основи наукового пізнання

View Set

Non-Governmental Organisations (NGO's)

View Set