FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
frodo2.algorithms.dpop.stochastic.robust.WorstCaseUTIL< Val extends Addable< Val >, U extends Addable< U > > Class Template Reference

A UTIL propagation phase that maximizes worst-case utility with respect to the random variables. More...

Inheritance diagram for frodo2.algorithms.dpop.stochastic.robust.WorstCaseUTIL< Val extends Addable< Val >, U extends Addable< U > >:

Public Member Functions

 WorstCaseUTIL (Element parameters, DCOPProblemInterface< Val, U > problem)
 The constructor called in "statistics gatherer" mode.
 WorstCaseUTIL (DCOPProblemInterface< Val, U > problem, Element parameters)
 Constructor.
Public Member Functions inherited from frodo2.algorithms.dpop.stochastic.ExpectedUTIL< Val extends Addable< Val >, U extends Addable< U > >
 ExpectedUTIL (DCOPProblemInterface< Val, U > problem, Element parameters)
 Constructor.
 ExpectedUTIL (Element parameters, DCOPProblemInterface< Val, U > problem)
 The constructor called in "statistics gatherer" mode.
void reset ()
Collection< MessageType > getMsgTypes ()
void getStatsFromQueue (Queue queue)
U getWorstUtil ()
U getExpectedUtil ()
U getProbOfOptimality ()
void notifyIn (Message msg)
HashMap< String, Val > getSolution ()
Public Member Functions inherited from frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >
MessageType getStartMsgType ()
MessageType getDFSMsgType ()
 UTILpropagation ()
 Default constructor.
 UTILpropagation (DCOPProblemInterface< Val, U > problem)
 Constructor.
 UTILpropagation (DCOPProblemInterface< Val, U > problem, Element parameters)
 Constructor from XML descriptions.
 UTILpropagation (Element parameters, DCOPProblemInterface< Val, U > problem)
 The constructor called in "statistics gatherer" mode.
void setQueue (Queue queue)
void setSilent (boolean silent)
Integer getMaxMsgDim ()
U getOptUtil ()
long getFinalTime ()
 Returns the time at which this module has finished, determined by looking at the timestamp of the stat messages.
Public Member Functions inherited from frodo2.communication.IncomingMsgPolicyInterface< T >
default void notifyIn (Message msg, Object toAgent)
 Notifies the listener of an incoming message.

Protected Member Functions

void parseMethod (Element parameters)
ProjOutput< Val, U > project (UtilitySolutionSpace< Val, U > space, String[] vars)
void sendToParent (String var, String parentVar, String parentAgent, UtilitySolutionSpace< Val, U > space)
void sendOutput (UtilitySolutionSpace< Val, U > space, String root)
Protected Member Functions inherited from frodo2.algorithms.dpop.stochastic.ExpectedUTIL< Val extends Addable< Val >, U extends Addable< U > >
void sendSeparator (String sender, String senderAgent, String dest, String[] separator)
Protected Member Functions inherited from frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >
void init ()
 Parses the problem.
ClusterInfo newClusterInfo ()
void record (String senderVar, UtilitySolutionSpace< Val, U > space, ClusterInfo info)
 Records the input space until spaces from all children have been received.
void projectAndSend (ClusterInfo info)
 Projects out a variable and sends the result to its parent (if any) or to itself (to initiate VALUE propagation).

Additional Inherited Members

Static Public Attributes inherited from frodo2.algorithms.dpop.stochastic.ExpectedUTIL< Val extends Addable< Val >, U extends Addable< U > >
static MessageType RAND_VARS_PROJ_MSG_TYPE = SamplingPhase.RAND_VARS_PROJ_MSG_TYPE
 The type of the messages containing information about the where random variables should be projected out.
Static Public Attributes inherited from frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >
static MessageType START_MSG_TYPE = AgentInterface.START_AGENT
 The type of the message telling the module to start.
static MessageType FINISH_MSG_TYPE = AgentInterface.AGENT_FINISHED
 The type of the message telling the agent finished.
static MessageType DFS_MSG_TYPE = DFSgeneration.OUTPUT_MSG_TYPE
 The type of the messages containing information about the DFS.
static final MessageType UTIL_MSG_TYPE = new MessageType ("DPOP", "UTILpropagation", "UTIL")
 The type of the messages containing utilities.
static final MessageType OUTPUT_MSG_TYPE = new MessageType ("DPOP", "UTILpropagation", "UTILoutput")
 The type of the messages containing conditional optimal assignments.
static final MessageType SEPARATOR_MSG_TYPE = new MessageType ("DPOP", "UTILpropagation", "Separator")
 The type of the messages containing separators.
static final MessageType OPT_UTIL_MSG_TYPE = new MessageType ("DPOP", "UTILpropagation", "OptUtil")
 The type of the messages containing optimal utility values sent by roots.
static final MessageType UTIL_STATS_MSG_TYPE = new MessageType ("DPOP", "UTILpropagation", "UTILstats")
 The type of messages sent to the statistics monitor.
Protected Attributes inherited from frodo2.algorithms.dpop.stochastic.ExpectedUTIL< Val extends Addable< Val >, U extends Addable< U > >
HashMap< String, HashSet< String > > randVarsProj = new HashMap< String, HashSet<String> > ()
 For each variable, the random variables that should be projected out of its UTIL message.
Method method = Method.EXPECTATION
 The method to use.
Protected Attributes inherited from frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >
boolean withAnonymVars = false
 Whether the parser should consider variables with no specified owner.
DCOPProblemInterface< Val, U > problem
 The problem.
boolean started = false
 Whether the execution of the algorithm has been started.
boolean maximize = true
 true if we want to maximize utility, false if we want to minimize cost
Queue queue
 The queue on which it should call sendMessage().
Map< String, ClusterInfo > infos
 For each variable this agent owns, its relevant information.
String myID
 This agent's name.
U optUtil
 The optimal utility found to the problem.
boolean reportStats = true
 Whether to report stats.

Detailed Description

A UTIL propagation phase that maximizes worst-case utility with respect to the random variables.

Author
Thomas Leaute
Parameters
<Val>the type used for variable values
<U>the type used for utility values

Constructor & Destructor Documentation

◆ WorstCaseUTIL() [1/2]

frodo2.algorithms.dpop.stochastic.robust.WorstCaseUTIL< Val extends Addable< Val >, U extends Addable< U > >.WorstCaseUTIL ( Element parameters,
DCOPProblemInterface< Val, U > problem )

The constructor called in "statistics gatherer" mode.

Parameters
problemthe overall problem
parametersthe description of what statistics should be reported

References frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >.problem.

◆ WorstCaseUTIL() [2/2]

frodo2.algorithms.dpop.stochastic.robust.WorstCaseUTIL< Val extends Addable< Val >, U extends Addable< U > >.WorstCaseUTIL ( DCOPProblemInterface< Val, U > problem,
Element parameters )

Constructor.

Parameters
problemthe agent's subproblem
parametersthe parameters for the module

References frodo2.algorithms.dpop.UTILpropagation< Val extends Addable< Val >, U extends Addable< U > >.problem.

Member Function Documentation

◆ parseMethod()

◆ project()

◆ sendOutput()

◆ sendToParent()

void frodo2.algorithms.dpop.stochastic.robust.WorstCaseUTIL< Val extends Addable< Val >, U extends Addable< U > >.sendToParent ( String var,
String parentVar,
String parentAgent,
UtilitySolutionSpace< Val, U > space )
protected

The documentation for this class was generated from the following file: