Universidad Técnica Federico Santa María Departamento de Informática

Slides:



Advertisements
Presentaciones similares
Introducción a la Estadística
Advertisements

Tema 7: Probabilidad 1. Introducción. 2. Variables aleatorias.
Diseño y análisis de algoritmos
Diseño y análisis de algoritmos
Bioestadística,2006.
DEFINICIONES       Experiencia Aleatoria: es aquella cuyo resultado depende del azar: ( lanzto de un dado, una moneda, extraer una bola, una carta, etc.)
DEFINICIONES       Experiencia Aleatoria: es aquella cuyo resultado depende del azar: ( lanzto de un dado, una moneda, extraer una bola, una carta, etc.)
AZAR Y PROBABILIDAD.
2. INTRODUCCION A LA TEORIA DE LA PROBABILIDAD
Instituto San Lorenzo Departamento de Matemática Probabilidades.
Conceptos Probabilísticos
Tema 3: Técnicas de contar
Notas de Matemáticas Discretas
GRAFOS HUGO ARAYA CARRASCO.
CÁLCULO DE PROBABILIDADES
Conteo Capítulo 1 Grimaldi.
E Experimentos aleatorios. Espacio muestral
Sesión 2: Teoría de Probabilidad “Considero que la probabilidad representa el estado de la mente con respecto a una afirmación, evento u otra cosa para.
Complejidad de los problemas de decisión
Variables Aleatorias Unidimensionales
Teoría de Probabilidad
Probabilidad. Variables aleatorias.
Bioinformática: Fundamentos y aplicaciones de actualidad Curso de verano 2005 Revisión de algunos modelos probabilísticos de evolución genética (Procesos.
TEMA 5 PROBABILIDAD.
Conceptos Básicos de Probabilidad
2. Probabilidad Dominar la fortuna
PROBABILIDADES Yolanda y Alberto están jugando con un dado cuyas caras están numeradas del 1 al 6. Pero Alberto es muy tramposo y ha cambiado el dado por.
UNIVERSIDAD DE GUAYAQUIL.
Estadística - Probabilidad
PROBABILIDAD.
Inferencia Estadística: 5. Probabilidad: Axiomas y Modelos
CONCEPTOS BÁSICOS DE MECÁNICA CUÁNTICA
1º BACHILLERATO | Matemáticas © Oxford University Press España, S.A Hacer clic en la pantalla para avanzar VARIABLE ALEATORIA Errores comunes Es.
Inferencia Estadística: 6. Probabilidad Condicional
Fundamentos Informática II Funciones Generatrices
Teoría de Probabilidad Dr. Salvador García Lumbreras
María Macías Ramírez y David Marín Pérez
ESTADISTICA I CSH M. en C. Gal Vargas Neri.
Sesión 10: Variable Aleatoria
Probabilidad y Estadística
Oscar F. Bedoya L. Fundamentos de análisis y diseño de algoritmos.
Un panorama de conceptos probabilísticos
Unidad II. Probabilidad
Probabilidades Objetivos de la clase Construidas definiciones básicas
1º BACHILLERATO | Matemáticas © Oxford University Press España, S.A Hacer clic en la pantalla para avanzar EXPERIENTO ALEATORIO. SUCESOS Un experimento.
DISEÑAR Y ELABORAR ALGORITMOS Nombre: anayeli hernandez peralta Grado y grupo: 1 “3” Materia: Informática y computación Maestro: Ángel Buendía Turno: Vespertino.
DISEÑAR Y ELABORAR ALGORITMOS NOMBRE: LAURA PAEZ GARCIA GRADO Y GRUPO: 1 “3” MATERIA: INFORMÁTICA Y COMPUTACIÓN MAESTRO: ÁNGEL BUENDÍA TURNO: VESPERTINO.
Combinatoria y Probabilidad
PROBABILIDADES (Adaptación) Prof. José Mardones Cuevas
Tema 5 : PROBABILIDAD.
1 2  La Teoría de la Probabilidad constituye la base o fundamento de la Estadística, ya que las ingerencias que hagamos sobre la población o poblaciones.
Principio aditivo o de adición o regla de suma
75.41 Algoritmos y Programación II Cátedra Ing. Patricia Calvo Complejidad algorítmica.
TEMA 5 PROBABILIDAD.
Inferencia Estadística Conceptos Previos. Conceptos Previos Población: Es la colección de toda la posible información que caracteriza a un fenómeno aleatorio.
Concepto de Probabilidad
Técnicas de conteo: Producto, suma y diagrama de árbol
PROBABILIDADES.
Tema : Probabilidad.
Teoría de la Probabilidad
Jugadores de cartas. Caravaggio.
CONCEPTOS BASICOS DE LA TEORIA DE PROBABILIDADES
PROBABILIDAD Y COMBINATORIA OBJETIVO: Comprender el concepto de probabilidad y caracterizar situaciones de probabilidad utilizando permutaciones, variaciones.
Villamizar Luis Miguel. Variables aleatorias Se denomina variable aleatoria al conjunto imagen de esta correspondencia, es decir, al conjunto de los números.
II. INTRODUCCION A LA TEORIA DE LA PROBABILIDAD FENÓMENO O EXPERIMENTO ALEATORIO Es un proceso de medición u observación cualquiera, en la cual los resultados.
Estadística y probabilidad
Capítulo 3 Modelo de Probabilidades II Lecturas: Recomendadas 1.- B. Eyzaguirre, C. Le Foulen, X. Hinzpeter: “Los chilenos no saben lo que leen”
MATEMÁTICA Clase Combinatoria y regla de Laplace PPTC3M023M311-A16V1
CLASE 2 Definiciones de probabilidad.
Estadística Avanzada para Ingenieros Actividad 5
Transcripción de la presentación:

Universidad Técnica Federico Santa María Departamento de Informática Fundamentos Informática II Enumeración Combinatoria Dr. Ing. Gonzalo Hernández Oliva Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: Motivación Reglas de Suma y Producto Permutaciones Combinaciones: Teorema del Binomio Combinaciones con Repeticiones Principio Inclusión y Exclusión Conceptos de Probabilidad Aplicación: Complejidad Computacional Problemas P y NP Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 1) Motivación 1 Repartición de Naranjas: (Ecuaciones Lineales Enteras) De cuántas formas posibles se pueden repartir 12 naranjas de manera que Gabriel (G) reciba al menos 4 y María (M) y Francisco (F) reciban al menos 2. Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : (Ecuaciones Lineales Enteras) xk : cantidad de 1) Motivación 1: Repartición de Naranjas (Ecuaciones Lineales Enteras) Buscamos la cantidad total de soluciones de la ecuación: x1 + x2 + x3 = 12 4 ≤ x1 ≤ 8 2 ≤ x2 ≤ 6 2 ≤ x3 ≤ 6 Donde: xk : cantidad de naranjas de la persona k Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : (Ecuaciones Lineales Enteras) G M F 4 5 6 7 8 2 3 1) Motivación 1: Repartición de Naranjas (Ecuaciones Lineales Enteras) G M F 4 5 6 7 8 2 3 Cantidad Total de Formas de Repartir: 15 Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 1) Motivación 2: Problema NP: Problema SAT Enumerar (Hacer una lista) todos los valores de verdad de una proposición lógica. Algoritmo Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 1) Motivación 3: Problema NP: (Problema SAT) Enumerar (Hacer una lista) todos los posibles subconjuntos de un conjunto con cardinalidad finita. Algoritmo Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

 bi w w Enumeración : 1) Motivación 4 Modelo NN: . . . 1 w 1 1i . . .  xi(t) bi 1 w 1 ni n 1 å wij xj(t-1) - bi xi(t) =  i=1,...,n j=1 Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 1) Motivación 4 Modelo NN: xi(0)  {0,1} n 1 å wij xj(t-1) - bi xi(t) = j=1  i=1,...,n W = Matriz de Conectividad i b = Vector de Umbrales wij j Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 1) Motivación 4 Complejidad NN: SDD Régimen Estacionario y Transiente Visualización de la Evolución Simétrica Matriz de Conectividad Comportamiento Dinámico Simple No - Simétrica W Comportamiento Dinámico Complejo Dr. Gonzalo Hernández FI-2 Enumeración

