SlideShare una empresa de Scribd logo
Teoría de Complejidad
Computacional (TCC)
JAVIER GONZALEZ 15-0532
YARED REDMAN 14-0620
Objetivos
• Comprender el concepto de TCC.
• Encontrar su relacion con los lenguajes formales y automatas.
• Analizar complejidades para desarrollar algoritmos efectivos.
Definición de TCC
• Es una rama de la teoría de la computación que se centra en la
clasificación de los problemas computacionales de acuerdo a su
dificultad inherente, y en la relación entre dichas clases de complejidad.
• La teoría de la complejidad computacional trata de clasificar los
problemas que pueden, o no pueden ser resueltos con una cantidad
determinada de recursos. A su vez, la imposición de restricciones sobre
estos recursos, es lo que la distingue de la teoría de la computabilidad, la
cual se preocupa por qué tipo de problemas pueden ser resueltos de
manera algorítmica.
Relacion de las TCC con la TAYLF
¿Cuáles son las capacidades y limitaciones de los ordenadores?
Para ello se vale de otras teorías como teoría de autómatas, teoría de
computabilidad y teoría de complejidad computacional.
Esto ayuda bastante a la hora de desarrollar algoritmos para facilitar el
manejo de un ordenador y tambien para crear teorias que mejoren las
tareas que deben de manejar.
Inicios de la teoria de computabilidad
La historia de la teoría computacional comienza con uno de los aportes más
influyentes como lo fueron las Máquinas de Turing en 1936, las cuales
resultaron ser una noción de computadora muy flexible y robusta.
En los inicios, los investigadores trataban de entender las nuevas medidas de
complejidad, y cómo se relacionaban unas con otras. En 1965, Edmonds
definió un algoritmo en el cual un polinomio acotaba el tiempo de
ejecución (viniendo de ahi lo que se conoce como tiempo polinomico).
Creacion de conceptos
Uno de los conceptos más
importantes de la teoría de la
complejidad computacional:
La NP-completitud y su pregunta
fundamental, si ¿P=NP? lo que en
palabras simples se pregunta si
acaso es posible “verificar”
rápidamente soluciones positivas
a un problema del tipo SI/NO.
Y de ser afirmativa la respuesta
¿es que entonces también se
pueden “obtener” las
respuestas rápidamente?
Analizar el problema
El objetivo principal de esta teoría es la creación de mecanismos y
herramientas capaces de describir y analizar la complejidad de un algoritmo
y la complejidad intrínseca de un problema.
En otras palabras, busca la respuesta a ¿Qué hace a algunos problemas
computacionalmente difíciles y a otros sencillos?
Para ello, considera los 2 tipos de recursos requeridos durante el cómputo
para resolver un problema: tiempo y espacio.
Complejidad espacial
• Complejidad Espacial: Memoria que utiliza un programa para su
ejecución, La eficiencia en memoria de un algoritmo indica la cantidad
de espacio requerido para ejecutar el algoritmo; es decir, el espacio en
memoria que ocupan todas las variables propias al algoritmo.
• Para calcular la memoria estática de un algoritmo se suma la memoria
que ocupan las variables declaradas en el algoritmo. Para el caso de
la memoria dinámica, el cálculo no es tan simple ya que, este depende
de cada ejecución del algoritmo.
Complejidad Temporal
• Complejidad Temporal o Tiempo de ejecución: Tiempo de cómputo
necesario para ejecutar algún programa.
Este análisis se basa en las Complejidades Temporales, con este fin, para
cada problema determinaremos una medida N, que llamaremos tamaño
de la entrada o número de datos a procesar por el programa,
intentaremos hallar respuestas en función de dicha N.
Ejemplo:
• S1;
for(x = 0; x < N; x++)
• S2;
Demanda: T(N) = t1 + t2 * N
• Donde t1 es el tiempo que lleva ejecutar la serie S1 de
sentencias, y t2 es el que lleva la serie S2.
Clases de complejidad
Clase L: Es el conjunto de los problemas de decisión que pueden ser resueltos
en espacio log(n) (sin contar el tamaño de la entrada), donde n es el
tamaño de la entrada, por una máquina de Turing determinista tal que la
solución si existe es única.
Clase NL: La clase de complejidad NL (espacio logarítmico no determinista)
es el conjunto de los problemas de decisión que pueden ser resueltos en
espacio log(n) (sin contar el tamaño de la entrada), donde n es el tamaño
de la entrada, por una máquina de Turing no determinista tal que la solución
si existe es única.
Clases de complejidad
Clase P: Son todos aquellos problemas de decisión que pueden ser resueltos
en una máquina determinista secuencial en un período de tiempo
polinómico en proporción a los datos de entrada.
Clase NP: Es el conjunto de problemas que pueden ser resueltos en tiempo
polinómico por una máquina de Turing no determinista. La importancia de
esta clase de problemas de decisión es que contiene muchos problemas de
búsqueda y de optimización para los que se desea saber si existe una cierta
solución o si existe una mejor solución que las conocidas. Un ejemplo es el
clásico problema del viajante.
Ejemplo: Problema del Viajante
Dada una lista de ciudades y las distancias
entre cada par de ellas, ¿cuál es la ruta más
corta posible que visita cada ciudad
exactamente una vez y regresa a la ciudad
origen?
Este es un problema NP-duro dentro en la
optimización combinatoria, muy importante en
la investigación de operaciones y en la ciencia
de la computación.
Descripcion del problema
En el problema se presentan N! rutas posibles, aunque se puede simplificar ya
que dada una ruta nos da igual el punto de partida y esto reduce el número
de rutas a examinar en un factor N quedando (N-1)!.
Como no importa la dirección en que se desplace el viajante, el número de
rutas a examinar se reduce nuevamente en un factor 2. Por lo tanto, hay que
considerar (N-1)!/2 rutas posibles.
Desarrollo del problema
En la práctica, para un problema del viajante con 5 ciudades hay 12 rutas
diferentes y no necesitamos un ordenador para encontrar la mejor ruta,
pero apenas aumentamos el número de ciudades las posibilidades crece
exponencialmente (en realidad, factorialmente):
- Para 10 ciudades hay 181.440 rutas diferentes
- Para 30 ciudades hay más de 4·10^31 rutas posibles.
Conclusion del problema
Un ordenador que calcule un millón de rutas por segundo necesitaría 10^18
años para resolverlo. Dicho de otra forma, si se hubiera comenzado a
calcular al comienzo de la creación del universo (hace unos 13.400 millones
de años) todavía no se habría terminado.
Puede comprobarse que por cada ciudad nueva que incorporemos, el
número de rutas se multiplica por el factor N y crece exponencialmente
(factorialmente). Por ello el problema pertenece a la clase de problemas NP-
completos.
Referencias
• http://www.monografias.com/trabajos27/complejidad-
algoritmica/complejidad-algoritmica.shtml
• https://es.wikipedia.org/wiki/Teor%C3%ADa_de_la_complejidad_computa
cional
• https://es.wikipedia.org/wiki/Problema_del_viajante
• https://prezi.com/2plomktu5bfa/teoria-computacional/
• https://frikosfera.wordpress.com/2015/03/13/la-teoria-de-la-complejidad-
computacional-en-palabras-no-tan-complejas/

