FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
Bug List
Member frodo2.algorithms.AbstractSolver< P extends ProblemInterface< V, U, V extends Addable< V >, U extends Addable< U >, S extends Solution< V, U >.solGatherers
MAS solvers don't use the XCSPparser
Member frodo2.algorithms.adopt.ADOPT< Val extends Addable< Val >, U extends Addable< U > >.Original< Val extends Addable< Val >, U extends Addable< U > >.backTrack (VariableInfo< Val, U > variable)
In Modi's pseudocode, this is called only after sending VALUE messages
Member frodo2.algorithms.adopt.ADOPT< Val extends Addable< Val >, U extends Addable< U > >.Original< Val extends Addable< Val >, U extends Addable< U > >.handleTERMINATEmessage (VariableInfo< Val, U > variable, ENDmsg< Val > msg)
This is not in Modi's pseudocode
Member frodo2.algorithms.adopt.test.ADOPTagentTest< V extends Addable< V >, U extends Addable< U > >.suite ()

ADOPT does not seem to handle message delays.

The first test fails

Member frodo2.algorithms.afb.test.AFBagentTest< V extends Addable< V >, U extends Addable< U > >.checkOutput ()
Very rarely fails
Member frodo2.algorithms.asodpop.tests.ASODPOPagentTest< V extends Addable< V >, U extends Addable< U > >.suite ()
Rarely gets stuck
Member frodo2.algorithms.asodpop.tests.ASODPOPBinaryAgentTest< V extends Addable< V >, U extends Addable< U > >.suite ()
Rarely gets stuck
Member frodo2.algorithms.Convergence< V extends Addable< V >, U extends Addable< U > >.processAssignmentHistories (HashMap< String, ArrayList< CurrentAssignment< V > > > assignmentHistories, List< ? extends UtilitySolutionSpace< V, U > > hypercubes, String experiment_number, String resultPath, U infeasibleUtil, boolean maximize, boolean time)
timeWriterAll will not be closed
Member frodo2.algorithms.Convergence< V extends Addable< V >, U extends Addable< U > >.processRuns (String resultPath, String resultFile, String problemName, int sampleSize, boolean maximize)
br will not be closed
Class frodo2.algorithms.dpop.stochastic.robust.test.Robust_E_DPOPagentTest< V extends Addable< V > >
There seem to be interferences between consecutive tests, producing timeouts, "Non-monotone problem" AssertionErrors and "address already in use" errors
Member frodo2.algorithms.dpop.stochastic.test.E_DPOPagentTest< V extends Addable< V > >.checkOutput ()
Very rarely fails.
Member frodo2.algorithms.dpop.stochastic.test.ExpectedUTILtest.Listener.checkOutput ()

Sometimes fails

Rarely fails with -infinity != -infinity

Rarely fails

Member frodo2.algorithms.dpop.test.UTILpropagationTest< U extends Addable< U > >.computeDFS (Graph graph, DCOPProblemInterface< V, U > problem, boolean withSharedVars)
the spaces must come for the agent's subproblem to correctly count NCCCs
Member frodo2.algorithms.dpop.test.VALUEpropagationTest< U extends Addable< U > >.Listener.waitForOutputs ()
Sometimes, the pipes are closed while the VALUEpropagation listeners are still sending messages; this throws a SocketException, but the unit tests still pass and are still valid.
Member frodo2.algorithms.duct.NormalizeInf< V extends Addable< V > >.notifyIn (Message msg)
Sometimes fails, most noticeably on locally infeasible problems (bug reported by Duc Thien Nguyen)
Member frodo2.algorithms.duct.tests.DUCTagentTest.testRandom ()

Often times out

Often times out

Member frodo2.algorithms.maxsum.tests.MaxSumTests< V extends Addable< V >, U extends Addable< U > >.suite ()

Max-Sum may not terminate when using TCP pipes because there is not idleness detection

Max-Sum may not terminate when using TCP pipes because there is not idleness detection

