discrete_optimization.rcpsp_exclusion package
Submodules
discrete_optimization.rcpsp_exclusion.problem module
- class discrete_optimization.rcpsp_exclusion.problem.RcpspProblemWithExclusion(resources: dict[str, int | list[int]], non_renewable_resources: list[str], mode_details: dict[Hashable, dict[int, dict[str, int]]], successors: dict[Hashable, list[Hashable]], horizon: int, tasks_list: list[Hashable] | None = None, source_task: Hashable | None = None, sink_task: Hashable | None = None, name_task: dict[Hashable, str] | None = None, calendar_details: dict[str, list[list[int]]] | None = None, special_constraints: SpecialConstraintsDescription | None = None, fixed_permutation: list[int] | None = None, fixed_modes: list[int] | None = None, exclusion_resource_capacity: dict[ExclusionResource, int] = None, exclusion_resource_consumptions: dict[Hashable, dict[int, dict[ExclusionResource, int]]] = None, exclusion_resource_boolean: dict[Hashable, dict[int, dict[ExclusionResource, bool]]] = None, **kwargs: Any)[source]
Bases:
RcpspProblem- property exclusion_resources_list: list[ExclusionResource]
discrete_optimization.rcpsp_exclusion.utils module
- discrete_optimization.rcpsp_exclusion.utils.create_exclusion_rcpsp_problem(problem: RcpspProblem = None, nb_exclusion_resource: int = 1, proportion_blocking_tasks: float = 0.1, proportion_blocked_tasks: float = 0.1, range_capacities: tuple[int, int] = (1, 1)) RcpspProblemWithExclusion[source]