cc3001 Métodos Matemáticos


Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "cc3001 Métodos Matemáticos"

Transcripción

1 cc3001 Métodos Matemáticos Patricio Poblete Otoño 2012 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

2 Funciones discretas Para estudiar la eciencia de los algoritmos, generalmente usamos funciones discretas, que miden cantidades tales tiempo de ejecución, memoria utilizada, etc. Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

3 Funciones discretas Para estudiar la eciencia de los algoritmos, generalmente usamos funciones discretas, que miden cantidades tales tiempo de ejecución, memoria utilizada, etc. Estas funciones son discretas porque dependen del tamaño del problema (n). Por ejemplo, n podría representar el número de elementos a ordenar. Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

4 Funciones discretas Para estudiar la eciencia de los algoritmos, generalmente usamos funciones discretas, que miden cantidades tales tiempo de ejecución, memoria utilizada, etc. Estas funciones son discretas porque dependen del tamaño del problema (n). Por ejemplo, n podría representar el número de elementos a ordenar. Notación: f (n) o bien f n Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

5 Notación O Se dice que una función f (n) es O(g(n)) si existe una constante c > 0 y un n 0 0 tal que para todo n n 0 se tiene que f (n) cg(n). Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

6 Notación O Se dice que una función f (n) es O(g(n)) si existe una constante c > 0 y un n 0 0 tal que para todo n n 0 se tiene que f (n) cg(n). Se dice que una función f (n) es Ω(g(n)) si existe una constante c > 0 y un n 0 0 tal que para todo n n 0 se tiene que f (n) cg(n). Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

