|
| SchedulingInstance (const delphos::BlockSelection &bs, const unsigned int &horizon, const double discount_rate=0.0, const bool &is_pcpsp=false) |
| Creates a new scheduler instance on a given instance, horizon and discount rate. More...
|
|
| SchedulingInstance (delphos::BlockModel &bm, const unsigned int &horizon, const string &name_attr, const double discount_rate=0.0, const bool &is_pcpsp=false) |
| Creates a new scheduler instance on a given instance, horizon and discount rate. More...
|
|
| SchedulingInstance (delphos::SchedulingInstance &other) |
| Copy constructor. More...
|
|
| SchedulingInstance (delphos::BlockModel &bm, const char *ml_file_name, const bool &is_pcpsp=false) |
| Construct instance from cpit or pcpsp MineLib file . More...
|
|
| SchedulingInstance (delphos::BlockModel &bm, const unsigned int &horizon, const double discount_rate=0.0, const bool &is_pcpsp=false) |
| Creates a new scheduler instance on a given instance, horizon and discount rate. More...
|
|
virtual | ~SchedulingInstance () |
| Destructor.
|
|
void | AddConstraint (delphos::Constraint *ctr) |
| Adds an additional constraint to the scheduling instance. More...
|
|
bool | RemoveConstraint (const unsigned int &index) |
| Removes the ith constraint from the instance. More...
|
|
const unsigned int | NumConstraints () const |
| Returns the number of constraints already included in the instance. Deprecated.
|
|
const unsigned int | GetNumConstraints () const |
| Returns the number of constraints already included in the instance.
|
|
const delphos::Constraint & | GetConstraint (const unsigned int &index) const |
| Returns the i-th constraint already in the model. More...
|
|
void | AddDestination (const Destination &dest) |
| Adds an additional destination to the scheduling instance. More...
|
|
void | AddDestination (const string &destname, const string &destvalueattrname) |
| Adds an additional destination to the scheduling instance. More...
|
|
delphos::DestinationList & | Destinations () |
| returns the list of destinations in the instance. Deprecated.
|
|
delphos::DestinationList & | GetDestinations () |
| returns the list of destinations in the instance.
|
|
void | AddStock (const Stock &stock) |
| Adds an additional stock to the scheduling instance. More...
|
|
void | AddStock (const string &stock_name, const string &tname, const double &tonnage) |
| Adds an additional stock to the scheduling instance. More...
|
|
delphos::StockList & | Stocks () |
| returns the stocks defined in the instance.
|
|
delphos::StockList & | GetStocks () |
| returns the stocks defined in the instance.
|
|
const bool | IsStock () |
| returns true only if there is stock.
|
|
void | SetFixedDiscountRate (const double discount_rate) |
| (Re-)sets a discount rate that is fixed over the time-periods. More...
|
|
double | GetFixedDiscountRate () const |
| Returns the Fixed Discount rate.
|
|
void | SetUpdateFactor (const unsigned int period, const double factor) |
| Sets a specific update factor for a specific time-period. More...
|
|
const double | GetUpdateFactor (const unsigned int period) const |
| Retrieves the current discount rate for an specific time-period.
|
|
const unsigned int | Horizon () const |
| returns the time horizon of the instance. Deprecated.
|
|
const unsigned int | GetHorizon () const |
| returns the time horizon of the instance.
|
|
const delphos::BlockSelection & | GetBlockSelection () const |
| returns the block selection affected to the instance.
|
|
virtual void | Report () |
| reports the informations about the instance.
|
|
delphos::SchedulingInstance * | AggregateTime (const unsigned int &startperiod, const std::vector< int > &period_unit) |
| returns a new time aggregated sheduling instance. More...
|
|
bool | IsPCPSP () const |
| returns true only if it is a PCPSP instance.
|
|
| BlockModelEntity (delphos::BlockModel &bm) |
| Creates a new block instance associated to a given block model. More...
|
|
delphos::BlockModel & | GetBlockModel () |
| Retrieves the block model to which the entity is associated. More...
|
|
const delphos::BlockModel & | GetBlockModel () const |
| Retrieves the block model to which the entity is associated. More...
|
|
Defines a scheduling instance to be solved.
A scheduling instance is a problem in which blocks need to be scheduled for extraction over a number of time periods and several different constraints.
This class abstracts the problem considering multiple possible destinations, pre-existing stocks and generic constraints.
delphos::SchedulingInstance::SchedulingInstance |
( |
const delphos::BlockSelection & |
bs, |
|
|
const unsigned int & |
horizon, |
|
|
const double |
discount_rate = 0.0 , |
|
|
const bool & |
is_pcpsp = false |
|
) |
| |
Creates a new scheduler instance on a given instance, horizon and discount rate.
- Parameters
-
bs | The given block selection to be scheduled. |
horizon | The number of periods over which to perform the scheduling. |
discount_rate | The discount rate to apply at the end of each time-period. |
is_pcpsp | The flag that determines if the scheduling instance is used to define a PCPSP model or a full integer model. |
These are the minimal elements to specify a scheduling instance.
Different possible process (or "destinations") are defined later, as well as the stocks and additional constraints.
While this constructor allows to specify a constant discount rate, there are also specific method to specify different discount rates per time-period. Note that there is a difference with MineLib in the definition of the discount factor. In case of a discount rate > 0 , for us, for all periods, the discount factor < 1.
delphos::SchedulingInstance::SchedulingInstance |
( |
delphos::BlockModel & |
bm, |
|
|
const unsigned int & |
horizon, |
|
|
const double |
discount_rate = 0.0 , |
|
|
const bool & |
is_pcpsp = false |
|
) |
| |
Creates a new scheduler instance on a given instance, horizon and discount rate.
- Parameters
-
bm | The block model to be scheduled. |
horizon | The number of periods over which to perform the scheduling. |
discount_rate | The discount rate to apply at the end of each time-period. |
is_pcpsp | The flag that determines if the scheduling instance is used to define a PCPSP model or a full integer model. |
These are the minimal elements to specify a scheduling instance.
Different possible process (or "destinations") are defined later, as well as the stocks and additional constraints.
While this constructor allows to specify a constant discount rate, there are also specific method to specify different discount rates per time-period. Note that there is a difference with MineLib in the definition of the discount factor. In case of a discount rate > 0 , for us, for all periods, the discount factor < 1.