FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > > Class Template Reference

A UtilitySolutionSpace based on JaCoP as a local solver. More...

Inheritance diagram for frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >:

Public Member Functions

 JaCoPutilSpace ()
 Empty constructor that does nothing.
 JaCoPutilSpace (String name, List< Constraint > constraints, List< DecomposedConstraint< Constraint > > decompCons, List< IntVarCloneable > valuationVars, HashMap< String, AddableInteger[]> allVars, IntVarCloneable[] vars, IntVarCloneable[] projectedVars, IntVarCloneable[] slicedVars, boolean maximize, V defaultValuation, V infeasibleValuation)
 Constructor construct an implicit JaCoPutilSpace.
void writeExternal (ObjectOutput out) throws IOException
void readExternal (ObjectInput in) throws IOException, ClassNotFoundException
String toString ()
UtilitySolutionSpace< AddableInteger, V > changeVariablesOrder (final String[] variablesOrder)
JaCoPutilSpace< V > clone ()
UtilitySolutionSpace< AddableInteger, V > compose (String[] vars, BasicUtilitySolutionSpace< AddableInteger, ArrayList< AddableInteger > > substitution)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > consensus (String varOut, Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions, boolean maximum)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > consensusAllSols (String varOut, Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions, boolean maximum)
frodo2.solutionSpaces.UtilitySolutionSpace.ProjOutput< AddableInteger, V > consensusExpect (String varOut, Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions, boolean maximum)
frodo2.solutionSpaces.UtilitySolutionSpace.ProjOutput< AddableInteger, V > consensusAllSolsExpect (String varOut, Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions, boolean maximum)
UtilitySolutionSpace< AddableInteger, V > expectation (Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions)
boolean isIncludedIn (UtilitySolutionSpace< AddableInteger, V > space)
UtilitySolutionSpace.IteratorBestFirst< AddableInteger, V > iteratorBestFirst (boolean maximize)
UtilitySolutionSpace< AddableInteger, V > join (UtilitySolutionSpace< AddableInteger, V > space, String[] totalVariables)
UtilitySolutionSpace< AddableInteger, V > join (UtilitySolutionSpace< AddableInteger, V > space)
UtilitySolutionSpace< AddableInteger, V > join (UtilitySolutionSpace< AddableInteger, V >[] spaces)
UtilitySolutionSpace< AddableInteger, V > joinMinNCCCs (UtilitySolutionSpace< AddableInteger, V > space)
UtilitySolutionSpace< AddableInteger, V > joinMinNCCCs (UtilitySolutionSpace< AddableInteger, V >[] spaces)
UtilitySolutionSpace< AddableInteger, V > multiply (UtilitySolutionSpace< AddableInteger, V > space, String[] totalVariables)
UtilitySolutionSpace< AddableInteger, V > multiply (UtilitySolutionSpace< AddableInteger, V > space)
UtilitySolutionSpace< AddableInteger, V > multiply (UtilitySolutionSpace< AddableInteger, V >[] spaces)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > project (String[] vars, boolean maximum)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > project (int numberToProject, boolean maximum)
ProjOutput< AddableInteger, V > project (String variableName, boolean maximum)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > projectAll (boolean maximum)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > projectAll (boolean maximum, String[] order)
UtilitySolutionSpace< AddableInteger, V > resolve ()
UtilitySolutionSpace< AddableInteger, V > resolve (final boolean sparse)
boolean imposeConstraints ()
 Imposes the constraints and calls the consistency function.
Map< AddableInteger, Double > sample (int nbrSamples)
UtilitySolutionSpace< AddableInteger, V > slice (String[] variablesNames, AddableInteger[][] subDomains)
UtilitySolutionSpace< AddableInteger, V > slice (String[] variablesNames, AddableInteger[] assignments)
UtilitySolutionSpace< AddableInteger, V > slice (String varName, AddableInteger[] subDomain)
UtilitySolutionSpace< AddableInteger, V > slice (String var, AddableInteger val)
UtilitySolutionSpace< AddableInteger, V > slice (AddableInteger[] variablesValues)
UtilitySolutionSpace< AddableInteger, V > slice (final Map< String, AddableInteger > assignments)
 Slices this space over input assignments.
UtilitySolutionSpace< AddableInteger, V > split (V threshold, boolean maximum)
void augment (AddableInteger[] variablesValues, V valuationValue)
int hashCode ()
boolean equals (Object o)
boolean equivalent (BasicUtilitySolutionSpace< AddableInteger, V > space)
Class< V > getClassOfU ()
getDefaultUtility ()
getUtility (AddableInteger[] assignments)
getUtility (String[] variablesNames, AddableInteger[] assignments)
getUtility (Map< String, AddableInteger > assignments)
getUtility (long index)
boolean isIncludedIn (BasicUtilitySolutionSpace< AddableInteger, V > space)
UtilitySolutionSpace.Iterator< AddableInteger, V > iterator ()
UtilitySolutionSpace.SparseIterator< AddableInteger, V > sparseIter ()
SparseIterator< AddableInteger, V > sparseIter (String variable, AddableInteger[] domain)
 Returns a sparse iterator over a single variable.
