Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Ecuaciones de Recurrencia: Def 1: Una ecuación de recurrencia (ER) de orden k es una ecuación funcional
F (n, xn , xn−1,......, xn−k ) = 0
(1.1)
xn : → y n ≥ k .
donde cada xn , es una función ,
La incógnita xn , es una función, o mejor dicho una familia de funciones. Ejemplos:
x−
n
nnx−1 = 0 ,
n xn xn −1 = 2 ,
n≥ 1 n≥ 1
xn = xn −1 + xn − 2 , f
n≥ 2
n
La ecuación (1.1) también se puede escribir como:
xn = f ( n, xn−1, xn−2,......, xn−k )
(1.2)
En general trabajaremos con ER escritas en la forma (1.2)
Objetivo: Dada una ecuación de recurrencia de la forma (1.2) nuestro objetivo en este tema, es obtener el término general de x n , es decir una fórmula xn = g( xk )
que no dependa de xk con k < n Def 2: Una ER es lineal si tiene la forma xn + g1 ( n) xn−1 + g2 ( n) xn− 2 + ....... + gk ( n) xn−k = h ( n)
Def 3: Una ER lineal es homogénea si h(n) = 0
Estructuras Discretas para Ciencias de la Computación Pag 1 de 25
(1.3)
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Def 4: Una ER lineal es de coeficientes constantes si g i ( n ) = a i , co co n ai ∈ Def 5: Una ER lineal de coeficientes constantes homogénea, es una ER de la forma (1.4) xn + a1 xn −1 + a2 xn− 2 + ....... + ak xn−k = 0
Para encontrar una solución de la ER (1.4), se precisa conocer k condiciones iniciales ( x0 , x1 , x2 , ....., xk −1 ) , siendo k el orden de la ecuación. Existen varias técnicas para resolver ER, las principales son: Método de la ecuación característica Método de despliegue de recurrencias Método del cambio de variables Método de la función característica El uso de cada método anterior depende, en algunos casos, de la forma de la ecuación.
a) Método de la ecuación característica Aplicaremos este método a ecuaciones de recurrencia lineal homogénea con coeficientes constantes, de la forma (1.4), es decir a ecuaciones como xn + a1 xn −1 + a2 xn− 2 + ....... + ak xn−k = 0
(*)
En este caso se supone solución de la forma n x= λ n coλ n ≠ 0 . Como es solución, entonces debe satisfacer la ecuación (*), con lo que al reemplazar, se obtiene:
Como
λ ≠
0 entonces
n
λ
λ
n
+ a1λ n−1 + a2λ n−2 + ....... + ak λ n−k = 0
λ
n
− − − k (1 + a1λ 1 + a2λ 2 + ..... + ak λ ) = 0
(**)
≠ 0 , por lo que de (**) se tiene que 1+ a1λ −1 + a2λ −2 + ...... + ak λ − k = 0
al multiplicar la ecuación precedente por λ k , se obtiene λ
k
+ a1λ k −1 +a2λ k −2 + ..... + ak −1λ 1 + a k = 0
Estructuras Discretas para Ciencias de la Computación Pag 2 de 25
(***)
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
La ecuación (***) recibe el nombre de ecuación característica, la cual tiene k raíces, estas k raíces pueden ser reales y distintas, es decir, cada una de ellas de multiplicidad uno; o pueden ser reales con multiplicidad mayor que uno, o complejas conjugadas.
Caso 1: Raíces reales y distintas. Supongamos que las raíces son
λ1 , λ2 ,... ,........, ...,λ n
con
λi ≠ λ j
∀ i ≠ j . En este
caso la solución de la ecuación (*), es una combinación lineal de las raíces de la ecuación característica, es decir:
xn = c1λ1 + c2λ2 +...... + ck λ k n
n
n
donde las constantes ci se determinan de manera única mediante las condiciones iniciales ( x0 , x1 , x2 , ....., xk −1 ) . Ejemplos: 1.- Resolver la ecuación xn = 5 xn−1 − 6 xn−2
n≥ 2
x0 = 0 x1 =1
Solución: La ecuación anterior es una ecuación de recurrencia lineal homogénea con coeficientes constantes de orden 2. De acuerdo al esquema anterior suponemos solución de la forma n x= λ n , coλ n ≠ 0 . Como = λ n , coλ n ≠ 0 es nx solución entonces debe satisfacer dicha ecuación, por lo tanto, al reemplazar en la ecuación propuesta se tiene:
Como
λ ≠ 0
entonces
n
λ
λ
n
− 5λ n−1 + 6λ n−2 = 0
λ
n
(1− 5λ −
1
+ 6λ n ) = 0
≠ 0 , por lo que en la ecuación se debe cumplir que
1 − 5λ −1 + 6λ −2 = 0 . Al multiplicar por λ 2 , la ecuación anterior nos queda: λ
2
− 5λ + 6 = 0
Estructuras Discretas para Ciencias de la Computación Pag 3 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Cuyas soluciones son
λ1 = 3 y λ 2 =2 .
Por lo tanto la solución general es:
n n xn = c1λ1 + c2λ 2 n n xn = c1 3 + c2 2
Las condiciones iniciales son
x0 = 0 y x1 =1 , que reemplazando en la solución
general obtenemos, haciendo n=0: x0 = c130 + c2 20
0 = c1 + c2 c1 = − c2
Ahora, haciendo n=1 en la solución general
x1 = c1 3 + c2 2 1
1
1= 3c1 + 2c2 1= − 3c2 + 2c2 c2 = − 1 ⇒ c1 =1
Reemplazando los valores de las constantes en la solución general, se obtiene la solución de la ER para las condiciones iniciales dadas. xn = 3 − 2 , n ≥ 0 n
n
Caso 2: Raíces reales y repetidas La ecuación característica característ ica de una ecuación de recurrencia lineal homogénea de coeficientes constantes, de orden k, tiene k raíces. Supongamos que estas raíces son reales y que al menos una de ellas tiene multiplicidad mayor que uno. Sean estas raíces λ1 , λ2 ,... ,..... ..., .,λ t con multiplicidades respectivas k1 , k2 ,... ,..... ..,, k t donde k = k1 + k2 + ..... + kt . En este caso cada raíz del polinomio característico contribuye con tantas soluciones como indique su multiplicidad. Esto es, para cada j=1, 2, …,t se tiene que las k j sucesiones
λ
n j −1 n λj
, nλ nj, n2λ nj, n3λ nj,......, n
n j
Son soluciones linealmente independientes de la ecuación de recurrencia lineal homogénea de coeficientes constantes. Estructuras Discretas para Ciencias de la Computación Pag 4 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Ejemplos: 2.-
Determine la solución xn − 3 xn−1 + 3 xn−2 − xn−3 = 0, n≥ 3 .
general
de
la
ecuación
de
recurrencia
Solución: Suponemos solución de la forma xn = λ n , λ ≠ 0 . Reemplazando en la ecuación se obtiene: λ
n
− 3λ n−1 + 3λ n−2 + λ n−3 = 0
λ
n
(1− 3λ −
1
+ 3λ −2 − λ −3 ) = 0
1− 3λ −1 + 3λ −2 − λ −3 = 0 / λ 3 λ
3
− 3λ 2 + 3λ −1 = 0
Buscamos las raíces de la ecuación característica anterior, con los divisores de -1.
1
1
1
1
1
-3
3
1
-2
1
-2
1
0
-2
1
1
-1
1
-1
0
1
-1 1
1
-1
1
0
Estructuras Discretas para Ciencias de la Computación Pag 5 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
De esta manera la ecuación tiene sus tres raíces reales y todas iguales a 1. La solución general es de la forma:
xn = c1λ1 + c2 nλ1 + c3 n2λ 1 n
n
n
xn = c11 + c2 n1 + c3 n21 , n ≥ 0 n
n
n
xn = c1 + c2 n + c3 n
2
n≥0
3.- Encuentre la solución general de la recurrencia xn+ 4 − 7 xn +3 + 13 xn+ 2 + 3 xn+1 −18 xn = 0
Solución: Suponemos solución de la forma xn = λ n , λ ≠ 0 . Reemplazando en la ecuación dada, tenemos: λ
n +4
− 7λ n+3 +13λ n+ 2 + 3λ n+1 −18λ n = 0
λ
n
(λ
λ
4
− 7λ 3 +13λ 2 + 3λ − 1 8 = 0
4
− 7λ 3 + 13λ 2 + 3λ − 18 18) = 0
Usando la regla de Ruffini Horner, determinamos las raíces de la ecuación característica anterior. Obteniendo λ1 = − 1, λ 2 = 2 y la raíz λ 3 = 3 de multiplicidad dos. La solución general, en este caso, es una combinación del caso 1 y del caso 2. n n n n xn = c1 (−1) + c2 2 + c3 3 + c4 n3 , n ≥ 0
4.- Resuelva la ecuación de recurrencia
⎧n si n = 0,1,2 ⎩5tn−1 − 8tn− 2 + 4tn−3 , n ≥ 3
t n = ⎨
Solución: La ecuación anterior se puede escribir como tn − 5t n−1 + 8t n−2 − 4t n−3 = 0 λ
n
n − 5λ n−1 + 8λ n−2 − 4λ n−3 = 0 , haciendo haciendo t n = λ
λ
n
(1− 5λ −
λ
3
− 5λ 2 + 8λ − 4 = 0
1
+ 8λ −2 − 4λ −3 ) = 0
Estructuras Discretas para Ciencias de la Computación Pag 6 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
λ 1 =1
La ecuación anterior tiene la raíz
y la raíz
λ 2
= 2 de multiplicidad dos.
Nuevamente la solución general es una combinación del caso 1 y del caso 2 t n = c11 + c2 2 + c3n 2 , n ≥ 0 n
n
n
Al imponer las condiciones iniciales, se llega al sistema de ecuaciones lineales n = 0 c1 + c2
=0 n =1 c1 + 2c2 + 2c3 =1 n = 2 c1 + 4c2 + 8c3 = 2 1 Cuya solución es c1 = − 2, c2 = 2 y c3 = − . De esta manera la solución de la 2 ecuación de recurrencia, para las condiciones iniciales dadas es: tn = − 2 + 2
n+1
− n2n−1 , n ≥ 0
Caso 3: Raíces Imaginarias b) Método de Expansión de Recurrencias Consiste en aplicar varias veces la fórmula recurrente hasta obtener una fórmula general que relaciona la función para el tamaño original con otros tamaños menores. A partir de esta fórmula se obtiene la fórmula que relaciona con el caso base. Ejemplo: Resolver la ecuación de recurrencia de las Torres de Hanoi t n = 2t n−1 + 1 t 1 =1
Solución: Observemos que la ecuación de las Torres de Hanoi es una ER no homogénea, ya que h(n) =1 . De la expresión tn = 2t n−1 +1 vamos obteniendo sucesivamente la expresión para tn−1 = 2t n−2 +1 que reemplazamos en la expresión de t n t n = 2t n−1 + 1= 2 ( 2t n−2 +1) + 1 t n = 2 t n−2 + 2 + 1 2
Estructuras Discretas para Ciencias de la Computación Pag 7 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Ahora reemplazamos tn−2 = 2t n−3 +1 en la última expresión de t n t n = 22 ( 2t n−3 +1) + 2 +1= 23 t n−3 + 2 2 + 2 + 1
De acuerdo a la ley de formación, podemos inferir, el siguiente término general t n = 2 t n −k + 2 k
k −1
+ 2k −2 + ..... + 22 + 2 + 1
t n = 2 t n −k + 2 −1 k
k
al hacer uso que la suma 2k −1 + 2 k −2 + ....... + 2 + 1= 2k − 1 . Se llega al caso base, determinado por la condición inicial t 1 =1 , cuando se impone la condición que tn−k = t 1 , lo que implica que
n − k =1 , o bien cuando k = n −1 .
Reemplazando, k = n − 1 en la expresión anterior de t n , se tiene: tn = 2
n−1
t n−( n−1) + 2
tn = 2
n−1
t 1 + 2
n−
t n = 2 11+ 2 t n = 22
n−1
n −1
n−1
n −1
−1
−1
−1 , pues t1 = 1
− 1, n ≥1
tn = 2 − 1 , n ≥ 1 n
Observación: La técnica de expansión de recurrencias es adecuada solamente cuando hay un término recurrente o cuando la ecuación es no lineal. No se debe aplicar cuando aparecen varios términos recurrentes, por ejemplo, en la ecuación de recurrencia de los números de Fibonacci: fn = fn−1 + fn−2 , n≥ 2 f 0 = 0 f 1 =1
Ejemplo: Resolver la ecuación de recurrencia: n T (n) = 3T ( ) n ≥ 2 2 T (1) = 2
Estructuras Discretas para Ciencias de la Computación Pag 8 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
n Solución: De la expresión T (n) = 3T ( ) obtenemos sucesivamente la expresión 2 n n n correspondiente a T ( ) reemplazando n por en T (n) = 3T ( ) , es decir, 2 2 2 n n T ( ) = 3T ( 2 ) 2 2 n n T ( ) = 3T ( 2 ) 2 2
De esta forma la expresión para T (n) queda:
⎧ ⎩
T (n) = 3 ⎨3T (
n ⎫ 2 n ) = 3 T ( 2 ) 2 ⎬ 2 ⎭ 2
n = en la expresión para T n T ) ( ) 3 ( ) reemplazamos n 22 2 n 2 n n n por 2 , obteniendo T ( 2 ) = 3T ( 2 ) = 3T ( 3 ) que al reemplazar en la última 2 2 2 2 expresión de T (n) se obtiene
Ahora para determinar T (
n
⎧ ⎩
T (n) = 3 ⎨3 T ( 2
n ⎫ 3 n ) = 3 T ( 3 ) 3 ⎬ 2 ⎭ 2
Repitiendo este mismo proceso k veces podemos escribir la siguiente expresión para T (n) . T (n) = 3 T ( k
n
2
k
)
En este momento debemos hacer uso del caso base, o condición inicial T (1) = 2 . La idea, es la misma que en caso anterior, la condición para k se obtiene al hacer imponer que T(
n
2
k
) = T (1) ⇒
n
2
T ( n) = 3
k
log2 n
T (n) = 2i3
=1 ⇒ 2 k = n ⇒ k =log 2 n T (1) como T ( 1) = 2
log2 n
, n≥1
Estructuras Discretas para Ciencias de la Computación Pag 9 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Antes de examinar los métodos de cambio de variables y de la función generatriz, veremos el caso no homogéneo, es decir el caso en que la función h( n) ≠ 0 . Un esquema particular para resolver una ER no homogénea, es cuando h(n) es una constante, es decir, es un número. La idea es hacer el siguiente “truco”: escribir la ecuación dada y la recurrencia siguiente, reemplazando n por n+1, y después restar, para transformarla en una ecuación homogénea. Ilustraremos este esquema mediante un ejemplo, concretamente mediante la ecuación de las Torres de Hanoi. Resolver tn = 2t n−1 +1 t 1 =1
Solución: Escribimos la ecuación propuesta y la que resulta de sustituir en la misma ecuación n por n + 1 , y las restamos tn = 2t n−1 + 1 tn+1 = 2t n +1
después de restar, queda. t n − tn+1 = (2tn−1 + 1) − (2t n +1 ) t n − tn+1 = 2t n−1 − 2t n t n+1 − 3tn + 2t n−1 = 0
esta última ecuación la resolvemos, como las ecuaciones homogéneas, es decir, suponiendo que t n = λ n con λ ≠ 0 ., quedando después de reemplazar λ λ
n +1 n
− 3λ n + 2λ n−1 = 0
(λ − 3 + 2λ −1 ) = 0
λ − 3 + 2λ
−1
= 0 ya que λ n ≠ 0
Después de multiplicar por λ , se obtiene la ecuación característica λ
cuyas raíces son
2
− 3λ + 2 = 0
λ1 = 2 y λ 2 =1 .
La solución general de la ecuación de las Torres de
Hanoi es:
Estructuras Discretas para Ciencias de la Computación Pag 10 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información n n tn = c1 2 − c21 , n ≥ 1
Las constantes c1 y c2 las determinados de las condiciones iniciales. Sin embargo, en este caso, sólo conocemos una condición inicial, t 1 =1 . La otra condición inicial la determinados de la ecuación tn = 2t n−1 +1 , que es válida para n ≥ 2 , haciendo n = 2 , obteniendo t2 = 2t2−1 +1= 2t 1 + 1= 2i1+ 1= 3 .
De la solución general, imponiendo las condiciones iniciales, se tiene: n =1 → t1 = c1 2 − c2 n = 2 → t2 = c1 4 − c2
1= 2c1 − c2 3 = 4c1 − c2
Resolviendo el sistema de ecuaciones con dos incógnitas, obtenemos c1 = c2 =1 , por lo tanto la solución es tn = 2n − 1 , n ≥ 1
Un esquema más general para resolver una ecuación no homogénea xn + a1 xn−1 + a2 xn− 2 + .... + ak xn−k = h( n)
es determinar la solución general de la ecuación de recurrencia homogénea asociada xn + a1 xn−1 + a2 xn− 2 + ..... + ak xn−k = 0
Solución que llamaremos
h
xn . Posteriormente determinamos una solución
particular de la ecuación no homogénea, que llamaremos xn p . La solución general de la ecuación no homogénea xn , es la suma de la solución de la homogénea y la particular, es decir: xn = xn + xn h
p
Las constantes ci se determinan después de haber encontrado la solución particular xn p , concretamente se determinan con la solución general de la ecuación no homogénea
xn = xn + xn . h
p
Estructuras Discretas para Ciencias de la Computación Pag 11 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
No existe un método general para determinar
p xn , sin embargo
dependiendo de la forma de h(n) , será la forma de xn p . Construiremos una solución particular de la ecuación no homogénea según los siguientes criterios: i)
Si h(n) es un múltiplo constante de una de las siguientes formas y no es solución de la ecuación homogénea asociada, entonces xn p tiene una de las formas mostradas en la siguiente tabla:
h ( n)
xn
K n
A a1n + a0
n2
a2 n 2 + a1n + a0
p
n
n
r t n n r
Ar n t t − r (at n + a t −1n 1 + .... + a1n + a0 )
sen(α n)
asen(α n) + b cos(α n)
cos(α n)
asen(α n) + b cos(α n)
En la tabla anterior K , r ,α , A, at , at −1 , at − 2 , ..., a0 son constantes. Las constantes p
A, at , at −1 , ...., a0 , se determinan sustituyendo xn en la ecuación dada
ii)
Si h(n) consta de una suma de múltiplos constantes de términos como los de la primera columna de la tabla anterior, entonces xn p está formada
iii)
por la suma de los términos correspondientes de la suma de la segunda columna. Si un sumando de h(n) contiene un factor r n que es la solución de la ecuación homogénea asociada y r es raíz de multiplicidad k en el polinomio característico, entonces la parte de xn p correspondiente a ese sumando debe multiplicarse por nk
Ejemplos: 1.- Resuelva la ecuación xn + 2 xn−1 = 3 , n≥ 1, 1, x0 = 2 Solución: En este caso h(n) = 3 y la ecuación homogénea asociada es xn + 2 xn−1 = 0 . Como debemos suponer que
n
n = x λ , coλ n ≠ 0 , entonces :
Estructuras Discretas para Ciencias de la Computación Pag 12 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
λ
n
+ 2λ n−1 = 0
λ
n
(1+2λ −1 ) = 0
1+ 2λ −1 = 0 λ +
2 =0
λ = − 2
De esta manera la solución general de la ecuación homogénea asociada es xn = ( −2) c h
n
Como h(n) = 3 es una constante, de acuerdo a la tabla, suponemos la solución particular de la forma xn p = A , que al reemplazar en la ecuación no homogénea nos queda: A + 2 A = 3
3 A = 3 A = 1
Luego xn p =1 y por lo tanto la solución general de la ecuación no homogénea es. h p xn = xn + xn n xn = ( −2) c + 1
En este momento aplicamos la condición inicial para determinar las constante c . x0 = (−2) c + 1 0
Como x0 = 2 entonces
x0 = c + 1
2= c + 1 c =1
La solución general es xn = ( −2) + 1, n ≥ 0 n
2.- Resuelva, ahora la ecuación, de recurrencia xn − 3 xn−1 = 5 ⋅ 7 n , n≥ 1 con x0 =1 Solución: La ecuación homogénea asociada es xn − 3x n−1 = 0 , para la cual suponemos solución de la forma xn = λ n , λ ≠ 0
Estructuras Discretas para Ciencias de la Computación Pag 13 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información λ
n
λ
n
− 3λ n−1 = 0
(1 − 3λ − ) = 0
λ −
1
3= 0
λ = 3
La solución de la ecuación homogénea es xnh = c3n . La forma de la solución particular es xn p = A7n ya que h(n) = Ar n . Reemplazando xn p =A7n en la ecuación no homogénea propuesta: A 7
n
1
− 3 A 7 n −1 = 5 ⋅ 7 n / n −1 7
7 A − 3 A = 5 ⋅ 7 A = 35
4 A = 3 5 ⇒
La solución de la ecuación particular es xn p = (
35 4
4
n ) ⋅7 .
La solución general de la ecuación no homogénea es h p xn = xn + xn
c +( nx = 3 n
35 4
))7 7 , n≥ 0 n
La constante c la determinamos mediante la condición inicial x0 =1 . x0 = c +
1= c + c =1 −
35 4
35 4 35 4
=−
31 4
Por lo tanto la solución de la ecuación no homogénea, para la condición inicial dada es: xn = −
31 4
3n + (
35 4
Estructuras Discretas para Ciencias de la Computación Pag 14 de 25
)7 n , n ≥ 0
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
3.- Resuelva la ecuación de recurrencia x− 3 nx−1 = 5 ⋅ 3 , n≥ 1 n
n
x0 = 2
Solución: La solución de la ecuación homogénea asociada es xnh = c3n . Como n h n h(n) = 5 ⋅ 3 y xn = c3 son linealmente dependientes, es decir estamos en el caso (iii)
donde r = 3 es raíz de la ecuación homogénea asociada, de multiplicidad k =1 , entonces la forma de la solución particular hay que multiplicarla por n k , en este caso por n1 = n . Así, la solución particular tiene la forma xn = Anr = An3 p
n
n
Sustituyendo en la ecuación no homogénea propuesta n −1
An3 − 3 A( n− 1)3 n
= 5 ⋅ 3n /⋅
1
3n−1
3 An− 3 An+ 3 A=15 3 A =15 A = 5 p n xn = 5n3
La solución general de la ecuación no homogénea dada es: xn = xn + xn h
p
xn = c3 + 5 n3 , n≥ 0 n
n
Aplicando la condición inicial, x0 = 2 , para determinar la constante c , se tiene x0 = c30 + 5 ⋅ 0 ⋅ 30 x0 = c n x= 2 ⋅ 3 + 5 n 3n , n≥ 0
n
xn = (2 + 5 n)3 , n≥ 0 n
4.- Resuelva la recurrencia
Estructuras Discretas para Ciencias de la Computación Pag 15 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
xn − 2 xn−1 + xn−2 = 3 , n≥ 2 x0 =
1
2 x1 = 3
Solución: La ecuación homogénea asociada es xn − 2 xn−1 + xn−2 = 0
Suponiendo solución de la forma xn = λ n , λ ≠ 0 , se llega a la ecuación característica
− 2λ +1= 0 Que tiene como solución la raíz λ =1 , de multiplicidad dos. Por lo que la solución λ
2
de la ecuación homogénea asociada es xn = c1 (1) + c2 n(1) h
n
n
Además debemos de observar que la ecuación propuesta puede ser escrita como xn − 2 xn−1 + xn−2 = 3 ⋅1
n
Lo que nos dice que 1n es una combinación lineal de h(n) = 3 = 3 ⋅1n . Por el caso (iii), la forma de la solución particular se debe multiplicar por n k , donde k es la multiplicidad de la raíz, en este caso k = 2 . xn = An p
2
Compruebe que la solución de la ecuación es xn =
1 2
+ n+
3 2
n2 , n≥ 0
c) Método de la Función Generatriz Consideremos una sucesión
infinita de números reales a0 , a1 , a2 , ......
llamaremos función generatriz de la sucesión
∞
{an }n=0 a la suma infinita ∞
F (z) =
∑a z
n
n
n =0
Al aplicar esta técnica se usan inmediatamente las condiciones iniciales y la propia ecuación a partir del valor de n para el cual es válida. Introduciremos la mecánica de la función generatriz con un ejemplo. Estructuras Discretas para Ciencias de la Computación Pag 16 de 25
,
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Ejemplo: Resolver un = 5un−1 − 6un−2 , n ≥ 2 u0 = 0 u1 =1
Solución: Como conocemos los término u0 = 0 y u1 =1 y un para n ≥ 2 , la función generatriz la escribimos como ∞
F ( z ) = u0 z 0 + u1 z1 +
∑u z
n
n
n= 2
∞
F ( z ) = 0 ⋅ z +1 ⋅ z + 0
1
∑ (5u n =2
n−1
− 6un−2 )z n
En la última expresión podemos darnos cuenta de la aplicación inmediata de las condiciones iniciales y de un para n ≥ 2 . ∞
∑u
F (z) = z + 5
∞
z −6 n
n −1
n =2
un−1 zz
n−1
z
n
n =2
∞
∑u
∞
− 6 ∑ un − 2 z 2 z n − 2
n =2
F ( z) = z + 5z
n− 2
n= 2
∞
∑
F (z) = z + 5
∑u
n−1
z
n−1
n= 2
∞
− 6z
2
∑u
n −2
z
n− 2
n=2
Las sumas anteriores se deben expresar en términos de la función generatriz F ( z ) , de la siguiente manera: ∞
∑u
n −1
z
n −1
= u1 z1 + u2 z 2 + u3 z3 + ........
n= 2
∞
∑u
n −2
z
n− 2
= u0 z0 + u1z 1 + u2 z 2 + ...... = F ( z )
n= 2
Podemos observar que la última suma es justamente F ( z ) . Ahora expresaremos la primera de las dos sumas anteriores en términos de F ( z ) .
Estructuras Discretas para Ciencias de la Computación Pag 17 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información ∞
F ( z) =
∑u z
n
n
= u0 z 0 + u1 z1 + u 2z 2 + u3 z 3 + .........
n =0
∞
F ( z ) = u0 z + 0
∑u
n−1
z
n−1
n= 2
∞
F ( z) = 0 ⋅ z + 0
∑u
n−1
z
n −1
n =2
∞
∑u n =2
n−1
z
n −1
= F ( z)
De esta manera F ( z ) = z + 5 zF ( z ) − 6 z 2 F ( z )
6 z2 F ( z) − 5 zF( z) + F( z) = z
(
)
F ( z ) 6 z 2 − 5 z +1 = z F ( z) = F ( z) =
z
6 z 2 − 5 z +1 z 1 1 6( z − )( z − ) 2 3
La descomposición de la última expresión en fracciones parciales, tiene la forma z
1 1 ( z− )( z− ) 2 3
= z−
A + 1
2
z−
B 1
3
1 1 z = A( z − ) + B( z − ) 3 2
Haciendo: z=
1
z=
1
3
2
1
1
1
1
1
3
3
2
3
6
1
1 1
1 1
2
2 3
2 6
⇒ = B( − ) ⇒ = −
⇒ = A( − ) ⇒ =
La función generatriz queda:
Estructuras Discretas para Ciencias de la Computación Pag 18 de 25
B⇒ B= − 2
A⇒ A= 3
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
⎧
⎫ −2 ⎪ F ( z) = ⎨ + ⎬ 6 ⎪ z − 1 z − 1 ⎪ 3⎭ ⎩ 2 1⎪ 3
⎧ ⎫ ⎧ ⎫ 1⎪ 1 ⎪ 1⎪ 1 ⎪ F ( z) = ⎨ ⎬− ⎨ ⎬ 2 ⎪ z − 1 ⎪ 3 ⎪ z − 1 ⎪ ⎩ 2⎭ ⎩ 3⎭ ⎧ ⎫ ⎧ ⎫ ⎪ ⎪ 1⎪ 1 1⎪ 1 − ⎨ F ( z) = ⎨ ⎬ ⎬ 2 ⎪ − 1 (1− 2 z ) ⎪ 3 ⎪ − 1 (1 − 3 z ) ⎪ ⎩ 2 ⎭ ⎩ 3 ⎭ ⎧ 1 ⎫ ⎧ 1 ⎫ F ( z) = ⎨ ⎬ − ⎨ ⎬ ⎩ (1− 3 z ) ⎭ ⎩ (1 − 2 z ) ⎭ ∞
F ( z) =
∑3 z i
∞
i
−
i =0
∑2 z i
i
i =0
La solución de la ecuación de recurrencia, se obtiene de esta última suma, considerando el (n+1)-ésimo término de las sucesiones
∞
{3 } = i
i 0
∞
{ }= i
y de 2
i 0
(que se
obtiene tomando i=n) y restando, es decir n n F(z)=3 − 2 , n≥0
d) Método del Cambio de Variables Consideremos el problema que surge al dividir un problema de tamaño n n en a problemas de tamaño . Por conveniencia, se supone que un problema de b tamaño 1 requiere de una unidad de tiempo y que el tiempo para reunir las soluciones de los subproblemas y obtener una solución del problema de tamaño n es d(n), en las mismas unidades de tiempo. Entonces si T (n) es el tiempo para resolver el problema de tamaño n, se tiene n T ( n ) = aT ( ) + d ( n ) , n ≥ 2 b T (1) = 1 Estructuras Discretas para Ciencias de la Computación Pag 19 de 25
(*)
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Para resolver la ecuación (*) se aplica la técnica de expansión de recurrencias o la técnica del cambio de variables. La idea de base es suponer que n es una potencia de b, es decir se supone que n es de la forma k n = b .Ilustraremos esta técnica con el siguiente ejemplo. Ejermplo: Mediante la técnica del cambio de variables resuelva la ecuación de recurrencia n T (n) = 4T ( ) + n , n ≥ 2 2 T (1) = 2
Solución: En este caso el problema de tamaño n se ha dividido en dos n subproblemas de tamaño , por lo que debemos suponer que n es una potencia 2 k de 2, es decir n = 2 . Además, d(n) = n. La idea es reemplazar n = 2k en la ecuación propuesta, con lo que se tiene: T (2 ) = 4T ( k
2
k
2
T (2 ) = 4T (2 (2 k
)+2
k −1
k
k )+2
El cambio de variables que se debe realizar debe garantizar que la recurrencia que nos quede sea una ecuación de recurrencia con coeficientes constantes. Dividiendo la última ecuación por 2k k
T (2 )
2
k
−4
T (2
−4
T (2
−2
T (2
k
T (2 )
2
k k
T (2 )
2
k
2
k −1
=1
)
=1
k k −1
2⋅2 2
)
k −1
k −1
k −1
)
=1
k
Hacemos el cambio de variables xk =
T (2 )
2
k
, con lo que la ecuación queda:
xk − 2 xk −1 = 1
Estructuras Discretas para Ciencias de la Computación Pag 20 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
De la condición inicial T (1) = 2 , debemos determinar la condición inicial en la k
variable xk . Si hacemos k = 0 en la expresión de xk = T (20 ) T (1)
x0 =
20
=
1
=
2 1
T (2 )
2
k
, obtenemos
=2
x0 = 2
En definitiva lo que hay que resolver es xk − 2 xk −1 =1 x0 = 2
Esta última ecuación la podemos resolver mediante el “truco” xk − 2 xk −1 =1 xk +1 − 2 xk =1
Restando las dos ecuaciones: ( xk − 2 xk −1 ) − ( xk +1 − 2 xk ) = 1−1 xk − 2 xk −1 − xk +1 + 2 xk = 0 xk +1 − 3 xk − 2 xk −1 = 0
Haciendo xk = λ k , λ ≠ 0 λ
Cuyas soluciones son
k +1
− 3λ k − 2λ k −1 = 0
λ
k
(λ − 3 − 2λ −1 ) = 0
λ
2
− 3λ − 2 = 0
λ1 = 2
y
λ 2 =1 .
La solución general de la ecuación es
xk = c1λ1 + c2λ 2 k
k
xk = 2 c1 + c2 k
Para determinar las constantes, debemos conocer dos condiciones iniciales, ya que la solución general está en función de dos constantes. En este caso conocemos sólo una, la otra condición inicial la obtenemos de xk − 2 xk −1 =1 , haciendo uso de la condición inicial conocida x0 = 2 . Para ello en la ecuación hacemos k = 1 , obteniendo x1 − 2 x0 = 1⇒ x1 =1+ 2 x0 ⇒ x1 =1+ 2 ⋅ 2 = 5⇒ x1 = 5 . Así, se obtiene el siguiente sistema de ecuaciones Estructuras Discretas para Ciencias de la Computación Pag 21 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
2 = c1 + c2 5 = 2c1 + c2
Obteniendo c1 = 3 y c2 = − 1 , y entonces la solución queda xk = 3 ⋅ 2 − 1 k
Pero, ahora debemos recordar que xk =
k
T (2 )
2
k
, entonces
k
T (2 )
2
k
= 3 ⋅ 2k − 1
T (2 ) = 3 ⋅ 2 ⋅ 2 − 2 k
k
k
k
Por último, recordamos que n = 2k T (n) = 3n − n , n ≥ 1 2
solución al problema propuesto.
Determinar el número de comparaciones comparaciones para los siguientes problemas:
1.- Dado un un conjunto conjunto S con n element elementos os se desea desea encontrar el máximo y mínimo de S. a) Soluc Solució ión n trivi trivial al: Hacer dos pasadas sobre el conjunto, una para encontrar el máximo (n-1 comparaciones) y otra para encontrar el mínimo (n-1 comparaciones). Si T(n) es el número de comparaciones para encontrar el máximo y el mínimo de S, entonces T(n)) = 2n T(n 2n – 2
b) Solución Solución Rec Recurs ursiva iva:: Dividir el conjunto conjunto S, sucesivament sucesivamente e en dos subconjuntos, encontrar los máximos y mínimos parciales, y posteriormente determinar la solución global
3
Estructuras Discretas para Ciencias de la Computación Pag 22 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Algoritmo: Maxmin(S) { if(װS = װ2) if(a if (a > b) b)
sea S = {a, b} return(a, b)
else return(b, a) else { dividir S en dos subconjuntos S 1 y S2 cada uno con la mitad de los elementos (max1, min1) ← maxmin(S1) (max2, min2) ← maxmin(S2) return(max(max1, max2), min(min1, min2)) } }
4
Solución: Denotemos por T(n) al número número de comparaciones que realiza maxmin cuando el tamaño tamaño del conjunto S es n. Como S se divide en dos conjuntos de tamaño n/2, entonces cada conjunto ocupa T(n/2) comparaciones. Además, para calcular el máximo de los máximos y el mínimo de los mínimos, se ocupan en cada caso un a comparación, en total 2. De esta manera el número total de comparaciones es: T(n) = 2T(n/2) + 2 Por otro lado, cuando el tamaño del conjunto es dos (paso básico), se debe realizar una comparación para determinar el máximo (por defecto el mínimo), lo que se escribe como: T(2) = 1 5
Estructuras Discretas para Ciencias de la Computación Pag 23 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
2.- Búsqueda Binaria : Se tiene un arreglo a de tamaño n, ordenado (supongamos ascendentemente). Se desea recuperar el elemento x. La idea de la búsqueda binaria, es examinar si el elemento x se encuentra en la mitad (o aproximadamente la mitad) del arreglo, digamos la posición k. Si a(k) = x, la búsqueda termina, y se retorna verdadero o la posición k. De lo contrario se examina si x > a(k). Si es verdadero entonces la búsqueda se centra desde la posiciones k+1 hasta n, descartando la búsqueda desde las posiciones 1 a k-1. En caso contrario la búsqueda se centra desde las posiciones 1 a k-1, descartando la parte del arreglo desde las posiciones k+1 a n.
i
k
j
6
Seudo Código
Busca(i, j) If (i < j) the then n k = [(i+j)/2] ; If( a(k)==x) then Busca(i, k -1) else Busca( Bus ca(k k +1, j)
7
Estructuras Discretas para Ciencias de la Computación Pag 24 de 25
Universidad del Bío-Bío Facultad de Ciencias Empresariales Departamento de Sistemas de Información
Solución: Sea T(n) el número de comparaciones que realiza la búsqueda binaria para recuperar el elemento x. Se necesita una comparación para verificar un elemento, como hay que suponer que no se encontró, hay que buscar con el mismo método en una mitad el arreglo (el que se ha dividido en dos), lo cual cuesta T(n/2) comparaciones. De esta manera
T(n) = T(n/2) + 1
8
Estructuras Discretas para Ciencias de la Computación Pag 25 de 25