Class CarSequencing

java.lang.Object
org.jacop.examples.fd.ExampleFD
org.jacop.examples.fd.carsequencing.CarSequencing

public class CarSequencing extends ExampleFD
It is program to model and solve simple problems of car sequencing problem (CSPLIB-p1).
Version:
4.8
  • Field Details

    • noCar

      public int noCar
      It specifies number of cars.
    • noOption

      public int noOption
      It specifies the no of options in the car sequencing problem.
    • noClass

      public int noClass
      It specifies the number of different car classes.
    • maxNoOfCarsPerOption

      public int[] maxNoOfCarsPerOption
      For a given sequence length then can be different maximum number of cars with a given option.
    • blockSizePerOption

      public int[] blockSizePerOption
      The sequence length for which the maximum number restriction is specified.
    • noOfCarsPerClass

      public int[] noOfCarsPerClass
      It specifies how many cars of each option should be produced.
    • required

      public boolean[][] required
      It specifies if the given class (the first dimension) requires given option (the second dimension).
    • slideDecomposition

      public boolean slideDecomposition
      It specifies if the slide based decomposition of the regular constraint should be applied. This decomposition uses ternary extensional support constraints. It achieves GAC if FSM is deterministic.
    • regular

      public boolean regular
      It specifies if the regular constraint should be used.
    • extensionalMDD

      public boolean extensionalMDD
      It specifies if one extensional constraint based on MDD created from FSM should be used. The translation process works if FSM is deterministic.
  • Constructor Details

    • CarSequencing

      public CarSequencing()
  • Method Details

    • problem

      public static String[] problem()
      A simple car sequencing problem.
      Returns:
      problem description.
    • readFromArray

      public static void readFromArray(String[] description, CarSequencing example)
      It transforms string representation of the problem into an array of ints representation. It stores the whole description in the internal attributes.
      Parameters:
      description - array of strings representing the problem.
      example - example in which the passed instance is stored.
    • toStringArray

      public static String[] toStringArray(CarSequencing example)
      It creates a String representation of the problem being supplied.
      Parameters:
      example - example in which the passed instance is stored.
      Returns:
      the string representation of the problem instance.
    • model

      public void model()
      Description copied from class: ExampleFD
      It specifies a standard way of modeling the problem.
      Specified by:
      model in class ExampleFD
    • createFSM

      public static FSM createFSM(int count, IntervalDomain yes, IntervalDomain no)
      Parameters:
      count - The number of times a value from yes domain needs to be encountered.
      yes - the values which are counted.
      no - the values which are not counted.
      Returns:
      FSM for simple count constraint.
    • readFile

      public static String[] readFile(String file)
      It reads the problem description from the file and returns string representation of the problem.
      Parameters:
      file - the file containing the problem description.
      Returns:
      the problem description
    • main

      public static void main(String[] args)
      It executes the program to solve car sequencing problem.
      Parameters:
      args - parameters (none)
    • test

      public static void test(String[] args)
      It executes the program to solve car sequencing problem.
      Parameters:
      args - parameters (none)