ls-cwi / heinz

Single species module discovery
MIT License
13 stars 8 forks source link

Symmetry breaking constraints #4

Closed guwek closed 8 years ago

guwek commented 8 years ago

These look currently like this:

    // symmetry breaking
    // sum_{j > i, w_j > 0} y_j <= 1 - x_i
    int id_i = (*_pNode)[i];
    expr.clear();
    for (int id_j = id_i + 1; id_j < _n; ++id_j)
    {
      Node j = _invNode[id_j];
      if (weight[j] < 0) continue;
      expr += _y[id_j];
      _model.add(_y[id_j] <= 1 - _x[id_i]);
    }
    _model.add(expr <= 1 - _x[id_i]);

I don't get the first _model.add(...)? What is its additional use?

guwek commented 8 years ago

These constraints are dominated. I removed them (currently in k-Heinz branch). However, there were no noticeable effects on the 'make check' times. One should revisit the 5000 nodes limit, maybe this can be higher now.