|
FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
|
A JUnit test case for E[DPOP]. More...

Public Member Functions | |
| E_DPOPagentTest (String whereToSample, String whereToProject, String method, boolean useTCP, boolean useCentralMailer, int nbrSamples, MessageType startMsgType, Class< V > domClass) | |
| Creates a JUnit test case corresponding to the input method. | |
| void | setUp () throws Exception |
| Public Member Functions inherited from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > > | |
| DPOPagentTest (boolean useXCSP, boolean useTCP, boolean useCentralMailer, boolean useDelay, Class< V > domClass, Class< U > utilClass) | |
| Creates a JUnit test case corresponding to the input method. | |
| DPOPagentTest (boolean useXCSP, boolean swap, boolean minNCCCs, boolean countNCCCs, boolean ignoreHypercubeNCCCs) | |
| Constructor. | |
| DPOPagentTest (boolean useXCSP, boolean swap, boolean minNCCCs, boolean countNCCCs, boolean ignoreHypercubeNCCCs, String dpopPath) | |
| Constructor. | |
| DPOPagentTest (Class<? extends XCSPparser< V, U > > parserClass) | |
| Constructor for a test with a subsolver. | |
| DPOPagentTest (boolean useXCSP, boolean useTCP, boolean useCentralMailer, boolean useDelay, Class< V > domClass, Class< U > utilClass, MessageType startMsgType) | |
| Creates a JUnit test case corresponding to the input method. | |
| DPOPagentTest (boolean useXCSP, boolean useTCP, boolean useCentralMailer, boolean useDelay, Class< V > domClass, Class< U > utilClass, MessageType startMsgType, Class< ? extends XCSPparser< V, U > > parserClass, boolean swap, boolean minNCCCs, boolean countNCCCs, boolean measureMsgs, boolean ignoreHypercubeNCCCs) | |
| Creates a JUnit test case corresponding to the input method. | |
| void | testRandom () throws Exception |
| Tests the DPOPagent on a random problem. | |
| Collection< MessageType > | getMsgTypes () |
| void | notifyIn (Message msg) |
| void | setQueue (Queue queue) |
| Does nothing. | |
| Public Member Functions inherited from frodo2.communication.IncomingMsgPolicyInterface< T > | |
| default void | notifyIn (Message msg, Object toAgent) |
| Notifies the listener of an incoming message. | |
Static Public Member Functions | |
| static TestSuite | suite () |
Protected Member Functions | |
| void | checkOutput () throws Exception |
| Checks that the optimal expected utility computed by E[DPOP] is lower than the expectation of the optimal conditional utility computed by Param-DPOP. | |
| Protected Member Functions inherited from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > > | |
| void | setStartMsgType (MessageType startMsgType) throws JDOMException |
| Sets the type of the start message for all modules. | |
| void | tearDown () throws Exception |
Protected Attributes | |
| int | nbrSamples |
| The number of samples. | |
| String | whereToSample |
| Either "AtRoots", "AtLCAs" or "AtLeaves". | |
| String | whereToProject |
| Either "roots", "lcas" or "leaves". | |
| Protected Attributes inherited from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > > | |
| Document | agentConfig |
| The agent configuration file. | |
| Queue | queue |
| The queue used to listen to the agents. | |
| Map< Object, QueueOutputPipeInterface > | pipes |
| For each agent, the output pipe to it. | |
| RandGraphFactory.Graph | graph |
| Random graph used to generate a constraint graph. | |
| int | nbrMsgsReceived |
| Used to track the number of various types of messages received from the agents. | |
| int | nbrAgentsFinished |
| Number of agents finished. | |
| boolean | useCentralMailer = false |
true if the algorithm should be tested with the central mailer | |
| Document | problemDoc |
| The XCSP random problem file. | |
| DCOPProblemInterface< V, U > | problem |
| The problem. | |
| Class< V > | domClass |
| The class used for variable values. | |
| Class< U > | utilClass |
| The class used for utility values. | |
| UTILpropagation< V, U > | utilModule |
| The module listening for the optimal utility to the problem. | |
| SolutionCollector< V, U > | solCollector |
| The module listening for the optimal assignment to the problem. | |
| boolean | useXCSP |
| Whether to use XCSP. | |
| MessageType | startMsgType |
| The type of the start message. | |
| boolean | countNCCCs |
| Whether to count NCCCs. | |
| boolean | maximize = true |
| Whether we should maximize or minimize. | |
| CentralMailer | mailman |
| The CentralMailer. | |
| boolean | aggregate = false |
true when the weighted sum hypercube should be tested | |
Private Attributes | |
| final int | maxNbrVars = 6 |
| Maximum number of variables in the problem. | |
| final int | maxNbrEdges = 25 |
| Maximum number of binary constraints in the problem. | |
| final int | maxNbrAgents = 6 |
| Maximum number of agents. | |
| String | method |
| Either "expectation", "consensus" or "consensusAllSols". | |
A JUnit test case for E[DPOP].
| <V> | the type used for variable values |
| frodo2.algorithms.dpop.stochastic.test.E_DPOPagentTest< V extends Addable< V > >.E_DPOPagentTest | ( | String | whereToSample, |
| String | whereToProject, | ||
| String | method, | ||
| boolean | useTCP, | ||
| boolean | useCentralMailer, | ||
| int | nbrSamples, | ||
| MessageType | startMsgType, | ||
| Class< V > | domClass ) |
Creates a JUnit test case corresponding to the input method.
| whereToSample | either "AtRoots", "AtLCAs" or "AtLeaves" |
| whereToProject | either "roots", "lcas" or "leaves" |
| method | either "expectation", "consensus" or "consensusAllSols" |
| useTCP | whether TCP pipes should be used for communication between agents |
| useCentralMailer | true when the central mailer should be used |
| nbrSamples | the desired number of samples; if zero, no sampling is performed |
| startMsgType | the type of the start message |
| domClass | the class used for variable values |
References frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.domClass, method, nbrSamples, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.startMsgType, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.useCentralMailer, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.useTCP, whereToProject, and whereToSample.
Referenced by suite().
|
protected |
Checks that the optimal expected utility computed by E[DPOP] is lower than the expectation of the optimal conditional utility computed by Param-DPOP.
Also checks that all versions (expectation-based) E[DPOP] without sampling agree.
Reimplemented from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.
Reimplemented in frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.
References frodo2.solutionSpaces.AddableReal.equals(), frodo2.algorithms.dpop.param.ParamDPOPsolver< V extends Addable< V >, U extends Addable< U > >.getExpectedOptUtil(), frodo2.algorithms.Solution< V, U >.getReportedUtil(), frodo2.algorithms.XCSPparser< V extends Addable< V >, U extends Addable< U > >.parse(), frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.problemDoc, frodo2.algorithms.AbstractDCOPsolver< V extends Addable< V >, U extends Addable< U >, S extends Solution< V, U >.solve(), and frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.utilModule.

