|
FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
|
A solution iterator in best first order for JaCoPutilSpace. More...

Protected Attributes | |
| JaCoPutilSpace< V > | space |
| The JaCoPutilSpace we are iterating over. | |
| SolutionListener< IntVar > | solListener |
| The solution listener for solutions with current valuation. | |
| int | solListenerIndex |
| The index of the current solution in the solutions listener. | |
| long | nbrSolLeft |
| The number of solutions left to iterate over. | |
| long | nbrSols |
| The total number of solutions to iterate over. | |
| AddableInteger[] | assignments |
| Current variable assignments. | |
| V | valuation |
| Current valuation. | |
Private Member Functions | |
| void | iter () |
| Moves to the next solution. | |
| V | searchBestUtility (V bound) |
| Search the next best valuation after the one given in argument. | |
| int | getNumberOfFeasibleSolutions () |
| Search the number of feasible solutions in this space. | |
| SolutionListener< IntVar > | searchAllSolutions (V valuation) |
| Search for all solutions with the given valuation. | |
Private Attributes | |
| StoreCloneable | store |
| The JaCoP Store. | |
| final boolean | maximize |
| the order or the iteration | |
A solution iterator in best first order for JaCoPutilSpace.
| <V> | the type used for valuations |
| frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.JaCoPutilSpaceIterBestFirst | ( | JaCoPutilSpace< V > | space, |
| final boolean | maximize ) |
Constructor.
| space | the JaCoPutilSpace to iterate over |
| maximize | true when valuations are to be ordered decreasingly, and false otherwise |
References getNumberOfFeasibleSolutions(), maximize, searchAllSolutions(), searchBestUtility(), space, and valuation.

| AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getCurrentSolution | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
References assignments.
| V frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getCurrentUtility | ( | ) |
| V frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getCurrentUtility | ( | V | bound, |
| boolean | minimize ) |
| AddableInteger[][] frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getDomains | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
| long frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getNbrSolutions | ( | ) |
|
private |
Search the number of feasible solutions in this space.
Referenced by JaCoPutilSpaceIterBestFirst().
| String[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.getVariablesOrder | ( | ) |
| boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.hasNext | ( | ) |
|
private |
Moves to the next solution.
References nbrSolLeft, searchAllSolutions(), searchBestUtility(), solListener, solListenerIndex, space, and valuation.
Referenced by nextSolution(), and nextUtility().

| V frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.maximalCut | ( | ) |
| AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.nextSolution | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
References assignments, and iter().

| V frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.nextUtility | ( | ) |
| V frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.nextUtility | ( | V | bound, |
| boolean | minimize ) |
|
private |
Search for all solutions with the given valuation.
| valuation | the valuation |
References frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.defaultValuation, frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getProjectedVars(), space, store, and valuation.
Referenced by iter(), and JaCoPutilSpaceIterBestFirst().

|
private |
Search the next best valuation after the one given in argument.
| bound | the valuation bound |
References frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.defaultValuation, frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.imposeConstraints(), frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.infeasibleValuation, frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.isConsistent, maximize, space, store, and valuation.
Referenced by iter(), and JaCoPutilSpaceIterBestFirst().

| void frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.setCurrentUtility | ( | V | valuation | ) |
References valuation.
| void frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.update | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
|
protected |
Current variable assignments.
Referenced by getCurrentSolution(), and nextSolution().
|
private |
the order or the iteration
Referenced by JaCoPutilSpaceIterBestFirst(), and searchBestUtility().
|
protected |
The number of solutions left to iterate over.
Referenced by iter().
|
protected |
The total number of solutions to iterate over.
Referenced by getNbrSolutions().
|
protected |
The solution listener for solutions with current valuation.
Referenced by iter().
|
protected |
The index of the current solution in the solutions listener.
Referenced by iter().
|
protected |
The JaCoPutilSpace we are iterating over.
Referenced by getNumberOfFeasibleSolutions(), getVariablesOrder(), iter(), JaCoPutilSpaceIterBestFirst(), maximalCut(), searchAllSolutions(), and searchBestUtility().
|
private |
The JaCoP Store.
Referenced by getNumberOfFeasibleSolutions(), searchAllSolutions(), and searchBestUtility().
|
protected |
Current valuation.
Referenced by getCurrentUtility(), iter(), JaCoPutilSpaceIterBestFirst(), nextUtility(), searchAllSolutions(), searchBestUtility(), and setCurrentUtility().