ifs.example.csp
Class CSPModel

java.lang.Object
  extended by ifs.model.Model
      extended by 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:
1.0
Author:
Tomáš Müller

Constructor Summary
CSPModel(int nrVariables, int nrValues, int nrConstraints, int nrCompatiblePairs, long seed)
          Constructor
 
Method Summary
 
Methods inherited from class ifs.model.Model
addConstraint, addModelListener, addVariable, afterAssigned, afterUnassigned, assignedVariables, beforeAssigned, beforeUnassigned, bestUnassignedVariables, conflictConstraints, conflictValues, constraints, countConstraints, countVariables, getBestPerturbations, getBestUnassignedVariables, getInfo, getModelListeners, getTotalValue, init, modelListenerOfType, perturbVariables, removeConstraint, removeModelListener, removeVariable, restoreBest, saveBest, toString, unassignedHardConstraints, unassignedVariables, variables, variablesWithoutInitialValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CSPModel

public CSPModel(int nrVariables,
                int nrValues,
                int nrConstraints,
                int nrCompatiblePairs,
                long seed)
Constructor

Parameters:
nrVariables - number of variables in the problem
nrValues - number of values of each variable
nrConstraints - number of constraints in the problem
nrCompatiblePairs - number of compatible pairs of values for every constraint
seed - seed for random number generator (use System.currentTimeMillis() if not bother)


Copyright © 2005 Tomáš Müller