| void frodo2.algorithms.dpop.stochastic.test.E_DPOPagentTest< V extends Addable< V > >.setUp | ( | ) | throws Exception |
Reimplemented from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.
Reimplemented in frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.
References frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.agentConfig, frodo2.algorithms.test.AllTests.generateProblem(), frodo2.algorithms.RandGraphFactory.getNiceRandGraph(), frodo2.algorithms.RandGraphFactory.getRandGraph(), frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.graph, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.mailman, maxNbrAgents, maxNbrEdges, maxNbrVars, method, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.nbrAgentsFinished, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.nbrMsgsReceived, nbrSamples, frodo2.algorithms.XCSPparser< V extends Addable< V >, U extends Addable< U > >.parse(), frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.pipes, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.problem, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.problemDoc, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.queue, frodo2.algorithms.XCSPparser< V extends Addable< V >, U extends Addable< U > >.setDomClass(), frodo2.algorithms.XCSPparser< V extends Addable< V >, U extends Addable< U > >.setUtilClass(), frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.solCollector, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.startMsgType, frodo2.algorithms.AgentInterface< V extends Addable< V > >.STATS_MONITOR, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.useCentralMailer, frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.utilModule, whereToProject, and whereToSample.

|
static |
Reimplemented from frodo2.algorithms.dpop.test.DPOPagentTest< V extends Addable< V >, U extends Addable< U > >.
Reimplemented in frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.
References E_DPOPagentTest(), and suite().
Referenced by frodo2.algorithms.dpop.stochastic.test.AllTestsStochDPOP.suite(), and suite().

|
private |
Maximum number of agents.
Referenced by setUp().
|
private |
Maximum number of binary constraints in the problem.
Referenced by setUp().
|
private |
|
private |
Either "expectation", "consensus" or "consensusAllSols".
Referenced by E_DPOPagentTest(), and setUp().
|
protected |
|
protected |
Either "roots", "lcas" or "leaves".
Referenced by E_DPOPagentTest(), frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.Robust_E_DPOPagentTest(), frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.setUp(), and setUp().
|
protected |
Either "AtRoots", "AtLCAs" or "AtLeaves".
Referenced by E_DPOPagentTest(), frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.Robust_E_DPOPagentTest(), frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >.setUp(), and setUp().