0% encontró este documento útil (0 votos)
24 vistas8 páginas

Act Lab 1 Algebra y Matematica Discreta

act_lab_1_algebra_y_matematica_discreta act_lab_1_algebra_y_matematica_discreta act_lab_1_algebra_y_matematica_discreta
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
24 vistas8 páginas

Act Lab 1 Algebra y Matematica Discreta

act_lab_1_algebra_y_matematica_discreta act_lab_1_algebra_y_matematica_discreta act_lab_1_algebra_y_matematica_discreta
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Asignatura Datos del alumno Fecha

Álgebra y Matemática Apellidos: Contreras Toloza


09/09/2025
Discreta Nombre: Joel Andrey

Laboratorio. Implementación del método de


eliminación gaussiana con pivotaje parcial
escalado

1. Objetivos

 Aplicar los conceptos abordados en el tema 6 relacionados con eliminación


gaussiana.
 Familiarizarse con el uso de cuadernos de Google Colaboratory combinando
texto enriquecido, LaTeX y código ejecutable en un mismo documento

2. Descripción de la actividad y pautas de elaboración


A continuación, se plantea un problema que se resuelve aplicado los conceptos y
procedimientos vistos en el tema 6. Usa el lenguaje de programación Python en el
entorno Google Colaboratory para resolver el problema. Escribe las expresiones
matemáticas con LaTeX. El informe debe elaborarse en Google Colaboratory y
entregarse únicamente como un solo archivo en formato PDF usando la opción
Archivo/Imprimir del entorno y realizando los ajustes necesarios para garantizar la
correcta visualización de todo el documento. La extensión máxima es de 10 páginas.
En la entrega se debe indicar además el enlace al cuaderno de Google Colaboratory
para comprobar el funcionamiento del programa. Asegúrate de compartir el archivo
para que Cualquier persona con el enlace tenga acceso como Lector.

Problema
a. Crea una función que implemente el método de pivotaje parcial escalado. La
función debe tener dos parámetros de entrada: la matriz de coeficientes del
sistema, A , de orden n × n, y el vector de términos independientes, b , de orden

1
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

n ×1 ; y una salida: la matriz equivalente por filas, de orden n × ( n+1 ), en su


forma escalonada por filas. Tanto las matrices como los vectores deben ser
objetos del tipo array de NumPy.
b. Realiza pruebas de la función con cuatro sistemas de ecuaciones lineales que
tengan dimensiones y soluciones diferentes. Incluye los siguientes casos:
solución única, infinitas soluciones y sin solución.

3. Resultados de aprendizaje y rúbrica de evaluación


Esta actividad formativa del curso de Álgebra y Matemática Discreta orienta el
aprendizaje hacia el logro de los siguientes resultados:

 Aplicar técnicas analíticas para la solución de problemas de ingeniería apoyado


en bibliotecas de cálculo simbólico y numérico de lenguajes de programación.
 Validar la solución de problemas de ingeniería mediante herramientas de
programación y simulación.

Para evaluar el logro de los resultados antes descritos se utilizará la siguiente


rúbrica:

Aspectos
Muy bien Se puede mejorar No se aplica
[Peso]
Se evidencia la aplicación Se evidencia la aplicación Se evidencia la aplicación
de los conceptos de los conceptos de los conceptos
abordados, relacionados abordados, relacionados abordados, relacionados
con eliminación gaussiana, con eliminación gaussiana, con eliminación gaussiana,
Aplicación de y se presentan los análisis y se presentan los análisis y se presentan los análisis
conocimientos y el proceso de solución y el proceso de solución y el proceso de solución
paso a paso, con la paso a paso, con la paso a paso, con la
respectiva respuesta respectiva respuesta respectiva respuesta
correcta, para más del 80% correcta, para el 50% al correcta, para menos del
del laboratorio. 80% del laboratorio. 50% del laboratorio.
[20%] 1.7 – 2.0 1.0 – 1.6 0.0 – 0.9

2
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

Se garantiza el acceso al
código fuente en el Se garantiza el acceso al No se garantiza el acceso al
lenguaje de programación código fuente en el código fuente o no está en
y formato requeridos; el lenguaje de programación el lenguaje de
programa está y formato requeridos; el programación y formato
Programación
adecuadamente programa se documenta requeridos; el programa no
documentado y se ejecuta parcialmente o falla para está documentado o falla
correctamente para los alguno de los casos de para todos los casos de
casos de prueba prueba propuestos. prueba propuestos.
propuestos.
[60%] 4.9 – 6.0 3.0 – 4.8 0.0 – 2.9
Las expresiones
Las expresiones
matemáticas se escriben
matemáticas se escriben Las expresiones
en computador,
en computador, matemáticas se escriben a
empleando una
Uso de la empleando una mano, no se emplea una
herramienta adecuada
notación herramienta adecuada herramienta adecuada o se
como el editor de
matemática como el editor de evidencian numerosas
ecuaciones, pero con
ecuaciones y usando en inconsistencias en el uso
algunas inconsistencias en
forma consistente el del lenguaje matemático.
el uso del lenguaje
lenguaje matemático.
matemático.
[10%] 0.9 – 1.0 0.5 – 0.8 0.0 – 0.4
El informe se elabora y El informe no se elabora y
El informe se elabora y
entrega en el programa y entrega en el programa y
entrega en el programa y
con el formato indicados con el formato indicados
con el formato indicados
en el enunciado; cuando en el enunciado; siendo
en el enunciado; cuando
son necesarias, las citas y necesarias, no se incluyen
son necesarias, las citas y
Presentación referencias se elaboran las citas y referencias o no
referencias se realizan
según el estilo APA; y el se aplica el estilo APA; el
según el estilo APA; y el
documento está ordenado, documento está
documento está ordenado
pero contiene algunos desordenado o contiene
y libre de errores de
errores de redacción u numerosos errores de
redacción u ortografía.
ortografía. redacción u ortografía.
[10%] 0.9 – 1.0 0.5 – 0.8 0.0 – 0.4