Más contenido relacionado

La actualidad más candente

Algoritmo divide y vencerás
Algoritmo divide y vencerásAlgoritmo divide y vencerás
Algoritmo divide y vencerásloco8888
 
Cuestionario de algoritmoss2
Cuestionario de algoritmoss2Cuestionario de algoritmoss2
Cuestionario de algoritmoss2Arazelii Puentez
 
Introducción a la Programación No Lineal
Introducción a la Programación No LinealIntroducción a la Programación No Lineal
Introducción a la Programación No LinealAngelCarrasquel3
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigomatteo_ibarguen
 
instruccion de control
instruccion de controlinstruccion de control
instruccion de controlluiseldrumer
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasJosé Antonio Sandoval Acosta
 
Grafos eulerianos y hamiltonianos
Grafos eulerianos y hamiltonianosGrafos eulerianos y hamiltonianos
Grafos eulerianos y hamiltonianosAron Boza
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaRolf Pinto
 
Algoritmo de dekker
Algoritmo de dekkerAlgoritmo de dekker
Algoritmo de dekkerJuanFrank13
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosMary Sanchez
 
Diseño algorítmico
Diseño algorítmicoDiseño algorítmico
Diseño algorítmicooviedospablo
 
Multiprocesamiento (S.O)
Multiprocesamiento (S.O)Multiprocesamiento (S.O)
Multiprocesamiento (S.O)Javier Alvarez
 
