Matemáticas Discretas es una asignatura fundamental para el análisis y comprensión de estructuras matemáticas no continuas, esenciales en la formación de profesionales en áreas como la ciberseguridad, la informática y las ciencias de datos. El curso aborda conceptos clave como la lógica matemática, la teoría de conjuntos, las relaciones, los algoritmos y la teoría de grafos, proporcionando las herramientas necesarias para formular razonamientos precisos, estructurar información de manera eficiente y modelar situaciones complejas. A través del uso de símbolos y reglas formales, los estudiantes desarrollan la capacidad de representar y analizar argumentos matemáticos con rigor.
El enfoque del curso no es solo teórico, sino también aplicado: se busca que los estudiantes comprendan la aplicabilidad de estos conceptos en el estudio y resolución de problemas discretos reales. La lógica y las relaciones permiten formalizar condiciones y restricciones, los conjuntos estructuran datos y operaciones básicas, los algoritmos orientan procesos de solución eficientes, y los grafos posibilitan representar redes, rutas y estructuras jerárquicas. Esta asignatura sienta así las bases para el desarrollo de competencias analíticas y computacionales que son indispensables en entornos tecnológicos actuales.
RESULTADOS DE APRENDIZAJE
RDA 1: Comprender los conceptos fundamentales de la Matemática Discreta, incluyendo lógica matemática, teoría de conjuntos, relaciones, algoritmos y teoría de grafos, destacando su importancia y aplicabilidad en el análisis de problemas discretos
Criterio de evaluación 1: Reconoce las propiedades fundamentales de la lógica proposicional y la teoría de conjuntos.
Criterio de evaluación 2: Comprende el concepto de relaciones y relaciones de equivalencia.
Criterio de evaluación 3: Comprende los conceptos fundamentales de los grafos.
RDA 2: Resolver problemas prácticos y teóricos mediante la aplicación de técnicas y herramientas de la Matemática Discreta, como lógica matemática, análisis de conjuntos y teoría de grafos en el manejo de estructuras discretas.
Criterio de evaluación 1: Construye tablas de verdad de operaciones lógicas para la solución de problemas.
Criterio de evaluación 2: Realiza operaciones de conjuntos aplicando la teoría de conjuntos y de relaciones en la solución de problemas.
Criterio de evaluación 3: Analiza la complejidad de los algoritmos simples y su eficiencia.
RDA 3: Aplicar los principios y métodos de la Matemática Discreta en una variedad de situaciones, en contextos tanto teóricos como prácticos.
Criterio de evaluación 1: Aplica métodos de la Lógica matemática y la Teoría de Conjuntos para la resolución de problemas complejos.
Criterio de evaluación 2: Aplica los conceptos de Algoritmos y Teoría de Grafos para modelar la resolución de problemas de diversos contextos.
El proyecto final es la evaluación sumativa de los 3 retos, se considera como el entregable final de la asignatura.
Objetivo general
Diseñar un sistema inteligente de monitoreo para redes organizacionales, capaz de detectar riesgos de ciberseguridad mediante el modelado y análisis de eventos digitales, empleando lógica proposicional, estructuras relacionales, algoritmos y teoría de grafos.
Objetivos específicos
Construir condiciones de alerta basadas en lógica proposicional, evaluando su validez mediante tablas de verdad.
Implementar un sistema de control de accesos utilizando relaciones entre usuarios, roles, permisos y recursos.
Desarrollar algoritmos para la detección automática de comportamientos sospechosos y evaluar su eficiencia.
Representar y analizar trayectorias de usuarios en una red mediante teoría de grafos, identificando rutas críticas y anomalías.
Descripción del proyecto
Este proyecto consiste en construir, de manera progresiva, un sistema de vigilancia digital para una red organizacional, integrando conceptos clave de Matemática Discreta. A través de cuatro retos secuenciales, el estudiante desarrollará módulos que simulan distintos mecanismos de monitoreo, aplicando lógica, teoría de relaciones, algoritmos y grafos en contextos realistas de ciberseguridad.
Cada reto es un componente esencial del sistema y se articula con contenidos del curso, permitiendo una evaluación integral por resultados de aprendizaje.
Actividades:
Reto 1 (RDA 1)
Formular eventos relevantes como proposiciones lógicas.
Construir fórmulas compuestas para reglas de alerta.
Evaluar su validez con tablas de verdad y Python.
Reto 2 (RDA 2)
Definir relaciones entre usuarios, roles, recursos y permisos.
Representar estructuras relacionales en Python.
Consultar y analizar brechas de seguridad en los accesos.
Reto 3 (RDA 3)
Simular eventos masivos en una red digital.
Implementar reglas algorítmicas de detección de amenazas.
Evaluar complejidad computacional y eficiencia experimental.
Reto 4 (Integrador)
Modelar la red como un grafo dirigido..
Simular movimientos de usuarios como trayectorias.
Detectar rutas anómalas y evaluar el uso de recursos con grafos ponderados.
Metodología:
Desarrollo incremental: Cada reto corresponde a una entrega parcial del proyecto.
Control de versiones: Usar Git para gestionar cambios y colaboración.
Implementación de la lógica proposicional
Ponderación 25%
Uso correcto de conectores lógicos, funciones en Python y análisis de tablas de verdad.
Modelado relacional
Ponderación: 25%
Representación adecuada de estructuras, consultas y relaciones de equivalencia.
Algoritmos y eficiencia
Ponderación: 25%
Correcta detección de patrones con funciones eficientes, análisis formal y experimental.
Análisis con grafos
Ponderación: 25%
Uso de grafos dirigidos, métricas topológicas y visualización de rutas críticas.
Cronograma de entregables del Proyecto.
Clase 5 — Reto 1
Entregable: Entrega 1
Contenido: Definición de eventos, fórmulas lógicas, funciones en Python y tablas de verdad.
Clase 10 — Reto 2
Entregable: Entrega 2
Contenido: Relaciones entre usuarios, roles y recursos, análisis de accesos con DataFrames.
Clase 15 — Reto 3
Entregable: Entrega 3
Contenido: Simulación de eventos, funciones de detección, evaluación de eficiencia.
Clase 16 — Reto 4
Entregable: Entrega final
Contenido: Simulación de trayectorias, métricas topológicas, detección de rutas críticas.
RETO 1: Decisiones lógicas, riesgos reales
Objetivo: Modelar condiciones de alerta en una red organizacional utilizando lógica proposicional, construyendo fórmulas lógicas e interpretando su validez mediante tablas de verdad.
Indicaciones:
Plantear el escenario
Construir fórmulas lógicas
Implementar cada fórmula como una función en Python.
Entregar un único archivo IPYNB (Jupyter Notebook)
RETO 2: Control total (RDA 2)
Objetivo: Diseñar e implementar un sistema de control de accesos utilizando relaciones matemáticas, representación matricial y operaciones básicas del álgebra relacional, aplicadas a un modelo relacional definido en Python.
Indicaciones:
Definir los elementos del sistema
Construir relaciones
Representa las relaciones A y B como tablas en Python
entregar un único archivo IPYNB (Jupyter Notebook)
RETO 3: Algoritmos bajo vigilancia
Objetivo: Implementar en Python una función que recorra el registro de eventos utilizando bucles anidados, aplique tres reglas de detección de patrones sospechosos y devuelva una lista de alertas que identifique al usuario, la regla violada y los índices de los eventos relevantes. Evaluar su complejidad formalmente y contrastarla con resultados experimentales.
Indicaciones:
Generar datos simulados
Implementar el algoritmo de detección
Justifica teóricamente la complejidad del algoritmo.
Entregar un único archivo IPYNB (Jupyter Notebook)
RETO 4: Rutas y riesgos
Objetivo:Construir un grafo completo que represente una red organizacional, simular trayectorias de usuarios como caminos en esa red, analizar métricas topológicas de los caminos y detectar rutas anómalas basadas en su estructura y frecuencia.
Indicaciones:
Construir el grafo de la red organizacional
Simular trayectorias (caminos) de al menos 500 usuarios dentro del grafo
Entregar un único archivo IPYNB (Jupyter Notebook)