A partir de los archivos que te he adjuntado, el cual contiene el código de una app web que permite a los usuarios analizar su consumo eléctrico tras la pandemia. y contiene lo siguiente: Estructura de la aplicación La aplicación tiene un flujo de 4 páginas: Página de inicio (landing.html) Formulario de entrada (form.html) Predicción de consumo (prediction.html) Visualización de resultados y recomendaciones (visualization.html) Donde, los archivos proporcionados son: landing.html: Página de inicio form.html: Formulario para ingresar datos prediction.html: Muestra predicciones de consumo Muestra un dashboard con las visualizaciones y recomendaciones main.py: Backend con FastAPI utils.py: Funciones de utilidad para cálculos main.js: JavaScript para el formulario resultados.js: JavaScript para la página de resultados visualization.js: JavaScript para las visualizaciones styles.css: Estilos CSS de la app, Quiero que respondas de forma muy detallada y realices, utilizando un tono natural lo siguiente a partir de la propuesta tecnica realizada (también adjuntada): 1.1. Contexto y motivación del proyecto 1.2. Objetivos de la aplicación 1.3. Alcance y limitaciones 2. Descripción general de la aplicación 2.1. Propósito y funcionalidad principal 2.2. Público objetivo 2.3. Flujo general de la aplicación 3. Tecnologías utilizadas y su propósito
Arquitectura del sistema 4.1. Modelo cliente-servidor 4.2. Componentes principales del sistema 4.3. Diagrama de arquitectura
Descripción de las interfaces y secciones de la aplicación 5.1. Página de inicio y formulario de ingreso de datos 5.2. Predicción de consumo futuro 5.3. Visualización de consumo pre y post pandemia 5.4. Recomendaciones personalizadas
Diccionario de datos de la aplicación 6.1. Estructura de la base de datos 6.2. Descripción de cada campo y su propósito (diccionario de dato)
Procesamiento de datos y modelos de predicción 7.1. Captura de los datos 7.2. Implementación del modelo de regresión lineal 7.3. Variables consideradas en el modelo 7.4. Evaluación y precisión del modelo
Generación de visualizaciones y recomendaciones 8.1. Herramientas utilizadas para la visualización 8.2. Tipos de gráficos y su interpretación 8.3. ¿Cómo se manejan las recomendaciones?
Pruebas y validación del sistema 9.1. Pruebas funcionales de la aplicación 9.2. Evaluación del modelo de predicción ¿Cómo saber que es útil el calculo elegido? 9.3. Resultados y mejoras identificadas
Un poco de información sobre dicha app:
Contexto y motivación de la propuesta técnica
Como bien hemos visto, la pandemia de COVID-19 transformó significativamente los hábitos de consumo eléctrico en nuestros hogares, ya sea, como bien se ha mencionado, debido al aumento del trabajo remoto, el incremento del tiempo en casa, el uso intensivo de dispositivos electrónicos, entre muchos otros factores que también podrían influir. Ante estos cambios, surge la necesidad de analizar de manera precisa el impacto de estos factores en el consumo eléctrico y ofrecer herramientas que permitan optimizar su uso. En este sentido, la presente propuesta técnica expone el análisis y diseño de una aplicación web que permite a los usuarios evaluar su consumo eléctrico antes, durante y después de la pandemia, proporcionando predicciones basadas en modelos estadísticos y recomendaciones personalizadas. ¿Para quién es valiosa esta propuesta? Esta propuesta está diseñada principalmente para beneficiar a EDEESTE: Aunque tenemos en consideración que su operación diaria no depende directamente de este tipo de sistema, la herramienta puede representar un recurso valioso para la planificación eléctrica estratégica, ya que les permite visualizar cómo ha evolucionado el consumo eléctrico en esta etapa postpandemia, identificando patrones y tendencias que pueden ser utilizados para anticipar la demanda, diseñar campañas de concientización más efectivas y mejorar la asignación de recursos. Desde la perspectiva de los consumidores: El sistema les brinda una visión clara de cómo ha cambiado su consumo eléctrico en el tiempo. Gracias a ello, pueden comparar su comportamiento con tendencias generales, identificar posibles excesos y recibir recomendaciones personalizadas para optimizar su consumo eléctrico, contribuyendo no solo a su economía personal, sino también a una mayor conciencia y eficiencia eléctrica.
Arquitectura del sistema -Componentes:
La solución propuesta implementa una arquitectura cliente-servidor compuesta por tres componentes clave que trabajan de forma integrada, entre los cuales se encuentra un backend desarrollado con FastAPI, un frontend basado en HTML, CSS y JavaScript, y un módulo de predicción que utiliza regresión lineal múltiple para estimar el consumo eléctrico futuro. Para lograr un funcionamiento coherente y eficiente, el sistema se estructura en tres elementos fundamentales, diseñados para ofrecer una experiencia accesible, intuitiva y útil para el usuario: En primer lugar, contamos con un portal web intuitivo, que permite a los usuarios ingresar información básica sobre su consumo eléctrico y sus hábitos diarios. Esta interfaz ha sido diseñada con un enfoque centrado en la experiencia de usuario, lo que garantiza que cualquier persona, independientemente de su nivel técnico, pueda utilizarla sin tantas dificultades. En segundo lugar, se integra un motor de análisis predictivo, encargado de procesar la información ingresada por los usuarios. Este motor compara los datos con patrones identificados previamente a través de nuestros estudios e investigaciones, donde, Gracias a la aplicación de técnicas estadísticas como la regresión lineal múltiple y lo antes mencionado, se logra una estimación lo más acercada a la realidad posible para generar predicciones personalizadas sobre el comportamiento futuro de la demanda eléctrica. Finalmente, con base en estos datos, se generan análisis detallados mediante visualizaciones interactivas/dinámicas, que permite los usuarios comprender cómo ha evolucionado su consumo y cómo diferentes factores (como el teletrabajo o nuevos electrodomésticos) influyen en su factura eléctrica, así como tomar decisiones informadas para optimizar según corresponda, la eficiencia eléctrica en sus hogares o establecimientos. Por tanto, en general, esta solución no solo busca proporcionar un análisis retrospectivo, sino también servir como una herramienta predictiva que anticipe tendencias futuras y fomente el ahorro eléctrico.
Ten en cuenta no ser muy breve en ciertas partes que se necesita ser detallados, ni hacer alusión al código sin que sea necesario.
La pandemia de COVID-19 transformó significativamente los hábitos de consumo eléctrico en los hogares y empresas. El aumento del trabajo remoto, el incremento del tiempo en casa, y el uso intensivo de dispositivos electrónicos son solo algunos de los factores que han influido en estos cambios. Esta nueva realidad ha creado la necesidad de analizar con precisión el impacto de estos factores en el consumo eléctrico y proporcionar herramientas que permitan a los usuarios optimizar su uso.
El sistema desarrollado responde a esta necesidad, ofreciendo una plataforma que permite a los usuarios evaluar su consumo eléctrico antes, durante y después de la pandemia, proporcionando predicciones basadas en modelos estadísticos y recomendaciones personalizadas para optimizar el consumo.
Alcance:
Limitaciones:
El sistema de Análisis del Consumo Eléctrico Postpandemia es una aplicación web diseñada para ayudar a los usuarios a entender, analizar y optimizar su consumo eléctrico en el contexto de los cambios provocados por la pandemia. La aplicación permite a los usuarios ingresar datos sobre su consumo eléctrico y hábitos de uso, procesa esta información mediante modelos estadísticos, y genera visualizaciones y recomendaciones personalizadas.
La funcionalidad principal se centra en tres aspectos clave:
La aplicación está diseñada para beneficiar principalmente a dos grupos:
EDEESTE (Empresa Distribuidora de Electricidad del Este):
Consumidores (residenciales, comerciales e industriales):
La aplicación sigue un flujo secuencial de 4 páginas principales:
Página de inicio (landing.html):
Formulario de entrada (form.html):
Predicción de consumo (prediction.html):
Visualización de resultados (visualization.html):
Este flujo guía al usuario desde la entrada de datos hasta la obtención de insights accionables, facilitando la comprensión y toma de decisiones sobre su consumo eléctrico.
La aplicación implementa una arquitectura moderna utilizando diversas tecnologías para el frontend, backend y procesamiento de datos:
Frontend:
Backend:
Almacenamiento de datos:
Despliegue y entorno:
Cada tecnología fue seleccionada específicamente para cumplir con los requisitos funcionales y no funcionales del sistema, priorizando el rendimiento, la experiencia de usuario y la facilidad de mantenimiento. La combinación de estas tecnologías permite crear una aplicación web moderna, interactiva y eficiente que cumple con los objetivos establecidos.
La aplicación implementa una arquitectura cliente-servidor clásica, donde:
La comunicación entre cliente y servidor se realiza mediante peticiones HTTP/HTTPS, utilizando principalmente:
El estado de la aplicación se mantiene principalmente en el cliente mediante sessionStorage, lo que permite una navegación fluida entre las diferentes páginas sin perder los datos ingresados o los resultados obtenidos.
La solución se estructura en tres componentes clave que trabajan de forma integrada:
Portal Web Intuitivo (Frontend):
Motor de Análisis Predictivo (Backend):
Módulo de Visualización y Recomendaciones:
Estos componentes interactúan de manera coordinada para proporcionar una experiencia completa, desde la captura de datos hasta la generación de insights accionables para el usuario.
Página de inicio (landing.html): La página de inicio presenta una interfaz limpia y atractiva que introduce al usuario a la aplicación. Incluye:
Formulario de entrada (form.html): El formulario de entrada está estructurado en secciones claramente diferenciadas para facilitar la captura de datos:
Información del Usuario:
Hábitos y Consumo:
Detalles del Espacio y Equipos:
El formulario implementa validación del lado del cliente para garantizar que los datos ingresados sean correctos antes de enviarlos al servidor. Además, incluye elementos de ayuda como descripciones breves y mensajes informativos para guiar al usuario durante el proceso de entrada de datos.
La página de predicción (prediction.html) presenta los resultados iniciales del análisis de forma clara y concisa:
Tarjetas de consumo que muestran:
Análisis textual que explica:
Navegación intuitiva con botones para:
Esta página sirve como puente entre la entrada de datos y el análisis detallado, proporcionando una visión rápida pero informativa de la situación de consumo del usuario.
La página de visualización (visualization.html) implementa un dashboard interactivo con múltiples elementos visuales:
Controles del dashboard que permiten:
Resumen de consumo que muestra:
Gráfico de comparación (tipo barra) que visualiza:
Gráfico de distribución (tipo pie) que muestra:
Gráfico de predicción (tipo línea) que presenta:
Estos elementos visuales están diseñados para ser intuitivos, informativos y estéticamente agradables, facilitando la comprensión de patrones complejos de consumo eléctrico.
El sistema de recomendaciones personalizadas es un componente clave de la aplicación, presentado en la página de visualización:
Sección de recomendaciones que incluye:
Recomendaciones específicas por electrodoméstico que se actualizan dinámicamente cuando:
Estimación de ahorro potencial que muestra:
Las recomendaciones están redactadas en un lenguaje claro y accionable, enfocándose en medidas prácticas que el usuario puede implementar inmediatamente. Además, se adaptan al contexto local, considerando factores como el clima y las prácticas habituales en la región.
La aplicación no utiliza una base de datos persistente tradicional, sino que implementa un enfoque basado en:
Almacenamiento temporal en el cliente mediante sessionStorage:
formData
: Almacena los datos ingresados por el usuario en el formulario.resultData
: Almacena los resultados del análisis y predicciones.Modelos de datos definidos con Pydantic en el backend:
EntradaConsumoElectrico
: Valida y estructura los datos recibidos del formulario.ResultadoPrediccion
: Define la estructura de los resultados devueltos al cliente.Este enfoque permite una arquitectura ligera sin dependencia de sistemas de bases de datos externos, manteniendo la integridad de los datos mediante validación tanto en el cliente como en el servidor.
Modelo EntradaConsumoElectrico:
Campo | Tipo | Descripción | Validación |
---|---|---|---|
tipo_usuario | string | Categoría del usuario (residencial, comercial, industrial) | Requerido |
cambios_habitos | array[string] | Cambios en hábitos postpandemia | Requerido |
tarifa_electrica | string | Nivel de tarifa aplicada (baja, media, alta) | Requerido |
aire_acondicionado | boolean | Uso de aire acondicionado | Default: false |
refrigerador | boolean | Uso de refrigerador | Default: false |
lavadora | boolean | Uso de lavadora | Default: false |
televisor | boolean | Uso de televisor | Default: false |
calentador_agua | boolean | Uso de calentador de agua | Default: false |
iluminacion | boolean | Uso de iluminación | Default: false |
microondas | boolean | Uso de microondas | Default: false |
computadora | boolean | Uso de computadora | Default: false |
sistemas_computo | boolean | Uso de sistemas de cómputo | Default: false |
plancha | boolean | Uso de plancha | Default: false |
ventilador | boolean | Uso de ventilador | Default: false |
impresoras | boolean | Uso de impresoras | Default: false |
ascensores | boolean | Uso de ascensores | Default: false |
seguridad | boolean | Uso de sistemas de seguridad | Default: false |
pequenos_electrodomesticos | boolean | Uso de pequeños electrodomésticos | Default: false |
climatizacion | boolean | Uso de climatización | Default: false |
compresores | boolean | Uso de compresores de aire | Default: false |
bombas | boolean | Uso de bombas | Default: false |
refrigeracion_industrial | boolean | Uso de refrigeración industrial | Default: false |
otros_electrodomesticos | boolean | Otros electrodomésticos no listados | Default: false |
horas_uso_diario | float | Horas promedio de uso diario | 0-24 horas |
consumo_pre_pandemia | float | Consumo mensual antes de la pandemia (kWh) | > 0 |
consumo_post_pandemia | float | Consumo mensual después de la pandemia (kWh) | > 0 |
cantidad_personas | integer | Cantidad de personas en el hogar o empresa | > 0 |
espacios_alto_consumo | integer | Número de habitaciones con consumo alto | ≥ 0 |
horas_trafico | float | Horas de tráfico alto en el hogar/empresa | 0-24 horas |
Modelo ResultadoPrediccion:
Campo | Tipo | Descripción |
---|---|---|
variacion_consumo | float | Variación porcentual entre consumo pre y post pandemia |
consumo_futuro | float | Predicción de consumo futuro en kWh |
recomendaciones | array[string] | Lista de recomendaciones personalizadas |
distribucion_electrodomesticos | object | Distribución del consumo por electrodoméstico |
tendencia_consumo | array[float] | Proyección de consumo para períodos futuros |
Estos modelos de datos garantizan la consistencia y validez de la información procesada por la aplicación, facilitando el mantenimiento y la extensibilidad del sistema.
El proceso de captura de datos se realiza a través del formulario interactivo (form.html) que implementa:
Validación en tiempo real:
Organización estructurada:
Procesamiento del formulario:
Validación en el servidor:
Este enfoque de doble validación (cliente y servidor) garantiza la integridad de los datos y mejora la experiencia del usuario al proporcionar retroalimentación inmediata sobre posibles errores.
El sistema implementa un modelo de regresión lineal múltiple adaptado específicamente para la predicción de consumo eléctrico. La implementación se encuentra en la función calcular_prediccion_consumo
en el archivo utils.py:
Enfoque metodológico:
Proceso de cálculo:
Ventajas del modelo:
El modelo, aunque no utiliza bibliotecas estadísticas avanzadas explícitamente, implementa los principios fundamentales de la regresión lineal múltiple de manera personalizada para el contexto específico del consumo eléctrico.
El modelo de predicción incorpora múltiples variables que influyen en el consumo eléctrico, agrupadas en seis factores principales:
Factor por Tipo de Usuario:
Factor por Cambios en Hábitos:
Factor por Electrodomésticos:
Factor por Horas de Uso Diario:
Factor por Ocupación (cantidad de personas):
Factor por Espacios de Alto Consumo:
Adicionalmente, el modelo considera:
Esta combinación de variables permite capturar la complejidad del consumo eléctrico desde múltiples dimensiones, mejorando la precisión de las predicciones.
La evaluación del modelo se realiza mediante varios enfoques complementarios:
Validación interna:
Factores de normalización:
Limitaciones reconocidas:
Mejoras potenciales:
La precisión del modelo, aunque no se cuantifica explícitamente con métricas como RMSE o R², se optimiza mediante la combinación de conocimiento del dominio (pesos específicos para electrodomésticos) y la incorporación de la tendencia histórica del usuario, lo que permite predicciones razonablemente precisas para el propósito de la aplicación.
La aplicación utiliza Chart.js como biblioteca principal para la generación de visualizaciones interactivas. Esta elección se basa en varias ventajas clave:
La implementación de las visualizaciones se realiza mediante JavaScript en el archivo visualization.js, que se encarga de:
La aplicación implementa tres tipos principales de gráficos, cada uno diseñado para comunicar aspectos específicos del consumo eléctrico:
Gráfico de Barras (Comparación Pre vs Post Pandemia):
Gráfico Circular (Distribución por Electrodoméstico):
Gráfico de Línea (Predicción de Consumo Futuro):
Estos gráficos trabajan en conjunto para proporcionar una visión completa del consumo eléctrico desde diferentes ángulos: histórico (comparación), actual (distribución) y futuro (predicción), facilitando una comprensión integral de los patrones de consumo.
El sistema de recomendaciones implementa un enfoque contextual y personalizado:
Generación de recomendaciones base:
generarRecomendacionesPersonalizadas()
analiza el perfil completo del usuario.Recomendaciones específicas por electrodoméstico:
actualizarRecomendaciones()
.Estimación de ahorro potencial:
Presentación y actualización dinámica:
Este enfoque garantiza que las recomendaciones sean relevantes, prácticas y adaptadas a las circunstancias específicas del usuario, aumentando la probabilidad de implementación y el consiguiente ahorro energético.
Las pruebas funcionales de la aplicación se enfocan en verificar que todas las características y flujos de trabajo funcionen correctamente desde la perspectiva del usuario:
Pruebas de navegación:
Pruebas de formulario:
Pruebas de procesamiento de datos:
Pruebas de visualización:
Pruebas de exportación:
Estas pruebas se realizan de manera manual y sistemática, siguiendo escenarios de uso predefinidos que cubren tanto los flujos principales como casos excepcionales.
La evaluación de la utilidad del modelo de predicción se realiza mediante varios criterios complementarios:
Validación conceptual:
Validación empírica:
Validación de utilidad práctica:
Validación de robustez:
La utilidad del cálculo elegido se confirma principalmente por su capacidad para:
Aunque no se implementan métricas formales de evaluación como RMSE o MAE, la validación cualitativa y la consistencia con el conocimiento del dominio respaldan la utilidad del modelo para los propósitos de la aplicación.
Resultados principales:
Mejoras identificadas:
Refinamiento del modelo predictivo:
Ampliación de funcionalidades:
Mejoras en la interfaz de usuario:
Expansión del alcance:
Optimización técnica:
Estas mejoras identificadas proporcionan una hoja de ruta para el desarrollo futuro de la aplicación, permitiendo una evolución continua que aumente su valor para los usuarios y su impacto en la optimización del consumo eléctrico.
debes mantener un lenguaje claro, con unidad, cohesión y fluidez en lo que se dice, recuerda que es un proyecto de grado. También, ten en cuenta que no se están utilizando datos historicos, todo lo realizado en la app se basa y basará en los datos que proporcione el usuario mediante el formulario, no inventes cosas, y basate en lo realizado en la app proporcionada
La pandemia de COVID-19 transformó significativamente los hábitos de consumo eléctrico en los hogares y empresas. El aumento del trabajo remoto, el incremento del tiempo en casa, y el uso intensivo de dispositivos electrónicos son factores que han influido en estos cambios. Esta nueva realidad ha creado la necesidad de analizar con precisión el impacto de estos factores en el consumo eléctrico y proporcionar herramientas que permitan a los usuarios optimizar su uso.
El sistema desarrollado responde a esta necesidad, ofreciendo una plataforma que permite a los usuarios evaluar su consumo eléctrico antes y después de la pandemia, proporcionando predicciones basadas en los datos ingresados y recomendaciones personalizadas para optimizar el consumo.
Alcance:
Limitaciones:
El Sistema de Análisis del Consumo Eléctrico Postpandemia es una aplicación web diseñada para ayudar a los usuarios a entender, analizar y optimizar su consumo eléctrico en el contexto de los cambios provocados por la pandemia. La aplicación permite a los usuarios ingresar datos sobre su consumo eléctrico y hábitos de uso, procesa esta información mediante modelos estadísticos, y genera visualizaciones y recomendaciones personalizadas.
La funcionalidad principal se centra en tres aspectos clave:
La aplicación está diseñada para beneficiar principalmente a dos grupos:
EDEESTE (Empresa Distribuidora de Electricidad del Este):
Consumidores (residenciales, comerciales e industriales):
La aplicación sigue un flujo secuencial de 4 páginas principales:
Página de inicio (landing.html):
Formulario de entrada (form.html):
Predicción de consumo (prediction.html):
Visualización de resultados (visualization.html):
Este flujo guía al usuario desde la entrada de datos hasta la obtención de insights accionables, facilitando la comprensión y toma de decisiones sobre su consumo eléctrico.
La aplicación implementa una arquitectura moderna utilizando diversas tecnologías para el frontend, backend y procesamiento de datos:
Frontend:
Backend:
Almacenamiento de datos:
Despliegue y entorno:
Cada tecnología fue seleccionada específicamente para cumplir con los requisitos funcionales y no funcionales del sistema, priorizando el rendimiento, la experiencia de usuario y la facilidad de mantenimiento.
La aplicación implementa una arquitectura cliente-servidor clásica, donde:
La comunicación entre cliente y servidor se realiza mediante peticiones HTTP/HTTPS, utilizando principalmente:
El estado de la aplicación se mantiene principalmente en el cliente mediante sessionStorage, lo que permite una navegación fluida entre las diferentes páginas sin perder los datos ingresados o los resultados obtenidos.
La solución se estructura en tres componentes clave que trabajan de forma integrada:
Portal Web Intuitivo (Frontend):
Motor de Análisis Predictivo (Backend):
Módulo de Visualización y Recomendaciones:
Estos componentes interactúan de manera coordinada para proporcionar una experiencia completa, desde la captura de datos hasta la generación de insights accionables para el usuario.
Página de inicio (landing.html): La página de inicio presenta una interfaz limpia y atractiva que introduce al usuario a la aplicación. Incluye:
Formulario de entrada (form.html): El formulario de entrada está estructurado en secciones claramente diferenciadas para facilitar la captura de datos:
Información del Usuario:
Hábitos y Consumo:
Detalles del Espacio y Equipos:
El formulario implementa validación del lado del cliente para garantizar que los datos ingresados sean correctos antes de enviarlos al servidor. Además, incluye elementos de ayuda como descripciones breves y mensajes informativos para guiar al usuario durante el proceso de entrada de datos.
La página de predicción (prediction.html) presenta los resultados iniciales del análisis de forma clara y concisa:
Tarjetas de consumo que muestran:
Análisis textual que explica:
Navegación intuitiva con botones para:
Esta página sirve como puente entre la entrada de datos y el análisis detallado, proporcionando una visión rápida pero informativa de la situación de consumo del usuario.
La página de visualización (visualization.html) implementa un dashboard interactivo con múltiples elementos visuales:
Controles del dashboard que permiten:
Resumen de consumo que muestra:
Gráfico de comparación (tipo barra) que visualiza:
Gráfico de distribución (tipo pie) que muestra:
Gráfico de predicción (tipo línea) que presenta:
Estos elementos visuales están diseñados para ser intuitivos, informativos y estéticamente agradables, facilitando la comprensión de patrones complejos de consumo eléctrico.
El sistema de recomendaciones personalizadas es un componente clave de la aplicación, presentado en la página de visualización:
Sección de recomendaciones que incluye:
Recomendaciones específicas por electrodoméstico que se actualizan dinámicamente cuando:
Estimación de ahorro potencial que muestra:
Las recomendaciones están redactadas en un lenguaje claro y accionable, enfocándose en medidas prácticas que el usuario puede implementar inmediatamente. Además, se adaptan al contexto local, considerando factores como el clima y las prácticas habituales en la región.
La aplicación no utiliza una base de datos persistente tradicional, sino que implementa un enfoque basado en:
Almacenamiento temporal en el cliente mediante sessionStorage:
formData
: Almacena los datos ingresados por el usuario en el formulario.resultData
: Almacena los resultados del análisis y predicciones.Modelos de datos definidos con Pydantic en el backend:
EntradaConsumoElectrico
: Valida y estructura los datos recibidos del formulario.ResultadoPrediccion
: Define la estructura de los resultados devueltos al cliente.Este enfoque permite una arquitectura ligera sin dependencia de sistemas de bases de datos externos, manteniendo la integridad de los datos mediante validación tanto en el cliente como en el servidor.
Modelo EntradaConsumoElectrico:
Campo | Tipo | Descripción | Validación |
---|---|---|---|
tipo_usuario | string | Categoría del usuario (residencial, comercial, industrial) | Requerido |
cambios_habitos | array[string] | Cambios en hábitos postpandemia | Requerido |
tarifa_electrica | string | Nivel de tarifa aplicada (baja, media, alta) | Requerido |
aire_acondicionado | boolean | Uso de aire acondicionado | Default: false |
refrigerador | boolean | Uso de refrigerador | Default: false |
lavadora | boolean | Uso de lavadora | Default: false |
televisor | boolean | Uso de televisor | Default: false |
calentador_agua | boolean | Uso de calentador de agua | Default: false |
iluminacion | boolean | Uso de iluminación | Default: false |
microondas | boolean | Uso de microondas | Default: false |
computadora | boolean | Uso de computadora | Default: false |
sistemas_computo | boolean | Uso de sistemas de cómputo | Default: false |
plancha | boolean | Uso de plancha | Default: false |
ventilador | boolean | Uso de ventilador | Default: false |
impresoras | boolean | Uso de impresoras | Default: false |
ascensores | boolean | Uso de ascensores | Default: false |
seguridad | boolean | Uso de sistemas de seguridad | Default: false |
pequenos_electrodomesticos | boolean | Uso de pequeños electrodomésticos | Default: false |
climatizacion | boolean | Uso de climatización | Default: false |
compresores | boolean | Uso de compresores de aire | Default: false |
bombas | boolean | Uso de bombas | Default: false |
refrigeracion_industrial | boolean | Uso de refrigeración industrial | Default: false |
otros_electrodomesticos | boolean | Otros electrodomésticos no listados | Default: false |
horas_uso_diario | float | Horas promedio de uso diario | 0-24 horas |
consumo_pre_pandemia | float | Consumo mensual antes de la pandemia (kWh) | > 0 |
consumo_post_pandemia | float | Consumo mensual después de la pandemia (kWh) | > 0 |
cantidad_personas | integer | Cantidad de personas en el hogar o empresa | > 0 |
espacios_alto_consumo | integer | Número de habitaciones con consumo alto | ≥ 0 |
horas_trafico | float | Horas de tráfico alto en el hogar/empresa | 0-24 horas |
Modelo ResultadoPrediccion:
Campo | Tipo | Descripción |
---|---|---|
variacion_consumo | float | Variación porcentual entre consumo pre y post pandemia |
consumo_futuro | float | Predicción de consumo futuro en kWh |
recomendaciones | array[string] | Lista de recomendaciones personalizadas |
distribucion_electrodomesticos | object | Distribución del consumo por electrodoméstico |
tendencia_consumo | array[float] | Proyección de consumo para períodos futuros |
Estos modelos de datos garantizan la consistencia y validez de la información procesada por la aplicación, facilitando el mantenimiento y la extensibilidad del sistema.
El proceso de captura de datos se realiza a través del formulario interactivo (form.html) que implementa:
Validación en tiempo real:
Organización estructurada:
Procesamiento del formulario:
Validación en el servidor:
Este enfoque de doble validación (cliente y servidor) garantiza la integridad de los datos y mejora la experiencia del usuario al proporcionar retroalimentación inmediata sobre posibles errores.
El sistema implementa un modelo de regresión lineal múltiple adaptado específicamente para la predicción de consumo eléctrico. La implementación se encuentra en la función calcular_prediccion_consumo
en el archivo utils.py:
Enfoque metodológico:
Proceso de cálculo:
Ventajas del modelo:
El modelo implementa los principios fundamentales de la regresión lineal múltiple de manera personalizada para el contexto específico del consumo eléctrico, utilizando exclusivamente los datos proporcionados por el usuario.
El modelo de predicción incorpora múltiples variables que influyen en el consumo eléctrico, agrupadas en seis factores principales:
Factor por Tipo de Usuario:
Factor por Cambios en Hábitos:
Factor por Electrodomésticos:
Factor por Horas de Uso Diario:
Factor por Ocupación (cantidad de personas):
Factor por Espacios de Alto Consumo:
Adicionalmente, el modelo considera la tasa de crecimiento entre el consumo pre y post pandemia proporcionados por el usuario, lo que permite personalizar la predicción según la tendencia específica de cada caso.
La evaluación del modelo se realiza mediante varios enfoques complementarios:
Validación interna:
Factores de normalización:
Limitaciones reconocidas:
Utilidad práctica:
La precisión del modelo se optimiza mediante la combinación de conocimiento del dominio (pesos específicos para electrodomésticos) y la incorporación de la tendencia específica del usuario (diferencia entre consumo pre y post pandemia), lo que permite predicciones razonablemente precisas para el propósito de la aplicación.
La aplicación utiliza Chart.js como biblioteca principal para la generación de visualizaciones interactivas. Esta elección se basa en varias ventajas clave:
La implementación de las visualizaciones se realiza mediante JavaScript en el archivo visualization.js, que se encarga de:
La aplicación implementa tres tipos principales de gráficos, cada uno diseñado para comunicar aspectos específicos del consumo eléctrico:
Gráfico de Barras (Comparación Pre vs Post Pandemia):
Gráfico Circular (Distribución por Electrodoméstico):
Gráfico de Línea (Predicción de Consumo Futuro):
Estos gráficos trabajan en conjunto para proporcionar una visión completa del consumo eléctrico desde diferentes ángulos: histórico (comparación), actual (distribución) y futuro (predicción), facilitando una comprensión integral de los patrones de consumo.
El sistema de recomendaciones implementa un enfoque contextual y personalizado:
Generación de recomendaciones base:
generarRecomendacionesPersonalizadas()
analiza el perfil completo del usuario.Recomendaciones específicas por electrodoméstico:
actualizarRecomendaciones()
.Estimación de ahorro potencial:
Presentación y actualización dinámica:
Este enfoque garantiza que las recomendaciones sean relevantes, prácticas y adaptadas a las circunstancias específicas del usuario, aumentando la probabilidad de implementación y el consiguiente ahorro energético.
Las pruebas funcionales de la aplicación se enfocan en verificar que todas las características y flujos de trabajo funcionen correctamente desde la perspectiva del usuario:
Pruebas de navegación:
Pruebas de formulario:
Pruebas de procesamiento de datos:
Pruebas de visualización:
Pruebas de exportación:
Estas pruebas se realizan de manera manual y sistemática, siguiendo escenarios de uso predefinidos que cubren tanto los flujos principales como casos excepcionales.
La evaluación de la utilidad del modelo de predicción se realiza mediante varios criterios complementarios:
Validación conceptual:
Validación empírica:
Validación de utilidad práctica:
Validación de robustez:
La utilidad del cálculo elegido se confirma principalmente por su capacidad para:
Resultados principales:
Mejoras identificadas:
Refinamiento del modelo predictivo:
Ampliación de funcionalidades:
Mejoras en la interfaz de usuario:
Expansión del alcance:
Optimización técnica:
Estas mejoras identificadas proporcionan una hoja de ruta para el desarrollo futuro de la aplicación, permitiendo una evolución continua que aumente su valor para los usuarios y su impacto en la optimización del consumo eléctrico.