Algoritmo de dijkstra
Algoritmo de dijkstraAlgoritmo de dijkstra
Algoritmo de dijkstraKeily Solano
 
Cuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónCuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónAnita Albán
 
Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programaciónionurrutia
 

La actualidad más candente (20)

Algoritmo divide y vencerás
Algoritmo divide y vencerásAlgoritmo divide y vencerás
Algoritmo divide y vencerás
 
Cuestionario de algoritmoss2
Cuestionario de algoritmoss2Cuestionario de algoritmoss2
Cuestionario de algoritmoss2
 
Introducción a la Programación No Lineal
Introducción a la Programación No LinealIntroducción a la Programación No Lineal
Introducción a la Programación No Lineal
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigo
 
instruccion de control
instruccion de controlinstruccion de control
instruccion de control
 
Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
Grafos eulerianos y hamiltonianos
Grafos eulerianos y hamiltonianosGrafos eulerianos y hamiltonianos
Grafos eulerianos y hamiltonianos
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad Algoritmica
 
Algoritmo de dekker
Algoritmo de dekkerAlgoritmo de dekker
Algoritmo de dekker
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para Algoritmos
 
Diseño algorítmico
Diseño algorítmicoDiseño algorítmico
Diseño algorítmico
 
Multiprocesamiento (S.O)
Multiprocesamiento (S.O)Multiprocesamiento (S.O)
Multiprocesamiento (S.O)
 
Algoritmo de dijkstra
Algoritmo de dijkstraAlgoritmo de dijkstra
Algoritmo de dijkstra
 
Cuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónCuestionario Fundamentos de Programación
Cuestionario Fundamentos de Programación
 
Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programación
 
Round robin apa
Round robin apaRound robin apa
Round robin apa
 
Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Lenguajes de una maquina de turing
Lenguajes de una maquina de turingLenguajes de una maquina de turing
Lenguajes de una maquina de turing
 

Similar a Teoría de complejidad computacional (tcc).pptx

Teoria de la c.c.
Teoria de la c.c.Teoria de la c.c.
Teoria de la c.c.belmont402
 
Manual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosManual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosJuan Timoteo Cori
 
Que es complejidad computacional
Que es complejidad computacionalQue es complejidad computacional
Que es complejidad computacionalJonathan Bastidas
 
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...erickenamorado
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezVanessa Ramirez
 
Análisis de algoritmo
Análisis de algoritmoAnálisis de algoritmo
Análisis de algoritmoGaston Demundo
 
Complejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaComplejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaMarko ZP
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemasJohnfornerod
 
Que es la complejidad de un algoritmo
Que es la complejidad de un algoritmoQue es la complejidad de un algoritmo
Que es la complejidad de un algoritmojaviierr24
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemasSergio Ormeño
 
Clase de Complejidad Computacional
Clase de Complejidad ComputacionalClase de Complejidad Computacional
Clase de Complejidad Computacionallourdesnbv
 
Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmosrehoscript
 
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)Rubi Veronica Chimal Cuxin
 
Estudios de la complejidad computacional
Estudios de la complejidad computacionalEstudios de la complejidad computacional
Estudios de la complejidad computacionalvmtorrealba
 

