private void constrainConnectedPartitions(LinearProgram lp) {   for (int i=0; i<numTiles; i++) { for (int j=0; j<nodes.size()-1; j++) {  double[] con = lp.getEmptyConstraint(); con[dNum(j,i)] = 1; con[pNum(j,i)] = -1; con[pNum(j+1,i)] = 1; lp.addConstraintGE(con, 0);  con = lp.getEmptyConstraint(); con[dNum(j,i)] = 1; con[pNum(j,i)] = 1; con[pNum(j+1,i)] = -1; lp.addConstraintGE(con, 0); } }
    private void constrainWMax(LinearProgram lp) {	for (int i=0; i<numTiles; i++) {	    //!!!	    double[] con = lp.getEmptyConstraint();	    lp.addConstraintGE(con, 0);	}    }