Complejidad NN: Simetría Enumeración : 1) Motivación 4 Complejidad NN: Simetría Enumerar NN construidas en base a valores de W y b seleccionados de un conjunto de cardinalidad finito: wij ε Q = {1, 2 , … , q} bi ε P = {1, 2 , … , p} Enumerar NN simétricas Enumerar NN no - simétricas Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : Problema NP en Grafos: TSP 1) Motivación 5: Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : Problema NP en Grafos: Coloración 1) Motivación 6: Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : Tarea 1 Problema NP en Grafos: Bisección 1) Motivación 7: Problema NP en Grafos: Bisección Backtracking Tarea 1 Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Enumeración: 2) Reglas de Suma y Producto: Regla de la Suma: Consideremos dos procedimientos que pueden ser realizados en forma independiente. Si existen n formas de realizar el primer procedimiento y existen m formas de realizar el segundo entonces ambos procedimientos se realizan en (n+m) formas. Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Enumeración: 2) Reglas de Suma y Producto: Regla del Producto: Sea un procedimiento que puede ser dividido en 2 etapas. Si existen n formas de realizar la primera etapa y para cada una de estas formas existen m formas de realizar la segunda etapa entonces el procedimiento se realiza en (nm) formas Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. Al salir de la tienda, Camila y Fernanda vieron cómo dos personas huían de una joyería, en la cual sonaba la alarma. María está segura que el último dígito de la patente del auto en que huyeron los asaltantes era un 5 ó un 6, y el segundo era un 3, mientras Fernanda afirma que la primera letra era una O o una D, y que el primer dígito era un 1 ó un 7. ¿Cuántas patentes cumplen estas restricciones, suponiendo tres letras y cuatro dígitos ? Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. 3 Ciudades A, B y C están conectadas cómo se muestra en la figura: C A B Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. Suponiendo que los caminos permiten viajar en ambos sentidos: ¿ De cuántas formas se puede viajar de la ciudad A a la ciudad C ? ¿ Cuántas formas es posible de realizar el viaje A B A ? ¿ Cuántas formas existen de realizar un viaje donde la ciudad inicial y final es la misma ? Examinar todos los casos. Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. Un alfabeto de 30 símbolos es utilizado para la creación de mensajes en un lenguaje de comunicación: ¿ Cuántos mensajes distintos formados por palabras de 15 símbolos pueden ser transmitidos si cada símbolo puede ser repetido ? Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. ¿ Cuántos mensajes distintos formado por palabras de 20 símbolos pueden ser transmitidos si cada símbolo no puede ser repetido ? ¿ Cuántos mensajes distintos formado por palabras de 25 símbolos pueden ser transmitidos si 10 de los 30 símbolos pueden aparecer sólo en el primer, segundo y último carácter del mensaje y los restantes 20 símbolos pueden aparecer en cualquier posición del mensaje, permitiendo repeticiones ? Dr. Gonzalo Hernández FI-2 Enumeración

