net.sf.cpsolver.ifs.example.csp
Class CSPModel
java.lang.Object
net.sf.cpsolver.ifs.model.Model
net.sf.cpsolver.ifs.example.csp.CSPModel
public class CSPModel
- extends Model
Random Binary CSP with uniform distribution.
A random CSP is defined by a four-tuple (n, d, p1, p2), where n denotes the number of variables and d denotes the
domain size of each variable, p1 and p2 are two probabilities. They are used to generate randomly the binary
constraints among the variables. p1 represents the probability that a constraint exists between two different
variables and p2 represents the probability that a pair of values in the domains of two variables connected by a
constraint are incompatible.
We use a so called model B of Random CSP (n, d, n1, n2) where n1 = p1*n*(n-1)/2 pairs of variables are randomly
and uniformly selected and binary constraints are posted between them. For each constraint, n2 = p1*d^2 randomly
and uniformly selected pairs of values are picked as incompatible.
- Version:
- IFS 1.1 (Iterative Forward Search)
Copyright (C) 2006 Tomáš Müller
muller@unitime.org
Lazenska 391, 76314 Zlin, Czech Republic
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Constructor Summary |
CSPModel(int nrVariables,
int nrValues,
int nrConstraints,
int nrCompatiblePairs,
long seed)
Constructor |
Methods inherited from class net.sf.cpsolver.ifs.model.Model |
addConstraint, addGlobalConstraint, addModelListener, addVariable, afterAssigned, afterUnassigned, assignedVariables, beforeAssigned, beforeUnassigned, bestUnassignedVariables, clearBest, conflictConstraints, conflictValues, constraints, countConstraints, countGlobalConstraints, countVariables, getBestPerturbations, getBestUnassignedVariables, getExtendedInfo, getInfo, getInfo, getInfoProviders, getModelListeners, getPerc, getPercRev, getTotalValue, getTotalValue, globalConstraints, inConflict, init, invalidateVariablesWithInitialValueCache, modelListenerOfType, nrAssignedVariables, nrUnassignedVariables, perturbVariables, perturbVariables, removeConstraint, removeGlobalConstraint, removeModelListener, removeVariable, restoreBest, saveBest, toString, unassignedHardConstraints, unassignedVariables, variables, variablesWithInitialValue |
CSPModel
public CSPModel(int nrVariables,
int nrValues,
int nrConstraints,
int nrCompatiblePairs,
long seed)
- Constructor
- Parameters:
nrVariables
- number of variables in the problemnrValues
- number of values of each variablenrConstraints
- number of constraints in the problemnrCompatiblePairs
- number of compatible pairs of values for every constraintseed
- seed for random number generator (use System.currentTimeMillis()
if not bother)