sampo.scheduler.heft.time_computaion#
Overview#
|
Calculate the working time of the appointed workers at a current job for prioritization. |
|
Calculate the working time of the appointed workers at a current job for final schedule |
|
Calculate the average time to complete the work when assigning the minimum and maximum number of employees |
- |
Functions#
- sampo.scheduler.heft.time_computaion.calculate_working_time_cascade(node: sampo.schemas.graph.GraphNode, appointed_worker: list[sampo.schemas.resources.Worker], work_estimator: sampo.schemas.time_estimator.WorkTimeEstimator) sampo.schemas.time.Time#
Calculate the working time of the appointed workers at a current job for prioritization. O(1) - at worst case |inseparable_edges|
- Parameters:
appointed_worker –
work_estimator –
node – the target node
- Returns:
working time
- sampo.scheduler.heft.time_computaion.calculate_working_time(work_unit: sampo.schemas.works.WorkUnit, appointed_worker: list[sampo.schemas.resources.Worker], work_estimator: sampo.schemas.time_estimator.WorkTimeEstimator = DefaultWorkEstimator) sampo.schemas.time.Time#
Calculate the working time of the appointed workers at a current job for final schedule
- Returns:
working time
- sampo.scheduler.heft.time_computaion.work_priority(node: sampo.schemas.graph.GraphNode, comp_cost: Callable[[sampo.schemas.graph.GraphNode, list[sampo.schemas.resources.Worker], sampo.schemas.time_estimator.WorkTimeEstimator], sampo.schemas.time.Time], work_estimator: sampo.schemas.time_estimator.WorkTimeEstimator) float#
Calculate the average time to complete the work when assigning the minimum and maximum number of employees for the correct calculations of rank in prioritization O(sum_of_max_counts_of_workers) of current work
- Parameters:
node – the target node
work_estimator –
comp_cost – function for calculating working time (calculate_working_time)
- Returns:
average working time
Attributes#
- sampo.scheduler.heft.time_computaion.PRIORITY_DELTA = 1#