Spaces:
Paused
Paused
File size: 649 Bytes
3b9a6b5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
from dataclasses import dataclass, field
# =========================
# DATA MODELS
# =========================
@dataclass(frozen=True, kw_only=True)
class CountDistribution:
count: int
weight: float
@dataclass(frozen=True, kw_only=True)
class SkillSet:
required_skills: tuple[str, ...]
optional_skills: tuple[str, ...]
@dataclass(kw_only=True)
class TimeTableDataParameters:
skill_set: SkillSet
days_in_schedule: int
employee_count: int
optional_skill_distribution: tuple[CountDistribution, ...]
availability_count_distribution: tuple[CountDistribution, ...]
random_seed: int = field(default=37)
|