RoyAalekh's picture
refactored project structure. renamed scheduler dir to src
03a506a

Data Module — Parameters, Defaults, and Case Generation

Directory: scheduler/data/

This package is responsible for loading configuration/parameters, exposing default parameter tables, and (optionally) generating synthetic cases. These inputs are used by both the core scheduler and the simulation engine.

Files overview

  • config.py

    • Purpose: Data/config structures and helpers to read configuration (e.g., TOML under configs/).
    • Typical contents: typed config models, IO utilities to load/validate values, and a central place to map file paths to parameter tables.
    • Interactions: Consumed by dashboard utilities, simulation runner, and EDA.
  • param_loader.py

    • Purpose: Load parameter tables required by the scheduler and simulation from CSV/JSON defaults or project artifacts.
    • Inputs (defaults): files under scheduler/data/defaults/, including:
      • adjournment_proxies.csv — signals/statistics used to approximate adjournment likelihood.
      • case_type_summary.csv — frequencies and basic properties by case type.
      • court_capacity_global.json — nominal/maximum capacity settings.
      • stage_duration.csv — typical durations per stage.
      • stage_transition_entropy.csv — transition uncertainty by stage.
      • stage_transition_probs.csv — Markov transition probabilities between stages.
    • Outputs: in‑memory DataFrames/objects consumed by core and simulation.
  • case_generator.py

    • Purpose: Produce synthetic cases consistent with the parameter distributions for use in simulations or demos.
    • Interactions: Reads parameters via param_loader.py; emits core/Case instances ready for ripeness evaluation and scheduling.
  • __init__.py

    • Purpose: Package initialization; may expose convenience imports for loader/generator utilities.

Data sources

  • Project data: Data/*.parquet and derived artifacts in reports/figures/* (e.g., cleaned parquet, params CSVs).
  • Defaults: scheduler/data/defaults/* bundled with the package as fallback/configuration baselines.