2) Reglas de Suma y Producto: Ej. Enumeración: 2) Reglas de Suma y Producto: Ej. ¿ Cómo varían las respuestas a las preguntas anteriores si: Cada mensaje está formado por palabras de largo n y existen p posibles símbolos ? Cada mensaje está formado por palabras de largo n, existen p posibles símbolos y el lenguaje está compuesto por paquetes de largo q dónde q divide a n ? Dr. Gonzalo Hernández FI-2 Enumeración

3) Permutaciones: Enumeración: Dada una colección de n objetos distintos cualquier combinación (lineal) de ellos se denomina una permutación (se considera el orden). En general si existen n objetos distintos, denotados por a1 , ... , an y si 1  r  n entonces el número de permutaciones de tamaño r de estos objetos está dado por : (n)(n-1)(n-2)  (n-r+1) = n! / (n-r)! Dr. Gonzalo Hernández FI-2 Enumeración

3) Permutaciones: Enumeración: En general si existen de n objetos con n1 objetos del primer tipo, n2 del segundo tipo, ... , nr del r-ésimo tipo, donde: n1 + n2 + … + nr = n entonces el número de arreglos lineales de estos objetos está dado por: n! / (n1! n2! n3! , ... nr!) Dr. Gonzalo Hernández FI-2 Enumeración

