Choquet Integrals Constraint Propagator.
More...
#include <rchoquetpropagator.h>
|
| RChoquetPropagator (Gecode::Home home, RTestChoquet *test, Gecode::IntVarArray &V, Gecode::IntVarArray &i, Gecode::Float::FloatView cost) |
|
| RChoquetPropagator (Gecode::Space &home, bool share, RChoquetPropagator &p) |
|
virtual size_t | dispose (Gecode::Space &home) |
|
virtual Gecode::Propagator * | copy (Gecode::Space &home, bool share) |
|
virtual Gecode::PropCost | cost (const Gecode::Space &home, const Gecode::ModEventDelta &mod) const |
|
virtual Gecode::ExecStatus | propagate (Gecode::Space &home, const Gecode::ModEventDelta &mod) |
|
double | vi (size_t id, size_t i) const |
|
double | Iij (size_t id, size_t i, size_t j) const |
|
double | ComputeChoquet (size_t choquet, R::RVector &vec) const |
|
virtual | ~RChoquetPropagator (void) |
|
|
static Gecode::ExecStatus | post (Gecode::Home home, RTestChoquet *test, Gecode::IntVarArray &V, Gecode::IntVarArray &i, Gecode::Float::FloatView cost) |
|
|
RTestChoquet * | Test |
|
Gecode::ViewArray
< Gecode::Int::IntView > | v |
|
Gecode::ViewArray
< Gecode::Int::IntView > | I |
|
Gecode::Float::FloatView | Cost |
|
Choquet Integrals Constraint Propagator.
The RChoquetPropagator class provides a propagator of the constraints linked to the Choquet integrals. In practice, it waits until all the values are fixed and set the cost function.
Constructor.
- Parameters
-
home | Home space. |
test | Tester. |
V | Shapley indexes to optimize. |
i | Interaction indexes to optimize. |
cost | Cost function to optimize. |
Copy constructor.
- Parameters
-
home | Home space. |
share | Internal parameter for GeCode. |
p | Propagator to copy. |
static Gecode::ExecStatus post |
( |
Gecode::Home |
home, |
|
|
RTestChoquet * |
test, |
|
|
Gecode::IntVarArray & |
V, |
|
|
Gecode::IntVarArray & |
i, |
|
|
Gecode::Float::FloatView |
cost |
|
) |
| |
|
static |
Function that post a Choquet integrals constraint propagator.
- Parameters
-
home | Home space. |
test | Tester. |
V | Shapley indexes to optimize. |
i | Interaction indexes to optimize. |
cost | Cost function to optimize. |
- Returns
- the status of operation.
virtual size_t dispose |
( |
Gecode::Space & |
home | ) |
|
|
virtual |
Release the instance.
- Parameters
-
- Returns
- the amount of memory to dispose.
virtual Gecode::Propagator* copy |
( |
Gecode::Space & |
home, |
|
|
bool |
share |
|
) |
| |
|
virtual |
Create a new propagator by copy.
- Parameters
-
home | Home space. |
share | Internal parameter for GeCode. |
- Returns
- a pointer to the propagator to create.
virtual Gecode::PropCost cost |
( |
const Gecode::Space & |
home, |
|
|
const Gecode::ModEventDelta & |
mod |
|
) |
| const |
|
virtual |
Get the importance of this propagator.
- Parameters
-
home | Home space. |
mod | Internal parameter for GeCode. |
- Returns
- PropCost::binary(PropCost::HI).
virtual Gecode::ExecStatus propagate |
( |
Gecode::Space & |
home, |
|
|
const Gecode::ModEventDelta & |
mod |
|
) |
| |
|
virtual |
Verify if all the variables are assigned. If it is the case, the cost function is computed.
- Parameters
-
home | Home space. |
mod | Internal parameter for GeCode. |
- Returns
- ES_SUBSUMED if all variables are assigned, else ES_NOFIX.
double vi |
( |
size_t |
id, |
|
|
size_t |
i |
|
) |
| const |
Get the value of a given Shapley index for a particular Choquet integral for the solution to evaluate.
- Parameters
-
id | Identifier of the Choquet integral. |
i | Identifier of the criteria. |
- Returns
- the Shapley index.
double Iij |
( |
size_t |
id, |
|
|
size_t |
i, |
|
|
size_t |
j |
|
) |
| const |
Get the value of an interaction index for a particular Choquet integral for the solution to evaluate.
- Parameters
-
id | Identifier of the Choquet integral. |
i | Identifier of the first criteria. |
j | Identifier of the second criteria. |
- Returns
- the interaction index.
double ComputeChoquet |
( |
size_t |
choquet, |
|
|
R::RVector & |
vec |
|
) |
| const |
Compute the Choquet integral for a given identifier.
- Parameters
-
id | Identifier of the Choquet integral. |
vec | Vector containing the values for the different criteria. |
Gecode::ViewArray<Gecode::Int::IntView> v |
|
protected |
Views on the Shapley indexes to optimize.
Gecode::ViewArray<Gecode::Int::IntView> I |
|
protected |
Views on the interaction indexes to optimize.
Gecode::Float::FloatView Cost |
|
protected |
View on the cost function to maximize.