UtilitySolutionSpace.Iterator< AddableInteger, V > iterator (String[] variables, AddableInteger[][] domains, AddableInteger[] assignment)
UtilitySolutionSpace.SparseIterator< AddableInteger, V > sparseIter (String[] variables, AddableInteger[][] domains, AddableInteger[] assignment)
String prettyPrint (V ignoredValuation)
void setDefaultUtility (final V valuation)
void setInfeasibleUtility (V valuation)
boolean setUtility (AddableInteger[] variablesValues, V valuation)
void setUtility (long index, V valuation)
void augment (AddableInteger[] variablesValues)
AddableInteger[] getDomain (String variable)
AddableInteger[] getDomain (int index)
AddableInteger[] getDomain (String variable, int index)
AddableInteger[][] getDomains ()
int getIndex (String variable)
String getName ()
String getOwner ()
void setOwner (String owner)
long getNumberOfSolutions ()
int getNumberOfVariables ()
String getVariable (int index)
String[] getVariables ()
UtilitySolutionSpace.Iterator< AddableInteger, V > iterator (String[] order)
UtilitySolutionSpace.SparseIterator< AddableInteger, V > sparseIter (String[] order)
SolutionSpace< AddableIntegerjoin (SolutionSpace< AddableInteger > space, String[] totalVariables)
SolutionSpace< AddableIntegerjoin (SolutionSpace< AddableInteger > space)
SolutionSpace< AddableIntegerjoin (SolutionSpace< AddableInteger >[] spaces, String[] totalVariablesOrder)
SolutionSpace< AddableIntegerjoin (SolutionSpace< AddableInteger >[] spaces)
boolean knows (Class<?> spaceClass)
void renameVariable (String oldName, String newName)
void setDomain (String var, AddableInteger[] dom)
void setName (String name)
UtilitySolutionSpace< AddableInteger, V > blindProject (String varOut, boolean maximize)
UtilitySolutionSpace< AddableInteger, V > blindProject (String[] varsOut, boolean maximize)
blindProjectAll (boolean maximize)
IteratorBestFirst< AddableInteger, V > iteratorBestFirst (boolean maximize, String[] fixedVariables, AddableInteger[] fixedValues)
UtilitySolutionSpace< AddableInteger, V > max (String variable)
UtilitySolutionSpace< AddableInteger, V > min (String variable)
String getRelationName ()
SolutionSpace< AddableIntegerrenameAllVars (String[] newVarNames)
void setRelationName (String name)
UtilitySolutionSpace.ProjOutput< AddableInteger, V > projExpectMonotone (String varOut, Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions, boolean maximum)
void setProblem (ProblemInterface< AddableInteger, ?> problem)
boolean countsCCs ()
StoreCloneable getStore ()
boolean maximize ()
Hypercube< AddableInteger, V > toHypercube ()
Iterator< AddableInteger, V > iterator (String[] variables, AddableInteger[][] domains)
SparseIterator< AddableInteger, V > sparseIter (String[] variables, AddableInteger[][] domains)
UtilitySolutionSpace< AddableInteger, V > rescale (V add, V multiply)
Public Member Functions inherited from frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >
boolean isIncludedIn (UtilitySolutionSpace< V, U > space)
 Checks if this UtilitySolutionSpace is included in the provided UtilitySolutionSpace.
UtilitySolutionSpace< V, U > join (UtilitySolutionSpace< V, U > space, String[] total_variables)
 Returns a UtilitySolutionSpace object obtained by joining this UtilitySolutionSpace object with the one provided as a parameter.
UtilitySolutionSpace< V, U > slice (String[] variables_names, V[][] sub_domains)
 Returns a slice of this UtilitySolutionSpace.
UtilitySolutionSpace< V, U > slice (String[] variables_names, V[] values)
 Returns a slice of this UtilitySolutionSpace.
UtilitySolutionSpace< V, U > slice (String var, V[] subDomain)
 Slices this UtilitySolutionSpace over a single variable.
UtilitySolutionSpace< V, U > slice (String var, V val)
 Slices this UtilitySolutionSpace over a single variable-value assignment.
UtilitySolutionSpace< V, U > slice (V[] variables_values)
 Returns a slice of this UtilitySolutionSpace.
UtilitySolutionSpace< V, U > join (UtilitySolutionSpace< V, U > space)
 Computes the join of this UtilitySolutionSpace with the input UtilitySolutionSpace.
UtilitySolutionSpace< V, U > joinMinNCCCs (UtilitySolutionSpace< V, U > space)
 A version of the join method that minimizes the utility lookups in the caller space and the input spaces.
UtilitySolutionSpace< V, U > join (UtilitySolutionSpace< V, U >[] spaces)
 Returns a UtilitySolutionSpace object obtained by joining the UtilitySolutionSpace for which this method is called and the UtilitySolutionSpace present in the array of UtilitySolutionSpace given to this method as a parameter.
UtilitySolutionSpace< V, U > joinMinNCCCs (UtilitySolutionSpace< V, U >[] spaces)
 A version of the join method that minimizes the utility lookups in the caller space and the input spaces.
UtilitySolutionSpace< V, U > multiply (UtilitySolutionSpace< V, U > space, String[] total_variables)
 Returns a UtilitySolutionSpace object obtained by joining this UtilitySolutionSpace object with the one provided as a parameter.
UtilitySolutionSpace< V, U > multiply (UtilitySolutionSpace< V, U > space)
 Computes the join of this UtilitySolutionSpace with the input UtilitySolutionSpace.
UtilitySolutionSpace< V, U > multiply (UtilitySolutionSpace< V, U >[] spaces)
 Returns a UtilitySolutionSpace object obtained by joining the UtilitySolutionSpace for which this method is called and the UtilitySolutionSpace present in the array of UtilitySolutionSpace given to this method as a parameter.
ProjOutput< V, U > consensus (String varOut, Map< String, UtilitySolutionSpace< V, U > > distributions, boolean maximum)
 A projection operation that uses the consensus approach.
