Package com.exigen.ie.constrainer

Examples of com.exigen.ie.constrainer.IntExpArray


 
  public Element(Var[] vars, Var indexVar, String oper, int value) {
    super(indexVar.getProblem(),name);
    Problem problem = (Problem) indexVar.getProblem();
    Constrainer constrainer = problem.getConstrainer();
    IntExpArray intvars = new IntExpArray(constrainer, vars.length);
    for (int i = 0; i < vars.length; i++) {
      IntExp exp = (IntExp)vars[i].getImpl();
      intvars.set(exp, i);
    }
    try {
      IntExp element = intvars.elementAt((IntExp) indexVar.getImpl());
      problem.defineConstraintImpl(this, element, oper, value);
    }
    catch (Exception f) {
      throw new RuntimeException("Failure to create constraint "+name);
    }
View Full Code Here


 
  public Element(Var[] vars, Var indexVar, String oper, Var var) {
    super(indexVar.getProblem(),name);
    Problem problem = (Problem) indexVar.getProblem();
    Constrainer constrainer = problem.getConstrainer();
    IntExpArray intvars = new IntExpArray(constrainer, vars.length);
    for (int i = 0; i < vars.length; i++) {
      IntExp exp = (IntExp)vars[i].getImpl();
      intvars.set(exp, i);
    }
    try {
      IntExp element = intvars.elementAt((IntExp) indexVar.getImpl());
      problem.defineConstraintImpl(this, element, oper, var);
    }
    catch (Exception f) {
      throw new RuntimeException("Failure to create constraint "+name);
    }
View Full Code Here

    _sel = sel != null ? sel : new DefaultSelector();
  }

  public Goal execute() throws Failure
  {
    IntExpArray vars = new IntExpArray(constrainer(), _jobs.size());
    for (int i = 0; i < _jobs.size(); ++i)
    {
      Job job = (Job) _jobs.elementAt(i);
      vars.set(job.getStartVariable(), i);
    }

    return new GoalGenerate(
      vars,
      _sel.getSelector(vars),
View Full Code Here

        return 0;
      return 1;
    }
  };

  IntExpArray tmp = makeExtraction(_index, _ary);
  tmp.sort(new IntExpComparator());

  for (int i=tmp.get(0).min(); i<=tmp.get(0).max(); i++){
    if (tmp.get(0).contains(i))
    values[valCounter++] = i;
  }

  for(int i=1; i < tmp.size(); i++)
  {
    IntExp curElem = tmp.get(i);
    int min = curElem.min();
    int max = curElem.max();
    if (min < values[valCounter-1])
      min = values[valCounter-1]+1;
    for (int j=min;j<max;j++){  //== Changed: j<=max replaced to j<max
View Full Code Here

  static CopyElementsIterator getIterator(IntExp index, IntExpArray ary)
  {
    CopyElementsIterator iter = new CopyElementsIterator();
    iter._index = index;
    iter.source = ary;
    iter.extract = new IntExpArray(index.constrainer(), index.size());
    return iter;
  }
View Full Code Here

        usage[cnt] = iter.cnt;
        cnt++;
      }
    }

    _valuesUsed = new IntExpArray(_index.constrainer(), cnt);
    for (int i=0; i<cnt; i++){
      _valuesUsed.set(_index.constrainer().addIntVar(0, usage[i]), i);
    }
  }
View Full Code Here

    }
    return copy;
  }

  static IntExpArray createCopyOfIntExpArray(IntExpArray array){
    IntExpArray arrCopy = new IntExpArray(array.constrainer(), array.size());
    for (int i=0; i<array.size(); i++){
      IntVar varCopy;
      IntExp exp = array.get(i);
      if (exp instanceof IntVar)
        varCopy = createCopyOfIntVar((IntVar)exp);
      else
        varCopy = array.constrainer().addIntVar(exp.min(), exp.max(), IntVar.DOMAIN_PLAIN);
      arrCopy.set(varCopy, i);
    }
    return arrCopy;
  }
View Full Code Here

TOP

Related Classes of com.exigen.ie.constrainer.IntExpArray

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.