Detailed Description
ressource profile data structure
Function Documentation
◆ SCIPprofileCreate()
SCIP_EXPORT SCIP_RETCODE SCIPprofileCreate | ( | SCIP_PROFILE ** | profile, |
int | capacity | ||
) |
creates resource profile
- Parameters
-
profile pointer to store the resource profile capacity resource capacity
Definition at line 6514 of file misc.c.
References doProfileCreate(), NULL, SCIP_CALL_FINALLY, SCIP_OKAY, and SCIPprofileFree().
Referenced by computeAlternativeBounds(), computeEffectiveHorizonCumulativeCondition(), performBackwardScheduling(), performForwardScheduling(), propagateCons(), propagateCumulativeCondition(), and SCIPrealHashCode().
◆ SCIPprofileFree()
SCIP_EXPORT void SCIPprofileFree | ( | SCIP_PROFILE ** | profile | ) |
frees given resource profile
- Parameters
-
profile pointer to the resource profile
Definition at line 6528 of file misc.c.
References BMSfreeMemory, BMSfreeMemoryArrayNull, and NULL.
Referenced by computeAlternativeBounds(), computeEffectiveHorizonCumulativeCondition(), performBackwardScheduling(), performForwardScheduling(), propagateCons(), propagateCumulativeCondition(), SCIPprofileCreate(), and SCIPrealHashCode().
◆ SCIPprofilePrint()
SCIP_EXPORT void SCIPprofilePrint | ( | SCIP_PROFILE * | profile, |
SCIP_MESSAGEHDLR * | messagehdlr, | ||
FILE * | file | ||
) |
output of the given resource profile
- Parameters
-
profile resource profile to output messagehdlr message handler file output file (or NULL for standard output)
Definition at line 6544 of file misc.c.
References SCIP_Profile::capacity, SCIP_Profile::loads, SCIP_Profile::ntimepoints, SCIPmessageFPrintInfo(), and SCIP_Profile::timepoints.
Referenced by computeEffectiveHorizonCumulativeCondition(), coretimesUpdateUb(), and SCIPrealHashCode().
◆ SCIPprofileGetCapacity()
SCIP_EXPORT int SCIPprofileGetCapacity | ( | SCIP_PROFILE * | profile | ) |
returns the capacity of the resource profile
- Parameters
-
profile resource profile to use
Definition at line 6566 of file misc.c.
References SCIP_Profile::capacity, and NULL.
Referenced by SCIPrealHashCode().
◆ SCIPprofileGetNTimepoints()
SCIP_EXPORT int SCIPprofileGetNTimepoints | ( | SCIP_PROFILE * | profile | ) |
returns the number time points of the resource profile
- Parameters
-
profile resource profile to use
Definition at line 6576 of file misc.c.
References SCIP_Profile::ntimepoints, and NULL.
Referenced by computeCoreEngeryAfter(), computeEffectiveHorizonCumulativeCondition(), coretimesUpdateLb(), coretimesUpdateUb(), propagateTimetable(), SCIPcomputeHmax(), SCIPcomputeHmin(), and SCIPrealHashCode().
◆ SCIPprofileGetTimepoints()
SCIP_EXPORT int* SCIPprofileGetTimepoints | ( | SCIP_PROFILE * | profile | ) |
returns the time points of the resource profile
- Parameters
-
profile resource profile to use
Definition at line 6586 of file misc.c.
References NULL, and SCIP_Profile::timepoints.
Referenced by computeEffectiveHorizonCumulativeCondition(), SCIPcomputeHmax(), SCIPcomputeHmin(), and SCIPrealHashCode().
◆ SCIPprofileGetLoads()
SCIP_EXPORT int* SCIPprofileGetLoads | ( | SCIP_PROFILE * | profile | ) |
returns the loads of the resource profile
- Parameters
-
profile resource profile to use
Definition at line 6596 of file misc.c.
References SCIP_Profile::loads, and NULL.
Referenced by computeEffectiveHorizonCumulativeCondition(), SCIPcomputeHmax(), SCIPcomputeHmin(), and SCIPrealHashCode().
◆ SCIPprofileGetTime()
SCIP_EXPORT int SCIPprofileGetTime | ( | SCIP_PROFILE * | profile, |
int | pos | ||
) |
returns the time point for given position of the resource profile
- Parameters
-
profile resource profile to use pos position
Definition at line 6606 of file misc.c.
References NULL, and SCIP_Profile::timepoints.
Referenced by computeCoreEngeryAfter(), coretimesUpdateLb(), coretimesUpdateUb(), createCoreProfile(), propagateTimetable(), and SCIPrealHashCode().
◆ SCIPprofileGetLoad()
SCIP_EXPORT int SCIPprofileGetLoad | ( | SCIP_PROFILE * | profile, |
int | pos | ||
) |
returns the loads of the resource profile at the given position
- Parameters
-
profile resource profile pos position
Definition at line 6618 of file misc.c.
References SCIP_Profile::loads, and NULL.
Referenced by computeCoreEngeryAfter(), coretimesUpdateLb(), coretimesUpdateUb(), and SCIPrealHashCode().
◆ SCIPprofileFindLeft()
SCIP_EXPORT SCIP_Bool SCIPprofileFindLeft | ( | SCIP_PROFILE * | profile, |
int | timepoint, | ||
int * | pos | ||
) |
returns if the given time point exists in the resource profile and stores the position of the given time point if it exists; otherwise the position of the next smaller existing time point is stored
- Parameters
-
profile resource profile to search timepoint time point to search for pos pointer to store the position
Definition at line 6632 of file misc.c.
References FALSE, SCIP_Profile::ntimepoints, NULL, SCIPsortedvecFindInt(), SCIP_Profile::timepoints, and TRUE.
Referenced by coretimesUpdateLb(), coretimesUpdateUb(), profileInsertTimepoint(), SCIPprofileDeleteCore(), SCIPprofileGetEarliestFeasibleStart(), SCIPprofileGetLatestFeasibleStart(), and SCIPrealHashCode().
◆ SCIPprofileInsertCore()
SCIP_EXPORT SCIP_RETCODE SCIPprofileInsertCore | ( | SCIP_PROFILE * | profile, |
int | left, | ||
int | right, | ||
int | demand, | ||
int * | pos, | ||
SCIP_Bool * | infeasible | ||
) |
insert a core into resource profile; if the core is non-empty the resource profile will be updated otherwise nothing happens
- Parameters
-
profile resource profile left left side of the core right right side of the core demand demand of the core pos pointer to store the first position were it gets infeasible infeasible pointer to store if the core does not fit due to capacity
Definition at line 6779 of file misc.c.
References FALSE, NULL, profileUpdate(), SCIP_CALL, SCIP_OKAY, and SCIPdebugMessage.
Referenced by createCoreProfile(), profilesInsertJob(), propagateCons(), propagateTimetable(), SCIPcreateWorstCaseProfile(), and SCIPrealHashCode().
◆ SCIPprofileDeleteCore()
SCIP_EXPORT SCIP_RETCODE SCIPprofileDeleteCore | ( | SCIP_PROFILE * | profile, |
int | left, | ||
int | right, | ||
int | demand | ||
) |
subtracts the height from the resource profile during core time
subtracts the demand from the resource profile during core time
- Parameters
-
profile resource profile to use left left side of the core right right side of the core demand demand of the core
Definition at line 6809 of file misc.c.
References profileUpdate(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, and SCIPprofileFindLeft().
Referenced by propagateCons(), propagateTimetable(), and SCIPrealHashCode().
◆ SCIPprofileGetEarliestFeasibleStart()
SCIP_EXPORT int SCIPprofileGetEarliestFeasibleStart | ( | SCIP_PROFILE * | profile, |
int | est, | ||
int | lst, | ||
int | duration, | ||
int | demand, | ||
SCIP_Bool * | infeasible | ||
) |
return the earliest possible starting point within the time interval [lb,ub] for a given core (given by its height and duration)
return the earliest possible starting point within the time interval [lb,ub] for a given core (given by its demand and duration)
- Parameters
-
profile resource profile to use est earliest starting time of the given core lst latest starting time of the given core duration duration of the core demand demand of the core infeasible pointer store if the corer cannot be inserted
Definition at line 6899 of file misc.c.
References FALSE, SCIP_Profile::loads, SCIP_Profile::ntimepoints, NULL, profileFindFeasibleStart(), SCIP_Bool, SCIPdebugMessage, and SCIPprofileFindLeft().
Referenced by profilesFindEarliestFeasibleStart(), and SCIPrealHashCode().
◆ SCIPprofileGetLatestFeasibleStart()
SCIP_EXPORT int SCIPprofileGetLatestFeasibleStart | ( | SCIP_PROFILE * | profile, |
int | est, | ||
int | lst, | ||
int | duration, | ||
int | demand, | ||
SCIP_Bool * | infeasible | ||
) |
return the latest possible starting point within the time interval [lb,ub] for a given core (given by its height and duration)
return the latest possible starting point within the time interval [lb,ub] for a given core (given by its demand and duration)
- Parameters
-
profile resource profile to use est earliest possible start point lst latest possible start point duration duration of the core demand demand of the core infeasible pointer store if the core cannot be inserted
Definition at line 7048 of file misc.c.
References FALSE, SCIP_Profile::loads, SCIP_Profile::ntimepoints, NULL, profileFindDownFeasibleStart(), SCIP_Bool, SCIPdebugMessage, and SCIPprofileFindLeft().
Referenced by profilesFindLatestFeasibleStart(), and SCIPrealHashCode().