30 std::vector<bool> taged;
31 taged.resize(p1->getSize());
34 for(uint i = 0; i < ch->getSize(); i++) {
35 if(state_->getRandomizer()->getRandomInteger(2) == 0) {
36 ch->variables[i] = p1->variables[i];
37 taged[p1->variables[i]] = 1;
41 ch->variables[i] = -1;
46 count = (int) ch->getSize() - count;
47 for(uint i = 0; i < ch->getSize() && count > 0; i++) {
49 while(ch->variables[indCh] != -1)
52 if(taged[p2->variables[i]] != 1) {
53 ch->variables[indCh] = p2->variables[i];