3) Permutaciones: Enumeración: Consideraciones esenciales: Objetos Distinguibles i.e. Distintos Se considera el Orden ↔ Importa el Orden (El orden genera arreglos s) Ejemplos: Patentes, Mensajes Arreglos Lineales Puede existir Repetición (Sustitución) Dr. Gonzalo Hernández FI-2 Enumeración

3) Permutaciones: Enumeración: Arreglos No Lineales: Formas Equivalentes de sentar personas: Shift - Iguales S6 S2 S5 S3 S4 Dr. Gonzalo Hernández FI-2 Enumeración

3) Permutaciones: Ej. Enumeración: Cuántas palabras de 5 letras hay para las letras a, b, c, d, e, e, e. Cuántas palabras de 5 letras hay para las letras anteriores si la palabra debe empezar y terminar con una letra e. Cuántas palabras de 5 letras hay para las letras anteriores si la palabra no puede tener letras “e” consecutivas. Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 3) Permutaciones: Ej. Backtracking Problemas NP en Grafos: TSP Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 4) Combinaciones: Si consideramos n objetos distintos , cada selección o combinación de r de ellos, sin considerar el orden, corresponde a r! permutaciones de tamaño 1  r  n de ellos. Por lo tanto el número de combinaciones de tamaño r de una colección de n objetos es : = C(n,r) = P(n,r) / r! = n! / r! (n-r)! n r Dr. Gonzalo Hernández FI-2 Enumeración

4) Combinaciones: Enumeración: Consideraciones esenciales: Objetos Indistinguibles (O distintos por tipo) Puede existir Repetición o Sustitución NO se considera el orden ↔ El Orden NO importa Ejemplo: Cartas, Producto Polinomios, Selección Bolas de una Bolsa Dr. Gonzalo Hernández FI-2 Enumeración

 Enumeración: 4) Combinaciones: Teorema del Binomio ( x + y ) = xr Sean x e y variables reales y n un entero positivo. Entonces : ( x + y ) n =  r=1 r xr y(n-r) Coeficientes Binomiales Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 4) Combinaciones con Repetición: El número de combinaciones de n objetos tomando 1  r  n al mismo tiempo está dado por C(n+r-1,r) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 4) Combinaciones con Repetición: El número de selecciones, con repetición , de tamaño 1  r  n de una colección de n objetos El número de soluciones enteras de la ecuación : x1 + x2 + x3 + ... + xn = r Dr. Gonzalo Hernández FI-2 Enumeración

4) Combinaciones: Ej. Enumeración: Una caja tiene esferas numeradas de 1 a n. Se escogen 2 esferas al azar. De cuantas formas es posible obtener números: Consecutivos Pares o Impares En los casos que las esferas se escogen con o sin sustitución. Dr. Gonzalo Hernández FI-2 Enumeración