ProjOutput< V, U > consensusExpect (String varOut, Map< String, UtilitySolutionSpace< V, U > > distributions, boolean maximum)
 The composition of the consensus and expectation operations.
ProjOutput< V, U > consensusAllSols (String varOut, Map< String, UtilitySolutionSpace< V, U > > distributions, boolean maximum)
 A projection operation that uses the advanced consensus approach.
ProjOutput< V, U > consensusAllSolsExpect (String varOut, Map< String, UtilitySolutionSpace< V, U > > distributions, boolean maximum)
 The composition of the consensusAllSols and expectation operations.
UtilitySolutionSpace< V, U > split (U threshold, boolean maximum)
 Returns a UtilitySolutionSpace containing all solutions corresponding to utility values bigger/smaller than the provided threshold.
UtilitySolutionSpace< V, U > compose (String[] vars, BasicUtilitySolutionSpace< V, ArrayList< V > > substitution)
UtilitySolutionSpace< V, U > expectation (Map< String, UtilitySolutionSpace< V, U > > distributions)
 Computes the expectation of this utility space over the input random variables, conditioned on the input probability space.
ProjOutput< V, U > projExpectMonotone (String varOut, Map< String, UtilitySolutionSpace< V, U > > distributions, boolean maximum)
 An optimize expectation().project() operator that assumes that all costs are non-negative (or all utilities non-positive).
UtilitySolutionSpace< V, U > rescale (U add, U multiply)
 Rescales the utilities in this space.
IteratorBestFirst< V, U > iteratorBestFirst (boolean maximize, String[] fixedVariables, V[] fixedValues)
SparseIterator< V, U > sparseIter (String[] variables, V[][] domains)
SparseIterator< V, U > sparseIter (String[] variables, V[][] domains, V[] assignment)
Iterator< V, U > iterator (String[] variables, V[][] domains)
Iterator< V, U > iterator (String[] variables, V[][] domains, V[] assignment)
Public Member Functions inherited from frodo2.solutionSpaces.UtilitySolutionSpaceLimited< V, U, U >
UtilitySolutionSpaceLimited< V, U, UL > join (UtilitySolutionSpace< V, U > space)
 Binary join operation.
UtilitySolutionSpaceLimited< V, U, UL > joinMinNCCCs (UtilitySolutionSpace< V, U > space)
 A version of the join method that minimizes the utility lookups in the caller space and the input space.
UtilitySolutionSpaceLimited< V, U, UL > blindProject (String varOut, boolean maximize)
 Projects out the input variable without computing the corresponding optimal assignments.
UL blindProjectAll (boolean maximize)
 Projects out all variables without computing the corresponding optimal assignments.
UtilitySolutionSpaceLimited< V, U, UL > min (String variable)
 Project out a variable by minimizing over it, without computing the argmin.
UtilitySolutionSpaceLimited< V, U, UL > max (String variable)
 Project out a variable by maximizing over it, without computing the argmax.
UtilitySolutionSpaceLimited< V, U, UL > slice (String var, V val)
UtilitySolutionSpaceLimited< V, U, UL > resolve ()

Public Attributes

defaultValuation
 The default valuation.
infeasibleValuation
 The infeasible valuation.

Package Functions

 JaCoPutilSpace (String name, String owner, List< Constraint > constraints, List< DecomposedConstraint< Constraint > > decompCons, List< IntVarCloneable > valuationVars, IntVarCloneable[] vars, AddableInteger[][] domains, boolean maximize, V infeasibleValuation)
 Constructor constructs an explicit JaCoPutilSpace.
StoreCloneable initStore ()
 Creates the store (if not already created) and clones the variables and constraints into it.
AddableInteger[] getProjVarDomain (String variable)
 Returns an array of all possible values that the projected variable provided as a parameter can take in this JaCoPutilSpace.
IntVarCloneable[] getProjectedVars ()
IntVarCloneable[] getSlicedVars ()

Static Package Functions

 [static initializer]

Package Attributes

StoreCloneable store
 The JaCoP Store.
Boolean isConsistent
 The consistency of the JaCoP Store.
HashMap< String, AddableInteger[]> allDoms
 The variable names and domains, including the projected out and sliced out variables, but excluding the valuation variable.

Private Member Functions

void addDecompConstraint (DecomposedConstraint< Constraint > cons)
 Adds a DecomposedConstraint.
Object readResolve () throws ObjectStreamException
UtilitySolutionSpace.SparseIterator< AddableInteger, V > iterator (final boolean sparse)
 Returns an iterator.
UtilitySolutionSpace.SparseIterator< AddableInteger, V > iterator (String[] variables, AddableInteger[][] domains, AddableInteger[] assignment, final boolean sparse)
 Returns an iterator.
UtilitySolutionSpace.SparseIterator< AddableInteger, V > iterator (String[] order, final boolean sparse)
 Returns an iterator with a specific variable order.

Private Attributes

boolean maximize
 For now (and maybe forever) we will assume that all variables are projected in the same way (all minimized or all maximized).
ArrayList< Constraint > constraints
 The list of JaCoP Constraints.
ArrayList< IntVarCloneablevaluationVars
 The list of valuation variables from the constraints.
IntVarCloneable costVar
 The total cost variable.
IntVarCloneable valuationVar
 The total valuation variable.
IntDomain valuationDom
 A restriction on the domain of the valuation variable (if any).
IntVarCloneable[] vars
 The ordered variables of the space.
IntVarCloneable[] projectedVars
 The ordered variables whose projection has been requested.
IntVarCloneable[] slicedVars
 The variables that have been grounded by a slice operation.
String name
 The name of the UtilSpace.
String owner
 The owner of this space.

Static Private Attributes

