Unidad 2
Método de la Bisección
Métodos numéricos
Empezar
¿Qué es el método de la Bisección?
Es una forma de resolver ecuaciones no lineales, en el cual nos aproximamos y obtendremos la solución (raíz) de una ecuación de forma iterativa. De esta forma decimos que al aplicar el método de la bisección, estamos aplicando un algoritmo (pasos ordenados, repetitivos).Imagina que tienes una ecuación no lineal como f(x) = 0, donde f(x) es una función que no se puede resolver analíticamente ni por el método gráfico.
Si la función f(x) no está de la forma = 0, deberás reescribirla para que quede de esa forma. Nos centraremos en ecuaciones de una incógnita o variable
Siguiente
¿Cómo funciona? (I)
Se empieza con un intervalo [a, b] donde sabes o presumes que existe una raíz (intervalo azul) de la función f(x) Puedes usar tu conocimiento de la función f(x) o métodos gráficos para encontrar este intervalo; o bien, el enunciado del problema te dirá en qué intervalo empezar a resolverlo por este método.
Next
¿Cómo funciona? (II)
2) Calcula el punto medio del intervalo: c = (a + b) /2
3) Evalúa la función f(c).
- Evaluar significa sustituir el valor c en la función y anotar el resultado.
4) Si f(c) = 0, o un valor muy aproximado ¡has encontrado la raíz!
De lo contrario, continúa con los siguientes pasos:
Next
¿Cómo funciona? (III)
4.1) Si f(c) * f(a) < 0, la raíz está en la mitad izquierda del intervalo [a, c] y obtenemos el intervalo verde. Redefine b como c y repite los pasos 2 a 4. 4.2) Si f(c) * f(b) < 0, la raíz está en la mitad derecha del intervalo [c, b]. Redefine a como c y repite los pasos 2 a 4.
De esta forma obtenemos el intervalo verde, 5) La repetición de estos pasos (aplicar el algoritmo o método de la Bisección) te dejará con intervalos cada vez más pequeños que tendrán “encerrada” la solución hasta que llegará un punto que obtendrás el valor que buscas (el que hace que f(x)=0 (intervalo rojo)
Next
Ejemplo
Resolver por el método de Bisección x² + 7x + 5 = 0 Utiliza el intervalo (-1,1) para empezar a aplicar el algoritmo.
Next
Solución manual
En este caso, te recomendamos construir una tabla donde anotas el número de paso o iteración que llevas; los valores a y b (límites que nos dan), el valor “c” (la mitad del intervalo) f(c), f(a) y f(b); f(c)*f(a) y f(c) * (f(b) de acuerdo con los pasos anteriores. Haz clic en cada elemento interactivo
Next
Solución con programación
Como ves, hacer estos pasos de forma manual, o incluso en Excel, genera una tabla muy grande y es muy engorroso de hacer. Sin embargo, este método numérico es perfecto para estudiantes de programación, ya que es un algoritmo fácil de llevar a un pseudocódigo y a un código en un lenguaje de programación.
Next
Mira cómo es una solución programada con Python
from typing import Callable, Tuple
def bisection(f: Callable, a: float, b: float, xtol=0.001, maxiter=100) -> Tuple[float, int]:
if f(b) * f(a) > 0:
raise ValueError('No existe raíz en el intervalo dado')
nit = 0
while nit <= maxiter:
nit += 1
c = (a + b) / 2
if abs(f(c)) <= xtol:
return c, nit
elif f(c) * f(a) < 0:
b = c
else:
a = c
raise Exception("El número máximo de iteraciones permitidas ha sido excedido.")
Next
Solución con Python
No te preocupes, en esta asignatura no evaluaremos programación y es una habilidad que aprenderás más adelante en tu TSU. Con el código anterior, hemos demostrado que utilizando lenguajes de programación este algoritmo se implementa en pocas líneas y es muy fácil de realizar, permitiendo resolver problemas complejos de forma fácil y eficiente
Next
Relación con el Error Relativo
Este método tiene la particularidad que puede tener muchas iteraciones hasta que lleguemos a una respuesta; para ello, podemos decidir parar hasta llegar a un error relativo porcentual deseado, para no hacer que el proceso sea muy largo (en el caso de la programación, te interesa que tus programas no tarden mucho en ejecutar - cargará más rápido para el usuario)
Next
GeoGebra para método de la bisección
Te invitamos a practicar todos estos conceptos con una herramienta. Como buen informático, nos interesa comprender e interpretar el resultado que se nos brinda, más allá que saber hacerlo en papel. Esta vez probaremos la herramienta GeoGebra (gracias al script de Juan Pablo Serrano). Haz clic en el enlace siguiente:
Next
GeoGebra para método de la bisección
Siguiente
GeoGebra para método de la bisección
Al lado derecho del gráfico, la herramienta genera la tabla utilizada para el cálculo de valores de cada iteración y en la última iteración, encontraremos nuestra solución:
La respuesta es x=-0.80743
Siguiente
Recuerda
Una ecuación polinómica de grado n tiene, a lo sumo, n soluciones distintas. Es decir, una ecuación de grado 3, tendrá como mucho 3 soluciones, una de grado 7, tendrá como mucho 7 soluciones. Con el método de la bisección, nos quedamos con una solución.
Siguiente
Has llegado al final de la lección
Temario Semana 2 / Unidad 2 / MEN (Método de Bisección)
Secretaría de Innova
Created on February 12, 2024
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Smart Quiz
View
Essential Quiz
View
Practical Quiz
View
Akihabara Quiz
View
Christmas Spirit Test
View
Piñata Challenge
View
Math Calculations
Explore all templates
Transcript
Unidad 2
Método de la Bisección
Métodos numéricos
Empezar
¿Qué es el método de la Bisección?
Es una forma de resolver ecuaciones no lineales, en el cual nos aproximamos y obtendremos la solución (raíz) de una ecuación de forma iterativa. De esta forma decimos que al aplicar el método de la bisección, estamos aplicando un algoritmo (pasos ordenados, repetitivos).Imagina que tienes una ecuación no lineal como f(x) = 0, donde f(x) es una función que no se puede resolver analíticamente ni por el método gráfico. Si la función f(x) no está de la forma = 0, deberás reescribirla para que quede de esa forma. Nos centraremos en ecuaciones de una incógnita o variable
Siguiente
¿Cómo funciona? (I)
Se empieza con un intervalo [a, b] donde sabes o presumes que existe una raíz (intervalo azul) de la función f(x) Puedes usar tu conocimiento de la función f(x) o métodos gráficos para encontrar este intervalo; o bien, el enunciado del problema te dirá en qué intervalo empezar a resolverlo por este método.
Next
¿Cómo funciona? (II)
2) Calcula el punto medio del intervalo: c = (a + b) /2 3) Evalúa la función f(c).
- Evaluar significa sustituir el valor c en la función y anotar el resultado.
4) Si f(c) = 0, o un valor muy aproximado ¡has encontrado la raíz! De lo contrario, continúa con los siguientes pasos:Next
¿Cómo funciona? (III)
4.1) Si f(c) * f(a) < 0, la raíz está en la mitad izquierda del intervalo [a, c] y obtenemos el intervalo verde. Redefine b como c y repite los pasos 2 a 4. 4.2) Si f(c) * f(b) < 0, la raíz está en la mitad derecha del intervalo [c, b]. Redefine a como c y repite los pasos 2 a 4. De esta forma obtenemos el intervalo verde, 5) La repetición de estos pasos (aplicar el algoritmo o método de la Bisección) te dejará con intervalos cada vez más pequeños que tendrán “encerrada” la solución hasta que llegará un punto que obtendrás el valor que buscas (el que hace que f(x)=0 (intervalo rojo)
Next
Ejemplo
Resolver por el método de Bisección x² + 7x + 5 = 0 Utiliza el intervalo (-1,1) para empezar a aplicar el algoritmo.
Next
Solución manual
En este caso, te recomendamos construir una tabla donde anotas el número de paso o iteración que llevas; los valores a y b (límites que nos dan), el valor “c” (la mitad del intervalo) f(c), f(a) y f(b); f(c)*f(a) y f(c) * (f(b) de acuerdo con los pasos anteriores. Haz clic en cada elemento interactivo
Next
Solución con programación
Como ves, hacer estos pasos de forma manual, o incluso en Excel, genera una tabla muy grande y es muy engorroso de hacer. Sin embargo, este método numérico es perfecto para estudiantes de programación, ya que es un algoritmo fácil de llevar a un pseudocódigo y a un código en un lenguaje de programación.
Next
Mira cómo es una solución programada con Python
from typing import Callable, Tuple def bisection(f: Callable, a: float, b: float, xtol=0.001, maxiter=100) -> Tuple[float, int]: if f(b) * f(a) > 0: raise ValueError('No existe raíz en el intervalo dado') nit = 0 while nit <= maxiter: nit += 1 c = (a + b) / 2 if abs(f(c)) <= xtol: return c, nit elif f(c) * f(a) < 0: b = c else: a = c raise Exception("El número máximo de iteraciones permitidas ha sido excedido.")
Next
Solución con Python
No te preocupes, en esta asignatura no evaluaremos programación y es una habilidad que aprenderás más adelante en tu TSU. Con el código anterior, hemos demostrado que utilizando lenguajes de programación este algoritmo se implementa en pocas líneas y es muy fácil de realizar, permitiendo resolver problemas complejos de forma fácil y eficiente
Next
Relación con el Error Relativo
Este método tiene la particularidad que puede tener muchas iteraciones hasta que lleguemos a una respuesta; para ello, podemos decidir parar hasta llegar a un error relativo porcentual deseado, para no hacer que el proceso sea muy largo (en el caso de la programación, te interesa que tus programas no tarden mucho en ejecutar - cargará más rápido para el usuario)
Next
GeoGebra para método de la bisección
Te invitamos a practicar todos estos conceptos con una herramienta. Como buen informático, nos interesa comprender e interpretar el resultado que se nos brinda, más allá que saber hacerlo en papel. Esta vez probaremos la herramienta GeoGebra (gracias al script de Juan Pablo Serrano). Haz clic en el enlace siguiente:
Next
GeoGebra para método de la bisección
Siguiente
GeoGebra para método de la bisección
Al lado derecho del gráfico, la herramienta genera la tabla utilizada para el cálculo de valores de cada iteración y en la última iteración, encontraremos nuestra solución:
La respuesta es x=-0.80743
Siguiente
Recuerda
Una ecuación polinómica de grado n tiene, a lo sumo, n soluciones distintas. Es decir, una ecuación de grado 3, tendrá como mucho 3 soluciones, una de grado 7, tendrá como mucho 7 soluciones. Con el método de la bisección, nos quedamos con una solución.
Siguiente
Has llegado al final de la lección