|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Valuation
This interface specifies a general valuation by its principal operations of
labeling, marginalization & combination. Ensure that all axioms of a
valuation algebra are respected when implementing this interface. Valuation
objects are serializable such that they can be transmitted between network hosts.
Additionally, this interface provides a method to copy valuation objects. This method
is mainly used by the implementation of Identity
valuations. To give an example:
the combination of an arbitrary valuation with an identity element should return a copy
of the former. An alternative design strategy would have been to reuse the
Object.clone()
method. However, because this method is pre-implemented, the
user is not forced to overwrite it. Additionally, the Cloneable
interface in only a
marker to ensure that Object.clone()
can indeed be used. This is not satisfactory
for our purposes.
The last method provides a generic weight function for valuations, which is used afterwards
to model communication costs of local computation. Again, ensure that the properties of weight
functions are fulfilled.
Method Summary | |
---|---|
Valuation |
combine(Valuation val)
Combination of valuations. |
Domain |
label()
Labeling of a valuation. |
Valuation |
marginalize(Domain dom)
Marginalization of a valuation onto a given domain. |
int |
weight()
|
Method Detail |
---|
Domain label()
Valuation combine(Valuation val)
val
- The second valuation involved in the combination.
this
and val
.Valuation marginalize(Domain dom) throws VAException
dom
- The domain onto this valuation is marginalized.
this
to dom
.
VAException
- Exception occuring when a marginalization is performed onto an illegal domain.int weight()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |