|
FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
|
A solution iterator for BasicHypercubes. More...

Public Member Functions | |
| long | getNbrSolutions () |
| V[] | nextSolution () |
| U | nextUtility () |
| V[] | getCurrentSolution () |
| U | getCurrentUtility () |
| void | setCurrentUtility (U util) |
| Sets the utility of the current solution. | |
| String[] | getVariablesOrder () |
| V[][] | getDomains () |
| boolean | hasNext () |
| void | update () |
| String | toString () |
Protected Member Functions | |
| BasicHypercubeIter () | |
| Empty constructor. | |
| BasicHypercubeIter (BasicHypercube< V, U > space, V[] assignment, U skippedUtil) | |
| Constructor. | |
| BasicHypercubeIter (final BasicHypercube< V, U > space, final String[] variables, final V[][] domains, final V[] assignment, U skippedUtil) | |
| Constructor. | |
| BasicHypercubeIter (BasicHypercube< V, U > space, String[] varOrder, V[] assignment, U skippedUtil) | |
| Constructor. | |
| int | iter () |
| Moves to the next solution. | |
Protected Attributes | |
| U[] | utilities |
| The space's utility array. | |
| U | utility |
| Current utility value. | |
| int | utilIndex |
| The index of the current utility value in the utility array. | |
| int[][] | steps |
| For each variable: | |
| V[] | solution |
| Current variable assignments. | |
| BasicHypercube< V, U > | space |
| The BasicHypercube we are iterating over. | |
| String[] | variables |
| The order of iteration over the variables. | |
| int | nbrVars |
| The number of variables. | |
| V[][] | domains |
| The variables' domains. | |
| int[] | valIndexes |
| For each variable, the index in its domain of the current assignment. | |
| long | nbrSolLeft |
| The number of solutions left to iterate over. | |
| long | nbrSols |
| The total number of solutions to iterate over. | |
Private Attributes | |
| U | skippedUtil |
| The utility value that is skipped in sparse iterator mode. | |
A solution iterator for BasicHypercubes.
| <V> | the type used for variable values |
| <U> | the type used for utility values |
|
protected |
Empty constructor.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
Constructor.
| space | the BasicHypercube to iterate over |
| assignment | An array that will be used as the output of nextSolution() |
| skippedUtil | The utility value to skip, if any |
References BasicHypercubeIter(), domains, nbrVars, skippedUtil, solution, space, steps, utilIndex, and valIndexes.

|
protected |
Constructor.
| space | the BasicHypercube to iterate over |
| variables | the variables to iterate over; may include variables not in the space |
| domains | the variables' domains |
| assignment | An array that will be used as the output of nextSolution() |
| skippedUtil | The utility value that should be skipped, if any |
References BasicHypercubeIter(), domains, nbrSolLeft, nbrVars, skippedUtil, solution, space, steps, utilIndex, valIndexes, and variables.

|
protected |
Constructor.
| space | the BasicHypercube to iterate over |
| varOrder | the order of iteration of the variables |
| assignment | An array that will be used as the output of nextSolution() |
| skippedUtil | The utility value to skip, if any |
References BasicHypercubeIter(), nbrVars, skippedUtil, solution, space, steps, utilIndex, valIndexes, and variables.

| V[] frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.getCurrentSolution | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
Referenced by getCurrentUtility().
| U frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.getCurrentUtility | ( | ) |
References getCurrentSolution(), and frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.incrNCCCs().

| V[][] frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.getDomains | ( | ) |
| long frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.getNbrSolutions | ( | ) |
| String[] frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.getVariablesOrder | ( | ) |
| boolean frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.hasNext | ( | ) |
|
protected |
Moves to the next solution.
Referenced by nextSolution(), and nextUtility().
| V[] frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.nextSolution | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
References frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.incrNCCCs(), iter(), and space.

| U frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.nextUtility | ( | ) |
References frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.incrNCCCs(), iter(), and space.

| void frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.setCurrentUtility | ( | U | util | ) |
Sets the utility of the current solution.
| util | the new utility |
| String frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.toString | ( | ) |
| void frodo2.solutionSpaces.hypercube.BasicHypercubeIter< V extends Addable< V >, U extends Serializable >.update | ( | ) |
Implements frodo2.solutionSpaces.SolutionSpace< V extends Addable< V > >.SparseIterator< V >.
|
protected |
The variables' domains.
Referenced by BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
The number of solutions left to iterate over.
Referenced by BasicHypercubeIter().
|
protected |
The total number of solutions to iterate over.
|
protected |
The number of variables.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
private |
The utility value that is skipped in sparse iterator mode.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
Current variable assignments.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
The BasicHypercube we are iterating over.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), BasicHypercubeIter(), nextSolution(), and nextUtility().
|
protected |
For each variable:
i is the incremental step in the space's utility array when changing the variable's value from value at index i - 1 to value at index i (in the input domain array) Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
The index of the current utility value in the utility array.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
The space's utility array.
|
protected |
Current utility value.
|
protected |
For each variable, the index in its domain of the current assignment.
Referenced by BasicHypercubeIter(), BasicHypercubeIter(), and BasicHypercubeIter().
|
protected |
The order of iteration over the variables.
Referenced by BasicHypercubeIter(), and BasicHypercubeIter().