Integrantes del equipo:
usuario | Rol | Persona | Actividad |
---|---|---|---|
jreyesgar93 | Project Manager | José | Documentación en Sphinx/Docker |
yalidt | Perfilmiento/Reimplementación | Yalidt | Perfilamiento del paquete/Reimplementación |
yefovar | Reimplementación Unit Test | Yedam | Pruebas Unitaria para verificar que el algoritmo siga funcionando con los cambios |
mfrubio | Perfilmiento/Reimplementación | Fernanda | Perfilamiento del paquete/Reimplementación |
Implementamos un paquete en Python que resuelve problemas de maximización de una función objetivo lineal con restricciones:
sujeto a:
con:
Usamos sphynx para documentar nuestro paquete.
En particular, se indicó que existen imágenes de docker que ayudan a utilizar el paquete (sin y con Kale) tal como se muestra en la siguiente imagen.
Para consultar ejemplos de implementaciones usa el boton de binder y el notebook para realizar el testing es reporte_equipo_3_parte_2_practica_2.ipynb
Para hacer más eficiente los métodos del paquete realizamos perfilamiento en instancias de AWS. Incluimos características de la instancia en la que lo realizamos.
Para revisar la documentacion se puede accesar al siguiente reporte.
Para revisar la documentacion con cython accesar al siguiente reporte.
Nota. Las reimplementaciones derivadas del perfilamiento del tiempo se ejecutaron en el repositorio anterior (práctica 1 segunda parte), posteriormente la imágen de docker se actualizó para que tuviera los cambios realizados.
Para revisar la documentacion se puede accesar al siguiente reporte.
Para revisar la documentacion con cython se puede accesar al siguiente reporte.
Una vez realizado el perfilamiento evaluamos cómo eficientiar nuestro método:
- Uso de compilación a C para secciones de su código.
Para revisar la documentacion se puedea ccesar al siguiente reporte.
La documentación del paquete se encuentra en la siguiente liga.
Características de la instancia
Se utilizó la misma instancia que utilizamos para el desarrollo de kale y minikube, la AMI opt2-aws-educate-17-03-2021 con m5.2xlarge, la cual tiene 8 CPU's.
Se anexa evidencia de trabajo y solución del problema a través de cómputo en la nube.