static HashSet< Class<?> > knownSpaces
 The types of spaces that we know how to handle.

Detailed Description

A UtilitySolutionSpace based on JaCoP as a local solver.

Author
Thomas Leaute, Radoslaw Szymanek
Parameters
<V>the type used for valuations

Constructor & Destructor Documentation

◆ JaCoPutilSpace() [1/3]

frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.JaCoPutilSpace ( String name,
String owner,
List< Constraint > constraints,
List< DecomposedConstraint< Constraint > > decompCons,
List< IntVarCloneable > valuationVars,
IntVarCloneable[] vars,
AddableInteger domains[][],
boolean maximize,
V infeasibleValuation )
package

Constructor constructs an explicit JaCoPutilSpace.

Parameters
namethe name of the JaCoPutilSpace corresponds to the name of its XCSP constraint
ownerthe owner
constraintsa list of Constraints
decompConsa list of DecomposedConstraints
valuationVarsa list of valuation variables
varsthe variables
domainsthe domains of the variables
maximizewhether we should maximize the utility or minimize the cost
infeasibleValuationthe infeasible valuation

References addDecompConstraint(), allDoms, constraints, infeasibleValuation, initStore(), maximize, name, owner, valuationVars, and vars.

Referenced by [static initializer](), blindProject(), blindProject(), changeVariablesOrder(), clone(), iterator(), iteratorBestFirst(), join(), project(), project(), rescale(), resolve(), slice(), and slice().

Here is the call graph for this function:

◆ JaCoPutilSpace() [2/3]

Empty constructor that does nothing.

◆ JaCoPutilSpace() [3/3]

frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.JaCoPutilSpace ( String name,
List< Constraint > constraints,
List< DecomposedConstraint< Constraint > > decompCons,
List< IntVarCloneable > valuationVars,
HashMap< String, AddableInteger[]> allVars,
IntVarCloneable[] vars,
IntVarCloneable[] projectedVars,
IntVarCloneable[] slicedVars,
boolean maximize,
V defaultValuation,
V infeasibleValuation )

Constructor construct an implicit JaCoPutilSpace.

Parameters
namethe name of the JaCoPutilSpace
constraintsa list of JaCoP Constraints
decompConsa list of JaCoP DecomposedConstraints (may be null)
valuationVarsa list of valuation variables
allVarsall the variables of the space including the projected out and sliced out variables
varsthe variables
projectedVarsthe variables whose projection has been requested
slicedVarsthe variables that have been sliced out
maximizewhether we should maximize the utility or minimize the cost
defaultValuationThe default valuation
infeasibleValuationThe infeasible valuation

References addDecompConstraint(), constraints, defaultValuation, infeasibleValuation, initStore(), maximize, name, projectedVars, slicedVars, valuationVars, and vars.

Here is the call graph for this function:

Member Function Documentation

◆ [static initializer]()

frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.[static initializer]
staticpackage
Bug
Doesn't it also know Hypercubes?

References JaCoPutilSpace(), and knownSpaces.

Here is the call graph for this function:

◆ addDecompConstraint()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.addDecompConstraint ( DecomposedConstraint< Constraint > cons)
private

Adds a DecomposedConstraint.

Parameters
consthe constraint

References addDecompConstraint(), and store.

Referenced by addDecompConstraint(), JaCoPutilSpace(), and JaCoPutilSpace().

Here is the call graph for this function:

◆ augment() [1/2]

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.augment ( AddableInteger[] variablesValues)
See also
SolutionSpace#augment(Addable[])
Todo
Auto-generated method stub

◆ augment() [2/2]

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.augment ( AddableInteger[] variablesValues,
V valuationValue )
See also
BasicUtilitySolutionSpace.augment(Addable[], java.io.Serializable)
Todo
Auto-generated method stub

◆ blindProject() [1/2]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.blindProject ( String varOut,
boolean maximize )
See also
UtilitySolutionSpace.blindProject(java.lang.String, boolean)

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References getName(), JaCoPutilSpace(), and maximize.

Referenced by blindProjectAll().

Here is the call graph for this function:

◆ blindProject() [2/2]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.blindProject ( String[] varsOut,
boolean maximize )
See also
UtilitySolutionSpace.blindProject(java.lang.String[], boolean)

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References getName(), JaCoPutilSpace(), and maximize.

Here is the call graph for this function:

◆ blindProjectAll()

◆ changeVariablesOrder()

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.changeVariablesOrder ( final String[] variablesOrder)
See also
UtilitySolutionSpace.changeVariablesOrder(java.lang.String[])
Todo
Perform some input checking

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References initStore(), JaCoPutilSpace(), and vars.

Here is the call graph for this function:

◆ clone()

See also
Object#clone()

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References JaCoPutilSpace().

Referenced by initStore(), iterator(), iterator(), iteratorBestFirst(), and rescale().

Here is the call graph for this function:

◆ compose()

See also
UtilitySolutionSpace.compose(java.lang.String[], BasicUtilitySolutionSpace)
Todo
Auto-generated method stub

References vars.

◆ consensus()

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.consensus ( String varOut,
Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions,
boolean maximum )
See also
UtilitySolutionSpace.consensus(java.lang.String, java.util.Map, boolean)
Todo
Auto-generated method stub

◆ consensusAllSols()

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.consensusAllSols ( String varOut,
Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions,
boolean maximum )
See also
UtilitySolutionSpace.consensusAllSols(java.lang.String, java.util.Map, boolean)
Todo
Auto-generated method stub

◆ consensusAllSolsExpect()

frodo2.solutionSpaces.UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.consensusAllSolsExpect ( String varOut,
Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions,
boolean maximum )
See also
frodo2.solutionSpaces.UtilitySolutionSpace.consensusAllSolsExpect(java.lang.String, java.util.Map, boolean)
Todo
Auto-generated method stub

◆ consensusExpect()

frodo2.solutionSpaces.UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.consensusExpect ( String varOut,
Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions,
boolean maximum )
See also
frodo2.solutionSpaces.UtilitySolutionSpace.consensusExpect(java.lang.String, java.util.Map, boolean)
Todo
Auto-generated method stub

◆ countsCCs()

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.countsCCs ( )
See also
UtilitySolutionSpace#countsCCs()

◆ equals()

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.equals ( Object o)
See also
java.lang.Object#equals(java.lang.Object)
Todo
Auto-generated method stub

Referenced by getIndex().

◆ equivalent()

◆ expectation()

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.expectation ( Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions)
See also
frodo2.solutionSpaces.UtilitySolutionSpace.expectation(java.util.Map)
Todo
Auto-generated method stub

◆ getClassOfU()

Class< V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getClassOfU ( )
See also
BasicUtilitySolutionSpace.getClassOfU()

References getClassOfU().

Referenced by getClassOfU().

Here is the call graph for this function:

◆ getDefaultUtility()

◆ getDomain() [1/3]

AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getDomain ( int index)
See also
SolutionSpace.getDomain(int)

References allDoms, and vars.

◆ getDomain() [2/3]

AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getDomain ( String variable)
See also
SolutionSpace.getDomain(java.lang.String)

References allDoms.

Referenced by iterator().

◆ getDomain() [3/3]

AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getDomain ( String variable,
int index )
See also
SolutionSpace.getDomain(java.lang.String, int)
Todo
Auto-generated method stub

◆ getDomains()

See also
SolutionSpace.getDomains()

References allDoms, and vars.

Referenced by equivalent(), and readExternal().

◆ getIndex()

int frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getIndex ( String variable)
See also
SolutionSpace.getIndex(java.lang.String)

References equals().

Here is the call graph for this function:

◆ getName()

◆ getNumberOfSolutions()

long frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getNumberOfSolutions ( )

◆ getNumberOfVariables()

int frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getNumberOfVariables ( )

◆ getOwner()

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getOwner ( )
See also
SolutionSpace.getOwner()

References owner.

◆ getProjectedVars()

