Cada período académico, las universidades deben construir un horario completo y sin conflictos que asigne miles de secciones de cursos a bloques horarios, salas e instructores, respetando simultáneamente cientos de restricciones: disponibilidad docente, capacidad de salas, distancias entre edificios, superposición de cohortes, prerrequisitos curriculares y políticas institucionales. Este proceso, realizado manualmente, consume semanas de trabajo y sigue generando errores.
Darwin es la plataforma de Foris Suite para la programación académica inteligente y la gestión de espacios universitarios. Cubre de extremo a extremo el proceso más complejo de la operación universitaria: desde la proyección de la demanda de cursos hasta la construcción del horario, su revisión colaborativa, la configuración de cupos para inscripción y la administración de reservas de espacios — todo en una sola plataforma integrada.
¿Por qué Darwin?
Cada período académico, las universidades deben construir un horario completo y sin conflictos que asigne miles de secciones de cursos a bloques horarios, salas e instructores, respetando simultáneamente cientos de restricciones: disponibilidad docente, capacidad de salas, distancias entre edificios, superposición de cohortes, prerrequisitos curriculares y políticas institucionales. Este proceso, realizado manualmente, consume semanas de trabajo y sigue generando errores.
Darwin transforma este proceso con automatización basada en algoritmos de optimización, análisis de datos históricos y herramientas de edición colaborativa. El resultado: horarios de mayor calidad producidos en horas, con trazabilidad completa y control institucional en cada etapa.
Beneficios clave:
- Reducción drástica del tiempo de construcción del horario — de semanas a horas
- Proyección de demanda basada en datos históricos reales, no en estimaciones manuales
- Edición colaborativa y distribuida con control granular de permisos por rol
- Eliminación de conflictos de salas e instructores con validación en tiempo real
- Integración con los sistemas institucionales existentes (SIS, ERP, Banner, PeopleSoft, entre otros)
- Adaptación a las políticas de cada institución sin desarrollo a medida
Proyección de Demanda
Antes de construir el horario, la institución debe saber cuántas secciones necesita de cada curso. Darwin reemplaza la estimación manual por proyección algorítmica basada en los datos históricos propios de la universidad.
Métodos de proyección disponibles
- Basado en actas académicas: calcula la demanda a partir de los registros de notas y avance curricular de los estudiantes activos.
- Simulación de inscripciones por avance: simula el comportamiento de inscripción de los estudiantes según su progreso en el currículo.
- Regresión estadística: proyecta la demanda futura mediante análisis de tendencias históricas de inscripción.
Cada método consume los datos académicos propios de la institución (actas, inscripciones, registros de estudiantes) y produce proyecciones de demanda por curso, programa y componente académico.
Editor de demandas
Las proyecciones generadas por el algoritmo pueden ser revisadas y ajustadas manualmente antes de ser utilizadas en la programación. El editor de demandas permite filtrar por departamento, programa y curso, aplicar correcciones, aprobar la demanda proyectada y exportar reportes — garantizando que el juicio institucional complementa el análisis cuantitativo.
Analítica de proyecciones
Darwin ofrece cinco reportes analíticos para validar y comparar proyecciones:
- Comparación de demandas entre distintos procesos de proyección
- Línea de tiempo de demanda histórica por múltiples períodos
- Comparación de volúmenes entre dos procesos en términos distintos
- Análisis de demanda de un proceso individual
- Análisis de inscripciones de un proceso individual
Optimización del Horario (Viktor)
El motor de programación de Darwin —Viktor— resuelve el problema de asignación de horarios mediante un algoritmo de optimización que genera simultáneamente la asignación de secciones, bloques horarios, salas e instructores, respetando todas las restricciones configuradas por la institución.
Parámetros de configuración
El proceso de programación es altamente configurable a través de más de 60 parámetros organizados en paneles temáticos:
- Configuración base: sede, jornada, fuente de demanda, semanas del proceso
- Semilla de programación: basar el nuevo proceso en resultados anteriores, políticas de asignación de salas e instructores
- Programación docente: días óptimos, máximo de bloques, penalizaciones por sobrecarga, subdistribución y asimetría
- Poblaciones estudiantiles: creación de sinópticos, cobertura, manejo de electivos
- Creación de secciones: mezcla de listas cruzadas, recorte de colas, configuración del optimizador
- Algoritmo genético: generaciones, tiempos límite, banco de genes
- Post-procesamiento y activación de reglas: más de 7 tipos de reglas institucionales activables por proceso
Las configuraciones pueden guardarse como perfiles reutilizables, permitiendo al equipo de programación establecer parámetros estándar por sede o jornada y ajustarlos cuando sea necesario.
Reglas institucionales (Lambda Rules)
Darwin permite codificar políticas de programación específicas de la institución —como "los cursos del departamento X solo pueden dictarse en el edificio Y" o "este instructor solo puede tener horario en la mañana"— en formato JSON configurable, sin necesidad de modificar el código del algoritmo. Estas reglas se activan o desactivan por proceso, dando control total al equipo de operaciones.
Simulación por escenarios
Darwin incorpora una jerarquía de Ambientes → Escenarios → Procesos que permite ejecutar múltiples simulaciones de programación en espacios aislados, comparar resultados y promover el mejor escenario a producción. Este modelo de simulación es un concepto arquitectónico de primera clase: las instituciones pueden evaluar estrategias alternativas —más secciones versus secciones más grandes, por ejemplo— sin afectar el horario en producción.
Editor de Horarios
Ningún algoritmo captura con exactitud cada matiz institucional. El editor de horarios es donde el juicio humano complementa la optimización algorítmica. Ofrece una interfaz de calendario completa para revisar y ajustar los resultados del proceso de programación.
Capacidades de edición
- Vista de calendario semanal por cualquier recurso: sala, instructor, sección, liga, población o paquete
- Gestión de sesiones: crear, editar, editar en lote, eliminar (con detección de sesiones en días festivos)
- Gestión de secciones: listar, buscar, editar, deshabilitar. Cada sección muestra curso, componente, horario, cupos, ligas, grupos, edificios, etiquetas y listas de espera
- Gestión de ligas y bundles: crear y editar ligas (grupos de secciones vinculadas) y sus bundles estructurales con gestión de cupos por grupo
- Gestión de grupos: crear, deshabilitar, mostrar u ocultar para inscripción, activar/desactivar, etiquetar y migrar grupos entre ligas
- Gestión de paquetes: visualizar, crear, editar, etiquetar paquetes y asignar/desasignar ligas
- Asignación de instructores: búsqueda avanzada y asignación de responsabilidad docente con porcentaje de horas y de pago
- Recomendaciones de sesiones: el sistema propone horarios, salas e instructores mediante heurísticas
- Filtros guardados: guardar y reutilizar configuraciones de filtro complejas para 8 tipos de recursos
Control y trazabilidad
- Validación en tiempo real: el editor muestra conflictos de sala, instructor y liga directamente sobre las sesiones afectadas
- Registro de cambios (audit log): cada modificación queda registrada con usuario, fecha, recurso y detalle del cambio
- Permisos granulares: 23 capacidades de usuario configurables — por ejemplo, quién puede asignar bloques, cambiar salas, reasignar instructores, eliminar paquetes. Esto permite que los jefes de departamento editen sus secciones mientras el registro central mantiene control sobre las restricciones transversales
- Perspectivas de calendario: vista anual, vista de todas las semanas, vista por tramo del período
Gestión de Cupos
El módulo de gestión de cupos conecta el horario construido con el proceso de inscripción de los estudiantes. Permite configurar los grupos de inscripción — con capacidades, reglas de visibilidad, etiquetas y estados activo/inactivo — antes de abrir el período de registro.
Capacidades
- Búsqueda, creación, edición y eliminación de grupos con filtros por sede, departamento, escuela y tipo de curso
- Configuración de capacidad mínima, máxima y efectiva por grupo
- Control de visibilidad: activar o desactivar la visibilidad de un grupo para el proceso de inscripción estudiantil
- Estadísticas de inscripción en tiempo real: capacidad total, reservada, utilizada, listas de espera, bookings, intenciones y vistas por grupo
- Historial de cambios del grupo: registro de todas las modificaciones con fuente, usuario, propiedad, valor anterior y nuevo
Reservas de Espacio
Darwin extiende la gestión más allá del horario académico hacia la administración general de espacios. El módulo de reservas permite gestionar la ocupación de salas para eventos académicos y no académicos — conferencias, exámenes, ceremonias — en el mismo sistema que gestiona el horario de clases.
Capacidades
- Creación, edición y gestión en lote de reservas con título, descripción, programa, capacidad, responsable y soporte de recurrencia
- Flujo de aprobación: pendiente → confirmada / rechazada / cancelada / expirada
- Verificación de disponibilidad de salas en tiempo real para evitar dobles reservas
- Tipos de reserva configurables
- Las reservas aparecen integradas en la misma vista de calendario del editor de horarios, ofreciendo una visión unificada de toda la ocupación de espacios
Reportería y Analítica
Darwin ofrece más de 30 reportes descargables y múltiples vistas analíticas en cada etapa del proceso de programación.
Reportes de horario y secciones
- Horarios por programa, por área, resumen de secciones, ligas, grupos y cupos
- Reporte de asignación de estudiantes, grupos sin sesiones, sesiones en paquetes, horarios fijos
- Resumen de secciones y ligas, horarios por edificio y sala
Reportes de análisis de instructores
- Análisis de instructores (con parametrización), relaciones instructor-curso (intersecciones)
- Resumen semanal de instructores, calidad del horario (evaluaciones)
Reportes de conflictos
- Conflictos de sala, instructor, liga y paquete — permiten verificar la calidad del horario antes de publicarlo
Reportes de ocupación
- Ocupación por sala y edificio — optimización del uso de la infraestructura física
Grilla de métricas horarias
Vista interactiva de calor que muestra ocupación, capacidad y utilización cruzando días y bloques horarios para todo el período, con filtros por sede, edificio y tipo de sala.
Reportes de integración institucional
Más de 25 formatos de exportación específicos por institución (Banner, PeopleSoft, y ERPs propietarios) para alimentar los sistemas de información estudiantil existentes.
Gestión de Catálogos
Darwin centraliza todos los datos maestros de la programación académica en mantenedores completos con importación y exportación masiva en Excel.
| Categoría | Entidades |
|---|---|
| Institucional | Escuelas, Sedes, Tipos de Período, Períodos |
| Infraestructura | Edificios, Tipos de Sala, Salas, Matriz de distancias entre edificios |
| Oferta académica | Modalidades, Jornadas, Carreras, Currículos, Mallas, Configuración de niveles |
| Variables de programación | Bloques horarios, Franjas horarias, Componentes de asignatura, Asignaturas, Semanas, Demandas |
| Docentes | Tipos de contrato, Instructores, Disponibilidad, Relación docente-asignatura |
| Estudiantes | Estudiantes, Registros, Actas, Inscripciones |
Todos los catálogos soportan importación masiva con auditoría completa de cada carga. Las entidades admiten propiedades extendidas configurables por institución, sin necesidad de modificar el modelo de datos base.
Configuración y Administración
- Gestión de ambientes y escenarios: crear, renombrar y activar workspaces y escenarios para aislar simulaciones
- Festivos: configuración de días festivos por período con impacto en la generación de sesiones
- Agrupadores de semana y etiquetas: categorías configurables para organizar y filtrar el horario
- Bloqueo de ediciones: control centralizado para abrir o cerrar la edición del horario por período
- Auditoría de importaciones: registro completo de todas las operaciones de carga de datos
- Gestión de usuarios, roles y permisos: matriz de permisos por usuario, recurso y operación (crear, leer, actualizar, importar)
Integración y API
Darwin está diseñado para integrarse con los sistemas institucionales existentes sin reemplazarlos.
- API REST documentada con autenticación por token, versionado y referencia completa de endpoints — orientada a equipos de TI que necesiten integración programática
- Portal de desarrollador con documentación del modelo de datos, definición de entidades, campos y descripciones del modelo de programación
- Más de 25 formatos de exportación institucional para Banner, PeopleSoft y ERPs propietarios — habilitados por institución mediante configuración
- Importación masiva desde Excel para todos los catálogos, con soporte de transformación y validación
Usuarios Objetivo y Casos de Uso
Usuarios principales
- Registros y programación académica: equipo central que ejecuta el proceso completo — catálogos, proyección, programación, edición, reportes
- Jefes de departamento y decanos: revisión de resultados, aprobación de demandas, ajuste de secciones propias con permisos controlados
- Equipo de eventos: gestión de reservas de espacios para actividades no académicas
- TI e integración: uso del API y el portal de desarrollador para conectar Darwin con el SIS y el ERP institucional
Casos de uso representativos
Generación del horario por período El equipo de registros importa datos actualizados de salas, instructores y cursos, ejecuta la proyección de demanda con datos históricos, revisa y aprueba la demanda en el editor, configura y ejecuta el algoritmo de programación con las reglas institucionales, revisa y corrige conflictos en el editor de horarios, configura cupos de inscripción y exporta el horario final al SIS.
Análisis de escenarios (what-if) Un decano quiere evaluar el impacto de incorporar un nuevo edificio. El equipo crea un nuevo escenario, agrega las nuevas salas al catálogo, ejecuta el algoritmo y compara las métricas de ocupación contra el escenario base — sin afectar el horario en producción.
Planificación de capacidad con proyección de demanda El equipo de planificación académica ejecuta los tres métodos de proyección, compara los resultados con el reporte de comparación de demandas, aprueba la proyección más precisa y utiliza la línea de tiempo para identificar cursos con crecimiento sostenido o caída de demanda.
Edición colaborativa por departamento Tras la generación algorítmica, los jefes de departamento reciben acceso al editor con permisos limitados a sus propias secciones. Ajustan sesiones, reasignan instructores y consolidan secciones. Todos los cambios quedan registrados en el audit log y las validaciones en tiempo real previenen la creación de nuevos conflictos.
Gestión de reservas de espacios El equipo de eventos reserva salas para exámenes y ceremonias a través del módulo de reservas. Las solicitudes pasan por flujo de aprobación. Las salas reservadas aparecen en el mismo calendario que el horario académico, garantizando visibilidad unificada de toda la ocupación.