4) Combinaciones: Ej. Enumeración: De cuántas formas posibles se puede obtener de un mazo de 52 cartas: 1 par 2 pares 3 cartas Un full 4 cartas Una escala real Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración : 4) Combinaciones: Problemas NP en Grafos: Graph Bisection Min Cut Backtracking Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Conceptos Básicos Probabilidad: Probabilidad : Grado de certidumbre Probabilidad y Juegos de Azar Probabilidad y Frecuencia Relativa Probabilidad Subjetiva (Personal) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Conceptos Básicos Probabilidad: Experimento aleatorio :  - Ejemplo Espacio Muestral :  - Ejemplo Espacio Muestral : Discreto , Continuo Evento o Suceso ε Partes() Sucesos Elementales - Sucesos Base, Seguros (P(A)=1), Imposibles (P(A)=0) Dr. Gonzalo Hernández FI-2 Enumeración

Modelo Probabilístico: Enumeración: 5) Probabilidad Modelo Probabilístico: Asociado a una Distribución de Probabilidad, es decir, una función que asigna a cada sub-conjunto razonable de  su probabilidad. Sea  2 = Partes() colección de eventos razonables de  (-álgebra) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Definición Probabilidad Noción Intuitiva: P(A) = Resultados Favorables al Evento A Resultados Posibles Noción Frecuentista: Sea N: número total de veces que se realiza un experimento y NA: número total de veces que ocurre A P(A) = Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Probabilidad Axiomática Axioma 1: P(A)  0 Axioma 2: P() = 1 Axioma 3: Suponiendo que A1, A2,..... son eventos mutuamente excluyentes : P(Ai) = P(Ai) i i Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Propiedades Probabilidad P(AC) = 1 - P(A) P(A)  1 Si A  B  P(A)  P(B) P() = 0 P(A  B) = P(A) + P(B) - P(A  B) P( Ai)   P(Ai) P(A  B) = P(A)P(B) A,B Independ. i i Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Probabilidad Condicional Sean A, B dos sucesos tal que P(B) > 0. La probabilidad de A condicionada a la ocurrencia de B se denota por P(A/B) : P(A/B) = P(A  B) P(B) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Probabilidad Condicional Propiedades: P(A/B)  0 P( /B) = 1 P( Ai /B) =  P(Ai/B) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Ejercicio: Sean A,B sucesos de un mismo modelo de probabilidad (, , P) tales que: P(B)=0,4 P(AB)=0,7 P(A/B)=0,75 Determinar: P(AC) ; P(A-B) ; P(ACBC) ; P(A/BC) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Solución P(AC) = 1 - P(A) P(AB) = P(A) + P(B) - P(AB) P(AB) = P(A/B) P(B) = 0,75 * 0,4 = 0,3 P(A) = 0,7 - 0,4 + 0,3 = 0,6 P(AC) = 0,4 P(A-B) = P(ABC) = P(A) - P(AB) = 0,3 P(ACBC) = P(AC) + P(BC) - P(ACBC) P(ACBC) = P(BC) - P(ABC) = 0,6 - 0,3 = 0,3 Luego P(ACBC) = 0,4 + 0,6 - 0,3 = 0,7 P(A/BC) = P(ABC)/P(BC) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Probabilidad Total Sean B1 , B2 ,...., Bn eventos mutuamente excluyentes, es decir : P( ) = 1 Entonces P(A) = Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Probabilidad Total Consecuencia - Regla de Bayes: P(B/A) = P(A/B) P(B) P(A) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Ejercicio: Un procesador para computadores puede provenir de cualquiera de tres fabricantes con probabilidades: p1 = 0,25 p2 = 0,50 p3 = 0,25 Las probabilidades de que un procesador funcione correctamente durante 10.000 horas es 0,1; 0,2 y 0,4 respectivamente para los 3 fabricantes. Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Ejercicio: Calcular la probabilidad de que un procesador elegido al azar funcione durante 10.000 horas. Si el procesador funcionó correctamente durante el período de 10.000 horas ¿cuál es la probabilidad de que haya provenido del 3er fabricante? Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Solución i) P(C) = = 0,1*0,25 + 0,2*0,5 + 0,4*0,25 = 0,225. ii) P(F3/C) = P(C/F3) P(F3) P(C) = 0,4 * 0,25 = 0.4 0,225 _ Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Ejemplos Probabilidad Una moneda se lanza 2ⁿ veces. Determinar la probabilidad de que haya un número igual de caras y sellos. Determinar la probabilidad que ocurran un número par (impar) de caras Determinar la probabilidad de que se tengan n caras consecutivas. Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 5) Probabilidad Ejemplos Probabilidad Se distribuyen al azar 4 objetos distintos 1,2,3,4 entre 4 lugares señalados con los números 1,2,3,4. ¿Cuál es la probabilidad de que un objeto ocupe el lugar numerado con su mismo número? De una urna que contiene a bolas blancas y b bolas negras se sacan todas ellas. ¿Cuál es la probabilidad de que parezcan al final las b bolas negras? Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Problema → Algoritmo → Programa Definición de Algoritmo Propiedades de los Algoritmos Programa y su tiempo de ejecución Cálculo del tiempo de ejecución de programas Problemas P y NP Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Un algoritmo es un procedimiento (secuencia de instrucciones) que dada cualquier instancia de un problema produce el resultado esperado. Ejemplos: Insertion, Bubble, Merge- Sort Dada una secuencia de números a1 …an encontrar una permutación tal que: a’1 ≤ a’2 ≤ ….. ≤ a’n Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Algoritmos “razonables” no necesariamente son correctos. La correctitud debe ser demostrada cuidadosamente. Los algoritmos deben ser estudiados independientemente del computador en que serán implementados. La notación O y el análisis de peor caso son herramientas que permiten determinar su eficiencia. Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Correctitud: Solución del Problema Eficiencia: Rapidez de Solución Fácil Implementación: Recursos Es posible conseguir las 3 anteriores simultáneamente ??? Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Correctitud: Algoritmos “Clásicos” : Correcto o Exacto Heurísticas : Inexactas pero … ¿ Cuánto ? Dado un algoritmo lo primero es determinar si es correcto o no. En algunos casos es “obvio”, mientras que en otros casos es necesaria una demostración rigurosa. Q: ¿ Cómo demostrar que un algoritmo no es correcto ? A: Mediante demostración o contrajemplos Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Correctitud: TSP Problem Dado un conjunto de n puntos en el plano determinar el tour de distancia mínima que pasa una única vez por cada uno Solución Nº 1: Nearest Neighbor TSP Solución Nº 2: 2 - Swap TSP Solución Nº 3: Optimal TSP Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Eficiencia: Velocidad del Algoritmo Para alcanzar mejores desempeños es necesario construir algoritmos más veloces, no comprar máquinas más poderosas. Para un tamaño de problema suficientemente grande, la velocidad del algoritmo será mas relevante que la velocidad del hardware. Q: ¿ Cómo determinar la velocidad de un algoritmo ? Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Eficiencia: Velocidad del Algoritmo A: El Modelo RAM y El Análisis Asintótico del Peor Caso El Modelo de Computación RAM (Random Access Machine) permite determinar el tiempo de ejecución de un algoritmo. Para ello considera un computador con las siguientes características: Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos El Modelo RAM : Cada operación simple: (ops. aritméticas, ops. booleanas, comparaciones, acceso a memoria, etc) operaciones que toman una unidad de tiempo. Los Ciclos y Subrutinas no son consideradas operaciones simples, sino composición de ellas. Con ello se determina el número de operaciones elementales o simples de un algoritmo que luego se convierte a tiempo según la especificación del computador Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Ejemplos: Cálculo Operaciones Según Modelo RAM Cálculo Promedio y Desviación Estándar Evaluar un polinomio de grado n en un real x Evaluar una función booleana Ordenar n números según insertion sort Intersección de 2 conjuntos Ordenar n palabras de p letras Buscar una palabra de p letras en una lista de palabras con n  p letras Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos El Análisis Asintótico del Peor Caso: Al utilizar el modelo RAM es posible determinar el tiempo de ejecución para una instancia del problema. Sin embargo es necesario conocer como se comporta el algoritmo en todas las instancias. Para ello utilizamos las nociones de mejor, promedio y peor caso. Dr. Gonzalo Hernández FI-2 Enumeración

