FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter Class Reference

This class' special iterator. More...

Inheritance diagram for frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter:

Public Member Functions

String toString ()
nextUtility ()
getCurrentUtility ()
void setCurrentUtility (U util)
long getNbrSolutions ()
V[] nextSolution ()
String[] getVariablesOrder ()
V[][] getDomains ()
void update ()
nextUtility (U bound, final boolean minimize)
getCurrentUtility (U bound, boolean minimize)
Public Member Functions inherited from frodo2.solutionSpaces.hypercube.ScalarSpaceIter< V, U >
nextUtility (U bound, final boolean minimize)
getCurrentUtility (U bound, final boolean minimize)
String toString ()

Protected Member Functions

 MyIter (String[] order, V[] assignment, U skippedUtil)
 Constructor.
 MyIter (String[] order, V[][] iterDoms, V[] assignment, U skippedUtil)
 Constructor.
Protected Member Functions inherited from frodo2.solutionSpaces.hypercube.ScalarSpaceIter< V, U >
 ScalarSpaceIter ()
 Empty constructor.

Private Member Functions

V[] nextSolBlind ()

Private Attributes

UtilitySolutionSpace.Iterator< V, U > iter
 The iterator over the space that called blindProject().
boolean delayed = false
 Whether nextSolution() has been called but the corresponding utility hasn't yet been computed.
long nbrUtilsOut
 The number of possible assignments to the projected variables.
final boolean maximize
 Whether we are maximizing or minimizing.

Detailed Description

This class' special iterator.

Constructor & Destructor Documentation

◆ MyIter() [1/2]

frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.MyIter ( String[] order,
V[] assignment,
U skippedUtil )
protected

Constructor.

Parameters
orderthe variable iteration order
assignmentAn array that will be used as the output of nextSolution()
skippedUtilThe utility value that should be skipped, if any

References frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.BlindProjectOutput(), MyIter(), frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.space, and frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.varsOut.

Referenced by MyIter().

Here is the call graph for this function:

◆ MyIter() [2/2]

frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.MyIter ( String[] order,
V iterDoms[][],
V[] assignment,
U skippedUtil )
protected

Constructor.

Parameters
orderthe variable iteration order
iterDomsthe domains of the iterated variables
assignmentAn array that will be used as the output of nextSolution()
skippedUtilThe utility value that should be skipped, if any

References frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.BlindProjectOutput(), frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.space, and frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.varsOut.

Here is the call graph for this function:

Member Function Documentation

◆ getCurrentUtility() [1/2]

U frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.getCurrentUtility ( )

◆ getCurrentUtility() [2/2]

U frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.getCurrentUtility ( U bound,
boolean minimize )
See also
ScalarSpaceIter#getCurrentUtility(Addable, boolean)
Todo
Improve?

References getCurrentUtility().

Here is the call graph for this function:

◆ getDomains()

V[][] frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.getDomains ( )

◆ getNbrSolutions()

long frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.getNbrSolutions ( )

◆ getVariablesOrder()

String[] frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.getVariablesOrder ( )

◆ nextSolBlind()

V[] frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.nextSolBlind ( )
private
Returns
the next solution, regardless of whether it is feasible or not

Referenced by nextSolution().

◆ nextSolution()

V[] frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.nextSolution ( )
See also
ScalarBasicSpaceIter.nextSolution()

References nextSolBlind().

Referenced by nextUtility().

Here is the call graph for this function:

◆ nextUtility() [1/2]

U frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.nextUtility ( )
See also
ScalarBasicSpaceIter.nextUtility()

References getCurrentUtility(), and nextSolution().

Referenced by nextUtility().

Here is the call graph for this function:

◆ nextUtility() [2/2]

U frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.nextUtility ( U bound,
final boolean minimize )
See also
ScalarSpaceIter#nextUtility(Addable, boolean)
Todo
Improve?

References nextUtility().

Here is the call graph for this function:

◆ setCurrentUtility()

void frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.setCurrentUtility ( U util)
See also
frodo2.solutionSpaces.BasicUtilitySolutionSpace.Iterator.setCurrentUtility(java.lang.Object)
Todo
Auto-generated method stub

◆ toString()

◆ update()

void frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.update ( )

Member Data Documentation

◆ delayed

boolean frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.delayed = false
private

Whether nextSolution() has been called but the corresponding utility hasn't yet been computed.

◆ iter

UtilitySolutionSpace.Iterator<V, U> frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.iter
private

The iterator over the space that called blindProject().

◆ maximize

final boolean frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.maximize
private

Whether we are maximizing or minimizing.

◆ nbrUtilsOut

long frodo2.solutionSpaces.hypercube.BlindProjectOutput< V extends Addable< V >, U extends Addable< U > >.MyIter.nbrUtilsOut
private

The number of possible assignments to the projected variables.


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