Similar a Teoría de complejidad computacional (tcc).pptx (20)

Teoria de la c.c.
Teoria de la c.c.Teoria de la c.c.
Teoria de la c.c.
 
Complejidad
ComplejidadComplejidad
Complejidad
 
Autómatas y complejidad
Autómatas y complejidadAutómatas y complejidad
Autómatas y complejidad
 
Manual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datosManual algoritmos y_estructura_de_datos
Manual algoritmos y_estructura_de_datos
 
Manual estructura de_datos_2010___h._caselli_g
Manual estructura de_datos_2010___h._caselli_gManual estructura de_datos_2010___h._caselli_g
Manual estructura de_datos_2010___h._caselli_g
 
Cap2.1
Cap2.1Cap2.1
Cap2.1
 
Que es complejidad computacional
Que es complejidad computacionalQue es complejidad computacional
Que es complejidad computacional
 
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...
Pteg i-grupo7-lista 4,13,38,39,40,45-visita4-expo cap 12 -teoria de la comput...
 
Cap1.3
Cap1.3Cap1.3
Cap1.3
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa Ramirez
 
Análisis de algoritmo
Análisis de algoritmoAnálisis de algoritmo
Análisis de algoritmo
 
Complejidad Computacional o Algoritmica
Complejidad Computacional o AlgoritmicaComplejidad Computacional o Algoritmica
Complejidad Computacional o Algoritmica
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
 
Problemas NP
Problemas NPProblemas NP
Problemas NP
 
Que es la complejidad de un algoritmo
Que es la complejidad de un algoritmoQue es la complejidad de un algoritmo
Que es la complejidad de un algoritmo
 
Clasificacion de los problemas
Clasificacion de los problemasClasificacion de los problemas
Clasificacion de los problemas
 
Clase de Complejidad Computacional
Clase de Complejidad ComputacionalClase de Complejidad Computacional
Clase de Complejidad Computacional
 
Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmos
 
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)
Informe técnico Unidad 7 Análisis de algoritmos (Rubí Veronica)
 
Estudios de la complejidad computacional
Estudios de la complejidad computacionalEstudios de la complejidad computacional
Estudios de la complejidad computacional
 

Último

Sistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdfSistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdfLuisMarioMartnez1
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionalberto891871
 
Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdffrankysteven
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.thatycameron2004
 
Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!shotter2005
 
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDFACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDFDavidMorales257484
 
Instalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a pasoInstalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a pasosanjinesfreddygonzal
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdffrankysteven
 
Mecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continentalMecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continentalJOSHUASILVA36
 
Presentación PISC Préstamos ISC Final.pdf
Presentación PISC Préstamos ISC Final.pdfPresentación PISC Préstamos ISC Final.pdf
Presentación PISC Préstamos ISC Final.pdfEmanuelMuoz11
 
habilidad para el manejo de estación total.pdf
habilidad para el manejo de estación total.pdfhabilidad para el manejo de estación total.pdf
habilidad para el manejo de estación total.pdfJosemanuelMayradamia
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdfDavidHunucoAlbornoz
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporalema3825
 
problemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelosproblemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelosTefyReyes2
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPTLuisLobatoingaruca
 
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagneticoPresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagneticoa00834109
 
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...MarjorieDeLeon12
 
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdfSISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdfIvanIsraelPiaColina
 

Último (20)

Sistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdfSistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdf
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccion
 
Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdf
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.
 
Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!Mecanismo de cuatro barras articuladas!!
Mecanismo de cuatro barras articuladas!!
 
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDFACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
 
DESVIACION
DESVIACION DESVIACION
DESVIACION
 
Instalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a pasoInstalación de GLPI en Debian Linux paso a paso
Instalación de GLPI en Debian Linux paso a paso
 
Tasaciones Ñuñoa - La Reina - Las Condes
Tasaciones Ñuñoa - La Reina - Las CondesTasaciones Ñuñoa - La Reina - Las Condes
Tasaciones Ñuñoa - La Reina - Las Condes
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
 
Mecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continentalMecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continental
 
Presentación PISC Préstamos ISC Final.pdf
Presentación PISC Préstamos ISC Final.pdfPresentación PISC Préstamos ISC Final.pdf
Presentación PISC Préstamos ISC Final.pdf
 
habilidad para el manejo de estación total.pdf
habilidad para el manejo de estación total.pdfhabilidad para el manejo de estación total.pdf
habilidad para el manejo de estación total.pdf
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vapor
 
problemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelosproblemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelos
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagneticoPresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
 
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
 
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdfSISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
 

Teoría de complejidad computacional (tcc).pptx

  • 1. Teoría de Complejidad Computacional (TCC) JAVIER GONZALEZ 15-0532 YARED REDMAN 14-0620
  • 2. Objetivos • Comprender el concepto de TCC. • Encontrar su relacion con los lenguajes formales y automatas. • Analizar complejidades para desarrollar algoritmos efectivos.
  • 3. Definición de TCC • Es una rama de la teoría de la computación que se centra en la clasificación de los problemas computacionales de acuerdo a su dificultad inherente, y en la relación entre dichas clases de complejidad. • La teoría de la complejidad computacional trata de clasificar los problemas que pueden, o no pueden ser resueltos con una cantidad determinada de recursos. A su vez, la imposición de restricciones sobre estos recursos, es lo que la distingue de la teoría de la computabilidad, la cual se preocupa por qué tipo de problemas pueden ser resueltos de manera algorítmica.
  • 4. Relacion de las TCC con la TAYLF ¿Cuáles son las capacidades y limitaciones de los ordenadores? Para ello se vale de otras teorías como teoría de autómatas, teoría de computabilidad y teoría de complejidad computacional. Esto ayuda bastante a la hora de desarrollar algoritmos para facilitar el manejo de un ordenador y tambien para crear teorias que mejoren las tareas que deben de manejar.
  • 5. Inicios de la teoria de computabilidad La historia de la teoría computacional comienza con uno de los aportes más influyentes como lo fueron las Máquinas de Turing en 1936, las cuales resultaron ser una noción de computadora muy flexible y robusta. En los inicios, los investigadores trataban de entender las nuevas medidas de complejidad, y cómo se relacionaban unas con otras. En 1965, Edmonds definió un algoritmo en el cual un polinomio acotaba el tiempo de ejecución (viniendo de ahi lo que se conoce como tiempo polinomico).
  • 6. Creacion de conceptos Uno de los conceptos más importantes de la teoría de la complejidad computacional: La NP-completitud y su pregunta fundamental, si ¿P=NP? lo que en palabras simples se pregunta si acaso es posible “verificar” rápidamente soluciones positivas a un problema del tipo SI/NO. Y de ser afirmativa la respuesta ¿es que entonces también se pueden “obtener” las respuestas rápidamente?
  • 7. Analizar el problema El objetivo principal de esta teoría es la creación de mecanismos y herramientas capaces de describir y analizar la complejidad de un algoritmo y la complejidad intrínseca de un problema. En otras palabras, busca la respuesta a ¿Qué hace a algunos problemas computacionalmente difíciles y a otros sencillos? Para ello, considera los 2 tipos de recursos requeridos durante el cómputo para resolver un problema: tiempo y espacio.
  • 8. Complejidad espacial • Complejidad Espacial: Memoria que utiliza un programa para su ejecución, La eficiencia en memoria de un algoritmo indica la cantidad de espacio requerido para ejecutar el algoritmo; es decir, el espacio en memoria que ocupan todas las variables propias al algoritmo. • Para calcular la memoria estática de un algoritmo se suma la memoria que ocupan las variables declaradas en el algoritmo. Para el caso de la memoria dinámica, el cálculo no es tan simple ya que, este depende de cada ejecución del algoritmo.
  • 9. Complejidad Temporal • Complejidad Temporal o Tiempo de ejecución: Tiempo de cómputo necesario para ejecutar algún programa. Este análisis se basa en las Complejidades Temporales, con este fin, para cada problema determinaremos una medida N, que llamaremos tamaño de la entrada o número de datos a procesar por el programa, intentaremos hallar respuestas en función de dicha N.
  • 10. Ejemplo: • S1; for(x = 0; x < N; x++) • S2; Demanda: T(N) = t1 + t2 * N • Donde t1 es el tiempo que lleva ejecutar la serie S1 de sentencias, y t2 es el que lleva la serie S2.
  • 11. Clases de complejidad Clase L: Es el conjunto de los problemas de decisión que pueden ser resueltos en espacio log(n) (sin contar el tamaño de la entrada), donde n es el tamaño de la entrada, por una máquina de Turing determinista tal que la solución si existe es única. Clase NL: La clase de complejidad NL (espacio logarítmico no determinista) es el conjunto de los problemas de decisión que pueden ser resueltos en espacio log(n) (sin contar el tamaño de la entrada), donde n es el tamaño de la entrada, por una máquina de Turing no determinista tal que la solución si existe es única.
  • 12. Clases de complejidad Clase P: Son todos aquellos problemas de decisión que pueden ser resueltos en una máquina determinista secuencial en un período de tiempo polinómico en proporción a los datos de entrada. Clase NP: Es el conjunto de problemas que pueden ser resueltos en tiempo polinómico por una máquina de Turing no determinista. La importancia de esta clase de problemas de decisión es que contiene muchos problemas de búsqueda y de optimización para los que se desea saber si existe una cierta solución o si existe una mejor solución que las conocidas. Un ejemplo es el clásico problema del viajante.
  • 13. Ejemplo: Problema del Viajante Dada una lista de ciudades y las distancias entre cada par de ellas, ¿cuál es la ruta más corta posible que visita cada ciudad exactamente una vez y regresa a la ciudad origen? Este es un problema NP-duro dentro en la optimización combinatoria, muy importante en la investigación de operaciones y en la ciencia de la computación.
  • 14. Descripcion del problema En el problema se presentan N! rutas posibles, aunque se puede simplificar ya que dada una ruta nos da igual el punto de partida y esto reduce el número de rutas a examinar en un factor N quedando (N-1)!. Como no importa la dirección en que se desplace el viajante, el número de rutas a examinar se reduce nuevamente en un factor 2. Por lo tanto, hay que considerar (N-1)!/2 rutas posibles.
  • 15. Desarrollo del problema En la práctica, para un problema del viajante con 5 ciudades hay 12 rutas diferentes y no necesitamos un ordenador para encontrar la mejor ruta, pero apenas aumentamos el número de ciudades las posibilidades crece exponencialmente (en realidad, factorialmente): - Para 10 ciudades hay 181.440 rutas diferentes - Para 30 ciudades hay más de 4·10^31 rutas posibles.
  • 16. Conclusion del problema Un ordenador que calcule un millón de rutas por segundo necesitaría 10^18 años para resolverlo. Dicho de otra forma, si se hubiera comenzado a calcular al comienzo de la creación del universo (hace unos 13.400 millones de años) todavía no se habría terminado. Puede comprobarse que por cada ciudad nueva que incorporemos, el número de rutas se multiplica por el factor N y crece exponencialmente (factorialmente). Por ello el problema pertenece a la clase de problemas NP- completos.
  • 17. Referencias • http://www.monografias.com/trabajos27/complejidad- algoritmica/complejidad-algoritmica.shtml • https://es.wikipedia.org/wiki/Teor%C3%ADa_de_la_complejidad_computa cional • https://es.wikipedia.org/wiki/Problema_del_viajante • https://prezi.com/2plomktu5bfa/teoria-computacional/ • https://frikosfera.wordpress.com/2015/03/13/la-teoria-de-la-complejidad- computacional-en-palabras-no-tan-complejas/