Instinto Lógico

Recuerda que nadie debe pensar por tí.

Etiqueta: complejidad

P versus NP

P VS NPEs indudable que la complejidad computacional es una rama de las matemáticas/ informática que de suma importancia. Hay algunos problemas que son irresolubles por la gran cantidad de operaciones que se deberían realizar.

Cuando hacemos referencias a P y NP estamos haciendo referencia a la complejidad computacional.

Sin entrar engrandes disquisiciones matemáticas podemos definir varias clases de complejidad:

  • La clase P es el conjunto de todos los problemas resolubles en tiempo polinómico.
  • La clase EXP es el conjunto de todos los problemas resolubles en tiempo exponencial.
  • La clase PSPACE es el conjunto de todos los problemas resolubles en espacio polinómico.
  • La clase EXPSPACE es el conjunto de todos los problemas resolubles en espacio exponencial.

Por ejemplo el problema de determinar si un número es par o encontrar el camino más corto en un grafo se pueden resolver en tiempo y espacio polinómico, sin embargo muchos problemas sobre toma de decisiones o de combinatoria, como por ejemplo, el problema PERMUTACION: “dada una cadena de caracteres C sin caracteres repetidos, calcular todas las posibles permutaciones de los caracteres de C sólo se sabe resolver en tiempo exponencial en concreto n!

Formula de Stirling

Pero ¿a qué nos referimos cuando hablamos de NP? (más…)

Complejidad computacional

complejidad computacionalEl primer paso para resolver un problema informático es encontrar un algoritmo que lo resuelva. Pero una vez resuelto el problema, nos surgen las siguientes dudas: ¿Exisiten algoritmos “mejores” para resolver el problema?

Podríamos decir que algoritmo, es una sucesión finita de operaciones elementales, que sabemos ejecutar cuando actua sobre una serie de datos. Un algoritmo, será mejor que otro en tiempo si, actuando sobre los mismos datos, el tiempo de ejecución es menor, y será mejor que otro en espacio si, actuando sobre los mismos datos, la memoria, principal o secundaria, que utilza es menor. Pero, tanto el tiempo como el espacio utilizado dependen de la máquina en la que ejecutemos el algoritmo, por tanto hay que determinar una forma para estudiar la eficiencia de los algoritmos independiente de la máquina que se utilice. (más…)

Instinto Lógico © 2014 Frontier Theme