Member frodo2.algorithms.mpc_discsp.LUdecomposition.LUdecomposition (Matrix M, BigInteger mod)
Is this guaranteed to work modulo mod?
Member frodo2.algorithms.mpc_discsp.tests.MPC_DisWCSP4tests.test ()

Rarely times out

Very rarely fails

Member frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.compareWithHypercube (UtilitySolutionSpace< Val, U > h)
Never used!
Member frodo2.algorithms.synchbb.test.SynchBBagentTest< V extends Addable< V >, U extends Addable< U > >.checkOutput ()
Very rarely fails
Member frodo2.algorithms.varOrdering.dfs.DFSgeneration< V extends Addable< V >, U extends Addable< U > >.DFSview< V extends Addable< V >, U extends Addable< U > >.clone ()
Do a deep clone instead?
Member frodo2.algorithms.varOrdering.dfs.DFSgenerationParallel< S extends Comparable< S > &Serializable >.FakeQueue.sendMessageToSelf (Message msg)
very rarely throws a NullPointerException
Class frodo2.algorithms.varOrdering.election.tests.VariableElectionTest< S extends Comparable< S > &Serializable >
Even if all unit tests pass, sometimes a SocketException is thrown. This is because, as soon as a variable receives a MaxIDmsg with an ID higher than its own, it already knows that it is not the leader, and already sends an output message saying it is not the leader. But then it must keep processing MessageMaxIDs until the protocol finishes. Since VariableElectionTest only listens to output messages, it sometimes starts closing queues while MessageMaxIDs are still in the process of being delivered. Solution to fix this: make VariableElectionTest also listen to MessageMaxIDs, and properly compute how many of these messages it must wait for before it can close the queues.
Member frodo2.communication.mailer.CentralMailer.run ()
Store the message if required
Member frodo2.communication.Queue.notifyOutListeners (Object fromAgent, Message msg, Collection<? extends Object > toAgents)
very rarely throws a NullPointerException
Member frodo2.communication.tcp.QueueInputPipeTCPTest.Sender.run ()
socket and out will not be closed
Member frodo2.controller.ConfigurationManager.resultFile
The solution is never written to the file
Member frodo2.controller.Controller.initLocal (boolean ui, String workDir)
ui is not used.
Member frodo2.daemon.Daemon.exit (boolean quit)
Before exiting, the Daemon should warn the Controller.
Member frodo2.gui.DOTrenderer.createDOTfigure ()
err will not be closed
Member frodo2.gui.jung.JungVisualizer.actionPerformed (ActionEvent e)
Not working
Member frodo2.gui.jung.JungVisualizer.init ()

The Reset button should scale back to layout

Keeps jumping around

Results in unnecessary edge crossings

Typically doesn't converge

Apparently experimental

Member frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.compose (final String[] varsOut, final BasicUtilitySolutionSpace< V, ArrayList< V > > subst)

I might disagree with this domain; compute the intersection

I might disagree with this domain; compute the intersection

iterate over the intersected domains

Member frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.slice (String[] remainingVars, V[][] remainingDoms, V[][] iterDoms, long nbrRemainingUtils, Class<?> domClass)
Don't count NCCCs
Member frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.resolve (boolean sparse)

When sparse == true, might not work if the projection maximizes a minimization space or vice-versa, because the sparse iterator will skip the wrong infeasibility

When sparse == true, might not work if the projection maximizes a minimization space or vice-versa, because the sparse iterator will skip the wrong infeasibility

Member frodo2.solutionSpaces.hypercube.ExpectationOutput< V extends Addable< V >, U extends Addable< U > >.clone ()
I'm too lazy to implement this method
Member frodo2.solutionSpaces.hypercube.Hypercube< V extends Addable< V >, U extends Addable< U > >.consensus (final String varOut, final Map< String, UtilitySolutionSpace< V, U > > distributions, final boolean maximum, final boolean allSolutions, final boolean expect)
Can be 0 even if the true utility of the current solution is worse
Member frodo2.solutionSpaces.hypercube.Hypercube< V extends Addable< V >, U extends Addable< U > >.Hypercube (String[] variables_order, V[][] variables_domains, Object[] utility_values, U infeasibleUtil)
Extract the type used for utility values from the multi-dimensional array utility_values
Member frodo2.solutionSpaces.hypercube.ScalarHypercube< V extends Addable< V >, U extends Addable< U > >.join (UtilitySolutionSpace< V, U > space, String[] total_variables, final boolean addition, boolean minNCCCs)
The output hypercube does not respect the input variable order
Member frodo2.solutionSpaces.hypercube.ScalarHypercube< V extends Addable< V >, U extends Addable< U > >.saveAsXML (String file)
To be implemented
Member frodo2.solutionSpaces.hypercube.tests.HypercubeTest.testSerializationNullHypercube ()
objIn might not be closed
Member frodo2.solutionSpaces.JaCoP.IterSolutionListener< V extends Addable< V > >.executeAfterSolution (final Search< IntVarCloneable > search, final SelectChoicePoint< IntVarCloneable > select)
handle spurious wake-ups
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.[static initializer]
Doesn't it also know Hypercubes?
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.join (UtilitySolutionSpace< AddableInteger, V >[] spaces)
If the current space is supposed to project out any variable contained in another space, it must do so before the join is performed, by calling resolve(). This should normally never happen, though.
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.readExternal (ObjectInput in)
Treat separately the case when no feasible solution exists
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIter2< V extends Addable< V > >.getNextFromSearch (final boolean first)
handle spurious wake-ups
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIter2< V extends Addable< V > >.initSearch (final V strictBound)

Potential name clash with a user-specified variable name

Potential name clash with a user-specified variable name

Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getNumberOfFeasibleSolutions ()
Name clash in case the user defined a variable with this name
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.searchAllSolutions (V valuation)
Projected variables are not being projected; the resulting solution list might contain two solutions that only differ on the projected variables, which should not happen
Member frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.searchBestUtility (V bound)

Name clash in case the user defined a variable with this name

Name clash in case the user defined a variable with this name

Member frodo2.solutionSpaces.JaCoP.Predicate.getConstraint (StoreCloneable store)
Can't the token also be an IntVar or an Integer?...
Member frodo2.solutionSpaces.JaCoP.tests.JaCoPproblemTest< V extends Addable< V > >.suite ()

Throws IndexOutOfBoundsException https://github.com/radsz/jacop/issues/69

Throws "non-optimal arcs" asserts https://github.com/radsz/jacop/issues/47

Bug in JaCoP: https://github.com/radsz/jacop/issues/64

MGM-2 rarely hits inf - inf

Member frodo2.solutionSpaces.JaCoP.tests.JaCoPtests< V extends Addable< V > >.suite ()

MPC-DisCSP4 occasionally fails tests

MPC-DisWCSP4 occasionally fails tests

Member frodo2.solutionSpaces.vehiclerouting.Customer.setPosition (int angle)
Does not change the coordinates from the point of view of the super class
Member org.jacop.constraints.AmongVarCloneable.consistency (Store store)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.consistencyForX (Store store)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.consistencyForY (Store store)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.consistencyWhen_LB0_EQ_UB0 (Store store)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.futureLbS
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.impose (Store store)

Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46

https://github.com/radsz/jacop/issues/46

Member org.jacop.constraints.AmongVarCloneable.lb0TS
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.lbS
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.queueVariable (int level, Var var)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.removeLevel (int level)
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.satisfied ()
Overrides the parent method as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.ub0TS
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.variableQueueY
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.xGrounded
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.xIndex
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.yGrounded
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46
Member org.jacop.constraints.AmongVarCloneable.yIndex
Overrides the parent member as a workaround to https://github.com/radsz/jacop/issues/46