37 lines
999 B
C++
37 lines
999 B
C++
#include <iostream>
|
|
|
|
#include "BayesianNetwork.h"
|
|
#include "BayesianNode.h"
|
|
#include "BpNetwork.h"
|
|
#include "BpNode.h"
|
|
#include "BifInterface.h"
|
|
|
|
using namespace std;
|
|
|
|
int main (int argc, char* argv[])
|
|
{
|
|
BpNetwork bn;
|
|
// BayesianNetwork bn;
|
|
BifInterface::createNetworkFromXML (&bn, argv[1]);
|
|
bn.printNetwork();
|
|
|
|
// bn.getNode("FreightTruck")->setEvidence (0);
|
|
// bn.getNode("Alarm")->setEvidence (0);
|
|
|
|
// bn.setSolverParameters (SEQUENTIAL_SCHEDULE, 500, 0.001);
|
|
// bn.setSolverParameters (PARALLEL_SCHEDULE, 500, 0.00000000000001);
|
|
// bn.setSolverParameters (PARALLEL_SCHEDULE, 500, 0.0000000000000000000001);
|
|
|
|
//bn.getNode ("F")->setEvidence (0);
|
|
vector<BayesianNode*> queryVars;
|
|
//queryVars.push_back (bn.getNode ("D"));
|
|
//queryVars.push_back (bn.getNode ("Burglar"));
|
|
queryVars.push_back (bn.getNode ("FreightTruck"));
|
|
queryVars.push_back (bn.getNode ("Alarm"));
|
|
bn.runSolver (queryVars);
|
|
|
|
// bn.printCurrentStatus();
|
|
// bn.printBeliefs();
|
|
return 0;
|
|
}
|