Beispiel #1
0
  /** Find the best total assignment - can be expensive */
  Scheduler::sharedValues Scheduler::optimalAssignment() const {
    DiscreteBayesNet::shared_ptr chordal = eliminate();

    if (ISDEBUG("Scheduler::optimalAssignment")) {
      DiscreteBayesNet::const_iterator it = chordal->end()-1;
      const Student & student = students_.front();
      cout << endl;
      (*it)->print(student.name_);
    }

    gttic(my_optimize);
    sharedValues mpe = chordal->optimize();
    gttoc(my_optimize);
    return mpe;
  }