Package solver.constraints.extension

Examples of solver.constraints.extension.Tuples


    vars = new IntVar[n];
    for (int i = 0; i < vars.length; i++) {
      vars[i] = VariableFactory.enumerated("Q_" + i, lowB, upB, solver);
    }
    Random rand = new Random(12);
    Tuples tuples = new Tuples(true);
    System.out.println("Allowed tuples");
    for(int i = 0; i < nbTuples ; i++){
      int[] tuple = new int[n];
      for(int j = 0; j < n; j++){
        tuple[j] = rand.nextInt(upB - lowB) + lowB;
        System.out.print(tuple[j] + " ");
      }
      tuples.add(tuple);
      System.out.println();
    }
    solver.post(ICF.table(vars,tuples,"STR2+"));
  }
View Full Code Here


    @Test(groups = "1s")
    public void testtable1() {
        Solver solver = new Solver();
        IntVar X = VF.enumerated("X", 0, 5, solver);
        IntVar Y = VF.enumerated("Y", -1, 3, solver);
        Tuples tuples = new Tuples(true);
        tuples.add(1, -2);
        tuples.add(1, 1);
        tuples.add(4, 2);
        tuples.add(1, 4);
        solver.post(ICF.table(X, Y, tuples, "AC2001"));
        SMF.log(solver, true, false);
        solver.findAllSolutions();
    }
View Full Code Here

    private static String[] ALGOS = {"FC", "GAC2001", "GACSTR+", "GAC2001+", "GAC3rm+", "GAC3rm", "STR2+"};

    @Test(groups = "1s")
    public void test1() {
        for (String a : ALGOS) {
            Tuples tuples = new Tuples(true);
            tuples.add(0, 0, 0);
            tuples.add(1, 1, 1);
            tuples.add(2, 2, 2);

            Solver solver = new Solver();
            IntVar[] vars = VF.enumeratedArray("X", 3, 0, 1, solver);
            Constraint tableConstraint = ICF.table(vars, tuples, a);
            solver.post(tableConstraint);
View Full Code Here

        solver = new Solver();
        vars = VariableFactory.enumeratedArray("vars", 6, new int[]{1, 2, 3, 4, 5, 6, 10, 45, 57}, solver);
        reified = VariableFactory.enumeratedArray("rei", vars.length, new int[]{0, 1}, solver);
        sum = VariableFactory.bounded("sum", 0, reified.length, solver);
        solver.post(IntConstraintFactory.alldifferent(vars, "AC"));
        Tuples tuples = new Tuples(true);
        tuples.add(1, 0);
        tuples.add(2 , 1);
        tuples.add(3 , 1);
        tuples.add(4 , 1);
        tuples.add(5 , 1);
        tuples.add(6 , 1);
        tuples.add(10, 1);
        tuples.add(45, 1);
        tuples.add(57, 1);

        for (int i = 0; i < vars.length; i++) {
            Constraint c = IntConstraintFactory.table(vars[i], reified[i], tuples, type);
            solver.post(c);
        }
View Full Code Here

    }
  @Test(groups = "1s")
  public static void testThierry() {
    Solver solver = new Solver();
    IntVar[] vars = VF.enumeratedArray("vars", 10, 0,100, solver);
    Tuples t = new Tuples(false);
    t.add(1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
    solver.post(ICF.table(vars, t, "GAC3rm"));
    solver.findSolution();
  }
View Full Code Here

     */
    public Constraint getTableForOccurence(Solver solverO, IntVar[] vs, IntVar occ, int val, int ub) {
        Solver solver = new Solver();
        IntVar[] vars = VariableFactory.enumeratedArray("e", vs.length + 1, 0, ub, solver);

        Tuples tuples = new Tuples(true);
        solver.set(IntStrategyFactory.lexico_LB(vars));
        solver.findSolution();
        do {
            int[] tuple = new int[vars.length];
            for (int i = 0; i < tuple.length; i++) {
                tuple[i] = vars[i].getValue();
            }
            int checkocc = 0;
            for (int i = 0; i < (tuple.length - 1); i++) {
                if (tuple[i] == val) checkocc++;
            }
            if (checkocc == tuple[tuple.length - 1]) {
                tuples.add(tuple);
            }
        } while (solver.nextSolution() == Boolean.TRUE);

        IntVar[] newvs = new IntVar[vs.length + 1];
        System.arraycopy(vs, 0, newvs, 0, vs.length);
View Full Code Here

    private Solver s;
    private IntVar v1, v2;
    Tuples feasible, infeasible;

    public void setUp() {
        feasible = new Tuples(true);
        feasible.add(1, 2);
        feasible.add(1, 3);
        feasible.add(2, 1);
        feasible.add(3, 1);
        feasible.add(4, 1);

        infeasible = new Tuples(false);
        infeasible.add(1, 2);
        infeasible.add(1, 3);
        infeasible.add(2, 1);
        infeasible.add(3, 1);
        infeasible.add(4, 1);
View Full Code Here

    @Test(groups = "1s")
    public void test2() {
        for (String a : ALGOS) {
            for (int i = 0; i < 10; i++) {
                Tuples tuples = new Tuples(true);
                tuples.add(-2, -2);
                tuples.add(-1, -1);
                tuples.add(0, 0);
                tuples.add(1, 1);

                Solver solver = new Solver();
                IntVar[] vars = VF.enumeratedArray("X", 2, -1, 1, solver);
                solver.post(ICF.table(vars[0], vars[1], tuples, a));
View Full Code Here

    @Test(groups = "1s")
    public void test3() {
        for (String a : ALGOS) {
            for (int i = 0; i < 10; i++) {
                Tuples tuples = new Tuples(true);
                tuples.add(-2, -2);
                tuples.add(-1, -1);
                tuples.add(0, 0);
                tuples.add(1, 1);

                Solver solver = new Solver();
                IntVar[] vars = VF.enumeratedArray("X", 2, -1, 1, solver);
                solver.post(ICF.table(vars[0], vars[1], tuples, a));
View Full Code Here

TOP

Related Classes of solver.constraints.extension.Tuples

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.