7 Notación O Se dice que una función f (n) es O(g(n)) si existe una constante c > 0 y un n 0 0 tal que para todo n n 0 se tiene que f (n) cg(n). Se dice que una función f (n) es Ω(g(n)) si existe una constante c > 0 y un n 0 0 tal que para todo n n 0 se tiene que f (n) cg(n). Se dice que una función f (n) es Θ(g(n)) si f (n) = O(g(n) y f (n) = Ω(g(n)). Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

8 Ejemplos 3n = O(n) 2 = O(1) 2 = O(n) 3n + 2 = O(n) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

9 Ejemplos 3n = O(n) 2 = O(1) 2 = O(n) 3n + 2 = O(n) 3 = Ω(1) 3n = Ω(n) 3n = Ω(1) 3n + 2 = Ω(n) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

10 Ejemplos 3n = O(n) 2 = O(1) 2 = O(n) 3n + 2 = O(n) 3 = Ω(1) 3n = Ω(n) 3n = Ω(1) 3n + 2 = Ω(n) 3n + 2 = Θ(n) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

11 Ecuaciones de Recurrencia Son ecuaciones en que el valor de la función para un n dado se obtiene en función de valores anteriores. Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

12 Ecuaciones de Recurrencia Son ecuaciones en que el valor de la función para un n dado se obtiene en función de valores anteriores. Esto permite calcular el valor de la función para cualquier n, a partir de condiciones de borde (o condiciones iniciales) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

13 Ecuaciones de Recurrencia Son ecuaciones en que el valor de la función para un n dado se obtiene en función de valores anteriores. Esto permite calcular el valor de la función para cualquier n, a partir de condiciones de borde (o condiciones iniciales) Ejemplo: Torres de Hanoi a n = 2a n a 0 = 0 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

14 Ecuaciones de Recurrencia Son ecuaciones en que el valor de la función para un n dado se obtiene en función de valores anteriores. Esto permite calcular el valor de la función para cualquier n, a partir de condiciones de borde (o condiciones iniciales) Ejemplo: Torres de Hanoi Ejemplo: Fibonacci a n = 2a n f n a 0 = 0 = f n 1 + f n 2 f 0 = 0 f 1 = 1 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

15 Ecuaciones de Primer Orden Consideremos una ecuación de la forma a n = ba n 1 + c n donde b es una constante y c n es una función conocida. Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

16 Ecuaciones de Primer Orden Consideremos una ecuación de la forma a n = ba n 1 + c n donde b es una constante y c n es una función conocida. Como precalentamiento, consideremos el caso b = 1: a n = a n 1 + c n Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

17 Ecuaciones de Primer Orden Consideremos una ecuación de la forma a n = ba n 1 + c n donde b es una constante y c n es una función conocida. Como precalentamiento, consideremos el caso b = 1: a n = a n 1 + c n Esto se puede poner en la forma a n a n 1 = c n Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

18 Ecuaciones de Primer Orden Consideremos una ecuación de la forma a n = ba n 1 + c n donde b es una constante y c n es una función conocida. Como precalentamiento, consideremos el caso b = 1: a n = a n 1 + c n Esto se puede poner en la forma a n a n 1 = c n Sumando a ambos lados, queda una suma telescópica: a n = a k n c k Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

19 Ecuaciones de Primer Orden (cont.) Para resolver el caso general: a n = ba n 1 + c n dividamos ambos lados por el factor sumante b n : a n b n = a n 1 + c n b n 1 b n Si denimos A n = a n /b n, C n = c n /b n, queda una ecuación que ya sabemos resolver: con solución A n A n = A n 1 + C n = A 0 + C k 1 k n y nalmente a n = a 0 b n + 1 k n c k b n k Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

20 Ejemplo: Torres de Hanoi El número de movimientos de discos está dado por la ecuación a n = 2a n a 0 = 0 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

21 Ejemplo: Torres de Hanoi El número de movimientos de discos está dado por la ecuación a n = 2a n a 0 = 0 De acuerdo a lo anterior, la solución es a n = 2 n k = 2 k 1 k n 0 k n 1 lo cual se simplica a a n = 2 n 1 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

22 Ejercicio Generalizar este método para resolver ecuaciones de la forma a n = b n a n 1 + c n donde b n y c n son funciones conocidas. Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

23 Ecuaciones lineales con coecientes constantes Ejemplo: Fibonacci f n = f n 1 + f n 2 f 0 = 0 f 1 = 1 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

24 Ecuaciones lineales con coecientes constantes Ejemplo: Fibonacci f n = f n 1 + f n 2 f 0 = 0 f 1 = 1 Este tipo de ecuaciones tienen soluciones exponenciales, de la forma f n = λ n : f n = f n 1 + f n 2 λ n = λ n 1 + λ n 2 Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

25 Ecuaciones lineales con coecientes constantes Ejemplo: Fibonacci f n = f n 1 + f n 2 f 0 = 0 f 1 = 1 Este tipo de ecuaciones tienen soluciones exponenciales, de la forma f n = λ n : f n = f n 1 + f n 2 λ n = λ n 1 + λ n 2 Dividiendo ambos lados por λ n 2 obtenemos la ecuación característica λ 2 λ 1 = 0 cuyas raíces son φ = , ˆφ = Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

26 Ecuaciones lineales con coecientes constantes(cont.) La solución general se obtiene como una combinación lineal de estas soluciones: = Aφ n + B ˆφ n f n Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

27 Ecuaciones lineales con coecientes constantes(cont.) La solución general se obtiene como una combinación lineal de estas soluciones: = Aφ n + B ˆφ n La condición inicial f 0 = 0 implica que B = A, esto es, f n f n = A(φ n ˆφ n ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

28 Ecuaciones lineales con coecientes constantes(cont.) La solución general se obtiene como una combinación lineal de estas soluciones: = Aφ n + B ˆφ n La condición inicial f 0 = 0 implica que B = A, esto es, f n f n = A(φ n ˆφ n ) y la condición f 1 = 1 implica que A(φ ˆφ) = A 5 = 1 con lo cual obtenemos nalmente la fórmula de los números de Fibonacci: f n = 1 5 (φ n ˆφ n ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

29 Ecuaciones lineales con coecientes constantes(cont.) La solución general se obtiene como una combinación lineal de estas soluciones: = Aφ n + B ˆφ n La condición inicial f 0 = 0 implica que B = A, esto es, f n f n = A(φ n ˆφ n ) y la condición f 1 = 1 implica que A(φ ˆφ) = A 5 = 1 con lo cual obtenemos nalmente la fórmula de los números de Fibonacci: f n = 1 5 (φ n ˆφ n ) Nótese que ˆφ n 0 cuando n, de modo que f n = Θ(φ n ). Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

30 Teorema Maestro Consideremos una ecuación de la forma T (n) = pt ( n q ) + Kn Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

31 Teorema Maestro Consideremos una ecuación de la forma T (n) = pt ( n q ) + Kn Supongamos que n es una potencia de q, digamos n = q k. Entonces T (q k ) = pt (q k 1 ) + Kq k Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

32 Teorema Maestro Consideremos una ecuación de la forma T (n) = pt ( n q ) + Kn Supongamos que n es una potencia de q, digamos n = q k. Entonces T (q k ) = pt (q k 1 ) + Kq k y si denimos a k = T (q k ), tenemos la ecuación a k = pa k 1 + Kq k la cual tiene solución a k = a 0 p k + K q j p k j 1 j k Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

33 Teorema Maestro (cont.) Como k = log q n, tenemos T (n) = T (1)p log q n + Kp log q n ( q p )j 1 j log q n y observamos que p log q n = (q log q p ) log q n = (q log q n ) log q p = n log q p Por lo tanto T (n) = n log q p (T (1) + K 1 j log q n ( q p )j ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

34 Teorema Maestro: Caso p < q T (n) = n log q p (T (1) + K 1 j log q n ( q p )j ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

35 Teorema Maestro: Caso p < q T (n) = n log q p (T (1) + K ( q ) p )j 1 j log q n En el caso p < q tenemos: T (n) = n log q p (T (1) + K q p ( q p )log q n 1 q 1 ) p T (n) = Θ(n) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

36 Teorema Maestro: Caso p = q T (n) = n log q p (T (1) + K 1 j log q n ( q p )j ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

37 Teorema Maestro: Caso p = q T (n) = n log q p (T (1) + K ( q ) p )j 1 j log q n En el caso p = q tenemos: T (n) = n(t (1) + K 1) 1 j log q n = T (n) = Θ(n log n) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

38 Teorema Maestro: Caso p > q T (n) = n log q p (T (1) + K 1 j log q n ( q p )j ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

39 Teorema Maestro: Caso p > q T (n) = n log q p (T (1) + K ( q ) p )j 1 j log q n En el caso p > q tenemos: T (n) = n log q p (T (1) + K ( q ) p )j 1 j log q n Pero q < 1 = p T (n) nlog q n p (T (1) + K ) 1 q p q = T (n) = Θ(n log q p ) Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

40 Ejercicio Estudiar la siguiente ecuación, que generaliza el Teorema Maestro: T (n) = pt ( n q ) + Knr Patricio Poblete () cc3001 Métodos Matemáticos Otoño / 17

El Guerrero Rojo (1985) BRRip 720p Audio Trial Latino-Castellano-Ingles 5.1 | Mods Master | Documentaire