1
Una Ecuación de Recurrencia Lineal de Orden n a Coeficientes Constantes se define según la ecuación:
∑ dKaK = g(n) donde dK son constantes
O bien: an + ∑ cKaK = f(n) para n ≥ n0
Definición:Ecuaciones de Recurrencia :
k = n0
n
k = 0
n - 1
2
Si f(n) = 0 para n ≥ n0 adicionalmente la ecuación se denomina homogénea
En otro caso la ecuación se denomina no homogénea
Una ecuación de recurrencia establece la variación de una cantidad an discreta en función de términos anteriores ak para n0 ≤ k ≤ n -1
Al resolver la Ec. de Recurrencia se busca una expresión de an en función de n
Definición:Ecuaciones de Recurrencia :
3
Ecuación de Recurrencia Lineal de Orden 2 a Coeficientes Constantes
an + cn-1an-1 + cn-2an-2 = f(n) para n ≥ n0
Resolveremos primero el caso
homogéneo y luego el no-homogéneo
Técnica de Solución:Ecuaciones de Recurrencia :
4
Caso Homogéneo:
an + cn-1an-1 + cn-2an-2 = 0 para n ≥ n0 (H)
Proponemos una solución no trivial de
la forma:
an = rn para n ≥ n0
Técnica de Solución:Ecuaciones de Recurrencia :
5
Imponiendo esta solución en la ecuación (H) :
rn + cn-1 rn-1
+ cn-2 rn-2 = 0 para n ≥ n0 (H)
Tenemos que:
r = ½ [ -cn-1 ± (cn-1 - 4 cn-2)½ ]
Técnica de Solución:Ecuaciones de Recurrencia :
2
6
Primer Caso: cn-1 - 4 cn-2 > 0
Entonces tenemos 2 raíces reales distintas:
r1 = ½ [ -cn-1 + (cn-1 - 4 cn-2)½ ]
r2 = ½ [ -cn-1 - (cn-1 - 4 cn-2)½ ]
Y la solución de la ecuación (H) es:
an = α r1 + β r2
Donde las constantes α y β dependen de las
condiciones iniciales: a y a
Técnica de Solución:Ecuaciones de Recurrencia :
2
2
2
n n
n0 n0 + 1
7
Segundo Caso: cn-1 - 4 cn-2 = 0
Entonces tenemos una raíz real:
r1 = -½ cn-1
Y la solución de la ecuación (H) es:
an = αr1 + βnr1
Donde las constantes α y β dependen de las
condiciones iniciales: a y a
Técnica de Solución:Ecuaciones de Recurrencia :
2
n n
n0 n0 + 1
8
Tercer Caso: cn-1 - 4 cn-2 < 0
Tenemos 2 raíces complejas conjugadas:
r = ½ [ -cn-1 ± i(cn-1 - 4 cn-2)½ ]
En coordenadas polares: r =ρcos(θ)+iρsen(θ)
Y la solución de la ecuación (H) es:
an = α ρ cos(nθ) + β ρ sen(nθ)
Donde las constantes α y β dependen de las
condiciones iniciales: a y a
Técnica de Solución:Ecuaciones de Recurrencia :
2
2
n n
n0 n0 + 1
9
Caso No - Homogéneo:
an + cn-1an-1 + cn-2an-2 = f(n) para n ≥ n0 (NH)
Es fácil ver que la ecuación (NH) es de
la forma:
an = an + an para n ≥ n0
Técnica de Solución:Ecuaciones de Recurrencia :
ph
10
Caso No - Homogéneo:
Donde:
an : Solución de la Ecuación (H)
an : Solución Particular de la Ecuación (NH)
an Depende de la forma de f(n)
Técnica de Solución:Ecuaciones de Recurrencia :
p
h
p
11
Caso No - Homogéneo:
Veamos algunos casos:
• an = An2 + Bn + C si f(n) = αn2 + βn + δ
• an = Aρqcos(qα) + Bρqsen(qα)
si f(n) = Cρqcos(qα) + Dρqsen(qα)
Técnica de Solución:Ecuaciones de Recurrencia :
p
p
12
Certamen 2-2007 Resuelva la siguiente ecuación de recurrencia por método manual y
obtenga el término 100 de la serie y el orden de la sucesión.
Algunos Ejemplos:Ecuaciones de Recurrencia :
21
0
3
7n nT T n
T
13
Bubble Sort Relación de Fibonacci Determinantes de matrices Fractales Torres de Hanoi Saludando gente en una fiesta Otros ejemplos
Algunos Ejemplos:Ecuaciones de Recurrencia :
14
Cálculo de la Eficiencia de un Algoritmo: Determinación de número de ops según
modelo RAM Análisis Asintótico del Peor caso
Determinación Orden de Magnitud del número de ops en el peor caso.
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
15
En base a Modelo RAM y AAPC se definen los
sgtes. órdenes de mágnitud:
f(n) = O(g(n)) c > 0 tal que f(n) cg(n) n N0
f(n) = (g(n)) c > 0 tal que f(n) cg(n) n N0
f(n) = (g(n)) c1 , c2 > 0 tales que
f(n) c1 g(n) y f(n) c2 g(n) n N0
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
16
Análisis de Programas: Cálculo RAM
No Recursivos: Suma de las Partes
Recursivos: Divide & Conquer
T(n) = aT(n/b) + f(n) a1 , b>1 , f dado
Método de Sustitución
Método de Iteración
Master - Método
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
17
Análisis de Programas Recursivos Método de Sustitución : Se “adivina” la solución
y se demuestra por inducción
Método de Iteración : Se convierte la
recurrencia en una sumatoria
Master – Método: Se aplica teorema con 3
casos posibles
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
18
Análisis de Programas Recursivos
Método de Sustitución : Veamos un ejemplo: T(n) = 2T(n/2) + n Cambio de variables Un error común: Cómo hacer un buen guess ??? Otro ejemplo:
T(n) = 2T(n/2) + 1 es O(log(n)) --
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
19
Análisis de Programas Recursivos Método de Iteración:
Veamos un ejemplo: T(n) = 3T(n/4) + n Árboles de reducción:
T(n) = 2T(n/2) + n2
T(n) = T(n/3) + T(2n/3) + n Otros ejemplos:
T(n) = 3T(n/2) + n T(n) = T(n-a) + T(a) + n para a 1 T(n) = T(n) + T((1- )n) + n para 0 < < 1
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
20
Análisis de Programas Recursivos: Teo. Master
Sea a 1, b > 1, constantes. Sea f(n) una función dada
y T(n) una función definida por la fórmula de recursión:
T(n) = aT(n/b) + f(n) n n0 . Entonces:
1) Si f(n) = O(n ) para algún >0 T(n) = (n )
2) Si f(n) = (n ) T(n) = (n log(n))
3) Si f(n) = O(n ) para algún >0 y af(n/b) cf(n)
para c < 1 y n >> 0 T(n) = (f(n))
logb(a)
logb(a)- logb(a)
logb(a)+
logb(a)
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
21
Análisis de Programas RecursivosMaster Método:
Veamos ejemplos: T(n) = 9T(n/3) + n T(n) = 2T(n/3) + 1 T(n) = 3T(n/4) + nlog(n) T(n) = 2T(n/2) + nlog(n)
Otros ejemplos: T(n) = 4T(n/2) + n2 T(n) = 4T(n/2) + n3
Ecuaciones de Recurrencia :Ecs. Recurrencia Divide & Conquer:
Top Related