discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives package
Submodules
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocated_tasks module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocated_tasks.AllocatedTasksObjectiveCpSatModeler(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocation_changes module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocation_changes.AllocationSwitchModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat,Generic[Task,UnaryResource]- allocation_change_variables: dict
- allocation_change_variables_initialized: bool = False
- init_value: dict
- objective_computer: AllocationSwitchObjectiveComputer[Task, UnaryResource]
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocation_cost module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocation_cost.AllocationCostModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: AllocationCostComputer
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.allocation_cost.AllocationCostMultimodeModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: AllocationCostComputerMultimode
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective.CumulCostModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: CumulCostComputer, modelisation_dispersion: ModelisationDispersion = ModelisationDispersion.EXACT)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: CumulCostComputer
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective.CumulativeObjective(problem: MultimodeAllocationProblem, solver: MultimodeAllocationSolver)[source]
Bases:
object- create_cumul_value_duplicated(val_per_task_per_mode: dict[Task, dict[int, int]], name_value: str)[source]
- create_cumul_value_implication(val_per_task_per_mode: dict[Task, dict[int, int]], name_value: str)[source]
- create_dispersion_objective(val_per_task_per_mode: dict[Task, dict[int, int]], name_value: str, modelisation_dispersion: ModelisationDispersion = ModelisationDispersion.EXACT)[source]
- problem: GenericSchedulingProblem
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective.ModelisationDispersion(*values)[source]
Bases:
Enum- EXACT = 0
- MAX_DIFF = 1
- PROXY_MAX_MIN = 2
- PROXY_MIN_MAX = 3
- PROXY_SLACK = 5
- PROXY_SUM = 4
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective.MultimodeAllocationProblem[source]
Bases:
MultimodeProblem[Task],AllocationProblem[Task,UnaryResource]
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.cumul_objective.MultimodeAllocationSolver(problem: Problem, params_objective_function: ParamsObjectiveFunction | None = None, **kwargs: Any)[source]
Bases:
AllocationCpSatSolver[Task,UnaryResource],MultimodeCpSatSolver[Task]
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.earliness_tardiness module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.earliness_tardiness.EarlinessTardinessCpSatModeler(problem: SchedulingProblem[Task], weight_objective: float = 1.0, max_start_and_weight_for_tardiness: dict[Task, tuple[int | None, int | None]] = None, max_end_and_weight_for_tardiness: dict[Task, tuple[int | None, int | None]] = None, min_start_and_weight_for_earliness: dict[Task, tuple[int | None, int | None]] = None, min_end_and_weight_for_earliness: dict[Task, tuple[int | None, int | None]] = None)[source]
Bases:
ObjectiveModelerCpSat,Generic[Task]- earliness_end_vars: dict
- earliness_start_vars: dict
- earliness_tardiness_vars_initialized: bool = False
- objective_computer: EarlinessTardinessComputer[Task]
- tardiness_end_vars: dict
- tardiness_start_vars: dict
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.makespan module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.makespan.MakespanObjectiveModelCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.mode_cost module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.mode_cost.ModeCostModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: ModeCostComputer
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.objective_modeler module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.objective_modeler.ObjectiveModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
Generic[Task,UnaryResource,Skill,NonSkillCumulativeResource,NonRenewableResource],ABC- objective_computer: ObjectiveComputer
- solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource]
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.resource_levels module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.resource_levels.CalendarRenewableResourceLevelModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: CalendarRenewableResourceLevelObjectiveComputer
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.resource_levels.NonRenewableResourceLevelModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: NonRenewableResourceLevelObjectiveComputer
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.schedule_changes module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.schedule_changes.ScheduleChangesModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: ScheduleChangesComputer
- schedule_changes_initialized: bool = False
- variables: dict
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.scheduled_tasks module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.scheduled_tasks.ScheduledTasksCpSatModeler(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: ScheduledTasksComputer
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.soft_time_penalty module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.soft_time_penalty.SoftTimePenaltyModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- initialized_variables: bool = False
- objective_computer: SoftTimePenaltyComputer
- variables: dict
discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.unary_resource_used module
- class discrete_optimization.generic_tasks_tools.solvers.cpsat.objectives.unary_resource_used.UnaryResourcesUsedModelerCpSat(solver: GenericSchedulingAutoCpSatSolver[Task, UnaryResource, Skill, NonSkillCumulativeResource, NonRenewableResource], objective_computer: ObjectiveComputer)[source]
Bases:
ObjectiveModelerCpSat- objective_computer: UnaryResourcesUsedComputer