Propiedades de los Algoritmos Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos ! Complejidad del Peor Caso: Es la función que define el número máximo de operaciones simples que realiza el algoritmo Complejidad del Mejor Caso: Es la función que define el número mínimo de operaciones simples que realiza el algoritmo Complejidad Caso Promedio: Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Propiedades de los Algoritmos Complejidad del Peor, Promedio y Mejor Caso: Ejemplos Cálculo del Máx o Mín de n números Producto de Matrices Algoritmo de Gauss Satisfabilidad Interpolación Polinomial y Mínimos Cuadrados Problema TSP Euclideano Problema de la Bisección del Grafo Problema de la Coloración del Grafo Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Interpolación Polinomial Dados n puntos (xi , yi ) Encontrar un polinomio de grado (n - 1) tal que: p( xi ) = yi para i = 1,...,n ´ yi ´ ´ p(x) ´ ´ ´ ´ ´ ´ ´ ´ ´ xi Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Métodos de Mínimos Cuadrados Dados n puntos (xi , yi ) Encontrar la recta que mejor los “representa”: Min å [yi - ( a xi + b)]2 a,b ÎÂ y = ax + b yi ´ n ´ ´ ´ ´ ´ i=1 ´ ´ xi Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Problemas Con Solución Problemas Sin Solución Problemas NP Problemas P Universo de Problemas Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Complejidad Computacional Problema Algoritmo Complejidad Existe un algoritmno que lo resuelve en tiempo polinomial Solución Exacta en Tiempo Real Clase P No Existe un algoritmno que lo resuelve en tiempo polinomial Solución Aproximada en Tiempo Real Clase NP Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Problemas P Clase de Complejidad P Problemas “Tratables” Problemas P Calculables en ≤ O(n4) Problemas P lo son para diferentes modelos de calculabilidad (RAM, Máquina de Turing, Red Neuronal, Autómata, Programa) Composición de Problemas P es P Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Problemas NP Clase de Complejidad NP Problemas “Intratables” o Complejos No existe a la fecha algoritmo correcto que los resuelva en tiempo polinomial En la práctica sólo solución aproximada Problemas NP Calculables O(2n) Clase NP  Clase P ??? Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Problemas NP Métodos Solución Problemas NP Búsqueda Combinatorial y Mejorada Heurísticas y Metaheurísticas: Local & Greedy Heuristics Simulated Annealing Redes Neuronales Algoritmos Genéticos Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: 6) Problemas NP Búsqueda Combinatorial Solución por enumeración A=(a1,a2,…,an) Aplicable a problemas pequeños n  50 Enumeración de Permutaciones, Subsets, etc. Backtraking: En cada etapa se tiene una solución parcial Ak = (a1,a2,…,ak) y se determina el set de candidatos para Sk+1 . Si es solución se anota, sino se sigue. Si Sk+1 =  se reemplaza ak (backtrack) Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: Problemas NP Búsqueda Combinatorial: Backtracking Backtrack(A) { Compute S1 the set of candidate first elements of solution A ; k = 1 ; while ( k > 0 ) { while ( Sk   ) // advance // { ak = the next element from Sk if ( A =(a1,…, ak) is a solution report it ; k = k + 1 ; compute Sk the set of candidate k-th elements of solution A; k = k - 1 // backtrack // ; } } } Dr. Gonzalo Hernández FI-2 Enumeración

Enumeración: Bibliografía Discrete and Combinatorial Mathematics, R.P. Grimaldi The Algorithm Design Manual, S. Skiena http://www.cs.sunysb.edu/~algorith/ Libros de Matemática Discreta y Combinatorial Dr. Gonzalo Hernández FI-2 Enumeración