IntVarCloneable[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getProjectedVars ( )
package
Returns
all the variables of this solution space whose projection has been requested

References projectedVars.

Referenced by frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.searchAllSolutions().

◆ getProjVarDomain()

AddableInteger[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getProjVarDomain ( String variable)
package

Returns an array of all possible values that the projected variable provided as a parameter can take in this JaCoPutilSpace.

Parameters
variablethe name of the projected variable
Returns
the projected variable's domain

References allDoms.

Referenced by frodo2.solutionSpaces.JaCoP.JaCoPoptAssignments.getUtility().

◆ getRelationName()

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getRelationName ( )
See also
SolutionSpace.getRelationName()
Todo
Auto-generated method stub

◆ getSlicedVars()

IntVarCloneable[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getSlicedVars ( )
package
Returns
the sliced variables

◆ getStore()

Returns
the store associated to this solution space

References store.

◆ getUtility() [1/4]

V frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getUtility ( AddableInteger[] assignments)
See also
BasicUtilitySolutionSpace#getUtility(Addable[])

References constraints, costVar, imposeConstraints(), frodo2.solutionSpaces.AddableInteger.intValue(), projectedVars, store, and vars.

Referenced by getUtility(), getUtility(), getUtility(), join(), resolve(), and toHypercube().

Here is the call graph for this function:

◆ getUtility() [2/4]

V frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getUtility ( long index)
See also
BasicUtilitySolutionSpace.getUtility(long)

References allDoms, getNumberOfSolutions(), getUtility(), and vars.

Here is the call graph for this function:

◆ getUtility() [3/4]

V frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getUtility ( Map< String, AddableInteger > assignments)
See also
BasicUtilitySolutionSpace.getUtility(java.util.Map)

References getUtility(), and vars.

Here is the call graph for this function:

◆ getUtility() [4/4]

V frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getUtility ( String[] variablesNames,
AddableInteger[] assignments )
See also
BasicUtilitySolutionSpace.getUtility(java.lang.String[], Addable[])

References org.jacop.core.IntVarCloneable.equals(), getUtility(), and vars.

Here is the call graph for this function:

◆ getVariable()

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getVariable ( int index)
See also
SolutionSpace.getVariable(int)

References vars.

◆ getVariables()

String[] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.getVariables ( )
See also
SolutionSpace.getVariables()
Todo
Consider storing this in the space to avoid recomputing it every time

Referenced by blindProjectAll(), equivalent(), iterator(), projectAll(), and readExternal().

◆ hashCode()

int frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.hashCode ( )
See also
java.lang.Object#hashCode()
Todo
Auto-generated method stub

Referenced by join(), slice(), and slice().

◆ imposeConstraints()

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.imposeConstraints ( )

Imposes the constraints and calls the consistency function.

Returns
whether the resulting space is consistent
Todo
The construction of the "valuation_total" variable can be improved for performance
Todo
Properly compute the exact domain, not just a super-interval?
Todo
Use more efficient constraints depending on clonedUnitVars.size()

References costVar, org.jacop.core.StoreCloneable.findOrCloneInto(), initStore(), max(), min(), store, valuationVar, and valuationVars.

Referenced by frodo2.solutionSpaces.JaCoP.JaCoPoptAssignments.getUtility(), getUtility(), frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIter2< V extends Addable< V > >.initSearch(), and frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIterBestFirst< V extends Addable< V > >.searchBestUtility().

Here is the call graph for this function:

◆ initStore()

StoreCloneable frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.initStore ( )
package

Creates the store (if not already created) and clones the variables and constraints into it.

Returns
the resulting store

References clone(), org.jacop.core.StoreCloneable.findOrCloneInto(), and initStore().

Referenced by changeVariablesOrder(), imposeConstraints(), frodo2.solutionSpaces.JaCoP.JaCoPutilSpaceIter2< V extends Addable< V > >.initSearch(), initStore(), JaCoPutilSpace(), JaCoPutilSpace(), join(), and project().

Here is the call graph for this function:

◆ isIncludedIn() [1/2]

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.isIncludedIn ( BasicUtilitySolutionSpace< AddableInteger, V > space)
See also
BasicUtilitySolutionSpace#isIncludedIn(BasicUtilitySolutionSpace)
Todo
Auto-generated method stub

◆ isIncludedIn() [2/2]

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.isIncludedIn ( UtilitySolutionSpace< AddableInteger, V > space)
See also
UtilitySolutionSpace#isIncludedIn(UtilitySolutionSpace)
Todo
Auto-generated method stub

◆ iterator() [1/7]

◆ iterator() [2/7]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( final boolean sparse)
private

Returns an iterator.

Parameters
sparsewhether the iterator should skip infeasible solutions
Returns
an iterator

References allDoms, getVariables(), frodo2.solutionSpaces.hypercube.ScalarHypercube< V extends Addable< V >, U extends Addable< U > >.iterator(), and vars.

Here is the call graph for this function:

◆ iterator() [3/7]

UtilitySolutionSpace.Iterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( String[] order)
See also
UtilitySolutionSpace.iterator(java.lang.String[])

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References iterator().

Here is the call graph for this function:

◆ iterator() [4/7]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( String[] order,
final boolean sparse )
private

Returns an iterator with a specific variable order.

Parameters
orderthe order of iteration of the variables
sparsewhether to return an iterator that skips infeasible solutions
Returns
an iterator which can be used to iterate through solutions
Warning
The input array of variables must contain exactly all of the space's variables.

References allDoms, clone(), frodo2.solutionSpaces.hypercube.ScalarHypercube< V extends Addable< V >, U extends Addable< U > >.iterator(), iterator(), sparseIter(), and vars.

Here is the call graph for this function:

◆ iterator() [5/7]

Iterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( String[] variables,
AddableInteger domains[][] )
See also
UtilitySolutionSpace.iterator(java.lang.String[], Addable[][])

References iterator().

Here is the call graph for this function:

◆ iterator() [6/7]

UtilitySolutionSpace.Iterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( String[] variables,
AddableInteger domains[][],
AddableInteger[] assignment )
See also
UtilitySolutionSpace.iterator(java.lang.String[], Addable[][], Addable[])

References iterator().

Here is the call graph for this function:

◆ iterator() [7/7]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iterator ( String[] variables,
AddableInteger domains[][],
AddableInteger[] assignment,
final boolean sparse )
private

Returns an iterator.

Parameters
variablesThe variables to iterate over
domainsThe domains of the variables over which to iterate
assignmentAn array that will be used as the output of nextSolution()
sparseWhether to return an iterator that skips infeasible solutions
Returns
an iterator which allows to iterate over the given variables and their valuations

References clone(), getDomain(), frodo2.solutionSpaces.hypercube.BasicHypercube< V extends Addable< V >, U extends Serializable >.intersection(), frodo2.solutionSpaces.hypercube.ScalarHypercube< V extends Addable< V >, U extends Addable< U > >.iterator(), JaCoPutilSpace(), frodo2.solutionSpaces.hypercube.Hypercube< V extends Addable< V >, U extends Addable< U > >.NullHypercube< V extends Addable< V >, U extends Addable< U > >.NULL, and vars.

Here is the call graph for this function:

◆ iteratorBestFirst() [1/2]

◆ iteratorBestFirst() [2/2]

IteratorBestFirst< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.iteratorBestFirst ( boolean maximize,
String[] fixedVariables,
AddableInteger[] fixedValues )
See also
UtilitySolutionSpace.iteratorBestFirst(boolean, java.lang.String[], Addable[])
Todo
Auto-generated method stub

References maximize.

◆ join() [1/7]

See also
SolutionSpace#join(SolutionSpace)
Todo
Auto-generated method stub

◆ join() [2/7]

SolutionSpace< AddableInteger > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.join ( SolutionSpace< AddableInteger > space,
String[] totalVariables )
See also
SolutionSpace.join(SolutionSpace, java.lang.String[])
Todo
Auto-generated method stub

◆ join() [3/7]

See also
SolutionSpace#join(SolutionSpace[])
Todo
Auto-generated method stub

◆ join() [4/7]

SolutionSpace< AddableInteger > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.join ( SolutionSpace< AddableInteger >[] spaces,
String[] totalVariablesOrder )
See also
SolutionSpace.join(SolutionSpace[], java.lang.String[])
Todo
Auto-generated method stub

◆ join() [5/7]

See also
UtilitySolutionSpace#join(UtilitySolutionSpace)

References join().

Here is the call graph for this function:

◆ join() [6/7]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.join ( UtilitySolutionSpace< AddableInteger, V > space,
String[] totalVariables )
See also
UtilitySolutionSpace.join(UtilitySolutionSpace, java.lang.String[])
Todo
Auto-generated method stub

Referenced by join().

◆ join() [7/7]

◆ joinMinNCCCs() [1/2]

See also
UtilitySolutionSpace#joinMinNCCCs(UtilitySolutionSpace)
Todo
Auto-generated method stub

◆ joinMinNCCCs() [2/2]

See also
UtilitySolutionSpace#joinMinNCCCs(UtilitySolutionSpace[])
Todo
Auto-generated method stub

◆ knows()

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.knows ( Class<?> spaceClass)
See also
SolutionSpace.knows(java.lang.Class)

References knownSpaces.

◆ max()

◆ maximize()

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.maximize ( )
Returns
true if it is a maximization problem, false if it is a minimization problem.

References maximize.

◆ min()

◆ multiply() [1/3]

See also
UtilitySolutionSpace#multiply(UtilitySolutionSpace)
Todo
Auto-generated method stub

◆ multiply() [2/3]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.multiply ( UtilitySolutionSpace< AddableInteger, V > space,
String[] totalVariables )
See also
UtilitySolutionSpace.multiply(UtilitySolutionSpace, java.lang.String[])
Todo
Auto-generated method stub

Referenced by rescale().

◆ multiply() [3/3]

See also
UtilitySolutionSpace#multiply(UtilitySolutionSpace[])
Todo
Auto-generated method stub

◆ prettyPrint()

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.prettyPrint ( V ignoredValuation)
See also
BasicUtilitySolutionSpace.prettyPrint(java.io.Serializable)
Todo
Auto-generated method stub

◆ project() [1/3]

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.project ( int numberToProject,
boolean maximum )

◆ project() [2/3]

ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.project ( String variableName,
boolean maximum )
See also
UtilitySolutionSpace.project(java.lang.String, boolean)

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References getName(), JaCoPutilSpace(), and vars.

Here is the call graph for this function:

◆ project() [3/3]

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.project ( String[] vars,
boolean maximum )
See also
UtilitySolutionSpace.project(java.lang.String[], boolean)

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References getName(), initStore(), JaCoPutilSpace(), and vars.

Referenced by projectAll(), and projectAll().

Here is the call graph for this function:

◆ projectAll() [1/2]

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.projectAll ( boolean maximum)

◆ projectAll() [2/2]

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.projectAll ( boolean maximum,
String[] order )
See also
UtilitySolutionSpace.projectAll(boolean, java.lang.String[])

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References project().

Here is the call graph for this function:

◆ projExpectMonotone()

UtilitySolutionSpace.ProjOutput< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.projExpectMonotone ( String varOut,
Map< String, UtilitySolutionSpace< AddableInteger, V > > distributions,
boolean maximum )
See also
UtilitySolutionSpace.projExpectMonotone(java.lang.String, java.util.Map, boolean)
Todo
Auto-generated method stub

◆ readExternal()

◆ readResolve()

Object frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.readResolve ( ) throws ObjectStreamException
private
Returns
a ScalarHypercube if there is no variable left, or the current object
Exceptions
ObjectStreamExceptionshould never be thrown

◆ renameAllVars()

SolutionSpace< AddableInteger > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.renameAllVars ( String[] newVarNames)
See also
SolutionSpace.renameAllVars(java.lang.String[])
Todo
Auto-generated method stub

◆ renameVariable()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.renameVariable ( String oldName,
String newName )
See also
SolutionSpace.renameVariable(java.lang.String, java.lang.String)
Todo
Auto-generated method stub

◆ rescale()

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.rescale ( V add,
V multiply )

◆ resolve() [1/2]

◆ resolve() [2/2]

◆ sample()

◆ setDefaultUtility()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setDefaultUtility ( final V valuation)
See also
BasicUtilitySolutionSpace.setDefaultUtility(java.io.Serializable)

◆ setDomain()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setDomain ( String var,
AddableInteger[] dom )
See also
SolutionSpace.setDomain(java.lang.String, Addable[])
Todo
Auto-generated method stub

◆ setInfeasibleUtility()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setInfeasibleUtility ( V valuation)
See also
BasicUtilitySolutionSpace.setInfeasibleUtility(java.io.Serializable)

◆ setName()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setName ( String name)
See also
SolutionSpace.setName(java.lang.String)

References name.

◆ setOwner()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setOwner ( String owner)
See also
SolutionSpace.setOwner(java.lang.String)

References owner.

◆ setProblem()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setProblem ( ProblemInterface< AddableInteger, ?> problem)
See also
UtilitySolutionSpace#setProblem(ProblemInterface)
Todo
Auto-generated method stub

◆ setRelationName()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setRelationName ( String name)
See also
SolutionSpace.setRelationName(java.lang.String)
Todo
Auto-generated method stub

References name.

◆ setUtility() [1/2]

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setUtility ( AddableInteger[] variablesValues,
V valuation )
See also
BasicUtilitySolutionSpace.setUtility(Addable[], java.io.Serializable)
Todo
Not yet implemented

◆ setUtility() [2/2]

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.setUtility ( long index,
V valuation )
See also
BasicUtilitySolutionSpace.setUtility(long, java.io.Serializable)
Todo
Auto-generated method stub

◆ slice() [1/6]

See also
UtilitySolutionSpace#slice(Addable[])
Todo
Auto-generated method stub

◆ slice() [2/6]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.slice ( final Map< String, AddableInteger > assignments)

Slices this space over input assignments.

Parameters
assignmentsthe assignments
Returns
a sliced space

References hashCode(), and JaCoPutilSpace().

Here is the call graph for this function:

◆ slice() [3/6]

See also
UtilitySolutionSpace.slice(java.lang.String, Addable)
Todo
Auto-generated method stub

◆ slice() [4/6]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.slice ( String varName,
AddableInteger[] subDomain )
See also
UtilitySolutionSpace.slice(java.lang.String, Addable[])

References hashCode(), and JaCoPutilSpace().

Here is the call graph for this function:

◆ slice() [5/6]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.slice ( String[] variablesNames,
AddableInteger[] assignments )
See also
UtilitySolutionSpace.slice(java.lang.String[], Addable[])

References slice().

Here is the call graph for this function:

◆ slice() [6/6]

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.slice ( String[] variablesNames,
AddableInteger subDomains[][] )
See also
UtilitySolutionSpace.slice(java.lang.String[], Addable[][])
Todo
Auto-generated method stub

Referenced by slice().

◆ sparseIter() [1/5]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.sparseIter ( )

◆ sparseIter() [2/5]

SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.sparseIter ( String variable,
AddableInteger[] domain )

Returns a sparse iterator over a single variable.

Parameters
variablethe variable
domainthe variable's domain
Returns
a sparse iterator

References sparseIter().

Here is the call graph for this function:

◆ sparseIter() [3/5]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.sparseIter ( String[] order)
See also
UtilitySolutionSpace.sparseIter(java.lang.String[])

Implements frodo2.solutionSpaces.UtilitySolutionSpace< V extends Addable< V >, U extends Addable< U > >.

References iterator().

Here is the call graph for this function:

◆ sparseIter() [4/5]

SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.sparseIter ( String[] variables,
AddableInteger domains[][] )
See also
UtilitySolutionSpace.sparseIter(java.lang.String[], Addable[][])

References sparseIter().

Here is the call graph for this function:

◆ sparseIter() [5/5]

UtilitySolutionSpace.SparseIterator< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.sparseIter ( String[] variables,
AddableInteger domains[][],
AddableInteger[] assignment )
See also
UtilitySolutionSpace.sparseIter(java.lang.String[], Addable[][], Addable[])

References iterator().

Here is the call graph for this function:

◆ split()

UtilitySolutionSpace< AddableInteger, V > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.split ( V threshold,
boolean maximum )
See also
UtilitySolutionSpace#split(Addable, boolean)
Todo
Auto-generated method stub

◆ toHypercube()

◆ toString()

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.toString ( )
See also
java.lang.Object#toString()

◆ writeExternal()

void frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.writeExternal ( ObjectOutput out) throws IOException
See also
java.io.Externalizable#writeExternal(java.io.ObjectOutput)
Todo
change the whole method for optimizing purpose: do a master-slave JaCoP search to get only the feasible tuples,
Todo
Write less data by taking advantage of the fact that we know we are using AddableIntegers?

References frodo2.solutionSpaces.AddableInteger.externalize(), getNumberOfSolutions(), iterator(), maximize, vars, and frodo2.solutionSpaces.AddableInteger.writeExternal().

Here is the call graph for this function:

Member Data Documentation

◆ allDoms

HashMap<String, AddableInteger[]> frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.allDoms
package

The variable names and domains, including the projected out and sliced out variables, but excluding the valuation variable.

Referenced by getDomain(), getDomain(), getDomains(), getNumberOfSolutions(), getProjVarDomain(), getUtility(), iterator(), iterator(), JaCoPutilSpace(), join(), and toHypercube().

◆ constraints

ArrayList<Constraint> frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.constraints
private

The list of JaCoP Constraints.

Referenced by getUtility(), JaCoPutilSpace(), JaCoPutilSpace(), join(), rescale(), and resolve().

◆ costVar

The total cost variable.

Referenced by getUtility(), and imposeConstraints().

◆ defaultValuation

◆ infeasibleValuation

◆ isConsistent

◆ knownSpaces

HashSet< Class<?> > frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.knownSpaces
staticprivate

The types of spaces that we know how to handle.

Referenced by [static initializer](), and knows().

◆ maximize

boolean frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.maximize
private

For now (and maybe forever) we will assume that all variables are projected in the same way (all minimized or all maximized).

Referenced by blindProject(), blindProject(), blindProjectAll(), iteratorBestFirst(), iteratorBestFirst(), JaCoPutilSpace(), JaCoPutilSpace(), maximize(), rescale(), and writeExternal().

◆ name

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.name
private

The name of the UtilSpace.

Referenced by JaCoPutilSpace(), JaCoPutilSpace(), setName(), and setRelationName().

◆ owner

String frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.owner
private

The owner of this space.

Referenced by getOwner(), JaCoPutilSpace(), and setOwner().

◆ projectedVars

IntVarCloneable [] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.projectedVars
private

The ordered variables whose projection has been requested.

Referenced by getProjectedVars(), getUtility(), JaCoPutilSpace(), and join().

◆ slicedVars

IntVarCloneable [] frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.slicedVars
private

The variables that have been grounded by a slice operation.

Referenced by JaCoPutilSpace(), and join().

◆ store

◆ valuationDom

IntDomain frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.valuationDom
private

A restriction on the domain of the valuation variable (if any).

Referenced by readExternal(), and resolve().

◆ valuationVar

IntVarCloneable frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.valuationVar
private

The total valuation variable.

Referenced by imposeConstraints(), readExternal(), and resolve().

◆ valuationVars

ArrayList<IntVarCloneable> frodo2.solutionSpaces.JaCoP.JaCoPutilSpace< V extends Addable< V > >.valuationVars
private

The list of valuation variables from the constraints.

Referenced by imposeConstraints(), JaCoPutilSpace(), JaCoPutilSpace(), join(), rescale(), and resolve().

◆ vars


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