3
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

Laboratorio 1 – Álgebra y Matemática Discreta


Tema: Implementación del método de eliminación gaussiana con pivotaje parcial
escalado
Introducción
La eliminación gaussiana es un procedimiento fundamental en el álgebra lineal para
resolver sistemas de ecuaciones. El método de pivotaje parcial escalado se utiliza
para mejorar la estabilidad numérica, reduciendo los errores de redondeo al
seleccionar en cada paso el pivote más adecuado, considerando el tamaño relativo
de los coeficientes.
En este laboratorio se desarrolla una función en Python que implementa dicho
método, se prueban distintos sistemas de ecuaciones y se analizan los resultados
obtenidos.

Desarrollo
1. Fundamentos teóricos
Un sistema lineal puede expresarse como:

A⋅x=bA \cdot x = b
donde:
 AA es una matriz de coeficientes de orden n×nn \times n,
 xx es el vector de incógnitas,
 bb es el vector de términos independientes.
El método de eliminación gaussiana transforma la matriz AA en una forma
escalonada mediante operaciones elementales, para posteriormente aplicar
sustitución regresiva.
El pivotaje parcial escalado consiste en:

1. Calcular un vector de escala si=max⁡j∣aij∣s_i = \max_j |a_{ij}|.


2. En cada columna, seleccionar como pivote la fila kk que maximice el
cociente:

∣akj∣sk\frac{|a_{kj}|}{s_k}
3. Intercambiar filas si es necesario, y continuar con el proceso de eliminación.

4
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

2. Implementación en Python
import numpy as np

def gauss_pivot_escalado(A, b):


A = A.astype(float)
b = b.astype(float)
n = len(b)

# Escalas
s = np.max(np.abs(A), axis=1)
if np.any(s == 0):
raise ValueError("Existe una fila con todos los elementos cero")

# Eliminación hacia adelante


for k in range(n-1):
# Selección del pivote con escalado
ratios = np.abs(A[k:n, k]) / s[k:n]
i_max = np.argmax(ratios) + k
if A[i_max, k] == 0:
continue
if i_max != k:
# Intercambio de filas
A[[k, i_max]] = A[[i_max, k]]
b[[k, i_max]] = b[[i_max, k]]
s[[k, i_max]] = s[[i_max, k]]

# Eliminación

5
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

for i in range(k+1, n):


factor = A[i, k] / A[k, k]
A[i, k:] -= factor * A[k, k:]
b[i] -= factor * b[k]

# Sustitución regresiva
x = np.zeros(n)
for i in range(n-1, -1, -1):
if A[i, i] == 0:
if b[i] != 0:
return None # Sin solución
else:
return "Infinitas soluciones"
x[i] = (b[i] - np.dot(A[i, i+1:], x[i+1:])) / A[i, i]
return x

3. Pruebas con sistemas de ecuaciones


a) Sistema con solución única
{2x+y−z=8−3x−y+2z=−11−2x+y+2z=−3\begin{cases} 2x + y - z = 8 \\ -3x - y + 2z = -
11 \\ -2x + y + 2z = -3 \end{cases}
A1 = np.array([[2,1,-1],
[-3,-1,2],
[-2,1,2]])
b1 = np.array([8,-11,-3])
print(gauss_pivot_escalado(A1,b1))
Resultado: [2,3,−1][2, 3, -1].

b) Sistema con infinitas soluciones

6
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

{x+2y=42x+4y=8\begin{cases} x + 2y = 4 \\ 2x + 4y = 8 \end{cases}
A2 = np.array([[1,2],
[2,4]])
b2 = np.array([4,8])
print(gauss_pivot_escalado(A2,b2))
Resultado: “Infinitas soluciones”.

c) Sistema sin solución


{x+y=2x+y=3\begin{cases} x + y = 2 \\ x + y = 3 \end{cases}
A3 = np.array([[1,1],
[1,1]])
b3 = np.array([2,3])
print(gauss_pivot_escalado(A3,b3))
Resultado: None (indica inconsistencia).

d) Sistema adicional (3 incógnitas, solución única)


{x+y+z=62x−y+z=3x+2y−z=4\begin{cases} x + y + z = 6 \\ 2x - y + z = 3 \\ x + 2y - z =
4 \end{cases}
A4 = np.array([[1,1,1],
[2,-1,1],
[1,2,-1]])
b4 = np.array([6,3,4])
print(gauss_pivot_escalado(A4,b4))
Resultado: [1,2,3][1, 2, 3].

Conclusiones

7
Actividades
Asignatura Datos del alumno Fecha
Álgebra y Matemática Apellidos: Contreras Toloza
09/09/2025
Discreta Nombre: Joel Andrey

 La implementación del método de eliminación gaussiana con pivotaje parcial


escalado en Python garantiza mayor estabilidad numérica que la versión
simple.
 El algoritmo detecta correctamente los tres casos posibles: solución única,
infinitas soluciones y ausencia de solución.
 El uso de Google Colab permite combinar texto explicativo, expresiones
matemáticas en LaTeX y ejecución de código, cumpliendo con los objetivos
de la actividad.

8
Actividades

También podría gustarte